# COMPLETE EXAMPLE: Analysis and Synthesis in Cybersecurity
print("🔐 CYBERSECURITY LOG ANALYSIS DEMO")
print("=" * 40)

# Sample forensic data
login_attempts = [
    "2024-01-15 14:30:25 | admin | 192.168.1.100 | FAILED",
    "2024-01-15 14:30:26 | admin | 192.168.1.100 | FAILED", 
    "2024-01-15 14:30:27 | admin | 192.168.1.100 | FAILED",
    "2024-01-15 14:30:28 | admin | 192.168.1.100 | SUCCESS",
    "2024-01-15 14:35:10 | user1 | 192.168.1.150 | SUCCESS",
    "2024-01-15 14:35:11 | admin | 10.0.0.15 | FAILED",
    "2024-01-15 14:35:12 | admin | 10.0.0.15 | FAILED"
]

# ANALYSIS: Break down the data
print("\n🔍 STEP 1: ANALYSIS - Breaking down components")
usernames = []
ips = []
statuses = []

for attempt in login_attempts:
    parts = attempt.split(' | ')
    usernames.append(parts[1])
    ips.append(parts[2])
    statuses.append(parts[3])
    print(f"Extracted: User='{parts[1]}', IP='{parts[2]}', Status='{parts[3]}'")

# SYNTHESIS: Build new insights
print("\n🧠 STEP 2: SYNTHESIS - Building new insights")

# Detect brute force patterns
ip_failures = {}
for ip, status in zip(ips, statuses):
    if status == 'FAILED':
        ip_failures[ip] = ip_failures.get(ip, 0) + 1

# Create security alerts
security_alerts = []
for ip, failures in ip_failures.items():
    if failures >= 3:
        security_alerts.append(f"🚨 BRUTE FORCE DETECTED: IP {ip} had {failures} failed attempts")

# Generate forensic report
print("\n📊 FINAL SYNTHESIZED REPORT:")
print("Suspicious Activity Found:")
for alert in security_alerts:
    print(f"  • {alert}")

print(f"\nStatistics:")
print(f"  • Total attempts: {len(login_attempts)}")
print(f"  • Unique attackers: {len(set(ips))}")
print(f"  • Target accounts: {', '.join(set(usernames))}")

print("\n💡 CONCLUSION: Analysis gave us data points, synthesis gave us actionable intelligence!")