diff --git a/completion/mainline-completion.bash b/completion/mainline-completion.bash index ed1309a..0f223a0 100644 --- a/completion/mainline-completion.bash +++ b/completion/mainline-completion.bash @@ -70,6 +70,12 @@ _mainline_completion() { COMPREPLY=($(compgen -W "demo demo-base demo-pygame demo-camera-showcase poetry headlines empty test-basic test-border test-scroll-camera" -- "${cur}")) return ;; + + --positioning) + # Positioning modes + COMPREPLY=($(compgen -W "absolute relative mixed" -- "${cur}")) + return + ;; esac # Flag completion (start with --) @@ -85,6 +91,7 @@ _mainline_completion() { --viewport --preset --theme + --positioning --websocket --websocket-port --allow-unsafe diff --git a/engine/app/main.py b/engine/app/main.py index fa66dd8..183a245 100644 --- a/engine/app/main.py +++ b/engine/app/main.py @@ -265,6 +265,12 @@ def run_pipeline_mode_direct(): ) display = DisplayRegistry.create(display_name) + + # Set positioning mode + if "--positioning" in sys.argv: + idx = sys.argv.index("--positioning") + if idx + 1 < len(sys.argv): + params.positioning = sys.argv[idx + 1] if not display: print(f" \033[38;5;196mFailed to create display: {display_name}\033[0m") sys.exit(1) diff --git a/engine/app/pipeline_runner.py b/engine/app/pipeline_runner.py index e5afb0b..a141eac 100644 --- a/engine/app/pipeline_runner.py +++ b/engine/app/pipeline_runner.py @@ -139,6 +139,16 @@ def run_pipeline_mode(preset_name: str = "demo"): print("Error: Invalid viewport format. Use WxH (e.g., 40x15)") sys.exit(1) + # Set positioning mode from command line or config + if "--positioning" in sys.argv: + idx = sys.argv.index("--positioning") + if idx + 1 < len(sys.argv): + params.positioning = sys.argv[idx + 1] + else: + from engine import config as app_config + + params.positioning = app_config.get_config().positioning + pipeline = Pipeline(config=preset.to_config()) print(" \033[38;5;245mFetching content...\033[0m") diff --git a/engine/config.py b/engine/config.py index 0dec9ce..5aad37f 100644 --- a/engine/config.py +++ b/engine/config.py @@ -130,6 +130,7 @@ class Config: script_fonts: dict[str, str] = field(default_factory=_get_platform_font_paths) display: str = "pygame" + positioning: str = "mixed" websocket: bool = False websocket_port: int = 8765 theme: str = "green" @@ -174,6 +175,7 @@ class Config: kata_glyphs="ハミヒーウシナモニサワツオリアホテマケメエカキムユラセネスタヌヘ", script_fonts=_get_platform_font_paths(), display=_arg_value("--display", argv) or "terminal", + positioning=_arg_value("--positioning", argv) or "mixed", websocket="--websocket" in argv, websocket_port=_arg_int("--websocket-port", 8765, argv), theme=_arg_value("--theme", argv) or "green", diff --git a/engine/fixtures/headlines.json b/engine/fixtures/headlines.json index 4bcab08..dce112f 100644 --- a/engine/fixtures/headlines.json +++ b/engine/fixtures/headlines.json @@ -1 +1 @@ -{"items": []} \ No newline at end of file +{"items": [["We keep finding the raw material of DNA in asteroids\u2014what's it telling us?", "Ars Technica", "11:00"], ["DOGE goes nuclear: How Trump invited Silicon Valley into America\u2019s nuclear power regulator", "Ars Technica", "10:00"], ["Jury finds Musk owes damages to Twitter investors for his tweets", "Ars Technica", "22:27"], ["You're likely already infected with a brain-eating virus you've never heard of", "Ars Technica", "22:11"], ["Once again, ULA can't deliver when the US military needs a satellite in orbit", "Ars Technica", "21:35"], ["Microsoft keeps insisting that it's deeply committed to the quality of Windows 11", "Ars Technica", "21:26"], ["Writer denies it, but publisher pulls horror novel after multiple allegations of AI use", "Ars Technica", "21:03"], ["Widely used Trivy scanner compromised in ongoing supply-chain attack", "Ars Technica", "20:50"], ["NASA issues draft request for moving space shuttle Discovery\u2014or Orion capsule", "Ars Technica", "20:30"], ["Trump FCC lets Nexstar buy Tegna and blow way past 39% TV ownership cap", "Ars Technica", "20:08"], ["RFK may replace entire panel of CDC vaccine advisors again, ally lets slip", "Ars Technica", "17:36"], ["Perseverance\u2019s radar revealed ancient subsurface river delta on Mars", "Ars Technica", "17:18"], ["NASA wants to know how the launch industry's chic new rocket fuel explodes", "Ars Technica", "17:18"], ["Amazon is reportedly developing an AI-centric smartphone", "Ars Technica", "16:38"], ["Major SteamOS update adds support for Steam Machine, even more third-party hardware", "Ars Technica", "15:36"], ["Monte Verde site gets a new date, but the big picture doesn't change", "Ars Technica", "15:01"], ["Jeff Bezos just announced plans for a third megaconstellation\u2014this one for data centers", "Ars Technica", "14:46"], ["The US is looking at a year of chaotic weather", "Ars Technica", "14:38"], ["Feds say no need to recall Tesla's one-pedal driving despite petition", "Ars Technica", "14:30"], ["Rocket Report: Canada makes a major move, US Space Force says actually, let's be hasty", "Ars Technica", "11:45"], ["Author Correction: A PP1\u2013PP2A phosphatase relay controls mitotic progression", "Nature", "00:00"], ["Chemical pollutants are rife across the world\u2019s oceans", "Nature", "00:00"], ["Mighty mini-magnet is low in cost and light on energy use", "Nature", "00:00"], ["Briefing Chat: Are scientists funny? The evidence is in \u2014 and it's no joke", "Nature", "00:00"], ["Elusive \u2018nuclear clocks\u2019 tick closer to reality \u2014 after decades in the making", "Nature", "00:00"], ["\u2018Unaffordable\u2019 visa price hike threatens Australia\u2019s researcher pipeline", "Nature", "00:00"], ["Lab-grown oesophagus restores pigs\u2019 ability to swallow", "Nature", "00:00"], ["I paused my PhD for 11 years to help save Madagascar\u2019s seas", "Nature", "00:00"], ["The mid-career reset: how to be strategic about your research direction", "Nature", "00:00"], ["Paul R. Ehrlich obituary: pioneering ecologist who caused controversy by predicting a \u2018population bomb\u2019", "Nature", "00:00"], ["Editorial Expression of Concern: A FADD-dependent innate immune mechanism in mammalian cells", "Nature", "00:00"], ["Faster ticking of \u2018biological clock\u2019 predicts shorter lifespan", "Nature", "00:00"], ["Strength persists after a mid-life course of obesity drugs", "Nature", "00:00"], ["Stress can cause eczema to flare up \u2013 now we know why", "Nature", "00:00"], ["UK bets big on homegrown fusion and quantum \u2014 can it lead the world?", "Nature", "00:00"], ["China could be the world\u2019s biggest public funder of science within two years", "Nature", "00:00"], ["A breath of fresh air: solving Ulaanbaatar\u2019s pollution issues \u2014 in photos", "Nature", "00:00"], ["Seeking an industry role? Sell yourself as a problem-solver, not a job-seeker", "Nature", "00:00"], ["Project Hail Mary film builds dazzling new worlds \u2014 and grounds them in science", "Nature", "00:00"], ["Mathematician who reshaped number theory wins prestigious Abel prize", "Nature", "00:00"], ["Masked mitochondria slip into cells to treat disease in mice", "Nature", "00:00"], ["Daily briefing: Static electricity is still a mystery \u2014 here\u2019s what we know", "Nature", "00:00"], ["Author Correction: Autoimmune response to C9orf72 protein in amyotrophic lateral sclerosis", "Nature", "00:00"], ["Publisher Correction: Atlas-guided discovery of transcription factors for T cell programming", "Nature", "00:00"], ["Botanical mystery solved: how plants make a crucial malaria drug", "Nature", "00:00"], ["Integrated memristor for mitigating reverse-bias in perovskite solar cells", "Nature", "00:00"], ["Magnetic resonance control of spin-correlated radical pair dynamics in vivo", "Nature", "00:00"], ["In vivo site-specific engineering to reprogram T cells", "Nature", "00:00"], ["Synthetic circuits for cell ratio control", "Nature", "00:00"], ["Observing the tidal pulse of rivers from wide-swath satellite altimetry", "Nature", "00:00"], ["Thymic health consequences in adults", "Nature", "00:00"], ["Adaptive evolution of gene regulatory networks in mammalian neocortex", "Nature", "00:00"], ["Broadly stable atmospheric CO2 and CH4 levels over the past 3 million years", "Nature", "00:00"], ["Local agricultural transition, crisis and migration in the Southern Andes", "Nature", "00:00"], ["Bistable superlattice switching in a quantum spin Hall insulator", "Nature", "00:00"], ["Observation of self-bound droplets of ultracold dipolar molecules", "Nature", "00:00"], ["Global ocean heat content over the past 3 million years", "Nature", "00:00"], ["Thymic health and immunotherapy outcomes in patients with cancer", "Nature", "00:00"], ["Contrasting thermophilization among forests, grasslands and alpine summits", "Nature", "00:00"], ["Proteasome-guided haem signalling axis contributes to T cell exhaustion", "Nature", "00:00"], ["Biosynthesis of cinchona alkaloids", "Nature", "00:00"], ["Integrated photonic neural network with on-chip backpropagation training", "Nature", "00:00"], ["The E3 ubiquitin ligase mechanism specifying targeted microRNA degradation", "Nature", "00:00"], ["Adventitious carbon breaks symmetry in oxide contact electrification", "Nature", "00:00"], ["Climbing fibres recruit disinhibition to enhance Purkinje cell calcium signals", "Nature", "00:00"], ["A strong constraint on radiative forcing of well-mixed greenhouse gases", "Nature", "00:00"], ["Catabolism of extracellular glutathione supplies cysteine to support tumours", "Nature", "00:00"], ["Evolution", "Nature", "00:00"], ["Climate snapshots trapped in ancient ice tell a surprising story", "Nature", "00:00"], ["Genome editing that avoids immune detection to integrate large DNA sequences", "Nature", "00:00"], ["Hair-raising: how carbon contamination can drive static charging", "Nature", "00:00"], ["Leading the charge to explain static electricity", "Nature", "00:00"], ["A gene-editing method generates immunotherapeutic CAR T cells in the body", "Nature", "00:00"], ["Major Turing computing award goes to quantum science for first time", "Nature", "00:00"], ["Static electricity is a big mystery \u2014 a jolt of fresh research could help to solve it", "Nature", "00:00"], ["Quirky base pairing attracts rule-breaking enzymes to destroy microRNAs", "Nature", "00:00"], ["AI set to map risks of future climate disasters", "Nature", "00:00"], ["Affordable mobility for all: why we need smaller, cheaper electric vehicles", "Nature", "00:00"], ["Mystery of how plants make a family of medicinal molecules has been solved", "Nature", "00:00"], ["Brain\u2019s protective barrier stays leaky for years after playing contact sports", "Nature", "00:00"], ["Knock knock, no one\u2019s there. Study finds scientists\u2019 jokes mostly fall flat", "Nature", "00:00"], ["Our microbial ancestors were probably oxygen-tolerant", "Nature", "00:00"], ["Daily briefing: Funding calls plummet as NIH turns away from agency-directed science", "Nature", "00:00"], ["CRISPR makes enhanced cancer-fighting immune cells inside mice", "Nature", "00:00"], ["An enzyme inside the bacterial-cell membrane chops up viral DNA on entry", "Nature", "00:00"], ["Thymus health is a predictor of lifelong well-being and immunotherapy effectiveness", "Nature", "00:00"], ["Planar Li deposition and dissolution enable practical anode-free pouch cells", "Nature", "00:00"], ["Molecular basis of oocyte cytoplasmic lattice assembly", "Nature", "00:00"], ["Triple-junction solar cells with improved carrier and photon management", "Nature", "00:00"], ["When artificial lightning strikes", "Nature", "00:00"], ["Rethinking AI\u2019s role in survey research: from threat to collaboration", "Nature", "00:00"], ["Autism in older adults: the health system must recognize its effects", "Nature", "00:00"], ["How the Pok\u00e9mon franchise has helped to shape neuroscience", "Nature", "00:00"], ["Marine conservation cities: a model for ocean governance", "Nature", "00:00"], ["AlphaFold database hits \u2018next level\u2019: the AI system now includes protein pairing", "Nature", "00:00"], ["Gender conformity starts young, and boys and girls fall in line in different ways", "Phys.org", "00:30"], ["Light-based technique creates artificial structures that mimic the scaffolding of cells", "Phys.org", "23:00"], ["New research explores the paradox of firms' unique technologies", "Phys.org", "22:30"], ["Limited jobs block social mobility opportunities for young people in coastal and rural areas, study shows", "Phys.org", "22:00"], ["Are humans naturally violent? New research challenges long-held assumptions", "Phys.org", "21:00"], ["Can animals sense earthquakes?", "Phys.org", "21:00"], ["Newly discovered photos show astronaut Neil Armstrong after the Gemini 8 emergency", "Phys.org", "20:55"], ["Women assistant principals average 13.2 teaching years before first principal bid", "Phys.org", "20:30"], ["How DICER cuts microRNAs with single-nucleotide precision", "Phys.org", "20:00"], ["Where did the ancient Greeks and Romans think lightning came from? Hint: not just the gods", "Phys.org", "19:30"], ["JWST probes emerging young star clusters in nearby spiral galaxy NGC 628", "Phys.org", "19:00"], ["Musk's Twitter takeover highlights danger of owner-dominated social media platforms", "Phys.org", "18:30"], ["Why drawing eyes on food packaging could stop seagulls stealing your chips", "Phys.org", "18:00"], ["Dishwashing with side effects: Kitchen sponges release microplastics", "Phys.org", "18:00"], ["Mussel-inspired glue from recycled plastics can be detached and reused", "Phys.org", "17:00"], ["Dogs can overdose too: Naloxone training can save pets as well as humans", "Phys.org", "17:00"], ["Two buried Iron Age hoards reveal first evidence for four-wheeled wagons in Britain", "Phys.org", "17:00"], ["Motivated employees get more out-of-role work, even when it costs bonuses", "Phys.org", "16:00"], ["Superconducting altermagnets could carry spin without energy loss", "Phys.org", "16:00"], ["Scientists create wheat-only gel from bran fiber and gluten protein", "Phys.org", "15:00"], ["Predicting RNA activity expands therapeutic possibilities", "Phys.org", "15:00"], ["A student volunteer and a mesh suit helped us figure out how mosquitoes reach their targets", "Phys.org", "14:00"], ["Moons orbiting wandering exoplanets could be habitable\u2014with one catch", "Phys.org", "13:50"], ["Expert opinion on AI, automation, and the future of work", "Phys.org", "13:00"], ["Critically endangered monkey gives birth after surgery saves her foot", "Phys.org", "13:00"], ["Seattle tried to guarantee higher pay for delivery drivers. Here's why it didn't work as intended", "Phys.org", "12:30"], ["Saturday Citations: Merging brown dwarfs, ancient machine guns, gravitational wave detection", "Phys.org", "12:30"], ["Kimchi-derived probiotic found to promote binding and excretion of intestinal nanoplastics", "Phys.org", "12:00"], ["Physicists find electronic agents that govern flat band quantum materials", "Phys.org", "11:20"], ["Youth leaving foster care with strong emotional support face lower incarceration odds", "Phys.org", "10:40"], ["You can now buy a DIY quantum computer", "New Scientist", "12:00"], ["Inside the world\u2019s first antimatter delivery service", "New Scientist", "06:00"], ["We\u2019ve spotted a huge asteroid spinning impossibly fast", "New Scientist", "17:00"], ["Major leap towards reanimation after death as mammal's brain preserved", "New Scientist", "16:19"], ["Private company to land on asteroid Apophis as it flies close to Earth", "New Scientist", "14:52"], ["How worried should you be about ultra-processed foods?", "New Scientist", "08:00"], ["Mathematician wins 2026 Abel prize for solving 60-year-old mystery", "New Scientist", "11:00"], ["Probiotic cream that ramps up heat production could prevent frostbite", "New Scientist", "17:07"], ["Physicists create formula for how many times you can fold a cr\u00eape", "New Scientist", "10:00"], ["Fluorescent ruby-like gems have been found on Mars for the first time", "New Scientist", "19:00"], ["Boosting the blood-brain barrier could avert brain damage in athletes", "New Scientist", "18:00"], ["Neanderthals may have treated wounds with antibiotic sticky tar", "New Scientist", "18:00"], ["Will war in the Middle East accelerate the clean energy transition?", "New Scientist", "16:28"], ["The mystery of how volcanic lightning happens has been solved", "New Scientist", "16:00"], ["Ice core reveals low CO2 during warm spell 3 million years ago", "New Scientist", "16:00"], ["Psychedelics may be no better than antidepressants for depression", "New Scientist", "15:00"], ["Route-planning AI cut climate-warming contrails on over 100 flights", "New Scientist", "14:41"], ["Particle discovered at CERN solves a 20-year-old mystery", "New Scientist", "09:00"], ["Your partner probably wakes you up at night without you even realising", "New Scientist", "12:00"], ["The ancient Goths were an ethnically diverse group", "New Scientist", "12:00"], ["3I/ATLAS: Interstellar comet has water unlike any in our solar system", "New Scientist", "07:00"], ["The asteroid Ryugu has all of the main ingredients for life", "New Scientist", "16:00"], ["Why global warming is accelerating and what it means for the future", "New Scientist", "15:00"], ["AI is nearly exclusively designed by men \u2013 here's how to fix it", "New Scientist", "13:00"], ["Single-celled organism with no brain is capable of Pavlovian learning", "New Scientist", "14:00"], ["A smartphone app can help men last longer in bed", "New Scientist", "00:01"], ["Our extinct Australopithecus relatives may have had difficult births", "New Scientist", "16:00"], ["We don\u2019t know if AI-powered toys are safe, but they\u2019re here anyway", "New Scientist", "00:01"], ["Parkinson's disease may reduce enjoyment of pleasant smells", "New Scientist", "12:00"], ["The race to solve the biggest problem in quantum computing", "New Scientist", "07:00"], ["How worried should you be about your BMI?", "New Scientist", "18:00"], ["Can species evolve fast enough to survive as the planet heats up?", "New Scientist", "18:00"], ["Chemistry may not be the 'killer app' for quantum computers after all", "New Scientist", "17:00"], ["Why drug overdose deaths have suddenly plummeted in the US", "New Scientist", "16:00"], ["A miniature magnet rivals behemoths in strength for the first time", "New Scientist", "18:00"], ["Mathematics is undergoing the biggest change in its history", "New Scientist", "12:00"], ["King penguins are thriving in a warmer climate, but it may not last", "New Scientist", "18:00"], ["Why the world's militaries are scrambling to create their own Starlink", "New Scientist", "14:00"], ["Start-up is building the first data centre to use human brain cells", "New Scientist", "16:55"], ["Orcas may be to blame for some mass dolphin strandings", "New Scientist", "00:01"], ["Sharing genetic risk scores can unwittingly reveal secrets", "New Scientist", "17:00"], ["Mystery 'whippet' space explosion is the brightest of its kind", "New Scientist", "14:00"], ["Human populations evolved in similar ways after we began farming", "New Scientist", "11:00"], ["Why is black rain falling on Iran and how dangerous is it?", "New Scientist", "19:11"], ["A daily multivitamin may slightly slow rates of ageing", "New Scientist", "16:00"], ["'Singing' dogs may show the evolutionary roots of musicality", "New Scientist", "14:00"], ["How an intern helped build the AI that shook the world", "New Scientist", "06:00"], ["The first apes to walk upright may have evolved in Europe", "New Scientist", "12:07"], ["SETI may have missed alien signals because of space weather", "New Scientist", "11:26"], ["The moment that kicked off the AI revolution", "New Scientist", "06:00"], ["Shift in the Gulf Stream could signal ocean current collapse", "New Scientist", "15:51"], ["Ancient 'weirdo' reptile graduated from 4 legs to 2 in adolescence", "New Scientist", "04:00"], ["We must close the 'shocking' knowledge gap in women's health", "New Scientist", "14:30"], ["NASA changed an asteroid's orbit around the sun for the first time", "New Scientist", "19:00"], ["Chemistry clues could detect aliens unlike any life on Earth", "New Scientist", "18:00"], ["Inflammation might cause Alzheimer's \u2013 here's how to reduce it", "New Scientist", "17:09"], ["Earth is now heating up twice as fast as in previous decades", "New Scientist", "14:00"], ["Alzheimer\u2019s may start with inflammation in the skin, lungs or gut", "New Scientist", "12:00"], ["M\u00f6bius strip-like molecule has an entirely new and bizarre shape", "New Scientist", "19:00"], ["How worried should you be about microplastics?", "New Scientist", "10:29"], ["Just one dose of psilocybin relieves symptoms of OCD for months", "New Scientist", "16:00"], ["Two marsupials believed extinct for 6000 years found alive", "New Scientist", "13:00"], ["The secret of how cats twist in mid-air to land on their feet", "New Scientist", "18:00"], ["Sea levels around the world are much higher than we thought", "New Scientist", "16:00"], ["Top predators still prowled the seas after the biggest mass extinction", "New Scientist", "14:49"], ["Claude AI: Why are there so many internet outages?", "New Scientist", "12:27"], ["Phantom codes could help quantum computers avoid errors", "New Scientist", "18:00"], ["Rare family has had many more sons than daughters for generations", "New Scientist", "17:13"], ["Your microbiome may determine your risk of a severe allergic reaction", "New Scientist", "16:00"], ["Why the US is using a cheap Iranian drone against the country itself", "New Scientist", "12:36"], ["Spreading crushed rock on farms could absorb 1 billion tonnes of CO2", "New Scientist", "15:00"], ["First drone passengers may be combat casualties and criminals", "New Scientist", "08:00"], ["Ants capture carbon dioxide from the air and turn it into armour", "New Scientist", "12:00"], ["People who eat a lot of fibre spend more time in deep sleep", "New Scientist", "10:41"], ["Human brain cells on a chip learned to play Doom in a week", "New Scientist", "15:00"], ["Inside the company selling quantum entanglement", "New Scientist", "09:00"], ["NASA\u2019s Artemis moon exploration programme is getting a major makeover", "New Scientist", "16:24"], ["Frailty can be eased with an infusion of stem cells from young people", "New Scientist", "15:00"], ["Ocean geoengineering trial finds no evidence of harm to marine life", "New Scientist", "11:08"], ["How worried should you be about an asteroid smashing into Earth?", "New Scientist", "10:38"], ["We all harbour 9 secrets and they are eating us up inside", "New Scientist", "09:00"], ["When we interbred with Neanderthals, they were usually the fathers", "New Scientist", "19:00"], ["Stem cell patch reverses brain damage in fetuses with spina bifida", "New Scientist", "23:30"], ["Banning children from VPNs and social media will erode adults' privacy", "New Scientist", "16:51"], ["How to see six planets in the sky at once in rare celestial alignment", "New Scientist", "12:00"], ["Is geothermal energy on the cusp of a worldwide renaissance?", "New Scientist", "10:00"], ["AIs can\u2019t stop recommending nuclear strikes in war game simulations", "New Scientist", "10:00"], ["SpaceX's 1 million satellites could avoid environmental checks", "New Scientist", "18:00"], ["Tiny predatory dinosaur weighed less than a chicken", "New Scientist", "16:00"], ["Breaking encryption with a quantum computer just got 10 times easier", "New Scientist", "12:00"], ["Loophole found that makes quantum cloning possible", "New Scientist", "12:00"], ["Rapamycin can add years to your life, or none at all \u2013 it\u2019s a lottery", "New Scientist", "00:01"], ["Cannibalism may explain why some orcas stay in family groups", "New Scientist", "18:00"], ["Landmark vitiligo cream targets immune cells that disrupt pigmentation", "New Scientist", "13:52"], ["Stone Age symbols may push back the earliest form of writing", "New Scientist", "20:00"], ["Saturn\u2019s rings may have formed after a huge collision with Titan", "New Scientist", "08:00"], ["Birdwatching may reshape the brain and build its buffer against ageing", "New Scientist", "18:00"], ["Brutal Iron Age massacre may have targeted women and children", "New Scientist", "16:00"], ["Everyone's a queen: The ant species with no males or workers", "New Scientist", "16:00"], ["NASA\u2019s\u00a0X-59 Experimental Supersonic Aircraft Makes Second Flight", "NASA", "23:27"], ["Hangar One Restoration Project", "NASA", "20:53"], ["NASA Selects University Finalists for Technology Concepts Competition", "NASA", "19:30"], ["How Open NASA Data on Comet 3I/ATLAS Will Power Tomorrow\u2019s Discoveries", "NASA", "19:06"], ["Smiles and Spacesuits", "NASA", "18:27"], ["NASA Exploration, Science Inspire \u201cProject Hail Mary\u201d Film", "NASA", "17:22"], ["NASA Simulations Improve Artemis II Launch Environment", "NASA", "14:00"], ["NASA Glenn\u00a0Opens Applications for\u00a0Free Summer Engineering Institute", "NASA", "13:00"], ["Restless K\u012blauea Launches Lava and Ash", "NASA", "04:01"], ["American Bald Eagle at NASA\u2019s Kennedy Space Center", "NASA", "15:16"], ["The Download: OpenAI is building a fully automated researcher, and a psychedelic trial blind spot", "MIT Tech Review", "13:15"], ["OpenAI is throwing everything into building a fully automated researcher", "MIT Tech Review", "11:57"], ["Mind-altering substances are (still) falling short in clinical trials", "MIT Tech Review", "09:00"], ["The Download: Quantum computing for health, and why the world doesn\u2019t recycle more nuclear waste", "MIT Tech Review", "12:17"], ["Can quantum computers now solve health care problems? We\u2019ll soon find out.", "MIT Tech Review", "10:51"], ["Why the world doesn\u2019t recycle more nuclear waste", "MIT Tech Review", "10:00"], ["The Download: The Pentagon\u2019s new AI plans, and next-gen nuclear reactors", "MIT Tech Review", "12:38"], ["What do new nuclear reactors mean for waste?", "MIT Tech Review", "09:00"], ["The Pentagon is planning for AI companies to train on classified data, defense official says", "MIT Tech Review", "22:30"], ["The Download: OpenAI\u2019s US military deal, and Grok\u2019s CSAM lawsuit", "MIT Tech Review", "12:26"], ["This crocodile ran like a greyhound across prehistoric Britain 200 million years ago", "Science Daily", "08:57"], ["New AI tool predicts cancer spread with surprising accuracy", "Science Daily", "11:44"], ["Scientists just found a hidden 48-dimensional world in quantum light", "Science Daily", "11:26"], ["Harvard engineers build chip that can twist and control light in real time", "Science Daily", "11:34"], ["New pill cuts \u201cbad\u201d cholesterol by 60% in major trial", "Science Daily", "12:04"], ["Tectonic shift: Earth was already moving 3.5 billion years ago", "Science Daily", "07:37"], ["Scientists turn probiotic bacteria into tumor-hunting cancer killers", "Science Daily", "05:26"], ["These \u201cforever chemicals\u201d could be weakening kids\u2019 bones for life", "Science Daily", "04:51"], ["Closing your eyes to hear better might be a big mistake", "Science Daily", "11:49"], ["Ultra-processed foods linked to 67% higher risk of heart attack and stroke", "Science Daily", "00:54"], ["Belly fat linked to heart failure risk even in people with normal weight", "Science Daily", "23:40"], ["The best strength training plan might be simpler than you think", "Science Daily", "12:09"], ["Gum disease bacterium linked to breast cancer growth and spread", "Science Daily", "03:37"], ["Scientists solve 12,800-year-old climate mystery hidden in Greenland ice", "Science Daily", "10:01"], ["Men are losing a key chromosome with age and it may be deadly", "Science Daily", "00:56"], ["This virus therapy supercharges the immune system against brain cancer", "Science Daily", "11:59"], ["Scientists turn CO2 into fuel using breakthrough single-atom catalyst", "Science Daily", "08:31"], ["This common vaccine cuts heart risk nearly in half in new study", "Science Daily", "12:10"], ["Huge study finds no evidence cannabis helps anxiety, depression, or PTSD", "Science Daily", "12:27"], ["Astronomers discover nearby galaxy was shattered by cosmic crash", "Science Daily", "08:43"], ["What happens after Ozempic shocked researchers", "Science Daily", "03:08"], ["Scientists thought ravens followed wolves. They were wrong", "Science Daily", "01:52"], ["Wildfires in carbon-rich tropical peatlands hit 2000-year high", "Science Daily", "05:18"], ["Physicists discover a heavy cousin of the proton at CERN\u2019s Large Hadron Collider", "Science Daily", "11:31"], ["Scientists recreated a dinosaur nest to solve a 70-million-year-old mystery", "Science Daily", "04:58"], ["The surprising cancer link between cats and humans", "Science Daily", "23:12"], ["Your daily coffee may be protecting your brain, 43-year study finds", "Science Daily", "10:47"], ["New drug protects liver after intestinal surgery and boosts nutrient absorption", "Science Daily", "07:31"], ["You don\u2019t need to lose weight to reverse prediabetes, study finds", "Science Daily", "06:32"], ["These strange pink rocks just revealed a hidden giant beneath Antarctica", "Science Daily", "10:39"], ["These dinosaurs had wings but couldn\u2019t fly", "Science Daily", "10:08"], ["Scientists discover tiny rocket engines inside malaria parasites", "Science Daily", "11:19"], ["Cutting sweet foods doesn\u2019t reduce cravings or improve health", "Science Daily", "10:57"], ["AI uses as much energy as Iceland but scientists aren\u2019t worried", "Science Daily", "09:52"], ["This simple habit could help seniors live longer and stay independent", "Science Daily", "22:01"], ["JWST reveals a strange sulfur world unlike any planet we know", "Science Daily", "23:13"], ["AI-powered robot learns how to harvest tomatoes more efficiently", "Science Daily", "04:26"], ["MIT scientists finally see hidden quantum \u201cjiggling\u201d inside superconductors", "Science Daily", "03:49"], ["He survived 48 hours without lungs and lived", "Science Daily", "08:15"], ["Scientists used 7,000 GPUs to simulate a tiny quantum chip in extreme detail", "Science Daily", "03:35"], ["Scientists finally reveal how this Alzheimer\u2019s drug really works", "Science Daily", "11:44"], ["Study finds ChatGPT gets science wrong more often than you think", "Science Daily", "02:39"], ["Even JWST can\u2019t see through this planet\u2019s massive haze", "Science Daily", "04:47"], ["Scientists link childhood stress to lifelong digestive issues", "Science Daily", "02:08"], ["This massive crater could expose the heart of a lost planet", "Science Daily", "11:19"], ["Scientists just discovered bull sharks have friends", "Science Daily", "01:20"], ["NASA\u2019s Webb captures a bizarre brain-shaped nebula around a dying star", "Science Daily", "05:59"], ["DNA origami vaccines could be the next leap beyond mRNA", "Science Daily", "05:59"], ["ADHD brains show sleep-like activity even while awake", "Science Daily", "06:25"], ["Fixing a tooth infection may improve blood sugar and heart health", "Science Daily", "02:51"], ["The smell of Egyptian mummies is revealing 2,000-year-old secrets", "Science Daily", "10:46"], ["Scientists unlock a powerful new way to turn sunlight into fuel", "Science Daily", "08:01"], ["Rare supernova from 10 billion years ago may reveal the secret of dark energy", "Science Daily", "03:48"], ["A strange twist in the universe\u2019s oldest light may be bigger than we thought", "Science Daily", "02:53"], ["A strange new quantum state appears when atoms get \u201cfrustrated\u201d", "Science Daily", "10:19"], ["Just 24 minutes of specially designed music could significantly reduce anxiety", "Science Daily", "11:04"], ["Scientists discover what really happens during sourdough fermentation", "Science Daily", "10:59"], ["Common pesticide may more than double Parkinson\u2019s disease risk", "Science Daily", "22:49"], ["Scientists inject one tumor and watch cancer vanish across the body", "Science Daily", "00:18"], ["Life rebounded shockingly fast after the asteroid that killed the dinosaurs", "Science Daily", "04:44"], ["Nasa's Artemis Moon rocket rolls back to pad for possible April launch", "BBC Science", "16:32"], ["Taxpayers to fund clear-up of huge illegal waste dumps", "BBC Science", "03:34"], ["Natural History Museum overtakes British Museum as UK's top tourist attraction", "BBC Science", "00:05"], ["King opens world's longest coastal path around England", "BBC Science", "14:34"], ["Fly tippers face clearing up own rubbish as punishment", "BBC Science", "17:13"], ["Higgs boson breakthrough was UK triumph, but British physics faces 'catastrophic' cuts", "BBC Science", "19:40"], ["Dog owners to face unlimited fines if their pets attack livestock under new law", "BBC Science", "02:26"], ["Oil firm breaks environmental rules nearly 500 times", "BBC Science", "11:59"], ["MP raises question in Parliament over fish deaths", "BBC Science", "15:14"], ["Taxpayers to fund clear-up of huge illegal waste dumps", "BBC Science", "03:34"], ["US states sue Trump over his move to scrap greenhouse gases ruling", "BBC Science", "19:09"], ["Launch of map to report Asian hornet sightings", "BBC Science", "12:21"], ["Eid moon spotters pass skills to next generation", "BBC Science", "17:13"], ["Second company plans Shetland rocket launch this year", "BBC Science", "14:51"], ["Moment suspected meteor is spotted over Ohio and Pennsylvania", "BBC Science", "20:46"], ["The astronaut who took one giant leap for Manx-kind", "BBC Science", "07:30"], ["When does the Nasa Moon mission launch and who are the Artemis II crew?", "BBC Science", "12:42"], ["World's longest coastal path opens in England", "BBC Science", "16:46"], ["King opens world's longest coastal path around England", "BBC Science", "14:34"], ["Updated plan aims to boost NI's resilience to climate change", "BBC Science", "14:02"], ["What are El Ni\u00f1o and La Ni\u00f1a, and how do they change the weather?", "BBC Science", "12:45"], ["'Carnage' unleashed on sleeping town when river hit 18-times normal level", "BBC Science", "07:19"], ["Artemis II: Nasa targets early April for Moon mission", "BBC Science", "21:21"], ["Nasa announces change to its Moon landing plans", "BBC Science", "18:37"], ["The Global Story", "BBC Science", "10:00"], ["Nasa's mega Moon rocket arrives at launch pad for Artemis II mission", "BBC Science", "01:22"], ["Intriguing finds could solve mystery of women in medieval cemetery", "BBC Science", "00:34"], ["Higgs boson breakthrough was UK triumph, but British physics faces 'catastrophic' cuts", "BBC Science", "19:40"], ["The science of soulmates: Is there someone out there exactly right for you?", "BBC Science", "00:01"], ["The debate about whether the NHS should use magic mushrooms to treat depression", "BBC Science", "15:47"], ["COP30: Trump and many leaders are skipping it, so does the summit still have a point?", "BBC Science", "00:09"], ["Britain's energy bills problem - and why firms are paid huge sums to stop producing power", "BBC Science", "09:14"], ["BBC Inside Science", "BBC Science", "21:00"], ["BBC Inside Science", "BBC Science", "21:00"], ["BBC Inside Science", "BBC Science", "21:00"], ["BBC Inside Science", "BBC Science", "21:00"], ["Home working, long leases and rise of parking apps - what went wrong for NCP", "BBC Business", "01:59"], ["Work from home and drive more slowly to save energy, global body urges", "BBC Business", "15:05"], ["UK borrowing costs hit highest level since 2008 financial crisis", "BBC Business", "14:55"], ["Typical energy bill forecast to rise by \u00a3332 a year in July", "BBC Business", "13:22"], ["Trump-backed television merger moves forward", "BBC Business", "15:19"], ["Hargreaves Lansdown says IT issues which affected thousands are over", "BBC Business", "17:44"], ["Colombia's budding tech scene needs a cash boost", "BBC Business", "00:09"], ["Russia, China and the US \u2013 the global winners and losers of the Iran war", "BBC Business", "00:08"], ["Faisal Islam: Iran war is having a dramatic effect on the UK economy", "BBC Business", "16:21"], ["Stock markets rattled and energy prices soar after strikes on Qatar gas hub", "BBC Business", "23:29"], ["Bank ready to raise interest rates if Iran war price 'shock' persists", "BBC Business", "15:44"], ["US lifts sanctions on some Iranian oil as energy prices soar", "BBC Business", "12:15"], ["Trio charged over alleged plot to smuggle Nvidia chips from US to China", "BBC Business", "04:26"], ["Why are gas prices soaring and how could it affect you?", "BBC Business", "10:34"], ["How the Iran war may affect your money and bills", "BBC Business", "12:06"], ["Nearly 400 firms fined over failure to pay minimum wage", "BBC Business", "10:46"], ["Pay grows at slowest rate in more than five years", "BBC Business", "13:40"], ["UK sets target to boost steel making and cut imports", "BBC Business", "00:04"], ["Labubu film is official with Paddington director at the helm", "BBC Business", "00:01"], ["US holds interest rates as Iran war triggers inflation fears", "BBC Business", "20:20"], ["How high could UK petrol and diesel prices go?", "BBC Business", "17:12"], ["Computer says no. Are AI interviews making it harder to get a job?", "BBC Business", "17:03"], ["The Iran war is causing a global energy crisis - can China withstand it?", "BBC Business", "23:31"], ["Average age of first time buyer climbs to 34", "BBC Business", "14:00"], ["Bentley workers 'shocked and angry' at job cuts", "BBC Business", "15:38"], ["Ad for AI editing app which said it could 'remove anything' banned", "BBC Business", "00:00"], ["Mayors to gain more spending power under Reeves tax plans", "BBC Business", "18:26"], ["How Finnish supermarkets are central to the country's defence", "BBC Business", "00:10"], ["Is it possible to build a plastic-free home?", "BBC Business", "00:01"], ["Ukraine's urgent fight on the financial frontline", "BBC Business", "00:06"], ["Can plastic-eating fungi help clean up nappy waste?", "BBC Business", "00:03"], ["Why has Trump eased sanctions on Russian oil - and will it help Putin?", "BBC Business", "16:07"], ["Dharshini David: Economy on shaky ground even before Iran war", "BBC Business", "10:58"], ["A small US grocer is calling out the lower prices at big chains", "BBC Business", "00:02"], ["Can Ukraine's war-torn wheatfields be cleansed?", "BBC Business", "06:21"], ["The Aldi-style disruptors who could be about to shake up the vets market", "BBC Business", "10:49"], ["GPS jamming: The invisible battle in the Middle East", "BBC Business", "00:01"], ["Spain's migrants welcome amnesty: 'It will help us in every way'", "BBC Business", "00:17"], ["Can snacks help you sleep?", "BBC Business", "00:05"], ["We have more privacy controls yet less privacy than ever", "BBC Business", "00:04"], ["Comic Relief helps fund free school uniform charity", "BBC Business", "07:27"], ["'Without food charity, we might not eat'", "BBC Business", "06:58"], ["Typical energy bill forecast to rise by \u00a3332 a year in July", "BBC Business", "13:22"], ["Did you know you could transfer your ISA?", "BBC Business", "12:54"], ["How the Iran war may affect your money and bills", "BBC Business", "12:06"], ["Sir John Curtice: Why Labour's Brexit focus has shifted from Leavers to Remainers", "BBC Business", "00:01"], ["The real impact of roadworks on the country - and why they're set to get worse", "BBC Business", "01:26"], ["Why the railways often seem to be in such chaos over Christmas", "BBC Business", "00:03"], ["Budget 2025: What's the best and worst that could happen for Labour?", "BBC Business", "15:14"], ["Has Britain's budget watchdog become too all-powerful?", "BBC Business", "00:00"], ["Did you know you could transfer your ISA?", "BBC Business", "12:54"], ["Why the average age of a first-time buyer has risen", "BBC Business", "12:53"], ["Selling Sheffield Wednesday", "BBC Business", "17:00"], ["Witness History", "BBC Business", "07:00"], ["Airport security lines are long. Here's what to know if you're flying", "NPR", "21:40"], ["Robert Mueller, ex-FBI director who led 2016 Russia inquiry, dies at 81", "NPR", "17:57"], ["Iraqi Kurds mark Nowruz, celebrating light over darkness", "NPR", "16:56"], ["End of an heir-a: The U.K. abolishes aristocrats' right to inherit Parliament seats", "NPR", "13:34"], ["Opinion: Lessons from a bad weather forecast", "NPR", "12:00"], ["Meet the Dutch art detective who tracks down stolen masterpieces", "NPR", "11:00"], ["When health insurance costs $2,500 per month, families make tough choices", "NPR", "11:00"], ["DHS shutdown hurts families' access to detention facilities, Democrat says", "NPR", "10:00"], ["Iran war enters its fourth week with no clear end in sight", "NPR", "09:43"], ["U.S. judge rules against Pentagon restrictions on press coverage", "NPR", "01:11"], ["Iran war live: Trump threatens to attack power plants over Strait of Hormuz", "Al Jazeera", "00:00"], ["\u2018They want to colonise us\u2019: Brazil\u2019s Lula warns of foreign interference", "Al Jazeera", "23:35"], ["Saudi Arabia expels Iran military attache, four embassy staff", "Al Jazeera", "23:00"], ["Iran strikes towns near Israel\u2019s nuclear site, wounds over 100", "Al Jazeera", "22:57"], ["WHO says attack on Sudan hospital killed 64, including 13 children", "Al Jazeera", "22:43"], ["ICC Chief Prosecutor Khan cleared of sexual misconduct by judges: Report", "Al Jazeera", "22:08"], ["State of emergency declared as Iranian missile hits Arad in southern Israel", "Al Jazeera", "22:02"], ["US says it has crippled Iranian threat in Strait of Hormuz", "Al Jazeera", "21:37"], ["\u2018Tears and grief\u2019: Mother\u2019s Day in Gaza marked by mourning", "Al Jazeera", "20:45"], ["Joe Kent speaks out against Iran war at prayer event after resigning", "Al Jazeera", "19:46"], ["EU urges members to start storing winter gas as Iran war causes price surge", "Al Jazeera", "19:24"], ["Eid without toys: Israeli restrictions drive up prices in Gaza", "Al Jazeera", "18:03"], ["Flash flooding swamps Hawaii, prompting evacuation orders for 5,500 people", "Al Jazeera", "18:01"], ["Former FBI chief Robert Mueller, known for Trump investigation, dead at 81", "Al Jazeera", "17:42"], ["Trump threatens to deploy ICE to airports amid Homeland Security shutdown", "Al Jazeera", "16:57"], ["Tehran holds Eid prayers as funeral held for IRGC spokesman", "Al Jazeera", "16:20"], ["Bahrain says Patriot system intercepted drone over homes", "Al Jazeera", "16:02"], ["Arab states should beware of Israel\u2019s hegemonic energy expansion", "Al Jazeera", "16:01"], ["UK says Iran missile attack on Diego Garcia failed", "Al Jazeera", "15:59"], ["Iranian woman\u2019s video of US-Israel attack ends as bomb hits", "Al Jazeera", "14:40"], ["Unease in Japan after Trump cites Pearl Harbor to defend Iran war", "Al Jazeera", "14:34"], ["Japan beat Australia to lift Women\u2019s Asian Cup title", "Al Jazeera", "11:57"], ["Iran says US and Israel attacked Natanz nuclear facility", "Al Jazeera", "11:32"], ["US jury finds Elon Musk misled investors during Twitter purchase", "Al Jazeera", "11:18"], ["War spirals as information control tightens", "Al Jazeera", "10:44"], ["America may be a petrostate. But the energy shock still hurts", "Economist", "11:21"], ["Which country is the biggest loser from the energy shock?", "Economist", "11:18"], ["The new economics of sex work", "Economist", "11:16"], ["What if Donald Trump decided to ban oil exports?", "Economist", "20:54"], ["Will South Korea\u2019s epic bull market survive the energy shock?", "Economist", "19:14"], ["China cannot escape the energy shock", "Economist", "18:58"], ["The Iran war is roiling commodities far beyond oil", "Economist", "22:34"], ["Why investors won\u2019t know what to make of AI\u00a0for a while", "Economist", "15:11"], ["Liquefied natural gas: the overlooked economic chokepoint", "Economist", "12:06"], ["Donald Trump\u2019s options to cool oil prices are sorely limited", "Economist", "21:55"], ["Time to buy the most rubbish stocks you can find", "Economist", "21:46"], ["The Iran energy shock reverberates across financial markets", "Economist", "19:49"], ["The Iran war puts Asia in an energy panic", "Economist", "17:48"], ["Would America be in recession without the super-rich?", "Economist", "12:36"], ["To understand why countries grow, look at their firms", "Economist", "10:36"], ["India\u2019s economy is not as big as economists thought", "Economist", "10:33"], ["Americans\u2019 electricity bills are up. Don\u2019t blame AI", "Economist", "10:31"], ["European pensions are a $30trn missed opportunity", "Economist", "22:58"], ["Why war isn\u2019t always good for defence stocks", "Economist", "20:19"], ["The nightmare war scenario is becoming reality in energy markets", "Economist", "20:15"], ["War in Iran could cause the biggest oil shock in years", "Economist", "12:28"], ["America\u2019s trade chaos is just beginning", "Economist", "10:37"], ["Protectionists dislike trade and migration. And capital flows?", "Economist", "10:36"], ["Why Chinese people spend so much on food", "Economist", "10:31"], ["America\u2019s welfare state is more European than you think", "Economist", "22:55"], ["A viral research note on AI gets its economics wrong", "Economist", "22:21"], ["The AI productivity boom is not here (yet)", "Economist", "12:41"], ["Markets are churning furiously beneath the surface", "Economist", "12:29"], ["Donald Trump answers a Supreme Court rebuke with new tariff threats", "Economist", "17:52"], ["The EU is thrashing out a more muscular set of economic policies", "Economist", "10:52"], ["Did America\u2019s war on poverty fail?", "Economist", "10:52"], ["Prediction markets are rife with insider betting", "Economist", "10:33"], ["How big is the prize of reopening Russia?", "Economist", "20:30"], ["The financialisation of AI is just beginning", "Economist", "19:16"], ["Donald Trump\u2019s schemes to juice the economy", "Economist", "18:08"], ["Ethnic minorities are driving America\u2019s startup boom", "Economist", "10:37"], ["Why China\u2019s central bank won\u2019t save the country from deflation", "Economist", "10:34"], ["Chinese homebuyers are enraged by shoddy building standards", "Economist", "10:33"], ["How to put a price on a human life", "Economist", "10:32"], ["What drives the wage gap between men and women?", "Economist", "17:27"], ["Who wrangled the best trade deal from Donald Trump?", "Economist", "19:16"], ["The coldest crypto winter yet", "Economist", "18:50"], ["How to hedge a bubble, AI edition", "Economist", "14:23"], ["Hong Kong is getting its financial mojo back", "Economist", "10:32"], ["Untangling the ideas of Donald Trump\u2019s Fed nominee", "Economist", "10:30"], ["Why the dollar may have much further to fall", "Economist", "10:28"], ["Can emerging markets\u2019 stellar run continue?", "Economist", "18:41"], ["America and India strike a long-awaited trade truce", "Economist", "23:33"], ["AI is not the only threat menacing big tech", "Economist", "19:34"], ["Has America hit \u201cpeak tariff\u201d?", "Economist", "11:20"], ["What will Kevin Warsh\u2019s Federal Reserve look like?", "Economist", "17:17"], ["The fate of Japan\u2019s $6trn foreign portfolio rattles global markets", "Economist", "10:00"], ["Why is the yen still so weak?", "Economist", "10:00"], ["Our Big Mac index carries an Asian warning", "Economist", "10:00"], ["Just how debased is the dollar?", "Economist", "23:18"], ["The West and Ukraine are capsizing Russia\u2019s shadow fleet", "Economist", "20:23"], ["What is driving gold\u2019s relentless rally?", "Economist", "12:15"], ["Why AI won\u2019t wipe out white-collar jobs", "Economist", "20:16"], ["Can America\u2019s bond market keep defying the vigilantes?", "Economist", "14:07"], ["An audacious new book about a \u201cprecocious\u201d country", "Economist", "10:36"], ["National job stereotypes need updating", "Economist", "10:34"], ["The ascent of India\u2019s economy", "Economist", "10:34"], ["American decay versus American dynamism", "Economist", "20:20"], ["Japan\u2019s bond-market tremble reflects a fiscal-monetary clash", "Economist", "17:31"], ["Denmark braces for Donald Trump\u2019s Greenland tariffs", "Economist", "18:25"], ["Donald Trump\u2019s Greenland tariffs are no great blow to Europe", "Economist", "21:31"], ["China hits its GDP target\u2014in a weird way", "Economist", "15:02"], ["Why America\u2019s bond market just keeps winning", "Economist", "11:18"], ["The economics of regime change", "Economist", "10:28"], ["Jerome Powell punches back", "Economist", "22:18"], ["Donald Trump\u2019s crusade against usury reaches Wall Street", "Economist", "22:09"], ["Is passive investment inflating a stockmarket bubble?", "Economist", "21:02"], ["It\u2019s not just the Fed. Politics looms over central banks everywhere", "Economist", "18:19"], ["The Trump administration threatens the Fed with a criminal cudgel", "Economist", "04:34"], ["Pessimism is the world\u2019s main economic problem", "Economist", "17:41"], ["What \u201cPluribus\u201d reveals about economics", "Economist", "11:56"], ["Vietnam\u2019s growth is fast\u2014but fragile", "Economist", "10:30"], ["Why Europe\u2019s biggest pension funds are dumping government bonds", "Economist", "10:27"], ["Venezuela\u2019s astoundingly messy debts are about to get messier", "Economist", "19:36"], ["Is it better to rent or buy?", "Economist", "12:42"], ["America\u2019s missing manufacturing renaissance", "Economist", "17:10"], ["An American oil empire is a deeply flawed idea", "Economist", "12:38"], ["Investors head into 2026 remarkably optimistic", "Economist", "13:48"], ["China\u2019s property woes could last until 2030", "Economist", "13:48"], ["RedBird, a small firm doing big media deals", "Economist", "13:48"], ["America\u2019s economy looks set to accelerate", "Economist", "13:48"], ["Forget affordability. Europe has an availability crisis", "Economist", "11:42"], ["Why fewer Americans are giving than before", "Economist", "11:45"], ["The five biggest market developments of 2025", "Economist", "13:18"], ["How to interpret the pain at the edge of America\u2019s labour market", "Economist", "13:03"], ["Watch who you\u2019re calling childless", "Economist", "10:42"], ["Meet the American investors rushing into Congo", "Economist", "10:40"], ["This Christmas, raise a glass to concentrated market returns", "Economist", "19:14"], ["Where America\u2019s most prominent short-sellers are placing their bets", "Economist", "18:44"], ["Crypto\u2019s real threat to banks", "Economist", "19:44"], ["Germany has a lawyer problem", "Economist", "11:14"], ["What a stiff drink says about China\u2019s economy", "Economist", "11:12"], ["America\u2019s bond market is quiet\u2014almost too quiet", "Economist", "11:10"], ["Wall Street is drooling over bank mergers", "Economist", "11:07"], ["Asia\u2019s inexpensive AI stocks should worry American investors", "Economist", "19:18"], ["Which economy did best in 2025?", "Economist", "15:34"], ["AI misinformation may have paradoxical consequences", "Economist", "10:25"], ["Can golden toilets fix China\u2019s economy?", "Economist", "10:24"], ["Bitcoin has plunged. Strategy Inc is an early victim", "Economist", "10:24"], ["American sanctions are putting Russia under pressure", "Economist", "10:24"], ["Stockholm is Europe\u2019s new capital of capital", "Economist", "20:06"], ["Which Kevin Hassett would lead the Federal Reserve?", "Economist", "19:26"], ["How to spot a bubble bursting", "Economist", "19:49"], ["Why worries about American job losses are overstated", "Economist", "15:27"], ["Self-driving cars will transform urban economies", "Economist", "11:41"], ["China\u2019s property market is (somehow) worsening", "Economist", "11:37"], ["Narendra Modi plans to free up India\u2019s giant labour force", "Economist", "11:14"], ["One weird trick to solve the affordability crisis", "Economist", "10:47"], ["How to short the bubbliest firms", "Economist", "21:30"], ["Investors expect AI use to soar. That\u2019s not happening", "Economist", "16:30"], ["Why investors are increasingly fatalistic", "Economist", "12:19"], ["Visa restrictions are bad for Indians\u2014but maybe not for India", "Economist", "11:24"], ["Economists get cold feet about high minimum wages", "Economist", "11:24"], ["Can the Chinese economy match Aruba\u2019s?", "Economist", "11:24"], ["America\u2019s huge mortgage market is slowly dying", "Economist", "19:46"], ["Crypto got everything it wanted. Now it\u2019s sinking", "Economist", "21:57"], ["Is this the end of the scorching gold rally?", "Economist", "15:15"], ["Tree murders and the economics of crime", "Economist", "11:47"], ["How AI is breaking cover letters", "Economist", "11:03"], ["In defence of personal finance", "Economist", "20:38"], ["Old folk are seized by stockmarket mania", "Economist", "19:04"], ["Recessions have become ultra-rare. That is storing up trouble", "Economist", "19:33"], ["The problem with America\u2019s shutdown economy", "Economist", "15:10"], ["What explains India\u2019s peculiar stability?", "Economist", "11:01"], ["Don\u2019t blame AI for your job woes", "Economist", "10:51"], ["Universal child care can harm children", "Economist", "20:27"], ["Investors are telling Britain to cheer up a bit", "Economist", "19:58"], ["How Donald Trump can dodge a Supreme Court tariff block", "Economist", "15:17"], ["The mystery of China\u2019s slumping investment", "Economist", "19:08"], ["Why Wall Street won\u2019t see the next crash coming", "Economist", "11:46"], ["Investors will help Jamaica recover from Hurricane Melissa", "Economist", "11:22"], ["The new globalisation paradox", "Economist", "11:20"], ["India\u2019s IPO boom is good news for its economy", "Economist", "21:13"], ["A letter to investors from the White House Opportunities Fund", "Economist", "19:44"], ["The end of the rip-off economy", "Economist", "16:58"], ["China\u2019s secret stockpiles have been a great success\u2014so far", "Economist", "12:28"], ["The counterintuitive economics of smoking", "Economist", "12:23"], ["Will America\u2019s new sanctions on Russian oil force a peace deal?", "Economist", "19:12"], ["China is being fuelled by inspiration, not perspiration", "Economist", "10:04"], ["Can AI make the poor world richer?", "Economist", "10:03"], ["Trumponomics is warping the world\u2019s copper markets", "Economist", "09:52"], ["Why investors still don\u2019t believe in Argentina", "Economist", "19:26"], ["How to make immigration palatable in a populist age", "Economist", "15:55"], ["Wanted: a new finance writer", "Economist", "10:53"], ["Why are American women leaving the labour force?", "Economist", "15:21"], ["The world economy shrugs off both the trade war and AI fears", "Economist", "16:07"], ["Why Wall Street is fearful of more lending blow-ups", "Economist", "16:13"], ["Indian microfinance is in trouble", "Economist", "09:08"], ["The new economics of babymaking", "Economist", "09:08"], ["America\u2019s bankers are riding high. Why are they so worried?", "Economist", "20:25"], ["Donald Trump and Xi Jinping: both weaker than they think", "Economist", "20:16"], ["Would inflation-linked bonds survive an inflationary default?", "Economist", "19:02"], ["The Economist is hiring a Senior Producer", "Economist", "10:07"], ["Joel Mokyr deserves his Nobel prize", "Economist", "18:17"], ["Why the ultra-rich are giving up on luxury assets", "Economist", "16:34"], ["America and China return to fierce trade conflict", "Economist", "07:09"], ["The stockmarket is fuelling America\u2019s economy", "Economist", "10:21"], ["Front-line economics: lessons from Russia\u2019s neighbours", "Economist", "10:10"], ["Narendra Modi\u2019s paltry target for India\u2019s growth", "Economist", "10:02"], ["The most dangerous corner of a balance-sheet", "Economist", "19:13"], ["Why Donald Trump\u2019s tariffs are failing to break global trade", "Economist", "18:20"], ["Welcome to Zero Migration America", "Economist", "18:05"], ["Don\u2019t tax wealth", "Economist", "10:23"], ["Credit markets look increasingly dangerous", "Economist", "10:22"], ["How the Trump administration learned to love foreign aid", "Economist", "10:19"], ["The eccentric investment strategy that beats the rest", "Economist", "18:45"], ["China\u2019s stockmarket rally may hurt the economy", "Economist", "16:46"], ["The economics of self-driving taxis", "Economist", "13:10"], ["The AI talent war is becoming fiercer", "Economist", "10:08"], ["Investing like the ultra-rich is easier than ever", "Economist", "19:19"], ["Will Dubai\u2019s super-hot property market avoid a crash?", "Economist", "16:18"], ["How to spot a genius", "Economist", "17:31"], ["Russia\u2019s besieged economy is clinging on", "Economist", "08:58"], ["Would an all-out trade war be better?", "Economist", "10:26"], ["Why European workers need to switch jobs", "Economist", "10:15"], ["China\u2019s future rests on 200m precarious workers", "Economist", "09:50"], ["Ukraine faces a $19bn budget black hole", "Economist", "19:44"], ["Europe\u2019s great stockmarket inversion", "Economist", "19:35"], ["America\u2019s economy defies gloomy expectations", "Economist", "13:39"], ["Can you make it to the end of this column?", "Economist", "09:35"], ["How grain has gone from famine to feast", "Economist", "09:33"], ["Meet Donald Trump\u2019s aid agency", "Economist", "09:31"], ["Why American bondholders are jumpy about inflation", "Economist", "19:05"], ["Europe\u2019s economy at last shows signs of a recovery", "Economist", "16:27"], ["Chinese trade is thriving despite America\u2019s attacks", "Economist", "15:55"], ["What if the AI stockmarket blows up?", "Economist", "16:19"], ["What if artificial intelligence is just a \u201cnormal\u201d technology?", "Economist", "09:22"], ["Bond vigilantes take aim at France", "Economist", "09:21"], ["The hard right\u2019s plans for Europe\u2019s economy", "Economist", "09:21"], ["Why supply shocks are a trap for commodity investors", "Economist", "18:45"], ["China turns crypto-curious", "Economist", "17:55"], ["America is escaping its office crisis", "Economist", "19:20"], ["The threat of deflation stalks Asia\u2019s economies", "Economist", "17:31"], ["Trump\u2019s interest-rate crusade will be self-defeating", "Economist", "10:00"], ["Gambling or investing? In America, the line is increasingly blurred", "Economist", "09:59"], ["How Trump\u2019s war on the Federal Reserve could do serious damage", "Economist", "09:56"], ["Assessing the case against Lisa Cook", "Economist", "19:35"], ["Why you should buy your employer\u2019s shares", "Economist", "19:21"], ["The Economist\u2019s finance and economics internship", "Economist", "13:26"], ["Even as China\u2019s economy suffers, stocks soar. What\u2019s going on?", "Economist", "12:55"], ["Trump \u201cfires\u201d Lisa Cook, escalating his war on the Federal Reserve", "Economist", "08:36"], ["Trump\u2019s interest-rate crusade will be self-defeating", "Economist", "17:55"], ["Fear the deficit-populism doom loop", "Economist", "13:28"], ["Economists disagree about everything. Don\u2019t they?", "Economist", "10:15"], ["The green transition has a surprising new home", "Economist", "09:55"], ["Can China cope with a deindustrialised future?", "Economist", "09:52"], ["Trump\u2019s trade victims are shrugging off his attacks", "Economist", "15:33"], ["In praise of complicated investing strategies", "Economist", "18:12"], ["How America\u2019s AI boom is squeezing the rest of the economy", "Economist", "18:12"], ["Where has the worst inflation problem?", "Economist", "15:36"], ["Growth-loving authoritarians are failing on their own terms", "Economist", "10:25"], ["What 630,000 paintings say about the world economy", "Economist", "09:57"], ["Who will win from Trump\u2019s tariffs?", "Economist", "09:57"], ["To sell Fannie and Freddie, Trump must answer a $7trn question", "Economist", "09:56"], ["Ivy League universities are on a debt binge", "Economist", "17:13"], ["Palantir might be the most overvalued firm of all time", "Economist", "15:57"], ["America\u2019s housing market is shuddering", "Economist", "10:17"], ["Xi Jinping\u2019s city of the future is coming to life", "Economist", "10:00"], ["An economist\u2019s guide to big life decisions", "Economist", "09:49"], ["Want better returns? Forget risk. Focus on fear", "Economist", "19:08"], ["If America goes after India\u2019s oil trade, China will benefit", "Economist", "18:33"], ["America\u2019s fertility crash reaches a new low", "Economist", "17:44"], ["Buy now, pay later is taking over the world. Good", "Economist", "18:28"], ["Trump will not let the world move on from tariffs", "Economist", "19:50"], ["Uncovering the secret food trade that corrupts Iran\u2019s neighbours", "Economist", "12:19"], ["The trade deal with America shows the limits of the EU\u2019s power", "Economist", "10:27"], ["Japan\u2019s dealmaking machine revs up", "Economist", "10:04"], ["The deeper reason for banking\u2019s retreat", "Economist", "10:02"], ["Despite double dissent, Jerome Powell retains his hold on markets", "Economist", "22:28"], ["A fresh retail-trading frenzy is reshaping financial markets", "Economist", "16:00"], ["Europe averts its Trumpian trade nightmare", "Economist", "00:11"], ["Who\u2019s feeling the pain of Trump\u2019s tariffs?", "Economist", "10:53"], ["What economics can teach foreign-policy types", "Economist", "09:16"], ["Where will be the Detroit of electric vehicles?", "Economist", "09:16"], ["Crypto\u2019s big bang will revolutionise finance", "Economist", "19:01"], ["Why 24/7 trading is a bad idea", "Economist", "18:21"], ["Want higher pay? Stay in your job", "Economist", "14:21"], ["Has Trump damaged the dollar?", "Economist", "14:37"], ["Why is AI so slow to spread? Economics can explain", "Economist", "09:33"], ["Trump\u2019s real threat: industry-specific tariffs", "Economist", "09:33"], ["Americans can still get a 2% mortgage", "Economist", "09:33"], ["Stablecoins might cut America\u2019s debt payments. But at what cost?", "Economist", "18:57"], ["Our Big Mac index will sadden America\u2019s burger-lovers", "Economist", "16:03"], ["War, geopolitics, energy crisis: how the economy evades every disaster", "Economist", "16:40"], ["Want to be a good explorer? Study economics", "Economist", "09:57"], ["Jane Street is chucked out of India. Other firms should be nervous", "Economist", "09:56"], ["Japan has been hit by investing fever", "Economist", "09:42"], ["Don\u2019t invest through the rearview mirror", "Economist", "18:43"], ["Trump\u2019s trade deals try a creative way to hobble China", "Economist", "17:15"], ["The great dealmaker is conspicuously short of trade deals", "Economist", "22:52"], ["How America\u2019s economy is dodging disaster", "Economist", "10:55"], ["Inside Iran\u2019s war economy", "Economist", "09:57"], ["Vanguard will soon crush fees for even more investors", "Economist", "09:55"], ["How to strike a trade deal with Donald Trump", "Economist", "09:10"], ["India\u2019s Licence Raj offers America important lessons", "Economist", "18:32"], ["Can Trump end America\u2019s $1.8trn student-debt nightmare?", "Economist", "15:52"], ["Xi Jinping wages war on price wars", "Economist", "16:59"], ["Big, beautiful budgets: not just an American problem", "Economist", "14:33"], ["Why commodities are on a rollercoaster ride", "Economist", "08:57"], ["Jane Street\u2019s sneaky retention tactic", "Economist", "08:57"], ["How to escape taxes on your stocks", "Economist", "08:57"], ["The dream scenario for prediction markets", "Economist", "18:50"], ["Politicians slashed migration. Now they face the consequences", "Economist", "15:21"], ["Who are the world\u2019s best investors?", "Economist", "10:33"], ["Japan is obsessed with rice. And prices have gone ballistic", "Economist", "10:32"], ["Japan\u2019s debts are shrinking. Its troubles may be only starting", "Economist", "10:32"], ["Investors ignore world-changing news. Rightly", "Economist", "18:04"], ["Why today\u2019s graduates are screwed", "Economist", "15:12"], ["Can China reclaim its IPO crown?", "Economist", "16:54"], ["What the Israel-Iran war means for oil prices", "Economist", "17:45"], ["How to invest your enormous inheritance", "Economist", "09:56"], ["The economic lessons from Ukraine\u2019s spectacular drone success", "Economist", "09:23"], ["European stocks are buoyant. Firms still refuse to list there", "Economist", "20:47"], ["Factory work is overrated. Here are the jobs of the future", "Economist", "17:27"], ["America and China have spooked each other", "Economist", "14:37"], ["The rise of the loner consumer", "Economist", "17:56"], ["Trump\u2019s tariffs have so far caused little inflation", "Economist", "10:11"], ["Stanley Fischer mixed rigour and realism, compassion and calm", "Economist", "09:42"], ["Trump thinks Americans consume too much. He has a point", "Economist", "09:36"], ["Who would pay America\u2019s \u201crevenge tax\u201d on foreigners?", "Economist", "18:26"], ["Why investors lack a theory of everything", "Economist", "17:35"], ["Will the UAE break OPEC?", "Economist", "13:51"], ["Trump\u2019s financial watchdogs promise a revolution", "Economist", "10:25"], ["India has a chance to cure its investment malaise", "Economist", "10:08"], ["How might China win the future? Ask Google\u2019s AI", "Economist", "09:54"], ["The courts block Trump\u2019s tariffs. Can he circumvent their verdict?", "Economist", "09:22"], ["Shareholders face a big new problem: currency risk", "Economist", "19:05"], ["Why AI hasn\u2019t taken your job", "Economist", "11:55"], ["Soaring bond yields threaten trouble", "Economist", "14:00"], ["Trump threatens 50% tariffs. How might Europe strike back?", "Economist", "18:43"], ["Hong Kong says goodbye to a capitalist crusader", "Economist", "10:15"], ["What the failure of a superstar student reveals about economics", "Economist", "10:11"], ["Wall Street and Main Street are split on Trump\u2019s chaos", "Economist", "09:59"], ["Will Jamie Dimon build the first trillion-dollar bank?", "Economist", "09:55"], ["The Jellies That Evolved a Different Way To Keep Time", "Quanta", "14:25"], ["Quantum Cryptography Pioneers Win Turing Award", "Quanta", "09:00"], ["The Math That Explains Why Bell Curves Are Everywhere", "Quanta", "13:51"], ["Why Do Humanoid Robots Still Struggle With the Small Stuff?", "Quanta", "14:37"], ["Where Some See Strings, She Sees a Space-Time Made of Fractals", "Quanta", "14:07"], ["Ex-FBI chief and Trump investigator Robert Mueller dies at 81", "DW", "23:55"], ["Thessaloniki: Remembering the 'Jerusalem of the Balkans'", "DW", "21:14"], ["Mass Prague rally hits Babis over democracy concerns", "DW", "20:16"], ["Zimbabwe's Biti reportedly detained amid term\u2011limit row", "DW", "19:03"], ["K-pop giants BTS celebrate return with Seoul concert", "DW", "16:56"], ["Down to the last drop: Physics answers a kitchen question", "DW", "16:48"], ["Taliban install new diplomat without telling Germany: Report", "DW", "16:15"], ["Germany's governing CDU, SPD watch latest regional election", "DW", "13:00"], ["US: Hawaii hit by historic flooding, more rain coming", "DW", "11:50"], ["Iran war: Strikes near Israel's nuclear center injure dozens", "DW", "11:11"], ["Czechs plan major rally as MPs mull 'foreign agent' law", "DW", "09:51"], ["Why Syria's new alcohol ban is about much more than beer", "DW", "09:37"], ["Germany news: Merz to call Trump amid Hormuz standoff", "DW", "09:31"], ["An answer to US drought conditions may be in the toilet", "DW", "09:10"], ["South Korea: Blaze at auto parts factory kills 11", "DW", "07:48"], ["Germany's finance minister rejects money-misuse accusations", "DW", "07:19"], ["Racism in Germany widespread, but more subtle than before", "DW", "05:56"], ["India news: New Delhi sends medical aid to Afghanistan", "DW", "04:37"], ["Elon Musk misled Twitter shareholders, US jury finds", "DW", "00:53"], ["US prosecutors investigate whether Colombian President Petro had ties to drug traffickers \u2014 reports", "DW", "21:56"], ["Salman Rushdie on why tyrants fear artists", "DW", "14:42"], ["Amazonia's Indigenous peoples dismantle Western cliches", "DW", "11:01"], ["Norwegian princess says she was 'manipulated' by Epstein", "DW", "10:39"], ["Slovenia election: a battle for the soul of the country?", "DW", "10:08"], ["BTS: Everything you need to know about the K-pop comeback of the year", "DW", "09:01"], ["Drone defense in the Iran war: What can Ukraine offer?", "DW", "06:40"], ["Belarus releases 250 political prisoners as part of US deal", "DW", "21:42"], ["EU summit: Hungary holds Ukraine aid ransom over Druzhba oil", "DW", "19:17"], ["Iran war's shock waves impact Turkish tourism industry", "DW", "17:17"], ["Iran war: Why is the South Pars gas field so important?", "DW", "14:30"], ["Nuclear's cleanup cost threatens the expansion dream", "DW", "14:30"], ["Bayern Munich's Karl and Urbig in latest Germany squad", "DW", "13:21"], ["UK\u2013Nigeria relations in focus as London hosts Tinubu", "DW", "11:33"], ["Social media makes people unhappy \u2014 World Happiness Report", "DW", "04:03"], ["Skeleton in Magdeburg Cathedral is almost certainly Otto I", "DW", "18:19"], ["Russian Orthodox Church makes inroads in Africa", "DW", "16:18"], ["The people remodelling homes with reclaimed ruins", "DW", "15:30"], ["Backlash against sex ed threatens Poland's health curriculum", "DW", "14:35"], ["'Vulnerable' satellites guide the world \u2014 and its wars", "DW", "13:35"], ["Iran war triggers helium shortage, hits semiconductor supply", "DW", "12:41"], ["The internet was supposed to be free. What went wrong?", "DW", "07:24"], ["Has Europe's center-right started relying on the far right?", "DW", "05:37"], ["No more big spenders: Iran war to dent Gulf state investment", "DW", "05:35"], ["Vatican declares partial mistrial in cardinal's fraud case", "DW", "17:47"], ["Starmer urges allies to keep focus on Ukraine amid Iran war", "DW", "16:45"], ["Northern Ireland's Gerry Adams tells court he wasn't in IRA", "DW", "15:24"], ["The German village running on its own juice", "DW", "14:32"], ["Ancient graffiti reveals scenes of everyday life in Pompeii", "DW", "13:28"], ["What does the Iran war mean for the US defense sector?", "DW", "12:23"], ["Germany news: Ukrainians on trial over Russia spying claims", "DW", "08:35"], ["Germany news: Strike to block all flights at Berlin airport", "DW", "18:04"], ["US wants help to guard Strait of Hormuz, but EU isn't keen", "DW", "17:20"], ["Iran war: Germany's Merz distances himself from Trump", "DW", "16:48"], ["Court rejects move to indict Valencia leader over flood response", "DW", "16:36"], ["Iran war: Why gold prices are not soaring", "DW", "15:31"], ["Germany's Climate Protection measures are barely on target", "DW", "14:45"], ["Oscars 2026: 'One Battle After Another' wins Best Picture", "DW", "02:52"], ["German Catholic Church consecrates first bishop from India", "DW", "06:11"], ["The BKA, 'Germany's FBI', turns 75", "DW", "18:17"], ["Celebrated philosopher J\u00fcrgen Habermas dies aged 96", "DW", "14:39"], ["Germany's Greens: More than leftist, woke ecologists?", "DW", "13:03"], ["US-Israeli strikes damage Iran's cultural heritage sites", "DW", "20:39"], ["US eases oil sanctions at an ideal time for Russia", "DW", "16:00"], ["Who holds the biggest emergency oil reserves?", "DW", "12:47"], ["White hydrogen: The hidden gas that could transform energy", "DW", "11:33"], ["Dealing with annoying people might make you age faster", "DW", "09:57"], ["Who will win the Oscars?", "DW", "09:45"], ["Fritz Lang's 'Metropolis': The future is now", "DW", "09:30"], ["Iran war: Strait of Hormuz shutdown could spark food crisis", "DW", "08:00"], ["Iran war risks long-term toxic legacy for people and nature that ripples beyond borders", "DW", "16:43"], ["AI: Could Germany adopt Anthropic?", "DW", "13:41"], ["Germany: 7-year-old flashes \u20ac5,000 cash at Osnabr\u00fcck school", "DW", "12:18"], ["How oil price hikes threaten Germany's economy", "DW", "12:00"], ["Honda warns of $16bn hit on its pivot away from EVs", "DW", "10:58"], ["Elon Musk's Tesla experiment: Unchecked ambition costs lives", "DW", "08:27"], ["WAFCON 2026: A 'combination of factors' behind postponement", "DW", "07:54"], ["Germany news: Lufthansa pilots stage another strike", "DW", "07:47"], ["How Poland is flexing its economic muscle in Western Europe", "DW", "16:25"], ["Trump's arch plan and the history of gateways", "DW", "15:49"], ["Merz says Germany won't join EU return to nuclear energy", "DW", "13:06"], ["Germany, others partially release oil reserves amid Iran war", "DW", "11:40"], ["Iran war roils oil trade, casting doubt on US fossil fuel push", "DW", "18:04"], ["Germany news: Pilots at Lufthansa to stage two-day strike", "DW", "17:31"], ["BioNTech founders step down to start new venture", "DW", "16:10"], ["Discrimination is a widespread phenomenon in Germany", "DW", "15:48"], ["Volkswagen Group profits take big hit on Porsche shift", "DW", "12:09"], ["Iran war: How long before Gulf nations stop pumping oil?", "DW", "08:06"], ["AI lab Anthropic sues to block Pentagon blacklisting", "DW", "19:06"], ["Germany: Chancellor Merz downplays a state election defeat", "DW", "17:49"], ["Germany: AfD marks success in state election, despite scandals", "DW", "16:41"], ["State elections spell doom for Germany's oldest party", "DW", "15:01"], ["Long before AI, fake photos were already popular", "DW", "10:18"], ["US allows India's Russian oil purchases again", "DW", "09:12"], ["Plasticizer chemical levels in German children raise concern", "DW", "08:36"], ["One in three Gen Z men want obedient women", "DW", "14:30"], ["International Women's Day: Workplace equality needs action", "DW", "09:54"], ["Why all the hype for 'The Devil Wears Prada 2'?", "DW", "05:18"], ["Ecosystem collapse could fuel the next global security crisis", "DW", "14:41"], ["Michelangelo: The man, the brand, the mystery", "DW", "14:37"], ["F1's Laura M\u00fcller continuing to blaze a trail for women", "DW", "11:28"], ["India news: India reach T20 final in shootout with England", "DW", "17:26"], ["Paralympic Winter Games: What you need to know", "DW", "13:35"], ["Salute replaces silence for Iran after 'message from home'", "DW", "13:22"], ["Tricia Tuttle to remain Berlinale head \u2014 with new code of conduct", "DW", "15:05"], ["Iran strikes highlight Dubai influencers' free speech limits", "DW", "09:10"], ["Iran war: UN's red line on force tested again", "DW", "08:35"], ["Iran attacks on Gulf oil and gas sites trigger energy fears", "DW", "07:47"], ["Why it's worth getting a heat pump if you live in a cold country, too", "DW", "12:30"], ["How sport is being disrupted by the US-Israel war with Iran", "DW", "14:50"], ["Ukraine war: German parts make their way into Russian drones", "DW", "10:12"], ["Will Iran war send oil prices above $100 a barrel?", "DW", "07:19"], ["Strait of Hormuz halts after US\u2011Israel attack on Iran", "DW", "09:05"], ["Vincent Kompany: Bayern Munich's coach with a cause", "DW", "11:04"], ["Pentagon pressures Anthropic in escalating AI showdown", "DW", "10:24"], ["Netflix bows out of Warner Bros. bid, Paramount set to win", "DW", "04:25"], ["New HIV drug may end multi-pill regimen for older people", "DW", "19:49"], ["Berlinale future hangs in the balance amidst polarized Gaza debate", "DW", "11:38"], ["Europe bags savings as America chases fossil\u2011fuel nostalgia", "DW", "10:47"], ["The DIY solar hack arriving in US homes", "DW", "10:13"], ["NASA's Artemis II moon rocket back to the hangar", "DW", "13:23"], ["China cashes in on clean energy as Trump clings to coal", "DW", "13:01"], ["Do not inhale! How wildfire smoke 'affects the whole body'", "DW", "06:53"], ["Winter Olympics closing ceremony draws curtain on Games", "DW", "21:29"], ["Giant tortoises reintroduced to a Galapagos island", "DW", "12:55"], ["Iran strikes Israeli nuclear town in retaliation for Natanz attack amid escalating conflict", "France24", "21:12"], ["\u2018I\u2019m glad he\u2019s dead\u2019: Trump reacts to death of ex-FBI chief Robert Mueller, 81", "France24", "20:31"], ["Iranian missile struck town housing nuclear facility: Iran war shows 'no signs of abating'", "France24", "19:47"], ["The view from Professor Dominic Tierney, author of The Right Way to Lose a War", "France24", "19:23"], ["\ud83d\udd34 Iranian missile hit town housing nuclear facility, Israeli army says", "France24", "18:34"], ["Trump threatens to send ICE agents to airports amid TSA funding impasse", "France24", "17:13"], ["War in the Middle East: Israel launches fresh strikes on Beirut", "France24", "15:04"], ["War in the Middle East: Strike hits key nuclear site in Iran", "France24", "15:01"], ["Washington sends conflicting signals as war rages on in the Middle East", "France24", "13:47"], ["War in the Middle East: Jerusalem Old City targeted by Iranian projectile", "France24", "13:45"], ["Syrian Kurds return home to celebrate Nowruz for the first time since exile", "France24", "13:42"], ["US judge strikes down Pentagon press limits as unconstitutional", "France24", "13:41"], ["US jury finds tech\u00a0tycoon\u00a0Elon Musk misled Twitter shareholders", "France24", "13:37"], ["Why isn't there more international coverage of Israeli strikes in Lebanon?", "France24", "13:35"], ["War in the Middle East: Lebanon's mental health crisis deepens", "France24", "13:32"], ["US to send more Marines to Middle East as Trump hints at wind-down", "France24", "11:03"], ["War in the Middle East: Syria's government vows to avoid regional escalation", "France24", "10:59"], ["King Harold's 200-mile march to the Battle of Hastings was a 'myth', historian says", "France24", "10:57"], ["Middle East: Syria's governement vows to keep the country out of the war", "France24", "10:54"], ["\u20ac5 billion aimed at offsetting the economic impact of the Middle East conflict", "France24", "10:50"], ["Tons of aid flows into Cuba as humanitarian convoy arrives on the island", "France24", "10:44"], ["No phone policy in schools in France: What are the benefits ?", "France24", "10:40"], ["BTS fans take over central Seoul for K-pop kings' big comeback", "France24", "10:38"], ["Chuck Norris, roundhouse-kicking action star, has died at age 86", "France24", "10:33"], ["Iranian strike hits near Israeli nuclear facility after Tehran says its site targeted", "BBC World", "23:01"], ["Trump at a crossroads as US weighs tough options in Iran", "BBC World", "22:12"], ["Russian drone attack kills two in Ukraine ahead of talks in US, officials say", "BBC World", "19:39"], ["Trump threatens to send ICE into airports unless funding deal reached", "BBC World", "20:22"], ["Thousands evacuated as Hawaii faces worst flooding in 20 years", "BBC World", "22:01"], ["BTS make live return in front of huge crowd", "BBC World", "13:24"], ["Pentagon restrictions on press violate First Amendment, judge rules", "BBC World", "16:11"], ["Socialists battle to hold Paris in key mayoral elections across France", "BBC World", "01:03"], ["Elon Musk misled Twitter investors, jury finds", "BBC World", "23:44"], ["As Islamophobia rises, Australia's Muslims celebrate Eid", "BBC World", "22:36"], ["Buffy the Vampire Slayer actor Nicholas Brendon dies aged 54", "BBC World", "11:26"], ["Iranian strikes on bases used by US caused $800m in damage, new analysis shows", "BBC World", "22:34"], ["Ukraine-Hungary oil pipeline row threatens EU loan", "BBC World", "20:16"], ["Norway's crown princess breaks silence, claiming she was 'manipulated and deceived' by Epstein", "BBC World", "15:30"], ["Trump makes Pearl Harbor remark in meeting with Japan's PM", "BBC World", "09:55"], ["Nasa's Artemis Moon rocket rolls back to pad for possible April launch", "BBC World", "16:32"], ["Israel strikes Syria after Druze clashes", "BBC World", "16:02"], ["Australia PM heckled at Sydney mosque Ramadan event", "BBC World", "02:54"], ["Nearly 100 ships pass the Hormuz Strait - who is getting through?", "BBC World", "00:04"], ["Italy is voting on whether to change its constitution. What does this mean for Meloni?", "BBC World", "00:10"], ["Russia's school propaganda was highlighted by Oscar-winning film - but does it work?", "BBC World", "01:05"], ["Remember Chuck Norris memes but never watched his films? You're not alone", "BBC World", "01:03"], ["The fight to control the narrative in the Afghan-Pakistan conflict", "BBC World", "00:25"], ["'You can't smell Nowruz in the air': Iran marks Persian new year under threat of strikes", "BBC World", "00:04"], ["Russia, China and the US \u2013 the global winners and losers of the Iran war", "BBC World", "00:08"], ["'BTS is everything for us': K-pop fans gather in Seoul for comeback show", "BBC World", "09:34"], ["Watch: Thick smoke billows from South Korea car parts plant in deadly fire", "BBC World", "05:49"], ["I didn't know Epstein was a predator - Norway's crown princess", "BBC World", "12:38"], ["Ros Atkins on... Trump's mixed messages on the war", "BBC World", "20:58"], ["Watch: Missile lands next to presenter during live report from Lebanon", "BBC World", "16:00"], ["Trump compares attack on Iran to Pearl Harbor in meeting with Japanese PM", "BBC World", "17:50"], ["As Cuba struggles with power cuts, how is the island holding up?", "BBC World", "00:46"], ["\u2018I\u2019m completely gobsmacked\u2019: My elderly brother has a reverse mortgage \u2014 yet he still ran out of money. Do I help?", "MarketWatch", "20:46"], ["\u2018The money is tax-free\u2019: I\u2019m 76 and won $50,000 in a settlement related to cancer from nuclear waste. What should I do with it?", "MarketWatch", "20:45"], ["History says these 2 overlooked asset classes are the only real shield against 1970s-style stagflation", "MarketWatch", "19:00"], ["The stock market actually doesn\u2019t care as much about oil prices as you think", "MarketWatch", "18:48"], ["Annuities in 401(k) plans aren\u2019t all they\u2019re cracked up to be", "MarketWatch", "18:43"], ["My wife and I made a big blunder on our Social Security benefits. Is it too late to fix it?", "MarketWatch", "18:30"], ["The IRS has changed the tax rules for 2026 \u2014 here\u2019s how to keep more money and not overpay", "MarketWatch", "18:14"], ["You could be killing your retirement by neglecting your IRA", "MarketWatch", "18:03"], ["Betting scandals leave pro sports just one way to save the $165 billion gaming market", "MarketWatch", "17:59"], ["Financial advisers used to say no to bitcoin. Now they\u2019re saying maybe \u2014 but with a catch.", "MarketWatch", "17:37"], ["Tribal council chiefs enter Assam electoral fray", "The Hindu", "23:43"], ["Kerala Assembly Elections 2026: Segments under Vadakara LS seat could see some keen contests", "The Hindu", "23:24"], ["Kanshi Ram returns", "The Hindu", "21:03"], ["VCK under compulsion to consider local candidates, says Thirumavalavan", "The Hindu", "19:43"], ["Kamal urges media to drop \u2018censorship\u2019 in context of films", "The Hindu", "19:43"], ["T.N. Assembly election: For second time, Pottalurani residents to boycott polls over fish waste processing units", "The Hindu", "19:35"], ["Tamil Nadu Assembly election: CPI(M) State Committee stands firmon six seats", "The Hindu", "19:33"], ["T.N. Assembly election: parties must avoid excessive freebies, focus on development, says ex-Minister Semmalai", "The Hindu", "19:23"], ["14 polling stations across T.N. to be in high-rise buildings or group housing societies", "The Hindu", "19:23"], ["Bandi Sanjay inaugurates Jan Aushadi Kendra in Karimnagar", "The Hindu", "19:13"], ["No blanket exemption for women teachers above 50 from SIR and census: Revenue Department", "The Hindu", "19:10"], ["Union Minister Kiren Rijiju interacts with Bishops and pastors", "The Hindu", "19:03"], ["Social Welfare Department found dead", "The Hindu", "19:02"], ["Will Vadakara witness consolidation of anti-CPI(M) votes again?", "The Hindu", "18:58"], ["Without nature, human life is unimaginable, says Hemant Soren on Sharhul", "The Hindu", "18:53"], ["\u2018Cash, goods worth \u20b975 cr. seized in T.N.\u2019", "The Hindu", "18:53"], ["Centre removes caps on airfares after three months", "The Hindu", "18:49"], ["RDG discontinuation fallout: Himachal presents \u2018reduced\u2019 budget", "The Hindu", "18:45"], ["BJD suspends six MLAs for defying party\u2019s whip in Rajya Sabha election", "The Hindu", "18:43"], ["Punjab Minister Bhullar resigns from Cabinet as Opposition demands murder case, CBI probe", "The Hindu", "18:23"], ["KLU releases Management Aptitude Test results", "The Hindu", "18:03"], ["What did the Supreme Court say about paid maternity leave?", "The Hindu", "18:02"], ["Untreated waste, poor civic infra mar Erode (East) Assembly constituency", "The Hindu", "17:58"], ["South Pars | Same field, two fates", "The Hindu", "17:54"], ["A game of four", "The Hindu", "17:53"], ["Religious fervour and prayers for harmony mark Eid-Ul-Fitr", "The Hindu", "17:53"], ["Supreme Court concerned over cops uploading videos online, says poses threat to fair trial", "The Hindu", "17:53"], ["Police warn people against APK downloads, suspicious links", "The Hindu", "17:43"], ["Process of issuance of PRs to FMGs begins in Andhra Pradesh", "The Hindu", "17:43"], ["IIT Madras launches M.Tech and MA programmes in frontier technologies and governance", "The Hindu", "17:43"], ["CM reviews Bhadrachalam temple development plans", "The Hindu", "17:33"], ["SRMIST honours scientists in advanced materials research", "The Hindu", "17:33"], ["Assembly election highlights: BJP out to claim its share in Bihar: Prashant Kishor on Nitish's exit as CM", "The Hindu", "17:31"], ["Tribals near Tirupattur town threaten to boycott polls due to lack of basic facilities", "The Hindu", "17:23"], ["Three persons arrested for killing a trader in Tiruvannamalai", "The Hindu", "17:23"], ["Vellore Mayor, councillor booked for violating Model Code of Conduct", "The Hindu", "17:13"], ["\u2018India\u2019s gem, jewellery sector shows resilience\u2019", "The Hindu", "17:13"], ["T.N. Assembly elections: Election observers appointed for Vellore, nearby districts", "The Hindu", "17:13"], ["CII Meet Outlines Roadmap for \u2018Swarna Andhra 2047\u2019", "The Hindu", "17:12"], ["PM Modi speaks to Iran President; calls for \u2018freedom of navigation\u2019 in the Gulf", "The Hindu", "17:10"], ["Farmers\u2019 body to enter local polls, plans protest against India-U.S. pact", "The Hindu", "17:03"], ["Kerala polls: 4 LDF Ministers declare assets of \u20b92 crore each", "The Hindu", "17:03"], ["Government complains about backlog, but feeds it too as the biggest litigant, says Supreme Court judge Nagarathna", "The Hindu", "17:03"], ["Kerala Assembly polls 2026: UDF extends support to four rebel CPI(M) independents; inducts NJD", "The Hindu", "17:03"], ["Kerala Assembly polls 2026: Rahul Gandhi to launch Kerala poll campaign on March 25", "The Hindu", "16:53"], ["Indiaspora to host multiple events in Bengaluru", "The Hindu", "16:53"], ["Politics on Id in West Bengal: Mamata targets Modi; Suvendu pushes Hindutva agenda", "The Hindu", "16:52"], ["Feminists, lawyers urge MPs to reject \u2018unconstitutional\u2019 amendments\u00a0to transgender Act", "The Hindu", "16:43"], ["State cannot put \u2018arbitrary ceiling\u2019 on disability limits when RPwD Act does not prescribe any: SC", "The Hindu", "16:43"], ["Devotional fervour marks Ramzan celebrations", "The Hindu", "16:39"], ["Kerala Assembly polls 2026: 537 nomination papers filed till 7.30 p.m. on Saturday", "The Hindu", "16:33"], ["Seven young talents presented with Chiguru Chinmaya Award in Kalaburagi", "The Hindu", "16:30"], ["Omar, Mehbooba slam closure of Jama Masjid on Id, Hazratbal prayer omission for Iran, Palestine", "The Hindu", "16:23"], ["Two arrested for burglary in Miyapur; cash, bike seized", "The Hindu", "16:23"], ["LPG crisis continues to affect hotel industry in Kochi", "The Hindu", "16:23"], ["Cambrian Skillsda emerges winner of Cyber Security Grand Challenge 2.0", "The Hindu", "16:20"], ["Three-year-old girl mowed down by truck near Bengaluru", "The Hindu", "16:13"], ["Kharge hits out at RSS after being \u2018thanked\u2019 for route march row", "The Hindu", "16:13"], ["Symbolic wreaths laid at Palakkad Medical College", "The Hindu", "16:03"], ["Protest in Mathura over death of cow vigilante in road accident; police denies link of smugglers", "The Hindu", "15:59"], ["Strike on Sudan hospital kills at least 64 and wounds 89 more, WHO reports", "Guardian World", "23:15"], ["Madagascar\u2019s military ruler decrees that ministers must pass lie detector tests", "Guardian World", "10:26"], ["Some of the world\u2019s poorest countries to lose UK aid due to 56% budget cut", "Guardian World", "18:46"], ["Woman has sentence quashed by Tanzania court after over a decade on death row", "Guardian World", "10:00"], ["Jihadist violence in Nigeria and DRC rose sharply last year even as global deaths from terror fell", "Guardian World", "05:01"], ["Canadian mother and daughter \u2018traumatized\u2019 by ICE detainment, husband says", "Guardian World", "18:04"], ["Gabbard testimony on Puerto Rico voting machines raises questions about role of Venezuela conspiracy theory", "Guardian World", "17:50"], ["Mexico\u2019s monarch butterfly population jumps 64%, offering hope for at-risk species", "Guardian World", "17:41"], ["Delcy Rodr\u00edguez replaces Venezuela\u2019s top military commanders", "Guardian World", "09:15"], ["Seven-year-old Canadian girl with autism and mother detained by ICE in Texas", "Guardian World", "00:02"], ["At least 14 people killed in fire at South Korean car parts factory", "Guardian World", "10:44"], ["BTS release new album Arirang ahead of comeback concert", "Guardian World", "05:33"], ["Reliant on imported fuel, Pacific islands appeal for help as oil prices surge", "Guardian World", "02:52"], ["China has been preparing for a global energy crisis for years. It is paying off now", "Guardian World", "01:14"], ["Trump mocks Japan about Pearl Harbor in response to question about Iran war", "Guardian World", "00:45"], ["Australia news live: six out of 81 fuel shipments cancelled since start of Iran war, Bowen says; Tropical Cyclone Narelle crosses NT coast as category three system", "Guardian World", "00:24"], ["Superannuation should be used for aged care, not inherited by next generation, aged care CEO says", "Guardian World", "19:01"], ["Petrol theft expected to rise in Australia as police call for more CCTV and prepaid pumps", "Guardian World", "19:01"], ["SA state election 2026: Peter Malinauskas makes passionate call for unity after thumping South Australia win marked by One Nation advance", "Guardian World", "12:42"], ["In South Australia One Nation has put meat on the bones of its polling surge \u2013 now both major parties need to respond", "Guardian World", "11:50"], ["Alabama student reportedly fell to his death in Barcelona waters by accident", "Guardian World", "13:42"], ["Owners from Great Britain travelling to EU warned over pet passport \u2018dodge\u2019", "Guardian World", "08:00"], ["Death, power and paranoia: painting that shocked German society finally returns to Berlin", "Guardian World", "05:00"], ["Home Office investigates firm linked to religious sect over immigration visas", "Guardian World", "19:36"], ["Is it time for the UK to acknowledge the \u2018rhetoric to reality gap\u2019 on its military power?", "Guardian World", "18:50"], ["Middle East crisis live: Trump threatens huge attack if Iran does not reopen strait of Hormuz within 48 hours", "Guardian World", "00:17"], ["Almost 100 wounded in Iranian missile strikes on southern Israel", "Guardian World", "23:07"], ["Iran hits Israeli town housing nuclear facility in retaliation for Natanz strike", "Guardian World", "20:58"], ["UK foreign secretary condemns Iran\u2019s \u2018reckless threats\u2019 after strike towards US-UK base", "Guardian World", "18:56"], ["Anger grows among UK ministers amid fears Iran war could jeopardise Britain\u2019s fragile finances", "Guardian World", "12:54"], ["\u2018This is the saddest moment\u2019: families search for loved ones on Eid after Kabul hospital strike", "Guardian World", "08:00"], ["Weather tracker: Unseasonal storms hit parts of Pakistan and India", "Guardian World", "11:02"], ["Indian film board blocks release of Oscar-nominated Gaza drama The Voice of Hind Rajab", "Guardian World", "17:24"], ["\u2018Waiting for days\u2019: India feels impact of gas supply chain disruption amid Iran conflict", "Guardian World", "06:00"], ["Pakistan to pause Afghan strikes for Eid, two days after deadly Kabul attack", "Guardian World", "16:40"], ["Minister claimed thousands of pounds on expenses for promotional videos", "Guardian World", "17:00"], ["Strictly\u2019s longest-serving female dancer, Karen Hauer, quits show after 14 years", "Guardian World", "14:14"], ["\u2018Her warmth filled the kitchen every morning\u2019: the magic \u2013 and tenacity \u2013 of Jenni Murray", "Guardian World", "12:04"], ["UK government yet to trial OpenAI tech months after signing partnership", "Guardian World", "12:00"], ["Tory peer accuses Nick Timothy of \u2018instilling fear\u2019 over Islamic prayers", "Guardian World", "11:18"], ["Hawaii urges residents to \u2018leave now\u2019 amid worst flooding in over 20 years", "Guardian World", "23:48"], ["Trump threatens to send ICE to airports on Monday amid DHS funding standoff", "Guardian World", "23:29"], ["\u2018Vile\u2019 Trump condemned for gloating over Robert Mueller death", "Guardian World", "20:31"], ["Republican says he lied about racist posts on porn site to protect Trump", "Guardian World", "17:05"], ["US man pleads guilty to defrauding music streamers out of millions using AI", "Guardian World", "15:14"], ["Footy legend Kelvin Templeton draws on bloody days of 70s VFL in debut novel", "ABC Australia", "23:03"], ["Aussie qualifier stuns former world number one Osaka at Miami Open", "ABC Australia", "22:35"], ["Hull, Marschall win bronze at World Athletics Indoor Championships", "ABC Australia", "21:55"], ["This footy team is so new the players didn't even know the club song", "ABC Australia", "21:17"], ["Matildas endure familiar pain in Asian Cup final, but will the relief ever come?", "ABC Australia", "20:30"], ["Kings deny roughing up Cotton in NBL Championship Series opener", "ABC Australia", "20:21"], ["Quick hits: Golden moment evades golden generation as wonder goal thwarts Matildas", "ABC Australia", "12:13"], ["As it happened: Matildas fall agonisingly short after defeat to Japan", "ABC Australia", "07:42"], ["Dragons reveal return date for Pasifiki Tonga following hospitalisation", "ABC Australia", "05:09"], ["Tigers halves pair set for scans after limping off in loss to Rabbitohs", "ABC Australia", "02:59"], ["'A bad look': Docker under fire for taunting Demons oppponent", "ABC Australia", "01:50"], ["Matildas defender Kaitlyn Torpey is a goldfish, and it's taking her to new heights", "ABC Australia", "21:22"], ["Aussie Olyslagers claims silver at World Athletics Indoor Championships", "ABC Australia", "20:45"], ["How to watch Matildas vs Japan in the Women's Asian Cup final tonight", "ABC Australia", "20:32"], ["Small but mighty cheers for team Japan at Asian Cup final", "ABC Australia", "20:19"], ["The 'crazy' running challenge pushing people to their limits", "ABC Australia", "20:15"], ["Australia's Cam McEvoy breaks 17-year-old 50m freestyle world record", "ABC Australia", "20:13"], ["Bulldogs 'tick off' another item on 2026 AFL season bucket list", "ABC Australia", "07:58"], ["Bellamy pinpoints Storm's downfall as Broncos achieve 10-year first", "ABC Australia", "06:35"], ["'Asking why honey is better than s***': Japan coach spins favouritism ahead of Matildas clash", "ABC Australia", "05:04"], ["Teen becomes youngest player since Nadal to win ATP Masters 1000 match", "ABC Australia", "02:35"], ["'Look like cereal boxes': Uniforms are a factor in girls dropping out of sport", "ABC Australia", "02:03"], ["'The ABC got lucky': How the VFA became must-watch TV for footy fans", "ABC Australia", "01:56"], ["Contrary to Popular Belief, Some Doodle Crossbred Dogs May Have More Behavioral Problems Than Their Purebred Parents", "Smithsonian", "20:45"], ["Archaeologists Unearth Traces of a Mysterious Medieval City That Was Abandoned Under Puzzling Circumstances Hundreds of Years Ago", "Smithsonian", "19:53"], ["See Ramses II's Intricately Decorated Coffin and Rare Treasures From His Reign at This New Immersive Exhibition", "Smithsonian", "18:28"], ["This High School Student Invented a Filter That Eliminates 96 Percent of Microplastics From Drinking Water", "Smithsonian", "17:30"], ["See the 2,500-Pound Bronze Bison as They Arrive at Their New, Permanent Place at the Smithsonian\u2019s National Museum of Natural History", "Smithsonian", "17:12"], ["View Australia\u2019s Wonderful Wildlife, Including Kangaroos, Koalas and Crocs, With These 15 Photographs", "Smithsonian", "16:57"], ["Humans May Have Transported Live Parrots Over the Andes Mountains Along Sophisticated Trade Routes Before the Rise of the Inca Empire", "Smithsonian", "16:20"], ["Scientists Make a Major Breakthrough in Solving a Hair-Raising Mystery About Static Electricity", "Smithsonian", "15:29"], ["European Hedgehogs' Hearing Might Be Attuned to Ultrasonic Sounds. The Discovery Could Help Scientists Save the Declining Species", "Smithsonian", "14:00"], ["Alien Life Could Look Nothing Like What We Expect. Here's How Microbes Beyond Earth Might Live Without Liquid Water", "Smithsonian", "11:00"], ["Bitch: a history", "Aeon", "10:00"], ["Running against time", "Aeon", "10:01"], ["Geist in the machine", "Aeon", "10:00"], ["Izembek", "Aeon", "10:01"], ["Abandoning ourselves", "Aeon", "10:00"], ["Henri Bergson: Creative Evolution", "Aeon", "10:01"], ["Unbounded", "Aeon", "10:00"], ["A duty to oneself", "Aeon", "10:00"], ["What is electronic music?", "Aeon", "10:01"], ["Reversing extinction", "Aeon", "10:00"], ["Echo", "Aeon", "10:01"], ["Does culture make emotion?", "Aeon", "10:00"], ["Ever behind the sunset", "Aeon", "10:01"], ["The eye of the mathematician", "Aeon", "10:00"], ["Savage care", "Aeon", "11:00"], ["After rain", "Aeon", "11:01"], ["On her own terms", "Aeon", "11:00"], ["Exploratorium", "Aeon", "11:01"], ["The insurance catastrophe", "Aeon", "11:00"], ["Great art explained: Ivan the Terrible and His Son Ivan on 16 November 1581", "Aeon", "11:01"], ["71 Best Podcasts (2026): True Crime, Culture, Science, Fiction", "Wired", "12:00"], ["Best Protein Bars (2026): Vegan, Gluten-Free, High Fiber", "Wired", "11:30"], ["Aiper Scuba V3 Pool Robot Review: Eye on the Prize", "Wired", "11:02"], ["I Tried DoorDash\u2019s Tasks App and Saw the Bleak Future of AI Gig Work", "Wired", "11:00"], ["Cyberattack on a Car Breathalyzer Firm Leaves Drivers Stuck", "Wired", "10:30"], ["The 19 Best EVs Coming in 2026", "Wired", "10:00"], ["'Jury Duty Presents: Company Retreat' Almost Makes Corporate Culture Seem Fun", "Wired", "10:00"], ["How BYD Got EV Chargers to Work Almost as Fast as Gas Pumps", "Wired", "09:30"], ["Anthropic Denies It Could Sabotage AI Tools During War", "Wired", "00:03"], ["There Aren\u2019t a Lot of Reasons to Get Excited About a New Amazon Smartphone", "Wired", "22:03"], ["\u2018A Rigged and Dangerous Product\u2019: The Wildest Week for Prediction Markets Yet", "Wired", "21:07"], ["A Top Democrat Is Urging Colleagues to Support Trump\u2019s Spy Machine", "Wired", "20:46"], ["Gamers Hate Nvidia's DLSS 5. Developers Aren\u2019t Crazy About It, Either", "Wired", "19:13"], ["This Compact Bose Soundbar Is $80 Off", "Wired", "17:45"], ["Kalshi Has Been Temporarily Banned in Nevada", "Wired", "16:54"], ["Iran War Puts Global Energy Markets on the Brink of a Worst-Case Scenario", "Wired", "16:20"], ["At Palantir\u2019s Developer Conference, AI Is Built to Win Wars", "Wired", "15:00"], ["Best Kids' Bikes (2026): Woom, Prevelo, Guardian, and More", "Wired", "12:00"], ["China Approves the First Brain Chips for Sale\u2014and Has a Plan to Dominate the Industry", "Wired", "11:44"], ["16 Best Camera Bags, Slings, Straps, and Backpacks (2026), Tested and Reviewed", "Wired", "11:30"], ["Firewire Surfboard Review (2026): Neutrino, Revo Max, Machadocado", "Wired", "11:00"], ["Can Tinder Fix The Dating Landscape It Helped Ruin?", "Wired", "11:00"], ["I Learned More Than I Thought I Would From Using Food-Tracking Apps", "Wired", "10:30"], ["Corsair Frame 4000D RS PC Case Review: Excellent Flow", "Wired", "10:30"], ["My AI Agent \u2018Cofounder\u2019 Conquered LinkedIn. Then It Got Banned", "Wired", "10:00"], ["Tempur-ActiveBreeze Smart Bed Review: High-Tech Titan", "Wired", "09:31"], ["Paramount Plus Coupon Codes and Deals: 50% Off", "Wired", "05:00"], ["Newegg Promo Code: 10% Off in March 2026", "Wired", "05:00"], ["US Takes Down Botnets Used in Record-Breaking Cyberattacks", "Wired", "00:07"], ["FCC Enforcement Chief Offered to Help Brendan Carr Target Disney, Records Show", "Wired", "18:10"], ["Google Shakes Up Its Browser Agent Team Amid OpenClaw Craze", "Wired", "18:00"], ["The Original AirPods Max Are $100 Off", "Wired", "17:36"], ["Meta Will Keep Horizon Worlds Alive in VR \u2018for the Foreseeable Future\u2019", "Wired", "17:33"], ["A New Game Turns the H-1B Visa System Into a Surreal Simulation", "Wired", "16:59"], ["ChatGPT\u2019s \u2018Adult Mode\u2019 Could Spark a New Era of Intimate Surveillance", "Wired", "16:06"], ["Signal\u2019s Creator Is Helping Encrypt Meta AI", "Wired", "14:09"], ["Should You Hike in Boots or Trail Runners? (2026)", "Wired", "12:00"], ["Soundcore Nebula X1 Pro Dolby Atmos Projector Review: Big, Brilliant", "Wired", "11:30"], ["The 4 Best Planners of 2026: Roterunner, Hobonichi, Cloth & Paper", "Wired", "11:09"], ["The Men Obsessed With \u2018High T\u2019", "Wired", "11:00"], ["Android Auto\u2019s Secret Superpower Is a Customizable Shortcut Button", "Wired", "10:30"], ["Apple MacBook Air (M5) Review: The Goldilocks MacBook", "Wired", "10:30"], ["Best Electric Mountain Bikes (2026): Specialized, Cannondale, Salsa", "Wired", "10:00"], ["The Fight to Hold AI Companies Accountable for Children\u2019s Deaths", "Wired", "10:00"], ["HigherDose Red Light Shower Filter Review (2026): Filter Needed", "Wired", "09:32"], ["Get Ready for a Year of Chaotic Weather in the US", "Wired", "09:00"], ["Nike Promo Codes and Deals: 30% Off", "Wired", "05:00"], ["10% Dell Coupon Codes | March 2026", "Wired", "05:00"], ["How a Simulated Dinosaur Nest Revealed Prehistoric Parenting Strategies", "Nautilus", "21:30"], ["The Shrinking Gland That Helps You Live Longer", "Nautilus", "20:00"], ["How Cacti Defy Darwin", "Nautilus", "19:00"], ["Heat Probably Doesn\u2019t Make You More Aggressive", "Nautilus", "18:00"], ["How Gum Disease Can Lead to Breast Cancer", "Nautilus", "17:00"], ["Seal and Sea Lion Brains Help Explore the Roots of Language", "Nautilus", "16:05"], ["Revisiting the Environmental Ruin of the First Gulf War", "Nautilus", "23:00"], ["If You\u2019re Going to Drink, Make It This Kind of Alcohol", "Nautilus", "22:00"], ["Is This Where Morality Lives in the Brain?", "Nautilus", "19:00"], ["What the US Could Learn From Asia\u2019s Robot Revolution", "Nautilus", "17:18"], ["Hiroshima transport company searched after six killed in tunnel accident", "Japan Times", "09:39"], ["Takaichi lays flowers at Arlington National Cemetery", "Japan Times", "05:53"], ["Imperial Palace street opened to public for spring season", "Japan Times", "05:53"], ["Iran prepared to let Japanese ships transit Hormuz, FM says", "Japan Times", "04:34"], ["U.S. and allies move to build missiles and drones closer to Asia's flashpoints", "Japan Times", "03:09"], ["SoftBank planning massive $500 billion data center in Ohio", "Japan Times", "03:08"], ["Traders overwhelmed by Iran news are turning to AI for help", "Japan Times", "02:51"], ["Polymarket\u2019s latest pop-up is a sports bar for watching the news", "Japan Times", "02:10"], ["U.S. sending marines and amphibious assault ship to Middle East, officials say", "Japan Times", "01:49"], ["Chuck Norris, macho star of 'Walker, Texas Ranger,' dies at 86", "Japan Times", "01:44"], ["How hard would it be to stop Iran's missile threat?", "Japan Times", "01:36"], ["For Suda51, punk in games isn\u2019t dead. It\u2019s reloading.", "Japan Times", "23:05"], ["Why Resident Evil Requiem bleeds less in Japan", "Japan Times", "23:00"], ["Eat a bowl of red rice for good luck", "Japan Times", "09:30"], ["Ukraine ready to share combat expertise and drone tech with Japan, ambassador says", "Japan Times", "08:45"], ["At summit, Takaichi avoids rift with Trump on Iran \u2014 for now", "Japan Times", "07:16"], ["Victims of Tokyo subway sarin gas attack remembered 31 years on", "Japan Times", "06:04"], ["\u2018Great crackdown\u2019: Russia tightens the screws on the internet", "Japan Times", "05:23"], ["Chaos unleashed by Trump has Europeans building bridges with China", "Japan Times", "05:22"], ["Displacement, bombs and air raid sirens weigh on Mideast Eid celebrations", "Japan Times", "04:46"], ["\u2018Hooked\u2019 but not reeled in by Asako Yuzuki\u2019s new release", "Japan Times", "04:31"], ["Japan and U.S. announce second round of projects from Tokyo\u2019s $550 billion pledge", "Japan Times", "04:14"], ["Major phone carriers to launch \u2018Japan Roaming\u2019 for use in disasters", "Japan Times", "04:13"], ["Australia chases rare major trophy in Asian Cup decider against formidable Japan", "Japan Times", "02:58"], ["Prime Minister Takaichi outperforms again", "Japan Times", "02:52"], ["Fields-winning mathematician Heisuke Hironaka dies at 94", "Japan Times", "02:52"], ["Chinese AI videos used to look fake. Now they look like money.", "Japan Times", "02:28"], ["Six die in vehicle collision in Mie Prefecture tunnel", "Japan Times", "02:26"], ["BYD showrooms are bustling across Asia after Iran oil shock", "Japan Times", "02:22"], ["Memo to Takaichi: Reject the temptations of populism", "Japan Times", "02:18"], ["Lit Hub Weekly: March 16 \u2013 20, 2026", "Literary Hub", "10:30"], ["This week\u2019s news in Venn diagrams.", "Literary Hub", "18:29"], ["Here\u2019s what\u2019s making us happy this week.", "Literary Hub", "17:44"], ["How Black Studies departments are being dismantled at American colleges.", "Literary Hub", "16:48"], ["The HarperCollins Union has ratified a new contract, including the highest starting pay in publishing.", "Literary Hub", "15:45"], ["Lit Hub Daily: March 20, 2026", "Literary Hub", "10:30"], ["If You Want to Understand the Enduring Appeal of Wuthering Heights, Read This Book", "Literary Hub", "08:59"], ["Why the Poet Ed Sanders Matters More Than Ever", "Literary Hub", "08:58"], ["Paperback vs. Hardcover: Which is Better For Readers (and For Writers)?", "Literary Hub", "08:58"], ["What Should You Read Next? Here Are the Best Reviewed Books of the Week", "Literary Hub", "08:58"], ["U.S. Military Expert on Oil Tanker Convoys in the Strait of Hormuz: \"Iran Must Only Succeed Once to Trigger a Catastrophe\"", "Der Spiegel", "13:37"], ["Indigenous Activist Nick Tilsen: \"Trump Wants to Hear Nothing about the Genocide against Indigenous Nations\"", "Der Spiegel", "15:21"], ["Donald Trump's U.S. Abandons Role as Global Leader", "Der Spiegel", "15:06"], ["\"Reckless, Suicidal Race\": The Deadly Threat Posed by Artificial Intelligence", "Der Spiegel", "10:58"], ["Portrait of a City after Four Years of War: The Courage of Kyiv", "Der Spiegel", "13:06"], ["U.S. Historian Robert Kagan: \"We Are Watching a Country Fall Under Dictatorship Almost Without Resistance\"", "Der Spiegel", "11:27"], ["Nord Stream: How Early Did the CIA Know about the Pipeline Attack?", "Der Spiegel", "14:04"], ["Gis\u00e8le Pelicot After the Rape Trial: \"I Now Allow Myself to Be Happy Again\"", "Der Spiegel", "16:02"], ["Ongoing Interactions with Sailing Vessels: The Mysterious Behavior of the Orcas of Gibraltar", "Der Spiegel", "16:40"], ["Veering to the Right in Silicon Valley: The Two Faces of Mark Zuckerberg", "Der Spiegel", "16:06"], ["Injections, Makeup, Stress: The New Religion of Beauty", "Der Spiegel", "15:51"], ["Former U.S. Security Adviser John Bolton: \"We Have Passed Peak Trump\"", "Der Spiegel", "15:15"], ["Former Austrian Chancellor Sebastian Kurz: An Alliance of the Illiberal Right with Tech?", "Der Spiegel", "14:35"], ["Fast Fashion Exploitation: How the Clothes-Hanger Wars Escalated in Italy", "Der Spiegel", "14:12"], ["The Public Uprising: Bernhard Poerksen's Critique of DER SPIEGEL's Debate Culture", "Der Spiegel", "10:13"], ["Never Out of Date: How Hannah Arendt Helps Us Understand Our World", "Der Spiegel", "17:12"], ["Syria One Year After the Overthrow: The Enigma of Damascus", "Der Spiegel", "16:34"], ["Taking On Ice: A Lone Louisiana Lawyer's Fight against Trump's Deportations", "Der Spiegel", "15:09"], ["Neil Leifer: \"I Thought: Shit, What Will They Think in the Lab?\"", "Der Spiegel", "18:28"], ["The Art of Solitude: Buddhist Scholar and Teacher Stephen Batchelor on Contemplative Practice and Creativity", "The Marginalian", "22:07"], ["This Is a Poem That Heals Fish: An Almost Unbearably Wonderful Picture-Book About How Poetry Works Its Magic", "The Marginalian", "16:18"], ["When Your Parents Are Dying: Some of the Simplest, Most Difficult and Redemptive Life-Advice You\u2019ll Ever Receive", "The Marginalian", "01:00"], ["Music, the Neural Harmonics of Emotion, and How Love Recomposes the Brain", "The Marginalian", "19:44"], ["Where Love Goes When It Goes", "The Marginalian", "04:46"], ["Reweaving the Rainbow: Divinations for Living from the Science of Life", "The Marginalian", "19:40"], ["Do the Next Right Thing: Carl Jung on How to Live and the Origin of His Famous Tenet for Navigating Uncertainty", "The Marginalian", "19:16"], ["What Forgiveness Takes", "The Marginalian", "13:47"], ["The Four Desires Driving All Human Behavior: Bertrand Russell\u2019s Magnificent Nobel Prize Acceptance Speech", "The Marginalian", "23:49"], ["How Two Souls Can Interact with One Another: Simone de Beauvoir on Love and Friendship", "The Marginalian", "17:54"], ["The Measure of a Life Well Lived: Henry Miller on How to Grow Old and the Secret of Remaining Young at Heart", "The Marginalian", "17:51"], ["How to Get Love Less Wrong: George Saunders on Breaking the Patterns that Break Our Hearts", "The Marginalian", "15:48"], ["Marcus Aurelius on the Good Luck of Your Bad Luck: The Stoic Strategy for Weathering Life\u2019s Waves and Turning Suffering into Strength", "The Marginalian", "09:12"], ["How to Be a Lichen: Adaptive Strategies for the Vulnerabilities of Being Human from Nature\u2019s Tiny Titans of Tenacity", "The Marginalian", "13:26"], ["How to Bear Your Loneliness", "The Marginalian", "12:00"], ["Roots and the Meaning of Life", "The Marginalian", "00:44"], ["The Continuous Creative Act of Holding on and Letting Go: 10 Beautiful Minds on the Art of Growing Older", "The Marginalian", "12:47"], ["How to Save a Life: \u201cLittle Prince\u201d Author Antoine de Saint-Exup\u00e9ry on the Power of the Smallest Kindnesses", "The Marginalian", "08:00"], ["Pi and the Seductions of Infinity", "The Marginalian", "15:30"], ["Einstein on Free Will and the Power of the Imagination", "The Marginalian", "00:19"], ["The Top 5 Longreads of the Week", "Longreads", "10:00"], ["\u2018Their Power Feels Like Mine\u2019: A Dog Sled Racer Says Goodbye to Her Pack", "Longreads", "18:19"], ["Night Knowledge", "Longreads", "17:55"], ["The Docteur Is In", "Longreads", "15:10"], ["It\u2019s the Music You Hear All Day, Without Ever Noticing", "Longreads", "11:00"], ["Defining Color", "Longreads", "10:00"], ["Thinking in the Margins", "Longreads", "16:30"], ["Degrees of Separation", "Longreads", "15:00"], ["In Search of Banksy", "Longreads", "13:00"], ["Where Duolingo Falls Down: How I Learned to Speak Welsh With My Mother", "Longreads", "11:00"], ["The Longreads Questionnaire, Featuring Neal Allen and Anne Lamott", "Longreads", "10:00"], ["Jeff Mills Loves to Forget", "Longreads", "19:34"], ["The Afterlife of a Stolen Bike", "Longreads", "19:33"], ["Beneath the Long White Cloud", "Longreads", "18:42"], ["What 100 Million Volts Do to the Body and Mind", "Longreads", "18:29"], ["Transference in the Afternoon", "Longreads", "15:35"], ["The Devil\u2019s Crown", "Longreads", "13:00"], ["You Could Be Next", "Longreads", "11:00"], ["How My Mother\u2019s Dying Wish Took My Family to Antarctica", "Longreads", "20:31"], ["Competitive Scrabble Is A Lexical Shitshow", "Longreads", "18:58"], ["Gout", "Longreads", "18:28"], ["The Weather-Changing Conspiracy Theory That Will Never End", "Longreads", "14:18"], ["The Top 5 Longreads of the Week", "Longreads", "10:00"], ["Lost Recipes", "Longreads", "19:26"], ["Sucker", "Longreads", "17:34"], ["I Asked. You Answered. Now I Have Some Questions for You.", "Atlas Obscura", "13:02"], ["Paul\u2019s Vintage Bicycle Museum in Elizabeth, Illinois", "Atlas Obscura", "20:00"], ["Gececondu of Kreuzberg in Berlin, Germany", "Atlas Obscura", "18:00"], ["The Largest Coffee Cup in Colombia in Chinchin\u00e1, Colombia", "Atlas Obscura", "16:00"], ["Mola Museum (MuMo) in Panam\u00e1 City, Panama", "Atlas Obscura", "15:56"], ["Salt Creek and the Salt Creek Hills in California", "Atlas Obscura", "14:00"], ["Luytens\u2019 Crypt in Liverpool, England", "Atlas Obscura", "20:00"], ["The tunnel of Bonaparte in Madrid, Spain", "Atlas Obscura", "18:00"], ["The Hugglescote Death Star in Hugglescote, England", "Atlas Obscura", "16:00"], ["German Mining Museum in Bochum, Germany", "Atlas Obscura", "14:00"], ["The Graveyard That Made Me Kiss a Frog", "Atlas Obscura", "21:48"], ["St. Norbert Roman Catholic Church in Altario, Alberta", "Atlas Obscura", "20:00"], ["Bock Bock Gravesite in Cleveland, Tennessee", "Atlas Obscura", "18:00"], ["\u010cu\u010duci Waterfall in \u010cu\u010duci, Montenegro", "Atlas Obscura", "16:00"], ["Wonder All Around Us", "Atlas Obscura", "00:56"], ["Your Emails Are Fueling My Quest to See All 50 States", "Atlas Obscura", "12:36"], ["How to Walk on the Trail of Tears", "Atlas Obscura", "03:11"], ["The Trip That Changed Me: How Running the World\u2019s Biggest Marathons Pushed AnneMette Bontaites\u2019s Limits", "Atlas Obscura", "18:00"], ["My 50-State Quest: Gravette, Arkansas", "Atlas Obscura", "13:01"], ["When Video Games Jump the Screen", "Atlas Obscura", "12:25"], ["This Intrepid 19th-Century Reporter Refused to Accept the Unacceptable", "Atlas Obscura", "12:00"], ["When the Genius of Studio Ghibli Built a Giant Cuckoo Clock", "Atlas Obscura", "13:00"], ["I\u2019m On a Quest to Visit All 50 States Before America Turns 250", "Atlas Obscura", "15:10"], ["The Bar Where a Future President Sat Down With a Pirate", "Atlas Obscura", "13:00"], ["Nectar Soda", "Atlas Obscura", "16:00"], ["Tiquira", "Atlas Obscura", "23:17"], ["Maultaschen", "Atlas Obscura", "16:00"], ["Trump issues Hormuz ultimatum, threatens to \u2018obliterate\u2019 Iran\u2019s power plants", "SCMP", "00:32"], ["Visit Malaysia 2026 meets an Iran war crisis it never planned for", "SCMP", "00:00"], ["Cuba rejects \u2018shameless\u2019 US request for diesel amid Trump oil blockade", "SCMP", "23:39"], ["64 killed \u2013 including 13 children \u2013 in attack on Sudan hospital, WHO says", "SCMP", "23:03"], ["In Kunshan, China\u2019s Foxconn nerve centre, old tech tries to learn new tricks", "SCMP", "22:00"], ["F1 could be Hong Kong\u2019s fast lane for economic reinvention", "SCMP", "21:30"], ["Iran hits Dimona, Israeli town with nuclear facility, despite air defence interceptors", "SCMP", "20:50"], ["Robert Mueller, who probed Trump-Russia ties, dies. US president: \u2018I\u2019m glad he\u2019s dead\u2019", "SCMP", "17:59"], ["Trump threatens to put ICE agents in US airports amid TSA funding clash", "SCMP", "17:27"], ["Mother arrested after boy, 12, told police she beat him with a rattan cane", "SCMP", "15:34"], ["King Harold\u2019s 200-mile UK march to Battle of Hastings in 1066 is a \u2018myth\u2019, says research", "SCMP", "15:33"], ["China reports \u2018stunning\u2019 critical minerals finds as hi-tech race with US heats up", "SCMP", "15:00"], ["Hawaii suffers worst flooding in 20 years, with more rain expected", "SCMP", "14:41"], ["Does the USS Tripoli\u2019s deployment to the Middle East create a strategic opening for China?", "SCMP", "14:00"], ["China, India and why Jeffrey Sachs says the US needs to make the UN great again", "SCMP", "13:00"], ["Plan for full taxi access to Discovery Bay sparks anger among residents", "SCMP", "12:50"], ["Most of Ukraine\u2019s Chernihiv region has no power after Russian attack", "SCMP", "12:15"], ["Could Taiwan\u2019s military continue to fight after an Iran-like decapitation?", "SCMP", "12:00"], ["Hong Kong police arrest 5, recover nearly HK$100 million in stolen gold bars", "SCMP", "11:39"], ["Iran fires missiles at UK-US base in Indian Ocean\u2019s Chagos Islands, 4,000km away", "SCMP", "11:19"], ["China decries \u2018unjust war\u2019 on Iran as it calls for immediate ceasefire", "SCMP", "11:00"], ["At least 14 die in South Korea fire at car parts factory", "SCMP", "10:44"], ["Nvidia\u2019s Huang calls China \u2018formidable\u2019 in robotics as company bets on physical AI", "SCMP", "10:18"], ["China\u2019s infamous \u2018Aunt Mei\u2019 arrested after decade-long hunt for child trafficker", "SCMP", "10:16"], ["US man offered \u2018national gift\u2019 to settle in China after donating historical Japan invasion photos", "SCMP", "10:00"], ["China and the Netherlands seek \u2018pragmatic\u2019 reset as Nexperia row rolls on", "SCMP", "09:50"], ["As Iran hangs 3 young men, rights groups raise alarm multiple executions could follow", "SCMP", "09:40"], ["Flying start for low-altitude economy goals as 100 drone projects proposed", "SCMP", "09:32"], ["Veteran activist warns of \u2018shrinking space\u2019 for green advocacy in Hong Kong", "SCMP", "09:00"], ["Labubu, Blackpink\u2019s Jennie draw thousands to ComplexCon in Hong Kong", "SCMP", "08:37"], ["Trump\u2019s war is uniting the world, just not how he might have expected", "SCMP", "08:30"], ["Himalayas\u2019 glacier loss threatens 2 billion people in \u2018greatest problem of climate change\u2019", "SCMP", "07:00"], ["Iran ready to help Japan ships pass through Strait of Hormuz, Araghchi says", "SCMP", "06:47"], ["Hong Kong to issue weekly updates on fuel charges to counter price gouging", "SCMP", "06:25"], ["How China\u2019s tech transformation is putting the \u2018world\u2019s factory\u2019 in a tough spot", "SCMP", "06:00"], ["Made-in-China clock loses a second in twice the age of the universe", "SCMP", "06:00"], ["Chinese pancakes trace back 5,000 years, with references appear in ancient paintings, poems", "SCMP", "06:00"], ["Philippine fuel prices hit record highs as food inflation fears grow", "SCMP", "05:30"], ["US government sues Harvard over anti-Israel protests, cites \u2018hostile environment\u2019", "SCMP", "05:27"], ["Iran war nears 3-front tipping point as Gulf energy hubs burn", "SCMP", "04:30"], ["Refugee in Hong Kong could win global award. So why does she have mixed feelings?", "SCMP", "04:00"], ["Malaysia\u2019s LGBTQ crackdowns aren\u2019t hypocrisy, they\u2019re politics", "SCMP", "03:30"], ["South Korea\u2019s BTS play first gig together in nearly 4 years", "SCMP", "02:46"], ["US woman charged with murder after taking abortion pill in Georgia", "SCMP", "02:15"], ["Japanese executives absent from China\u2019s key annual summit amid diplomatic tension: sources", "SCMP", "02:00"], ["In Iran war debut, South Korea\u2019s cut-price Patriot outshines US interceptors", "SCMP", "02:00"], ["Police officers fire 5 shots at charging armed assailant, hitting him twice", "SCMP", "01:41"], ["Should Hong Kong\u2019s stock exchange make all IPO applications confidential?", "SCMP", "01:30"], ["How \u2018painful bag\u2019 becomes popular subculture, fashion trend, especially among China youth", "SCMP", "01:00"], ["US approves sale of Iranian oil at sea in move to ease crude supply crisis", "SCMP", "00:55"], ["ABC pulls new season of The Bachelorette over domestic violence footage", "Guardian Culture", "20:36"], ["PEN America announce 2026 World Voices festival with Judith Butler and Bill McKibben", "Guardian Culture", "17:00"], ["Ready or Not 2: Here I Come review \u2013 comedy horror sequel goes big and you should stay home", "Guardian Culture", "16:31"], ["\u2018The male ego is even more fragile than it ever was\u2019: Kim Gordon on shyness, AI and Zohran Mamdani\u2019s cool", "Guardian Culture", "15:30"], ["Stephen Colbert on DHS pick Markwayne Mullin: \u2018Has a history of being real dumb and real angry about it\u2019", "Guardian Culture", "14:38"], ["\u2018My taste is superb. My eyes are exquisite\u2019: Dianne Wiest\u2019s 20 best film performances \u2013 ranked!", "Guardian Culture", "14:19"], ["\u2018Our lead actor doesn\u2019t know he\u2019s in a television show!\u2019 The return of an unbelievable TV hoax", "Guardian Culture", "13:06"], ["In the killer world of online gaming, there are no hits any more \u2013 just survivors", "Guardian Culture", "12:30"], ["Russell T Davies\u2019s hit TV series It\u2019s a Sin to be adapted as \u2018visceral\u2019 dance show", "Guardian Culture", "10:41"], ["\u2018Absolutely transformative\u2019: Willem de Kooning exhibition uncovers raw intensity of early work", "Guardian Culture", "21:17"], ["Oscars 2027: who might be up for next year\u2019s awards?", "Guardian Culture", "15:23"], ["\u2018Prince laughed like a kid as I painted \u201cFree\u201d on his stomach\u2019: Steve Parke\u2019s best photograph", "Guardian Culture", "15:00"], ["Oscars ratings in US dip to four-year low, defying expectations", "Guardian Culture", "13:31"], ["US rapper Afroman cleared after police sued him over use of home raid footage", "Guardian Culture", "10:14"], ["\u2018The world was hard \u2013 this movie was meant to be a hug\u2019: Ugo Bienvenu on his heartwarming eco-fable Arco", "Guardian Culture", "08:00"], ["Val Kilmer set to be be resurrected with AI for new film", "Guardian Culture", "16:15"], ["Sean Penn receives \u2018Oscar\u2019 made from damaged Ukrainian rail carriage after Zelenskyy meeting", "Guardian Culture", "11:10"], ["Winners of LCE photographer of the year 2026 \u2013 in pictures", "Guardian Culture", "07:00"], ["Imperfect Women review \u2013 lots of fun \u2026 if you lower your expectations enough", "Guardian Culture", "05:00"], ["Mythmatch review \u2013 a match-three game made in heaven", "Guardian Culture", "12:30"], ["The Plastic Detox review \u2013 a film so terrifying you will want to change your life immediately", "Guardian Culture", "08:00"], ["Dynasty: The Murdochs review \u2013 who cares which billionaire will control even more billions?", "Guardian Culture", "08:01"], ["Love & Fury: how poster artists responded to the Aids crisis \u2013 in pictures", "Guardian Culture", "09:04"], ["Act Black: posters of Black Americans on stage and screen \u2013 in pictures", "Guardian Culture", "09:00"], ["A web of sensors: How the US spots missiles and drones from Iran", "The Conversation", "12:42"], ["In the Easter story, women are the first to proclaim the resurrection \u2013 but churches today are still divided over female preachers", "The Conversation", "17:04"], ["Overconfidence is how wars are lost \u2212 lessons from Vietnam, Afghanistan and Ukraine for the war in Iran were ignored", "The Conversation", "12:39"], ["\u2018Project Hail Mary\u2019 explores unique forms of life in space \u2013 5 essential reads on searching for aliens that look nothing like life on Earth", "The Conversation", "12:38"], ["How AI English and human English differ \u2013 and how to decide when to use artificial language", "The Conversation", "12:38"], ["HBO\u2019s \u2018The Pitt\u2019 nails how hospital cyberattacks create chaos, endanger patients and disrupt critical care", "The Conversation", "12:37"], ["Federal judge temporarily blocks RFK Jr.\u2019s vaccine agenda \u2013 an epidemiologist answers questions parents may have", "The Conversation", "12:37"], ["Why Colorado River negotiations stalled, and how they could resume with the possibility of agreement", "The Conversation", "12:36"], ["Pakistan-Afghanistan conflict is rooted in local border dispute \u2013 but the risks extend across the region", "The Conversation", "09:44"], ["Israeli action in Lebanon risks repeating history\u2019s mistakes \u2014 and torpedoing a historic moment for dialogue", "The Conversation", "09:43"], ["Who are Iran\u2019s new leaders? A look at 6 the US placed a bounty on \u2013 2 of whom are already dead", "The Conversation", "20:06"], ["Targeting of energy facilities turned Iran war into worst-case scenario for Gulf states", "The Conversation", "17:32"], ["Information is a battlefield: 4 questions you can ask to judge the reliability of news reports and social posts about the US-Iran war", "The Conversation", "12:34"], ["Global copper demand outstrips supply, threatening electrification and industrial growth", "The Conversation", "12:32"], ["Pittsburgh\u2019s air pollution estimated to claim 3,000+ lives per year \u2212 and EPA rollbacks aren\u2019t helping", "The Conversation", "12:32"], ["Trump\u2019s new child care subsidy rules compound an already dire situation for providers and families", "The Conversation", "12:32"], ["Seattle tried to guarantee higher pay for delivery drivers \u2013 here\u2019s why it didn\u2019t work as intended", "The Conversation", "12:32"], ["Gender conformity starts young \u2013 and boys and girls fall in line in different ways", "The Conversation", "12:31"], ["Health insurance jargon can be frustrating and confusing \u2013 here\u2019s how to navigate it", "The Conversation", "12:31"], ["Moral metrics: Are corporate algorithms becoming our new moral authorities?", "The Conversation", "12:30"], ["Soaring gas prices prompt Trump to ease oil tanker rules \u2013\u00a0how waiving the Jones Act affects what you pay at the pump", "The Conversation", "01:16"], ["Hundreds of hungry mosquitoes, a student volunteer and a mesh suit helped us figure out how these deadly insects reach their targets", "The Conversation", "18:01"], ["How hatred of Jews became a common ground for Islamic terrorists and left-wing extremists, fueling domestic terrorism", "The Conversation", "16:57"], ["More and more teachers and students are using AI \u2013 even though it might do more harm than good", "The Conversation", "12:25"], ["Pittsburgh spends millions on juvenile detention \u2013 research points to cheaper, more effective alternatives", "The Conversation", "12:24"], ["Power outages in heat waves and storms can threaten the lives of medical device users \u2013 we looked at who is most at risk", "The Conversation", "12:24"], ["What\u2019s the equivalent of a wheelchair for a person with schizophrenia? How psychiatric rehabilitation brings community into care", "The Conversation", "12:24"], ["Millions of CT scans are done every year \u2013 most leave important data behind", "The Conversation", "12:23"], ["What an ancient Chinese philosopher can teach us about Americans\u2019 obsession with college rankings", "The Conversation", "12:23"], ["Pete Hegseth is working hard to make sure the public hears only good news about Iran war", "The Conversation", "19:34"], ["Going nuclear? Why a growing number of Washington\u2019s allies are eyeing an alternative to US umbrella", "The Conversation", "12:45"], ["With AI finishing your sentences, what will happen to your unique voice on the page?", "The Conversation", "12:28"], ["Iran\u2019s nuclear materials and equipment remain a danger in an active war zone", "The Conversation", "12:28"], ["Researchers develop biodegradable, plant-based packaging from natural fibers \u2013 new research", "The Conversation", "12:27"], ["Cancer vaccines could transform treatment and prevention \u2013 but misinformation about mRNA vaccines threatens their potential", "The Conversation", "12:27"], ["Magic mushroom-infused products appear in Colorado gas stations \u2013 what public health officials want consumers to know", "The Conversation", "12:26"], ["Tax changes taking effect in 2026 may boost the number of donors but lead to the US missing out on an estimated $5.7B a year in charitable giving", "The Conversation", "12:20"], ["In war-torn Iran, air pollution from burning oil depots and bombed buildings unleashes invisible health threats", "The Conversation", "19:07"], ["Paul Ehrlich, often called alarmist for dire warnings about human harms to the Earth, believed scientists had a responsibility to speak out", "The Conversation", "17:23"], ["The first modern rocket launched 100 years ago, beginning a century of both innovations and challenges for spaceflight", "The Conversation", "12:23"], ["A writing professor\u2019s new task in the age of AI: Teaching students when to struggle", "The Conversation", "12:22"], ["The long history of silent meditation retreats and the individuals who helped shape them", "The Conversation", "12:22"], ["What was the very first plant in the world?", "The Conversation", "12:22"], ["Paleontologists uncover a new \u2018Spinosaurus\u2019 species by following a clue from a decades-old book into the Sahara Desert", "The Conversation", "12:22"], ["A pet-friendly homeless shelter pilot reduced the rate of homelessness among the people it helped in California", "The Conversation", "12:21"], ["Controversy over Reese\u2019s ingredients reveals standard food industry practices most consumers never notice", "The Conversation", "12:21"], ["Anxiety and ADHD can overlap \u2013 here\u2019s how to untangle these widespread mental health disorders", "The Conversation", "12:21"], ["What \u2018gooning\u2019 reveals about intimacy in a world cordoned off by screens", "The Conversation", "12:20"]]} \ No newline at end of file diff --git a/engine/pipeline/presets.py b/engine/pipeline/presets.py index 239809f..d8a6c3d 100644 --- a/engine/pipeline/presets.py +++ b/engine/pipeline/presets.py @@ -60,6 +60,7 @@ class PipelinePreset: source_items: list[dict[str, Any]] | None = None # For ListDataSource enable_metrics: bool = True # Enable performance metrics collection enable_message_overlay: bool = False # Enable ntfy message overlay + positioning: str = "mixed" # Positioning mode: "absolute", "relative", "mixed" def to_params(self) -> PipelineParams: """Convert to PipelineParams (runtime configuration).""" @@ -68,6 +69,7 @@ class PipelinePreset: params = PipelineParams() params.source = self.source params.display = self.display + params.positioning = self.positioning params.border = ( self.border if isinstance(self.border, bool) @@ -115,18 +117,38 @@ class PipelinePreset: source_items=data.get("source_items"), enable_metrics=data.get("enable_metrics", True), enable_message_overlay=data.get("enable_message_overlay", False), + positioning=data.get("positioning", "mixed"), ) # Built-in presets +# Upstream-default preset: Matches the default upstream Mainline operation +UPSTREAM_PRESET = PipelinePreset( + name="upstream-default", + description="Upstream default operation (terminal display, legacy behavior)", + source="headlines", + display="terminal", + camera="scroll", + effects=["noise", "fade", "glitch", "firehose"], + enable_message_overlay=False, + positioning="mixed", +) + +# Demo preset: Showcases hotswappable effects and sensors +# This preset demonstrates the sideline features: +# - Hotswappable effects via effect plugins +# - Sensor integration (oscillator LFO for modulation) +# - Mixed positioning mode +# - Message overlay with ntfy integration DEMO_PRESET = PipelinePreset( name="demo", - description="Demo mode with effect cycling and camera modes", + description="Demo: Hotswappable effects, LFO sensor modulation, mixed positioning", source="headlines", display="pygame", camera="scroll", - effects=["noise", "fade", "glitch", "firehose"], + effects=["noise", "fade", "glitch", "firehose", "hud"], enable_message_overlay=True, + positioning="mixed", ) UI_PRESET = PipelinePreset( @@ -201,6 +223,7 @@ def _build_presets() -> dict[str, PipelinePreset]: # Add built-in presets as fallback (if not in YAML) builtins = { "demo": DEMO_PRESET, + "upstream-default": UPSTREAM_PRESET, "poetry": POETRY_PRESET, "pipeline": PIPELINE_VIZ_PRESET, "websocket": WEBSOCKET_PRESET, diff --git a/presets.toml b/presets.toml index b473533..f8c9a43 100644 --- a/presets.toml +++ b/presets.toml @@ -53,6 +53,18 @@ viewport_height = 24 # DEMO PRESETS (for demonstration and exploration) # ============================================ +[presets.upstream-default] +description = "Upstream default operation (terminal display, legacy behavior)" +source = "headlines" +display = "terminal" +camera = "scroll" +effects = ["noise", "fade", "glitch", "firehose"] +camera_speed = 1.0 +viewport_width = 80 +viewport_height = 24 +enable_message_overlay = false +positioning = "mixed" + [presets.demo-base] description = "Demo: Base preset for effect hot-swapping" source = "headlines" @@ -63,17 +75,19 @@ camera_speed = 0.1 viewport_width = 80 viewport_height = 24 enable_message_overlay = true +positioning = "mixed" [presets.demo-pygame] description = "Demo: Pygame display version" source = "headlines" display = "pygame" camera = "feed" -effects = [] # Demo script will add/remove effects dynamically +effects = ["noise", "fade", "glitch", "firehose"] # Default effects camera_speed = 0.1 viewport_width = 80 viewport_height = 24 enable_message_overlay = true +positioning = "mixed" [presets.demo-camera-showcase] description = "Demo: Camera mode showcase" @@ -85,6 +99,7 @@ camera_speed = 0.5 viewport_width = 80 viewport_height = 24 enable_message_overlay = true +positioning = "mixed" [presets.test-message-overlay] description = "Test: Message overlay with ntfy integration" @@ -96,6 +111,7 @@ camera_speed = 0.1 viewport_width = 80 viewport_height = 24 enable_message_overlay = true +positioning = "mixed" # ============================================ # SENSOR CONFIGURATION diff --git a/scripts/demo-lfo-effects.py b/scripts/demo-lfo-effects.py new file mode 100644 index 0000000..e4be04b --- /dev/null +++ b/scripts/demo-lfo-effects.py @@ -0,0 +1,151 @@ +#!/usr/bin/env python3 +""" +Pygame Demo: Effects with LFO Modulation + +This demo shows how to use LFO (Low Frequency Oscillator) to modulate +effect intensities over time, creating smooth animated changes. + +Effects modulated: +- noise: Random noise intensity +- fade: Fade effect intensity +- tint: Color tint intensity +- glitch: Glitch effect intensity + +The LFO uses a sine wave to oscillate intensity between 0.0 and 1.0. +""" + +import sys +import time +from dataclasses import dataclass +from typing import Any + +from engine import config +from engine.display import DisplayRegistry +from engine.effects import get_registry +from engine.pipeline import Pipeline, PipelineConfig, PipelineContext, list_presets +from engine.pipeline.params import PipelineParams +from engine.pipeline.preset_loader import load_presets +from engine.sensors.oscillator import OscillatorSensor +from engine.sources import FEEDS + + +@dataclass +class LFOEffectConfig: + """Configuration for LFO-modulated effect.""" + + name: str + frequency: float # LFO frequency in Hz + phase_offset: float # Phase offset (0.0 to 1.0) + min_intensity: float = 0.0 + max_intensity: float = 1.0 + + +class LFOEffectDemo: + """Demo controller that modulates effect intensities using LFO.""" + + def __init__(self, pipeline: Pipeline): + self.pipeline = pipeline + self.effects = [ + LFOEffectConfig("noise", frequency=0.5, phase_offset=0.0), + LFOEffectConfig("fade", frequency=0.3, phase_offset=0.33), + LFOEffectConfig("tint", frequency=0.4, phase_offset=0.66), + LFOEffectConfig("glitch", frequency=0.6, phase_offset=0.9), + ] + self.start_time = time.time() + self.frame_count = 0 + + def update(self): + """Update effect intensities based on LFO.""" + elapsed = time.time() - self.start_time + self.frame_count += 1 + + for effect_cfg in self.effects: + # Calculate LFO value using sine wave + angle = ( + (elapsed * effect_cfg.frequency + effect_cfg.phase_offset) * 2 * 3.14159 + ) + lfo_value = 0.5 + 0.5 * (angle.__sin__()) + + # Scale to intensity range + intensity = effect_cfg.min_intensity + lfo_value * ( + effect_cfg.max_intensity - effect_cfg.min_intensity + ) + + # Update effect intensity in pipeline + self.pipeline.set_effect_intensity(effect_cfg.name, intensity) + + def run(self, duration: float = 30.0): + """Run the demo for specified duration.""" + print(f"\n{'=' * 60}") + print("LFO EFFECT MODULATION DEMO") + print(f"{'=' * 60}") + print("\nEffects being modulated:") + for effect in self.effects: + print(f" - {effect.name}: {effect.frequency}Hz") + print(f"\nPress Ctrl+C to stop") + print(f"{'=' * 60}\n") + + start = time.time() + try: + while time.time() - start < duration: + self.update() + time.sleep(0.016) # ~60 FPS + except KeyboardInterrupt: + print("\n\nDemo stopped by user") + finally: + print(f"\nTotal frames rendered: {self.frame_count}") + + +def main(): + """Main entry point for the LFO demo.""" + # Configuration + effect_names = ["noise", "fade", "tint", "glitch"] + + # Get pipeline config from preset + preset_name = "demo-pygame" + presets = load_presets() + preset = presets["presets"].get(preset_name) + if not preset: + print(f"Error: Preset '{preset_name}' not found") + print(f"Available presets: {list(presets['presets'].keys())}") + sys.exit(1) + + # Create pipeline context + ctx = PipelineContext() + ctx.terminal_width = preset.get("viewport_width", 80) + ctx.terminal_height = preset.get("viewport_height", 24) + + # Create params + params = PipelineParams( + source=preset.get("source", "headlines"), + display="pygame", # Force pygame display + camera_mode=preset.get("camera", "feed"), + effect_order=effect_names, # Enable our effects + viewport_width=preset.get("viewport_width", 80), + viewport_height=preset.get("viewport_height", 24), + ) + ctx.params = params + + # Create pipeline config + pipeline_config = PipelineConfig( + source=preset.get("source", "headlines"), + display="pygame", + camera=preset.get("camera", "feed"), + effects=effect_names, + ) + + # Create pipeline + pipeline = Pipeline(config=pipeline_config, context=ctx) + + # Build pipeline + pipeline.build() + + # Create demo controller + demo = LFOEffectDemo(pipeline) + + # Run demo + demo.run(duration=30.0) + + +if __name__ == "__main__": + main()