TAMING COMPLEXITY WITH AGENTIC DESIGN PATTERNS