







https://www.twz.com/air/chinas-aircraft-carrier-capability-just-made-a-stunning-leap-forward
The Chinese People’s Liberation Army Navy (PLAN) has demonstrated its ability to launch and recover aircraft from its first catapult-equipped aircraft carrier, the Fujian. Official imagery released by the PLAN today confirms that the new J-35 naval stealth fighters and KJ-600 airborne early warning and control aircraft are carrying out carrier trials, something that had not been seen until now. Meanwhile, we’ve also got a much better view of the J-15T single-seat carrier-based fighter launching and recovering aboard Fujian, having previously seen it in position for a catapult launch with its afterburners engaged. The sudden appearance of video of all three aircraft operating from the ship for the first time is something of a stunning revelation, one of many that has come this year from China’s air power portfolio. …


Jurors showed no appetite for the Justice Department’s case against “sandwich guy,” the D.C. resident who chucked a Subway sandwich at the chest of a federal officer, finding him not guilty Thursday after several hours of deliberations.
The jury — which feasted on sandwiches for lunch Thursday, according to a person familiar with jury lunches — deliberated the charges for several hours Wednesday and Thursday before delivering the verdict.
Someone is feeling cute. And rightful so. When you lie about a sandwich exploding on you, and it can still be seen in the package after… Not to mention trying to take a hamfisted hogie slap to federal court, you deserve the pickling.
Try this Python script:
from PIL import Image, ImageDraw, ImageFont
import os
from pathlib import Path
def watermark_from_filename(input_dir, output_dir=None,
position='bottom-right',
font_size=36,
color='white',
opacity=200):
"""
Add watermark to images using their filename (without extension)
Args:
input_dir: Directory containing images
output_dir: Output directory (if None, creates 'watermarked' subfolder)
position: 'bottom-right', 'bottom-left', 'top-right', 'top-left', 'center'
font_size: Size of the watermark text
color: Color of the text ('white', 'black', or RGB tuple)
opacity: Transparency (0-255, 255 is fully opaque)
"""
# Setup directories
input_path = Path(input_dir)
if output_dir is None:
output_path = input_path / 'watermarked'
else:
output_path = Path(output_dir)
output_path.mkdir(exist_ok=True)
# Supported image formats
supported_formats = {'.jpg', '.jpeg', '.png', '.tiff', '.bmp'}
# Process each image
for img_file in input_path.iterdir():
if img_file.suffix.lower() not in supported_formats:
continue
print(f"Processing: {img_file.name}")
# Open image
img = Image.open(img_file)
# Convert to RGBA if needed (for transparency support)
if img.mode != 'RGBA':
img = img.convert('RGBA')
# Create transparent overlay
txt_layer = Image.new('RGBA', img.size, (255, 255, 255, 0))
draw = ImageDraw.Draw(txt_layer)
# Get filename without extension
watermark_text = img_file.stem
# Try to load a nice font, fall back to default if not available
try:
font = ImageFont.truetype("arial.ttf", font_size)
except:
try:
font = ImageFont.truetype("/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", font_size)
except:
font = ImageFont.load_default()
# Get text size using textbbox
bbox = draw.textbbox((0, 0), watermark_text, font=font)
text_width = bbox[2] - bbox[0]
text_height = bbox[3] - bbox[1]
# Calculate position
margin = 20
if position == 'bottom-right':
x = img.width - text_width - margin
y = img.height - text_height - margin
elif position == 'bottom-left':
x = margin
y = img.height - text_height - margin
elif position == 'top-right':
x = img.width - text_width - margin
y = margin
elif position == 'top-left':
x = margin
y = margin
elif position == 'center':
x = (img.width - text_width) // 2
y = (img.height - text_height) // 2
else:
x = img.width - text_width - margin
y = img.height - text_height - margin
# Convert color name to RGB if needed
if color == 'white':
rgb_color = (255, 255, 255, opacity)
elif color == 'black':
rgb_color = (0, 0, 0, opacity)
else:
rgb_color = (*color, opacity) if isinstance(color, tuple) else (255, 255, 255, opacity)
# Draw text
draw.text((x, y), watermark_text, font=font, fill=rgb_color)
# Composite the watermark onto the image
watermarked = Image.alpha_composite(img, txt_layer)
# Convert back to RGB for JPEG
if img_file.suffix.lower() in {'.jpg', '.jpeg'}:
watermarked = watermarked.convert('RGB')
# Save
output_file = output_path / img_file.name
watermarked.save(output_file, quality=95)
print(f"Saved: {output_file.name}")
print(f"\nDone! Watermarked images saved to: {output_path}")
# Example usage:
if __name__ == "__main__":
# Watermark all images in current directory
watermark_from_filename(
input_dir=".",
position='bottom-right',
font_size=48,
color='white',
opacity=200
)
To use this script:
Install Pillow: pip install Pillow
Save the script as watermark_dates.py
Run it in your image directory:
python watermark_dates.py
Customization options:
position: Choose where the watermark appearsfont_size: Adjust text sizecolor: ‘white’, ‘black’, or RGB tuple like (255, 0, 0) for redopacity: 0-255 (lower = more transparent)

The Russia bans gasoline exports measure will start on 29 July and, for the first time, apply to fuel producers as well. Interfax reports that the Kremlin announced the full restriction to stabilize the domestic fuel market amid peak summer demand. Liga notes that the ban could also be prolonged into September if the situation does not improve.
Sanctions on Russian oil and refined products have cut export revenues and reduced access to parts and buyers. At the same time, the war drives enormous military fuel consumption, while Ukrainian attacks on fuel facilities and transport routes disrupt production and logistics. These pressures collide with seasonal demand peaks from farming during summer, creating domestic shortages. To keep enough fuel for internal needs, Moscow has turned to export bans as a stopgap measure.


Everyone doing all they can to stop the scourge… Even with 100 year old water cooled machine guns.
Alternative link: https://archive.md/fHWe3