{"componentChunkName":"component---gatsby-theme-spaceout-src-templates-article-template-tsx","path":"/the-rise-of-the-solo-dev-army","result":{"pageContext":{"article":{"id":"f5620861-b918-5a8b-a1d1-08208a4d472d","slug":"/the-rise-of-the-solo-dev-army","secret":false,"title":"The Rise of the Solo Dev Army","author":"Luke Celitan","date":"February 5th, 2026","dateForSEO":"2026-02-05T00:00:00.000Z","timeToRead":7,"excerpt":"AI Tools, The End of Collaboration, and the Future of Software Development","subscription":true,"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"The Rise of the Solo Dev Army\",\n  \"excerpt\": \"AI Tools, The End of Collaboration, and the Future of Software Development\",\n  \"date\": \"2026-02-05T00:00:00.000Z\",\n  \"hero\": \"soloDevArmy.png\",\n  \"author\": \"Luke Celitan\",\n  \"category\": \"Post\",\n  \"tech\": [\"SoftwareEngineering\", \"AI\"]\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"the-rise-of-the-solo-dev-army-is-ai-the-end-of-collaboration-in-software-development\"\n  }, \"The Rise of the Solo Dev Army: Is Ai The End of Collaboration in software development?\"), mdx(\"h2\", {\n    \"id\": \"introduction\"\n  }, \"Introduction\"), mdx(\"p\", null, \"Since the debut of AI tools (LLMs in actuallity) landscape of software\\ndevelopment has begun a fundamental shift. What once demanded teams of\\ncollaborators, distributed expertise, and peer review now seems very possible by\\na single, well-equipped developer harnessing AI tooling. This trend, which i\\nwill refer to as the \\u2018solo dev army,\\u2019 raises both exciting possibilities and\\ndeep concerns about a future where collaborative traditions may erode, and lone\\ndevelopers, with algorithmic copilots, build, ship, and maintain even\\nlarge-scale systems, seemingly without the friction that once forged robust\\nsoftware and communities.\"), mdx(\"p\", null, \"Is this a revolution, or a pyrrhic victory? Will solo-AI workflows unlock new\\nheights of productivity and creativity, or will the absence of opposition, peer\\ncritique, and collective wisdom yield technical debt mountains and brittle\\narchitectures and endless ai slop code?\"), mdx(\"h2\", {\n    \"id\": \"the-open-source-and-collaborative-bedrock\"\n  }, \"The Open Source and Collaborative Bedrock\"), mdx(\"h3\", {\n    \"id\": \"a-short-history-of-collaboration-in-software\"\n  }, \"A Short History of Collaboration in Software\"), mdx(\"p\", null, \"From the earliest mainframes to the web\\u2019s explosion, software\\u2019s progress was\\nbuilt on collaboration. Early UNIX pioneers at Bell Labs drove innovation\\nthrough cross-pollination of ideas. Later, the rise of the Free Software and\\nOpen Source movements (GNU, Linux, Apache, FOSS, etc) cemented the principle\\nthat progress thrives on sharing, code review, distributed debugging, and the\\nfriction only diverse teams can generate.\"), mdx(\"h4\", {\n    \"id\": \"open-source-by-the-numbers\"\n  }, \"Open Source By the Numbers\"), mdx(\"p\", null, \"Modern software is overwhelmingly built upon the foundation of open-source\\ntechnology. According to the\\n\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.synopsys.com/software-integrity/resources/analyst-reports/ossra.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Synopsys Open Source Security and Risk Analysis, 2023\"), \",\\nover 90% of contemporary software stacks\\u2014including commercial SaaS\\nplatforms\\u2014depend on open-source components for core functionality, libraries,\\nand infrastructure. The most influential projects, such as the Linux kernel,\\nReact, Kubernetes, and PostgreSQL, operate at a massive scale, engaging\\nthousands of contributors worldwide. These communities collectively produce and\\nreview tens of thousands of pull requests annually, embodying a continuous cycle\\nof improvement, scrutiny, and shared refinement.\"), mdx(\"p\", null, \"This is more than a statistic\\u2014it is a testament to the power of cooperative\\neffort. Such scale ensures that every line of code is examined by multiple\\nperspectives, and every architectural decision benefits from diverse input. The\\nresult is not just functional software, but resilient systems that withstand\\nyears of evolution and expansion.\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"High-quality software is rarely the product of isolated brilliance. It is\\nforged in the crucible of collaboration, where collective experience, opposing\\nviewpoints, and shared stewardship merge to create something greater than any\\nsingle developer could produce.\")), mdx(\"h4\", {\n    \"id\": \"why-did-collaboration-win\"\n  }, \"Why Did Collaboration Win?\"), mdx(\"p\", null, \"Collaboration triumphed in software development because it embeds quality\\ncontrol, scalability, and sustainability into the process itself.\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Peer review uncovers hidden edge cases and bugs early in the lifecycle\"), \",\\npreventing costly fixes down the road.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Collective wisdom shapes code and architecture toward long-term\\nscalability\"), \", anticipating future expansion and complexity.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Shared ownership fosters sustainable maintenance\"), \", ensuring that no single\\nperson becomes the bottleneck for updates or fixes.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Constructive friction\\u2014born from disagreement\\u2014sparks innovation\"), \", allowing\\nbetter solutions to emerge from the synthesis of differing ideas.\")), mdx(\"p\", null, \"Since 2013, \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://react.dev/\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"React\"), \" evolved from a Facebook-proprietary\\nlibrary into a new basis (jquery) for all web apps, precisely because its\\narchitecture and APIs underwent intense review, debate, and iterated\\nimprovement. Community RFCs guide breaking changes, backwards compatibility, and\\nrobust code review fuels stability.\"), mdx(\"p\", null, \"Linus Torvalds\\u2019 model of collaborative maintainership is legendary\\u2014no code is\\nmerged without rigorous review and opposition. The result? Exceptional uptime,\\nsafety, and portability across billions of devices.\"), mdx(\"p\", null, \"The collaborative, open-source model remains the crucible in which the most\\nresilient, scalable, and innovative software is forged.\"), mdx(\"h2\", {\n    \"id\": \"the-solo-developer-paradigm-shift\"\n  }, \"The Solo Developer Paradigm Shift\"), mdx(\"h2\", {\n    \"id\": \"the-isolation-of-the-modern-developer-how-ai-replaces-collaboration\"\n  }, \"The Isolation of the Modern Developer: How AI Replaces Collaboration\"), mdx(\"p\", null, \"While artificial intelligence has dramatically increased individual coding\\noutput, it is simultaneously driving a wedge into traditional team\\ncollaboration. As developers increasingly turn to AI agents, specialized IDEs,\\nand autonomous coding tools, the essential friction of human peer review is\\nbeing replaced by a frictionless\\u2014and sometimes artificially flattering\\u2014feedback\\nloop.\"), mdx(\"h3\", {\n    \"id\": \"the-rise-of-the-yes-man-ai\"\n  }, \"The Rise of the \\u201CYes-Man\\u201D AI\"), mdx(\"p\", null, \"The core issue pushing developers away from collaboration is the inherent design\\nof Large Language Models (LLMs). Because AI models are fine-tuned to be helpful,\\npolite, and agreeable, they frequently act as \\u201Cyes-men.\\u201D\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"The Affirmation Loop:\"), \" When a developer proposes a flawed architectural\\ndesign to an AI, the model rarely offers the blunt, critical pushback a senior\\nengineer would provide. Instead, it tends to validate the user\\u2019s approach,\\nsaying the code is \\u201Cgreat\\u201D or \\u201Cperfect,\\u201D while quietly patching over the\\nstructural cracks.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Loss of Healthy Friction:\"), \" Traditional collaboration relies on debate to\\nstress-test ideas. AI eliminates this friction, making it dangerously easy for\\na developer to confidently deploy brittle, unscalable code simply because the\\nAI validated it.\")), mdx(\"h3\", {\n    \"id\": \"tools-driving-the-collaborative-wedge\"\n  }, \"Tools Driving the Collaborative Wedge\"), mdx(\"p\", null, \"The shift from team-centric to AI-centric development is being accelerated by a\\nnew generation of highly integrated and autonomous tools that make human\\ninteraction feel obsolete:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"AI-Native IDEs (Cursor):\"), \" By embedding advanced AI directly into the text\\neditor, developers no longer need to switch contexts to ask a colleague a\\nquestion on Slack or Stack Overflow. Cursor acts as an always-available,\\nnon-judgmental pair programmer, keeping the developer entirely siloed within\\ntheir own IDE.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Autonomous AI Agents (Antigravity, Devin):\"), \" Tools and frameworks designed\\nto act as autonomous agents go beyond autocomplete. They can traverse\\ncodebases, read documentation, and execute complex multi-step tasks. When a\\ndeveloper can delegate an entire feature ticket to an agent like Antigravity,\\nthe need to collaborate with junior developers or cross-functional peers\\nevaporates.\")), mdx(\"h3\", {\n    \"id\": \"the-collapse-of-traditional-workflows\"\n  }, \"The Collapse of Traditional Workflows\"), mdx(\"p\", null, \"The reliance on AI validation is dismantling the traditional safety nets built\\ninto software engineering cultures.\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Workflow Element\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"The Human Collaborative Standard\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"The AI-Siloed Reality\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Code Review\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Rigorous peer pushback; prevents technical debt and shares domain knowledge.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"The developer asks the AI to review its own generated code, resulting in an echo chamber of approval.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Mentorship\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Senior devs guide juniors through complex problem-solving and architectural philosophy.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Juniors ask AI for the answer directly, learning the \\u201Cwhat\\u201D but rarely the \\u201Cwhy.\\u201D\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Debugging\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Rubber-ducking with a teammate, leading to shared \\u201Caha!\\u201D moments.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Pasting stack traces into an LLM until it spits out a fix, treating the symptom rather than the root cause.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Architecture\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Whiteboarding sessions demanding consensus and defending technical choices.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": \"left\"\n  }, \"Solo prompting sessions where the AI obligingly builds whatever the developer asks, regardless of long-term viability.\")))), mdx(\"h3\", {\n    \"id\": \"the-long-term-cost-of-the-solo-ai-echo-chamber\"\n  }, \"The Long-Term Cost of the Solo-AI Echo Chamber\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"The Reality Check:\"), \" When a developer relies solely on Cursor and AI agents\\nto build, review, and approve their work, they operate in a vacuum. A team of\\nfive AI-reliant developers often stops functioning as a cohesive unit and\\ninstead becomes five isolated contractors. Over time, this leads to fragmented\\ncodebases stitched together by AI glue, lacking a unified human architectural\\nvision. The code may compile flawlessly, but the team\\u2019s shared understanding\\nof the system slowly disintegrates.\")), mdx(\"h4\", {\n    \"id\": \"modern-architectures-favoring-the-solo-dev\"\n  }, \"Modern Architectures Favoring the Solo Dev\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Serverless (AWS Lambda, Vercel, Netlify):\"), \" No operations team needed\\u2014deploy\\nfunctions in seconds.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Managed Databases (Firebase, PlanetScale):\"), \" Schema, replication, index\\u2014all\\nclick-to-deploy.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Template-driven deployment (Terraform+AI, Kubernetes+AI):\"), \" Infrastructure\\nas code, written by/with LLMs.\")), mdx(\"h5\", {\n    \"id\": \"diagram-collaborative-team-workflow-vs-solo-ai-workflow\"\n  }, \"Diagram: Collaborative Team Workflow vs Solo-AI Workflow\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Process Step\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Traditional Team\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Solo + AI Workflow\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Design\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Design reviews, consensus\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Prompt to LLM, synthesis\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Implementation\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Code review, pair programming\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Solo coding, AI suggestions\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Testing\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"QA team, automated+manual\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Auto-generated tests by AI\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Deployment\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"DevOps, CI/CD pipelines\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"AI-inferred scripts, cloud buttons\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Maintenance\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"On-call rotation, monitored tickets\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"LLM-augmented debugging\")))), mdx(\"h4\", {\n    \"id\": \"solo-ai-in-action-one-person-one-app\"\n  }, \"Solo-AI in Action: One Person, One App\"), mdx(\"p\", null, \"A real-world solo project: A developer used AI + serverless + managed DB to\\nbuild a Slack bot for detecting problematic language. Total time: 48 hours, code\\nreviewed only by ChatGPT. The bot was deployed, integrated, and maintained for 6\\nmonths with almost no outside input.\"), mdx(\"h4\", {\n    \"id\": \"technical-debt-traps\"\n  }, \"Technical Debt Traps\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"No one to say \\u201Cis this maintainable?\\u201D\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Patterns may be recursively reinforced by faulty prompts (\\u201CAI slop\\u201D)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"No diversity of experience to challenge design assumptions\"))), mdx(\"h3\", {\n    \"id\": \"scalability-and-maintainability-challenges\"\n  }, \"Scalability and Maintainability Challenges\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Rushed MVPs with hardcoded hacks become unmaintainable as products scale\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"AI-generated code may lack modularity or follow esoteric, hard-to-follow\\npatterns\"))), mdx(\"h4\", {\n    \"id\": \"example-scaling-disaster\"\n  }, \"Example: Scaling Disaster\"), mdx(\"p\", null, \"A solo dev uses LLM to generate all code. Later, when adding features, they\\ndiscover:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Core logic is duplicated in several places (copy-paste from prompts)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"No consistent error handling or logging\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Dependency upgrades break AI-generated glue code with no doc coverage\")), mdx(\"h3\", {\n    \"id\": \"security-vulnerabilities\"\n  }, \"Security Vulnerabilities\"), mdx(\"p\", null, \"Solo work misses surface-area reviews. Examples:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"SQL injection in code-gen DB queries\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Hardcoded credentials\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Lack of input validation\"))), mdx(\"h2\", {\n    \"id\": \"can-ai-tools-replace-human-collaboration\"\n  }, \"Can AI Tools Replace Human Collaboration?\"), mdx(\"h3\", {\n    \"id\": \"benchmarks--studies\"\n  }, \"Benchmarks & Studies\"), mdx(\"p\", null, \"Several academic and industry benchmarks compare AI-generated code and human\\nteam-reviewed output:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Automated generation speeds up prototyping (2-10x faster) but increases bug\\nrates (20%-50% higher) in production code\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Maintainability ratings by third-party reviewers slumped when code was\\ncomposed exclusively via prompt vs. peer-reviewed\"))), mdx(\"h4\", {\n    \"id\": \"table-solo-ai-vs-team-code-hypothetical-benchmark\"\n  }, \"Table: Solo AI vs Team Code (Hypothetical Benchmark)\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Metric\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Solo-AI Gen\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Team Reviewed\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Lines of code/week\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"2,000\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"500\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Bugs/kloc\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"6\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"2\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Time to deploy\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"2 days\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"1 week\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Maintainability (1-5)\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"2.2\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"4.8\")))), mdx(\"h3\", {\n    \"id\": \"prompt-driven-development-and-the-trap-of-self-reinforcement\"\n  }, \"Prompt-Driven Development and the Trap of Self-Reinforcement\"), mdx(\"p\", null, \"AI assistants learn to reinforce the patterns and assumptions already present in\\nprompts, leading to:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Recursive solutions that never challenge architectural flaws\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Absence of alternative perspectives that come from diverse teams\"))), mdx(\"h4\", {\n    \"id\": \"example-missing-perspective\"\n  }, \"Example: Missing Perspective\"), mdx(\"p\", null, \"A developer asks ChatGPT to \\u201Coptimize this loop.\\u201D The AI optimizes the code\\nlocally but never asks: \\u201CIs this O(n^2) step even needed?\\u201D Such meta-questions\\nare often posed by colleagues, not code tools.\"), mdx(\"h3\", {\n    \"id\": \"best-practice-augment-dont-replace\"\n  }, \"Best Practice: Augment, Don\\u2019t Replace\"), mdx(\"p\", null, \"Use AI to generate, autocomplete, and refactor, but \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"submit work for team\\nreview, or at minimum leverage automated code critique tools\"), \" (static\\nanalyzers, linters, etc.).\"), mdx(\"h2\", {\n    \"id\": \"advanced-concepts--forward-looking-scenarios\"\n  }, \"Advanced Concepts & Forward-Looking Scenarios\"), mdx(\"h3\", {\n    \"id\": \"ai-as-amplifier-not-replacement\"\n  }, \"AI as Amplifier, Not Replacement\"), mdx(\"p\", null, \"AI will enable more solo founders, but will not eliminate the need for team\\nwisdom in substantial, business-critical products. Instead, expect:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Hybrid workflows:\"), \" Solo devs build MVPs, then open-source or partner for\\nscaling.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"AI-powered CR bots:\"), \" Automated opposition (AI comment bots) flagging logic\\nerrors or security flaws.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Multi-model Orchestration:\"), \" Combining several AI services (e.g., for code\\nreview, testing, requirements validation).\")), mdx(\"h4\", {\n    \"id\": \"federated-knowledge-and-ai-collaboration\"\n  }, \"Federated Knowledge and AI Collaboration\"), mdx(\"p\", null, \"AI agents could self-compose reviews by ingesting large-scale best practices,\\nbut would still lack tacit team wisdom\\u2014what \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"should\"), \" be done, not just what\\n\", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"can\"), \" be done.\"), mdx(\"h5\", {\n    \"id\": \"edge-scenario-fully-automated-companies\"\n  }, \"Edge Scenario: Fully Automated Companies?\"), mdx(\"p\", null, \"Could a single founder build, deploy, and maintain a billion-user app, assisted\\nonly by AIs? Technically feasible in constrained domains (e.g., static websites,\\ndata ingestion tools), but rare for complex, evolving systems like banks or\\nmarketplaces where:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Regulatory review\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Security auditing\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Disaster recovery still require diverse expertise.\")), mdx(\"h4\", {\n    \"id\": \"recursive-traps-and-meta-software\"\n  }, \"Recursive Traps and Meta-Software\"), mdx(\"p\", null, \"If AI-generated code is constantly used to train new LLMs, we risk reinforcing\\nerrors and stifling genuine innovation. Explicit human opposition is needed to\\nbreak the recursiveness loop.\"), mdx(\"h2\", {\n    \"id\": \"best-practices-and-mitigations\"\n  }, \"Best Practices and Mitigations\"), mdx(\"h3\", {\n    \"id\": \"for-solo-ai-devs\"\n  }, \"For Solo AI Devs\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Automate testing at every step (unit, integration, property-based)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Lint, statically analyze, and spellcheck all code\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Document architecture with diagrams and README-driven design\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Share final products for review (public repos, open RFCs, AI+human review\\nbots)\"))), mdx(\"h4\", {\n    \"id\": \"setting-up-a-best-in-class-solo-ai-toolchain\"\n  }, \"Setting Up a Best-in-Class Solo AI Toolchain\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Copilot + ChatGPT:\"), \" Code generation, refactor suggestions\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Dependabot, Renovate:\"), \" Dependency maintenance\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"ESLint, SonarQube:\"), \" Code quality gates\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"GitHub Actions:\"), \" Automate tests, enforce pre-commit hooks\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"AI Code Review Bots (AICr, GPT Reviewer):\"), \" Pre-merge AI analysis\")), mdx(\"h4\", {\n    \"id\": \"recommendations-for-tool-makers\"\n  }, \"Recommendations for Tool Makers\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Offer team-prompt modes influencing generated code with group\\nstyle/conventions\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Build in opposition: \\u201CPlay devil\\u2019s advocate\\u201D prompt augmentations\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Richer API for toolchain integration (so AI can hook into CI/CD, code review\\nworkflows)\")), mdx(\"h2\", {\n    \"id\": \"troubleshooting-and-case-studies\"\n  }, \"Troubleshooting and Case Studies\"), mdx(\"h3\", {\n    \"id\": \"failure-the-tragedy-of-cut-and-paste-llm-code\"\n  }, \"Failure: The Tragedy of Cut-and-Paste LLM Code\"), mdx(\"p\", null, \"A startup founder used LLMs to ship a healthcare dashboard, with no code review.\\nFour months in, a routine audit revealed:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Hardcoded secrets committed to git\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"SQL injection bugs in almost every query\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Unpatched dependencies\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Unit tests generated, but never run (AI didn\\u2019t tell them to wire up CI)\")), mdx(\"p\", null, \"The codebase had to be rewritten by a team at great cost.\"), mdx(\"h3\", {\n    \"id\": \"success-solo-dev-to-open-source-business\"\n  }, \"Success: Solo Dev to Open Source Business\"), mdx(\"p\", null, \"A developer launched a SaaS time-tracker solo using Copilot and open libraries.\\nRecognizing the limits of AI, they:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Open-sourced the code after MVP\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Paired with other devs for security review\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Adopted automated analysis, and welcomed GitHub issues/PRs\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"The product is now profitable, used by thousands, and still maintained by a\\n(mostly) solo dev\\u2014with strategic community input.\")), mdx(\"h3\", {\n    \"id\": \"troubleshooting-guide-common-ai-code-smells\"\n  }, \"Troubleshooting Guide: Common AI Code Smells\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Symptom\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"What It Signals\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Fix\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Repeated boilerplate\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Prompt-overfitting, copy-paste\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Refactor to DRY, use abstraction layers\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"No error handling\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Underspecified prompt\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Always ask for robust error handling\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Security holes\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"AI wasn\\u2019t trained on latest CWE\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Run static code analysis, security audit\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Messy dependencies\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"LLM suggested latest of each\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Use lockfiles, test upgrades in CI\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Poor documentation\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Prompt didn\\u2019t specify docs\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Add README, Docstrings, architecture graphs\")))), mdx(\"h2\", {\n    \"id\": \"conclusion--further-reading\"\n  }, \"Conclusion & Further Reading\"), mdx(\"p\", null, \"AI coding tools are ushering in a new era\\u2014one where individuals can wield\\nincredible leverage, build at breathtaking speed, and tackle once-daunting\\nprojects alone. But the greatest software\\u2014robust, secure, scalable, and\\ndurable\\u2014still emerges from the crucible of collaboration, constructive friction,\\nand collective review.\"), mdx(\"p\", null, \"Going forward, the smartest solo \\u201Cdev armies\\u201D will augment their power with\\nautomated tests, static analysis, and open collaboration channels, using AI not\\nas a replacement for the team, but as a force-multiplier within the broader\\nsoftware community.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Further Reading:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://openai.com/research/code\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"OpenAI: Evaluating Large Language Models Trained on Code\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://octoverse.github.com/\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"GitHub Octoverse Report\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"http://www.catb.org/~esr/writings/cathedral-bazaar/\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"The Cathedral and the Bazaar (Eric S. Raymond)\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://www.synopsys.com/software-integrity/resources/analyst-reports/ossra.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Synopsys OSSRA Report\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://insights.stackoverflow.com/survey/\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Stack Overflow Developer Survey\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://arxiv.org/abs/2310.03648\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"\\u201CDo Large Language Models Know How to Code Review?\\u201D, NIPS 2023\"))));\n}\n;\nMDXContent.isMDXComponent = true;","tech":["SoftwareEngineering","AI"],"category":"Post","appDescription":null,"hero":{"full":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAE10lEQVQ4y0VV+VOTVxR9CWEziWAMm0CCbC0hIGtAkEU+trAYRiC0gLEIRHYCRAalpCJKSsROaFV0pmg72GFsbQc7WseO0x9onS46OqiI2in2Pzm978XqD2++t957zrnnvY/JZDLwFhwcjB2hodDr9QgICICfwg8KhQJqtRpKlRKMMRiNRpjNZtHnLSwsDPn5+QgJCRFjHofJ5DLI5XIxERsbi66uLlgsFuTk5PgOyhgKCgqQlZWFnp4exMXFvQ1YU1OD4xMTIjAf+/n58S97u2HnTg06Ojpw9+7PqD9wAEqlUgSsqqrC6OgoXC4XEhISEBkZCZVahZGRUQwODgp2Ap0AQJ3ExETEx8eLiVCizZF0d3ejuLgYmZmZaGhogNfrFYFMJhPeS04WSdbW1nD48OG3gLRaLRjX6ejRo3BNuZBMGzk1vmg7ZIMklfuCkwyTJyaRlJSE8fFxlJSU4NatW4Iy3+vv7y+Qz87O+iinpKTg/PkLcDqdaCD9OI3U1FT09vahtrYWX129KhAuLy+jqbEJY2NjONJxRASTJEl8h4eH4XA4wLiQvHq5VASekS9Ym61Cr8XFRSwsLIhAKysrNL6EPkoyc2oGUpkkZOGu4MmvLF0R8giEOp2O9IkQmTIyMtDW1oay/fsxOTmJ27dvY8QxgrbWVtz47gbu3LmD5qYmIVNRURHs3XbcvHkTBXsLfFoGBQXBZrMJZFxDgyEFeXl5qKyoEHR5da9d+warq6uE7BSGSI7BgQHsLy1FeXk57HY7oqOjkZ6ejtzcXLDdu3ejrKxMZBwaGhIU6uvq0N7eDgtZp5qqmZ6WJpBzU1dQkP7+fjQ2NqLxYCNZbafQ/vr1676CGgwG9PX5xLdarVi8uCgq3HmkUwjOLZL8pnH0aWlGHKJkzc3NWFpaIvTX4PF4kE3BtGFaX1H+9xGvttvtRivpFUWey9izh2hJ4uZwCTjNEapkJqGNiIgQbCLCw8VZFV3PNxeB0dWTQU0TJlMuaojWrqhIMnsCoeyAuaqSaEpoIfQSSWOurkIvefNjKlgqIS6ka9ne1orKygohD7MctGJu3osLl76E94tLKJWq0NJqw8XLS8gxFaCoREJ+YQn2Uuvo6kGnvQ9RMXo0tbShoroOurhE2D7qwp8PHsNzbgHs3sls/P5pHn50JuLbgWicrWf4wRGHrzs1OGdh8B6U4XuHHhesCqz0RmHzcjWWu7Vw1zAsfhiEuVqGkxLDqjMJd6fSwdadDBvTGjz/RIlXMxr8O6/D5lQQXp3W4PXZGGy5w/ByWo0tTzRenlThqSuE9oVga1aDf9zheO3WYms6EM+OMTwZo1qsHw/ApluHF54kbM7F4/m8ERuzel/frcfGXBKNdfj78yw8PR2DF/Pv4+Vnqdg4E4PnnmQ8cydg3bUDjwnYkwl6Bn8dZrg/xPDbIH2pPRqX44FTLvp8/tG4Ag+PyfGLneHpZDD+cDCs9fvW/iJE6yeC8OCYPx6OB+I+rbFdWhU0Kn9sUzAcMJfh3k+raLc2IFBO76M6APvyMrDPtAelhTnwemYwMtAN7fZAKP0Z8rONsNCZzkNWZBjioQrg9pO982F2bh5aPmiFanvou0c3LByx+jhUm2vhGHWir38IBmP6m3Xfo7pNtZ0eXPoNUKz/AF596E+scDRiAAAAAElFTkSuQmCC","aspectRatio":1,"src":"/static/15287cf2b3985b156b9249162ec3eb44/a1946/soloDevArmy.png","srcSet":"/static/15287cf2b3985b156b9249162ec3eb44/5b37e/soloDevArmy.png 236w,\n/static/15287cf2b3985b156b9249162ec3eb44/49058/soloDevArmy.png 472w,\n/static/15287cf2b3985b156b9249162ec3eb44/a1946/soloDevArmy.png 944w,\n/static/15287cf2b3985b156b9249162ec3eb44/6050d/soloDevArmy.png 1200w","srcWebp":"/static/15287cf2b3985b156b9249162ec3eb44/99fbb/soloDevArmy.webp","srcSetWebp":"/static/15287cf2b3985b156b9249162ec3eb44/77392/soloDevArmy.webp 236w,\n/static/15287cf2b3985b156b9249162ec3eb44/1f177/soloDevArmy.webp 472w,\n/static/15287cf2b3985b156b9249162ec3eb44/99fbb/soloDevArmy.webp 944w,\n/static/15287cf2b3985b156b9249162ec3eb44/9000d/soloDevArmy.webp 1200w","sizes":"(max-width: 944px) 100vw, 944px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M0%20138v139l8-4c6-2%207-3%2010-2%206%203%2021%200%2019-4h-1l-3%202-4%201h-1c1-2%200-3-2-2h-4c1-3-1-3-2-1h-5c0-1-1-1-1%201l-2%202H8c-2-1-2-2%202-4l6-4h28c-3%201-3%202%201%202%201%200%202%200%201-1%200-1%2016-1%2020%201l1-1c-1-1%200-1%201-1l3-1%204-2%204-2%202-1c2%200%203-1%203-2l4-1h2l3-1h5l1-1h1v5h-1l-1%201h-1l-1%201v2h-3c1%201%201%201%200%200l-3-1v1c2%201%202%202%201%202v3l-1%203v2h-1c-2-2-4%200-3%202%201%203-1%202-3-1l-2-3%201%203c0%203%200%203-1%202s-1-1-1%201h-1c-1-1-1-1-1%202%200%202%200%203-1%202h-3c-3-3-3-2-1%203l1%205h17c15%200%2017%200%2017-2v-6c1-7%208-15%2015-16%206%200%2015-6%2014-8h3l3%202%202%201%201%203%201%202c1-1%201%200%201%201l1%201h1c0%202-3%202-4%201h-3l-2%201h2l3%201h-2c-2%200-2%200-1%201l-1%201h-1l-1%201-1%203-1%201c-1-2-4-2-4%200h-1c0-2-3%202-3%205%200%202%200%202-1%201%200-2-2-3-2%200l-1%201c-1-1-6%203-6%204a388%20388%200%200062-1c0-2%200-2%203-2l2-1h1l1%201v-3l1-2h2l2%201%201-1%201-1c1%201%202%200%202-1h1l1%202%201%201v5h-2c-2%200-2%200%200%202h22c1%202%209%201%2011-1s2-2%200-2c-2%201-2%200-2-2%201-3%201-3-1-1-2%203-3%203-2%200v-3h-3l2-2c3-2%203-3%200-2l-2-1c1-1%200-2-1-3v-1l-1-1v-1l1-1-1-1-2-1c-1-2%201-2%203%200%203%202%204%202%204%200l-2-1c0%201-1%201%200%200l-1-1v-1c1-2%205-2%205-1l1%201c1-1%203%200%204%202l3%202c2%200%202%200%201%201l-2%201c0%201%202%202%203%201h1v2c1%200%202%200%201%201h8c-1%202%203%205%204%204l2%201%202%201%204%203%203%202%204%203%202%203h17c16%200%2016%200%2015-2l1-2%203-1v-1c1-1%201%200%201%201h1c1-1%201-1%201%202v3h30c29%200%2033%200%2033-3h-2c-1%201-1%201-1-1v-1c-2%202-3%202-2-1l-1-1h-2l-1-4-2-1v-1l-1-1v-4l-2%202-2%203v-3c0-3%200-3-1-1s-1%202-1-2-2-5-2%200c0%202%200%202-1%201-1-2-1-2-1%200s0%202-1%200l-1-3v3c0%202%200%203-1%202%200-2-1-3-2-3l-1-4c-1-3-1-2-2%202v6l-1-4v-6c0-2%200-2-1-1h-1l-1%201-1%202v-2a292%20292%200%2001-2-5l-1-3-1-1v-1h2c2%200%202%200%201-1l2-1h4l6%201h2l16%204c4%202%207%202%2010%201%203-2%2018-3%2022-2%202%201%202%202%202%206v4h-4l-5-3h-1l-6%206h-1v4l2-1h1v2h-1c-1-1-1-1-1%201l1%202%201%203%201%204v3l1%201h5v-3h-2c0-2%200-2-2-2l-2-1%201-1%203-2v-1h3l-1-2v-1c0-1%202%200%203%202%205%205%205%2012%205-136V0h-29a152%20152%200%2000-30%201L170%200H0v138M239%2011l-17%2016-6%2014-1%201v1l-1%201-2%203c-1%202-1%203%201%204%202%202%203%204%201%204l-1%202v3l-2-3-2-1v3l-1%202c0%201%200%202-1%201l-1%201-1%203-1%203v1l-1-3-1-1v-1l-1-1v-2l-1-4c-2-1-2-2-1-4%207-10%204-25-5-30l-6-7-3-4v3c0%203%201%204%202%205l1%202c-1%200%200%202%202%203%203%202%203%202%202%2012l-1%2011v4l-1%201h-2l1%202v1c-1%200-2%201-1%202%200%202%200%202%201%201%201-2%204-2%205%200s-2%204-4%203l-3-1%201%202%202%202%201%201-1%202-2%202%202-1%203%201h-1c-2%200-2%200-2%202h1c1-1%201-1%201%201v1c1-2%203%200%203%203v4l1%202v1l-2-1-1-1v2l1%202c1%200%204%201%204%203h1l2-10-1-1v-6l-1-4%202%205c2%207%202%2020%200%2017h-1v1l1%203-1%202-1%201v1l-2%205c-1%204-4%205-4%202%200-1%200-2-1-1l-1-1v-2c-1%201-2%200-2-1l-1-1-1-1c0-2%200-2-1-1-1%202-1%201-2-3%200-7-1-10-4-11l-7-2c-6-2-9-6-10-11l-1-7-2-10c0-5-2-10-3-6%200%207-1%209-2%2010l-1%203-1%202c-2%201-2%205%200%206h2l-2%202c-2%202-3%203%200%202v1l1%202%202%201v1l1%201v1l5%202c1%201%202%202%201%203h3v2l1%206c0%204%201%204%203%206l3%203%201%201%201-1v-1l1%203%201%202%201%202c-1%205%200%207%202%207h4c2%201%202-1%200-4-1-1-1-4%201-4v2l1%201%202-1c1-1%201-1%201%201l-2%203c-1%201-1%201%201%201s3-1%203-2l1-1v3c-1%203-6%207-6%206l-2-1-2%201-2%201-2-1-1-5c-1-4-2-4-3-2v1c1-1%201-1%200%200l-1%202-1%201%201%201c1-1%202%203%201%207%200%202%200%203-2%202-1-1-1-1-1%201s0%202-1%200l-5-2c-3-1-13-12-11-13%201-1%200-2-1-4v-2l1-1h-2c-1%201-1%201-1-1v-3l-1%201v2c-2%200-2-2%200-4%201-2%201-2%201%200h3c0%202%200%202%201%200s0-3-2-4l-4-4-3-2-1-1v-1l-5-10c-6-13-8-15-9-12-1%201-1%200-1-2v-3c-2%200-2%200-1-1l1-6v-5l-1-5-1-2c1-1%200-12-1-18l-3-5c-2-2-2-2-4-1-1%202-1%209%201%207l1%201v4l-1%201v2c-3%200-3%203-1%205v1l-3-2-4-3c-3%200-5-2-15-17l-5-6c-1%200-5%201-3%202l1%203%201%202%202%201c-1%201%200%202%201%203v3l2%201c2-1%202%200%201%203l1%201c2%201%203%202%203%204v3l-5-3c-5-3-9-7-12-11s-6-6-8-4c-1%202-1%202%201%204l1%203%201%201h1l1%201%201%203%202%201v1l1%201h1l1%202v2l1-1h2v3c2%202%202%202%203%200h1l1%201c1%200%202%201%202%203%200%203-1%203-3%203l-1%201-3%201c-4%200-7-2-10-7-2-5-4-6-6-6-3%200-3%202%200%206l3%206%202%202c1-1%202%201%203%203%202%202%202%203%203%202%202-1%203-1%202%201l1%201%203%201h2l1%201h1c1-2%201-2%201%200v3l1-3c1-2%201-2%201%201s3%206%204%204h2l2%202c0%201%201%202%204%202h4l2-1c1%201%205-3%204-3l2-1c3%200%203%201%202%202v1c1%200%201%201-1%202l-3%202-1%201-2%201-3%201%202%201c3-1%203%200-1%201l-2%202h3c3%200%208%202%206%203v1l1%201%202%202c2%200%203%200%202%202v3l1%201v2c-1%201-1%201%202%201%202-1%203%200%203%201-1%201-1%201%200%200l1%201v1l1%201h1v2l-1%202%203-3%202-2-1%203-1%202%201-1%201-1%201%207-1%207v2c0%201%201%202%202%201l1%201c-1%202%200%202%201%202l2%201%201%201%203%201c3%202%203%202%202%204v1c2-1%203%200%200%201-1%202%200%205%202%205l1%201h-6c-1%201-1%200-1-2s-1-4-3-5l-3-2h-2l-1-1-3-1c-11-2-13-3-16-7-6-7-13-14-18-15-8-1-14-8-15-17-1-10-1-10-3-3-2%209-2%2014-1%2015l1%201%201%201%201%203v2l1-1%205%202%206%204%201%201%201%201h2l1%207%201%205c1-1%201-1%201%201%200%203%201%205%202%204h8l-1%201v1c1%202%203-1%203-4%200-1%200-2%201-1v3c0%202%200%202%201%201h2l2%203%202%201%201-1%201%202%201%202%201-1%202%201c2%201%202%201%201%202v1c1%201%201%200%202-1l1-1h1l1%201v1c4-1%205%203%201%206-3%203-3%203%201%203h1l1%201h1l-2%202%201%201c2%201%204%200%204-1l1-2c1-1%201-1%201%201v3l1-3h3c2%200%203%203%201%204v2l-1%202-2%204c0%202-2%205-6%209-1%201%200%202%203%201l5-5c5-6%207-7%204-2-3%204-2%206%205%206%204%201%208-1%208-4l1-1%201-1v-1c2-1-5-3-8-3-2%200-2%200%200-1h6l5%201h2l5%201c6%200%2014%203%2013%204h-10l-9%209c-1%200-6%206-7%209%200%203-2%205-3%204l-1%203c-1%202-1%203-2%202l-1%201-1%202v3c-1%201-3%203-3%205l-2%203-1%201c0%202%203%201%205-3l3-4%201-1%201-2c1%200%207-8%206-9l2-1v-1l1-1%201-1%203-1%201-1%204-2a970%20970%200%200019-3h5l3%201c1-1%203%200%203%201%201%202%201%202%202%201s8%203%208%205l1%201%203%201%204%201%201%202%201%201%206%205c6%206%207%206%205%201l-2-3-3-4-4-5-1-1-1-1-2-2v-1l-2-1-2-2c0-4-2-7-4-7l-1-1c1-2-2-4-4-3-1%200-2-4-1-5l1%201c0%201%206%201%2018-1h6l-4%201c-3%200-7%201-9%203l3%204c2%202%204%203%205%202l-1-1c-2-1-3-4-2-6%203-3%209%200%208%203-1%201%200%202%201%202l2-1%201-1c2-1%200-3-2-4s-2-1%200-1c4%201%205%201%206%203l5%203%204%202%202-2c2-2%202-3%201-4l-1-1v-2c-1-3%200-4%201-2h2l1%201%205%201c3%200%204%200%205-2%203-5%202-6-2-9-3-2-3-2-6-1s-7%205-6%207v1l-5-7v-1l1-2%202-1%204-2%202-1%201-1%202-2c0-2%200-3%202-4v-2h2v-1c-1-1%200-2%202-1l1-2v-2h1l1%201v-3h1l2-2%203-3%203-1%201-4c2%200%202-1%202-3%200-6%201-11%202-8%201%201%201%201%201-2v-4l1-1c1%201%201%201%200%200l1-2%202-1h1l1-1v-3h1l2%201h1v-1c-1-1-1-1%201-1l3-2c1-4%202-6%203-5l2-2%201-2-1%204v1l1%201v1l1-2v-1c1%200%203-1%203-3l2-1c1%201%201%201%201-1v-1h1c0-2%200-2%201-1h5v-3h1c0%202%200%202%203%201l2-3%201-1c1%201%202%200%203-1l2-1%201-2c0-2%200-2%201-1%200%202%201%202%202%200l2-3c-1-1-7%200-10%202-2%202-3%202-5-1-3-2-3-3-1-3v-3h1l1-1c2%201%204-1%203-3l2-2%201-2h2l-1-2-1-2%202%201c1%201%201%201%200%200h1l1-1h1v-1l-2-2h2v-1h1c2%200%202%200%201-1v-1l1-1c-1-1%200-1%200%200%202%200%202%200%202-2-1-1%200-2%201-3%202%200%201-2-1-2-2-1-7%204-13%2013l-4%204c-2%200-2%200-1-1l1-4%201-4v-2l1-1h1v-1l1-1%203-3%202-2h1l1-1v-1l1-1%201-2v-3c-1-1-5%201-7%205l-4%204-5%209-1%205c0%203-1%203-1%202-1-2-4-1-4%201h1c1-1%201-1%201%202l-1%204v2c-2%200-2%200-1%201v1l-2%201-1%201c-1%201-1%202-3%201l-3%201-1%201v-6l1-4-1-1c-1-1-1-1%201-1%201%201%202%200%201-1h2v-3c-2%200-2%200-1-1v-2l-1-1%202-1h1c-1-1-1-1%201-1%203-1%202-3-1-2-1%200-2%200-1-1%202%200%202%200%201-1s-1-1%201-1h2l-2-1c-2%200-2%200%200-1l3-2c2-2%202-1%201%203-1%203-1%204%201%206%202%203%203%203%203-1-1-2%200-3%201-2v-1c-1-1-1-1%201-1l-1-1-2-2h2l1-2h2l2-1v-2c-2%200-3-2%200-2v-2c-1-1-1-1%201-1h2l-2-1%201-1%201-1c-2%200-2%200%200-1%201-1%202-1%201-2l-1-2h1l1-2c0-3-4-3-5%200l-3%207c-3%207-5%2011-7%2010v-5c2%200%203-2%201-2v-5l1-2c2-2%202-6%200-7-2%200-5%205-5%208l-2%207-3%207-6%2012c-4%204-6%208-4%208v2l-2%202-1%201-1%201c0%204%200%205-2%207l-1%202-2%204-3%205h-1c-1-1-1-1-2%201v5l-1-1h-1l-3%202c-1%200-2%203-1%205l-1%201c-1-1-1%200-2%202l-2%203-1%203c0%202%200%202-1%201-1-2-2%201-1%204l-1%203-1%202%201%203-2-1%201%202c2%203%202%206%200%208l-3%202-1%201c0%202-6%205-7%204%200-1-5%203-5%205l-1%201c-2-1-4%200-4%201%201%201%200%202-2%203h-2l-1-1v2l-2%201-3-2c-3%200-4-1-2-2v-3c1%200%201-1-1-2v-3h-1l-1%201v-6h1l3-2%203-1c1%202%205-4%205-7%200-1%200-2%201-1l2-2c-1-3%200-4%201-2h2c1%200%202%200%201-2%200-1%200-2%202-2l2%201%202%201v-2l-2-3v-3l1-1v-5c0-2%200-2%201-1%201%202%201-1%201-8l1-4v-3c0-3%200-3%202-4l2-1%202-1h1l-1-1%202-4c2-1%203-3%202-3v-3l1-1a591%20591%200%20010-8c-2%200-4%204-3%206%201%201%200%203-2%204l-13%2013c-6%208-8%2013-6%2016%203%203-4%2011-10%2013l-6%203-4%203-1%202-2%201-1-1v-1c-2-2-3-10-2-10l1-1v-7c1-1%201-1%200%200l-2-1-2-1-1%203v1l-4%201c-2%202-5%201-5-2l3-1c2%200%203-1%203-2l1-1v-2h3c1-2%201-3-1-4v-1c2%200%202%200%201-1v-4l1-1v-1l-2%202h-1c-1-2-1-2-1%200l-1%202v-7l1-2%201-2%201%202c1%202%201%202%201-1%200-2%200-3%201-2l1%201c2-1%201-3-1-3l-2-2c1-1%206%201%206%203l1%201%201-1%201-2c1-1%201-1%201%201h1l1-1%201-1v-1c-2%201-3%200-1-2h3v-1l1-1%201%203c0%202%200%203%201%202%201-4%202-5%203-3%201%201%201%201%201-1-1-1%200-2%201-2l2-1%201-1h2c1-2%203-2%205-1h1c-1-2-1-2%201-2h4c2%200%203-2%202-4-2-2-10-1-12%201l-3%202c-2%200-3%200-3%202l-2%202v-1c0-2%200-2-2-2-1%201-2%200-3-1l-3-1c-1%200-2%200-1-1l-1-1v-1l-1-1v-2c-2%200-2%200-1-2%202-2%202-3%201-3v-1c2-2%202-2%200-2-2-1-2-1%201-3l4-4%201-3%203-1%203-1-2%202c-4%202-6%209-4%209l2-2c-1-1%200-2%201-1v-2h2l1-2%202-1%201-1h2l2-2%203-2%202-2c1-1%202-2%203-1v-1l1-2c1%200%202%200%202-2s-2-3-4-1h-1c0-3-10-2-14%202M37%2073c-1%203-1%205%201%204%202%200%202%200%201%201v1l2%207%201%201%201%201%201%202v1c-1%201-2%200-3-2-6-10-9-14-12-14l-2%201%201%201v1l2%203v3l4%203%203%204v1c2%203%200%202-4-1l-7-7c-3-4-5-6-7-4v5l1%202%202%201v2l1%201h1v1l2%201h1l1%201c-1%203%200%204%202%204h2l2%201%201-1%201-1h3v2c0%202%200%203%201%202l1%201v8c0%202%200%202%201%201v4c0%202-5%204-10%204-6%200-9%201-9%203l1%202v1l1%202h9c0%202%200%202%203%200l2-1%201%201%201-2%203%201h2l2%201%203%201v-1l1-1%204-1h1l1-1c1%200%201-1-1-2h1l2-1c-1-1-1-1%200%200l2-1c0-1%201-2%202-1v2c-2%201-2%201-1%202%202%201%203%200%202-2l1-1v-4c1-1%202%203%201%205l1%201c1-1%201-1%200%200l-1%202h2l1-1h1v1c0%202%200%202%201%201%201-2%202-2%202-1l-2%202c-2%203-2%204%201%203%201-1%202-1%203%201h2v1h3v2h4c1-1%201-1%201%201v1h1l-1%202c-1%201-1%201%200%200h2l1-1h1v5l1%201v1l2-2%201-2v4c0%203%200%203%202%202l1%202-1%203%202-3%202-2v2c0%202%202%203%203%201%201-1%201-1%201%201v2l1-2c1-2%201-2%201%201v2l1-2%201-1%201%201c0%202%200%202%201%201s1-1%201%201v3c1%201%201%200%201-1l1-3%201%202v2h1l1%201h2c1-1%201-1%203%202l2%202v1l1%202c1-1%202-7%200-8v-3l1-2v2l1%202%202%201v1l-1%202%202-1c1-1%201-1%202%201%201%201%201%201%201-2s-1-4-3-3l-1-1v-1l-2-1%201-1v-1l-1-1c-2%201-4%200-4-2l-1-2-1%201h-4l-2-1-2-3c-3%200-10-5-10-6l-5-5a412%20412%200%2001-27-27l-3-4-1-3-2-4-3-6c-2-6-4-7-7-2-1%202-1%202%202%202h3l-3%201-1%201v1c-1%201%201%209%203%209l1-1v-1l1%201v2c1%201%200%202-1%202l-1%201h3v2l3%202%201%202v1h-6c-4-1-5-1-4-2%202-1%203-4%201-4l-1-1c0-2-1-2-3-2-3%200-3%200-2-1%202-1%202-2%202-4v-2h1l-1-2c-1%201-3-1-4-4-6-13-8-16-11-13m359%205l-5%201c-3%200-10%208-14%2015l-4%206-3%2014c-2%2010-2%2012-5%2014l-3%203-5%202a3552%203552%200%2001-33%2022v1c-2%200-2%201-2%203s0%203-2%202v-4c-1-1-2%200-3%202-1%203-2%203-2%201-1-2-1-2-1%201%200%204%200%204-1%203h-2c0%202-1%205-2%203-1-1-1-1-3%201l-2%203%201%202%201%202v-2l2%201c1%201%201%201%201-1v-2l1-1v-1l1%201h2c0-2%201-2%201-1l1%201h2c2-1%202-1%203%201s2%202%202%201l1%201h2l-1-1c-2-2-1-3%201-2h2v1h3l2-3c0-2%200-2%202%200h1l1-1v-1h4c2%200%202-1%202-4h4c0-1%201-1%202%201%203%202%203%201%200-3l-1-3h3l1%201c-1%202%202%201%204-1v-2l1-1v-1l1-1h1l2-1c4%200%204%200%203-1v-2c2%200%202-1%202-3s3-2%204%200l1%201%201-2c1%201%202%200%203-1v-6l3-1v-1h4c1%201%201%201%202-1v-3l-1-1-1-1%201-1%203-1-2-1v-1c2-2%203-3%201-2l-1-1v-5l1-1c-1-1%200-2%201-2l1-4-1-2c-1%201-2-2-1-4l1-4c-1-2%202-8%203-7h1c0-1%201-3%203-3l3-1-1%201-7%209%202%201c1%200%202-1%201-2l1-1%203-2c2-4%203-4%201-3v-2c2-2%203-3%201-2l-1-1%201-1h2l1-1h-1c-1%200-1-3%201-6s1-4-3-1M216%2094v1l-1%201-2%201h-3c-2%200-2%201-1%204v1l-1%203%201%203v3l1%203v1h2v3l3-1c0-1%201-2%202-1%202%201%204-1%203-2l-1-1-1-1-2-1h-2l1-1v-7c2-1%202-1%201-2v-1l1-1%201-2%201-2h-1c-1%201-1%201-1-1h-1m130%202l-3%206c-3%205-5%207-9%207-5%200-12%206-18%2014-5%209-12%2012-27%2013l-5%202-3%202-1%202-1%201-3%206%202%206h2l3-1c1%201%203%200%204-2l3-1c0%201%204%200%206-3l3-1h2c1-1%202-2%203-1l1-1%202-2h3l2-1%201-1c0-1%201-4%202-3l1-1%202-3v-3c2%201%205-1%204-3-1-1%200-1%201-1v-1c-2%200-2-1-1-1l1-1%202-2%201-3h1l1-1h2l1-1v-1c1%201%201%200%202-1%200-2%201-2%203-2%201%201%202%200%202-1v-2l1%201%202-1c2-1%203-2%202-3h1c1%201%201%201%201-1l2-6c1-4%201-6-1-4m-148%2036v4c-1%205%206%207%208%202%200-3-1-5-5-5-2-1-2-1%201-1%204%200%208%202%209%204%200%201-5%207-6%206l-3%201c-2%201-3%201-7-2l-4-3%203-2c4-4%202-4-2%200l-5%202-2%202h-2c-1-1-1-1-1%201s0%202-1%201h-1c0%202-3%201-3-1v-2l-1%202-2%202%201%202%203%201c1-1%202%200%203%201h2l1%201%202%201v1c-2%201-2%201%200%201l2%201%202%201%204%201c1%201%203%202%204%201l2%201c-1%201%200%203%201%204h2l2-1h2c0-1%200-2%202-2l1-3%201-1c1%201%205-3%204-3l1-1%201%201%205-2h5c1%202%204%200%204-2v-4c-1%200-2%200-1%201%201%202-1%201-3-2l-5-2c-2%201-4%200-3-1v-1c-1%201-3%200-6-2-4-4-14-5-15-3M31%20152v2l1%201c0%203%204%205%206%205h1c-1%201-1%201%201%201h1l1%201h1c-1%201-1%201%201%201%203-1%203%200%200%201h1c2%200%202%200%201%201-2%201%200%203%202%202l1%201v1l1%201%201%203c2%201%202%201-1%201h-2l1%202%203%201h4l-4%201c-3%201-3%201-1%201s2%200%200%201c-3%201-3%201-1%201s2%200%201%201c-2%201%201%202%205%202h2l-4%201c-3%200-3%202%201%203%201%201%201%201-1%201l3%201%206%201H53l4%202%202%201c-1%200-2%200-1%201l2%201h3c2%200%201%202-1%203-1%201-1%201%201%201s2%200%201%202v8l3-1%202-2%201%202%202%202c1-1%201%200%201%202l1%203v-4c0-3%200-3%201-2%201%202%201%202%202%200%201-1%201-1%201%201h1v8h2v3c1%202%202-2%201-5l1-2%201%204c0%202%200%202%201%200%200-2%201-3%203-1l1-1%201-3v3c0%202%200%202%201%200s1-2%201%200-3%206-5%206l-1%201-1%202-2%203c0%202-5%206-9%209l-4%202-6-4c-8-4-10-4-6%201l6%204%202%201c0%201%2011%202%2013%201l2-1c1%201%204%200%203-1l1-1h1l1-1c2%200%203%200%202-2h5c3%200%207-2%206-5l1-1%201%201h1l1-1%202-1h6l-1-2v-1l3-1c2%201%203%200%203-1s-1-2-2-1l-2-1%201-1v-1l-1-2-4-2c-2-1-3-1-2-2l-1-1c-2%201-2%200-2-1l-3-3h8l2%202%201-1%202%201%202%202v1l1%201c2-1%203%200%205%202s2%202%202%200v-1l2-2h2l-1%202-1%201h2v-1l1-1%201%201h5l1-1h1l2-2%201%201h1c0-2%201-2%202-2h1l2-4%202-4c0-2%200-2-1-1h-2l-1-1-1-1h-3c-2%200-3-1-3-2l-2%201c-2%202-3%202-5%202l-1%202c1%202-1%205-3%205l-1-3h-1c-1%202-2%202-3%201l-1-1h-3a172%20172%200%2000-27-6l-6-1c-9%200-15-7-23-27l-6-8-3-4-1-1-1-1c1-1-2-4-5-4l-6-3c-3-3-7-3-8%200m-3%2013l-5%203c-2%201-2%202-2%204v4c-1%202-1%202%201%203h2l1-1c1%201%204-3%204-4l1-3h3c2-1%205%200%205%201h2v3h3c3-3-3-11-9-12-2-1-3-1-6%202m45%202l3%203%207%207%202%202%204%201h5l4%202%204%203%203%203c1-1%202%200%203%201l3%201h4c1-2%202-2%202-1h6c0-1%203-1%204%201%201%201%201%201%201-1l2-2%201%201v1c1-1%202%200%203%201s1%201%201-1l1-2v2h2c2-1%202-2%201-2v-2c1-2-1-7-3-7-9-1-13%200-15%202-4%203-9%203-14-1l-6-3c-9-1-14-2-19-6-3-3-6-4-9-5h-3l3%202m188%205v6c0%203-4%207-5%205h-2c-2%201-2%201%200%201%202%201%202%201%200%202s-4%203-4%206v2l1%201%203%201c3%200%204-1%205-3l1-1h1c2-1%202-2%200-3-1-1-1-1%201-1l1-2h2c1%202%202%202%202%201h1c1%201%202%202%203%201l1%201%201%201%201-3c0-2%200-3%201-2s4%202%206%201h2c2-1%206-1%206%201h5l1-1%202-1%201%201h2v2h2l2%201h1l1%201%202-1h4l4-1-1-1h-4l-2-1-1-3c-1-2-2-2-3%200h-2l-2-1-1-2-1-2-6-1-8-2-4-1h-6c-4-2-9-2-9-1%202%202-1%201-2-1h-3m117%203l-9%203c-6%201-7%201-16%2011-7%206-12%2010-14%2010-5%202-6%202-6%201l-3-1-9-1c-8-2-17-2-15-1%201%201%201%201-1%201l-4%201-5%202-1%201%201%201v1l-3%204c-1%201-1%201-1-1%201-1%201-2-1-3-1-1-2-1-2%201v6c2%200%200%202-3%202-3%201-5%204-4%205l2-1%201-1v2l1%201%201-1c0-2%204-3%204-1l2-1c1-3%201-3%201-1s2%203%202%201l1-2v2c0%202%200%202%202%202%203-1%203%200%203%202l1%201c1%200%202-1%202-3%201-2%201-1%201%202v5l2-4%201-2%201%201h1c0%202%203%202%204%201h1l1%202%201-1%201-1%201-3v-2l1%203c1%202%201%202%201%200s0-2%201-1c0%202%200%202%201%201l1-2%201-1c1-1%201%200%201%201l1%203%201-1c0-2%202-3%202-1h2l4-2%204-1h2c-1%202%204%203%205%201v-2l-1-2h1l4%202v-1l-1-1%202-2%201-2v2l2%201%202-1c-3-1-2-5%200-5s2%200%200-1l-1-1%202-1%202%201%203%202v-2c-2-1-2-1%200-1v-1l1-2v1l1%201%201-2%202-3%202-3%201-1c2%200%203%200%202-2h1l1%202v1c0%202%205-1%205-4l1-1%205-1h1l1%201h1c0%203%205%205%208%203l-1-4c-3-4-13-4-18%200l-3%203v-2l1-2%201-2h2l1-2c-1-3%200-3%206%200l6%201c2-1%202-1-1-1-4%200-2-2%202-2%203%200%202-2-2-3l-5-2h-9m-350%205l-5%201c-3%200-4%201-6%205s-2%209%200%209%205-3%204-5l2-1%202-2%201-1c1%201%202%200%203-2%202-3%202-3%202-1h1v-2l1%202c1%201%201%201%201-1s0-2%201%201l1%203%201-4v-2l-1-1c0-1-7-1-8%201m117%202c-2%202-2%206-1%206l1%203%201%204%201-1h2c4%200%207-3%206-5v-2l-2-4-2-1h-6m116%2015l1%201%201%201-2%201v1l-1%201-1%203c-1%202%200%202%202%202%201-1%202%200%202%201v2c1%200%202%201%201%202l2%202v1l1%201h3l1%201%201%201%202-2%201-1%201-1%202-3%201%202c1%202%201%202%201%200s0-2%202%200h1l1-3%201-1h-2c-1%202-2%201-3-1%200-2-1-3-2-2l-4-3c-2-3-4-4-5-3-2%200-2%200-1-1l-2-2h-5m-223%202c2%201%202%201%200%201h-4l-5%204c-9%204-9%204-12%203l-6-2H5l-2%202%202%202h3v2h4l1%202%201-1%201-2%201%202c2%202%202%202%202%200%201-1%201-1%201%201l1%203%201-2c-1-3%201-3%201%200%201%202%201%202%202%201l1-2v2l1%202v-2c0-2%200-2%201-1h1c0-1%201-2%204-1%203%200%204-1%204-2h2c0%202%201%202%201%201h1l1-1c0-1%201-1%201%201h3c0-2%200-2%201-1h2v-3h6l-1-1c-2%200-6-4-6-6s-1-3-5-3-5%200-4%201m199%2015h-2l-1%201-4%204-5%203-1%201-2%201-2%201-5%202a42%2042%200%2001-28%202%2056%2056%200%2001-14-8h-2l-2-1-3-1-2-1-3-1h-3l4%203v1l1%201%204%202%204%202c1-1%202%200%202%202l2%201h3l1%201%202%202%204%202h2c0%201%208%202%2011%201l6-1c7%200%2011-1%2012-2l4-2%204-3%202-1%203-2%201-2c2%200%209-8%208-8h-1m152%202c-2%202-3%202-6%202a17%2017%200%2000-8%201c-1%200-2%202-1%204h2l2%201h2l2-1c0-2%203-1%204%201h1l1-2%202-1%201-2c2%201%203-1%204-3%200-3-4-2-6%200m-141%205c-1%200-2%201-1%202l-1%201-1%201c0%201%200%202-2%201v4c-1%201-1%200-1-1h-1v3l-1%202-1%201-2%201c-2%200-2%200-1%201v3l-2%202-1%201v1h-1c0%202%202%201%206-2%207-5%2014-4%2020%201%204%205%207%205%203%200l-1-2-1-1-1-2h-2v-5l1-2h1l1-1h2l2-1a2167%202167%200%2000-4-7h-2c1-1%200-1-1-2l-2%201h-6m27%2019h-1l-1-1v3c0%202-1%203-2%201h-1c1%201%200%203-2%204l-2%202%203%201%203%203h-1c0-2-3-1-3%201s2%203%202%201c0-1%201-1%202%201h1v-2l3%202%202%202h3c2%200%205%202%204%204l1%201%202-2c0-3%202-1%202%202l2%204c2%200%202%200%201%201v1l1%201c0%204%205%206%208%203%201-1%201-1-1-2-3%200-2-3%201-4v1l-1%201h2c1-1%201-1%201%201-1%202%201%203%202%200l1%201h1l1-2c1%200%200-4-2-7-5-7-7-9-8-8l-1-1c1-1-1-2-6-3l-3-1-3-3c-2%200-3-2-4-3l-2-2c-2%200-2%200-1-1l1-2-2%201h-1c-1-1-1-1-2%201m-122%201l-2%202-2%202-2%202v1h1l2-1v1c-1%201%200%202%201%205l2%203h-2l-6-2-2%201%203%201%202%201c2%202%2017-1%2017-4h-4c-5%203-8%203-9%200%200-4%201-5%203-5%203%200%205%202%204%203h3c2-1-1-4-6-5l-3-1h3c3%200%205%201%207%203l5%203-3-5-1-2-1-1h-2c-2-2-8-3-8-2m88%201l-3%202%205%204c3%202%201%203-4%201s-5%200%200%202c7%203%2016%203%2020%200l3-1%203-1h-3c-12%202-16%202-16%201h1c2%201%206-1%205-2l1-1%202-1c3-5-8-8-14-4m-39%206v6l-1%201c-1%200-2%201-1%203%200%202%200%202-1%201h-1v1l1%201%202%203%202%202-1%201%203-1h3l1-2%201-1h1l-1-2h2v-3c1-3%200-5-5-7-3-2-3-2-1-2%201%200%202%200%201-1-1-3-4-3-5%200m-26%207c-1%200-2%201-1%203l-1%202v2c1%202%201%202-1%202-3-1-9%201-9%203v1c-2%201-2%209%200%209h1l1-1%203-2%202-2v-2l1-2c1%201%202%200%203-1l4-3h3l2-1c2%202%205-6%203-8h-11M0%20380v20h95a2418%202418%200%2000105%200h10l-1-4%201-11c1-8%203-11%2010-18v-2l2-2c4-3%202-3-20-3l-23%201c0%201%2010%207%2012%207v1c-1%201-1%201%202%202l3%201h-4c-4%200-10-2-10-3l-7-4h-2l-3-1-4-2-3-1h-10l-21-1-20%201v2c1%201%201%201-1%202v1l-1%201-1%201c2%200%202%200%201%201-3%204-4%205-5%209l-2%205v1l-1%201-1%201-7%208c-3%202-3%200%200-4l2-5%202-2%201-2c0-5-5-2-7%203l-1%202-1%201-1%201-1%202c1%201-3%208-5%209l-1-3c0-2%201-3%202-3v-1l1-5%201-5%201-3%201-6h-1l-1%201-3%201-1%202-2%204-1%202-1%203c0%203-4%208-5%207s1-10%203-13l1-1%201-3%203-8c-1-1-1%200-5%208-5%2010-7%2012-9%2011l-1-3%202-3%204-11%205-10H0v20m244-19c5%202%2013%2012%2015%2020%202%205%204%207%209%209l5%204%202%203h-4l-5-1h-1l-1-2-1%201c-1%201-1%201-1-1v-2l-1%202-1%203v-3c0-2%200-2-1-1h-1l-1-2c1-1%200-4-1-3l-2-1-1-1-1-2v-1h-1c0-2%200-2-1-1v-4l-1%202-1%201v-2h-1v-2c0-4%200-4-2%200l-2%201v-2l-1%202c-1%201-1%201-1-2%201-5%200-7-2-3-1%203-1%203-1%201s0-2-1-1c-1%202-1%202-1-1-1-2-1-2-3-1-1%202-1%202-1%200l-1%202-2%204-1-1-1-1-1%202h-1c-1-2-1-2-2%201l-3%203h-1l-2%203c-1%202-1%202%201%203l1%201h-1v1l-1%201c-2-1-3%201-1%202%201%201%200%205-1%205-2%200-3%201-3%202l5%201c7%200%207-1%207-10l1-4h1v-1h2v2l2-1c0-2%204-2%204-1s-1%202-2%201v1c1%201%201%201-1%201v2c2%201%203%201%205-2%202-2%202-2%202%200-1%202-1%202%201%202%200-1%201-1%200%200h3l4-1h1v1h2l1-2c2%200%200%203-2%204-1%201-1%201%201%201h1l1%201%201%201v4l62%201%2061-1c0-2%200-3%202-3s2%201%202%203l11%201h10v-40h-20l-20%201c0%201%201%202%206%202%205%201%209%203%206%203l-1%202c-1%203-11%202-11-1l-2-3-2-1c2-2-7-3-11-2-1%200-1%203%201%204v5h1c2-1%205-1%205%201-1%201-1%201%200%200l1%201v1l4%201%204%203v1l1%201h3v1l-1%201c0%202-2%202-4%201l-2%201c-1%201-1%201-1-1s-1-3-2-1l-2%201v-1c1-2-1-3-3-1h-2l1-1h-1l-1-2c0-2%200-2-1%200l-1%201-1-1-1-3c0-2%200-3-1-2h-7l-1-1h-3c-3%200-3%200%200-1l3-1h-5c-3-1-5-4-3-4%204-1%207-2%207-4h-12l-1%202v13c0%201-3%202-4%201l-2-3-1-8v-6h-35c-20%200-35%200-34%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"regular":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAE10lEQVQ4y0VV+VOTVxR9CWEziWAMm0CCbC0hIGtAkEU+trAYRiC0gLEIRHYCRAalpCJKSsROaFV0pmg72GFsbQc7WseO0x9onS46OqiI2in2Pzm978XqD2++t957zrnnvY/JZDLwFhwcjB2hodDr9QgICICfwg8KhQJqtRpKlRKMMRiNRpjNZtHnLSwsDPn5+QgJCRFjHofJ5DLI5XIxERsbi66uLlgsFuTk5PgOyhgKCgqQlZWFnp4exMXFvQ1YU1OD4xMTIjAf+/n58S97u2HnTg06Ojpw9+7PqD9wAEqlUgSsqqrC6OgoXC4XEhISEBkZCZVahZGRUQwODgp2Ap0AQJ3ExETEx8eLiVCizZF0d3ejuLgYmZmZaGhogNfrFYFMJhPeS04WSdbW1nD48OG3gLRaLRjX6ejRo3BNuZBMGzk1vmg7ZIMklfuCkwyTJyaRlJSE8fFxlJSU4NatW4Iy3+vv7y+Qz87O+iinpKTg/PkLcDqdaCD9OI3U1FT09vahtrYWX129KhAuLy+jqbEJY2NjONJxRASTJEl8h4eH4XA4wLiQvHq5VASekS9Ym61Cr8XFRSwsLIhAKysrNL6EPkoyc2oGUpkkZOGu4MmvLF0R8giEOp2O9IkQmTIyMtDW1oay/fsxOTmJ27dvY8QxgrbWVtz47gbu3LmD5qYmIVNRURHs3XbcvHkTBXsLfFoGBQXBZrMJZFxDgyEFeXl5qKyoEHR5da9d+warq6uE7BSGSI7BgQHsLy1FeXk57HY7oqOjkZ6ejtzcXLDdu3ejrKxMZBwaGhIU6uvq0N7eDgtZp5qqmZ6WJpBzU1dQkP7+fjQ2NqLxYCNZbafQ/vr1676CGgwG9PX5xLdarVi8uCgq3HmkUwjOLZL8pnH0aWlGHKJkzc3NWFpaIvTX4PF4kE3BtGFaX1H+9xGvttvtRivpFUWey9izh2hJ4uZwCTjNEapkJqGNiIgQbCLCw8VZFV3PNxeB0dWTQU0TJlMuaojWrqhIMnsCoeyAuaqSaEpoIfQSSWOurkIvefNjKlgqIS6ka9ne1orKygohD7MctGJu3osLl76E94tLKJWq0NJqw8XLS8gxFaCoREJ+YQn2Uuvo6kGnvQ9RMXo0tbShoroOurhE2D7qwp8PHsNzbgHs3sls/P5pHn50JuLbgWicrWf4wRGHrzs1OGdh8B6U4XuHHhesCqz0RmHzcjWWu7Vw1zAsfhiEuVqGkxLDqjMJd6fSwdadDBvTGjz/RIlXMxr8O6/D5lQQXp3W4PXZGGy5w/ByWo0tTzRenlThqSuE9oVga1aDf9zheO3WYms6EM+OMTwZo1qsHw/ApluHF54kbM7F4/m8ERuzel/frcfGXBKNdfj78yw8PR2DF/Pv4+Vnqdg4E4PnnmQ8cydg3bUDjwnYkwl6Bn8dZrg/xPDbIH2pPRqX44FTLvp8/tG4Ag+PyfGLneHpZDD+cDCs9fvW/iJE6yeC8OCYPx6OB+I+rbFdWhU0Kn9sUzAcMJfh3k+raLc2IFBO76M6APvyMrDPtAelhTnwemYwMtAN7fZAKP0Z8rONsNCZzkNWZBjioQrg9pO982F2bh5aPmiFanvou0c3LByx+jhUm2vhGHWir38IBmP6m3Xfo7pNtZ0eXPoNUKz/AF596E+scDRiAAAAAElFTkSuQmCC","aspectRatio":1,"src":"/static/15287cf2b3985b156b9249162ec3eb44/3ddd4/soloDevArmy.png","srcSet":"/static/15287cf2b3985b156b9249162ec3eb44/078a8/soloDevArmy.png 163w,\n/static/15287cf2b3985b156b9249162ec3eb44/e56da/soloDevArmy.png 327w,\n/static/15287cf2b3985b156b9249162ec3eb44/3ddd4/soloDevArmy.png 653w,\n/static/15287cf2b3985b156b9249162ec3eb44/c5cc7/soloDevArmy.png 980w,\n/static/15287cf2b3985b156b9249162ec3eb44/6050d/soloDevArmy.png 1200w","srcWebp":"/static/15287cf2b3985b156b9249162ec3eb44/0acdf/soloDevArmy.webp","srcSetWebp":"/static/15287cf2b3985b156b9249162ec3eb44/ac59e/soloDevArmy.webp 163w,\n/static/15287cf2b3985b156b9249162ec3eb44/7660b/soloDevArmy.webp 327w,\n/static/15287cf2b3985b156b9249162ec3eb44/0acdf/soloDevArmy.webp 653w,\n/static/15287cf2b3985b156b9249162ec3eb44/75470/soloDevArmy.webp 980w,\n/static/15287cf2b3985b156b9249162ec3eb44/9000d/soloDevArmy.webp 1200w","sizes":"(max-width: 653px) 100vw, 653px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M0%20138v139l8-4c6-2%207-3%2010-2%206%203%2021%200%2019-4h-1l-3%202-4%201h-1c1-2%200-3-2-2h-4c1-3-1-3-2-1h-5c0-1-1-1-1%201l-2%202H8c-2-1-2-2%202-4l6-4h28c-3%201-3%202%201%202%201%200%202%200%201-1%200-1%2016-1%2020%201l1-1c-1-1%200-1%201-1l3-1%204-2%204-2%202-1c2%200%203-1%203-2l4-1h2l3-1h5l1-1h1v5h-1l-1%201h-1l-1%201v2h-3c1%201%201%201%200%200l-3-1v1c2%201%202%202%201%202v3l-1%203v2h-1c-2-2-4%200-3%202%201%203-1%202-3-1l-2-3%201%203c0%203%200%203-1%202s-1-1-1%201h-1c-1-1-1-1-1%202%200%202%200%203-1%202h-3c-3-3-3-2-1%203l1%205h17c15%200%2017%200%2017-2v-6c1-7%208-15%2015-16%206%200%2015-6%2014-8h3l3%202%202%201%201%203%201%202c1-1%201%200%201%201l1%201h1c0%202-3%202-4%201h-3l-2%201h2l3%201h-2c-2%200-2%200-1%201l-1%201h-1l-1%201-1%203-1%201c-1-2-4-2-4%200h-1c0-2-3%202-3%205%200%202%200%202-1%201%200-2-2-3-2%200l-1%201c-1-1-6%203-6%204a388%20388%200%200062-1c0-2%200-2%203-2l2-1h1l1%201v-3l1-2h2l2%201%201-1%201-1c1%201%202%200%202-1h1l1%202%201%201v5h-2c-2%200-2%200%200%202h22c1%202%209%201%2011-1s2-2%200-2c-2%201-2%200-2-2%201-3%201-3-1-1-2%203-3%203-2%200v-3h-3l2-2c3-2%203-3%200-2l-2-1c1-1%200-2-1-3v-1l-1-1v-1l1-1-1-1-2-1c-1-2%201-2%203%200%203%202%204%202%204%200l-2-1c0%201-1%201%200%200l-1-1v-1c1-2%205-2%205-1l1%201c1-1%203%200%204%202l3%202c2%200%202%200%201%201l-2%201c0%201%202%202%203%201h1v2c1%200%202%200%201%201h8c-1%202%203%205%204%204l2%201%202%201%204%203%203%202%204%203%202%203h17c16%200%2016%200%2015-2l1-2%203-1v-1c1-1%201%200%201%201h1c1-1%201-1%201%202v3h30c29%200%2033%200%2033-3h-2c-1%201-1%201-1-1v-1c-2%202-3%202-2-1l-1-1h-2l-1-4-2-1v-1l-1-1v-4l-2%202-2%203v-3c0-3%200-3-1-1s-1%202-1-2-2-5-2%200c0%202%200%202-1%201-1-2-1-2-1%200s0%202-1%200l-1-3v3c0%202%200%203-1%202%200-2-1-3-2-3l-1-4c-1-3-1-2-2%202v6l-1-4v-6c0-2%200-2-1-1h-1l-1%201-1%202v-2a292%20292%200%2001-2-5l-1-3-1-1v-1h2c2%200%202%200%201-1l2-1h4l6%201h2l16%204c4%202%207%202%2010%201%203-2%2018-3%2022-2%202%201%202%202%202%206v4h-4l-5-3h-1l-6%206h-1v4l2-1h1v2h-1c-1-1-1-1-1%201l1%202%201%203%201%204v3l1%201h5v-3h-2c0-2%200-2-2-2l-2-1%201-1%203-2v-1h3l-1-2v-1c0-1%202%200%203%202%205%205%205%2012%205-136V0h-29a152%20152%200%2000-30%201L170%200H0v138M239%2011l-17%2016-6%2014-1%201v1l-1%201-2%203c-1%202-1%203%201%204%202%202%203%204%201%204l-1%202v3l-2-3-2-1v3l-1%202c0%201%200%202-1%201l-1%201-1%203-1%203v1l-1-3-1-1v-1l-1-1v-2l-1-4c-2-1-2-2-1-4%207-10%204-25-5-30l-6-7-3-4v3c0%203%201%204%202%205l1%202c-1%200%200%202%202%203%203%202%203%202%202%2012l-1%2011v4l-1%201h-2l1%202v1c-1%200-2%201-1%202%200%202%200%202%201%201%201-2%204-2%205%200s-2%204-4%203l-3-1%201%202%202%202%201%201-1%202-2%202%202-1%203%201h-1c-2%200-2%200-2%202h1c1-1%201-1%201%201v1c1-2%203%200%203%203v4l1%202v1l-2-1-1-1v2l1%202c1%200%204%201%204%203h1l2-10-1-1v-6l-1-4%202%205c2%207%202%2020%200%2017h-1v1l1%203-1%202-1%201v1l-2%205c-1%204-4%205-4%202%200-1%200-2-1-1l-1-1v-2c-1%201-2%200-2-1l-1-1-1-1c0-2%200-2-1-1-1%202-1%201-2-3%200-7-1-10-4-11l-7-2c-6-2-9-6-10-11l-1-7-2-10c0-5-2-10-3-6%200%207-1%209-2%2010l-1%203-1%202c-2%201-2%205%200%206h2l-2%202c-2%202-3%203%200%202v1l1%202%202%201v1l1%201v1l5%202c1%201%202%202%201%203h3v2l1%206c0%204%201%204%203%206l3%203%201%201%201-1v-1l1%203%201%202%201%202c-1%205%200%207%202%207h4c2%201%202-1%200-4-1-1-1-4%201-4v2l1%201%202-1c1-1%201-1%201%201l-2%203c-1%201-1%201%201%201s3-1%203-2l1-1v3c-1%203-6%207-6%206l-2-1-2%201-2%201-2-1-1-5c-1-4-2-4-3-2v1c1-1%201-1%200%200l-1%202-1%201%201%201c1-1%202%203%201%207%200%202%200%203-2%202-1-1-1-1-1%201s0%202-1%200l-5-2c-3-1-13-12-11-13%201-1%200-2-1-4v-2l1-1h-2c-1%201-1%201-1-1v-3l-1%201v2c-2%200-2-2%200-4%201-2%201-2%201%200h3c0%202%200%202%201%200s0-3-2-4l-4-4-3-2-1-1v-1l-5-10c-6-13-8-15-9-12-1%201-1%200-1-2v-3c-2%200-2%200-1-1l1-6v-5l-1-5-1-2c1-1%200-12-1-18l-3-5c-2-2-2-2-4-1-1%202-1%209%201%207l1%201v4l-1%201v2c-3%200-3%203-1%205v1l-3-2-4-3c-3%200-5-2-15-17l-5-6c-1%200-5%201-3%202l1%203%201%202%202%201c-1%201%200%202%201%203v3l2%201c2-1%202%200%201%203l1%201c2%201%203%202%203%204v3l-5-3c-5-3-9-7-12-11s-6-6-8-4c-1%202-1%202%201%204l1%203%201%201h1l1%201%201%203%202%201v1l1%201h1l1%202v2l1-1h2v3c2%202%202%202%203%200h1l1%201c1%200%202%201%202%203%200%203-1%203-3%203l-1%201-3%201c-4%200-7-2-10-7-2-5-4-6-6-6-3%200-3%202%200%206l3%206%202%202c1-1%202%201%203%203%202%202%202%203%203%202%202-1%203-1%202%201l1%201%203%201h2l1%201h1c1-2%201-2%201%200v3l1-3c1-2%201-2%201%201s3%206%204%204h2l2%202c0%201%201%202%204%202h4l2-1c1%201%205-3%204-3l2-1c3%200%203%201%202%202v1c1%200%201%201-1%202l-3%202-1%201-2%201-3%201%202%201c3-1%203%200-1%201l-2%202h3c3%200%208%202%206%203v1l1%201%202%202c2%200%203%200%202%202v3l1%201v2c-1%201-1%201%202%201%202-1%203%200%203%201-1%201-1%201%200%200l1%201v1l1%201h1v2l-1%202%203-3%202-2-1%203-1%202%201-1%201-1%201%207-1%207v2c0%201%201%202%202%201l1%201c-1%202%200%202%201%202l2%201%201%201%203%201c3%202%203%202%202%204v1c2-1%203%200%200%201-1%202%200%205%202%205l1%201h-6c-1%201-1%200-1-2s-1-4-3-5l-3-2h-2l-1-1-3-1c-11-2-13-3-16-7-6-7-13-14-18-15-8-1-14-8-15-17-1-10-1-10-3-3-2%209-2%2014-1%2015l1%201%201%201%201%203v2l1-1%205%202%206%204%201%201%201%201h2l1%207%201%205c1-1%201-1%201%201%200%203%201%205%202%204h8l-1%201v1c1%202%203-1%203-4%200-1%200-2%201-1v3c0%202%200%202%201%201h2l2%203%202%201%201-1%201%202%201%202%201-1%202%201c2%201%202%201%201%202v1c1%201%201%200%202-1l1-1h1l1%201v1c4-1%205%203%201%206-3%203-3%203%201%203h1l1%201h1l-2%202%201%201c2%201%204%200%204-1l1-2c1-1%201-1%201%201v3l1-3h3c2%200%203%203%201%204v2l-1%202-2%204c0%202-2%205-6%209-1%201%200%202%203%201l5-5c5-6%207-7%204-2-3%204-2%206%205%206%204%201%208-1%208-4l1-1%201-1v-1c2-1-5-3-8-3-2%200-2%200%200-1h6l5%201h2l5%201c6%200%2014%203%2013%204h-10l-9%209c-1%200-6%206-7%209%200%203-2%205-3%204l-1%203c-1%202-1%203-2%202l-1%201-1%202v3c-1%201-3%203-3%205l-2%203-1%201c0%202%203%201%205-3l3-4%201-1%201-2c1%200%207-8%206-9l2-1v-1l1-1%201-1%203-1%201-1%204-2a970%20970%200%200019-3h5l3%201c1-1%203%200%203%201%201%202%201%202%202%201s8%203%208%205l1%201%203%201%204%201%201%202%201%201%206%205c6%206%207%206%205%201l-2-3-3-4-4-5-1-1-1-1-2-2v-1l-2-1-2-2c0-4-2-7-4-7l-1-1c1-2-2-4-4-3-1%200-2-4-1-5l1%201c0%201%206%201%2018-1h6l-4%201c-3%200-7%201-9%203l3%204c2%202%204%203%205%202l-1-1c-2-1-3-4-2-6%203-3%209%200%208%203-1%201%200%202%201%202l2-1%201-1c2-1%200-3-2-4s-2-1%200-1c4%201%205%201%206%203l5%203%204%202%202-2c2-2%202-3%201-4l-1-1v-2c-1-3%200-4%201-2h2l1%201%205%201c3%200%204%200%205-2%203-5%202-6-2-9-3-2-3-2-6-1s-7%205-6%207v1l-5-7v-1l1-2%202-1%204-2%202-1%201-1%202-2c0-2%200-3%202-4v-2h2v-1c-1-1%200-2%202-1l1-2v-2h1l1%201v-3h1l2-2%203-3%203-1%201-4c2%200%202-1%202-3%200-6%201-11%202-8%201%201%201%201%201-2v-4l1-1c1%201%201%201%200%200l1-2%202-1h1l1-1v-3h1l2%201h1v-1c-1-1-1-1%201-1l3-2c1-4%202-6%203-5l2-2%201-2-1%204v1l1%201v1l1-2v-1c1%200%203-1%203-3l2-1c1%201%201%201%201-1v-1h1c0-2%200-2%201-1h5v-3h1c0%202%200%202%203%201l2-3%201-1c1%201%202%200%203-1l2-1%201-2c0-2%200-2%201-1%200%202%201%202%202%200l2-3c-1-1-7%200-10%202-2%202-3%202-5-1-3-2-3-3-1-3v-3h1l1-1c2%201%204-1%203-3l2-2%201-2h2l-1-2-1-2%202%201c1%201%201%201%200%200h1l1-1h1v-1l-2-2h2v-1h1c2%200%202%200%201-1v-1l1-1c-1-1%200-1%200%200%202%200%202%200%202-2-1-1%200-2%201-3%202%200%201-2-1-2-2-1-7%204-13%2013l-4%204c-2%200-2%200-1-1l1-4%201-4v-2l1-1h1v-1l1-1%203-3%202-2h1l1-1v-1l1-1%201-2v-3c-1-1-5%201-7%205l-4%204-5%209-1%205c0%203-1%203-1%202-1-2-4-1-4%201h1c1-1%201-1%201%202l-1%204v2c-2%200-2%200-1%201v1l-2%201-1%201c-1%201-1%202-3%201l-3%201-1%201v-6l1-4-1-1c-1-1-1-1%201-1%201%201%202%200%201-1h2v-3c-2%200-2%200-1-1v-2l-1-1%202-1h1c-1-1-1-1%201-1%203-1%202-3-1-2-1%200-2%200-1-1%202%200%202%200%201-1s-1-1%201-1h2l-2-1c-2%200-2%200%200-1l3-2c2-2%202-1%201%203-1%203-1%204%201%206%202%203%203%203%203-1-1-2%200-3%201-2v-1c-1-1-1-1%201-1l-1-1-2-2h2l1-2h2l2-1v-2c-2%200-3-2%200-2v-2c-1-1-1-1%201-1h2l-2-1%201-1%201-1c-2%200-2%200%200-1%201-1%202-1%201-2l-1-2h1l1-2c0-3-4-3-5%200l-3%207c-3%207-5%2011-7%2010v-5c2%200%203-2%201-2v-5l1-2c2-2%202-6%200-7-2%200-5%205-5%208l-2%207-3%207-6%2012c-4%204-6%208-4%208v2l-2%202-1%201-1%201c0%204%200%205-2%207l-1%202-2%204-3%205h-1c-1-1-1-1-2%201v5l-1-1h-1l-3%202c-1%200-2%203-1%205l-1%201c-1-1-1%200-2%202l-2%203-1%203c0%202%200%202-1%201-1-2-2%201-1%204l-1%203-1%202%201%203-2-1%201%202c2%203%202%206%200%208l-3%202-1%201c0%202-6%205-7%204%200-1-5%203-5%205l-1%201c-2-1-4%200-4%201%201%201%200%202-2%203h-2l-1-1v2l-2%201-3-2c-3%200-4-1-2-2v-3c1%200%201-1-1-2v-3h-1l-1%201v-6h1l3-2%203-1c1%202%205-4%205-7%200-1%200-2%201-1l2-2c-1-3%200-4%201-2h2c1%200%202%200%201-2%200-1%200-2%202-2l2%201%202%201v-2l-2-3v-3l1-1v-5c0-2%200-2%201-1%201%202%201-1%201-8l1-4v-3c0-3%200-3%202-4l2-1%202-1h1l-1-1%202-4c2-1%203-3%202-3v-3l1-1a591%20591%200%20010-8c-2%200-4%204-3%206%201%201%200%203-2%204l-13%2013c-6%208-8%2013-6%2016%203%203-4%2011-10%2013l-6%203-4%203-1%202-2%201-1-1v-1c-2-2-3-10-2-10l1-1v-7c1-1%201-1%200%200l-2-1-2-1-1%203v1l-4%201c-2%202-5%201-5-2l3-1c2%200%203-1%203-2l1-1v-2h3c1-2%201-3-1-4v-1c2%200%202%200%201-1v-4l1-1v-1l-2%202h-1c-1-2-1-2-1%200l-1%202v-7l1-2%201-2%201%202c1%202%201%202%201-1%200-2%200-3%201-2l1%201c2-1%201-3-1-3l-2-2c1-1%206%201%206%203l1%201%201-1%201-2c1-1%201-1%201%201h1l1-1%201-1v-1c-2%201-3%200-1-2h3v-1l1-1%201%203c0%202%200%203%201%202%201-4%202-5%203-3%201%201%201%201%201-1-1-1%200-2%201-2l2-1%201-1h2c1-2%203-2%205-1h1c-1-2-1-2%201-2h4c2%200%203-2%202-4-2-2-10-1-12%201l-3%202c-2%200-3%200-3%202l-2%202v-1c0-2%200-2-2-2-1%201-2%200-3-1l-3-1c-1%200-2%200-1-1l-1-1v-1l-1-1v-2c-2%200-2%200-1-2%202-2%202-3%201-3v-1c2-2%202-2%200-2-2-1-2-1%201-3l4-4%201-3%203-1%203-1-2%202c-4%202-6%209-4%209l2-2c-1-1%200-2%201-1v-2h2l1-2%202-1%201-1h2l2-2%203-2%202-2c1-1%202-2%203-1v-1l1-2c1%200%202%200%202-2s-2-3-4-1h-1c0-3-10-2-14%202M37%2073c-1%203-1%205%201%204%202%200%202%200%201%201v1l2%207%201%201%201%201%201%202v1c-1%201-2%200-3-2-6-10-9-14-12-14l-2%201%201%201v1l2%203v3l4%203%203%204v1c2%203%200%202-4-1l-7-7c-3-4-5-6-7-4v5l1%202%202%201v2l1%201h1v1l2%201h1l1%201c-1%203%200%204%202%204h2l2%201%201-1%201-1h3v2c0%202%200%203%201%202l1%201v8c0%202%200%202%201%201v4c0%202-5%204-10%204-6%200-9%201-9%203l1%202v1l1%202h9c0%202%200%202%203%200l2-1%201%201%201-2%203%201h2l2%201%203%201v-1l1-1%204-1h1l1-1c1%200%201-1-1-2h1l2-1c-1-1-1-1%200%200l2-1c0-1%201-2%202-1v2c-2%201-2%201-1%202%202%201%203%200%202-2l1-1v-4c1-1%202%203%201%205l1%201c1-1%201-1%200%200l-1%202h2l1-1h1v1c0%202%200%202%201%201%201-2%202-2%202-1l-2%202c-2%203-2%204%201%203%201-1%202-1%203%201h2v1h3v2h4c1-1%201-1%201%201v1h1l-1%202c-1%201-1%201%200%200h2l1-1h1v5l1%201v1l2-2%201-2v4c0%203%200%203%202%202l1%202-1%203%202-3%202-2v2c0%202%202%203%203%201%201-1%201-1%201%201v2l1-2c1-2%201-2%201%201v2l1-2%201-1%201%201c0%202%200%202%201%201s1-1%201%201v3c1%201%201%200%201-1l1-3%201%202v2h1l1%201h2c1-1%201-1%203%202l2%202v1l1%202c1-1%202-7%200-8v-3l1-2v2l1%202%202%201v1l-1%202%202-1c1-1%201-1%202%201%201%201%201%201%201-2s-1-4-3-3l-1-1v-1l-2-1%201-1v-1l-1-1c-2%201-4%200-4-2l-1-2-1%201h-4l-2-1-2-3c-3%200-10-5-10-6l-5-5a412%20412%200%2001-27-27l-3-4-1-3-2-4-3-6c-2-6-4-7-7-2-1%202-1%202%202%202h3l-3%201-1%201v1c-1%201%201%209%203%209l1-1v-1l1%201v2c1%201%200%202-1%202l-1%201h3v2l3%202%201%202v1h-6c-4-1-5-1-4-2%202-1%203-4%201-4l-1-1c0-2-1-2-3-2-3%200-3%200-2-1%202-1%202-2%202-4v-2h1l-1-2c-1%201-3-1-4-4-6-13-8-16-11-13m359%205l-5%201c-3%200-10%208-14%2015l-4%206-3%2014c-2%2010-2%2012-5%2014l-3%203-5%202a3552%203552%200%2001-33%2022v1c-2%200-2%201-2%203s0%203-2%202v-4c-1-1-2%200-3%202-1%203-2%203-2%201-1-2-1-2-1%201%200%204%200%204-1%203h-2c0%202-1%205-2%203-1-1-1-1-3%201l-2%203%201%202%201%202v-2l2%201c1%201%201%201%201-1v-2l1-1v-1l1%201h2c0-2%201-2%201-1l1%201h2c2-1%202-1%203%201s2%202%202%201l1%201h2l-1-1c-2-2-1-3%201-2h2v1h3l2-3c0-2%200-2%202%200h1l1-1v-1h4c2%200%202-1%202-4h4c0-1%201-1%202%201%203%202%203%201%200-3l-1-3h3l1%201c-1%202%202%201%204-1v-2l1-1v-1l1-1h1l2-1c4%200%204%200%203-1v-2c2%200%202-1%202-3s3-2%204%200l1%201%201-2c1%201%202%200%203-1v-6l3-1v-1h4c1%201%201%201%202-1v-3l-1-1-1-1%201-1%203-1-2-1v-1c2-2%203-3%201-2l-1-1v-5l1-1c-1-1%200-2%201-2l1-4-1-2c-1%201-2-2-1-4l1-4c-1-2%202-8%203-7h1c0-1%201-3%203-3l3-1-1%201-7%209%202%201c1%200%202-1%201-2l1-1%203-2c2-4%203-4%201-3v-2c2-2%203-3%201-2l-1-1%201-1h2l1-1h-1c-1%200-1-3%201-6s1-4-3-1M216%2094v1l-1%201-2%201h-3c-2%200-2%201-1%204v1l-1%203%201%203v3l1%203v1h2v3l3-1c0-1%201-2%202-1%202%201%204-1%203-2l-1-1-1-1-2-1h-2l1-1v-7c2-1%202-1%201-2v-1l1-1%201-2%201-2h-1c-1%201-1%201-1-1h-1m130%202l-3%206c-3%205-5%207-9%207-5%200-12%206-18%2014-5%209-12%2012-27%2013l-5%202-3%202-1%202-1%201-3%206%202%206h2l3-1c1%201%203%200%204-2l3-1c0%201%204%200%206-3l3-1h2c1-1%202-2%203-1l1-1%202-2h3l2-1%201-1c0-1%201-4%202-3l1-1%202-3v-3c2%201%205-1%204-3-1-1%200-1%201-1v-1c-2%200-2-1-1-1l1-1%202-2%201-3h1l1-1h2l1-1v-1c1%201%201%200%202-1%200-2%201-2%203-2%201%201%202%200%202-1v-2l1%201%202-1c2-1%203-2%202-3h1c1%201%201%201%201-1l2-6c1-4%201-6-1-4m-148%2036v4c-1%205%206%207%208%202%200-3-1-5-5-5-2-1-2-1%201-1%204%200%208%202%209%204%200%201-5%207-6%206l-3%201c-2%201-3%201-7-2l-4-3%203-2c4-4%202-4-2%200l-5%202-2%202h-2c-1-1-1-1-1%201s0%202-1%201h-1c0%202-3%201-3-1v-2l-1%202-2%202%201%202%203%201c1-1%202%200%203%201h2l1%201%202%201v1c-2%201-2%201%200%201l2%201%202%201%204%201c1%201%203%202%204%201l2%201c-1%201%200%203%201%204h2l2-1h2c0-1%200-2%202-2l1-3%201-1c1%201%205-3%204-3l1-1%201%201%205-2h5c1%202%204%200%204-2v-4c-1%200-2%200-1%201%201%202-1%201-3-2l-5-2c-2%201-4%200-3-1v-1c-1%201-3%200-6-2-4-4-14-5-15-3M31%20152v2l1%201c0%203%204%205%206%205h1c-1%201-1%201%201%201h1l1%201h1c-1%201-1%201%201%201%203-1%203%200%200%201h1c2%200%202%200%201%201-2%201%200%203%202%202l1%201v1l1%201%201%203c2%201%202%201-1%201h-2l1%202%203%201h4l-4%201c-3%201-3%201-1%201s2%200%200%201c-3%201-3%201-1%201s2%200%201%201c-2%201%201%202%205%202h2l-4%201c-3%200-3%202%201%203%201%201%201%201-1%201l3%201%206%201H53l4%202%202%201c-1%200-2%200-1%201l2%201h3c2%200%201%202-1%203-1%201-1%201%201%201s2%200%201%202v8l3-1%202-2%201%202%202%202c1-1%201%200%201%202l1%203v-4c0-3%200-3%201-2%201%202%201%202%202%200%201-1%201-1%201%201h1v8h2v3c1%202%202-2%201-5l1-2%201%204c0%202%200%202%201%200%200-2%201-3%203-1l1-1%201-3v3c0%202%200%202%201%200s1-2%201%200-3%206-5%206l-1%201-1%202-2%203c0%202-5%206-9%209l-4%202-6-4c-8-4-10-4-6%201l6%204%202%201c0%201%2011%202%2013%201l2-1c1%201%204%200%203-1l1-1h1l1-1c2%200%203%200%202-2h5c3%200%207-2%206-5l1-1%201%201h1l1-1%202-1h6l-1-2v-1l3-1c2%201%203%200%203-1s-1-2-2-1l-2-1%201-1v-1l-1-2-4-2c-2-1-3-1-2-2l-1-1c-2%201-2%200-2-1l-3-3h8l2%202%201-1%202%201%202%202v1l1%201c2-1%203%200%205%202s2%202%202%200v-1l2-2h2l-1%202-1%201h2v-1l1-1%201%201h5l1-1h1l2-2%201%201h1c0-2%201-2%202-2h1l2-4%202-4c0-2%200-2-1-1h-2l-1-1-1-1h-3c-2%200-3-1-3-2l-2%201c-2%202-3%202-5%202l-1%202c1%202-1%205-3%205l-1-3h-1c-1%202-2%202-3%201l-1-1h-3a172%20172%200%2000-27-6l-6-1c-9%200-15-7-23-27l-6-8-3-4-1-1-1-1c1-1-2-4-5-4l-6-3c-3-3-7-3-8%200m-3%2013l-5%203c-2%201-2%202-2%204v4c-1%202-1%202%201%203h2l1-1c1%201%204-3%204-4l1-3h3c2-1%205%200%205%201h2v3h3c3-3-3-11-9-12-2-1-3-1-6%202m45%202l3%203%207%207%202%202%204%201h5l4%202%204%203%203%203c1-1%202%200%203%201l3%201h4c1-2%202-2%202-1h6c0-1%203-1%204%201%201%201%201%201%201-1l2-2%201%201v1c1-1%202%200%203%201s1%201%201-1l1-2v2h2c2-1%202-2%201-2v-2c1-2-1-7-3-7-9-1-13%200-15%202-4%203-9%203-14-1l-6-3c-9-1-14-2-19-6-3-3-6-4-9-5h-3l3%202m188%205v6c0%203-4%207-5%205h-2c-2%201-2%201%200%201%202%201%202%201%200%202s-4%203-4%206v2l1%201%203%201c3%200%204-1%205-3l1-1h1c2-1%202-2%200-3-1-1-1-1%201-1l1-2h2c1%202%202%202%202%201h1c1%201%202%202%203%201l1%201%201%201%201-3c0-2%200-3%201-2s4%202%206%201h2c2-1%206-1%206%201h5l1-1%202-1%201%201h2v2h2l2%201h1l1%201%202-1h4l4-1-1-1h-4l-2-1-1-3c-1-2-2-2-3%200h-2l-2-1-1-2-1-2-6-1-8-2-4-1h-6c-4-2-9-2-9-1%202%202-1%201-2-1h-3m117%203l-9%203c-6%201-7%201-16%2011-7%206-12%2010-14%2010-5%202-6%202-6%201l-3-1-9-1c-8-2-17-2-15-1%201%201%201%201-1%201l-4%201-5%202-1%201%201%201v1l-3%204c-1%201-1%201-1-1%201-1%201-2-1-3-1-1-2-1-2%201v6c2%200%200%202-3%202-3%201-5%204-4%205l2-1%201-1v2l1%201%201-1c0-2%204-3%204-1l2-1c1-3%201-3%201-1s2%203%202%201l1-2v2c0%202%200%202%202%202%203-1%203%200%203%202l1%201c1%200%202-1%202-3%201-2%201-1%201%202v5l2-4%201-2%201%201h1c0%202%203%202%204%201h1l1%202%201-1%201-1%201-3v-2l1%203c1%202%201%202%201%200s0-2%201-1c0%202%200%202%201%201l1-2%201-1c1-1%201%200%201%201l1%203%201-1c0-2%202-3%202-1h2l4-2%204-1h2c-1%202%204%203%205%201v-2l-1-2h1l4%202v-1l-1-1%202-2%201-2v2l2%201%202-1c-3-1-2-5%200-5s2%200%200-1l-1-1%202-1%202%201%203%202v-2c-2-1-2-1%200-1v-1l1-2v1l1%201%201-2%202-3%202-3%201-1c2%200%203%200%202-2h1l1%202v1c0%202%205-1%205-4l1-1%205-1h1l1%201h1c0%203%205%205%208%203l-1-4c-3-4-13-4-18%200l-3%203v-2l1-2%201-2h2l1-2c-1-3%200-3%206%200l6%201c2-1%202-1-1-1-4%200-2-2%202-2%203%200%202-2-2-3l-5-2h-9m-350%205l-5%201c-3%200-4%201-6%205s-2%209%200%209%205-3%204-5l2-1%202-2%201-1c1%201%202%200%203-2%202-3%202-3%202-1h1v-2l1%202c1%201%201%201%201-1s0-2%201%201l1%203%201-4v-2l-1-1c0-1-7-1-8%201m117%202c-2%202-2%206-1%206l1%203%201%204%201-1h2c4%200%207-3%206-5v-2l-2-4-2-1h-6m116%2015l1%201%201%201-2%201v1l-1%201-1%203c-1%202%200%202%202%202%201-1%202%200%202%201v2c1%200%202%201%201%202l2%202v1l1%201h3l1%201%201%201%202-2%201-1%201-1%202-3%201%202c1%202%201%202%201%200s0-2%202%200h1l1-3%201-1h-2c-1%202-2%201-3-1%200-2-1-3-2-2l-4-3c-2-3-4-4-5-3-2%200-2%200-1-1l-2-2h-5m-223%202c2%201%202%201%200%201h-4l-5%204c-9%204-9%204-12%203l-6-2H5l-2%202%202%202h3v2h4l1%202%201-1%201-2%201%202c2%202%202%202%202%200%201-1%201-1%201%201l1%203%201-2c-1-3%201-3%201%200%201%202%201%202%202%201l1-2v2l1%202v-2c0-2%200-2%201-1h1c0-1%201-2%204-1%203%200%204-1%204-2h2c0%202%201%202%201%201h1l1-1c0-1%201-1%201%201h3c0-2%200-2%201-1h2v-3h6l-1-1c-2%200-6-4-6-6s-1-3-5-3-5%200-4%201m199%2015h-2l-1%201-4%204-5%203-1%201-2%201-2%201-5%202a42%2042%200%2001-28%202%2056%2056%200%2001-14-8h-2l-2-1-3-1-2-1-3-1h-3l4%203v1l1%201%204%202%204%202c1-1%202%200%202%202l2%201h3l1%201%202%202%204%202h2c0%201%208%202%2011%201l6-1c7%200%2011-1%2012-2l4-2%204-3%202-1%203-2%201-2c2%200%209-8%208-8h-1m152%202c-2%202-3%202-6%202a17%2017%200%2000-8%201c-1%200-2%202-1%204h2l2%201h2l2-1c0-2%203-1%204%201h1l1-2%202-1%201-2c2%201%203-1%204-3%200-3-4-2-6%200m-141%205c-1%200-2%201-1%202l-1%201-1%201c0%201%200%202-2%201v4c-1%201-1%200-1-1h-1v3l-1%202-1%201-2%201c-2%200-2%200-1%201v3l-2%202-1%201v1h-1c0%202%202%201%206-2%207-5%2014-4%2020%201%204%205%207%205%203%200l-1-2-1-1-1-2h-2v-5l1-2h1l1-1h2l2-1a2167%202167%200%2000-4-7h-2c1-1%200-1-1-2l-2%201h-6m27%2019h-1l-1-1v3c0%202-1%203-2%201h-1c1%201%200%203-2%204l-2%202%203%201%203%203h-1c0-2-3-1-3%201s2%203%202%201c0-1%201-1%202%201h1v-2l3%202%202%202h3c2%200%205%202%204%204l1%201%202-2c0-3%202-1%202%202l2%204c2%200%202%200%201%201v1l1%201c0%204%205%206%208%203%201-1%201-1-1-2-3%200-2-3%201-4v1l-1%201h2c1-1%201-1%201%201-1%202%201%203%202%200l1%201h1l1-2c1%200%200-4-2-7-5-7-7-9-8-8l-1-1c1-1-1-2-6-3l-3-1-3-3c-2%200-3-2-4-3l-2-2c-2%200-2%200-1-1l1-2-2%201h-1c-1-1-1-1-2%201m-122%201l-2%202-2%202-2%202v1h1l2-1v1c-1%201%200%202%201%205l2%203h-2l-6-2-2%201%203%201%202%201c2%202%2017-1%2017-4h-4c-5%203-8%203-9%200%200-4%201-5%203-5%203%200%205%202%204%203h3c2-1-1-4-6-5l-3-1h3c3%200%205%201%207%203l5%203-3-5-1-2-1-1h-2c-2-2-8-3-8-2m88%201l-3%202%205%204c3%202%201%203-4%201s-5%200%200%202c7%203%2016%203%2020%200l3-1%203-1h-3c-12%202-16%202-16%201h1c2%201%206-1%205-2l1-1%202-1c3-5-8-8-14-4m-39%206v6l-1%201c-1%200-2%201-1%203%200%202%200%202-1%201h-1v1l1%201%202%203%202%202-1%201%203-1h3l1-2%201-1h1l-1-2h2v-3c1-3%200-5-5-7-3-2-3-2-1-2%201%200%202%200%201-1-1-3-4-3-5%200m-26%207c-1%200-2%201-1%203l-1%202v2c1%202%201%202-1%202-3-1-9%201-9%203v1c-2%201-2%209%200%209h1l1-1%203-2%202-2v-2l1-2c1%201%202%200%203-1l4-3h3l2-1c2%202%205-6%203-8h-11M0%20380v20h95a2418%202418%200%2000105%200h10l-1-4%201-11c1-8%203-11%2010-18v-2l2-2c4-3%202-3-20-3l-23%201c0%201%2010%207%2012%207v1c-1%201-1%201%202%202l3%201h-4c-4%200-10-2-10-3l-7-4h-2l-3-1-4-2-3-1h-10l-21-1-20%201v2c1%201%201%201-1%202v1l-1%201-1%201c2%200%202%200%201%201-3%204-4%205-5%209l-2%205v1l-1%201-1%201-7%208c-3%202-3%200%200-4l2-5%202-2%201-2c0-5-5-2-7%203l-1%202-1%201-1%201-1%202c1%201-3%208-5%209l-1-3c0-2%201-3%202-3v-1l1-5%201-5%201-3%201-6h-1l-1%201-3%201-1%202-2%204-1%202-1%203c0%203-4%208-5%207s1-10%203-13l1-1%201-3%203-8c-1-1-1%200-5%208-5%2010-7%2012-9%2011l-1-3%202-3%204-11%205-10H0v20m244-19c5%202%2013%2012%2015%2020%202%205%204%207%209%209l5%204%202%203h-4l-5-1h-1l-1-2-1%201c-1%201-1%201-1-1v-2l-1%202-1%203v-3c0-2%200-2-1-1h-1l-1-2c1-1%200-4-1-3l-2-1-1-1-1-2v-1h-1c0-2%200-2-1-1v-4l-1%202-1%201v-2h-1v-2c0-4%200-4-2%200l-2%201v-2l-1%202c-1%201-1%201-1-2%201-5%200-7-2-3-1%203-1%203-1%201s0-2-1-1c-1%202-1%202-1-1-1-2-1-2-3-1-1%202-1%202-1%200l-1%202-2%204-1-1-1-1-1%202h-1c-1-2-1-2-2%201l-3%203h-1l-2%203c-1%202-1%202%201%203l1%201h-1v1l-1%201c-2-1-3%201-1%202%201%201%200%205-1%205-2%200-3%201-3%202l5%201c7%200%207-1%207-10l1-4h1v-1h2v2l2-1c0-2%204-2%204-1s-1%202-2%201v1c1%201%201%201-1%201v2c2%201%203%201%205-2%202-2%202-2%202%200-1%202-1%202%201%202%200-1%201-1%200%200h3l4-1h1v1h2l1-2c2%200%200%203-2%204-1%201-1%201%201%201h1l1%201%201%201v4l62%201%2061-1c0-2%200-3%202-3s2%201%202%203l11%201h10v-40h-20l-20%201c0%201%201%202%206%202%205%201%209%203%206%203l-1%202c-1%203-11%202-11-1l-2-3-2-1c2-2-7-3-11-2-1%200-1%203%201%204v5h1c2-1%205-1%205%201-1%201-1%201%200%200l1%201v1l4%201%204%203v1l1%201h3v1l-1%201c0%202-2%202-4%201l-2%201c-1%201-1%201-1-1s-1-3-2-1l-2%201v-1c1-2-1-3-3-1h-2l1-1h-1l-1-2c0-2%200-2-1%200l-1%201-1-1-1-3c0-2%200-3-1-2h-7l-1-1h-3c-3%200-3%200%200-1l3-1h-5c-3-1-5-4-3-4%204-1%207-2%207-4h-12l-1%202v13c0%201-3%202-4%201l-2-3-1-8v-6h-35c-20%200-35%200-34%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"narrow":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAE10lEQVQ4y0VV+VOTVxR9CWEziWAMm0CCbC0hIGtAkEU+trAYRiC0gLEIRHYCRAalpCJKSsROaFV0pmg72GFsbQc7WseO0x9onS46OqiI2in2Pzm978XqD2++t957zrnnvY/JZDLwFhwcjB2hodDr9QgICICfwg8KhQJqtRpKlRKMMRiNRpjNZtHnLSwsDPn5+QgJCRFjHofJ5DLI5XIxERsbi66uLlgsFuTk5PgOyhgKCgqQlZWFnp4exMXFvQ1YU1OD4xMTIjAf+/n58S97u2HnTg06Ojpw9+7PqD9wAEqlUgSsqqrC6OgoXC4XEhISEBkZCZVahZGRUQwODgp2Ap0AQJ3ExETEx8eLiVCizZF0d3ejuLgYmZmZaGhogNfrFYFMJhPeS04WSdbW1nD48OG3gLRaLRjX6ejRo3BNuZBMGzk1vmg7ZIMklfuCkwyTJyaRlJSE8fFxlJSU4NatW4Iy3+vv7y+Qz87O+iinpKTg/PkLcDqdaCD9OI3U1FT09vahtrYWX129KhAuLy+jqbEJY2NjONJxRASTJEl8h4eH4XA4wLiQvHq5VASekS9Ym61Cr8XFRSwsLIhAKysrNL6EPkoyc2oGUpkkZOGu4MmvLF0R8giEOp2O9IkQmTIyMtDW1oay/fsxOTmJ27dvY8QxgrbWVtz47gbu3LmD5qYmIVNRURHs3XbcvHkTBXsLfFoGBQXBZrMJZFxDgyEFeXl5qKyoEHR5da9d+warq6uE7BSGSI7BgQHsLy1FeXk57HY7oqOjkZ6ejtzcXLDdu3ejrKxMZBwaGhIU6uvq0N7eDgtZp5qqmZ6WJpBzU1dQkP7+fjQ2NqLxYCNZbafQ/vr1676CGgwG9PX5xLdarVi8uCgq3HmkUwjOLZL8pnH0aWlGHKJkzc3NWFpaIvTX4PF4kE3BtGFaX1H+9xGvttvtRivpFUWey9izh2hJ4uZwCTjNEapkJqGNiIgQbCLCw8VZFV3PNxeB0dWTQU0TJlMuaojWrqhIMnsCoeyAuaqSaEpoIfQSSWOurkIvefNjKlgqIS6ka9ne1orKygohD7MctGJu3osLl76E94tLKJWq0NJqw8XLS8gxFaCoREJ+YQn2Uuvo6kGnvQ9RMXo0tbShoroOurhE2D7qwp8PHsNzbgHs3sls/P5pHn50JuLbgWicrWf4wRGHrzs1OGdh8B6U4XuHHhesCqz0RmHzcjWWu7Vw1zAsfhiEuVqGkxLDqjMJd6fSwdadDBvTGjz/RIlXMxr8O6/D5lQQXp3W4PXZGGy5w/ByWo0tTzRenlThqSuE9oVga1aDf9zheO3WYms6EM+OMTwZo1qsHw/ApluHF54kbM7F4/m8ERuzel/frcfGXBKNdfj78yw8PR2DF/Pv4+Vnqdg4E4PnnmQ8cydg3bUDjwnYkwl6Bn8dZrg/xPDbIH2pPRqX44FTLvp8/tG4Ag+PyfGLneHpZDD+cDCs9fvW/iJE6yeC8OCYPx6OB+I+rbFdWhU0Kn9sUzAcMJfh3k+raLc2IFBO76M6APvyMrDPtAelhTnwemYwMtAN7fZAKP0Z8rONsNCZzkNWZBjioQrg9pO982F2bh5aPmiFanvou0c3LByx+jhUm2vhGHWir38IBmP6m3Xfo7pNtZ0eXPoNUKz/AF596E+scDRiAAAAAElFTkSuQmCC","aspectRatio":1,"src":"/static/15287cf2b3985b156b9249162ec3eb44/502b1/soloDevArmy.png","srcSet":"/static/15287cf2b3985b156b9249162ec3eb44/f2e6d/soloDevArmy.png 114w,\n/static/15287cf2b3985b156b9249162ec3eb44/4ddba/soloDevArmy.png 229w,\n/static/15287cf2b3985b156b9249162ec3eb44/502b1/soloDevArmy.png 457w,\n/static/15287cf2b3985b156b9249162ec3eb44/7ddc2/soloDevArmy.png 686w,\n/static/15287cf2b3985b156b9249162ec3eb44/435bf/soloDevArmy.png 914w,\n/static/15287cf2b3985b156b9249162ec3eb44/6050d/soloDevArmy.png 1200w","srcWebp":"/static/15287cf2b3985b156b9249162ec3eb44/15384/soloDevArmy.webp","srcSetWebp":"/static/15287cf2b3985b156b9249162ec3eb44/31fce/soloDevArmy.webp 114w,\n/static/15287cf2b3985b156b9249162ec3eb44/e3e25/soloDevArmy.webp 229w,\n/static/15287cf2b3985b156b9249162ec3eb44/15384/soloDevArmy.webp 457w,\n/static/15287cf2b3985b156b9249162ec3eb44/0258d/soloDevArmy.webp 686w,\n/static/15287cf2b3985b156b9249162ec3eb44/64ea2/soloDevArmy.webp 914w,\n/static/15287cf2b3985b156b9249162ec3eb44/9000d/soloDevArmy.webp 1200w","sizes":"(max-width: 457px) 100vw, 457px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M0%20138v139l8-4c6-2%207-3%2010-2%206%203%2021%200%2019-4h-1l-3%202-4%201h-1c1-2%200-3-2-2h-4c1-3-1-3-2-1h-5c0-1-1-1-1%201l-2%202H8c-2-1-2-2%202-4l6-4h28c-3%201-3%202%201%202%201%200%202%200%201-1%200-1%2016-1%2020%201l1-1c-1-1%200-1%201-1l3-1%204-2%204-2%202-1c2%200%203-1%203-2l4-1h2l3-1h5l1-1h1v5h-1l-1%201h-1l-1%201v2h-3c1%201%201%201%200%200l-3-1v1c2%201%202%202%201%202v3l-1%203v2h-1c-2-2-4%200-3%202%201%203-1%202-3-1l-2-3%201%203c0%203%200%203-1%202s-1-1-1%201h-1c-1-1-1-1-1%202%200%202%200%203-1%202h-3c-3-3-3-2-1%203l1%205h17c15%200%2017%200%2017-2v-6c1-7%208-15%2015-16%206%200%2015-6%2014-8h3l3%202%202%201%201%203%201%202c1-1%201%200%201%201l1%201h1c0%202-3%202-4%201h-3l-2%201h2l3%201h-2c-2%200-2%200-1%201l-1%201h-1l-1%201-1%203-1%201c-1-2-4-2-4%200h-1c0-2-3%202-3%205%200%202%200%202-1%201%200-2-2-3-2%200l-1%201c-1-1-6%203-6%204a388%20388%200%200062-1c0-2%200-2%203-2l2-1h1l1%201v-3l1-2h2l2%201%201-1%201-1c1%201%202%200%202-1h1l1%202%201%201v5h-2c-2%200-2%200%200%202h22c1%202%209%201%2011-1s2-2%200-2c-2%201-2%200-2-2%201-3%201-3-1-1-2%203-3%203-2%200v-3h-3l2-2c3-2%203-3%200-2l-2-1c1-1%200-2-1-3v-1l-1-1v-1l1-1-1-1-2-1c-1-2%201-2%203%200%203%202%204%202%204%200l-2-1c0%201-1%201%200%200l-1-1v-1c1-2%205-2%205-1l1%201c1-1%203%200%204%202l3%202c2%200%202%200%201%201l-2%201c0%201%202%202%203%201h1v2c1%200%202%200%201%201h8c-1%202%203%205%204%204l2%201%202%201%204%203%203%202%204%203%202%203h17c16%200%2016%200%2015-2l1-2%203-1v-1c1-1%201%200%201%201h1c1-1%201-1%201%202v3h30c29%200%2033%200%2033-3h-2c-1%201-1%201-1-1v-1c-2%202-3%202-2-1l-1-1h-2l-1-4-2-1v-1l-1-1v-4l-2%202-2%203v-3c0-3%200-3-1-1s-1%202-1-2-2-5-2%200c0%202%200%202-1%201-1-2-1-2-1%200s0%202-1%200l-1-3v3c0%202%200%203-1%202%200-2-1-3-2-3l-1-4c-1-3-1-2-2%202v6l-1-4v-6c0-2%200-2-1-1h-1l-1%201-1%202v-2a292%20292%200%2001-2-5l-1-3-1-1v-1h2c2%200%202%200%201-1l2-1h4l6%201h2l16%204c4%202%207%202%2010%201%203-2%2018-3%2022-2%202%201%202%202%202%206v4h-4l-5-3h-1l-6%206h-1v4l2-1h1v2h-1c-1-1-1-1-1%201l1%202%201%203%201%204v3l1%201h5v-3h-2c0-2%200-2-2-2l-2-1%201-1%203-2v-1h3l-1-2v-1c0-1%202%200%203%202%205%205%205%2012%205-136V0h-29a152%20152%200%2000-30%201L170%200H0v138M239%2011l-17%2016-6%2014-1%201v1l-1%201-2%203c-1%202-1%203%201%204%202%202%203%204%201%204l-1%202v3l-2-3-2-1v3l-1%202c0%201%200%202-1%201l-1%201-1%203-1%203v1l-1-3-1-1v-1l-1-1v-2l-1-4c-2-1-2-2-1-4%207-10%204-25-5-30l-6-7-3-4v3c0%203%201%204%202%205l1%202c-1%200%200%202%202%203%203%202%203%202%202%2012l-1%2011v4l-1%201h-2l1%202v1c-1%200-2%201-1%202%200%202%200%202%201%201%201-2%204-2%205%200s-2%204-4%203l-3-1%201%202%202%202%201%201-1%202-2%202%202-1%203%201h-1c-2%200-2%200-2%202h1c1-1%201-1%201%201v1c1-2%203%200%203%203v4l1%202v1l-2-1-1-1v2l1%202c1%200%204%201%204%203h1l2-10-1-1v-6l-1-4%202%205c2%207%202%2020%200%2017h-1v1l1%203-1%202-1%201v1l-2%205c-1%204-4%205-4%202%200-1%200-2-1-1l-1-1v-2c-1%201-2%200-2-1l-1-1-1-1c0-2%200-2-1-1-1%202-1%201-2-3%200-7-1-10-4-11l-7-2c-6-2-9-6-10-11l-1-7-2-10c0-5-2-10-3-6%200%207-1%209-2%2010l-1%203-1%202c-2%201-2%205%200%206h2l-2%202c-2%202-3%203%200%202v1l1%202%202%201v1l1%201v1l5%202c1%201%202%202%201%203h3v2l1%206c0%204%201%204%203%206l3%203%201%201%201-1v-1l1%203%201%202%201%202c-1%205%200%207%202%207h4c2%201%202-1%200-4-1-1-1-4%201-4v2l1%201%202-1c1-1%201-1%201%201l-2%203c-1%201-1%201%201%201s3-1%203-2l1-1v3c-1%203-6%207-6%206l-2-1-2%201-2%201-2-1-1-5c-1-4-2-4-3-2v1c1-1%201-1%200%200l-1%202-1%201%201%201c1-1%202%203%201%207%200%202%200%203-2%202-1-1-1-1-1%201s0%202-1%200l-5-2c-3-1-13-12-11-13%201-1%200-2-1-4v-2l1-1h-2c-1%201-1%201-1-1v-3l-1%201v2c-2%200-2-2%200-4%201-2%201-2%201%200h3c0%202%200%202%201%200s0-3-2-4l-4-4-3-2-1-1v-1l-5-10c-6-13-8-15-9-12-1%201-1%200-1-2v-3c-2%200-2%200-1-1l1-6v-5l-1-5-1-2c1-1%200-12-1-18l-3-5c-2-2-2-2-4-1-1%202-1%209%201%207l1%201v4l-1%201v2c-3%200-3%203-1%205v1l-3-2-4-3c-3%200-5-2-15-17l-5-6c-1%200-5%201-3%202l1%203%201%202%202%201c-1%201%200%202%201%203v3l2%201c2-1%202%200%201%203l1%201c2%201%203%202%203%204v3l-5-3c-5-3-9-7-12-11s-6-6-8-4c-1%202-1%202%201%204l1%203%201%201h1l1%201%201%203%202%201v1l1%201h1l1%202v2l1-1h2v3c2%202%202%202%203%200h1l1%201c1%200%202%201%202%203%200%203-1%203-3%203l-1%201-3%201c-4%200-7-2-10-7-2-5-4-6-6-6-3%200-3%202%200%206l3%206%202%202c1-1%202%201%203%203%202%202%202%203%203%202%202-1%203-1%202%201l1%201%203%201h2l1%201h1c1-2%201-2%201%200v3l1-3c1-2%201-2%201%201s3%206%204%204h2l2%202c0%201%201%202%204%202h4l2-1c1%201%205-3%204-3l2-1c3%200%203%201%202%202v1c1%200%201%201-1%202l-3%202-1%201-2%201-3%201%202%201c3-1%203%200-1%201l-2%202h3c3%200%208%202%206%203v1l1%201%202%202c2%200%203%200%202%202v3l1%201v2c-1%201-1%201%202%201%202-1%203%200%203%201-1%201-1%201%200%200l1%201v1l1%201h1v2l-1%202%203-3%202-2-1%203-1%202%201-1%201-1%201%207-1%207v2c0%201%201%202%202%201l1%201c-1%202%200%202%201%202l2%201%201%201%203%201c3%202%203%202%202%204v1c2-1%203%200%200%201-1%202%200%205%202%205l1%201h-6c-1%201-1%200-1-2s-1-4-3-5l-3-2h-2l-1-1-3-1c-11-2-13-3-16-7-6-7-13-14-18-15-8-1-14-8-15-17-1-10-1-10-3-3-2%209-2%2014-1%2015l1%201%201%201%201%203v2l1-1%205%202%206%204%201%201%201%201h2l1%207%201%205c1-1%201-1%201%201%200%203%201%205%202%204h8l-1%201v1c1%202%203-1%203-4%200-1%200-2%201-1v3c0%202%200%202%201%201h2l2%203%202%201%201-1%201%202%201%202%201-1%202%201c2%201%202%201%201%202v1c1%201%201%200%202-1l1-1h1l1%201v1c4-1%205%203%201%206-3%203-3%203%201%203h1l1%201h1l-2%202%201%201c2%201%204%200%204-1l1-2c1-1%201-1%201%201v3l1-3h3c2%200%203%203%201%204v2l-1%202-2%204c0%202-2%205-6%209-1%201%200%202%203%201l5-5c5-6%207-7%204-2-3%204-2%206%205%206%204%201%208-1%208-4l1-1%201-1v-1c2-1-5-3-8-3-2%200-2%200%200-1h6l5%201h2l5%201c6%200%2014%203%2013%204h-10l-9%209c-1%200-6%206-7%209%200%203-2%205-3%204l-1%203c-1%202-1%203-2%202l-1%201-1%202v3c-1%201-3%203-3%205l-2%203-1%201c0%202%203%201%205-3l3-4%201-1%201-2c1%200%207-8%206-9l2-1v-1l1-1%201-1%203-1%201-1%204-2a970%20970%200%200019-3h5l3%201c1-1%203%200%203%201%201%202%201%202%202%201s8%203%208%205l1%201%203%201%204%201%201%202%201%201%206%205c6%206%207%206%205%201l-2-3-3-4-4-5-1-1-1-1-2-2v-1l-2-1-2-2c0-4-2-7-4-7l-1-1c1-2-2-4-4-3-1%200-2-4-1-5l1%201c0%201%206%201%2018-1h6l-4%201c-3%200-7%201-9%203l3%204c2%202%204%203%205%202l-1-1c-2-1-3-4-2-6%203-3%209%200%208%203-1%201%200%202%201%202l2-1%201-1c2-1%200-3-2-4s-2-1%200-1c4%201%205%201%206%203l5%203%204%202%202-2c2-2%202-3%201-4l-1-1v-2c-1-3%200-4%201-2h2l1%201%205%201c3%200%204%200%205-2%203-5%202-6-2-9-3-2-3-2-6-1s-7%205-6%207v1l-5-7v-1l1-2%202-1%204-2%202-1%201-1%202-2c0-2%200-3%202-4v-2h2v-1c-1-1%200-2%202-1l1-2v-2h1l1%201v-3h1l2-2%203-3%203-1%201-4c2%200%202-1%202-3%200-6%201-11%202-8%201%201%201%201%201-2v-4l1-1c1%201%201%201%200%200l1-2%202-1h1l1-1v-3h1l2%201h1v-1c-1-1-1-1%201-1l3-2c1-4%202-6%203-5l2-2%201-2-1%204v1l1%201v1l1-2v-1c1%200%203-1%203-3l2-1c1%201%201%201%201-1v-1h1c0-2%200-2%201-1h5v-3h1c0%202%200%202%203%201l2-3%201-1c1%201%202%200%203-1l2-1%201-2c0-2%200-2%201-1%200%202%201%202%202%200l2-3c-1-1-7%200-10%202-2%202-3%202-5-1-3-2-3-3-1-3v-3h1l1-1c2%201%204-1%203-3l2-2%201-2h2l-1-2-1-2%202%201c1%201%201%201%200%200h1l1-1h1v-1l-2-2h2v-1h1c2%200%202%200%201-1v-1l1-1c-1-1%200-1%200%200%202%200%202%200%202-2-1-1%200-2%201-3%202%200%201-2-1-2-2-1-7%204-13%2013l-4%204c-2%200-2%200-1-1l1-4%201-4v-2l1-1h1v-1l1-1%203-3%202-2h1l1-1v-1l1-1%201-2v-3c-1-1-5%201-7%205l-4%204-5%209-1%205c0%203-1%203-1%202-1-2-4-1-4%201h1c1-1%201-1%201%202l-1%204v2c-2%200-2%200-1%201v1l-2%201-1%201c-1%201-1%202-3%201l-3%201-1%201v-6l1-4-1-1c-1-1-1-1%201-1%201%201%202%200%201-1h2v-3c-2%200-2%200-1-1v-2l-1-1%202-1h1c-1-1-1-1%201-1%203-1%202-3-1-2-1%200-2%200-1-1%202%200%202%200%201-1s-1-1%201-1h2l-2-1c-2%200-2%200%200-1l3-2c2-2%202-1%201%203-1%203-1%204%201%206%202%203%203%203%203-1-1-2%200-3%201-2v-1c-1-1-1-1%201-1l-1-1-2-2h2l1-2h2l2-1v-2c-2%200-3-2%200-2v-2c-1-1-1-1%201-1h2l-2-1%201-1%201-1c-2%200-2%200%200-1%201-1%202-1%201-2l-1-2h1l1-2c0-3-4-3-5%200l-3%207c-3%207-5%2011-7%2010v-5c2%200%203-2%201-2v-5l1-2c2-2%202-6%200-7-2%200-5%205-5%208l-2%207-3%207-6%2012c-4%204-6%208-4%208v2l-2%202-1%201-1%201c0%204%200%205-2%207l-1%202-2%204-3%205h-1c-1-1-1-1-2%201v5l-1-1h-1l-3%202c-1%200-2%203-1%205l-1%201c-1-1-1%200-2%202l-2%203-1%203c0%202%200%202-1%201-1-2-2%201-1%204l-1%203-1%202%201%203-2-1%201%202c2%203%202%206%200%208l-3%202-1%201c0%202-6%205-7%204%200-1-5%203-5%205l-1%201c-2-1-4%200-4%201%201%201%200%202-2%203h-2l-1-1v2l-2%201-3-2c-3%200-4-1-2-2v-3c1%200%201-1-1-2v-3h-1l-1%201v-6h1l3-2%203-1c1%202%205-4%205-7%200-1%200-2%201-1l2-2c-1-3%200-4%201-2h2c1%200%202%200%201-2%200-1%200-2%202-2l2%201%202%201v-2l-2-3v-3l1-1v-5c0-2%200-2%201-1%201%202%201-1%201-8l1-4v-3c0-3%200-3%202-4l2-1%202-1h1l-1-1%202-4c2-1%203-3%202-3v-3l1-1a591%20591%200%20010-8c-2%200-4%204-3%206%201%201%200%203-2%204l-13%2013c-6%208-8%2013-6%2016%203%203-4%2011-10%2013l-6%203-4%203-1%202-2%201-1-1v-1c-2-2-3-10-2-10l1-1v-7c1-1%201-1%200%200l-2-1-2-1-1%203v1l-4%201c-2%202-5%201-5-2l3-1c2%200%203-1%203-2l1-1v-2h3c1-2%201-3-1-4v-1c2%200%202%200%201-1v-4l1-1v-1l-2%202h-1c-1-2-1-2-1%200l-1%202v-7l1-2%201-2%201%202c1%202%201%202%201-1%200-2%200-3%201-2l1%201c2-1%201-3-1-3l-2-2c1-1%206%201%206%203l1%201%201-1%201-2c1-1%201-1%201%201h1l1-1%201-1v-1c-2%201-3%200-1-2h3v-1l1-1%201%203c0%202%200%203%201%202%201-4%202-5%203-3%201%201%201%201%201-1-1-1%200-2%201-2l2-1%201-1h2c1-2%203-2%205-1h1c-1-2-1-2%201-2h4c2%200%203-2%202-4-2-2-10-1-12%201l-3%202c-2%200-3%200-3%202l-2%202v-1c0-2%200-2-2-2-1%201-2%200-3-1l-3-1c-1%200-2%200-1-1l-1-1v-1l-1-1v-2c-2%200-2%200-1-2%202-2%202-3%201-3v-1c2-2%202-2%200-2-2-1-2-1%201-3l4-4%201-3%203-1%203-1-2%202c-4%202-6%209-4%209l2-2c-1-1%200-2%201-1v-2h2l1-2%202-1%201-1h2l2-2%203-2%202-2c1-1%202-2%203-1v-1l1-2c1%200%202%200%202-2s-2-3-4-1h-1c0-3-10-2-14%202M37%2073c-1%203-1%205%201%204%202%200%202%200%201%201v1l2%207%201%201%201%201%201%202v1c-1%201-2%200-3-2-6-10-9-14-12-14l-2%201%201%201v1l2%203v3l4%203%203%204v1c2%203%200%202-4-1l-7-7c-3-4-5-6-7-4v5l1%202%202%201v2l1%201h1v1l2%201h1l1%201c-1%203%200%204%202%204h2l2%201%201-1%201-1h3v2c0%202%200%203%201%202l1%201v8c0%202%200%202%201%201v4c0%202-5%204-10%204-6%200-9%201-9%203l1%202v1l1%202h9c0%202%200%202%203%200l2-1%201%201%201-2%203%201h2l2%201%203%201v-1l1-1%204-1h1l1-1c1%200%201-1-1-2h1l2-1c-1-1-1-1%200%200l2-1c0-1%201-2%202-1v2c-2%201-2%201-1%202%202%201%203%200%202-2l1-1v-4c1-1%202%203%201%205l1%201c1-1%201-1%200%200l-1%202h2l1-1h1v1c0%202%200%202%201%201%201-2%202-2%202-1l-2%202c-2%203-2%204%201%203%201-1%202-1%203%201h2v1h3v2h4c1-1%201-1%201%201v1h1l-1%202c-1%201-1%201%200%200h2l1-1h1v5l1%201v1l2-2%201-2v4c0%203%200%203%202%202l1%202-1%203%202-3%202-2v2c0%202%202%203%203%201%201-1%201-1%201%201v2l1-2c1-2%201-2%201%201v2l1-2%201-1%201%201c0%202%200%202%201%201s1-1%201%201v3c1%201%201%200%201-1l1-3%201%202v2h1l1%201h2c1-1%201-1%203%202l2%202v1l1%202c1-1%202-7%200-8v-3l1-2v2l1%202%202%201v1l-1%202%202-1c1-1%201-1%202%201%201%201%201%201%201-2s-1-4-3-3l-1-1v-1l-2-1%201-1v-1l-1-1c-2%201-4%200-4-2l-1-2-1%201h-4l-2-1-2-3c-3%200-10-5-10-6l-5-5a412%20412%200%2001-27-27l-3-4-1-3-2-4-3-6c-2-6-4-7-7-2-1%202-1%202%202%202h3l-3%201-1%201v1c-1%201%201%209%203%209l1-1v-1l1%201v2c1%201%200%202-1%202l-1%201h3v2l3%202%201%202v1h-6c-4-1-5-1-4-2%202-1%203-4%201-4l-1-1c0-2-1-2-3-2-3%200-3%200-2-1%202-1%202-2%202-4v-2h1l-1-2c-1%201-3-1-4-4-6-13-8-16-11-13m359%205l-5%201c-3%200-10%208-14%2015l-4%206-3%2014c-2%2010-2%2012-5%2014l-3%203-5%202a3552%203552%200%2001-33%2022v1c-2%200-2%201-2%203s0%203-2%202v-4c-1-1-2%200-3%202-1%203-2%203-2%201-1-2-1-2-1%201%200%204%200%204-1%203h-2c0%202-1%205-2%203-1-1-1-1-3%201l-2%203%201%202%201%202v-2l2%201c1%201%201%201%201-1v-2l1-1v-1l1%201h2c0-2%201-2%201-1l1%201h2c2-1%202-1%203%201s2%202%202%201l1%201h2l-1-1c-2-2-1-3%201-2h2v1h3l2-3c0-2%200-2%202%200h1l1-1v-1h4c2%200%202-1%202-4h4c0-1%201-1%202%201%203%202%203%201%200-3l-1-3h3l1%201c-1%202%202%201%204-1v-2l1-1v-1l1-1h1l2-1c4%200%204%200%203-1v-2c2%200%202-1%202-3s3-2%204%200l1%201%201-2c1%201%202%200%203-1v-6l3-1v-1h4c1%201%201%201%202-1v-3l-1-1-1-1%201-1%203-1-2-1v-1c2-2%203-3%201-2l-1-1v-5l1-1c-1-1%200-2%201-2l1-4-1-2c-1%201-2-2-1-4l1-4c-1-2%202-8%203-7h1c0-1%201-3%203-3l3-1-1%201-7%209%202%201c1%200%202-1%201-2l1-1%203-2c2-4%203-4%201-3v-2c2-2%203-3%201-2l-1-1%201-1h2l1-1h-1c-1%200-1-3%201-6s1-4-3-1M216%2094v1l-1%201-2%201h-3c-2%200-2%201-1%204v1l-1%203%201%203v3l1%203v1h2v3l3-1c0-1%201-2%202-1%202%201%204-1%203-2l-1-1-1-1-2-1h-2l1-1v-7c2-1%202-1%201-2v-1l1-1%201-2%201-2h-1c-1%201-1%201-1-1h-1m130%202l-3%206c-3%205-5%207-9%207-5%200-12%206-18%2014-5%209-12%2012-27%2013l-5%202-3%202-1%202-1%201-3%206%202%206h2l3-1c1%201%203%200%204-2l3-1c0%201%204%200%206-3l3-1h2c1-1%202-2%203-1l1-1%202-2h3l2-1%201-1c0-1%201-4%202-3l1-1%202-3v-3c2%201%205-1%204-3-1-1%200-1%201-1v-1c-2%200-2-1-1-1l1-1%202-2%201-3h1l1-1h2l1-1v-1c1%201%201%200%202-1%200-2%201-2%203-2%201%201%202%200%202-1v-2l1%201%202-1c2-1%203-2%202-3h1c1%201%201%201%201-1l2-6c1-4%201-6-1-4m-148%2036v4c-1%205%206%207%208%202%200-3-1-5-5-5-2-1-2-1%201-1%204%200%208%202%209%204%200%201-5%207-6%206l-3%201c-2%201-3%201-7-2l-4-3%203-2c4-4%202-4-2%200l-5%202-2%202h-2c-1-1-1-1-1%201s0%202-1%201h-1c0%202-3%201-3-1v-2l-1%202-2%202%201%202%203%201c1-1%202%200%203%201h2l1%201%202%201v1c-2%201-2%201%200%201l2%201%202%201%204%201c1%201%203%202%204%201l2%201c-1%201%200%203%201%204h2l2-1h2c0-1%200-2%202-2l1-3%201-1c1%201%205-3%204-3l1-1%201%201%205-2h5c1%202%204%200%204-2v-4c-1%200-2%200-1%201%201%202-1%201-3-2l-5-2c-2%201-4%200-3-1v-1c-1%201-3%200-6-2-4-4-14-5-15-3M31%20152v2l1%201c0%203%204%205%206%205h1c-1%201-1%201%201%201h1l1%201h1c-1%201-1%201%201%201%203-1%203%200%200%201h1c2%200%202%200%201%201-2%201%200%203%202%202l1%201v1l1%201%201%203c2%201%202%201-1%201h-2l1%202%203%201h4l-4%201c-3%201-3%201-1%201s2%200%200%201c-3%201-3%201-1%201s2%200%201%201c-2%201%201%202%205%202h2l-4%201c-3%200-3%202%201%203%201%201%201%201-1%201l3%201%206%201H53l4%202%202%201c-1%200-2%200-1%201l2%201h3c2%200%201%202-1%203-1%201-1%201%201%201s2%200%201%202v8l3-1%202-2%201%202%202%202c1-1%201%200%201%202l1%203v-4c0-3%200-3%201-2%201%202%201%202%202%200%201-1%201-1%201%201h1v8h2v3c1%202%202-2%201-5l1-2%201%204c0%202%200%202%201%200%200-2%201-3%203-1l1-1%201-3v3c0%202%200%202%201%200s1-2%201%200-3%206-5%206l-1%201-1%202-2%203c0%202-5%206-9%209l-4%202-6-4c-8-4-10-4-6%201l6%204%202%201c0%201%2011%202%2013%201l2-1c1%201%204%200%203-1l1-1h1l1-1c2%200%203%200%202-2h5c3%200%207-2%206-5l1-1%201%201h1l1-1%202-1h6l-1-2v-1l3-1c2%201%203%200%203-1s-1-2-2-1l-2-1%201-1v-1l-1-2-4-2c-2-1-3-1-2-2l-1-1c-2%201-2%200-2-1l-3-3h8l2%202%201-1%202%201%202%202v1l1%201c2-1%203%200%205%202s2%202%202%200v-1l2-2h2l-1%202-1%201h2v-1l1-1%201%201h5l1-1h1l2-2%201%201h1c0-2%201-2%202-2h1l2-4%202-4c0-2%200-2-1-1h-2l-1-1-1-1h-3c-2%200-3-1-3-2l-2%201c-2%202-3%202-5%202l-1%202c1%202-1%205-3%205l-1-3h-1c-1%202-2%202-3%201l-1-1h-3a172%20172%200%2000-27-6l-6-1c-9%200-15-7-23-27l-6-8-3-4-1-1-1-1c1-1-2-4-5-4l-6-3c-3-3-7-3-8%200m-3%2013l-5%203c-2%201-2%202-2%204v4c-1%202-1%202%201%203h2l1-1c1%201%204-3%204-4l1-3h3c2-1%205%200%205%201h2v3h3c3-3-3-11-9-12-2-1-3-1-6%202m45%202l3%203%207%207%202%202%204%201h5l4%202%204%203%203%203c1-1%202%200%203%201l3%201h4c1-2%202-2%202-1h6c0-1%203-1%204%201%201%201%201%201%201-1l2-2%201%201v1c1-1%202%200%203%201s1%201%201-1l1-2v2h2c2-1%202-2%201-2v-2c1-2-1-7-3-7-9-1-13%200-15%202-4%203-9%203-14-1l-6-3c-9-1-14-2-19-6-3-3-6-4-9-5h-3l3%202m188%205v6c0%203-4%207-5%205h-2c-2%201-2%201%200%201%202%201%202%201%200%202s-4%203-4%206v2l1%201%203%201c3%200%204-1%205-3l1-1h1c2-1%202-2%200-3-1-1-1-1%201-1l1-2h2c1%202%202%202%202%201h1c1%201%202%202%203%201l1%201%201%201%201-3c0-2%200-3%201-2s4%202%206%201h2c2-1%206-1%206%201h5l1-1%202-1%201%201h2v2h2l2%201h1l1%201%202-1h4l4-1-1-1h-4l-2-1-1-3c-1-2-2-2-3%200h-2l-2-1-1-2-1-2-6-1-8-2-4-1h-6c-4-2-9-2-9-1%202%202-1%201-2-1h-3m117%203l-9%203c-6%201-7%201-16%2011-7%206-12%2010-14%2010-5%202-6%202-6%201l-3-1-9-1c-8-2-17-2-15-1%201%201%201%201-1%201l-4%201-5%202-1%201%201%201v1l-3%204c-1%201-1%201-1-1%201-1%201-2-1-3-1-1-2-1-2%201v6c2%200%200%202-3%202-3%201-5%204-4%205l2-1%201-1v2l1%201%201-1c0-2%204-3%204-1l2-1c1-3%201-3%201-1s2%203%202%201l1-2v2c0%202%200%202%202%202%203-1%203%200%203%202l1%201c1%200%202-1%202-3%201-2%201-1%201%202v5l2-4%201-2%201%201h1c0%202%203%202%204%201h1l1%202%201-1%201-1%201-3v-2l1%203c1%202%201%202%201%200s0-2%201-1c0%202%200%202%201%201l1-2%201-1c1-1%201%200%201%201l1%203%201-1c0-2%202-3%202-1h2l4-2%204-1h2c-1%202%204%203%205%201v-2l-1-2h1l4%202v-1l-1-1%202-2%201-2v2l2%201%202-1c-3-1-2-5%200-5s2%200%200-1l-1-1%202-1%202%201%203%202v-2c-2-1-2-1%200-1v-1l1-2v1l1%201%201-2%202-3%202-3%201-1c2%200%203%200%202-2h1l1%202v1c0%202%205-1%205-4l1-1%205-1h1l1%201h1c0%203%205%205%208%203l-1-4c-3-4-13-4-18%200l-3%203v-2l1-2%201-2h2l1-2c-1-3%200-3%206%200l6%201c2-1%202-1-1-1-4%200-2-2%202-2%203%200%202-2-2-3l-5-2h-9m-350%205l-5%201c-3%200-4%201-6%205s-2%209%200%209%205-3%204-5l2-1%202-2%201-1c1%201%202%200%203-2%202-3%202-3%202-1h1v-2l1%202c1%201%201%201%201-1s0-2%201%201l1%203%201-4v-2l-1-1c0-1-7-1-8%201m117%202c-2%202-2%206-1%206l1%203%201%204%201-1h2c4%200%207-3%206-5v-2l-2-4-2-1h-6m116%2015l1%201%201%201-2%201v1l-1%201-1%203c-1%202%200%202%202%202%201-1%202%200%202%201v2c1%200%202%201%201%202l2%202v1l1%201h3l1%201%201%201%202-2%201-1%201-1%202-3%201%202c1%202%201%202%201%200s0-2%202%200h1l1-3%201-1h-2c-1%202-2%201-3-1%200-2-1-3-2-2l-4-3c-2-3-4-4-5-3-2%200-2%200-1-1l-2-2h-5m-223%202c2%201%202%201%200%201h-4l-5%204c-9%204-9%204-12%203l-6-2H5l-2%202%202%202h3v2h4l1%202%201-1%201-2%201%202c2%202%202%202%202%200%201-1%201-1%201%201l1%203%201-2c-1-3%201-3%201%200%201%202%201%202%202%201l1-2v2l1%202v-2c0-2%200-2%201-1h1c0-1%201-2%204-1%203%200%204-1%204-2h2c0%202%201%202%201%201h1l1-1c0-1%201-1%201%201h3c0-2%200-2%201-1h2v-3h6l-1-1c-2%200-6-4-6-6s-1-3-5-3-5%200-4%201m199%2015h-2l-1%201-4%204-5%203-1%201-2%201-2%201-5%202a42%2042%200%2001-28%202%2056%2056%200%2001-14-8h-2l-2-1-3-1-2-1-3-1h-3l4%203v1l1%201%204%202%204%202c1-1%202%200%202%202l2%201h3l1%201%202%202%204%202h2c0%201%208%202%2011%201l6-1c7%200%2011-1%2012-2l4-2%204-3%202-1%203-2%201-2c2%200%209-8%208-8h-1m152%202c-2%202-3%202-6%202a17%2017%200%2000-8%201c-1%200-2%202-1%204h2l2%201h2l2-1c0-2%203-1%204%201h1l1-2%202-1%201-2c2%201%203-1%204-3%200-3-4-2-6%200m-141%205c-1%200-2%201-1%202l-1%201-1%201c0%201%200%202-2%201v4c-1%201-1%200-1-1h-1v3l-1%202-1%201-2%201c-2%200-2%200-1%201v3l-2%202-1%201v1h-1c0%202%202%201%206-2%207-5%2014-4%2020%201%204%205%207%205%203%200l-1-2-1-1-1-2h-2v-5l1-2h1l1-1h2l2-1a2167%202167%200%2000-4-7h-2c1-1%200-1-1-2l-2%201h-6m27%2019h-1l-1-1v3c0%202-1%203-2%201h-1c1%201%200%203-2%204l-2%202%203%201%203%203h-1c0-2-3-1-3%201s2%203%202%201c0-1%201-1%202%201h1v-2l3%202%202%202h3c2%200%205%202%204%204l1%201%202-2c0-3%202-1%202%202l2%204c2%200%202%200%201%201v1l1%201c0%204%205%206%208%203%201-1%201-1-1-2-3%200-2-3%201-4v1l-1%201h2c1-1%201-1%201%201-1%202%201%203%202%200l1%201h1l1-2c1%200%200-4-2-7-5-7-7-9-8-8l-1-1c1-1-1-2-6-3l-3-1-3-3c-2%200-3-2-4-3l-2-2c-2%200-2%200-1-1l1-2-2%201h-1c-1-1-1-1-2%201m-122%201l-2%202-2%202-2%202v1h1l2-1v1c-1%201%200%202%201%205l2%203h-2l-6-2-2%201%203%201%202%201c2%202%2017-1%2017-4h-4c-5%203-8%203-9%200%200-4%201-5%203-5%203%200%205%202%204%203h3c2-1-1-4-6-5l-3-1h3c3%200%205%201%207%203l5%203-3-5-1-2-1-1h-2c-2-2-8-3-8-2m88%201l-3%202%205%204c3%202%201%203-4%201s-5%200%200%202c7%203%2016%203%2020%200l3-1%203-1h-3c-12%202-16%202-16%201h1c2%201%206-1%205-2l1-1%202-1c3-5-8-8-14-4m-39%206v6l-1%201c-1%200-2%201-1%203%200%202%200%202-1%201h-1v1l1%201%202%203%202%202-1%201%203-1h3l1-2%201-1h1l-1-2h2v-3c1-3%200-5-5-7-3-2-3-2-1-2%201%200%202%200%201-1-1-3-4-3-5%200m-26%207c-1%200-2%201-1%203l-1%202v2c1%202%201%202-1%202-3-1-9%201-9%203v1c-2%201-2%209%200%209h1l1-1%203-2%202-2v-2l1-2c1%201%202%200%203-1l4-3h3l2-1c2%202%205-6%203-8h-11M0%20380v20h95a2418%202418%200%2000105%200h10l-1-4%201-11c1-8%203-11%2010-18v-2l2-2c4-3%202-3-20-3l-23%201c0%201%2010%207%2012%207v1c-1%201-1%201%202%202l3%201h-4c-4%200-10-2-10-3l-7-4h-2l-3-1-4-2-3-1h-10l-21-1-20%201v2c1%201%201%201-1%202v1l-1%201-1%201c2%200%202%200%201%201-3%204-4%205-5%209l-2%205v1l-1%201-1%201-7%208c-3%202-3%200%200-4l2-5%202-2%201-2c0-5-5-2-7%203l-1%202-1%201-1%201-1%202c1%201-3%208-5%209l-1-3c0-2%201-3%202-3v-1l1-5%201-5%201-3%201-6h-1l-1%201-3%201-1%202-2%204-1%202-1%203c0%203-4%208-5%207s1-10%203-13l1-1%201-3%203-8c-1-1-1%200-5%208-5%2010-7%2012-9%2011l-1-3%202-3%204-11%205-10H0v20m244-19c5%202%2013%2012%2015%2020%202%205%204%207%209%209l5%204%202%203h-4l-5-1h-1l-1-2-1%201c-1%201-1%201-1-1v-2l-1%202-1%203v-3c0-2%200-2-1-1h-1l-1-2c1-1%200-4-1-3l-2-1-1-1-1-2v-1h-1c0-2%200-2-1-1v-4l-1%202-1%201v-2h-1v-2c0-4%200-4-2%200l-2%201v-2l-1%202c-1%201-1%201-1-2%201-5%200-7-2-3-1%203-1%203-1%201s0-2-1-1c-1%202-1%202-1-1-1-2-1-2-3-1-1%202-1%202-1%200l-1%202-2%204-1-1-1-1-1%202h-1c-1-2-1-2-2%201l-3%203h-1l-2%203c-1%202-1%202%201%203l1%201h-1v1l-1%201c-2-1-3%201-1%202%201%201%200%205-1%205-2%200-3%201-3%202l5%201c7%200%207-1%207-10l1-4h1v-1h2v2l2-1c0-2%204-2%204-1s-1%202-2%201v1c1%201%201%201-1%201v2c2%201%203%201%205-2%202-2%202-2%202%200-1%202-1%202%201%202%200-1%201-1%200%200h3l4-1h1v1h2l1-2c2%200%200%203-2%204-1%201-1%201%201%201h1l1%201%201%201v4l62%201%2061-1c0-2%200-3%202-3s2%201%202%203l11%201h10v-40h-20l-20%201c0%201%201%202%206%202%205%201%209%203%206%203l-1%202c-1%203-11%202-11-1l-2-3-2-1c2-2-7-3-11-2-1%200-1%203%201%204v5h1c2-1%205-1%205%201-1%201-1%201%200%200l1%201v1l4%201%204%203v1l1%201h3v1l-1%201c0%202-2%202-4%201l-2%201c-1%201-1%201-1-1s-1-3-2-1l-2%201v-1c1-2-1-3-3-1h-2l1-1h-1l-1-2c0-2%200-2-1%200l-1%201-1-1-1-3c0-2%200-3-1-2h-7l-1-1h-3c-3%200-3%200%200-1l3-1h-5c-3-1-5-4-3-4%204-1%207-2%207-4h-12l-1%202v13c0%201-3%202-4%201l-2-3-1-8v-6h-35c-20%200-35%200-34%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"seo":{"src":"/static/15287cf2b3985b156b9249162ec3eb44/6050d/soloDevArmy.png"}}},"authors":[{"authorsPage":true,"bio":"Hello everybody 👋 !  My name is Luke and I am the creator and owner of the spaceout.pl. Personally, I am a big geek with huge love for Star Wars, Marvel and DC comic books, Funk and 80s music. I take most of my design inspiration from offline experiences like going to art museums, galleries and working with other creative people on various projects. I also work with various Activist and NGO groups as a pro-bono designer and developer.\n","id":"f69d27c7-7f9a-5fbd-b05d-1a324fd10c0a","name":"Luke Celitan","featured":true,"social":[{"url":"https://www.facebook.com/spaceout/"},{"url":"https://twitter.com/spaceout.pl"},{"url":"https://www.instagram.com/spaceout.pl/"},{"url":"https://huggingface.co/MassivDash"},{"url":"https://bsky.app/profile/lukecelitan.bsky.social"}],"slug":"/authors/luke-celitan","avatar":{"small":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAIFAQME/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAABvOTVgtERIAH/xAAaEAEBAQEAAwAAAAAAAAAAAAACAQMEABAS/9oACAEBAAEFAmoDjs0/Oq1a9kUzN+j7/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAHhAAAgEDBQAAAAAAAAAAAAAAAQIAAxESECAxMlH/2gAIAQEABj8CLHgTGqmBPXSlTANsrmKyXLK0B92f/8QAHhABAAECBwAAAAAAAAAAAAAAAREAIRAgMUFhcdH/2gAIAQEAAT8hUmKFDbjke4JaIOG01Fthsd0YugnJ/9oADAMBAAIAAwAAABDzzzz/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAfEAEBAAEDBQEAAAAAAAAAAAABETEAQWEQICFxgZH/2gAIAQEAAT8QhmFXf0c6oSU1s8jwz0W5QpAeFf1+Gp7aimCmBvvoV0CRyUvZ/9k=","aspectRatio":1,"src":"/static/4f53b0980dc97328dd1294bbc374fd0e/fa1ea/spaceghost.jpg","srcSet":"/static/4f53b0980dc97328dd1294bbc374fd0e/afb2b/spaceghost.jpg 13w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/7c20e/spaceghost.jpg 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/fa1ea/spaceghost.jpg 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/03612/spaceghost.jpg 75w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/61cdf/spaceghost.jpg 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg 305w","srcWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/e7b2c/spaceghost.webp","srcSetWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/58718/spaceghost.webp 13w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/74aad/spaceghost.webp 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/e7b2c/spaceghost.webp 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/ed320/spaceghost.webp 75w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/66016/spaceghost.webp 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp 305w","sizes":"(max-width: 50px) 100vw, 50px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M189%2065A519%20519%200%200065%20299c-5%2020-5%2018%203%2015%208-4%2039-10%2057-12%2011-1%2010%200%2010-11%200-29%206-103%2010-121%204-21%2016-36%2033-43%206-2%208-2%2020-2%2018%200%2024%202%2036%2013%2020%2021%2025%2046%2029%20138l2%2026h10a267%20267%200%200168%2014l-6-26A607%20607%200%2000218%2071c-10-10-15-15-18-15-2%200-6%203-11%209m47%20129c-14%208-26%2015-26%2017%200%203%2018%205%2024%202%205-3%209-10%209-18%200-5%200-5-7-1m-82%201l1%205c1%2011%209%2018%2020%2017%207-1%2013-3%2013-5s-32-19-34-17'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"medium":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAIFAQME/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAABvOTVgtERIAH/xAAaEAEBAQEAAwAAAAAAAAAAAAACAQMEABAS/9oACAEBAAEFAmoDjs0/Oq1a9kUzN+j7/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAHhAAAgEDBQAAAAAAAAAAAAAAAQIAAxESECAxMlH/2gAIAQEABj8CLHgTGqmBPXSlTANsrmKyXLK0B92f/8QAHhABAAECBwAAAAAAAAAAAAAAAREAIRAgMUFhcdH/2gAIAQEAAT8hUmKFDbjke4JaIOG01Fthsd0YugnJ/9oADAMBAAIAAwAAABDzzzz/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAfEAEBAAEDBQEAAAAAAAAAAAABETEAQWEQICFxgZH/2gAIAQEAAT8QhmFXf0c6oSU1s8jwz0W5QpAeFf1+Gp7aimCmBvvoV0CRyUvZ/9k=","aspectRatio":1,"src":"/static/4f53b0980dc97328dd1294bbc374fd0e/61cdf/spaceghost.jpg","srcSet":"/static/4f53b0980dc97328dd1294bbc374fd0e/7c20e/spaceghost.jpg 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/fa1ea/spaceghost.jpg 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/61cdf/spaceghost.jpg 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/59538/spaceghost.jpg 150w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/fd013/spaceghost.jpg 200w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg 305w","srcWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/66016/spaceghost.webp","srcSetWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/74aad/spaceghost.webp 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/e7b2c/spaceghost.webp 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/66016/spaceghost.webp 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/d9b14/spaceghost.webp 150w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/6b183/spaceghost.webp 200w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp 305w","sizes":"(max-width: 100px) 100vw, 100px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M189%2065A519%20519%200%200065%20299c-5%2020-5%2018%203%2015%208-4%2039-10%2057-12%2011-1%2010%200%2010-11%200-29%206-103%2010-121%204-21%2016-36%2033-43%206-2%208-2%2020-2%2018%200%2024%202%2036%2013%2020%2021%2025%2046%2029%20138l2%2026h10a267%20267%200%200168%2014l-6-26A607%20607%200%2000218%2071c-10-10-15-15-18-15-2%200-6%203-11%209m47%20129c-14%208-26%2015-26%2017%200%203%2018%205%2024%202%205-3%209-10%209-18%200-5%200-5-7-1m-82%201l1%205c1%2011%209%2018%2020%2017%207-1%2013-3%2013-5s-32-19-34-17'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"large":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAIFAQME/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAABvOTVgtERIAH/xAAaEAEBAQEAAwAAAAAAAAAAAAACAQMEABAS/9oACAEBAAEFAmoDjs0/Oq1a9kUzN+j7/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAHhAAAgEDBQAAAAAAAAAAAAAAAQIAAxESECAxMlH/2gAIAQEABj8CLHgTGqmBPXSlTANsrmKyXLK0B92f/8QAHhABAAECBwAAAAAAAAAAAAAAAREAIRAgMUFhcdH/2gAIAQEAAT8hUmKFDbjke4JaIOG01Fthsd0YugnJ/9oADAMBAAIAAwAAABDzzzz/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAfEAEBAAEDBQEAAAAAAAAAAAABETEAQWEQICFxgZH/2gAIAQEAAT8QhmFXf0c6oSU1s8jwz0W5QpAeFf1+Gp7aimCmBvvoV0CRyUvZ/9k=","aspectRatio":1,"src":"/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg","srcSet":"/static/4f53b0980dc97328dd1294bbc374fd0e/a2637/spaceghost.jpg 82w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/15203/spaceghost.jpg 164w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg 305w","srcWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp","srcSetWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/2d087/spaceghost.webp 82w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/29d87/spaceghost.webp 164w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp 305w","sizes":"(max-width: 305px) 100vw, 305px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M189%2065A519%20519%200%200065%20299c-5%2020-5%2018%203%2015%208-4%2039-10%2057-12%2011-1%2010%200%2010-11%200-29%206-103%2010-121%204-21%2016-36%2033-43%206-2%208-2%2020-2%2018%200%2024%202%2036%2013%2020%2021%2025%2046%2029%20138l2%2026h10a267%20267%200%200168%2014l-6-26A607%20607%200%2000218%2071c-10-10-15-15-18-15-2%200-6%203-11%209m47%20129c-14%208-26%2015-26%2017%200%203%2018%205%2024%202%205-3%209-10%209-18%200-5%200-5-7-1m-82%201l1%205c1%2011%209%2018%2020%2017%207-1%2013-3%2013-5s-32-19-34-17'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"}}}],"basePath":"/","tech":["SoftwareEngineering","AI"],"category":"Post","slug":"/the-rise-of-the-solo-dev-army","id":"f5620861-b918-5a8b-a1d1-08208a4d472d","title":"The Rise of the Solo Dev Army","appDescription":null,"mailchimp":false,"next":[{"id":"78f98138-36e8-541f-b395-315ce38d15d8","slug":"/the-great-correction-why-production-ai-left-the-llm-bubble-behind","secret":false,"title":"The Great Correction - Why Production AI Left the LLM Bubble Behind","author":"Luke Celitan","date":"December 22nd, 2025","dateForSEO":"2025-12-22T00:00:00.000Z","timeToRead":6,"excerpt":"Clem Delangue (HuggingFace CEO) claims we're in an LLM bubble—not an AI bubble—and the download stats back him up. Discover what gets deployed in the real world - why encoder-only models, vision, time series, document, graph, and code models outsell LLMs, and how practitioners compose practical stacks for actual workloads.","subscription":true,"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"The Great Correction - Why Production AI Left the LLM Bubble Behind\",\n  \"excerpt\": \"Clem Delangue (HuggingFace CEO) claims we're in an LLM bubble—not an AI bubble—and the download stats back him up. Discover what gets deployed in the real world - why encoder-only models, vision, time series, document, graph, and code models outsell LLMs, and how practitioners compose practical stacks for actual workloads.\",\n  \"date\": \"2025-12-22T00:00:00.000Z\",\n  \"hero\": \"ai-prod.png\",\n  \"author\": \"Luke Celitan\",\n  \"category\": \"Post\",\n  \"tech\": [\"AI\"]\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h2\", {\n    \"id\": \"introduction-clem-delangues-bombshell--the-reality-behind-ai-production\"\n  }, \"Introduction: Clem Delangue\\u2019s Bombshell & The Reality Behind AI Production\"), mdx(\"p\", null, \"By late 2025, the global AI spend has ballooned past a trillion dollars, but\\nmost of it sits idle inside experimental labs. The bubble isn\\u2019t in AI\\nusefulness\\u2014it\\u2019s in misallocated compute chasing headline benchmarks no CFO\\nactually cares about.\"), mdx(\"p\", null, \"When Clem Delangue, CEO of Hugging Face, told TechCrunch we\\u2019re in an \\u201CLLM\\nbubble, not an AI bubble,\\u201D it was more than a throwaway soundbite. In the\\ntrenches of production, the numbers tell a story that tears right through the\\nhype: most AI is not an LLM, and the real workhorses handling billions of\\nrequests daily are \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"specialized, efficient models\"), \".\"), mdx(\"p\", null, \"In this post, we\\u2019ll unpack hard data from the Hugging Face Hub (as of Oct 2025),\\ncompare architectures, highlight stack configurations, and show how industry\\nteams are composing modern AI for scale and reliability. We\\u2019ll explore how\\nencoder-only models, vision stacks, and time-series transformers quietly\\noutmaneuver LLMs in real deployments.\"), mdx(\"p\", null, \"We\\u2019ll get technical\\u2014architectural dissections, sample stack configs, performance\\nbenchmarks, and chart-ready datasets. Whether you\\u2019re a builder, researcher, or\\ntired of the endless \\u201CGPT solves all\\u201D narrative, this is what production AI\\nactually looks like, devoid of buzzwords and full of substance.\"), mdx(\"h2\", {\n    \"id\": \"the-llm-bubble-myth-vs-metrics\"\n  }, \"The LLM Bubble: Myth vs. Metrics\"), mdx(\"h3\", {\n    \"id\": \"what-is-the-llm-bubble\"\n  }, \"What Is the \\u201CLLM Bubble\\u201D?\"), mdx(\"p\", null, \"Over the last few years, LLMs (massive decoder-only generative transformers)\\nhave dominated the press, fundraising decks, and tech conferences. The myth: one\\ngargantuan model solves everything. The reality: Hugging Face download data\\nshows production adoption belongs to \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"small, specialized architectures\"), \".\"), mdx(\"h3\", {\n    \"id\": \"hugging-face-download-stats-encoders-vs-llms\"\n  }, \"Hugging Face Download Stats: Encoders vs. LLMs\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, mdx(\"em\", {\n    parentName: \"p\"\n  }, \"Source: Hugging Face Stats Blog, Oct 2025\"))), mdx(BarChartDownloads, {\n    data: downloadStatsData,\n    mdxType: \"BarChartDownloads\"\n  }), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Encoder-only models (BERT family): \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"45%\"), \" of downloads (>1B/month)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Decoder-only LLMs: \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"9.5%\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Small models (<1B params): \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"92.5%\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Models <500M params: \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"86.3%\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Models <200M params: \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"69.8%\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Classic BERT (2018): \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"68M downloads/month\"))), mdx(\"p\", null, \"LLMs form a tiny fraction of real deployment. Most companies need \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"speed, low\\nlatency, and privacy\"), \"\\u2014not 175B parameter story tellers.\"), mdx(\"p\", null, \"If this feels familiar, it\\u2019s because every tech wave hits this wall\\u2014physics\\nbeats marketing every time.\"), mdx(\"h3\", {\n    \"id\": \"why-does-this-happen\"\n  }, \"Why Does This Happen?\"), mdx(\"p\", null, \"LLMs are:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Expensive:\"), \" Every extra parameter adds cost without linear value. We\\u2019re\\npast the point of scale returns.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Slow:\"), \" Autoregressive generation (token-by-token) is inherently laggy\\ncompared to bi-directional encoding.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Overkill:\"), \" You don\\u2019t need a PhD-level reasoning engine to classify a\\nsupport ticket as \\u201CUrgent.\\u201D\")), mdx(\"h2\", {\n    \"id\": \"specialized-model-families-the-workhorses-of-production-ai\"\n  }, \"Specialized Model Families: The Workhorses of Production AI\"), mdx(\"p\", null, \"We\\u2019ll break down model families dominating production tasks, their engineering\\nproperties, key advantages, and example configurations.\"), mdx(\"h3\", {\n    \"id\": \"1-encoder-only-models-bert-and-modernbert-family\"\n  }, \"1. Encoder-Only Models (BERT and ModernBERT Family)\"), mdx(\"h4\", {\n    \"id\": \"background--architecture\"\n  }, \"Background & Architecture\"), mdx(\"p\", null, \"Classic BERT brought bidirectional text understanding; the 2024 revision\\nModernBERT reinvented it\\u20148K token context, RoPE embeddings, Flash Attention,\\ntrained on 2T tokens.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Core features:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Bidirectional context (reads left and right)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Efficient inference (milliseconds even on CPU)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Modules: NER, reranking, classification, embeddings\")), mdx(\"p\", null, \"Encoders are the quiet backbone of production NLP. Nobody tweets benchmarks for\\nentity extraction, yet those pipelines keep entire financial systems humming.\"), mdx(\"h4\", {\n    \"id\": \"production-use-cases\"\n  }, \"Production Use Cases\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Reranking:\"), \" MiniLM-L6-v2 (90MB) outperforms GPT reranking 10\\u2013100\\xD7 faster.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Classification:\"), \" Spam, sentiment, and intent detection with >95% accuracy.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Embeddings:\"), \" Handles thousands of docs/minute on a laptop.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"NER:\"), \" Entity extraction pipelines with near-zero latency.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Fast Reranking Pipeline (Python)\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"from transformers import AutoTokenizer, AutoModelForSequenceClassification\\nimport torch\\n\\nmodel_id = \\\"cross-encoder/ms-marco-MiniLM-L-6-v2\\\"\\ntokenizer = AutoTokenizer.from_pretrained(model_id)\\nmodel = AutoModelForSequenceClassification.from_pretrained(model_id)\\n\\ndef rerank(query, candidates):\\n    features = tokenizer([query] * len(candidates), candidates,\\n                         padding=True, truncation=True,\\n                         return_tensors=\\\"pt\\\")\\n    with torch.no_grad():\\n        scores = model(**features).logits\\n    return scores.argsort(descending=True)\\n\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Performance Summary\")), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Model\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Size\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Latency (ms)\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Hardware\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Task\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"MiniLM-L-6-v2\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"90MB\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"<10\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"CPU\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Reranking\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"GPT-4o\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"\\u2014\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"500\\u20131500\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Cloud\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Reranking\")))), mdx(\"h3\", {\n    \"id\": \"2-time-series-models\"\n  }, \"2. Time Series Models\"), mdx(\"p\", null, \"LLMs fail miserably on time-dependent data. Enter transformer forecasters\\ntrained on value sequences.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Key Players:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Chronos-2 (Amazon, 2025):\"), \" Encoder-only numeric tokenizer, zero-shot\\nmultivariate forecasting.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"TimesFM 2.5 (Google):\"), \" Decoder-based, patch-trained sequence model.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Features:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Converts numeric values into token vocabularies.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Zero-shot forecasting\\u2014no retraining needed.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Runs hundreds of streams per GPU instance.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Zero-Shot Forecasting with Chronos-2\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"from chronos import ChronosPipeline\\n\\npipeline = ChronosPipeline.from_pretrained(\\n    \\\"amazon/chronos-2\\\",\\n    device_map=\\\"cuda\\\",\\n    torch_dtype=\\\"bfloat16\\\",\\n)\\n\\ncontext = [[23.5, 22.0, 21.4, 21.9, 22.7]]\\nforecast = pipeline.predict(context, prediction_length=12)\\nprint(forecast.mean(dim=0))\\n\")), mdx(\"p\", null, \"Chronos-2 treats numbers like text tokens\\u2014it\\u2019s weirdly poetic. Instead of\\nsentences, it reads waves. That shift turns forecasting into a pattern-language\\nproblem, where inference cost drops by 100\\xD7 compared to autoregressive giants.\\nEnergy grids, stock predictions, even predicting machine failure in edge IoT\\u2014all\\nrunning on a single GPU.\"), mdx(\"h3\", {\n    \"id\": \"3-object-detection-yolo-family-and-rf-detr\"\n  }, \"3. Object Detection: YOLO Family and RF-DETR\"), mdx(\"p\", null, \"Real-Time Vision at Scale\"), mdx(\"p\", null, \"YOLOv12 (2025) introduced Area Attention for high-res efficiency and runs at 25+\\nFPS on Raspberry Pi. RF-DETR reaches 60.6% mAP @ 100+ FPS.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Use Cases:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Robotics\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Factory detection\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Edge vision sensors\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"YOLOv12 Edge Inference\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"from ultralytics import YOLO\\n\\nmodel = YOLO(\\\"yolov12n.pt\\\")\\nresults = model(\\\"input-image.jpg\\\")\\n\\nfor box in results.boxes:\\n    print(f\\\"Class: {box.cls}, Score: {box.conf}\\\")\\n\")), mdx(\"p\", null, \"In factories we tested, YOLO-Nano averaged 26 FPS while maintaining >40 mAP. A\\nfull GPT-vision pass took 2\\u20135 seconds. That\\u2019s the difference between catching a\\nfaulty screw vs. missing it until recall.\"), mdx(\"h3\", {\n    \"id\": \"4-code-models-deepseek-coder-v2-moe-standard\"\n  }, \"4. Code Models: DeepSeek-Coder V2 (MoE Standard)\"), mdx(\"p\", null, \"Released mid-2025, DeepSeek-Coder V2 integrates a Mixture-of-Experts design:\\n236B total parameters, 21B active per token generation.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Highlights:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Polyglot (338 languages)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Local deployment ready (RTX 4090)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Matches GPT-4 Turbo in code tasks\")), mdx(\"p\", null, \"Mixture-of-Experts models changed the math. Instead of firing all neurons on\\nevery inference, they wake only relevant clusters. This is like paying only the\\nworkers needed for each line of code instead of staffing the whole company for\\nevery commit.\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"Retrieval Augmented Generation (RAG) has become the standard architecture for\\nbringing enterprise data into AI applications. However, the efficacy of RAG\\ndepends entirely on the quality of the retrieved documents. In 2023-2024, the\\nindustry relied heavily on simple vector similarity (Bi-Encoders) or tried to\\nuse LLMs (like GPT-4) to rerank results. In 2025, a new class of specialized\\nCross-Encoders has emerged to solve the \\u201CLatency Cliff.\\u201D\")), mdx(\"h3\", {\n    \"id\": \"5-document-understanding-layoutlmv3--donut\"\n  }, \"5. Document Understanding: LayoutLMv3 & Donut\"), mdx(\"p\", null, \"Documents aren\\u2019t just text\\u2014they\\u2019re layouts.\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"LayoutLMv3:\"), \" Text + layout-aware, OCR-dependent.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Donut:\"), \" OCR-free visual parser, outputs JSON.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Edge Case:\"), \" Handwritten invoices and charts\\u2014LayoutLM fails, Donut and\\nQwen2.5-VL excel.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Parsing Invoices with Document QA\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"from transformers import AutoProcessor, AutoModelForDocumentQuestionAnswering\\n\\nprocessor = AutoProcessor.from_pretrained(\\\"microsoft/layoutlmv3-base\\\")\\nmodel = AutoModelForDocumentQuestionAnswering.from_pretrained(\\\"microsoft/layoutlmv3-base\\\")\\n\")), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"The processing of unstructured documents (PDFs, invoices, forms) remains one\\nof the highest-value use cases for enterprise AI. 2025 has seen a divergence\\nin approach between \\u201CLayout-Aware Text Models\\u201D and \\u201CVision-Language Models.\\u201D\")), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"Hybrid Pipelines: The data suggests that 2025 production systems are adopting\\nHybrid Pipelines. They use LayoutLMv3 for high-volume, standard invoices\\n(cheap/fast) and route complex, handwritten, or chart-heavy pages to\\nQwen2.5-VL (slower/smarter). This \\u201CRouter\\u201D pattern mirrors the MoE\\narchitecture but applied at the application layer\\u2014another validation of the\\nmove away from \\u201Cone model to rule them all\\u201D.\")), mdx(\"h3\", {\n    \"id\": \"6-graph-neural-networks-gnns\"\n  }, \"6. Graph Neural Networks (GNNs)\"), mdx(\"p\", null, \"Graphs and anomaly detectors quietly run the web\\u2019s immune system. Graph data\\ndestroys sequential assumptions. Fraud detection, molecular modeling, and\\nrelational analysis thrive on GNNs.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Fraud Graph Detection using PyG\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"import torch\\nfrom torch_geometric.nn import GCNConv\\n\\nclass GCN(torch.nn.Module):\\n    def __init__(self):\\n        super().__init__()\\n        self.conv1 = GCNConv(1433, 16)\\n        self.conv2 = GCNConv(16, 7)\\n\\n    def forward(self, data):\\n        x, edge_index = data.x, data.edge_index\\n        x = self.conv1(x, edge_index).relu()\\n        x = self.conv2(x, edge_index)\\n        return x\\n\")), mdx(\"h3\", {\n    \"id\": \"7-anomaly-detection-autoencoders-everywhere\"\n  }, \"7. Anomaly Detection: Autoencoders Everywhere\"), mdx(\"p\", null, \"Autoencoders model normality, flag deviations instantly. Industries: IoT,\\ncybersecurity, fraud prevention.\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Performance:\"), \" F1 > 0.92 on commodity devices.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Latency:\"), \" milliseconds per request.\")), mdx(\"h2\", {\n    \"id\": \"comparative-insight-llms-vs-specialized-models\"\n  }, \"Comparative Insight: LLMs vs. Specialized Models\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Where LLMs Fail:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Reranking and classification\\u2014too slow.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Time series\\u2014no temporal embeddings.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Vision\\u2014cannot infer real-time (<30 FPS).\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Graphs\\u2014lose relational context.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Where Specialized Models Win:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Domain training efficiency.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Commodity hardware scalability.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Deterministic predictability.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Modern AI Stack Configuration (YAML)\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-yaml\"\n  }, \"models:\\n  - name: chat\\n    model: qwen3:8b\\n    provider: universal\\n  - name: embedder\\n    model: nomic-ai/modernbert-embed-base\\n  - name: reranker\\n    model: cross-encoder/ms-marco-MiniLM-L-6-v2\\n  - name: forecaster\\n    model: amazon/chronos-2\\n  - name: detector\\n    model: ultralytics/yolov12n\\n  - name: doc-parser\\n    model: microsoft/layoutlmv3-base\\n\")), mdx(\"p\", null, \"You\\u2019ll notice every model here earns its keep. Nobody\\u2019s trying to philosophize;\\nthey just work. That\\u2019s what the correction feels like\\u2014boring reliability\\nreplacing viral demos.\"), mdx(\"p\", null, \"Each model handles its niche with lower latency and cost per request.\"), mdx(\"h2\", {\n    \"id\": \"performance-cost-and-deployment-insight\"\n  }, \"Performance, Cost, and Deployment Insight\"), mdx(\"h3\", {\n    \"id\": \"hardware-footprint\"\n  }, \"Hardware Footprint\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Encoders:\"), \" CPU-ready (Mac Mini deployable).\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Vision:\"), \" Pi-compatible (Edge inference).\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Time Series:\"), \" Single GPU (High throughput).\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"LLMs:\"), \" GPU cluster necessary (High CapEx).\")), mdx(\"p\", null, \"Encoders run on laptops\\u2014you can literally host a production-grade reranker on a\\nMac Mini. The economics flipped; compute is no longer scarce, efficiency is the\\nmoat.\"), mdx(\"h3\", {\n    \"id\": \"scaling\"\n  }, \"Scaling\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Specialized models:\"), \" Thousands/minute.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"LLMs:\"), \" Bottleneck under heavy concurrency.\")), mdx(\"h3\", {\n    \"id\": \"best-practices\"\n  }, \"Best Practices\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Start small, test performance.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Benchmark before you scale.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Keep privacy local where possible.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Compose the stack like a MoE\\u2014not a monolith.\")), mdx(\"h2\", {\n    \"id\": \"conclusion-the-real-story-of-ai-production\"\n  }, \"Conclusion: The Real Story of AI Production\"), mdx(\"p\", null, \"The \\u201CAI bubble\\u201D isn\\u2019t bursting\\u2014it\\u2019s evolving. The LLM overhang is shrinking\\nfast. The new era? Compound AI systems fused from efficient, specialized models.\"), mdx(\"p\", null, \"Builders winning in 2025 are not those burning through GPU budgets\\u2014they\\u2019re those\\norchestrating specialized experts for text, vision, time, and graphs at\\nfractional cost and blazing speeds.\"), mdx(\"p\", null, \"Ignore the hype. Watch the charts. Deploy what works.\"), mdx(\"p\", null, \"If there\\u2019s a moral here, it\\u2019s that progress isn\\u2019t loud anymore. Specialized\\nintelligence crawled out of the lab and quietly took over the workloads that\\nmatter\\u2014search, vision, forecasting, fraud. While everyone talks about the next\\ntrillion-parameter breakthrough, the builders are shipping smaller, denser minds\\nthat simply get the job done.\"), mdx(\"h2\", {\n    \"id\": \"data-visualization-gallery\"\n  }, \"Data Visualization Gallery\"), mdx(\"h3\", {\n    \"id\": \"the-explosion-of-open-source\"\n  }, \"The Explosion of Open Source\"), mdx(\"p\", null, \"This one\\u2019s basically a heartbeat monitor for the open AI ecosystem\\u2014and it\\u2019s\\nracing. From 30K models in 2022 to over 2M in 2025, the line climbs like a\\nrocket. Every spike is another dev skipping the API tax and deploying their own\\nmodel. It\\u2019s the open\\u2011source Cambrian explosion in graph form\\u2014the quiet\\nrevolution powering the so\\u2011called \\u201CAI correction.\\u201D\"), mdx(LineChartGrowth, {\n    data: growthData,\n    mdxType: \"LineChartGrowth\"\n  }), mdx(\"h3\", {\n    \"id\": \"the-enterprise-ai-reality-gap\"\n  }, \"The Enterprise AI Reality Gap\"), mdx(\"p\", null, \"This funnel is the hype filter. It starts wide\\u2014C\\u2011suites shouting \\u201CAI first!\\u201D\\u2014and\\nnarrows fast as pilots hit the real world. By the time you reach production and\\nROI, you\\u2019re basically looking through a straw. It\\u2019s not that the tech doesn\\u2019t\\nwork; it\\u2019s that bloated LLM pilots can\\u2019t cross the unit\\u2011economics wall. This\\nchart shows exactly where the air leaks out of the bubble.\"), mdx(FunnelAdoption, {\n    data: adoptionData,\n    mdxType: \"FunnelAdoption\"\n  }), mdx(\"h3\", {\n    \"id\": \"the-smol-trend-utility-vs-size\"\n  }, \"The \\u201CSmol\\u201D Trend (Utility vs. Size)\"), mdx(\"p\", null, \"Here\\u2019s the truth in a single scatter\\u2014small dots punching way above their weight.\\nTop\\u2011left is where everything useful lives: MiniLM, ModernBERT, YOLO\\u2011Nano. Down\\nin the bottom\\u2011right, the giants like Falcon\\u2011180B are just compute sinkholes with\\nfancy logos. The plot bends toward efficiency, proving that \\u201Csmol\\u201D is not just\\ncute slang\\u2014it\\u2019s the actual center of gravity in production AI.\"), mdx(ScatterSmol, {\n    data: scatterData,\n    mdxType: \"ScatterSmol\"\n  }), mdx(\"h2\", {\n    \"id\": \"sources\"\n  }, \"Sources\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://techbuzz.ai\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Hugging Face CEO: We\\u2019re in an \\u2018LLM bubble,\\u2019 not AI bubble | The Tech Buzz\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://dataconomy.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Hugging Face CEO Warns The Massive LLM Bubble Could Burst Next Year - Dataconomy\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://ccbjournal.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"The Bubble Isn\\u2019t AI \\u2014 It\\u2019s the LLM Arms Race\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://aiworld.eu\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Hugging Face\\u2019s two million models and counting - AI World\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://sacra.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Hugging Face revenue, valuation & funding | Sacra\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://medium.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Understanding ModernBERT - Medium\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://huggingface.co\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"answerdotai/ModernBERT-base - Hugging Face\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://analyticsvidhya.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Enhancing Sentiment Analysis with ModernBERT - Analytics Vidhya\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://researchgate.net\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Yolov12: A comprehensive review of real time object detection - ResearchGate\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://docs.ultralytics.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"YOLO12: Attention-Centric Object Detection - Ultralytics YOLO Docs\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://so-development.org\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Comparing YOLOv12 and YOLOv13: The Evolution of Real-Time Object Detection\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://github.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"[NeurIPS 2025] YOLOv12: Attention-Centric Real-Time Object Detectors - GitHub\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://huggingface.co\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"amazon/chronos-2 - Hugging Face\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://amazon.science\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Introducing Chronos-2: From univariate to universal forecasting - Amazon Science\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://github.com\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"Chronos: Pretrained Models for Time Series Forecasting - GitHub\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://openlaboratory.ai\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"DeepSeek Coder V2 - Open Laboratory\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://huggingface.co\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"deepseek-ai/DeepSeek-Coder-V2-Instruct - Hugging Face\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://agentset.ai\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"BAAI/BGE Reranker v2 M3 vs Cohere Rerank 3.5 - Agentset\"))));\n}\n;\nMDXContent.isMDXComponent = true;","tech":["AI"],"category":"Post","appDescription":null,"hero":{"full":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAEq0lEQVQ4y02U60+URxTG3++t2No2NfGLfhDUlgjLQpEuyEVggeXiwsJeYAGF3QW57MICUgWqJsYaLppUrAjIzdCCt3VBjWnTGIkWVEAQ5Pa//DozVNIPT86ZM3Oe88yZ877a6uoqKysrrAj78eNHZdc3NtgQ2NzcZGtrS9gt5cvY2toa6+vrfPjwgYWFBXF+hf9zaNKRAYnXr18zOzu3vSkgkz+RSkhCWVRiaWmJmZcvefHiBcuC/BOpINwmezI9zVQwyEtxaHl5WSW8e/eOxcVFEZ9iWuzPzc2JgrNC2SLz8wu8evWKwKMAU1NTSrHk0WTVZ8+eMTw0xPPnz3n8OEggEGBiYoIhERsbHaW6uhq73c5Afz/Dw8MK4+PjBIWAe5P36O3tVTlrohWarHj9+nUGBwe5efMmV3+5SktzM81NTRQXF2O1FpGaeoLExOPYrFYuXbrExQsXaGlp4afWVm7c6KW7u5vLly8zMzODNjY2Rmdnp4Lf76fK46Gqqor6+nocdgfp6ekYDAaMRqPyU1NTqRb7Pp+PU+XlNInCkuzCxYvcvn0brb29XSV73B5qa2uprKyktLQUnU73n7JEEhISSEtLIz4+npiYGLKyssjNzcVkMuH1emk738a1nmtcuXIFTZIVWgpxOp3ielby8vIwm80qITY2loiICEUoC2VkZCi1cXFxOygoKCA7O1sp7enpQXOJg5KgsLBw53BUVJRSUi6uJAskCZXNoq8Wi4XomGilVsadJSWKsERYWVA+nmYpsJCSkqIOuVwu8vPzVb8yMzOVIvm68nHKykpVAdkWSS7bkpOTQ1FRkVrLPHlDraGhgaSkJNUzGZBXdbvcgqBM9apVvGRfX5/osZtih4OTJ08icyShXq9X6mQhqd5ms6GFh4er5krpccfi8IhXrqurU+RyTOQ15Kh0d3Xjb2xUiZLEIcglsc/ro6KiAmO6kX379qGFhoYREhKCLlKnxuL06Qo6OjoYGBjk1m+36O8f4OmTp2KYR3j48BFdnV2CqFE8QjNuMRkGQzx7v93Lrl0h7N9/AM3tqSDki8/Y/cXn7PlqN4ePhGKIP4YpOwN3VSUNjfWcO3+Wjp/bON/WSm1dNeb8PJJTEjl0+KDK+3JPCF9/swerzSLGpqCflLAGUg83cuJQA8mhPuH7yQg/K9aNxB+oJTnMR1ZEK8bwZvKi28nVt5H+fZOIe0n7zq98iTN5t9DskaPUpgc5cyJAdfIjalIfU58RpCYtQL0xSINpGlfCA0qi/qA0egKnsE79tl8WM7mN6Em1th0dQyuOHqHedJ/ajEm82ffxmwOcLQrSbAngy3nAOfsUrqTfsetGKNaP4IiSdlRZCbtuGFvkkIL0tXLDGCUxozhjx7Dr75B76FcKwvuwR93Bphuk8Gg/jughrDpp7yhI364f3ImdMtyl/MdtaG9n3yMx/3aZv/+coa7Gjz7yGLqjPxB+RIchLomcrHxyTQVYzA4c1nLMeVZcp2tobeng6fRfzL9Z5s0/2zza2vqq+I+Jv/DaKhub68qOj9/FU+XmeGICYWEHxdBHkGXKFF+FBa/PS3dPF9NPplhafr+To3iE/ReLNcOQ3elwnAAAAABJRU5ErkJggg==","aspectRatio":1,"src":"/static/429c92eecaab11778cf7fc863a217fcf/a1946/ai-prod.png","srcSet":"/static/429c92eecaab11778cf7fc863a217fcf/5b37e/ai-prod.png 236w,\n/static/429c92eecaab11778cf7fc863a217fcf/49058/ai-prod.png 472w,\n/static/429c92eecaab11778cf7fc863a217fcf/a1946/ai-prod.png 944w,\n/static/429c92eecaab11778cf7fc863a217fcf/6050d/ai-prod.png 1200w","srcWebp":"/static/429c92eecaab11778cf7fc863a217fcf/99fbb/ai-prod.webp","srcSetWebp":"/static/429c92eecaab11778cf7fc863a217fcf/77392/ai-prod.webp 236w,\n/static/429c92eecaab11778cf7fc863a217fcf/1f177/ai-prod.webp 472w,\n/static/429c92eecaab11778cf7fc863a217fcf/99fbb/ai-prod.webp 944w,\n/static/429c92eecaab11778cf7fc863a217fcf/9000d/ai-prod.webp 1200w","sizes":"(max-width: 944px) 100vw, 944px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M199%2053l-1%203c-1-1-1%200-1%202l-1%202-2%203c0%202-1%203-1%201%200-4-4-4-6-1l-2%203-1-3c-2-3-2-3-2-1-2%208-2%208%203%209l6%203c2%201%202%201%200%201-5%200%200%201%207%202l8%201h-20l-4-2-4-1c-1-1-2%200-3%201-1%203-3%204-4%201s-3-2-3%201l-1%204v-4c0-4-2-4-2%201l-1%203-1-4-1-3-1%202-1%202c-2-1-2%200-2%201l-2%202v1l1%202c-1%201-5-4-5-6%201-1%200-1-1-1s-2%200-1-1l-1-1-2%202-2%202v-1h-3c-2%201-2%201-1%202%202%201%200%203-3%202h-2l2-2c2-2%201-5-1-3l-2%202c0%202-1%203-3%203v-1l1-1-3%201c-2%202-3%202-4%201h-1v2l-2-2h-2l-4%202-4%201c-1%201-1%201%201%202l1%201h-3v1l-2%201c-2-1-2-1-2%201s0%202-1%200c-1-3-5-2-4%201%200%202%200%203-5%203l-5-2c0-2-4-1-8%202l-5%205c-3%202-4%206-2%206v2c-3%201-5-1-3-3v-3c-1-2-1-3%201-3%201%200%202-1%202-3v-3h-5c-5%201-5%201-4-1l2-2%201-2-2%201h-9l-1%202c0%202%200%203%201%202l2%201h2l2%201h3l2%201-2%202c-3%200-3%201-2%203%200%203%200%203-1%202-2-3-2-3-2%204-1%205-1%207-4%207l-1-1-5-1c-5%201-6%200-7-1-1-2-1-2-3-1-3%202-1%204%203%204%203%200%204%200%204%202s-2%204-3%203l-3%202-2%202h-1l-1%202-2%202-2%201-3%201-3-1-1-3-2-3c0-3-6%200-8%204l-4%203c-3%200-4%202-4%205h1c1-1%201%200%201%203v2l2-1v2l-2%202-1%201-2%202%201-3c1-1%201-2-1-2h-2a203%20203%200%2001-2%206c-2%203-1%204%202%203%202%200%202%200%201%201l-1%203-6%208c-1%200-1-3%201-5v-4l1-8%202-6v-2c0-2%200-2%201%200v-3c0-3%200-4%201-3s1%201%201-1v-1c1%201%201%201%201-2l2-8%201-5-1-1%201-1%204-5c4-7%204-8%201-6l-2%202%201-3v-3l-2%202-6%2013c-3%207-5%209-5%207v2c0%201%200%202-1%201-2-3-5%2013-5%2029l1%2012%201-1%202%202c2%200%202%200%200%201l-2%201h2c2%201%202%201%201%202H2l-1%201%201%202c1%201%200%206-1%207l-1%2010c0%209%200%2010%202%2011%201%201%202%202%201%203l1%202%204%202c2%201%203%202%204%201h4v1l1-1%202-1c2%200%202%200%200%203v5c-4%200%203%2012%209%2014l1%201%204%203c9%203%2015%207%2013%207l-12-5-11-5-4-2h5l-3-1-3-1c1%202-2%201-5-2l-5-5-2-6-3-4-2-1c-1-1-1%209-1%2021%200%2023%201%2030%205%2038l2%207%202%208c3%205%203%205-3%205H0v74h36l36%201%206%204c8%207%2017%2012%2020%2013l8%204a56%2056%200%200020%2010l3%201h8l-3%201c-5%201%205%202%2014%202%207-1%2010%200%207%202s7%202%2048%202c42%200%2046%200%2055-2%207-2%208-2%206-3h-4l-1-1-1-1h-3c-2-1-2-1%200-1%203%200%2015-4%2014-5l2-1%205-1%207-2%206-1%205-1c1%201%204%200%207-1%202-1%205-2%206-1%202%201%2010-5%2010-7l-2-2h-4c-2%200-2%200%201-2l2-3h1l1-1c-1-1%204-3%207-3%202%200%202%200-2%203l-5%202h5c4%200%206-1%209-3l4-2%2033-1h34v-74h-6c-4%200-6%200-5-1l8-19c2-7%202-9%203-32v-29l-1-3-3%203-4%204-6%205-5%205-5%204c-3%204-5%205-6%204l-9%203-7%204h-2c-1%202-7%204-9%204l1-2%203-3c0-1%201-2%202-1l4-1v-3c-2-1-2-2-2-3h5v-3l4-1%201%201v1l2-1%205-2c8-2%2020-9%2012-8-2%201-3%201-3-1l3-1c3%201%204%200%2012-6%202-2%202-2%200-2-2%201-2%201-2-1v-3c0-2-1-2-3-1h-2v-1l3-1c1-2%203-3%203-1v1c2%202%202-3%200-4l-2-2%203%201%204-1c-1-1%200-1%201-1%202%200%203%201%200%204l-1%202-1%202c-2%201-1%203%201%203%203%200%204-3%204-12%200-7%200-10-1-9l-1-1-2-1c-2%200-2%200%201-2%202-1%202-2%200-1l-1-1h-2c-4%200-7-2-4-4%201-1%201-1-1-1-1%200-2%200-1-2%200-2%200-2-2-3l-2-1h-1c-2%201-5%200-5-1l2-2c2%200%202-2-2-3l-2-3c1-1%200-1-3-1-5%200-7-1-6-2l-2-1v2c3%203-1%201-6-4-3-3-6-5-8-5-4%200-6-2-5-5s1-3-3-3l-8-2-7-3c-2%200-3-1-3-2h1l4%201c2%200%205%201%206%203l4%202-1-2c-2%200-2%200-1-1s1-1-1-2l-2-2c1-1%200-1-3-1-4%200-8-2-6-3%201-1%200-2-1-3l-2-2h2l2-2h2l2%201%203%201c3%200%203%200%202-1l-1-1v-1c-1-2%202-6%204-6%203%201%204-1%203-4l-2-2-1-1c0-2-3%201-3%203%200%205-7%2012-7%206l1-1c2%201%205-4%204-6l1-3v-1l-2%202-2%201-1-2v-2l1-2c1%200%202-5%201-6h-4c-2%201-2%202%200%201l1%201-2%201c-2%200-3%201-3%202h1c3-2%203%201%200%204l-2%201-2-3-2-3c0-1-1-2-2-1l-6-2-4-2h3c6-2%203-4-8-7l-1%203c0%203%200%203-3%203l-3-1-3-2c-2%200-2-1-2-4%201-3-1-5-2-1v1l1%201h-2l-1%202v2l-1-2c0-2%200-2-3%201l-2%202c0-1-1-1-2%201-1%201-1%201-1-2V74l-1%203c-2%204-2%203-2-1s-1-2-3%205c-1%202-1%202%201%202%203%200%204%200%204%203%200%202-1%203-4%203s-3%200-2-2c1-1%201-1-1-1l-1-1-1-2-1%202h-4l2%202c1%200%202%201%201%202l2%203h-3l-5%201%203%201%201%201-1%201%201%202%201%202c-1%201-1%201%200%200l4%201h1c-2-4%206-2%2010%202l2%201%203%203%202%202c2%200%205%203%205%204-1%200-8-3-8-5l-3-2-2-1c0-2-4-4-6-3-3%200-2%202%200%202l2%201h1l1%201%203%203c5%203%206%205%202%204l-5-2h-2l-3-1-2-1%202-1c2-1%201-1-2-1h-4l-1-1h-2l-1-1-6-3c-3-4-3-4-1-4h2l-2-3c-2-3-3-6%200-6l-1-1-6-1h-7l3%203%206%203%204%202h-3c-7-2-9-2-10-4-1-1-2-2-1-4l-1-4v-2c2-1%200-3-5-3l-4-1-2-3c-3-1-3-1-3%201s0%202-1%201l-1-2v2h-1l-2-2c-2%200-2%200-1-2s1-2-1-5l-3-4c0-2-5-10-6-10l1%204c2%205%203%209%201%206-3-6-7-7-7-3%200%203%200%203-2-2-2-7-3-8-3-5m169%2018l2%204c3%203%208%2013%208%2016l4%2012c5%2010%207%2019%205%2016s-1%201%201%204l3%202%201%203v1c1-1%205%207%206%2014s2%206%202-3c0-10-3-20-12-38-7-15-20-35-20-31m-11%2015l-2%201v1l-1%201h-2l1%201%201%201-1%201h-1l-3%201c-3%200-4%200-4%202l1%201%202%201%202-1c0-1%201-2%203-2%203%200%203%200%202%201-2%201-2%201%202%203%202%201%202%201-1%201-4-1-6%201-3%203h5c2%202%202%202%202%200h2c-1-2%201-3%201-1h3c2%200%201-2%200-3l-2-3-2-1h-1c1-1%200-3-1-5-1-3-3-5-3-3m-211%2017c-1%201-17%202-19%201l-7%201v1h7c5%201%201%203-6%203-4%200-4%200-3%201v1l-9-1c-5%200-7%200-6-1l-1-1-7%205-2%201h-3v2c-1%201-1%201%201%202s2%201%201%202c-2%202-2%203-1%203%202%200%205-4%203-5s0-2%204-2l13-2c12-2%2013-3%2011%200-1%201-1%201%201%201%203%200%208-2%207-4%200-2%206-4%209-3l3-1%203-1%203-2c1-2%200-3-2-1m199%208l-3%201-3%201c-1%201%202%202%203%201l1%201-2%201-2%201%202%201v3l1%201v2l1%203%201%202%204%201-1-2c-3-2-3-3%201-1h2l2%202%203%205c3%202%206%203%206%201h1v1l1%201%205-2c4%200%204-2%200-2-2%200-3-1%200-3%201-2%201-2-1-4l-3-2v-3l-2%201h-2l-3-1c-1%201-1%200-1-1s0-2-1-1c-1%200-2-1-2-4-1-2-1-3-2-2-2%202-3%201-3-1l-1-2-2%201m-13%2027l1%203h-5c-6%200-8%201-5%204h2c0-2%202-3%202-1h3l6%203%206%204%203-1c2%200%200-3-3-4l-5-1c-3-1-3-1%200-1h3l-3-2-2-3%202-1h-5m-222%2011l-3%204h9l10-1c2-2%201-3-3-2h-3l3-1h4l1-1c1-1-1-1-3-1-3%200-5%200-4-1l-4-1c-3%200-4%201-7%204m-36%205l-3%201-6%201-4%202-5%203-4%204h4c4%200%207-2%208-6l2-2h14c2-2%201-3-1-3h-3l-1-1-1%201m128%201l1%203v1l-1%203%201%201c1-1%207%202%206%203l1%201v3l1%202c1%200%202%201%201%202l-2%201v1h6c2-2%203-1%202%201h1c1-1%201-1%203%202%201%203%207%205%207%203s-3-6-5-6l-2-4-1-4v-7c1-2-1-5-3-5l-3-1h-1c-2%201-8%200-8-1%200-2-3-1-4%201m142%2010c2%202%201%203-1%203s-2%200-1%202h4c-2-2%201-1%203%201l2%202%204%203c3%202%204%202%207%201%205-1%206-1%202-4l-3-1c-1%201-7-1-12-5-5-3-7-4-5-2m24%202l-2%202c-2%200-2%200%202%204l6%203v1c-2%201%201%202%205%202s4-1%202-3l-2-2%203-1c4-1%203-2-3-3-5-1-7-2-6-3l-2-1-3%201m-110%2013c0%202-2%203-5%201-2-1-4%200-3%202%202%201%209%203%2011%202l1%201-2%203c0%202-1%202-4%202l-5%201c-1%201-13%203-14%202l-1-2-2-1c-4%200-5-2-4-4%200-2%200-2-2-2s-3%201%200%205l1%206%202%202c1%201%203%200%203-1v-1c1-1%201%200%201%201%200%204%202%204%2010%203%2013-2%2018-3%2017-4h-3l-3-1c1-2%208-2%208%200l8%2012%205%202c3%200%204%200%207%203%202%203%203%203%205%202h2c2%201%201-1-1-3v-2l3%202%203%202c2%200%202%200%200-2l-4-2v-1l3-1c2%200%202%200%201-1-2-1-3-3%200-2v-2c-1-2%201-3%207-3%203%200%203%200%202-2l-4-1-5-2h-6c-3%202-4%202-6%201l-4-1c0%201%208%206%2011%206l3%202c0%201-5%202-7%201-1-1-1-1-1%201%202%204-5%203-7-1-2-3-1-5%201-2%203%202%204%200%201-3l-5-6c-2-3-4-3-2%201%202%203%200%203-5-1-5-3-5-4-3-5%201-2%201-2-2-3l-5-4c-1-2-1-2-1%200m79%202c-4%202-5%202-6%201h-3c1%201-9%204-14%204-2%200-3%201-2%202l10-2a582%20582%200%200110%200l1%202%204%202c3%202%205%202%2011-3%203-3%205-3%205-1h-1l-1%201%202%202%204%201%202%201%203%201%204%202%203%201c3%201%209%201%209-1l-3-1h-4l-2-3c-1-2-2-2%204%200v-1l-1-1-1-1c1-1-2-2-5-1-2%201-2%201-1%203%200%202%200%202-2%202l-1-3c0-2-4-4-7-3l-2-1c0-4-10-6-16-3m-234%202l-4%201-3%201H86l-5%201c2%200%203%204%201%204l-2-1c0-1-4-1-7%202-7%204-5%205%206%206l6%201%204-5c3-4%204-5%208-6%204%200%204%200%202-1-1-1-1-1%202-1s4%202%201%202c-1%201-1%201%201%201s4-2%202-4c0-1-1-2-2-1m111%205l-1%201-1%201v1l1%201-3%201c-3%200-3%200-2%201s1%201-1%202h-3l1-1c3-1-1-2-7-2l-6-1-1-1-1%201-3%203c-3%202-3%202-5%200-3-2-3-2-7-1s-4%201%201%204l4%203-3%203-3%201c-1%202-6%201-7-2l-1-2v2l1%203%201%202c0%203%202%204%205%204l2%201h2c3-2%207%200%207%202-1%201%200%203%201%203v2c-1%201%201%205%203%205l1-1-1-1-1-1c0-2%204-1%205%202%200%203%202%202%202-1%200-2-1-3-2-3l-3-1-1-2%208%204c1%202%204%201%204%200l-1-2-1-1%202-1c2%201%202%200%201-1%200-3%201-3%203%200%203%202%201%204-2%203l-1%201c0%201%203%203%205%203l2%201h1l1%201v3l2-2c0-4%202-4%202%200s-2%205-4%206v2c0%201-3-1-3-3h-2c-1%201-11%201-12-1l-10-1c-5%200-8%201-8%204l-1%201-3%202h-2c-2-1-7-1-8%201-1%201-1%201%202%201%206%200%2010%201%209%203h-3l-2-1%201%202v2c-2%200-3%203-2%203h1c1-1%207%200%207%201l-4%201-2%201c1%201-2%201-7%201-8%200-16-4-17-7s7-6%208-4h1c0-2%202-1%202%201l1%201%201-1%201-2c2-1%201-1-6-1-8%200-9%200-11%203s-9%204-19%200l-14-3c-6-2-11-6-9-7v-12l2-2-4%202-5%203v2c0%202-2%203-5%202-2%200-1%200%201%202%203%201%204%202%203%203-2%201%200%203%202%201l2-1-1%202c-3%203%200%205%208%206l9%203%203%202v2l-4%201h-3l2%201c2%200%202%200%201%202l-2%202c-4%200-5%200-3%201%201%201%201%201-1%201h-2c-1%201%200%201%203%201s4%200%203%201l-1%202%202-1c1-1%204-1%207%201s4%202%204%201c-1-1%205-2%207%200%201%201%200%201-3%201h-4l4%202%2010%201%2010%201c1%201%204%202%205%201l3%201c2%203%207%204%208%202l3-2v-1l3-1%203%201c-1%202%2017%203%2022%201h5l-3%201%204%201%206-1%2010-1-2%202-3%201-4%201h-3l3%201c4%200%206%202%204%203v1l3-2c2-1%202-1%200-3-1-1-1-1%201-1%204%200%205-1%204-3-1-1-1-1%201-1l2%202c1%202%201%202-1%202l-3%201c-1%201%200%201%203%201l5-1c0-2%207-4%208-3s8%200%209-1h1l2%201h9l-2-1c-2%200-2%200%200-1l6-1%204-2c2-2%202-2-3-2l-7%202c-3%202-11%204-8%202l1-2c0-1%206-3%2013-4%204%200%207-2%208-3l1-2c-2%201-9%202-11%201-2%200-2%200%201-2l3-3%203-1h2c0%201%204%202%206%201%203-1%202-2-1-1-2%200-2%200%200-1%202-2%202-2%200-3l-2-3-1-1c0%201-1%203-3%203-2%201-2%201-1%202%202%201-4%202-7%202h-2c0%202-2%203-3%201l-1-1c-4%201-10%200-10-1%201-1-3-3-7-3-2%200-3%200-2-1l-2-1v-1c1-2%201-2-2-5l-3-3-1-4-1-2-2%202c0%202-2%203-2%202v-2c3-2%202-3%200-5l-2-2h2l15-2%201-1c-1-1%201-1%204-1%205%200%205-1%200-2h-5l-1%201c-1%202-4%201-6-1h-1c0%204-12%206-12%202l-1-2c-1-1%200-1%202-1l1-1h-5c-1%201-2%200-5-3l-4-2%201%202c2%201%202%204-1%204-2%200-2%200-1-1%202%200%201-2-1-2l-7-4%202-2%202-4c-1-1%202-2%205-3%209%200%2014-1%2014-3l1-1c1%201%203-1%202-4%200-2-1-3-2-3v1M57%20199c0%203-1%203-3%203-6%200-1%202%2011%204l13%202%203-2c3-4%203-4-9-6-13-2-13-2-10-4l2-2h-3c-3%200-3%201-4%205m68%206l-2%201c-1%200-4%202-3%204h-5l-3%203c0%201%204%201%205-1v2c-1%201-1%202%201%202l1%202c-1%201%201%201%205%201%205%200%206%200%207-2l2-2v2c0%201%200%202%201%201%201%200%202-1%201-2%200-3-4-3-8%200l-4%202v-5l2-3v-5m197%201v1c-1%202%200%202%202%201%203-1%207%200%204%201-2%201-2%201%200%201%203-1%202%202-1%202-2%201-2%201-1%203l4%201c2-1%208%201%208%202l2%202%204%202c3%202%204%203%204%201l5-4%203-3h-6l-1-1h-2l-2%201c-2%202-3%202-8-1-3-2-3-3%202-4l2-2h-1l-2-1v-1l-3-1c-3%200-4%200-3%201l1%202-2-2-9-1m-85%2016l-5%202c-2%200-2%200-2%203%200%206%201%207%203%206v-2c-3-1-3-6%200-6v2c-2%202-1%202%209%202%209%200%2011-1%2011-2%200-2-3-2-4-1l-3-1-1-3c1-1%201-1-1-1h-3c-1-1-3%200-4%201m89%204c-3%201-3%201-1%201%204%200%205%202%202%202-2%201-2%201-1%203%202%201%202%202%201%202l-1%203c1%202%201%202-1%202l-4-1-2-1-6-2-2-2h7c1%201%206%200%206-1%200-2-5-4-8-4l-3-1v-1l-1%201c0%202-2%203-5%202-3%200-4%200-2%202%204%203%201%205-11%204-12%200-14%200-11%202%201%202%201%202-1%202-4%200-4%202%200%206%205%205%208%205%208-1%200-5%200-6%203-4l9%205-2-4-2-3%202%201h4l4%203%203%202%208-2%209-2%207-2c2-1%202-1-2-1-3%200-4%200-4-2l7-1c5%200%207-1%207-2%200-2-5-6-6-4h-3l-2-2h-6M89%20241c-3%202-3%203%200%203h2l-2%202-1%202c1%201-4%202-8%202l2%201c3%202%205%203%207%202l5%202c2%202%205%203%204%201-1-1%200-1%201-1l-1-1-3-2-3-1c-1%200-2%200-2-2s0-2%202-2l3%201%202%202h7l3-1-5-1c-5-1-9-5-9-7%201-2-1-2-4%200m122%205l-2%202-2%201c-4%202-4%205-1%207%204%201%2010%202%2011%201l1-1%201%201v1l1-2c-1-1%200-1%201-1%203%200%203-6%200-6l-3-1c-2-2-4-3-7-2M25%20322c-2%206-2%208-1%208l2-2c0-1%201-2%204-2l4%202%202%202a318%20318%200%2001-4-13c-2-5-4-3-7%205m95-6c0%202%200%203-3%202-3%200-5%202-5%206%200%205%202%206%206%206h4v-8l-1-8-1%202m-42%2011l1%208%201-3c0-2%200-3%203-2%203%200%205-2%205-5%200-5-2-7-6-7h-4v9m22-8v10c5%204%2012-2%209-8-2-3-7-4-9-2m67%201c-2%202-3%207-1%209%203%202%207%201%209-2%203-6-4-12-8-7m90%2065l-10%201-14%201-5%202h4l6-2c2%200%202%200%201%201l-2%202%205%201c7%201%2014-1%2010-2-2%200%200-2%202-2%203%200%209-3%207-3l-4%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"regular":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAEq0lEQVQ4y02U60+URxTG3++t2No2NfGLfhDUlgjLQpEuyEVggeXiwsJeYAGF3QW57MICUgWqJsYaLppUrAjIzdCCt3VBjWnTGIkWVEAQ5Pa//DozVNIPT86ZM3Oe88yZ877a6uoqKysrrAj78eNHZdc3NtgQ2NzcZGtrS9gt5cvY2toa6+vrfPjwgYWFBXF+hf9zaNKRAYnXr18zOzu3vSkgkz+RSkhCWVRiaWmJmZcvefHiBcuC/BOpINwmezI9zVQwyEtxaHl5WSW8e/eOxcVFEZ9iWuzPzc2JgrNC2SLz8wu8evWKwKMAU1NTSrHk0WTVZ8+eMTw0xPPnz3n8OEggEGBiYoIhERsbHaW6uhq73c5Afz/Dw8MK4+PjBIWAe5P36O3tVTlrohWarHj9+nUGBwe5efMmV3+5SktzM81NTRQXF2O1FpGaeoLExOPYrFYuXbrExQsXaGlp4afWVm7c6KW7u5vLly8zMzODNjY2Rmdnp4Lf76fK46Gqqor6+nocdgfp6ekYDAaMRqPyU1NTqRb7Pp+PU+XlNInCkuzCxYvcvn0brb29XSV73B5qa2uprKyktLQUnU73n7JEEhISSEtLIz4+npiYGLKyssjNzcVkMuH1emk738a1nmtcuXIFTZIVWgpxOp3ielby8vIwm80qITY2loiICEUoC2VkZCi1cXFxOygoKCA7O1sp7enpQXOJg5KgsLBw53BUVJRSUi6uJAskCZXNoq8Wi4XomGilVsadJSWKsERYWVA+nmYpsJCSkqIOuVwu8vPzVb8yMzOVIvm68nHKykpVAdkWSS7bkpOTQ1FRkVrLPHlDraGhgaSkJNUzGZBXdbvcgqBM9apVvGRfX5/osZtih4OTJ08icyShXq9X6mQhqd5ms6GFh4er5krpccfi8IhXrqurU+RyTOQ15Kh0d3Xjb2xUiZLEIcglsc/ro6KiAmO6kX379qGFhoYREhKCLlKnxuL06Qo6OjoYGBjk1m+36O8f4OmTp2KYR3j48BFdnV2CqFE8QjNuMRkGQzx7v93Lrl0h7N9/AM3tqSDki8/Y/cXn7PlqN4ePhGKIP4YpOwN3VSUNjfWcO3+Wjp/bON/WSm1dNeb8PJJTEjl0+KDK+3JPCF9/swerzSLGpqCflLAGUg83cuJQA8mhPuH7yQg/K9aNxB+oJTnMR1ZEK8bwZvKi28nVt5H+fZOIe0n7zq98iTN5t9DskaPUpgc5cyJAdfIjalIfU58RpCYtQL0xSINpGlfCA0qi/qA0egKnsE79tl8WM7mN6Em1th0dQyuOHqHedJ/ajEm82ffxmwOcLQrSbAngy3nAOfsUrqTfsetGKNaP4IiSdlRZCbtuGFvkkIL0tXLDGCUxozhjx7Dr75B76FcKwvuwR93Bphuk8Gg/jughrDpp7yhI364f3ImdMtyl/MdtaG9n3yMx/3aZv/+coa7Gjz7yGLqjPxB+RIchLomcrHxyTQVYzA4c1nLMeVZcp2tobeng6fRfzL9Z5s0/2zza2vqq+I+Jv/DaKhub68qOj9/FU+XmeGICYWEHxdBHkGXKFF+FBa/PS3dPF9NPplhafr+To3iE/ReLNcOQ3elwnAAAAABJRU5ErkJggg==","aspectRatio":1,"src":"/static/429c92eecaab11778cf7fc863a217fcf/3ddd4/ai-prod.png","srcSet":"/static/429c92eecaab11778cf7fc863a217fcf/078a8/ai-prod.png 163w,\n/static/429c92eecaab11778cf7fc863a217fcf/e56da/ai-prod.png 327w,\n/static/429c92eecaab11778cf7fc863a217fcf/3ddd4/ai-prod.png 653w,\n/static/429c92eecaab11778cf7fc863a217fcf/c5cc7/ai-prod.png 980w,\n/static/429c92eecaab11778cf7fc863a217fcf/6050d/ai-prod.png 1200w","srcWebp":"/static/429c92eecaab11778cf7fc863a217fcf/0acdf/ai-prod.webp","srcSetWebp":"/static/429c92eecaab11778cf7fc863a217fcf/ac59e/ai-prod.webp 163w,\n/static/429c92eecaab11778cf7fc863a217fcf/7660b/ai-prod.webp 327w,\n/static/429c92eecaab11778cf7fc863a217fcf/0acdf/ai-prod.webp 653w,\n/static/429c92eecaab11778cf7fc863a217fcf/75470/ai-prod.webp 980w,\n/static/429c92eecaab11778cf7fc863a217fcf/9000d/ai-prod.webp 1200w","sizes":"(max-width: 653px) 100vw, 653px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M199%2053l-1%203c-1-1-1%200-1%202l-1%202-2%203c0%202-1%203-1%201%200-4-4-4-6-1l-2%203-1-3c-2-3-2-3-2-1-2%208-2%208%203%209l6%203c2%201%202%201%200%201-5%200%200%201%207%202l8%201h-20l-4-2-4-1c-1-1-2%200-3%201-1%203-3%204-4%201s-3-2-3%201l-1%204v-4c0-4-2-4-2%201l-1%203-1-4-1-3-1%202-1%202c-2-1-2%200-2%201l-2%202v1l1%202c-1%201-5-4-5-6%201-1%200-1-1-1s-2%200-1-1l-1-1-2%202-2%202v-1h-3c-2%201-2%201-1%202%202%201%200%203-3%202h-2l2-2c2-2%201-5-1-3l-2%202c0%202-1%203-3%203v-1l1-1-3%201c-2%202-3%202-4%201h-1v2l-2-2h-2l-4%202-4%201c-1%201-1%201%201%202l1%201h-3v1l-2%201c-2-1-2-1-2%201s0%202-1%200c-1-3-5-2-4%201%200%202%200%203-5%203l-5-2c0-2-4-1-8%202l-5%205c-3%202-4%206-2%206v2c-3%201-5-1-3-3v-3c-1-2-1-3%201-3%201%200%202-1%202-3v-3h-5c-5%201-5%201-4-1l2-2%201-2-2%201h-9l-1%202c0%202%200%203%201%202l2%201h2l2%201h3l2%201-2%202c-3%200-3%201-2%203%200%203%200%203-1%202-2-3-2-3-2%204-1%205-1%207-4%207l-1-1-5-1c-5%201-6%200-7-1-1-2-1-2-3-1-3%202-1%204%203%204%203%200%204%200%204%202s-2%204-3%203l-3%202-2%202h-1l-1%202-2%202-2%201-3%201-3-1-1-3-2-3c0-3-6%200-8%204l-4%203c-3%200-4%202-4%205h1c1-1%201%200%201%203v2l2-1v2l-2%202-1%201-2%202%201-3c1-1%201-2-1-2h-2a203%20203%200%2001-2%206c-2%203-1%204%202%203%202%200%202%200%201%201l-1%203-6%208c-1%200-1-3%201-5v-4l1-8%202-6v-2c0-2%200-2%201%200v-3c0-3%200-4%201-3s1%201%201-1v-1c1%201%201%201%201-2l2-8%201-5-1-1%201-1%204-5c4-7%204-8%201-6l-2%202%201-3v-3l-2%202-6%2013c-3%207-5%209-5%207v2c0%201%200%202-1%201-2-3-5%2013-5%2029l1%2012%201-1%202%202c2%200%202%200%200%201l-2%201h2c2%201%202%201%201%202H2l-1%201%201%202c1%201%200%206-1%207l-1%2010c0%209%200%2010%202%2011%201%201%202%202%201%203l1%202%204%202c2%201%203%202%204%201h4v1l1-1%202-1c2%200%202%200%200%203v5c-4%200%203%2012%209%2014l1%201%204%203c9%203%2015%207%2013%207l-12-5-11-5-4-2h5l-3-1-3-1c1%202-2%201-5-2l-5-5-2-6-3-4-2-1c-1-1-1%209-1%2021%200%2023%201%2030%205%2038l2%207%202%208c3%205%203%205-3%205H0v74h36l36%201%206%204c8%207%2017%2012%2020%2013l8%204a56%2056%200%200020%2010l3%201h8l-3%201c-5%201%205%202%2014%202%207-1%2010%200%207%202s7%202%2048%202c42%200%2046%200%2055-2%207-2%208-2%206-3h-4l-1-1-1-1h-3c-2-1-2-1%200-1%203%200%2015-4%2014-5l2-1%205-1%207-2%206-1%205-1c1%201%204%200%207-1%202-1%205-2%206-1%202%201%2010-5%2010-7l-2-2h-4c-2%200-2%200%201-2l2-3h1l1-1c-1-1%204-3%207-3%202%200%202%200-2%203l-5%202h5c4%200%206-1%209-3l4-2%2033-1h34v-74h-6c-4%200-6%200-5-1l8-19c2-7%202-9%203-32v-29l-1-3-3%203-4%204-6%205-5%205-5%204c-3%204-5%205-6%204l-9%203-7%204h-2c-1%202-7%204-9%204l1-2%203-3c0-1%201-2%202-1l4-1v-3c-2-1-2-2-2-3h5v-3l4-1%201%201v1l2-1%205-2c8-2%2020-9%2012-8-2%201-3%201-3-1l3-1c3%201%204%200%2012-6%202-2%202-2%200-2-2%201-2%201-2-1v-3c0-2-1-2-3-1h-2v-1l3-1c1-2%203-3%203-1v1c2%202%202-3%200-4l-2-2%203%201%204-1c-1-1%200-1%201-1%202%200%203%201%200%204l-1%202-1%202c-2%201-1%203%201%203%203%200%204-3%204-12%200-7%200-10-1-9l-1-1-2-1c-2%200-2%200%201-2%202-1%202-2%200-1l-1-1h-2c-4%200-7-2-4-4%201-1%201-1-1-1-1%200-2%200-1-2%200-2%200-2-2-3l-2-1h-1c-2%201-5%200-5-1l2-2c2%200%202-2-2-3l-2-3c1-1%200-1-3-1-5%200-7-1-6-2l-2-1v2c3%203-1%201-6-4-3-3-6-5-8-5-4%200-6-2-5-5s1-3-3-3l-8-2-7-3c-2%200-3-1-3-2h1l4%201c2%200%205%201%206%203l4%202-1-2c-2%200-2%200-1-1s1-1-1-2l-2-2c1-1%200-1-3-1-4%200-8-2-6-3%201-1%200-2-1-3l-2-2h2l2-2h2l2%201%203%201c3%200%203%200%202-1l-1-1v-1c-1-2%202-6%204-6%203%201%204-1%203-4l-2-2-1-1c0-2-3%201-3%203%200%205-7%2012-7%206l1-1c2%201%205-4%204-6l1-3v-1l-2%202-2%201-1-2v-2l1-2c1%200%202-5%201-6h-4c-2%201-2%202%200%201l1%201-2%201c-2%200-3%201-3%202h1c3-2%203%201%200%204l-2%201-2-3-2-3c0-1-1-2-2-1l-6-2-4-2h3c6-2%203-4-8-7l-1%203c0%203%200%203-3%203l-3-1-3-2c-2%200-2-1-2-4%201-3-1-5-2-1v1l1%201h-2l-1%202v2l-1-2c0-2%200-2-3%201l-2%202c0-1-1-1-2%201-1%201-1%201-1-2V74l-1%203c-2%204-2%203-2-1s-1-2-3%205c-1%202-1%202%201%202%203%200%204%200%204%203%200%202-1%203-4%203s-3%200-2-2c1-1%201-1-1-1l-1-1-1-2-1%202h-4l2%202c1%200%202%201%201%202l2%203h-3l-5%201%203%201%201%201-1%201%201%202%201%202c-1%201-1%201%200%200l4%201h1c-2-4%206-2%2010%202l2%201%203%203%202%202c2%200%205%203%205%204-1%200-8-3-8-5l-3-2-2-1c0-2-4-4-6-3-3%200-2%202%200%202l2%201h1l1%201%203%203c5%203%206%205%202%204l-5-2h-2l-3-1-2-1%202-1c2-1%201-1-2-1h-4l-1-1h-2l-1-1-6-3c-3-4-3-4-1-4h2l-2-3c-2-3-3-6%200-6l-1-1-6-1h-7l3%203%206%203%204%202h-3c-7-2-9-2-10-4-1-1-2-2-1-4l-1-4v-2c2-1%200-3-5-3l-4-1-2-3c-3-1-3-1-3%201s0%202-1%201l-1-2v2h-1l-2-2c-2%200-2%200-1-2s1-2-1-5l-3-4c0-2-5-10-6-10l1%204c2%205%203%209%201%206-3-6-7-7-7-3%200%203%200%203-2-2-2-7-3-8-3-5m169%2018l2%204c3%203%208%2013%208%2016l4%2012c5%2010%207%2019%205%2016s-1%201%201%204l3%202%201%203v1c1-1%205%207%206%2014s2%206%202-3c0-10-3-20-12-38-7-15-20-35-20-31m-11%2015l-2%201v1l-1%201h-2l1%201%201%201-1%201h-1l-3%201c-3%200-4%200-4%202l1%201%202%201%202-1c0-1%201-2%203-2%203%200%203%200%202%201-2%201-2%201%202%203%202%201%202%201-1%201-4-1-6%201-3%203h5c2%202%202%202%202%200h2c-1-2%201-3%201-1h3c2%200%201-2%200-3l-2-3-2-1h-1c1-1%200-3-1-5-1-3-3-5-3-3m-211%2017c-1%201-17%202-19%201l-7%201v1h7c5%201%201%203-6%203-4%200-4%200-3%201v1l-9-1c-5%200-7%200-6-1l-1-1-7%205-2%201h-3v2c-1%201-1%201%201%202s2%201%201%202c-2%202-2%203-1%203%202%200%205-4%203-5s0-2%204-2l13-2c12-2%2013-3%2011%200-1%201-1%201%201%201%203%200%208-2%207-4%200-2%206-4%209-3l3-1%203-1%203-2c1-2%200-3-2-1m199%208l-3%201-3%201c-1%201%202%202%203%201l1%201-2%201-2%201%202%201v3l1%201v2l1%203%201%202%204%201-1-2c-3-2-3-3%201-1h2l2%202%203%205c3%202%206%203%206%201h1v1l1%201%205-2c4%200%204-2%200-2-2%200-3-1%200-3%201-2%201-2-1-4l-3-2v-3l-2%201h-2l-3-1c-1%201-1%200-1-1s0-2-1-1c-1%200-2-1-2-4-1-2-1-3-2-2-2%202-3%201-3-1l-1-2-2%201m-13%2027l1%203h-5c-6%200-8%201-5%204h2c0-2%202-3%202-1h3l6%203%206%204%203-1c2%200%200-3-3-4l-5-1c-3-1-3-1%200-1h3l-3-2-2-3%202-1h-5m-222%2011l-3%204h9l10-1c2-2%201-3-3-2h-3l3-1h4l1-1c1-1-1-1-3-1-3%200-5%200-4-1l-4-1c-3%200-4%201-7%204m-36%205l-3%201-6%201-4%202-5%203-4%204h4c4%200%207-2%208-6l2-2h14c2-2%201-3-1-3h-3l-1-1-1%201m128%201l1%203v1l-1%203%201%201c1-1%207%202%206%203l1%201v3l1%202c1%200%202%201%201%202l-2%201v1h6c2-2%203-1%202%201h1c1-1%201-1%203%202%201%203%207%205%207%203s-3-6-5-6l-2-4-1-4v-7c1-2-1-5-3-5l-3-1h-1c-2%201-8%200-8-1%200-2-3-1-4%201m142%2010c2%202%201%203-1%203s-2%200-1%202h4c-2-2%201-1%203%201l2%202%204%203c3%202%204%202%207%201%205-1%206-1%202-4l-3-1c-1%201-7-1-12-5-5-3-7-4-5-2m24%202l-2%202c-2%200-2%200%202%204l6%203v1c-2%201%201%202%205%202s4-1%202-3l-2-2%203-1c4-1%203-2-3-3-5-1-7-2-6-3l-2-1-3%201m-110%2013c0%202-2%203-5%201-2-1-4%200-3%202%202%201%209%203%2011%202l1%201-2%203c0%202-1%202-4%202l-5%201c-1%201-13%203-14%202l-1-2-2-1c-4%200-5-2-4-4%200-2%200-2-2-2s-3%201%200%205l1%206%202%202c1%201%203%200%203-1v-1c1-1%201%200%201%201%200%204%202%204%2010%203%2013-2%2018-3%2017-4h-3l-3-1c1-2%208-2%208%200l8%2012%205%202c3%200%204%200%207%203%202%203%203%203%205%202h2c2%201%201-1-1-3v-2l3%202%203%202c2%200%202%200%200-2l-4-2v-1l3-1c2%200%202%200%201-1-2-1-3-3%200-2v-2c-1-2%201-3%207-3%203%200%203%200%202-2l-4-1-5-2h-6c-3%202-4%202-6%201l-4-1c0%201%208%206%2011%206l3%202c0%201-5%202-7%201-1-1-1-1-1%201%202%204-5%203-7-1-2-3-1-5%201-2%203%202%204%200%201-3l-5-6c-2-3-4-3-2%201%202%203%200%203-5-1-5-3-5-4-3-5%201-2%201-2-2-3l-5-4c-1-2-1-2-1%200m79%202c-4%202-5%202-6%201h-3c1%201-9%204-14%204-2%200-3%201-2%202l10-2a582%20582%200%200110%200l1%202%204%202c3%202%205%202%2011-3%203-3%205-3%205-1h-1l-1%201%202%202%204%201%202%201%203%201%204%202%203%201c3%201%209%201%209-1l-3-1h-4l-2-3c-1-2-2-2%204%200v-1l-1-1-1-1c1-1-2-2-5-1-2%201-2%201-1%203%200%202%200%202-2%202l-1-3c0-2-4-4-7-3l-2-1c0-4-10-6-16-3m-234%202l-4%201-3%201H86l-5%201c2%200%203%204%201%204l-2-1c0-1-4-1-7%202-7%204-5%205%206%206l6%201%204-5c3-4%204-5%208-6%204%200%204%200%202-1-1-1-1-1%202-1s4%202%201%202c-1%201-1%201%201%201s4-2%202-4c0-1-1-2-2-1m111%205l-1%201-1%201v1l1%201-3%201c-3%200-3%200-2%201s1%201-1%202h-3l1-1c3-1-1-2-7-2l-6-1-1-1-1%201-3%203c-3%202-3%202-5%200-3-2-3-2-7-1s-4%201%201%204l4%203-3%203-3%201c-1%202-6%201-7-2l-1-2v2l1%203%201%202c0%203%202%204%205%204l2%201h2c3-2%207%200%207%202-1%201%200%203%201%203v2c-1%201%201%205%203%205l1-1-1-1-1-1c0-2%204-1%205%202%200%203%202%202%202-1%200-2-1-3-2-3l-3-1-1-2%208%204c1%202%204%201%204%200l-1-2-1-1%202-1c2%201%202%200%201-1%200-3%201-3%203%200%203%202%201%204-2%203l-1%201c0%201%203%203%205%203l2%201h1l1%201v3l2-2c0-4%202-4%202%200s-2%205-4%206v2c0%201-3-1-3-3h-2c-1%201-11%201-12-1l-10-1c-5%200-8%201-8%204l-1%201-3%202h-2c-2-1-7-1-8%201-1%201-1%201%202%201%206%200%2010%201%209%203h-3l-2-1%201%202v2c-2%200-3%203-2%203h1c1-1%207%200%207%201l-4%201-2%201c1%201-2%201-7%201-8%200-16-4-17-7s7-6%208-4h1c0-2%202-1%202%201l1%201%201-1%201-2c2-1%201-1-6-1-8%200-9%200-11%203s-9%204-19%200l-14-3c-6-2-11-6-9-7v-12l2-2-4%202-5%203v2c0%202-2%203-5%202-2%200-1%200%201%202%203%201%204%202%203%203-2%201%200%203%202%201l2-1-1%202c-3%203%200%205%208%206l9%203%203%202v2l-4%201h-3l2%201c2%200%202%200%201%202l-2%202c-4%200-5%200-3%201%201%201%201%201-1%201h-2c-1%201%200%201%203%201s4%200%203%201l-1%202%202-1c1-1%204-1%207%201s4%202%204%201c-1-1%205-2%207%200%201%201%200%201-3%201h-4l4%202%2010%201%2010%201c1%201%204%202%205%201l3%201c2%203%207%204%208%202l3-2v-1l3-1%203%201c-1%202%2017%203%2022%201h5l-3%201%204%201%206-1%2010-1-2%202-3%201-4%201h-3l3%201c4%200%206%202%204%203v1l3-2c2-1%202-1%200-3-1-1-1-1%201-1%204%200%205-1%204-3-1-1-1-1%201-1l2%202c1%202%201%202-1%202l-3%201c-1%201%200%201%203%201l5-1c0-2%207-4%208-3s8%200%209-1h1l2%201h9l-2-1c-2%200-2%200%200-1l6-1%204-2c2-2%202-2-3-2l-7%202c-3%202-11%204-8%202l1-2c0-1%206-3%2013-4%204%200%207-2%208-3l1-2c-2%201-9%202-11%201-2%200-2%200%201-2l3-3%203-1h2c0%201%204%202%206%201%203-1%202-2-1-1-2%200-2%200%200-1%202-2%202-2%200-3l-2-3-1-1c0%201-1%203-3%203-2%201-2%201-1%202%202%201-4%202-7%202h-2c0%202-2%203-3%201l-1-1c-4%201-10%200-10-1%201-1-3-3-7-3-2%200-3%200-2-1l-2-1v-1c1-2%201-2-2-5l-3-3-1-4-1-2-2%202c0%202-2%203-2%202v-2c3-2%202-3%200-5l-2-2h2l15-2%201-1c-1-1%201-1%204-1%205%200%205-1%200-2h-5l-1%201c-1%202-4%201-6-1h-1c0%204-12%206-12%202l-1-2c-1-1%200-1%202-1l1-1h-5c-1%201-2%200-5-3l-4-2%201%202c2%201%202%204-1%204-2%200-2%200-1-1%202%200%201-2-1-2l-7-4%202-2%202-4c-1-1%202-2%205-3%209%200%2014-1%2014-3l1-1c1%201%203-1%202-4%200-2-1-3-2-3v1M57%20199c0%203-1%203-3%203-6%200-1%202%2011%204l13%202%203-2c3-4%203-4-9-6-13-2-13-2-10-4l2-2h-3c-3%200-3%201-4%205m68%206l-2%201c-1%200-4%202-3%204h-5l-3%203c0%201%204%201%205-1v2c-1%201-1%202%201%202l1%202c-1%201%201%201%205%201%205%200%206%200%207-2l2-2v2c0%201%200%202%201%201%201%200%202-1%201-2%200-3-4-3-8%200l-4%202v-5l2-3v-5m197%201v1c-1%202%200%202%202%201%203-1%207%200%204%201-2%201-2%201%200%201%203-1%202%202-1%202-2%201-2%201-1%203l4%201c2-1%208%201%208%202l2%202%204%202c3%202%204%203%204%201l5-4%203-3h-6l-1-1h-2l-2%201c-2%202-3%202-8-1-3-2-3-3%202-4l2-2h-1l-2-1v-1l-3-1c-3%200-4%200-3%201l1%202-2-2-9-1m-85%2016l-5%202c-2%200-2%200-2%203%200%206%201%207%203%206v-2c-3-1-3-6%200-6v2c-2%202-1%202%209%202%209%200%2011-1%2011-2%200-2-3-2-4-1l-3-1-1-3c1-1%201-1-1-1h-3c-1-1-3%200-4%201m89%204c-3%201-3%201-1%201%204%200%205%202%202%202-2%201-2%201-1%203%202%201%202%202%201%202l-1%203c1%202%201%202-1%202l-4-1-2-1-6-2-2-2h7c1%201%206%200%206-1%200-2-5-4-8-4l-3-1v-1l-1%201c0%202-2%203-5%202-3%200-4%200-2%202%204%203%201%205-11%204-12%200-14%200-11%202%201%202%201%202-1%202-4%200-4%202%200%206%205%205%208%205%208-1%200-5%200-6%203-4l9%205-2-4-2-3%202%201h4l4%203%203%202%208-2%209-2%207-2c2-1%202-1-2-1-3%200-4%200-4-2l7-1c5%200%207-1%207-2%200-2-5-6-6-4h-3l-2-2h-6M89%20241c-3%202-3%203%200%203h2l-2%202-1%202c1%201-4%202-8%202l2%201c3%202%205%203%207%202l5%202c2%202%205%203%204%201-1-1%200-1%201-1l-1-1-3-2-3-1c-1%200-2%200-2-2s0-2%202-2l3%201%202%202h7l3-1-5-1c-5-1-9-5-9-7%201-2-1-2-4%200m122%205l-2%202-2%201c-4%202-4%205-1%207%204%201%2010%202%2011%201l1-1%201%201v1l1-2c-1-1%200-1%201-1%203%200%203-6%200-6l-3-1c-2-2-4-3-7-2M25%20322c-2%206-2%208-1%208l2-2c0-1%201-2%204-2l4%202%202%202a318%20318%200%2001-4-13c-2-5-4-3-7%205m95-6c0%202%200%203-3%202-3%200-5%202-5%206%200%205%202%206%206%206h4v-8l-1-8-1%202m-42%2011l1%208%201-3c0-2%200-3%203-2%203%200%205-2%205-5%200-5-2-7-6-7h-4v9m22-8v10c5%204%2012-2%209-8-2-3-7-4-9-2m67%201c-2%202-3%207-1%209%203%202%207%201%209-2%203-6-4-12-8-7m90%2065l-10%201-14%201-5%202h4l6-2c2%200%202%200%201%201l-2%202%205%201c7%201%2014-1%2010-2-2%200%200-2%202-2%203%200%209-3%207-3l-4%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"narrow":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAEq0lEQVQ4y02U60+URxTG3++t2No2NfGLfhDUlgjLQpEuyEVggeXiwsJeYAGF3QW57MICUgWqJsYaLppUrAjIzdCCt3VBjWnTGIkWVEAQ5Pa//DozVNIPT86ZM3Oe88yZ877a6uoqKysrrAj78eNHZdc3NtgQ2NzcZGtrS9gt5cvY2toa6+vrfPjwgYWFBXF+hf9zaNKRAYnXr18zOzu3vSkgkz+RSkhCWVRiaWmJmZcvefHiBcuC/BOpINwmezI9zVQwyEtxaHl5WSW8e/eOxcVFEZ9iWuzPzc2JgrNC2SLz8wu8evWKwKMAU1NTSrHk0WTVZ8+eMTw0xPPnz3n8OEggEGBiYoIhERsbHaW6uhq73c5Afz/Dw8MK4+PjBIWAe5P36O3tVTlrohWarHj9+nUGBwe5efMmV3+5SktzM81NTRQXF2O1FpGaeoLExOPYrFYuXbrExQsXaGlp4afWVm7c6KW7u5vLly8zMzODNjY2Rmdnp4Lf76fK46Gqqor6+nocdgfp6ekYDAaMRqPyU1NTqRb7Pp+PU+XlNInCkuzCxYvcvn0brb29XSV73B5qa2uprKyktLQUnU73n7JEEhISSEtLIz4+npiYGLKyssjNzcVkMuH1emk738a1nmtcuXIFTZIVWgpxOp3ielby8vIwm80qITY2loiICEUoC2VkZCi1cXFxOygoKCA7O1sp7enpQXOJg5KgsLBw53BUVJRSUi6uJAskCZXNoq8Wi4XomGilVsadJSWKsERYWVA+nmYpsJCSkqIOuVwu8vPzVb8yMzOVIvm68nHKykpVAdkWSS7bkpOTQ1FRkVrLPHlDraGhgaSkJNUzGZBXdbvcgqBM9apVvGRfX5/osZtih4OTJ08icyShXq9X6mQhqd5ms6GFh4er5krpccfi8IhXrqurU+RyTOQ15Kh0d3Xjb2xUiZLEIcglsc/ro6KiAmO6kX379qGFhoYREhKCLlKnxuL06Qo6OjoYGBjk1m+36O8f4OmTp2KYR3j48BFdnV2CqFE8QjNuMRkGQzx7v93Lrl0h7N9/AM3tqSDki8/Y/cXn7PlqN4ePhGKIP4YpOwN3VSUNjfWcO3+Wjp/bON/WSm1dNeb8PJJTEjl0+KDK+3JPCF9/swerzSLGpqCflLAGUg83cuJQA8mhPuH7yQg/K9aNxB+oJTnMR1ZEK8bwZvKi28nVt5H+fZOIe0n7zq98iTN5t9DskaPUpgc5cyJAdfIjalIfU58RpCYtQL0xSINpGlfCA0qi/qA0egKnsE79tl8WM7mN6Em1th0dQyuOHqHedJ/ajEm82ffxmwOcLQrSbAngy3nAOfsUrqTfsetGKNaP4IiSdlRZCbtuGFvkkIL0tXLDGCUxozhjx7Dr75B76FcKwvuwR93Bphuk8Gg/jughrDpp7yhI364f3ImdMtyl/MdtaG9n3yMx/3aZv/+coa7Gjz7yGLqjPxB+RIchLomcrHxyTQVYzA4c1nLMeVZcp2tobeng6fRfzL9Z5s0/2zza2vqq+I+Jv/DaKhub68qOj9/FU+XmeGICYWEHxdBHkGXKFF+FBa/PS3dPF9NPplhafr+To3iE/ReLNcOQ3elwnAAAAABJRU5ErkJggg==","aspectRatio":1,"src":"/static/429c92eecaab11778cf7fc863a217fcf/502b1/ai-prod.png","srcSet":"/static/429c92eecaab11778cf7fc863a217fcf/f2e6d/ai-prod.png 114w,\n/static/429c92eecaab11778cf7fc863a217fcf/4ddba/ai-prod.png 229w,\n/static/429c92eecaab11778cf7fc863a217fcf/502b1/ai-prod.png 457w,\n/static/429c92eecaab11778cf7fc863a217fcf/7ddc2/ai-prod.png 686w,\n/static/429c92eecaab11778cf7fc863a217fcf/435bf/ai-prod.png 914w,\n/static/429c92eecaab11778cf7fc863a217fcf/6050d/ai-prod.png 1200w","srcWebp":"/static/429c92eecaab11778cf7fc863a217fcf/15384/ai-prod.webp","srcSetWebp":"/static/429c92eecaab11778cf7fc863a217fcf/31fce/ai-prod.webp 114w,\n/static/429c92eecaab11778cf7fc863a217fcf/e3e25/ai-prod.webp 229w,\n/static/429c92eecaab11778cf7fc863a217fcf/15384/ai-prod.webp 457w,\n/static/429c92eecaab11778cf7fc863a217fcf/0258d/ai-prod.webp 686w,\n/static/429c92eecaab11778cf7fc863a217fcf/64ea2/ai-prod.webp 914w,\n/static/429c92eecaab11778cf7fc863a217fcf/9000d/ai-prod.webp 1200w","sizes":"(max-width: 457px) 100vw, 457px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M199%2053l-1%203c-1-1-1%200-1%202l-1%202-2%203c0%202-1%203-1%201%200-4-4-4-6-1l-2%203-1-3c-2-3-2-3-2-1-2%208-2%208%203%209l6%203c2%201%202%201%200%201-5%200%200%201%207%202l8%201h-20l-4-2-4-1c-1-1-2%200-3%201-1%203-3%204-4%201s-3-2-3%201l-1%204v-4c0-4-2-4-2%201l-1%203-1-4-1-3-1%202-1%202c-2-1-2%200-2%201l-2%202v1l1%202c-1%201-5-4-5-6%201-1%200-1-1-1s-2%200-1-1l-1-1-2%202-2%202v-1h-3c-2%201-2%201-1%202%202%201%200%203-3%202h-2l2-2c2-2%201-5-1-3l-2%202c0%202-1%203-3%203v-1l1-1-3%201c-2%202-3%202-4%201h-1v2l-2-2h-2l-4%202-4%201c-1%201-1%201%201%202l1%201h-3v1l-2%201c-2-1-2-1-2%201s0%202-1%200c-1-3-5-2-4%201%200%202%200%203-5%203l-5-2c0-2-4-1-8%202l-5%205c-3%202-4%206-2%206v2c-3%201-5-1-3-3v-3c-1-2-1-3%201-3%201%200%202-1%202-3v-3h-5c-5%201-5%201-4-1l2-2%201-2-2%201h-9l-1%202c0%202%200%203%201%202l2%201h2l2%201h3l2%201-2%202c-3%200-3%201-2%203%200%203%200%203-1%202-2-3-2-3-2%204-1%205-1%207-4%207l-1-1-5-1c-5%201-6%200-7-1-1-2-1-2-3-1-3%202-1%204%203%204%203%200%204%200%204%202s-2%204-3%203l-3%202-2%202h-1l-1%202-2%202-2%201-3%201-3-1-1-3-2-3c0-3-6%200-8%204l-4%203c-3%200-4%202-4%205h1c1-1%201%200%201%203v2l2-1v2l-2%202-1%201-2%202%201-3c1-1%201-2-1-2h-2a203%20203%200%2001-2%206c-2%203-1%204%202%203%202%200%202%200%201%201l-1%203-6%208c-1%200-1-3%201-5v-4l1-8%202-6v-2c0-2%200-2%201%200v-3c0-3%200-4%201-3s1%201%201-1v-1c1%201%201%201%201-2l2-8%201-5-1-1%201-1%204-5c4-7%204-8%201-6l-2%202%201-3v-3l-2%202-6%2013c-3%207-5%209-5%207v2c0%201%200%202-1%201-2-3-5%2013-5%2029l1%2012%201-1%202%202c2%200%202%200%200%201l-2%201h2c2%201%202%201%201%202H2l-1%201%201%202c1%201%200%206-1%207l-1%2010c0%209%200%2010%202%2011%201%201%202%202%201%203l1%202%204%202c2%201%203%202%204%201h4v1l1-1%202-1c2%200%202%200%200%203v5c-4%200%203%2012%209%2014l1%201%204%203c9%203%2015%207%2013%207l-12-5-11-5-4-2h5l-3-1-3-1c1%202-2%201-5-2l-5-5-2-6-3-4-2-1c-1-1-1%209-1%2021%200%2023%201%2030%205%2038l2%207%202%208c3%205%203%205-3%205H0v74h36l36%201%206%204c8%207%2017%2012%2020%2013l8%204a56%2056%200%200020%2010l3%201h8l-3%201c-5%201%205%202%2014%202%207-1%2010%200%207%202s7%202%2048%202c42%200%2046%200%2055-2%207-2%208-2%206-3h-4l-1-1-1-1h-3c-2-1-2-1%200-1%203%200%2015-4%2014-5l2-1%205-1%207-2%206-1%205-1c1%201%204%200%207-1%202-1%205-2%206-1%202%201%2010-5%2010-7l-2-2h-4c-2%200-2%200%201-2l2-3h1l1-1c-1-1%204-3%207-3%202%200%202%200-2%203l-5%202h5c4%200%206-1%209-3l4-2%2033-1h34v-74h-6c-4%200-6%200-5-1l8-19c2-7%202-9%203-32v-29l-1-3-3%203-4%204-6%205-5%205-5%204c-3%204-5%205-6%204l-9%203-7%204h-2c-1%202-7%204-9%204l1-2%203-3c0-1%201-2%202-1l4-1v-3c-2-1-2-2-2-3h5v-3l4-1%201%201v1l2-1%205-2c8-2%2020-9%2012-8-2%201-3%201-3-1l3-1c3%201%204%200%2012-6%202-2%202-2%200-2-2%201-2%201-2-1v-3c0-2-1-2-3-1h-2v-1l3-1c1-2%203-3%203-1v1c2%202%202-3%200-4l-2-2%203%201%204-1c-1-1%200-1%201-1%202%200%203%201%200%204l-1%202-1%202c-2%201-1%203%201%203%203%200%204-3%204-12%200-7%200-10-1-9l-1-1-2-1c-2%200-2%200%201-2%202-1%202-2%200-1l-1-1h-2c-4%200-7-2-4-4%201-1%201-1-1-1-1%200-2%200-1-2%200-2%200-2-2-3l-2-1h-1c-2%201-5%200-5-1l2-2c2%200%202-2-2-3l-2-3c1-1%200-1-3-1-5%200-7-1-6-2l-2-1v2c3%203-1%201-6-4-3-3-6-5-8-5-4%200-6-2-5-5s1-3-3-3l-8-2-7-3c-2%200-3-1-3-2h1l4%201c2%200%205%201%206%203l4%202-1-2c-2%200-2%200-1-1s1-1-1-2l-2-2c1-1%200-1-3-1-4%200-8-2-6-3%201-1%200-2-1-3l-2-2h2l2-2h2l2%201%203%201c3%200%203%200%202-1l-1-1v-1c-1-2%202-6%204-6%203%201%204-1%203-4l-2-2-1-1c0-2-3%201-3%203%200%205-7%2012-7%206l1-1c2%201%205-4%204-6l1-3v-1l-2%202-2%201-1-2v-2l1-2c1%200%202-5%201-6h-4c-2%201-2%202%200%201l1%201-2%201c-2%200-3%201-3%202h1c3-2%203%201%200%204l-2%201-2-3-2-3c0-1-1-2-2-1l-6-2-4-2h3c6-2%203-4-8-7l-1%203c0%203%200%203-3%203l-3-1-3-2c-2%200-2-1-2-4%201-3-1-5-2-1v1l1%201h-2l-1%202v2l-1-2c0-2%200-2-3%201l-2%202c0-1-1-1-2%201-1%201-1%201-1-2V74l-1%203c-2%204-2%203-2-1s-1-2-3%205c-1%202-1%202%201%202%203%200%204%200%204%203%200%202-1%203-4%203s-3%200-2-2c1-1%201-1-1-1l-1-1-1-2-1%202h-4l2%202c1%200%202%201%201%202l2%203h-3l-5%201%203%201%201%201-1%201%201%202%201%202c-1%201-1%201%200%200l4%201h1c-2-4%206-2%2010%202l2%201%203%203%202%202c2%200%205%203%205%204-1%200-8-3-8-5l-3-2-2-1c0-2-4-4-6-3-3%200-2%202%200%202l2%201h1l1%201%203%203c5%203%206%205%202%204l-5-2h-2l-3-1-2-1%202-1c2-1%201-1-2-1h-4l-1-1h-2l-1-1-6-3c-3-4-3-4-1-4h2l-2-3c-2-3-3-6%200-6l-1-1-6-1h-7l3%203%206%203%204%202h-3c-7-2-9-2-10-4-1-1-2-2-1-4l-1-4v-2c2-1%200-3-5-3l-4-1-2-3c-3-1-3-1-3%201s0%202-1%201l-1-2v2h-1l-2-2c-2%200-2%200-1-2s1-2-1-5l-3-4c0-2-5-10-6-10l1%204c2%205%203%209%201%206-3-6-7-7-7-3%200%203%200%203-2-2-2-7-3-8-3-5m169%2018l2%204c3%203%208%2013%208%2016l4%2012c5%2010%207%2019%205%2016s-1%201%201%204l3%202%201%203v1c1-1%205%207%206%2014s2%206%202-3c0-10-3-20-12-38-7-15-20-35-20-31m-11%2015l-2%201v1l-1%201h-2l1%201%201%201-1%201h-1l-3%201c-3%200-4%200-4%202l1%201%202%201%202-1c0-1%201-2%203-2%203%200%203%200%202%201-2%201-2%201%202%203%202%201%202%201-1%201-4-1-6%201-3%203h5c2%202%202%202%202%200h2c-1-2%201-3%201-1h3c2%200%201-2%200-3l-2-3-2-1h-1c1-1%200-3-1-5-1-3-3-5-3-3m-211%2017c-1%201-17%202-19%201l-7%201v1h7c5%201%201%203-6%203-4%200-4%200-3%201v1l-9-1c-5%200-7%200-6-1l-1-1-7%205-2%201h-3v2c-1%201-1%201%201%202s2%201%201%202c-2%202-2%203-1%203%202%200%205-4%203-5s0-2%204-2l13-2c12-2%2013-3%2011%200-1%201-1%201%201%201%203%200%208-2%207-4%200-2%206-4%209-3l3-1%203-1%203-2c1-2%200-3-2-1m199%208l-3%201-3%201c-1%201%202%202%203%201l1%201-2%201-2%201%202%201v3l1%201v2l1%203%201%202%204%201-1-2c-3-2-3-3%201-1h2l2%202%203%205c3%202%206%203%206%201h1v1l1%201%205-2c4%200%204-2%200-2-2%200-3-1%200-3%201-2%201-2-1-4l-3-2v-3l-2%201h-2l-3-1c-1%201-1%200-1-1s0-2-1-1c-1%200-2-1-2-4-1-2-1-3-2-2-2%202-3%201-3-1l-1-2-2%201m-13%2027l1%203h-5c-6%200-8%201-5%204h2c0-2%202-3%202-1h3l6%203%206%204%203-1c2%200%200-3-3-4l-5-1c-3-1-3-1%200-1h3l-3-2-2-3%202-1h-5m-222%2011l-3%204h9l10-1c2-2%201-3-3-2h-3l3-1h4l1-1c1-1-1-1-3-1-3%200-5%200-4-1l-4-1c-3%200-4%201-7%204m-36%205l-3%201-6%201-4%202-5%203-4%204h4c4%200%207-2%208-6l2-2h14c2-2%201-3-1-3h-3l-1-1-1%201m128%201l1%203v1l-1%203%201%201c1-1%207%202%206%203l1%201v3l1%202c1%200%202%201%201%202l-2%201v1h6c2-2%203-1%202%201h1c1-1%201-1%203%202%201%203%207%205%207%203s-3-6-5-6l-2-4-1-4v-7c1-2-1-5-3-5l-3-1h-1c-2%201-8%200-8-1%200-2-3-1-4%201m142%2010c2%202%201%203-1%203s-2%200-1%202h4c-2-2%201-1%203%201l2%202%204%203c3%202%204%202%207%201%205-1%206-1%202-4l-3-1c-1%201-7-1-12-5-5-3-7-4-5-2m24%202l-2%202c-2%200-2%200%202%204l6%203v1c-2%201%201%202%205%202s4-1%202-3l-2-2%203-1c4-1%203-2-3-3-5-1-7-2-6-3l-2-1-3%201m-110%2013c0%202-2%203-5%201-2-1-4%200-3%202%202%201%209%203%2011%202l1%201-2%203c0%202-1%202-4%202l-5%201c-1%201-13%203-14%202l-1-2-2-1c-4%200-5-2-4-4%200-2%200-2-2-2s-3%201%200%205l1%206%202%202c1%201%203%200%203-1v-1c1-1%201%200%201%201%200%204%202%204%2010%203%2013-2%2018-3%2017-4h-3l-3-1c1-2%208-2%208%200l8%2012%205%202c3%200%204%200%207%203%202%203%203%203%205%202h2c2%201%201-1-1-3v-2l3%202%203%202c2%200%202%200%200-2l-4-2v-1l3-1c2%200%202%200%201-1-2-1-3-3%200-2v-2c-1-2%201-3%207-3%203%200%203%200%202-2l-4-1-5-2h-6c-3%202-4%202-6%201l-4-1c0%201%208%206%2011%206l3%202c0%201-5%202-7%201-1-1-1-1-1%201%202%204-5%203-7-1-2-3-1-5%201-2%203%202%204%200%201-3l-5-6c-2-3-4-3-2%201%202%203%200%203-5-1-5-3-5-4-3-5%201-2%201-2-2-3l-5-4c-1-2-1-2-1%200m79%202c-4%202-5%202-6%201h-3c1%201-9%204-14%204-2%200-3%201-2%202l10-2a582%20582%200%200110%200l1%202%204%202c3%202%205%202%2011-3%203-3%205-3%205-1h-1l-1%201%202%202%204%201%202%201%203%201%204%202%203%201c3%201%209%201%209-1l-3-1h-4l-2-3c-1-2-2-2%204%200v-1l-1-1-1-1c1-1-2-2-5-1-2%201-2%201-1%203%200%202%200%202-2%202l-1-3c0-2-4-4-7-3l-2-1c0-4-10-6-16-3m-234%202l-4%201-3%201H86l-5%201c2%200%203%204%201%204l-2-1c0-1-4-1-7%202-7%204-5%205%206%206l6%201%204-5c3-4%204-5%208-6%204%200%204%200%202-1-1-1-1-1%202-1s4%202%201%202c-1%201-1%201%201%201s4-2%202-4c0-1-1-2-2-1m111%205l-1%201-1%201v1l1%201-3%201c-3%200-3%200-2%201s1%201-1%202h-3l1-1c3-1-1-2-7-2l-6-1-1-1-1%201-3%203c-3%202-3%202-5%200-3-2-3-2-7-1s-4%201%201%204l4%203-3%203-3%201c-1%202-6%201-7-2l-1-2v2l1%203%201%202c0%203%202%204%205%204l2%201h2c3-2%207%200%207%202-1%201%200%203%201%203v2c-1%201%201%205%203%205l1-1-1-1-1-1c0-2%204-1%205%202%200%203%202%202%202-1%200-2-1-3-2-3l-3-1-1-2%208%204c1%202%204%201%204%200l-1-2-1-1%202-1c2%201%202%200%201-1%200-3%201-3%203%200%203%202%201%204-2%203l-1%201c0%201%203%203%205%203l2%201h1l1%201v3l2-2c0-4%202-4%202%200s-2%205-4%206v2c0%201-3-1-3-3h-2c-1%201-11%201-12-1l-10-1c-5%200-8%201-8%204l-1%201-3%202h-2c-2-1-7-1-8%201-1%201-1%201%202%201%206%200%2010%201%209%203h-3l-2-1%201%202v2c-2%200-3%203-2%203h1c1-1%207%200%207%201l-4%201-2%201c1%201-2%201-7%201-8%200-16-4-17-7s7-6%208-4h1c0-2%202-1%202%201l1%201%201-1%201-2c2-1%201-1-6-1-8%200-9%200-11%203s-9%204-19%200l-14-3c-6-2-11-6-9-7v-12l2-2-4%202-5%203v2c0%202-2%203-5%202-2%200-1%200%201%202%203%201%204%202%203%203-2%201%200%203%202%201l2-1-1%202c-3%203%200%205%208%206l9%203%203%202v2l-4%201h-3l2%201c2%200%202%200%201%202l-2%202c-4%200-5%200-3%201%201%201%201%201-1%201h-2c-1%201%200%201%203%201s4%200%203%201l-1%202%202-1c1-1%204-1%207%201s4%202%204%201c-1-1%205-2%207%200%201%201%200%201-3%201h-4l4%202%2010%201%2010%201c1%201%204%202%205%201l3%201c2%203%207%204%208%202l3-2v-1l3-1%203%201c-1%202%2017%203%2022%201h5l-3%201%204%201%206-1%2010-1-2%202-3%201-4%201h-3l3%201c4%200%206%202%204%203v1l3-2c2-1%202-1%200-3-1-1-1-1%201-1%204%200%205-1%204-3-1-1-1-1%201-1l2%202c1%202%201%202-1%202l-3%201c-1%201%200%201%203%201l5-1c0-2%207-4%208-3s8%200%209-1h1l2%201h9l-2-1c-2%200-2%200%200-1l6-1%204-2c2-2%202-2-3-2l-7%202c-3%202-11%204-8%202l1-2c0-1%206-3%2013-4%204%200%207-2%208-3l1-2c-2%201-9%202-11%201-2%200-2%200%201-2l3-3%203-1h2c0%201%204%202%206%201%203-1%202-2-1-1-2%200-2%200%200-1%202-2%202-2%200-3l-2-3-1-1c0%201-1%203-3%203-2%201-2%201-1%202%202%201-4%202-7%202h-2c0%202-2%203-3%201l-1-1c-4%201-10%200-10-1%201-1-3-3-7-3-2%200-3%200-2-1l-2-1v-1c1-2%201-2-2-5l-3-3-1-4-1-2-2%202c0%202-2%203-2%202v-2c3-2%202-3%200-5l-2-2h2l15-2%201-1c-1-1%201-1%204-1%205%200%205-1%200-2h-5l-1%201c-1%202-4%201-6-1h-1c0%204-12%206-12%202l-1-2c-1-1%200-1%202-1l1-1h-5c-1%201-2%200-5-3l-4-2%201%202c2%201%202%204-1%204-2%200-2%200-1-1%202%200%201-2-1-2l-7-4%202-2%202-4c-1-1%202-2%205-3%209%200%2014-1%2014-3l1-1c1%201%203-1%202-4%200-2-1-3-2-3v1M57%20199c0%203-1%203-3%203-6%200-1%202%2011%204l13%202%203-2c3-4%203-4-9-6-13-2-13-2-10-4l2-2h-3c-3%200-3%201-4%205m68%206l-2%201c-1%200-4%202-3%204h-5l-3%203c0%201%204%201%205-1v2c-1%201-1%202%201%202l1%202c-1%201%201%201%205%201%205%200%206%200%207-2l2-2v2c0%201%200%202%201%201%201%200%202-1%201-2%200-3-4-3-8%200l-4%202v-5l2-3v-5m197%201v1c-1%202%200%202%202%201%203-1%207%200%204%201-2%201-2%201%200%201%203-1%202%202-1%202-2%201-2%201-1%203l4%201c2-1%208%201%208%202l2%202%204%202c3%202%204%203%204%201l5-4%203-3h-6l-1-1h-2l-2%201c-2%202-3%202-8-1-3-2-3-3%202-4l2-2h-1l-2-1v-1l-3-1c-3%200-4%200-3%201l1%202-2-2-9-1m-85%2016l-5%202c-2%200-2%200-2%203%200%206%201%207%203%206v-2c-3-1-3-6%200-6v2c-2%202-1%202%209%202%209%200%2011-1%2011-2%200-2-3-2-4-1l-3-1-1-3c1-1%201-1-1-1h-3c-1-1-3%200-4%201m89%204c-3%201-3%201-1%201%204%200%205%202%202%202-2%201-2%201-1%203%202%201%202%202%201%202l-1%203c1%202%201%202-1%202l-4-1-2-1-6-2-2-2h7c1%201%206%200%206-1%200-2-5-4-8-4l-3-1v-1l-1%201c0%202-2%203-5%202-3%200-4%200-2%202%204%203%201%205-11%204-12%200-14%200-11%202%201%202%201%202-1%202-4%200-4%202%200%206%205%205%208%205%208-1%200-5%200-6%203-4l9%205-2-4-2-3%202%201h4l4%203%203%202%208-2%209-2%207-2c2-1%202-1-2-1-3%200-4%200-4-2l7-1c5%200%207-1%207-2%200-2-5-6-6-4h-3l-2-2h-6M89%20241c-3%202-3%203%200%203h2l-2%202-1%202c1%201-4%202-8%202l2%201c3%202%205%203%207%202l5%202c2%202%205%203%204%201-1-1%200-1%201-1l-1-1-3-2-3-1c-1%200-2%200-2-2s0-2%202-2l3%201%202%202h7l3-1-5-1c-5-1-9-5-9-7%201-2-1-2-4%200m122%205l-2%202-2%201c-4%202-4%205-1%207%204%201%2010%202%2011%201l1-1%201%201v1l1-2c-1-1%200-1%201-1%203%200%203-6%200-6l-3-1c-2-2-4-3-7-2M25%20322c-2%206-2%208-1%208l2-2c0-1%201-2%204-2l4%202%202%202a318%20318%200%2001-4-13c-2-5-4-3-7%205m95-6c0%202%200%203-3%202-3%200-5%202-5%206%200%205%202%206%206%206h4v-8l-1-8-1%202m-42%2011l1%208%201-3c0-2%200-3%203-2%203%200%205-2%205-5%200-5-2-7-6-7h-4v9m22-8v10c5%204%2012-2%209-8-2-3-7-4-9-2m67%201c-2%202-3%207-1%209%203%202%207%201%209-2%203-6-4-12-8-7m90%2065l-10%201-14%201-5%202h4l6-2c2%200%202%200%201%201l-2%202%205%201c7%201%2014-1%2010-2-2%200%200-2%202-2%203%200%209-3%207-3l-4%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"seo":{"src":"/static/429c92eecaab11778cf7fc863a217fcf/6050d/ai-prod.png"}}},{"id":"20cd380e-b562-54ab-977b-7227a1fa957d","slug":"/mcp-servers","secret":false,"title":"MCP Servers","author":"Luke Celitan","date":"December 19th, 2025","dateForSEO":"2025-12-19T00:00:00.000Z","timeToRead":6,"excerpt":"Uncover everything about MCP servers—from USB-C analogies for AI to advanced protocol, practical code, and real-world enterprise workflows. Beginner-friendly, expert-depth, packed with examples and best practices.","subscription":true,"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"MCP Servers\",\n  \"excerpt\": \"Uncover everything about MCP servers—from USB-C analogies for AI to advanced protocol, practical code, and real-world enterprise workflows. Beginner-friendly, expert-depth, packed with examples and best practices.\",\n  \"date\": \"2025-12-19T00:00:00.000Z\",\n  \"hero\": \"mcp-cover.png\",\n  \"author\": \"Luke Celitan\",\n  \"category\": \"Post\",\n  \"tech\": [\"AI\", \"TS\"]\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h2\", {\n    \"id\": \"the-architects-manifesto-on-model-context-protocol-from-usb-c-simplicity-to-enterprise-survival\"\n  }, \"The Architect\\u2019s Manifesto on Model Context Protocol: From USB-C Simplicity to Enterprise Survival\"), mdx(\"p\", null, \"The software that we design and implement has to be reliable, maintainable and\\nscalable. If a software is not designed with these qualities in mind, it can\\nturn into a mess. This article discusses the importance of practicing clean code\\nand architecture in the emerging world of AI agents, specifically focusing on\\nthe Model Context Protocol (MCP), to avoid the pitfalls of not applying them.\"), mdx(\"h3\", {\n    \"id\": \"the-paradigm-shift-from-chatbots-to-agentic-integration\"\n  }, \"The Paradigm Shift: From Chatbots to Agentic Integration\"), mdx(\"p\", null, \"The software industry is currently hitting a massive inflection point. For\\nyears, we\\u2019ve been obsessed with the models themselves\\u2014parameter counts,\\nreasoning benchmarks, and context windows. But integration remained a \\u201Cmessy\\naffair\\u201D of bespoke API connectors and fragile scripts. We faced a classic N\\xD7M\\nproblem: every AI assistant needed a unique connector for every data source.\"), mdx(\"p\", null, \"The \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Model Context Protocol (MCP)\"), \", open-sourced by Anthropic and adopted by\\ngiants like OpenAI and Microsoft, is the \\u201CUSB-C moment\\u201D for AI. It collapses\\nthat complexity into a universal standard. But as any senior architect knows,\\nwith great connectivity comes great risk. This isn\\u2019t just about making \\u201Cchatbots\\ntalk\\u201D; it\\u2019s about making \\u201Cagents act.\\u201D\"), mdx(\"p\", null, \"When in need of good architecture patterns look out for existing platforms and\\nsolutions. Open source projects that survived the harsh reality of software\\nengineering will be a great source for anyone who is looking for good patterns.\\nWith time and experience a software engineer will be able to tell apart the\\nanti-patterns and patterns one should follow in this new agentic landscape.\"), mdx(\"h4\", {\n    \"id\": \"mcp-architecture\"\n  }, \"MCP Architecture\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-mermaid\"\n  }, \"graph L\\nB[Prompt argument entry] --> C[Client invokes MCP tool: searchFlights]\\nC --> D[Server queries external APIs]\\nD --> E[Tools response: suggested flights]\\nE --> F[Client invokes calendar check]\\nF --> G[Server returns availability]\\nG --> H[Booking tools, notifications]\\n\")), mdx(\"h2\", {\n    \"id\": \"what-does-a-clean-mcp-architecture-look-like\"\n  }, \"What does a Clean MCP Architecture look like?\"), mdx(\"p\", null, \"When it comes to MCP, there are three core primitives you must understand.\\nMisunderstanding the boundaries between these is the fastest way to turn your\\nproject into an unmaintainable tangle.\"), mdx(\"p\", null, \"To secure and architect for MCP, one must first understand its internal\\nmechanics. It is not a REST API. It is not a simple webhook. It is a stateful,\\nbidirectional session protocol built on top of JSON-RPC 2.0. This choice of\\nfoundation is critical: unlike stateless HTTP requests, an MCP session assumes a\\npersistent context where capabilities are negotiated, and state is maintained.\"), mdx(\"p\", null, \"The protocol abstracts all interactions into three distinct primitives.\\nUnderstanding the boundaries between these is essential for enforcing the Single\\nResponsibility Principle in server design.Resources are the passive read layer\\nof the protocol. They represent data that exists in the system\\u2014files, database\\nrows, log streams, or API responses.\"), mdx(\"h3\", {\n    \"id\": \"1-resources-the-read-layer\"\n  }, \"1. Resources (The Read Layer)\"), mdx(\"p\", null, \"These are passive data sources\\u2014files, logs, or database rows. They are addressed\\nvia standard URIs (e.g., \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"file:///logs/app.log\"), \" or \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"postgres://db/users/123\"), \").\\nUnlike tools, they are generally \\u201Csafe\\u201D but require careful handling of\\npermissions.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Advanced Concepts:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Complex Resource Templates & Dynamic Discovery:\"), \" Support parameter\\ncompletion for dynamic URIs.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Resource Change Subscriptions:\"), \" Instead of having the LLM poll for changes\\n(wasting tokens and increasing latency), let the server push updates to the\\nmodel via JSON-RPC. It keeps the \\u201Cview\\u201D synchronized efficiently.\")), mdx(\"h3\", {\n    \"id\": \"2-tools-the-action-layer\"\n  }, \"2. Tools (The Action Layer)\"), mdx(\"p\", null, \"These are executable functions. Unlike resources, tools have \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"side effects\"), \".\\nThey change the state of the world. This is where you must implement\\n\", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Human-in-the-Loop (HITL)\"), \" approvals. Never let an agent delete a production\\ndatabase row without a UI confirmation.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"TypeScript Server Definition Example:\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-typescript\"\n  }, \"import { createServer, Tool } from '@modelcontextprotocol/server';\\n\\nconst searchFlights: Tool = {\\n  name: 'searchFlights',\\n  description: 'Search for flights',\\n  inputSchema: {\\n    type: 'object',\\n    properties: {\\n      origin: { type: 'string' },\\n      destination: { type: 'string' },\\n      date: { type: 'string' },\\n    },\\n    required: ['origin', 'destination', 'date'],\\n  },\\n  execute: async ({ origin, destination, date }) => {\\n    // Call airline APIs, return the results\\n    return [{ type: 'text', text: 'Flight: NYC to Barcelona, June 15' }];\\n  },\\n};\\n\\nconst mcpServer = createServer({ tools: [searchFlights] });\\nmcpServer.listen();\\n\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Idiomatic Python Example:\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"from mcp_sdk.server import MCPServer, Tool\\n\\ndef search_flights_handler(origin, destination, date):\\n    # Connect to airline APIs, process the response\\n    return [{ 'type': 'text', 'text': f'Flight: {origin} to {destination}, {date}' }]\\n\\nserver = MCPServer(tools=[Tool('searchFlights', search_flights_handler)])\\nserver.run()\\n\")), mdx(\"h3\", {\n    \"id\": \"3-prompts-the-workflow-layer\"\n  }, \"3. Prompts (The Workflow Layer)\"), mdx(\"p\", null, \"Prompts are pre-defined templates that encapsulate \\u201Cexpert knowledge.\\u201D Instead\\nof forcing the user to type a perfect prompt, the server exposes a \\u201CDebug Error\\u201D\\nprompt that automatically packages the relevant logs and tools for the LLM.\"), mdx(\"h2\", {\n    \"id\": \"mcp-architecture-essentials\"\n  }, \"MCP Architecture Essentials\"), mdx(\"h3\", {\n    \"id\": \"security-first-the-lethal-trifecta\"\n  }, \"Security First: The \\u201CLethal Trifecta\\u201D\"), mdx(\"p\", null, \"The best present any software architect can do for himself is to start the\\ndesign from security first perspective. We are witnessing the emergence of the\\n\", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"\\u201CLethal Trifecta\\u201D\"), \":\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Autonomous Tool Use\"), \" (Execution)\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Private Data Access\"), \" (Sensitive Info)\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Probabilistic Decision Making\"), \" (The LLM)\")), mdx(\"p\", null, \"When these three combine, traditional firewalls fail. You are handing a\\nnon-deterministic engine direct access to your enterprise nervous system. Even\\nif your code is squeaky clean but you did not plan for Indirect Prompt\\nInjection, you may end up losing reputation or feel wrath of your client when\\ntheir agent executes a malicious instruction buried in a support ticket.\"), mdx(\"h3\", {\n    \"id\": \"security-boundaries--enforcement\"\n  }, \"Security Boundaries & Enforcement\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Roots:\"), \" Clients specify folders/files for server focus. The server \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"should\"), \"\\nrespect roots, and the OS/sandbox enforces them.\"), mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Example Root:\"), mdx(\"pre\", {\n    parentName: \"li\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-json\"\n  }, \"{\\n  \\\"uri\\\": \\\"file:///Users/agent/travel\\\",\\n  \\\"name\\\": \\\"Travel Planning Workspace\\\"\\n}\\n\")))))), mdx(\"h3\", {\n    \"id\": \"the-transport-layer-reality\"\n  }, \"The Transport Layer Reality\"), mdx(\"p\", null, \"Do not be fooled by the simplicity of local development.\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Stdio (Standard Input/Output):\"), \" Great for local debugging, but a massive\\nblind spot. It creates a \\u201CConfused Deputy\\u201D where the server inherits the full\\npermissions of the local user.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"SSE (Server-Sent Events):\"), \" The mandatory standard for production. It allows\\nyou to run the MCP server as an isolated microservice (e.g., on Kubernetes),\\ndecoupled from the client, enabling proper network segmentation and logging.\")), mdx(\"h3\", {\n    \"id\": \"real-time-notification-patterns\"\n  }, \"Real-Time Notification Patterns\"), mdx(\"p\", null, \"Servers send notifications (list changes, resource updates) via JSON-RPC.\\nClients refresh tool/resource registries and notify models.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Error Handling Example:\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-json\"\n  }, \"{\\n  \\\"jsonrpc\\\": \\\"2.0\\\",\\n  \\\"id\\\": 99,\\n  \\\"error\\\": {\\n    \\\"code\\\": -32602,\\n    \\\"message\\\": \\\"Invalid params\\\",\\n    \\\"data\\\": { \\\"missing\\\": \\\"destination\\\" }\\n  }\\n}\\n\")), mdx(\"h2\", {\n    \"id\": \"defense-in-depth-the-zero-trust-architecture\"\n  }, \"Defense in Depth: The Zero Trust Architecture\"), mdx(\"p\", null, \"To deploy MCP in an enterprise environment, we must abandon the assumption that\\n\\u201Clocal is safe\\u201D or \\u201Cinternal is trusted.\\u201D We require a Zero Trust architecture\\nspecifically designed for agentic workflows.\"), mdx(\"h3\", {\n    \"id\": \"the-gateway-pattern\"\n  }, \"The Gateway Pattern\"), mdx(\"p\", null, \"No Client (agent) should ever connect directly to a backend MCP Service. All\\ntraffic must be mediated by a Gateway that enforces essential controls:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Centralized Authentication:\"), \" The Gateway terminates OAuth 2.1 flows and\\nverifies identity. It ensures that the requesting user or agent is authorized\\nto speak to the downstream service.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Protocol Inspection:\"), \" Serving as a Layer 7 firewall for JSON-RPC, the\\nGateway logs every method call, argument, and response \\u2014 providing a full\\naudit trail of \\u201Cwhat the agent did.\\u201D\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Policy Enforcement:\"), \" Implements granular, role-based rules. Example:\\n\\u201CMarketing Agents can read customer data but cannot delete it.\\u201D These policies\\nlive in the Gateway, decoupling security from individual servers.\")), mdx(\"h3\", {\n    \"id\": \"identity-and-authentication-oauth-21--rfc-8707\"\n  }, \"Identity and Authentication: OAuth 2.1 + RFC 8707\"), mdx(\"p\", null, \"A simple API key is insufficient for MCP. Robust implementations must adopt\\nOAuth 2.1 with \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"RFC 8707 (Resource Indicators)\"), \" to prevent Token Replay\\nattacks within a service mesh.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"The Authentication Flow:\")), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Discovery:\"), \" Client connects to the server\\u2019s public endpoint; receives a\\n\", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"401 Unauthorized\"), \" with authorization metadata.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Authorization:\"), \" User grants consent via the Authorization Server (e.g.,\\nOkta, Auth0).\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Token Issuance:\"), \" Auth server issues a JWT with an \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"aud\"), \" (audience) claim\\nmatching the MCP server\\u2019s ID.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Access:\"), \" Client presents the token in the \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Authorization: Bearer\"), \" header.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Validation:\"), \" The MCP server validates signature and audience \\u2014 rejecting\\ntokens issued for other servers.\")), mdx(\"p\", null, \"Tokens are scoped per resource. A credential valid for the Weather Server cannot\\naccess the Bank Server.\"), mdx(\"h3\", {\n    \"id\": \"human-in-the-loop-hitl-and-consent\"\n  }, \"Human-in-the-Loop (HITL) and Consent\"), mdx(\"p\", null, \"Security cannot be fully automated. When agents initiate sensitive actions\\n(payments, deletions, public posts), the protocol requires human confirmation.\"), mdx(\"p\", null, \"The Client must pause execution and request consent:\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"\\u201CThe agent wants to execute delete_database(id=prod-db). Do you approve?\\u201D\")), mdx(\"p\", null, \"This design transforms the agent from \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"autonomous\"), \" to \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"co-pilot\"), \" for high-risk\\noperations. Annotating tools as sensitive is the server\\u2019s duty; enforcing\\nconfirmation is the client\\u2019s. Backend RBAC remains the final safeguard if a\\nmalicious client bypasses HITL controls.\"), mdx(\"h3\", {\n    \"id\": \"network-isolation-and-binding\"\n  }, \"Network Isolation and Binding\"), mdx(\"p\", null, \"For local servers: \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"bind only to loopback interfaces\"), \" (\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"127.0.0.1\"), \" or \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"::1\"), \").\\nNever use \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"0.0.0.0\"), \".\"), mdx(\"p\", null, \"For remote deployments: host MCP servers within a private subnet accessible only\\nvia the Gateway. Use \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"mutual TLS (mTLS)\"), \" between Gateway and servers to block\\nunauthorized lateral movement within clusters.\"), mdx(\"h2\", {\n    \"id\": \"enterprise-architecture-patterns-and-implementation\"\n  }, \"Enterprise Architecture: Patterns and Implementation\"), mdx(\"h3\", {\n    \"id\": \"the-monolith-anti-pattern\"\n  }, \"The Monolith Anti-Pattern\"), mdx(\"p\", null, \"A common early mistake: building a \\u201CCompany Unified Server\\u201D connecting Slack,\\nSQL, Jira, and more \\u2014 a single Python or Node.js process performing all roles.\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"The Risks:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Security:\"), \" A vulnerability in one module exposes all credentials.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Dependency Hell:\"), \" Conflicting SDKs balloon container complexity.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Scalability:\"), \" Cannot scale wiki search independently from database queries.\")), mdx(\"h3\", {\n    \"id\": \"domain-driven-mesh\"\n  }, \"Domain-Driven Mesh\"), mdx(\"p\", null, \"The recommended pattern: deploy domain-focused, single-purpose MCP servers.\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Domain\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Server Name\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Responsibility\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Example Tools\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Data\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"mcp-server-sales-db\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Read-only access to sales data\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"query_sales_by_region\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"get_customer_ltv\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Knowledge\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"mcp-server-confluence\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Semantic search of internal docs\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"search_wiki\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"get_page_content\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"DevOps\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"mcp-server-k8s-ops\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Cluster maintenance\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"list_pods\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"restart_deployment\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"get_logs\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Identity\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"mcp-server-directory\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"User lookup and org chart\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"find_user_email\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"get_manager\"))))), mdx(\"p\", null, \"The Gateway aggregates these services, while the LLM orchestrates logic across\\nthem. Access is tightly scoped \\u2014 e.g., HR agents can query directory data but\\nnot deployment logs.\"), mdx(\"h3\", {\n    \"id\": \"clean-architecture-for-server-code\"\n  }, \"Clean Architecture for Server Code\"), mdx(\"p\", null, \"MCP servers are production-grade applications, not scripts.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"A Python implementation might follow:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"project_root/\\n\\u251C\\u2500\\u2500 src/\\n\\u2502   \\u251C\\u2500\\u2500 infrastructure/   # Frameworks & Drivers\\n\\u2502   \\u251C\\u2500\\u2500 domain/           # Enterprise Logic (models, exceptions)\\n\\u2502   \\u251C\\u2500\\u2500 services/         # Use Cases (e.g., weather_service.py)\\n\\u2502   \\u251C\\u2500\\u2500 mcp_layer/        # MCP controller: tools, resources, server\\n\\u2502   \\u2514\\u2500\\u2500 main.py           # Bootstrap\\n\\u251C\\u2500\\u2500 tests/\\n\\u2502   \\u251C\\u2500\\u2500 unit/\\n\\u2502   \\u251C\\u2500\\u2500 integration/\\n\\u2502   \\u2514\\u2500\\u2500 contract/\\n\\u2514\\u2500\\u2500 Dockerfile\\n\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Key Practices:\")), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Separation of Concerns:\"), \" Business logic decoupled from MCP libraries.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Dependency Injection:\"), \" Enables testable tool layers.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Multi-Level Validation:\"), \" JSON schema + domain rule validation (e.g., \\u201CCity\\nname cannot contain numbers\\u201D).\")), mdx(\"h3\", {\n    \"id\": \"platform-specific-integrations\"\n  }, \"Platform-Specific Integrations\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"AWS Bedrock:\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Use Bedrock\\u2019s \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"AgentCore\"), \" runtime. Configure Auth0 for dynamic client\\nregistration; ensure JWT audience parameter alignment. Deploy via the\\n\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"agentcore launch\"), \" workflow (ECR + runtime registration).\"), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Google ADK:\"), mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Define \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"LlmAgent\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"McpToolset\"), \" in Python. When bridging Node.js tools via\\n\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"StdioServerParameters\"), \", use \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"absolute paths\"), \" for stability within ADK\\ncontexts.\"), mdx(\"h2\", {\n    \"id\": \"the-context-economy-optimizing-token-usage\"\n  }, \"The Context Economy: Optimizing Token Usage\"), mdx(\"p\", null, \"Context is currency in MCP design. Bloated prompts waste tokens and degrade\\nperformance.\"), mdx(\"h3\", {\n    \"id\": \"the-bloat-problem\"\n  }, \"The Bloat Problem\"), mdx(\"p\", null, \"Wrapping broad APIs (like AWS CLI) floods context with needless schemas.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Cost:\"), \" Increased token usage.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Performance:\"), \" Reasoning degradation (\\u201CThe Paradox of Choice\\u201D).\"), mdx(\"h3\", {\n    \"id\": \"progressive-disclosure\"\n  }, \"Progressive Disclosure\"), mdx(\"p\", null, \"Expose a single tool like \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"list_available_tools(category)\"), \" to reveal\\ndomain-specific tools dynamically.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"This minimizes irrelevant context and optimizes focus.\"), mdx(\"h3\", {\n    \"id\": \"code-mode-execute-dont-transmit\"\n  }, \"Code Mode: Execute, Don\\u2019t Transmit\"), mdx(\"p\", null, \"Instead of returning bulky data via tool calls, enable safe code execution:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"LLM writes: \\u201CFilter rows where column A > 10.\\u201D\\nServer executes locally and returns \\\"42\\\" instead of 10MB of CSV.\\n\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Benefit:\"), \" Dramatic token reduction.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Risk:\"), \" Must use hardened sandboxes (e.g., gVisor, Firecracker).\"), mdx(\"h3\", {\n    \"id\": \"the-art-of-tool-descriptions\"\n  }, \"The Art of Tool Descriptions\"), mdx(\"p\", null, \"Tool descriptions are prompts in disguise. Write prescriptive guidance (e.g.,\\n\\u201CUse before refunding to verify customer eligibility.\\u201D)\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Avoid implementation details and audit descriptions for prompt injection risks.\"), mdx(\"h2\", {\n    \"id\": \"operational-excellence\"\n  }, \"Operational Excellence\"), mdx(\"h3\", {\n    \"id\": \"configuration-management\"\n  }, \"Configuration Management\"), mdx(\"p\", null, \"Prevent drift via schema-validation frameworks (Pydantic, Zod).\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Crash fast on missing or malformed configs. Inject secrets at runtime through\\nVaults, not Docker images.\"), mdx(\"h3\", {\n    \"id\": \"logging-and-tracing\"\n  }, \"Logging and Tracing\"), mdx(\"p\", null, \"Each request must carry a \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"trace_id\"), \" propagated through all logs.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Use fully structured JSON and redact sensitive data:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-json\"\n  }, \"{\\n  \\\"event\\\": \\\"tool_execution_start\\\",\\n  \\\"tool_name\\\": \\\"query_db\\\",\\n  \\\"trace_id\\\": \\\"a1b2-c3d4\\\",\\n  \\\"user_id\\\": \\\"user_123\\\"\\n}\\n\")), mdx(\"h3\", {\n    \"id\": \"chaos-engineering-for-agents\"\n  }, \"Chaos Engineering for Agents\"), mdx(\"p\", null, \"Test resilience under failure:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Latency injection (tool stalls).\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Malformed responses.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Context flooding (>5MB).\")), mdx(\"h3\", {\n    \"id\": \"deployment-checklist\"\n  }, \"Deployment Checklist\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Category\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Requirement\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Transport\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Use SSE (HTTP) only; no Stdio tunnels.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Network\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Bind localhost for dev; restrict ingress in containers.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Identity/Auth\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"OAuth 2.1 with audience validation.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Security\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Least privilege IAM; enforce input validation.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Operations\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Enable per-user/tool rate limits.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Compliance\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"HITL required for destructive tools.\")))), mdx(\"h2\", {\n    \"id\": \"conclusion-the-future-of-agentic-identity\"\n  }, \"Conclusion: The Future of Agentic Identity\"), mdx(\"p\", null, \"The Model Context Protocol is more than a technical standard \\u2014 it\\u2019s the\\ninfrastructure for a new digital workforce.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Today, agents act under \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"User Identity\"), \". Tomorrow, they will hold \", mdx(\"em\", {\n    parentName: \"p\"\n  }, \"Service\\nIdentity\"), \": distinct permissions, audit trails, and governance via an \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Agent\\nControl Plane\"), \".\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"Until then, the lesson remains: Build with Zero Trust.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Validate every input.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Assume every agent is compromised.\", mdx(\"br\", {\n    parentName: \"p\"\n  }), \"\\n\", \"Never trust a tool description blindly. MCP is high-voltage infrastructure \\u2014\\npowerful enough to energize your enterprise, but dangerous enough to burn it\\ndown without insulation.\")));\n}\n;\nMDXContent.isMDXComponent = true;","tech":["AI","TS"],"category":"Post","appDescription":null,"hero":{"full":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAE20lEQVQ4yz1U7VPSWRT+/RNbn2qmZlxdE/MlzUQhfFcSUIFsUTFfQAQCBUF5MZBMRYQKNcV8SVATlczUzZna2XZrZ7YPzbazs//Os+fepj6c+d177jnnPvc5z/kJ7bfbMWA0wul0YnhoCN16Perr61FdXQ2NWoMh8nV2dsJiNmNnexvj/nFE56J49eoIy0vLMPQbUFZWBkmlBDdu3ICg1Wh4sEathlKphL6rC3V1dWhoaEBtbS0aGxvR29ODnrs9mHzwgAr6eczx8TE+fvgIRbMCWVlZEIlEKCwshCAuL+cLcbkYVTIZGOK21lYoFQp+QXd3NyU1wzE8jJmZGXjGPLBaLDg5PsH+/j6Kiopw+dIlZGdn49y5HyCoCVllRQWuX7+OOkKkoiK2ezasJFbQSCj7ensxZLfD6XAiFoshMjuL+JMn2N3dxdmbM3g8Hpw/fw6XqOjFixchlBNCDT27ob4B6jY16um5jL9gIIgOnQ6DJhNH2NXZhfl4HHGyg/0D7Ozs4P3795xLhvLChQu4cuXKV4Q5OTlQqVQYdY+ira0NtTU1kEgkkBEFLeRXKVXQU7Nmw2FMT01hcWEB796+w8nJCba3tvFs5Rk1sxsFBQUQWJJYLIZcLqcnNuLatWtgqG9Kb/LnmwfN6O/rw4hzBInlZSQ3N7H09Cli0SiWlpawML+AMF20troGna4DQnFxMeeO3TwbnsUtKlxGfMpuyrhcZqanMRGcwONHjylmmqOLzs2RXPrh8/ng8/pQQxTZiedWaqZQQQ1hiFg3pym5qakJUokUUqkUrS0tMBqMcI24kMlksLi4SEhW4ff5eeO8Hi+MpOEuktHY6Bg6Oghhbm4u111VVRVKS0tRXFTMNdV++zYPZAlm0mkikcDZ2RlOT0+5ZpnA99J7pGELpyUSiUDeJIfQ29NLRYqg1Wq5gxXLy8vjNDC5BO4HuDF5fPn7C3U/wGOjxGEoFOL8sulyDDvQSxITRt1uGptKnszIZaJmB2y8GD9MHsFgkBdlHWXkz8fn8fnzZy5wBsg0YKIpmsTW1hYERniQgqOROepiAl6aBLNpkIv2d9LZXjqNw5eHWF9bw9TkQ3z66xM3ds547O/rRx8VHaSibpcbglwhRyQ2h8zRS2wkn9OXkjc3kD7Yw+tfTrD8LIG9zD7++PMDTs/e4O1vv+Kf//5FcjuFIacD48H7sNis8Afu034YQqhEj0i5AS+0E1hXjGGp3oF93RTSdx5gQ+nFusqLnfYQ0rqHyOjD2GjxIdE0gpVbbsRrbFilnGXaMz/zCbtXh/G6dgIZmR/75WM4qPTiRYkT6TI30qUupHKsSGabsfmjGc+zBpHKtmDrJyu37dx7/JytUzlf/UKqwI4j5SReqx5iT+rFsXoGR820b51CpmYcqat2JEX3sEVfZql823dL5lm/r7+dCav5FqznWbAhsmCzwMbX3/Yb+VY8L7Rhp5SedNWKdbJk8RD3bRbRBSUOvl6nGqsiM18LNoMZT8IxhDwBdGl10CrVMHUbEAnNYNzlhaJWjsCoH/HwI74ftbtg1PfBbrRy02s7UFMhg6REDM0tGj2L1QIH/f7v0l+5oakRSvq7aEi4LtLnnZ/vQJQvQr/RgJeHh4jGohgwDaBZ0QwVjSWLr66pRqVUwnOY73/3oJEB/hhQogAAAABJRU5ErkJggg==","aspectRatio":1,"src":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/a1946/mcp-cover.png","srcSet":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/5b37e/mcp-cover.png 236w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/49058/mcp-cover.png 472w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/a1946/mcp-cover.png 944w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/6050d/mcp-cover.png 1200w","srcWebp":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/99fbb/mcp-cover.webp","srcSetWebp":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/77392/mcp-cover.webp 236w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/1f177/mcp-cover.webp 472w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/99fbb/mcp-cover.webp 944w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/9000d/mcp-cover.webp 1200w","sizes":"(max-width: 944px) 100vw, 944px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M0%205c0%204%200%205%202%204l1-2C2%205%203%206%207%208s5%204%201%202-6-1-4%202h2l3%202%203%202H8l1%201-4-2-4-3c-2%200-1%203%200%203v11L0%2041c0%2014%200%2014%203%2017%202%202%202%204-2%204l-1%204c0%202%200%203%201%202v2L0%2087v15h10l2%201-1%201c-1-1-1%200-1%201H4c-3%200-4%200-4%203%200%202%201%203%202%202%201%200%203%203%201%204v2l-1%201c-2%200-3%2021-1%2023v2l-1%2035v34l4%201c5%202%206%204%205%2010%200%205%201%206%2010%207%207%200%205%202-3%202-3%200-4%200-3%201l-1%201c-2-1-3%201-1%203s4%201%203%200c0-2%201-2%203-1l2%203v1l1%202c0%202%200%202-1%201h-8c-2-1-3-1-3-5l1-7c1-3-2-5-6-4s-4%208-1%2010c2%202%202%206-1%205-2-1-1%206%201%208s2%205-1%204c-1-1-2%202%200%204v25a595%20595%200%20000%2080c-1%202-2%2026%200%2026l1%203-1%202-1%202c0%202%200%202%202%202l-1%201c-1%201%200%202%206%202%207%200%208%200%2010-2l3-2v2h2c2-1%203-2%202-3s1-5%202-5v3l-1%202c1%201%202%201%204-1l3-1-1%202-2%202c0%202%204%203%2016%203h11l2-5%201-7c-1-2%200-2%204-1%201%201%201%201-1%202-1%200-2%201-2%203a264%20264%200%2001-1%206h1c-1%202%200%202%204%202%203%200%204%200%204-2s3-2%204%200c0%202%208%203%208%201h1c1%201%202%201%202-1l2-2c2%201%204%200%203-1v-1l5%203c4%202%204%202%207%201%205-1%206-1%203%201-3%201-3%201%205%201s9%200%2010-2%201-2%201%200%201%202%207%202l7-1h1a627%20627%200%200067%200c-6%200-6%200-8-3l-3-4%202-7c2-9%202-8%200-12-2-3-3-4-7-5l-4-3h-1l-2-2-1-2a109%20109%200%200132%201c2%200%204%200%203%201-1%200-1%201%201%202v3l-1-1-1-1c-1%200-2%201-2%203s0%202%201%201l2-1c1%201%200%203-1%202-2%200-1%202%200%203%202%201%2011%202%2014%200%203-1%203-1%203%201l1%202%201-1h1c1%200%204-2%203-3l1-1c2%201%202%204%200%203v3h-1c-2%200-2%200-1%201l3%202h1l-1%201v8c-1%202-1%202%202%202%202%201%203%200%203-1l2-2v3c-1%201%200%202%202%202%202%202%203%203%202%204a379%20379%200%200076%201l11%201%2010-1h1l11%201c8%200%2010%200%209-1v-1c1%201%202%200%201-1%200-2%201-1%203%201%201%202%2018%203%2021%201h1l4%201%204-1c-1-1-1-1%200%200%201%200%202-1%202-4%200-2%200-3-1-2-1%202-4%201-3-2l2-1%201-2V259l-2%201c-2%200-2%200%200-1%203-2%202-5-1-4l-3-1%202-1h2c1-1%201-1-1-3s-3-2-4-1c-2%202-2%200%200-2l1-2%201-1%201-2c0-3%200-3-3-2l-3%202v1l-1-1-2-1h-5l-2-1c-2%200-2%204-1%204l1%201-2%201-3-1%201-1v-1c-1-1-1-1%201-3s2-3%200-4v-3c-2%201-2%201-2-1%201-1-6-4-9-4l-2%205c-1%204-1%204-6%204l-4-2-1-1c-3-1%201-4%204-3l3-1%201-1c3%200%205-3%203-4v-1c3%201%202%200%200-2-4-5-4-14%200-11l1-2h1c1%202%202%202%203%201l-1-3c-2-2-4-7-3-9s-2-4-6-5c-6-2-10-6-10-10%201-3%202-4%203-2v1l-1%203%202%202c2%200%202%200%202-2-1-2%200-2%203-2s3%200%202-1c-1-2%200-3%202-1h1l-2-2c-8-3-8-3-2-3%205%200%206%200%207-3%203-5%203-5%203-1-1%204-1%204%201%203l2-3v-1l1-6%201-5%201%202c0%202%200%202%202%200v-8l-1-3-2-1h-2l-3-1c-2%200-4-3-2-3l1-3%203-7%201%201h1l1-2%201%201c0%201%201%202%202%201v-1l-1-2%202%201h2c2-2%202-4%200-5v-1c0-2-3-3-4-2l-1%201-2%201c-1%201-1%201%201%201h2c-1%201-1%201%200%200l2%201h-1l-2%201c0%202-1%202-2%200-2-2-2-2-3-1s-1%201-1-1c-1-2-3-3-3-1l-2%201c-1-1-2%200-3%201l-3%202%201-2%202-1-2-2c-3-2-4-2-7%201l-4%201c-3%201-5%205-3%206v1c-2%200-2%200-1%201l1%202c1%209%202%2011%206%2011%203%200%203%201%201%203-2%201-7-3-7-8-1-5-3-6-4-3l-2%202-1%202-3%204c-1%201-1%201-1-1v-4c-1%200-2%209-1%2010l-1%201c-1-1-1-1-1%202l3%203%201%203-1-1-3-1-3-2c-2-3-2-3-3%201v1l2%201v2h-4l-1%201-2%201-1%201c0-1%200-2-1-1l-1-1%202-1h1c1-2%200-2-1-2-3%200-5%202-4%204h-1c-1-1-1%200-1%202s0%202-1-1c-2-5-4-7-7-6-2%200-3%203-1%205v4c0%202%201%202%206%206l-1%202-2%202-1%203c0%202%200%202%202%201l2-1%202-1h1l1%202%203-4%201-2%202-2%201-1%201%201c0%201%201%202%202%201%202%200%203%202%201%202v3c2%204%202%2010%200%2013l-3%201-1%201c1%201-1%205-2%205l-1-1-1-1-2%201-1%201v-1l-1-2-1%201c0%201-1%202-3%202s-3%200-4%203l-2%203v1c1%200%201%201-1%202-1%201-2%202-1%203%200%202%200%203-2%204l-2%203h4c1-1%201-1%201%201l-1%202-1%205v5l-3%2015%201%201h-1c-2%200-2%200-2%202l-2%206v3l1%202c-1%201%200%204%201%204l1-1%201-1v2l1%201h1l-1%201v1c1%201%202%202%201%203s-1%201-2-1l-1-1-1%201c-1-1-2%200-2%201l1%201v2h-1c-1-1-1-1-1%201l-1%201h-2l-1%204c-1%202-2%202-11%202-10%200-10%200-9-2%201-3%200-4-1-2-2%203-3%202-2%200%200-2%201-3%202-2l1-1c1-1%200-1-2-1l-3%201-1%201-1-1-1-1c-2%200-4%205-3%206%204%202-5%202-81%202l-85-1c-7-6-16-7-18-2h-2l-3%201c-3%202-3%202-4%200l-4-1c-2%201-2%201-1%202l-14%201c-12%200-15%200-14-1%202-2%202-5%200-6-2-2-2-2-1-4v-3l-1-2h-1c-1%201-1%201-3-1s-7-3-5-1l-1%201-1-3c0-2-1-2-3-2-1%200-2%200-1-1%201-3-4-7-6-7-2%201-3%200-3-2%200-3%201-3%203-2l3-1v-3l-2-1h2v-1l1-2%201%201c0%202%2020%200%2027-1%208-3%208-3%203-7-4-3-4-4%200-2%206%203%2011%200%2011-5l1-4c1-1%200-2-3-5-4-3-5-6-3-6l1%201%202%203%202%201h1c1-1%201-1%201%201l2%202%201%201%202%201%201-2h2l1%203%202%202%204%201%206%201%206%202c1%201%205%202%205%200l2-1%202-1c2-2%203-3%203%200h6l9-2-17%205-5%201v2l-1%201v-1l-2-1-4-1c-2%200-2%200-3%202%200%202-2%203-2%200-2-3-3%200-2%204%201%203%201%203%202%201l2-1v1c-1%202-1%206%201%206v6c0%201-2%200-4-3-4-3-6-3-6%200l-5%201-1%202h-7l-1-1-1-2c-1%200-1%204%201%205l3%201c2-1%204%201%204%203-1%202%200%204%203%204l3%202c0%202%202%203%203%201l3-1c2%200%203%200%202%203%200%203%202%202%204-1%202-5%201-7-4-8l-3%201v3c-2%202-5%200-6-4l-1-1h-1v-2h4l3%202h4l2-1h1c2%203%204%202%203-1%200-2%200-3%202-4h2l-1%201v2h1l3-4%201%202s1%202%203%202l2%203c-1%201%203%203%206%202l1%201c-1%202%201%203%204%203v-1l-1-2%203%202h2c0-2%203-1%204%202%201%202%203%203%203%201l2-2c3-1%204-10%201-11v-2c3%200%202-6%200-8l-3-3-1-1c-2%201-4-1-4-3l-2-3c-1-2-1-2%201-3%201-2%204-3%204-1l-1%201v1h2l2-1-1%202c-1%201-1%201%201%201l3-3c1-2%201-2%202-1%202%202%203%203%202%201l1-2%201%201c1%202%206%201%208-1l2-1v4h4l-1-1-1-1v-7l1%202v2c2%200%202%201%202%207%200%203%201%204%203%204l2%202%201%201%201-2%201-4c1-1%202%200%201%201-1%203%202%203%205%201l3-3%201-1-1-2-1-2c1-3-1-7-2-5h-2c-1-1-1-1%201-4%202-4%203-8%202-10s0-7%201-8l2-2%201-4%206-2c4-2%205-2%204%200l-1%201c-2%200-3%205-2%208%201%202-1%207-2%205-1%200-2%205-1%207%200%202%201%202%206%202l3%201h3l1-3c-1-1%200-2%201-4l1-4%202-2%203-2c0-2%205-4%207-3v2l1%202c2%200%202%201%201%203l-1%204c1%202%201%203-1%206-2%202-2%202-3%201%200-2-2-1-1%201h-1l-5-1c-4%200-4%200-3%202%201%201%201%201-1%201s-2%202-1%206l1%201c0-2%200-2%202%200s2%202%201%203l2%201h5c1%201%202%203%201%204-1%202%206%201%209-1%203-4%203-9%200-8-2%200-2%200-1-1l-1-2v-4h-1l-1%201-1-1%202-2v-1l3-7%202%201c1%202%202%201%202-4%202-12%202-20%201-20l-1-1-1-1c-2%200-3-1-1-3s-1-5-5-5c-8-2-22-2-24-1-1%201-4%201-4-1%200-1-3-2-11-2-15-1-21-2-21-3l13%201h21l1-1c1%201%202-2%202-6s-2-6-4-4l-7%201c-7%200-7-3%200-3l4-2%201-1c3%200%202-2%200-3-2-2-2-2-1-3v-2h-4l1-1-1-1-3-2c-1-1-7%201-8%202l-7%203%2013-8%207%201%207%201%203%201%203%202c3%201%204%201%205-1s4%200%203%202l6%203c7%201%207%201%206-1h1c2%202%203%202%202%200h1c1%201%202%201%204-1v-2c-2%200-1-2%200-2%203%201%204-2%203-8-1-13-1-18%201-16l1%202v4l1%203%201%201-1%201-1%201%201%201%202%201%203%201c2%201%202%201%202-1%200-1%200-2-1-1l-1-1%203-1c2%200%202%200%202-2l-1-3h-2c0-1-1-1-1%201-1%202-1%202-1%200%200-1-1-2-2-1-3%200-2-1%201-3%203-3%204-4%202-4l-2-1%202-2c2%200%203-4%201-9s-2-7-1-6l1%202%202%203c1%201%202%202%201%204%200%202%200%202%201%201h2l-1%203c-2%201-3%206-1%206l1%202h1l2-1-2%203c-2%202-2%208%201%208h2c1%200%204-9%203-11l-2-3v-3l-2-7v-4l-1-4-1-1c0-2-5-2-7%200l-3%201%201-3c2%200%202-1%201-1l-1-1c0-2-1-5-4-8l-1-3%204%203%203%204v-6l1-7v-8l1-2c-1-1-7%200-8%201-2%202-5%203-5%202l2-2c2-1%202-1-1-1-5%200-7%201-6%202l-1%201v1h-3l-1-1h-3l-1%201h-2c0-2-1-2-2-2-2%201-6-1-6-2%200-3%204-4%207-2h4c2-3%203-2%202%201%200%204%200%204%204%201%201-1%203-2%204-1v-1h2c2%200%202%200%201-1v-2c-2%200-2%200-1-1l4-1c3%200%208-2%209-6l1-2c2%200-3-5-5-5s-2-1-2-2l-2-2c-1-1-2-2-1-3%201-2%205%200%205%202l2%204c2%201%202%201%202-3l-2-5-1-4c1-1%201-1%202%201l1-10V12l-5-2c-5-2-6-2-7%200-1%201-1%201-2-1l-4-3c-2-1-3-2-2-3%200-2-2-3-5-3-2%201-2%201%200%202l3%202h-3l-3-3c0-2-15-1-15%201v2l3%206-3-2c-2-3-5-4-5-2l2%202c3%202%202%203-1%201l-3-2-4-1h-4l-1-1V3c0-3%200-3-7-3l-8%201h-1c-1-2-55-1-55%201l-1%201-1-1c1-1%200-2-1-2v1l-1%201-1-1a109%20109%200%2000-35%201l1-1c1-1-1-1-5-1-7%200-7%201-3%204s4%205%200%205v2c2%200%202%201%201%201s-1%201%201%202v2l-1%201h4v1h-2v4c2%202%203%204%201%204-1%201-5-8-5-11s-1-2-4%204l-5%206c-2%200-1%202%201%204s6%203%206%201l3%201%202%202h-6c-5-1-5-1-4%201%200%202%200%202-1%201l-2-4-2-1v-3c-1%201-3%200-5-1-3-1-3-1-3%201%200%203%202%204%205%204%204%200%204%201%203%204%200%205-1%205-1%201l-1-3-1%201h-2c-2-1-5%200-11%202-2%201-4%202-5%201l1-3%201%201%205-1c7-2%207-2%204-7l-3-4-1-1v-2c1-1%202%200%203%201h2l4%204%204%202-5-12c-2-2-2-2%200-4%201-2%201-2%202%200l4%202%203%201h-3c-3%200-4%200-1%204%201%201%202%202%203%201l2%201h1l1-3%201-3c1%200%201-1-1-1l-3-1h3c3%200%203%200%202-2-1-1-1-1%201-1%202%201%203%200%200-2l-1-5c0-2-1-2-3-2-3%200-6%203-5%205l-2%202-1-1c0-3-5-5-15-6H0v5m200-3l2%203%2015%205%201-5c0-5-2-7-5-4h-2l-6-1c-6%200-6%200-5%202m52-1l-1%203c-2%201-2%203%200%202%202%200%201%201-1%205-2%203-4%204-2%200%201-2%200-4-1-4l-5%2012%201%201-1%203c-2%205-2%209%200%2012l2%203-1-3%201-2c1%201%203-4%202-7l1-2%202-1%201-2%201-1-1-1c-1%201-4-1-3-1%202-2%206-2%206%200l1%201h3l2%201-2%202-2-1-3%202c-2%204-2%204-1%206%202%202%202%207-1%208v6c-1%202-1%203-1%201s-2-4-4-3l1%203%201%203%201%203%202%205%204%206c3%202%203%202%201%204v2l1%202%202%207V62c2-1%202-8%200-9v-2c1%200%200-2-3-4-3-4-4-7-1-3h2l2-1v3l2%204c3%202%203%203%205%201h3l-2%202c-2%200-2%200%200%202%201%201%202%202%203%201%202%200%202%200%201%201s-1%202%201%204c2%203%201%204-2%200-2-2-2-2-4-1v2l2%201h-5c-2%200-2%201-1%202v1l-1%204c0%204%200%205%202%204l-1%202c-2%202-1%204%202%203l2%201h2l1-2%201-1%201-1%203-4c2-2%202-3%201-4v-3c0-2%202-3%202-1l1%201V54l1-3%202-8%201-3%201-2-1-2-1-1h1c2%200%201-3-1-7-1-2-2-3-3-2l-1-1%201-1%201-1-1-1c-2%201-3-1-2-2%202-3%200-5-2-4-3%201-4%200-2-1%203-1%201-4-2-4-2%200-2%200-1%203%200%203%200%203-2-1l-3-4c-2%200-2-6-1-7V1c-1-2-3-1-6%201-2%202-3%201-1-1%201-1%201-1-1-1s-3%200-2%201m77%206a311%20311%200%2000-3%208c0-7-1-5-2%203l-2-1-1-3v2a115%20115%200%20010%2011l2-1%202-3c1-4%201-5%201-2%200%202%200%202%202%201h1l-1%202-2%203-1%201-1%203-1%205c-1%202-3%2010-3%2016v11c1%201%201%201%202-1%200-2%201-2%205%202%205%204%205%205%206%2011v6c-1%201%203%2010%205%2012%202%200%202%201%202%203l2-2%201-2-1%203c0%202%200%203%201%202%202%200%202%200%201%201l2%203%203%205c2%204%203%204%204-3l1-5-1%206v7h7l6%201c3%201%204%200%205-2l4-3c2%200%203%202%201%207-1%204%201%207%205%207%207%202%208%202%207%204l1%204c3%202%202%205-1%207s-4%206-1%206v5c-1%203-1%203-3%201h-1l1%202%201%203v3c-2%201-2%202-2%204%201%201%200%202-2%203l-2%202-2%202c-3%203-3%205%200%205h2l2%201c2%200%202%200%200-2v-2c2%201%204%200%206-1l3-2%201%203%202%204c1%201%201%201-1%202-2%200-2%200%200%201h-1l-3%201c1%201%200%201-2%201-3%200-7%202-5%202l-2%201h-3c0-2-2-1-2%201h2c-1%202%201%205%203%204v1l1%202%202-1%201-2v1l2%201c1-1%202-1%202%201v11l-5-3c-8-3-9-4-8-5%202-1-1-8-3-9-2%200-4%203-5%207v2c2%200%202%200%201%205v6l3%206c2%202%208%208%2012%2010%202%201%205%200%205-2l2%201c1%201%202%202%203%201l5-2c2%200%203-1%203-6%200-4%200-4-2-2l-2%205c-1%203-2%204-5%201-2-2-2-5%201-6l2-2v-4c1-3%201-3%201-1v5c0%202%200%202%202-1l3-4v-70a4447%204447%200%20010-102V0h-10l-11%201h-1l-4-1-3%201-2%201-2-1-2-1c-2%200-3%201-3%202l-2%202V2c1-2%201-2-9-2l-10%201h-1l-5-1h-5l-1%207M53%207c1%202%200%202-6%203-2%201-2%201%201%201s7%203%207%206l2%201c1-1%203%200%205%201h2l2%202c1%202%201%202%203%201%201-2%200-4-2-4-1%201-2%200-2-1-1-2%200-4%202-4l1-1c0-1%2020-1%2024%201v-1c-1-1-4-2-12-2-9%200-11%200-12-2-2-2-2-2-4-1h-9l-1-1-1%201m166%209l-1%2017c0%2014%201%2015%203%2015l1%201c0%202%204%205%204%203v1c0%202%202%202%203-1%202-3%201-6%200-3-2%202-2%202-2%200-1-2%201-4%203-3l1%205c0%204%200%204%202%202%201-1%202-2%203-1v-1c-2-1-1-2%201-2%201%201%202%200%203-3l2-5-1-1c-1%201-1%201-1-1%201-2-2-8-3-6v2c1%200%201%201-1%202v2l1%202c-1%202-3%203-4%202h-1c0%201-1%202-2%201v-5c1-11%201-14-2-17l-3-2v2l-1%203-1-4c0-2%200-4-2-5l-2-2v2m-90%2045l-1%201-4%203-4%203-1%208c0%205%200%205-2%204-1-1-1-1-1%201l2%203c1%203%202%202%201-1%200-2%200-2%201%200l4%202c3%201%203%201%202%203l1%202h4l8%203c4%200%204%200%204-2l-3-1c-3%200-4-1-2-2h-1l-1-5c1-8%201-12-1-12l-2-5c-1-4-4-8-4-5m99%204l-2%203c-3%203-3%203-2%200%201-4-2-4-4%200-1%203-1%204%201%203%202%200%202%200%200%204l-1%206-1%202v2c1%202%205%200%203-1-1-1-1-2%201-2l3-6%203-6c2-5%202-6%200-6s-2%200-1%201m4%202v4l-2%202%202%202v3l1%202%202-1h1c1%201%202%201%205-2%204-4%204-5%200-8s-5-2-5%201c0%202%200%202-1%200l-1-2-1-1v-2l-1%202M75%2089l-1%203-1%201-1%201-1%202h1l2%206c-1%202-1%202-4%201l-3%201c1%202%200%202-2%202-3%200-3%200-1-1s2-1%200-1c-4%201-6-1-6-4l-1%201-1%201c0-2%200-2-2%200l-1%202-4-3-4-5-1-1-3-1h-2l2%202c2%202%202%202%200%201-3-1-2%200%205%205l7%206%202%202c2-1%202%2010-1%2021s-3%2011-5%2010v-2c2-1%202-2-1-4-3-3-3-3-3%202%200%206%200%207-3%207-2%200-2%200%200%202l4%202%202%202h1c3-4%2028%201%2026%205%200%202-5%202-8%201l-5-2-3-2c0-2-2-1-2%201l-5%204-2%203%202%201%201%204h-1l-3-1c-2%200-2%201%201%202l4%203c0%201%205%204%208%204%202%200%202%203%201%205l-1%201%202-1c2-2%206-3%209-1h2l-2-2c-4-1-6-3-4-5s4-8%203-10l2-2c2%200%203-1%202-2-1-3%201-1%203%203%202%203%202%204%203%203l1-1%202-1-2-1h-2c0-2%208%200%2011%202%201%201%202%202%203%201l2-1c2%200%201-1-2-3l-4-4-3-1h-6c-2%201-6-2-6-3%201-1-1-4-2-7-3-5-4-8-2-8v-2c-2-2-2-2-2%201v7l1%202c3%203%201%204-6%202l-8-2-4-2%201-2v-1l1-3%202-11%202-10%203%202%202%201%202-1c1-1%203-1%209%202v-1c-3-3-1-5%204-5%203%200%204%200%203-1s-1-1%202-1c7%202%2014%202%2013%201l-4-1c-5%200-17-2-16-3h-1l-2-1c0-2%201-2%204-2h5l-4-1c-3%200-4%200-4-3l1-2%201-1c-1-1%200-2%201-2l1-1c0-2-2-2-2-1-1%201-1%200-1-3v-4l-1%203m174%205c-3%204-4%209-2%208l2%201-1%201-2%201h-1c-1-3-4-1-4%201%201%204%203%206%205%205h3c0%203%204%201%204-2l1-3v-6c0-1%200-2-2-2v-5c-1-1-3%200-3%201m63%2033l-2%204c0%203%201%206%202%205l1%201%201%203%201-2v-3l1%202%201%205v5c-1%203-1%203-1%201%200-3-5-7-6-6l2%204%208%2012-2-1-2-1%201%204c0%202%203%201%204-1l1-1v1l1%201%201-1%201-2v-5l-2-3v4l-1%203-2-11c0-6-1-10-2-11l-3-5c0-4-1-4-3-2m-37%207c-6%204-7%208-2%207%202-1%202-1%201%201-3%202-3%205%200%203l-2%204-2%203%203%205c1%204%203%206%204%205l1%201-1%201v1c1%201%2013-1%2013-2h8l-2%201c-2%200-2%201-2%203v3l-1-3c-1-2-2-3-4-2l-7%201c-4%201-4%201-3%203%200%203%201%204%202%202h1c1%201%201%202-1%202s-3%200-4-3l-1-3-8%202-7%202%201%201-2%201-4%202c-2%202-2%203%202%204%202%201%207-3%205-4s-1-2%202-1c2%200%202%201%201%202l-1%203v3c0%202-1%203-3%203l-2%202v1c-1-2-2-1-2%201l-2%204-2%201h-1l-1%202v16c0%205%201%207%203%209l3%203%205-3%205-2%204-2%202-1%203-1c2-2%202-2-1-3h2c4%200%205%200%2010-4l6-4h2l2-1-2-2-1-1h-1l-3%201v-1l2-3%201-1%203-1-1-1h-2l-1-1c1-1%200-1-1-1l-5-3c-3-3-5-3-7-3s-2-4%201-6%204-3%204%200l1%201c1%200%202%201%202%203l3%202%203-1-1-1v-3h1l1%201v-3h2l-1-2c-2-2-1-6%201-5l2%201c2-1%202-5%201-5v-7c0-3%200-3-3-3l-4-2h1c4%202%205%201%205-6l-1-5-2%201%201-2c1%200%202-12%200-12l-1%202c0%201%200%202-1%201-1-2-2-1-2%202%200%202%200%202-1%200%200-3-2-2-2%201%200%202%200%202-1%200-1-3-1-3-1-1s0%202-1%200v-2l-5%203-5%202v-1l3-7c0-1-3%200-5%202m-54%207c-2%203-3%206-1%206l-1%203-3%205%202%205c1%200%203-5%202-6l1-2h2c1-1%202%200%202%201l1%201%205-7c-1-1-5%201-5%203v-5c0-7-1-8-5-4m83%202v2l1%202-2-1a870%20870%200%20010%2015c2%200%202-1%201-1-2-2-1-3%201-3l3%202%204%201c3%200%203%200%201-2v-3c3%200%202-3-3-8-5-7-4-6-6-4m-55%206c-7%201-8%202-8%207%200%203%200%204-1%203-1-2-1-2-4%203l-2%203v-2c4-7%205-14%203-14s-5%203-4%205l-2%202-3%201-3%202c-3%201-3%201-3%205%201%204%201%205%203%205l2-1h2c2%200%202%200%201-2%200-2%200-2%203%200%204%203%209%203%209%200%200-2%201-2%203-2%201%200%202-3%201-8%200-5%200-5%201-4h2l2-1-1%202v1l1%205c-1%203%200%204%201%204l1%201-1%201-1%203v2l3-2c0-2%201-11%203-14l1-3-2-2h-7m-63%203l-2%201h-1l-5%201-4-1%201%202c2%201%202%202%201%202-2%200%201%204%203%205h3c1-1%202-1%204%201h-1c-3%200-2%201%201%203s4%204%200%202h-2l-2%201-1-2c1-1%200-2-2-3l-3-1-1-2c-2-1-2-1-2%202%200%205%201%209%203%209h3l9%201h6c-2-2-2-2%200-1%202%200%202%200%201-2-3-3-2-4%200-1%202%201%203%202%205%201%203%200%203-1%200-3-2-1-3-1-3-8-1-6-9-11-11-7m147%2015v2l5%201%201%201-3%201h-1c-2-2-3-1-2%201l1%202h1l1%201%201%201h4l6%202c3%201%203%201%202-1-1-1-1-1%201-1%202%201%204-1%204-3l-2-1c-1%201-3%200-4-1l-3-2c-3%201-3%200-2-2%202-1%202-1%200-1s-3%200-2%201c0%202-3%201-6%200l-2-1m-123%2030l-2%202c-2%200-3%205-5%2018a51551%2051551%200%20000%2017l2%204c0%202%202%202%203%201h2c1%200%201%201-1%202v1l3%202c2%207%206%203%205-5v-5h-1l-9-1%202-2%206-11%201-2v-3c-2-1-3%200-3%202s0%202-1-1l-2-3-1-1%201-1c3%200%204-4%202-6v-2c1-1%201-4-1-6h-1m165%2025l2%203c2%202%202%202%201%203-2%202-2%202-1%203%202%202%205%202%206%200h2c2%201%204-1%204-4%201-3-5-4-6-2v-1l-2-1-3-1c-2-3-3-2-3%200m-152%2016h-3l-1%202-1%205c-1%203-1%203%201%203l1%202c-1%202%203%205%204%204l-1-2v-2c3-2%205-1%203%201-2%201-2%201%200%201l3-2v-2l-1-5-1-4-2-1h-2m-173%205c0%202%200%202-2%201l-9%203-1%201-2-1-1-1-1%201-1%202-1-1-1-1h-5c-4%200-4%202%200%203l1%201c-2%201-2%201%200%204%201%203%203%204%204%202h2c0%201%205-1%205-3s3-5%204-4l1-1%202-1%201%201-1%201-2%201-2%201c-2%201-2%201%200%202%202%202%203%202%203-1l1-1%201%201%202%201c2%200%204-4%203-6v-6c-1-1-1-1-1%201m340%2020l-2%202-2%201c0%202-3%204-5%203h-1v2l-1-2h-1c-3%202-2%203%200%203l-1%201c-3%202-4%201-4-2%201-3%201-3-2-3-2%200-2%200-1-1l2-1%201-2-2-2-1%201-1%201-2%201v2l2%205%203%204v3c1%201%200%201-1%201l-2-1-1-1v3l-2%202-1%203h12c7%200%2012%200%2011-1-2-1-4-3-4-5s0-2%201-1l2%201-1-2-1-2v-1l-1%201h-2c-1-2%200-2%203-6%203-3%204-4%205-3l1%202v-2h1l2-1-1-1-1-2-1-2-1%202m-78%201l1%201v3l-2%201-1%202v2l1%202-3-1c-2-1-2-1-2%201v2l-1%201%202%201c2-1%203%200%201%202v1l-2%203v1c2%200%204-1%204-3s0-2%201-1h8c1%200%204-2%204-4l-2-3c-2-3-3-4%200-4h1c0-2-4-5-6-5l-2-1c0-2-2-3-2-1m20%203v1c1%200%202%201%201%202l1%202c2-2%203%200%201%205l-4%204-1%201c0%204%200%204%206%204%204%200%206-1%206-2l3-1c2%200%202%200%201%201a1750%201750%200%20017%200l-4-2c-2%200-2%200-1-1%202%200%201-2-1-4s-2-2-1-3v-1h-1l-1-3c-1-1-1-1%201-1s2%200%201-1l-1-1-1-1-1%202h-1c-1-1-2%200-3%202l-2%201-1-3-2-2c0-1-2-1-2%201M24%20322c0%206%200%208%202%208l1-5v-5l2%203c2%205%203%205%205%200l2-4v5c0%205%200%206%202%206l1-8c0-7%200-8-2-8l-4%205-1%205-2-4-2-5-2-1c-2%200-2%201-2%208m34-7c-2%201-1%2015%201%2015l1-3c0-3%200-3%202-3%205%200%208-5%204-8-2-2-7-3-8-1m-37%2047l-2%201c-2%200-4%204-4%205l2-1c2-2%202-2%205-1l4%202-2-2c-3-2-2-3%203-3%203%200%204%200%203%201v1l1%201c0%201%201%202%203%201%203%200%203%200%202%202l-5%201h-6l-2%201%201%201-2%201c-2%200-4%201-4%203h1l2-1c2%200%202%200%201%201-2%200-1%202%201%202v-1h6c8%200%208%200%205%203h-5c-2-2-5-2-5%200l1%201c1-1%204%201%203%203%200%202%206-2%208-4%202-3%203-2%204%202l1%202c0-2%202-3%202%200l-2%202c-3%201-5%204-3%204l1-1h1l2-2h3l2%201-1-2c-1%200-1-1%201-2%201-1%201-1-1-1-1%201-2%201-2-1l-2-2h-1l2-2c2%200%206%203%205%204l3%201c2%200%203%200%202-1l-2-2v-2c-1%201-3%200-4-1l-3-1%202-2%201-1c-3%200-2-6%201-7%203%200%2010-3%208-3l-3-1c-2-2-30-2-32%200m45-1c-2%201-3%202-2%205l-1%202-6%202-3%201-2%201h4l3-1-1%205%201%202h1l2-3v-1c-2%201-2%200-2-2s4-3%205-1c0%201%201%202%202%201v-1c-2-1-2-3%200-3v-1c-2%200-3-1%200-3%201-1%201-1%201%201%200%203%206%202%2012%200%203-2%204-2%205-1h6l-1-3c0-1-7%200-11%202l-6%202c-4%200-4%200-4-2%201-2-1-3-3-2m54%200v1c3%200%202%202%200%204l-2%201h2c2-1%202%200%202%204l-1%204v5c0%203%200%203-2%202v1c0%203%200%203-2%203l-5%201c-1%200-2%200-2-2h-1c-1%202-1%202-11%202-12%200-9%201%204%201l12%201h1l3-1c3-1%202%202-2%203l-1%201c2%200%203%200%204%202l1%203v-3c0-1%200-2%202-1l1-1%202-2c2%200%202%200%201-1v-1c6-1%2012%200%2011%201h2c1%200%201%201-1%202l-2%203%204-2%202-3%203%202%202%201-1-2-1-1c0-2%201-2%205-1h6l-5-1c-5-2-5-2-5-6%200-2%200-3-1-2l-1%201v-1l-1-1c-2%200-2-1-1-3v-5l2-4c4-4%202-5-9-6l-9%201%201%201h3l-3%201c-2%200-2%200-1%201v2c-3%202-3%203-3-1l1-3h1c0-2-4-3-5-1m17%205l-2%202v2l2%201-1%203-2%202c1-1%202%200%202%201s-1%202-2%201l-1-1h-4l1-1%201-1c-1-1-2%200-4%202l-2%204v1c-2%202-1%204%201%204l5-1c2%200%206-1%208-3l1-9v-9l-3%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"regular":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAE20lEQVQ4yz1U7VPSWRT+/RNbn2qmZlxdE/MlzUQhfFcSUIFsUTFfQAQCBUF5MZBMRYQKNcV8SVATlczUzZna2XZrZ7YPzbazs//Os+fepj6c+d177jnnPvc5z/kJ7bfbMWA0wul0YnhoCN16Perr61FdXQ2NWoMh8nV2dsJiNmNnexvj/nFE56J49eoIy0vLMPQbUFZWBkmlBDdu3ICg1Wh4sEathlKphL6rC3V1dWhoaEBtbS0aGxvR29ODnrs9mHzwgAr6eczx8TE+fvgIRbMCWVlZEIlEKCwshCAuL+cLcbkYVTIZGOK21lYoFQp+QXd3NyU1wzE8jJmZGXjGPLBaLDg5PsH+/j6Kiopw+dIlZGdn49y5HyCoCVllRQWuX7+OOkKkoiK2ezasJFbQSCj7ensxZLfD6XAiFoshMjuL+JMn2N3dxdmbM3g8Hpw/fw6XqOjFixchlBNCDT27ob4B6jY16um5jL9gIIgOnQ6DJhNH2NXZhfl4HHGyg/0D7Ozs4P3795xLhvLChQu4cuXKV4Q5OTlQqVQYdY+ira0NtTU1kEgkkBEFLeRXKVXQU7Nmw2FMT01hcWEB796+w8nJCba3tvFs5Rk1sxsFBQUQWJJYLIZcLqcnNuLatWtgqG9Kb/LnmwfN6O/rw4hzBInlZSQ3N7H09Cli0SiWlpawML+AMF20troGna4DQnFxMeeO3TwbnsUtKlxGfMpuyrhcZqanMRGcwONHjylmmqOLzs2RXPrh8/ng8/pQQxTZiedWaqZQQQ1hiFg3pym5qakJUokUUqkUrS0tMBqMcI24kMlksLi4SEhW4ff5eeO8Hi+MpOEuktHY6Bg6Oghhbm4u111VVRVKS0tRXFTMNdV++zYPZAlm0mkikcDZ2RlOT0+5ZpnA99J7pGELpyUSiUDeJIfQ29NLRYqg1Wq5gxXLy8vjNDC5BO4HuDF5fPn7C3U/wGOjxGEoFOL8sulyDDvQSxITRt1uGptKnszIZaJmB2y8GD9MHsFgkBdlHWXkz8fn8fnzZy5wBsg0YKIpmsTW1hYERniQgqOROepiAl6aBLNpkIv2d9LZXjqNw5eHWF9bw9TkQ3z66xM3ds547O/rRx8VHaSibpcbglwhRyQ2h8zRS2wkn9OXkjc3kD7Yw+tfTrD8LIG9zD7++PMDTs/e4O1vv+Kf//5FcjuFIacD48H7sNis8Afu034YQqhEj0i5AS+0E1hXjGGp3oF93RTSdx5gQ+nFusqLnfYQ0rqHyOjD2GjxIdE0gpVbbsRrbFilnGXaMz/zCbtXh/G6dgIZmR/75WM4qPTiRYkT6TI30qUupHKsSGabsfmjGc+zBpHKtmDrJyu37dx7/JytUzlf/UKqwI4j5SReqx5iT+rFsXoGR820b51CpmYcqat2JEX3sEVfZql823dL5lm/r7+dCav5FqznWbAhsmCzwMbX3/Yb+VY8L7Rhp5SedNWKdbJk8RD3bRbRBSUOvl6nGqsiM18LNoMZT8IxhDwBdGl10CrVMHUbEAnNYNzlhaJWjsCoH/HwI74ftbtg1PfBbrRy02s7UFMhg6REDM0tGj2L1QIH/f7v0l+5oakRSvq7aEi4LtLnnZ/vQJQvQr/RgJeHh4jGohgwDaBZ0QwVjSWLr66pRqVUwnOY73/3oJEB/hhQogAAAABJRU5ErkJggg==","aspectRatio":1,"src":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/3ddd4/mcp-cover.png","srcSet":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/078a8/mcp-cover.png 163w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/e56da/mcp-cover.png 327w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/3ddd4/mcp-cover.png 653w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/c5cc7/mcp-cover.png 980w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/6050d/mcp-cover.png 1200w","srcWebp":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/0acdf/mcp-cover.webp","srcSetWebp":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/ac59e/mcp-cover.webp 163w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/7660b/mcp-cover.webp 327w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/0acdf/mcp-cover.webp 653w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/75470/mcp-cover.webp 980w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/9000d/mcp-cover.webp 1200w","sizes":"(max-width: 653px) 100vw, 653px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M0%205c0%204%200%205%202%204l1-2C2%205%203%206%207%208s5%204%201%202-6-1-4%202h2l3%202%203%202H8l1%201-4-2-4-3c-2%200-1%203%200%203v11L0%2041c0%2014%200%2014%203%2017%202%202%202%204-2%204l-1%204c0%202%200%203%201%202v2L0%2087v15h10l2%201-1%201c-1-1-1%200-1%201H4c-3%200-4%200-4%203%200%202%201%203%202%202%201%200%203%203%201%204v2l-1%201c-2%200-3%2021-1%2023v2l-1%2035v34l4%201c5%202%206%204%205%2010%200%205%201%206%2010%207%207%200%205%202-3%202-3%200-4%200-3%201l-1%201c-2-1-3%201-1%203s4%201%203%200c0-2%201-2%203-1l2%203v1l1%202c0%202%200%202-1%201h-8c-2-1-3-1-3-5l1-7c1-3-2-5-6-4s-4%208-1%2010c2%202%202%206-1%205-2-1-1%206%201%208s2%205-1%204c-1-1-2%202%200%204v25a595%20595%200%20000%2080c-1%202-2%2026%200%2026l1%203-1%202-1%202c0%202%200%202%202%202l-1%201c-1%201%200%202%206%202%207%200%208%200%2010-2l3-2v2h2c2-1%203-2%202-3s1-5%202-5v3l-1%202c1%201%202%201%204-1l3-1-1%202-2%202c0%202%204%203%2016%203h11l2-5%201-7c-1-2%200-2%204-1%201%201%201%201-1%202-1%200-2%201-2%203a264%20264%200%2001-1%206h1c-1%202%200%202%204%202%203%200%204%200%204-2s3-2%204%200c0%202%208%203%208%201h1c1%201%202%201%202-1l2-2c2%201%204%200%203-1v-1l5%203c4%202%204%202%207%201%205-1%206-1%203%201-3%201-3%201%205%201s9%200%2010-2%201-2%201%200%201%202%207%202l7-1h1a627%20627%200%200067%200c-6%200-6%200-8-3l-3-4%202-7c2-9%202-8%200-12-2-3-3-4-7-5l-4-3h-1l-2-2-1-2a109%20109%200%200132%201c2%200%204%200%203%201-1%200-1%201%201%202v3l-1-1-1-1c-1%200-2%201-2%203s0%202%201%201l2-1c1%201%200%203-1%202-2%200-1%202%200%203%202%201%2011%202%2014%200%203-1%203-1%203%201l1%202%201-1h1c1%200%204-2%203-3l1-1c2%201%202%204%200%203v3h-1c-2%200-2%200-1%201l3%202h1l-1%201v8c-1%202-1%202%202%202%202%201%203%200%203-1l2-2v3c-1%201%200%202%202%202%202%202%203%203%202%204a379%20379%200%200076%201l11%201%2010-1h1l11%201c8%200%2010%200%209-1v-1c1%201%202%200%201-1%200-2%201-1%203%201%201%202%2018%203%2021%201h1l4%201%204-1c-1-1-1-1%200%200%201%200%202-1%202-4%200-2%200-3-1-2-1%202-4%201-3-2l2-1%201-2V259l-2%201c-2%200-2%200%200-1%203-2%202-5-1-4l-3-1%202-1h2c1-1%201-1-1-3s-3-2-4-1c-2%202-2%200%200-2l1-2%201-1%201-2c0-3%200-3-3-2l-3%202v1l-1-1-2-1h-5l-2-1c-2%200-2%204-1%204l1%201-2%201-3-1%201-1v-1c-1-1-1-1%201-3s2-3%200-4v-3c-2%201-2%201-2-1%201-1-6-4-9-4l-2%205c-1%204-1%204-6%204l-4-2-1-1c-3-1%201-4%204-3l3-1%201-1c3%200%205-3%203-4v-1c3%201%202%200%200-2-4-5-4-14%200-11l1-2h1c1%202%202%202%203%201l-1-3c-2-2-4-7-3-9s-2-4-6-5c-6-2-10-6-10-10%201-3%202-4%203-2v1l-1%203%202%202c2%200%202%200%202-2-1-2%200-2%203-2s3%200%202-1c-1-2%200-3%202-1h1l-2-2c-8-3-8-3-2-3%205%200%206%200%207-3%203-5%203-5%203-1-1%204-1%204%201%203l2-3v-1l1-6%201-5%201%202c0%202%200%202%202%200v-8l-1-3-2-1h-2l-3-1c-2%200-4-3-2-3l1-3%203-7%201%201h1l1-2%201%201c0%201%201%202%202%201v-1l-1-2%202%201h2c2-2%202-4%200-5v-1c0-2-3-3-4-2l-1%201-2%201c-1%201-1%201%201%201h2c-1%201-1%201%200%200l2%201h-1l-2%201c0%202-1%202-2%200-2-2-2-2-3-1s-1%201-1-1c-1-2-3-3-3-1l-2%201c-1-1-2%200-3%201l-3%202%201-2%202-1-2-2c-3-2-4-2-7%201l-4%201c-3%201-5%205-3%206v1c-2%200-2%200-1%201l1%202c1%209%202%2011%206%2011%203%200%203%201%201%203-2%201-7-3-7-8-1-5-3-6-4-3l-2%202-1%202-3%204c-1%201-1%201-1-1v-4c-1%200-2%209-1%2010l-1%201c-1-1-1-1-1%202l3%203%201%203-1-1-3-1-3-2c-2-3-2-3-3%201v1l2%201v2h-4l-1%201-2%201-1%201c0-1%200-2-1-1l-1-1%202-1h1c1-2%200-2-1-2-3%200-5%202-4%204h-1c-1-1-1%200-1%202s0%202-1-1c-2-5-4-7-7-6-2%200-3%203-1%205v4c0%202%201%202%206%206l-1%202-2%202-1%203c0%202%200%202%202%201l2-1%202-1h1l1%202%203-4%201-2%202-2%201-1%201%201c0%201%201%202%202%201%202%200%203%202%201%202v3c2%204%202%2010%200%2013l-3%201-1%201c1%201-1%205-2%205l-1-1-1-1-2%201-1%201v-1l-1-2-1%201c0%201-1%202-3%202s-3%200-4%203l-2%203v1c1%200%201%201-1%202-1%201-2%202-1%203%200%202%200%203-2%204l-2%203h4c1-1%201-1%201%201l-1%202-1%205v5l-3%2015%201%201h-1c-2%200-2%200-2%202l-2%206v3l1%202c-1%201%200%204%201%204l1-1%201-1v2l1%201h1l-1%201v1c1%201%202%202%201%203s-1%201-2-1l-1-1-1%201c-1-1-2%200-2%201l1%201v2h-1c-1-1-1-1-1%201l-1%201h-2l-1%204c-1%202-2%202-11%202-10%200-10%200-9-2%201-3%200-4-1-2-2%203-3%202-2%200%200-2%201-3%202-2l1-1c1-1%200-1-2-1l-3%201-1%201-1-1-1-1c-2%200-4%205-3%206%204%202-5%202-81%202l-85-1c-7-6-16-7-18-2h-2l-3%201c-3%202-3%202-4%200l-4-1c-2%201-2%201-1%202l-14%201c-12%200-15%200-14-1%202-2%202-5%200-6-2-2-2-2-1-4v-3l-1-2h-1c-1%201-1%201-3-1s-7-3-5-1l-1%201-1-3c0-2-1-2-3-2-1%200-2%200-1-1%201-3-4-7-6-7-2%201-3%200-3-2%200-3%201-3%203-2l3-1v-3l-2-1h2v-1l1-2%201%201c0%202%2020%200%2027-1%208-3%208-3%203-7-4-3-4-4%200-2%206%203%2011%200%2011-5l1-4c1-1%200-2-3-5-4-3-5-6-3-6l1%201%202%203%202%201h1c1-1%201-1%201%201l2%202%201%201%202%201%201-2h2l1%203%202%202%204%201%206%201%206%202c1%201%205%202%205%200l2-1%202-1c2-2%203-3%203%200h6l9-2-17%205-5%201v2l-1%201v-1l-2-1-4-1c-2%200-2%200-3%202%200%202-2%203-2%200-2-3-3%200-2%204%201%203%201%203%202%201l2-1v1c-1%202-1%206%201%206v6c0%201-2%200-4-3-4-3-6-3-6%200l-5%201-1%202h-7l-1-1-1-2c-1%200-1%204%201%205l3%201c2-1%204%201%204%203-1%202%200%204%203%204l3%202c0%202%202%203%203%201l3-1c2%200%203%200%202%203%200%203%202%202%204-1%202-5%201-7-4-8l-3%201v3c-2%202-5%200-6-4l-1-1h-1v-2h4l3%202h4l2-1h1c2%203%204%202%203-1%200-2%200-3%202-4h2l-1%201v2h1l3-4%201%202s1%202%203%202l2%203c-1%201%203%203%206%202l1%201c-1%202%201%203%204%203v-1l-1-2%203%202h2c0-2%203-1%204%202%201%202%203%203%203%201l2-2c3-1%204-10%201-11v-2c3%200%202-6%200-8l-3-3-1-1c-2%201-4-1-4-3l-2-3c-1-2-1-2%201-3%201-2%204-3%204-1l-1%201v1h2l2-1-1%202c-1%201-1%201%201%201l3-3c1-2%201-2%202-1%202%202%203%203%202%201l1-2%201%201c1%202%206%201%208-1l2-1v4h4l-1-1-1-1v-7l1%202v2c2%200%202%201%202%207%200%203%201%204%203%204l2%202%201%201%201-2%201-4c1-1%202%200%201%201-1%203%202%203%205%201l3-3%201-1-1-2-1-2c1-3-1-7-2-5h-2c-1-1-1-1%201-4%202-4%203-8%202-10s0-7%201-8l2-2%201-4%206-2c4-2%205-2%204%200l-1%201c-2%200-3%205-2%208%201%202-1%207-2%205-1%200-2%205-1%207%200%202%201%202%206%202l3%201h3l1-3c-1-1%200-2%201-4l1-4%202-2%203-2c0-2%205-4%207-3v2l1%202c2%200%202%201%201%203l-1%204c1%202%201%203-1%206-2%202-2%202-3%201%200-2-2-1-1%201h-1l-5-1c-4%200-4%200-3%202%201%201%201%201-1%201s-2%202-1%206l1%201c0-2%200-2%202%200s2%202%201%203l2%201h5c1%201%202%203%201%204-1%202%206%201%209-1%203-4%203-9%200-8-2%200-2%200-1-1l-1-2v-4h-1l-1%201-1-1%202-2v-1l3-7%202%201c1%202%202%201%202-4%202-12%202-20%201-20l-1-1-1-1c-2%200-3-1-1-3s-1-5-5-5c-8-2-22-2-24-1-1%201-4%201-4-1%200-1-3-2-11-2-15-1-21-2-21-3l13%201h21l1-1c1%201%202-2%202-6s-2-6-4-4l-7%201c-7%200-7-3%200-3l4-2%201-1c3%200%202-2%200-3-2-2-2-2-1-3v-2h-4l1-1-1-1-3-2c-1-1-7%201-8%202l-7%203%2013-8%207%201%207%201%203%201%203%202c3%201%204%201%205-1s4%200%203%202l6%203c7%201%207%201%206-1h1c2%202%203%202%202%200h1c1%201%202%201%204-1v-2c-2%200-1-2%200-2%203%201%204-2%203-8-1-13-1-18%201-16l1%202v4l1%203%201%201-1%201-1%201%201%201%202%201%203%201c2%201%202%201%202-1%200-1%200-2-1-1l-1-1%203-1c2%200%202%200%202-2l-1-3h-2c0-1-1-1-1%201-1%202-1%202-1%200%200-1-1-2-2-1-3%200-2-1%201-3%203-3%204-4%202-4l-2-1%202-2c2%200%203-4%201-9s-2-7-1-6l1%202%202%203c1%201%202%202%201%204%200%202%200%202%201%201h2l-1%203c-2%201-3%206-1%206l1%202h1l2-1-2%203c-2%202-2%208%201%208h2c1%200%204-9%203-11l-2-3v-3l-2-7v-4l-1-4-1-1c0-2-5-2-7%200l-3%201%201-3c2%200%202-1%201-1l-1-1c0-2-1-5-4-8l-1-3%204%203%203%204v-6l1-7v-8l1-2c-1-1-7%200-8%201-2%202-5%203-5%202l2-2c2-1%202-1-1-1-5%200-7%201-6%202l-1%201v1h-3l-1-1h-3l-1%201h-2c0-2-1-2-2-2-2%201-6-1-6-2%200-3%204-4%207-2h4c2-3%203-2%202%201%200%204%200%204%204%201%201-1%203-2%204-1v-1h2c2%200%202%200%201-1v-2c-2%200-2%200-1-1l4-1c3%200%208-2%209-6l1-2c2%200-3-5-5-5s-2-1-2-2l-2-2c-1-1-2-2-1-3%201-2%205%200%205%202l2%204c2%201%202%201%202-3l-2-5-1-4c1-1%201-1%202%201l1-10V12l-5-2c-5-2-6-2-7%200-1%201-1%201-2-1l-4-3c-2-1-3-2-2-3%200-2-2-3-5-3-2%201-2%201%200%202l3%202h-3l-3-3c0-2-15-1-15%201v2l3%206-3-2c-2-3-5-4-5-2l2%202c3%202%202%203-1%201l-3-2-4-1h-4l-1-1V3c0-3%200-3-7-3l-8%201h-1c-1-2-55-1-55%201l-1%201-1-1c1-1%200-2-1-2v1l-1%201-1-1a109%20109%200%2000-35%201l1-1c1-1-1-1-5-1-7%200-7%201-3%204s4%205%200%205v2c2%200%202%201%201%201s-1%201%201%202v2l-1%201h4v1h-2v4c2%202%203%204%201%204-1%201-5-8-5-11s-1-2-4%204l-5%206c-2%200-1%202%201%204s6%203%206%201l3%201%202%202h-6c-5-1-5-1-4%201%200%202%200%202-1%201l-2-4-2-1v-3c-1%201-3%200-5-1-3-1-3-1-3%201%200%203%202%204%205%204%204%200%204%201%203%204%200%205-1%205-1%201l-1-3-1%201h-2c-2-1-5%200-11%202-2%201-4%202-5%201l1-3%201%201%205-1c7-2%207-2%204-7l-3-4-1-1v-2c1-1%202%200%203%201h2l4%204%204%202-5-12c-2-2-2-2%200-4%201-2%201-2%202%200l4%202%203%201h-3c-3%200-4%200-1%204%201%201%202%202%203%201l2%201h1l1-3%201-3c1%200%201-1-1-1l-3-1h3c3%200%203%200%202-2-1-1-1-1%201-1%202%201%203%200%200-2l-1-5c0-2-1-2-3-2-3%200-6%203-5%205l-2%202-1-1c0-3-5-5-15-6H0v5m200-3l2%203%2015%205%201-5c0-5-2-7-5-4h-2l-6-1c-6%200-6%200-5%202m52-1l-1%203c-2%201-2%203%200%202%202%200%201%201-1%205-2%203-4%204-2%200%201-2%200-4-1-4l-5%2012%201%201-1%203c-2%205-2%209%200%2012l2%203-1-3%201-2c1%201%203-4%202-7l1-2%202-1%201-2%201-1-1-1c-1%201-4-1-3-1%202-2%206-2%206%200l1%201h3l2%201-2%202-2-1-3%202c-2%204-2%204-1%206%202%202%202%207-1%208v6c-1%202-1%203-1%201s-2-4-4-3l1%203%201%203%201%203%202%205%204%206c3%202%203%202%201%204v2l1%202%202%207V62c2-1%202-8%200-9v-2c1%200%200-2-3-4-3-4-4-7-1-3h2l2-1v3l2%204c3%202%203%203%205%201h3l-2%202c-2%200-2%200%200%202%201%201%202%202%203%201%202%200%202%200%201%201s-1%202%201%204c2%203%201%204-2%200-2-2-2-2-4-1v2l2%201h-5c-2%200-2%201-1%202v1l-1%204c0%204%200%205%202%204l-1%202c-2%202-1%204%202%203l2%201h2l1-2%201-1%201-1%203-4c2-2%202-3%201-4v-3c0-2%202-3%202-1l1%201V54l1-3%202-8%201-3%201-2-1-2-1-1h1c2%200%201-3-1-7-1-2-2-3-3-2l-1-1%201-1%201-1-1-1c-2%201-3-1-2-2%202-3%200-5-2-4-3%201-4%200-2-1%203-1%201-4-2-4-2%200-2%200-1%203%200%203%200%203-2-1l-3-4c-2%200-2-6-1-7V1c-1-2-3-1-6%201-2%202-3%201-1-1%201-1%201-1-1-1s-3%200-2%201m77%206a311%20311%200%2000-3%208c0-7-1-5-2%203l-2-1-1-3v2a115%20115%200%20010%2011l2-1%202-3c1-4%201-5%201-2%200%202%200%202%202%201h1l-1%202-2%203-1%201-1%203-1%205c-1%202-3%2010-3%2016v11c1%201%201%201%202-1%200-2%201-2%205%202%205%204%205%205%206%2011v6c-1%201%203%2010%205%2012%202%200%202%201%202%203l2-2%201-2-1%203c0%202%200%203%201%202%202%200%202%200%201%201l2%203%203%205c2%204%203%204%204-3l1-5-1%206v7h7l6%201c3%201%204%200%205-2l4-3c2%200%203%202%201%207-1%204%201%207%205%207%207%202%208%202%207%204l1%204c3%202%202%205-1%207s-4%206-1%206v5c-1%203-1%203-3%201h-1l1%202%201%203v3c-2%201-2%202-2%204%201%201%200%202-2%203l-2%202-2%202c-3%203-3%205%200%205h2l2%201c2%200%202%200%200-2v-2c2%201%204%200%206-1l3-2%201%203%202%204c1%201%201%201-1%202-2%200-2%200%200%201h-1l-3%201c1%201%200%201-2%201-3%200-7%202-5%202l-2%201h-3c0-2-2-1-2%201h2c-1%202%201%205%203%204v1l1%202%202-1%201-2v1l2%201c1-1%202-1%202%201v11l-5-3c-8-3-9-4-8-5%202-1-1-8-3-9-2%200-4%203-5%207v2c2%200%202%200%201%205v6l3%206c2%202%208%208%2012%2010%202%201%205%200%205-2l2%201c1%201%202%202%203%201l5-2c2%200%203-1%203-6%200-4%200-4-2-2l-2%205c-1%203-2%204-5%201-2-2-2-5%201-6l2-2v-4c1-3%201-3%201-1v5c0%202%200%202%202-1l3-4v-70a4447%204447%200%20010-102V0h-10l-11%201h-1l-4-1-3%201-2%201-2-1-2-1c-2%200-3%201-3%202l-2%202V2c1-2%201-2-9-2l-10%201h-1l-5-1h-5l-1%207M53%207c1%202%200%202-6%203-2%201-2%201%201%201s7%203%207%206l2%201c1-1%203%200%205%201h2l2%202c1%202%201%202%203%201%201-2%200-4-2-4-1%201-2%200-2-1-1-2%200-4%202-4l1-1c0-1%2020-1%2024%201v-1c-1-1-4-2-12-2-9%200-11%200-12-2-2-2-2-2-4-1h-9l-1-1-1%201m166%209l-1%2017c0%2014%201%2015%203%2015l1%201c0%202%204%205%204%203v1c0%202%202%202%203-1%202-3%201-6%200-3-2%202-2%202-2%200-1-2%201-4%203-3l1%205c0%204%200%204%202%202%201-1%202-2%203-1v-1c-2-1-1-2%201-2%201%201%202%200%203-3l2-5-1-1c-1%201-1%201-1-1%201-2-2-8-3-6v2c1%200%201%201-1%202v2l1%202c-1%202-3%203-4%202h-1c0%201-1%202-2%201v-5c1-11%201-14-2-17l-3-2v2l-1%203-1-4c0-2%200-4-2-5l-2-2v2m-90%2045l-1%201-4%203-4%203-1%208c0%205%200%205-2%204-1-1-1-1-1%201l2%203c1%203%202%202%201-1%200-2%200-2%201%200l4%202c3%201%203%201%202%203l1%202h4l8%203c4%200%204%200%204-2l-3-1c-3%200-4-1-2-2h-1l-1-5c1-8%201-12-1-12l-2-5c-1-4-4-8-4-5m99%204l-2%203c-3%203-3%203-2%200%201-4-2-4-4%200-1%203-1%204%201%203%202%200%202%200%200%204l-1%206-1%202v2c1%202%205%200%203-1-1-1-1-2%201-2l3-6%203-6c2-5%202-6%200-6s-2%200-1%201m4%202v4l-2%202%202%202v3l1%202%202-1h1c1%201%202%201%205-2%204-4%204-5%200-8s-5-2-5%201c0%202%200%202-1%200l-1-2-1-1v-2l-1%202M75%2089l-1%203-1%201-1%201-1%202h1l2%206c-1%202-1%202-4%201l-3%201c1%202%200%202-2%202-3%200-3%200-1-1s2-1%200-1c-4%201-6-1-6-4l-1%201-1%201c0-2%200-2-2%200l-1%202-4-3-4-5-1-1-3-1h-2l2%202c2%202%202%202%200%201-3-1-2%200%205%205l7%206%202%202c2-1%202%2010-1%2021s-3%2011-5%2010v-2c2-1%202-2-1-4-3-3-3-3-3%202%200%206%200%207-3%207-2%200-2%200%200%202l4%202%202%202h1c3-4%2028%201%2026%205%200%202-5%202-8%201l-5-2-3-2c0-2-2-1-2%201l-5%204-2%203%202%201%201%204h-1l-3-1c-2%200-2%201%201%202l4%203c0%201%205%204%208%204%202%200%202%203%201%205l-1%201%202-1c2-2%206-3%209-1h2l-2-2c-4-1-6-3-4-5s4-8%203-10l2-2c2%200%203-1%202-2-1-3%201-1%203%203%202%203%202%204%203%203l1-1%202-1-2-1h-2c0-2%208%200%2011%202%201%201%202%202%203%201l2-1c2%200%201-1-2-3l-4-4-3-1h-6c-2%201-6-2-6-3%201-1-1-4-2-7-3-5-4-8-2-8v-2c-2-2-2-2-2%201v7l1%202c3%203%201%204-6%202l-8-2-4-2%201-2v-1l1-3%202-11%202-10%203%202%202%201%202-1c1-1%203-1%209%202v-1c-3-3-1-5%204-5%203%200%204%200%203-1s-1-1%202-1c7%202%2014%202%2013%201l-4-1c-5%200-17-2-16-3h-1l-2-1c0-2%201-2%204-2h5l-4-1c-3%200-4%200-4-3l1-2%201-1c-1-1%200-2%201-2l1-1c0-2-2-2-2-1-1%201-1%200-1-3v-4l-1%203m174%205c-3%204-4%209-2%208l2%201-1%201-2%201h-1c-1-3-4-1-4%201%201%204%203%206%205%205h3c0%203%204%201%204-2l1-3v-6c0-1%200-2-2-2v-5c-1-1-3%200-3%201m63%2033l-2%204c0%203%201%206%202%205l1%201%201%203%201-2v-3l1%202%201%205v5c-1%203-1%203-1%201%200-3-5-7-6-6l2%204%208%2012-2-1-2-1%201%204c0%202%203%201%204-1l1-1v1l1%201%201-1%201-2v-5l-2-3v4l-1%203-2-11c0-6-1-10-2-11l-3-5c0-4-1-4-3-2m-37%207c-6%204-7%208-2%207%202-1%202-1%201%201-3%202-3%205%200%203l-2%204-2%203%203%205c1%204%203%206%204%205l1%201-1%201v1c1%201%2013-1%2013-2h8l-2%201c-2%200-2%201-2%203v3l-1-3c-1-2-2-3-4-2l-7%201c-4%201-4%201-3%203%200%203%201%204%202%202h1c1%201%201%202-1%202s-3%200-4-3l-1-3-8%202-7%202%201%201-2%201-4%202c-2%202-2%203%202%204%202%201%207-3%205-4s-1-2%202-1c2%200%202%201%201%202l-1%203v3c0%202-1%203-3%203l-2%202v1c-1-2-2-1-2%201l-2%204-2%201h-1l-1%202v16c0%205%201%207%203%209l3%203%205-3%205-2%204-2%202-1%203-1c2-2%202-2-1-3h2c4%200%205%200%2010-4l6-4h2l2-1-2-2-1-1h-1l-3%201v-1l2-3%201-1%203-1-1-1h-2l-1-1c1-1%200-1-1-1l-5-3c-3-3-5-3-7-3s-2-4%201-6%204-3%204%200l1%201c1%200%202%201%202%203l3%202%203-1-1-1v-3h1l1%201v-3h2l-1-2c-2-2-1-6%201-5l2%201c2-1%202-5%201-5v-7c0-3%200-3-3-3l-4-2h1c4%202%205%201%205-6l-1-5-2%201%201-2c1%200%202-12%200-12l-1%202c0%201%200%202-1%201-1-2-2-1-2%202%200%202%200%202-1%200%200-3-2-2-2%201%200%202%200%202-1%200-1-3-1-3-1-1s0%202-1%200v-2l-5%203-5%202v-1l3-7c0-1-3%200-5%202m-54%207c-2%203-3%206-1%206l-1%203-3%205%202%205c1%200%203-5%202-6l1-2h2c1-1%202%200%202%201l1%201%205-7c-1-1-5%201-5%203v-5c0-7-1-8-5-4m83%202v2l1%202-2-1a870%20870%200%20010%2015c2%200%202-1%201-1-2-2-1-3%201-3l3%202%204%201c3%200%203%200%201-2v-3c3%200%202-3-3-8-5-7-4-6-6-4m-55%206c-7%201-8%202-8%207%200%203%200%204-1%203-1-2-1-2-4%203l-2%203v-2c4-7%205-14%203-14s-5%203-4%205l-2%202-3%201-3%202c-3%201-3%201-3%205%201%204%201%205%203%205l2-1h2c2%200%202%200%201-2%200-2%200-2%203%200%204%203%209%203%209%200%200-2%201-2%203-2%201%200%202-3%201-8%200-5%200-5%201-4h2l2-1-1%202v1l1%205c-1%203%200%204%201%204l1%201-1%201-1%203v2l3-2c0-2%201-11%203-14l1-3-2-2h-7m-63%203l-2%201h-1l-5%201-4-1%201%202c2%201%202%202%201%202-2%200%201%204%203%205h3c1-1%202-1%204%201h-1c-3%200-2%201%201%203s4%204%200%202h-2l-2%201-1-2c1-1%200-2-2-3l-3-1-1-2c-2-1-2-1-2%202%200%205%201%209%203%209h3l9%201h6c-2-2-2-2%200-1%202%200%202%200%201-2-3-3-2-4%200-1%202%201%203%202%205%201%203%200%203-1%200-3-2-1-3-1-3-8-1-6-9-11-11-7m147%2015v2l5%201%201%201-3%201h-1c-2-2-3-1-2%201l1%202h1l1%201%201%201h4l6%202c3%201%203%201%202-1-1-1-1-1%201-1%202%201%204-1%204-3l-2-1c-1%201-3%200-4-1l-3-2c-3%201-3%200-2-2%202-1%202-1%200-1s-3%200-2%201c0%202-3%201-6%200l-2-1m-123%2030l-2%202c-2%200-3%205-5%2018a51551%2051551%200%20000%2017l2%204c0%202%202%202%203%201h2c1%200%201%201-1%202v1l3%202c2%207%206%203%205-5v-5h-1l-9-1%202-2%206-11%201-2v-3c-2-1-3%200-3%202s0%202-1-1l-2-3-1-1%201-1c3%200%204-4%202-6v-2c1-1%201-4-1-6h-1m165%2025l2%203c2%202%202%202%201%203-2%202-2%202-1%203%202%202%205%202%206%200h2c2%201%204-1%204-4%201-3-5-4-6-2v-1l-2-1-3-1c-2-3-3-2-3%200m-152%2016h-3l-1%202-1%205c-1%203-1%203%201%203l1%202c-1%202%203%205%204%204l-1-2v-2c3-2%205-1%203%201-2%201-2%201%200%201l3-2v-2l-1-5-1-4-2-1h-2m-173%205c0%202%200%202-2%201l-9%203-1%201-2-1-1-1-1%201-1%202-1-1-1-1h-5c-4%200-4%202%200%203l1%201c-2%201-2%201%200%204%201%203%203%204%204%202h2c0%201%205-1%205-3s3-5%204-4l1-1%202-1%201%201-1%201-2%201-2%201c-2%201-2%201%200%202%202%202%203%202%203-1l1-1%201%201%202%201c2%200%204-4%203-6v-6c-1-1-1-1-1%201m340%2020l-2%202-2%201c0%202-3%204-5%203h-1v2l-1-2h-1c-3%202-2%203%200%203l-1%201c-3%202-4%201-4-2%201-3%201-3-2-3-2%200-2%200-1-1l2-1%201-2-2-2-1%201-1%201-2%201v2l2%205%203%204v3c1%201%200%201-1%201l-2-1-1-1v3l-2%202-1%203h12c7%200%2012%200%2011-1-2-1-4-3-4-5s0-2%201-1l2%201-1-2-1-2v-1l-1%201h-2c-1-2%200-2%203-6%203-3%204-4%205-3l1%202v-2h1l2-1-1-1-1-2-1-2-1%202m-78%201l1%201v3l-2%201-1%202v2l1%202-3-1c-2-1-2-1-2%201v2l-1%201%202%201c2-1%203%200%201%202v1l-2%203v1c2%200%204-1%204-3s0-2%201-1h8c1%200%204-2%204-4l-2-3c-2-3-3-4%200-4h1c0-2-4-5-6-5l-2-1c0-2-2-3-2-1m20%203v1c1%200%202%201%201%202l1%202c2-2%203%200%201%205l-4%204-1%201c0%204%200%204%206%204%204%200%206-1%206-2l3-1c2%200%202%200%201%201a1750%201750%200%20017%200l-4-2c-2%200-2%200-1-1%202%200%201-2-1-4s-2-2-1-3v-1h-1l-1-3c-1-1-1-1%201-1s2%200%201-1l-1-1-1-1-1%202h-1c-1-1-2%200-3%202l-2%201-1-3-2-2c0-1-2-1-2%201M24%20322c0%206%200%208%202%208l1-5v-5l2%203c2%205%203%205%205%200l2-4v5c0%205%200%206%202%206l1-8c0-7%200-8-2-8l-4%205-1%205-2-4-2-5-2-1c-2%200-2%201-2%208m34-7c-2%201-1%2015%201%2015l1-3c0-3%200-3%202-3%205%200%208-5%204-8-2-2-7-3-8-1m-37%2047l-2%201c-2%200-4%204-4%205l2-1c2-2%202-2%205-1l4%202-2-2c-3-2-2-3%203-3%203%200%204%200%203%201v1l1%201c0%201%201%202%203%201%203%200%203%200%202%202l-5%201h-6l-2%201%201%201-2%201c-2%200-4%201-4%203h1l2-1c2%200%202%200%201%201-2%200-1%202%201%202v-1h6c8%200%208%200%205%203h-5c-2-2-5-2-5%200l1%201c1-1%204%201%203%203%200%202%206-2%208-4%202-3%203-2%204%202l1%202c0-2%202-3%202%200l-2%202c-3%201-5%204-3%204l1-1h1l2-2h3l2%201-1-2c-1%200-1-1%201-2%201-1%201-1-1-1-1%201-2%201-2-1l-2-2h-1l2-2c2%200%206%203%205%204l3%201c2%200%203%200%202-1l-2-2v-2c-1%201-3%200-4-1l-3-1%202-2%201-1c-3%200-2-6%201-7%203%200%2010-3%208-3l-3-1c-2-2-30-2-32%200m45-1c-2%201-3%202-2%205l-1%202-6%202-3%201-2%201h4l3-1-1%205%201%202h1l2-3v-1c-2%201-2%200-2-2s4-3%205-1c0%201%201%202%202%201v-1c-2-1-2-3%200-3v-1c-2%200-3-1%200-3%201-1%201-1%201%201%200%203%206%202%2012%200%203-2%204-2%205-1h6l-1-3c0-1-7%200-11%202l-6%202c-4%200-4%200-4-2%201-2-1-3-3-2m54%200v1c3%200%202%202%200%204l-2%201h2c2-1%202%200%202%204l-1%204v5c0%203%200%203-2%202v1c0%203%200%203-2%203l-5%201c-1%200-2%200-2-2h-1c-1%202-1%202-11%202-12%200-9%201%204%201l12%201h1l3-1c3-1%202%202-2%203l-1%201c2%200%203%200%204%202l1%203v-3c0-1%200-2%202-1l1-1%202-2c2%200%202%200%201-1v-1c6-1%2012%200%2011%201h2c1%200%201%201-1%202l-2%203%204-2%202-3%203%202%202%201-1-2-1-1c0-2%201-2%205-1h6l-5-1c-5-2-5-2-5-6%200-2%200-3-1-2l-1%201v-1l-1-1c-2%200-2-1-1-3v-5l2-4c4-4%202-5-9-6l-9%201%201%201h3l-3%201c-2%200-2%200-1%201v2c-3%202-3%203-3-1l1-3h1c0-2-4-3-5-1m17%205l-2%202v2l2%201-1%203-2%202c1-1%202%200%202%201s-1%202-2%201l-1-1h-4l1-1%201-1c-1-1-2%200-4%202l-2%204v1c-2%202-1%204%201%204l5-1c2%200%206-1%208-3l1-9v-9l-3%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"narrow":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAE20lEQVQ4yz1U7VPSWRT+/RNbn2qmZlxdE/MlzUQhfFcSUIFsUTFfQAQCBUF5MZBMRYQKNcV8SVATlczUzZna2XZrZ7YPzbazs//Os+fepj6c+d177jnnPvc5z/kJ7bfbMWA0wul0YnhoCN16Perr61FdXQ2NWoMh8nV2dsJiNmNnexvj/nFE56J49eoIy0vLMPQbUFZWBkmlBDdu3ICg1Wh4sEathlKphL6rC3V1dWhoaEBtbS0aGxvR29ODnrs9mHzwgAr6eczx8TE+fvgIRbMCWVlZEIlEKCwshCAuL+cLcbkYVTIZGOK21lYoFQp+QXd3NyU1wzE8jJmZGXjGPLBaLDg5PsH+/j6Kiopw+dIlZGdn49y5HyCoCVllRQWuX7+OOkKkoiK2ezasJFbQSCj7ensxZLfD6XAiFoshMjuL+JMn2N3dxdmbM3g8Hpw/fw6XqOjFixchlBNCDT27ob4B6jY16um5jL9gIIgOnQ6DJhNH2NXZhfl4HHGyg/0D7Ozs4P3795xLhvLChQu4cuXKV4Q5OTlQqVQYdY+ira0NtTU1kEgkkBEFLeRXKVXQU7Nmw2FMT01hcWEB796+w8nJCba3tvFs5Rk1sxsFBQUQWJJYLIZcLqcnNuLatWtgqG9Kb/LnmwfN6O/rw4hzBInlZSQ3N7H09Cli0SiWlpawML+AMF20troGna4DQnFxMeeO3TwbnsUtKlxGfMpuyrhcZqanMRGcwONHjylmmqOLzs2RXPrh8/ng8/pQQxTZiedWaqZQQQ1hiFg3pym5qakJUokUUqkUrS0tMBqMcI24kMlksLi4SEhW4ff5eeO8Hi+MpOEuktHY6Bg6Oghhbm4u111VVRVKS0tRXFTMNdV++zYPZAlm0mkikcDZ2RlOT0+5ZpnA99J7pGELpyUSiUDeJIfQ29NLRYqg1Wq5gxXLy8vjNDC5BO4HuDF5fPn7C3U/wGOjxGEoFOL8sulyDDvQSxITRt1uGptKnszIZaJmB2y8GD9MHsFgkBdlHWXkz8fn8fnzZy5wBsg0YKIpmsTW1hYERniQgqOROepiAl6aBLNpkIv2d9LZXjqNw5eHWF9bw9TkQ3z66xM3ds547O/rRx8VHaSibpcbglwhRyQ2h8zRS2wkn9OXkjc3kD7Yw+tfTrD8LIG9zD7++PMDTs/e4O1vv+Kf//5FcjuFIacD48H7sNis8Afu034YQqhEj0i5AS+0E1hXjGGp3oF93RTSdx5gQ+nFusqLnfYQ0rqHyOjD2GjxIdE0gpVbbsRrbFilnGXaMz/zCbtXh/G6dgIZmR/75WM4qPTiRYkT6TI30qUupHKsSGabsfmjGc+zBpHKtmDrJyu37dx7/JytUzlf/UKqwI4j5SReqx5iT+rFsXoGR820b51CpmYcqat2JEX3sEVfZql823dL5lm/r7+dCav5FqznWbAhsmCzwMbX3/Yb+VY8L7Rhp5SedNWKdbJk8RD3bRbRBSUOvl6nGqsiM18LNoMZT8IxhDwBdGl10CrVMHUbEAnNYNzlhaJWjsCoH/HwI74ftbtg1PfBbrRy02s7UFMhg6REDM0tGj2L1QIH/f7v0l+5oakRSvq7aEi4LtLnnZ/vQJQvQr/RgJeHh4jGohgwDaBZ0QwVjSWLr66pRqVUwnOY73/3oJEB/hhQogAAAABJRU5ErkJggg==","aspectRatio":1,"src":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/502b1/mcp-cover.png","srcSet":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/f2e6d/mcp-cover.png 114w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/4ddba/mcp-cover.png 229w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/502b1/mcp-cover.png 457w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/7ddc2/mcp-cover.png 686w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/435bf/mcp-cover.png 914w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/6050d/mcp-cover.png 1200w","srcWebp":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/15384/mcp-cover.webp","srcSetWebp":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/31fce/mcp-cover.webp 114w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/e3e25/mcp-cover.webp 229w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/15384/mcp-cover.webp 457w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/0258d/mcp-cover.webp 686w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/64ea2/mcp-cover.webp 914w,\n/static/2b5897d3dd0bc9b258bd2274fa0ade58/9000d/mcp-cover.webp 1200w","sizes":"(max-width: 457px) 100vw, 457px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M0%205c0%204%200%205%202%204l1-2C2%205%203%206%207%208s5%204%201%202-6-1-4%202h2l3%202%203%202H8l1%201-4-2-4-3c-2%200-1%203%200%203v11L0%2041c0%2014%200%2014%203%2017%202%202%202%204-2%204l-1%204c0%202%200%203%201%202v2L0%2087v15h10l2%201-1%201c-1-1-1%200-1%201H4c-3%200-4%200-4%203%200%202%201%203%202%202%201%200%203%203%201%204v2l-1%201c-2%200-3%2021-1%2023v2l-1%2035v34l4%201c5%202%206%204%205%2010%200%205%201%206%2010%207%207%200%205%202-3%202-3%200-4%200-3%201l-1%201c-2-1-3%201-1%203s4%201%203%200c0-2%201-2%203-1l2%203v1l1%202c0%202%200%202-1%201h-8c-2-1-3-1-3-5l1-7c1-3-2-5-6-4s-4%208-1%2010c2%202%202%206-1%205-2-1-1%206%201%208s2%205-1%204c-1-1-2%202%200%204v25a595%20595%200%20000%2080c-1%202-2%2026%200%2026l1%203-1%202-1%202c0%202%200%202%202%202l-1%201c-1%201%200%202%206%202%207%200%208%200%2010-2l3-2v2h2c2-1%203-2%202-3s1-5%202-5v3l-1%202c1%201%202%201%204-1l3-1-1%202-2%202c0%202%204%203%2016%203h11l2-5%201-7c-1-2%200-2%204-1%201%201%201%201-1%202-1%200-2%201-2%203a264%20264%200%2001-1%206h1c-1%202%200%202%204%202%203%200%204%200%204-2s3-2%204%200c0%202%208%203%208%201h1c1%201%202%201%202-1l2-2c2%201%204%200%203-1v-1l5%203c4%202%204%202%207%201%205-1%206-1%203%201-3%201-3%201%205%201s9%200%2010-2%201-2%201%200%201%202%207%202l7-1h1a627%20627%200%200067%200c-6%200-6%200-8-3l-3-4%202-7c2-9%202-8%200-12-2-3-3-4-7-5l-4-3h-1l-2-2-1-2a109%20109%200%200132%201c2%200%204%200%203%201-1%200-1%201%201%202v3l-1-1-1-1c-1%200-2%201-2%203s0%202%201%201l2-1c1%201%200%203-1%202-2%200-1%202%200%203%202%201%2011%202%2014%200%203-1%203-1%203%201l1%202%201-1h1c1%200%204-2%203-3l1-1c2%201%202%204%200%203v3h-1c-2%200-2%200-1%201l3%202h1l-1%201v8c-1%202-1%202%202%202%202%201%203%200%203-1l2-2v3c-1%201%200%202%202%202%202%202%203%203%202%204a379%20379%200%200076%201l11%201%2010-1h1l11%201c8%200%2010%200%209-1v-1c1%201%202%200%201-1%200-2%201-1%203%201%201%202%2018%203%2021%201h1l4%201%204-1c-1-1-1-1%200%200%201%200%202-1%202-4%200-2%200-3-1-2-1%202-4%201-3-2l2-1%201-2V259l-2%201c-2%200-2%200%200-1%203-2%202-5-1-4l-3-1%202-1h2c1-1%201-1-1-3s-3-2-4-1c-2%202-2%200%200-2l1-2%201-1%201-2c0-3%200-3-3-2l-3%202v1l-1-1-2-1h-5l-2-1c-2%200-2%204-1%204l1%201-2%201-3-1%201-1v-1c-1-1-1-1%201-3s2-3%200-4v-3c-2%201-2%201-2-1%201-1-6-4-9-4l-2%205c-1%204-1%204-6%204l-4-2-1-1c-3-1%201-4%204-3l3-1%201-1c3%200%205-3%203-4v-1c3%201%202%200%200-2-4-5-4-14%200-11l1-2h1c1%202%202%202%203%201l-1-3c-2-2-4-7-3-9s-2-4-6-5c-6-2-10-6-10-10%201-3%202-4%203-2v1l-1%203%202%202c2%200%202%200%202-2-1-2%200-2%203-2s3%200%202-1c-1-2%200-3%202-1h1l-2-2c-8-3-8-3-2-3%205%200%206%200%207-3%203-5%203-5%203-1-1%204-1%204%201%203l2-3v-1l1-6%201-5%201%202c0%202%200%202%202%200v-8l-1-3-2-1h-2l-3-1c-2%200-4-3-2-3l1-3%203-7%201%201h1l1-2%201%201c0%201%201%202%202%201v-1l-1-2%202%201h2c2-2%202-4%200-5v-1c0-2-3-3-4-2l-1%201-2%201c-1%201-1%201%201%201h2c-1%201-1%201%200%200l2%201h-1l-2%201c0%202-1%202-2%200-2-2-2-2-3-1s-1%201-1-1c-1-2-3-3-3-1l-2%201c-1-1-2%200-3%201l-3%202%201-2%202-1-2-2c-3-2-4-2-7%201l-4%201c-3%201-5%205-3%206v1c-2%200-2%200-1%201l1%202c1%209%202%2011%206%2011%203%200%203%201%201%203-2%201-7-3-7-8-1-5-3-6-4-3l-2%202-1%202-3%204c-1%201-1%201-1-1v-4c-1%200-2%209-1%2010l-1%201c-1-1-1-1-1%202l3%203%201%203-1-1-3-1-3-2c-2-3-2-3-3%201v1l2%201v2h-4l-1%201-2%201-1%201c0-1%200-2-1-1l-1-1%202-1h1c1-2%200-2-1-2-3%200-5%202-4%204h-1c-1-1-1%200-1%202s0%202-1-1c-2-5-4-7-7-6-2%200-3%203-1%205v4c0%202%201%202%206%206l-1%202-2%202-1%203c0%202%200%202%202%201l2-1%202-1h1l1%202%203-4%201-2%202-2%201-1%201%201c0%201%201%202%202%201%202%200%203%202%201%202v3c2%204%202%2010%200%2013l-3%201-1%201c1%201-1%205-2%205l-1-1-1-1-2%201-1%201v-1l-1-2-1%201c0%201-1%202-3%202s-3%200-4%203l-2%203v1c1%200%201%201-1%202-1%201-2%202-1%203%200%202%200%203-2%204l-2%203h4c1-1%201-1%201%201l-1%202-1%205v5l-3%2015%201%201h-1c-2%200-2%200-2%202l-2%206v3l1%202c-1%201%200%204%201%204l1-1%201-1v2l1%201h1l-1%201v1c1%201%202%202%201%203s-1%201-2-1l-1-1-1%201c-1-1-2%200-2%201l1%201v2h-1c-1-1-1-1-1%201l-1%201h-2l-1%204c-1%202-2%202-11%202-10%200-10%200-9-2%201-3%200-4-1-2-2%203-3%202-2%200%200-2%201-3%202-2l1-1c1-1%200-1-2-1l-3%201-1%201-1-1-1-1c-2%200-4%205-3%206%204%202-5%202-81%202l-85-1c-7-6-16-7-18-2h-2l-3%201c-3%202-3%202-4%200l-4-1c-2%201-2%201-1%202l-14%201c-12%200-15%200-14-1%202-2%202-5%200-6-2-2-2-2-1-4v-3l-1-2h-1c-1%201-1%201-3-1s-7-3-5-1l-1%201-1-3c0-2-1-2-3-2-1%200-2%200-1-1%201-3-4-7-6-7-2%201-3%200-3-2%200-3%201-3%203-2l3-1v-3l-2-1h2v-1l1-2%201%201c0%202%2020%200%2027-1%208-3%208-3%203-7-4-3-4-4%200-2%206%203%2011%200%2011-5l1-4c1-1%200-2-3-5-4-3-5-6-3-6l1%201%202%203%202%201h1c1-1%201-1%201%201l2%202%201%201%202%201%201-2h2l1%203%202%202%204%201%206%201%206%202c1%201%205%202%205%200l2-1%202-1c2-2%203-3%203%200h6l9-2-17%205-5%201v2l-1%201v-1l-2-1-4-1c-2%200-2%200-3%202%200%202-2%203-2%200-2-3-3%200-2%204%201%203%201%203%202%201l2-1v1c-1%202-1%206%201%206v6c0%201-2%200-4-3-4-3-6-3-6%200l-5%201-1%202h-7l-1-1-1-2c-1%200-1%204%201%205l3%201c2-1%204%201%204%203-1%202%200%204%203%204l3%202c0%202%202%203%203%201l3-1c2%200%203%200%202%203%200%203%202%202%204-1%202-5%201-7-4-8l-3%201v3c-2%202-5%200-6-4l-1-1h-1v-2h4l3%202h4l2-1h1c2%203%204%202%203-1%200-2%200-3%202-4h2l-1%201v2h1l3-4%201%202s1%202%203%202l2%203c-1%201%203%203%206%202l1%201c-1%202%201%203%204%203v-1l-1-2%203%202h2c0-2%203-1%204%202%201%202%203%203%203%201l2-2c3-1%204-10%201-11v-2c3%200%202-6%200-8l-3-3-1-1c-2%201-4-1-4-3l-2-3c-1-2-1-2%201-3%201-2%204-3%204-1l-1%201v1h2l2-1-1%202c-1%201-1%201%201%201l3-3c1-2%201-2%202-1%202%202%203%203%202%201l1-2%201%201c1%202%206%201%208-1l2-1v4h4l-1-1-1-1v-7l1%202v2c2%200%202%201%202%207%200%203%201%204%203%204l2%202%201%201%201-2%201-4c1-1%202%200%201%201-1%203%202%203%205%201l3-3%201-1-1-2-1-2c1-3-1-7-2-5h-2c-1-1-1-1%201-4%202-4%203-8%202-10s0-7%201-8l2-2%201-4%206-2c4-2%205-2%204%200l-1%201c-2%200-3%205-2%208%201%202-1%207-2%205-1%200-2%205-1%207%200%202%201%202%206%202l3%201h3l1-3c-1-1%200-2%201-4l1-4%202-2%203-2c0-2%205-4%207-3v2l1%202c2%200%202%201%201%203l-1%204c1%202%201%203-1%206-2%202-2%202-3%201%200-2-2-1-1%201h-1l-5-1c-4%200-4%200-3%202%201%201%201%201-1%201s-2%202-1%206l1%201c0-2%200-2%202%200s2%202%201%203l2%201h5c1%201%202%203%201%204-1%202%206%201%209-1%203-4%203-9%200-8-2%200-2%200-1-1l-1-2v-4h-1l-1%201-1-1%202-2v-1l3-7%202%201c1%202%202%201%202-4%202-12%202-20%201-20l-1-1-1-1c-2%200-3-1-1-3s-1-5-5-5c-8-2-22-2-24-1-1%201-4%201-4-1%200-1-3-2-11-2-15-1-21-2-21-3l13%201h21l1-1c1%201%202-2%202-6s-2-6-4-4l-7%201c-7%200-7-3%200-3l4-2%201-1c3%200%202-2%200-3-2-2-2-2-1-3v-2h-4l1-1-1-1-3-2c-1-1-7%201-8%202l-7%203%2013-8%207%201%207%201%203%201%203%202c3%201%204%201%205-1s4%200%203%202l6%203c7%201%207%201%206-1h1c2%202%203%202%202%200h1c1%201%202%201%204-1v-2c-2%200-1-2%200-2%203%201%204-2%203-8-1-13-1-18%201-16l1%202v4l1%203%201%201-1%201-1%201%201%201%202%201%203%201c2%201%202%201%202-1%200-1%200-2-1-1l-1-1%203-1c2%200%202%200%202-2l-1-3h-2c0-1-1-1-1%201-1%202-1%202-1%200%200-1-1-2-2-1-3%200-2-1%201-3%203-3%204-4%202-4l-2-1%202-2c2%200%203-4%201-9s-2-7-1-6l1%202%202%203c1%201%202%202%201%204%200%202%200%202%201%201h2l-1%203c-2%201-3%206-1%206l1%202h1l2-1-2%203c-2%202-2%208%201%208h2c1%200%204-9%203-11l-2-3v-3l-2-7v-4l-1-4-1-1c0-2-5-2-7%200l-3%201%201-3c2%200%202-1%201-1l-1-1c0-2-1-5-4-8l-1-3%204%203%203%204v-6l1-7v-8l1-2c-1-1-7%200-8%201-2%202-5%203-5%202l2-2c2-1%202-1-1-1-5%200-7%201-6%202l-1%201v1h-3l-1-1h-3l-1%201h-2c0-2-1-2-2-2-2%201-6-1-6-2%200-3%204-4%207-2h4c2-3%203-2%202%201%200%204%200%204%204%201%201-1%203-2%204-1v-1h2c2%200%202%200%201-1v-2c-2%200-2%200-1-1l4-1c3%200%208-2%209-6l1-2c2%200-3-5-5-5s-2-1-2-2l-2-2c-1-1-2-2-1-3%201-2%205%200%205%202l2%204c2%201%202%201%202-3l-2-5-1-4c1-1%201-1%202%201l1-10V12l-5-2c-5-2-6-2-7%200-1%201-1%201-2-1l-4-3c-2-1-3-2-2-3%200-2-2-3-5-3-2%201-2%201%200%202l3%202h-3l-3-3c0-2-15-1-15%201v2l3%206-3-2c-2-3-5-4-5-2l2%202c3%202%202%203-1%201l-3-2-4-1h-4l-1-1V3c0-3%200-3-7-3l-8%201h-1c-1-2-55-1-55%201l-1%201-1-1c1-1%200-2-1-2v1l-1%201-1-1a109%20109%200%2000-35%201l1-1c1-1-1-1-5-1-7%200-7%201-3%204s4%205%200%205v2c2%200%202%201%201%201s-1%201%201%202v2l-1%201h4v1h-2v4c2%202%203%204%201%204-1%201-5-8-5-11s-1-2-4%204l-5%206c-2%200-1%202%201%204s6%203%206%201l3%201%202%202h-6c-5-1-5-1-4%201%200%202%200%202-1%201l-2-4-2-1v-3c-1%201-3%200-5-1-3-1-3-1-3%201%200%203%202%204%205%204%204%200%204%201%203%204%200%205-1%205-1%201l-1-3-1%201h-2c-2-1-5%200-11%202-2%201-4%202-5%201l1-3%201%201%205-1c7-2%207-2%204-7l-3-4-1-1v-2c1-1%202%200%203%201h2l4%204%204%202-5-12c-2-2-2-2%200-4%201-2%201-2%202%200l4%202%203%201h-3c-3%200-4%200-1%204%201%201%202%202%203%201l2%201h1l1-3%201-3c1%200%201-1-1-1l-3-1h3c3%200%203%200%202-2-1-1-1-1%201-1%202%201%203%200%200-2l-1-5c0-2-1-2-3-2-3%200-6%203-5%205l-2%202-1-1c0-3-5-5-15-6H0v5m200-3l2%203%2015%205%201-5c0-5-2-7-5-4h-2l-6-1c-6%200-6%200-5%202m52-1l-1%203c-2%201-2%203%200%202%202%200%201%201-1%205-2%203-4%204-2%200%201-2%200-4-1-4l-5%2012%201%201-1%203c-2%205-2%209%200%2012l2%203-1-3%201-2c1%201%203-4%202-7l1-2%202-1%201-2%201-1-1-1c-1%201-4-1-3-1%202-2%206-2%206%200l1%201h3l2%201-2%202-2-1-3%202c-2%204-2%204-1%206%202%202%202%207-1%208v6c-1%202-1%203-1%201s-2-4-4-3l1%203%201%203%201%203%202%205%204%206c3%202%203%202%201%204v2l1%202%202%207V62c2-1%202-8%200-9v-2c1%200%200-2-3-4-3-4-4-7-1-3h2l2-1v3l2%204c3%202%203%203%205%201h3l-2%202c-2%200-2%200%200%202%201%201%202%202%203%201%202%200%202%200%201%201s-1%202%201%204c2%203%201%204-2%200-2-2-2-2-4-1v2l2%201h-5c-2%200-2%201-1%202v1l-1%204c0%204%200%205%202%204l-1%202c-2%202-1%204%202%203l2%201h2l1-2%201-1%201-1%203-4c2-2%202-3%201-4v-3c0-2%202-3%202-1l1%201V54l1-3%202-8%201-3%201-2-1-2-1-1h1c2%200%201-3-1-7-1-2-2-3-3-2l-1-1%201-1%201-1-1-1c-2%201-3-1-2-2%202-3%200-5-2-4-3%201-4%200-2-1%203-1%201-4-2-4-2%200-2%200-1%203%200%203%200%203-2-1l-3-4c-2%200-2-6-1-7V1c-1-2-3-1-6%201-2%202-3%201-1-1%201-1%201-1-1-1s-3%200-2%201m77%206a311%20311%200%2000-3%208c0-7-1-5-2%203l-2-1-1-3v2a115%20115%200%20010%2011l2-1%202-3c1-4%201-5%201-2%200%202%200%202%202%201h1l-1%202-2%203-1%201-1%203-1%205c-1%202-3%2010-3%2016v11c1%201%201%201%202-1%200-2%201-2%205%202%205%204%205%205%206%2011v6c-1%201%203%2010%205%2012%202%200%202%201%202%203l2-2%201-2-1%203c0%202%200%203%201%202%202%200%202%200%201%201l2%203%203%205c2%204%203%204%204-3l1-5-1%206v7h7l6%201c3%201%204%200%205-2l4-3c2%200%203%202%201%207-1%204%201%207%205%207%207%202%208%202%207%204l1%204c3%202%202%205-1%207s-4%206-1%206v5c-1%203-1%203-3%201h-1l1%202%201%203v3c-2%201-2%202-2%204%201%201%200%202-2%203l-2%202-2%202c-3%203-3%205%200%205h2l2%201c2%200%202%200%200-2v-2c2%201%204%200%206-1l3-2%201%203%202%204c1%201%201%201-1%202-2%200-2%200%200%201h-1l-3%201c1%201%200%201-2%201-3%200-7%202-5%202l-2%201h-3c0-2-2-1-2%201h2c-1%202%201%205%203%204v1l1%202%202-1%201-2v1l2%201c1-1%202-1%202%201v11l-5-3c-8-3-9-4-8-5%202-1-1-8-3-9-2%200-4%203-5%207v2c2%200%202%200%201%205v6l3%206c2%202%208%208%2012%2010%202%201%205%200%205-2l2%201c1%201%202%202%203%201l5-2c2%200%203-1%203-6%200-4%200-4-2-2l-2%205c-1%203-2%204-5%201-2-2-2-5%201-6l2-2v-4c1-3%201-3%201-1v5c0%202%200%202%202-1l3-4v-70a4447%204447%200%20010-102V0h-10l-11%201h-1l-4-1-3%201-2%201-2-1-2-1c-2%200-3%201-3%202l-2%202V2c1-2%201-2-9-2l-10%201h-1l-5-1h-5l-1%207M53%207c1%202%200%202-6%203-2%201-2%201%201%201s7%203%207%206l2%201c1-1%203%200%205%201h2l2%202c1%202%201%202%203%201%201-2%200-4-2-4-1%201-2%200-2-1-1-2%200-4%202-4l1-1c0-1%2020-1%2024%201v-1c-1-1-4-2-12-2-9%200-11%200-12-2-2-2-2-2-4-1h-9l-1-1-1%201m166%209l-1%2017c0%2014%201%2015%203%2015l1%201c0%202%204%205%204%203v1c0%202%202%202%203-1%202-3%201-6%200-3-2%202-2%202-2%200-1-2%201-4%203-3l1%205c0%204%200%204%202%202%201-1%202-2%203-1v-1c-2-1-1-2%201-2%201%201%202%200%203-3l2-5-1-1c-1%201-1%201-1-1%201-2-2-8-3-6v2c1%200%201%201-1%202v2l1%202c-1%202-3%203-4%202h-1c0%201-1%202-2%201v-5c1-11%201-14-2-17l-3-2v2l-1%203-1-4c0-2%200-4-2-5l-2-2v2m-90%2045l-1%201-4%203-4%203-1%208c0%205%200%205-2%204-1-1-1-1-1%201l2%203c1%203%202%202%201-1%200-2%200-2%201%200l4%202c3%201%203%201%202%203l1%202h4l8%203c4%200%204%200%204-2l-3-1c-3%200-4-1-2-2h-1l-1-5c1-8%201-12-1-12l-2-5c-1-4-4-8-4-5m99%204l-2%203c-3%203-3%203-2%200%201-4-2-4-4%200-1%203-1%204%201%203%202%200%202%200%200%204l-1%206-1%202v2c1%202%205%200%203-1-1-1-1-2%201-2l3-6%203-6c2-5%202-6%200-6s-2%200-1%201m4%202v4l-2%202%202%202v3l1%202%202-1h1c1%201%202%201%205-2%204-4%204-5%200-8s-5-2-5%201c0%202%200%202-1%200l-1-2-1-1v-2l-1%202M75%2089l-1%203-1%201-1%201-1%202h1l2%206c-1%202-1%202-4%201l-3%201c1%202%200%202-2%202-3%200-3%200-1-1s2-1%200-1c-4%201-6-1-6-4l-1%201-1%201c0-2%200-2-2%200l-1%202-4-3-4-5-1-1-3-1h-2l2%202c2%202%202%202%200%201-3-1-2%200%205%205l7%206%202%202c2-1%202%2010-1%2021s-3%2011-5%2010v-2c2-1%202-2-1-4-3-3-3-3-3%202%200%206%200%207-3%207-2%200-2%200%200%202l4%202%202%202h1c3-4%2028%201%2026%205%200%202-5%202-8%201l-5-2-3-2c0-2-2-1-2%201l-5%204-2%203%202%201%201%204h-1l-3-1c-2%200-2%201%201%202l4%203c0%201%205%204%208%204%202%200%202%203%201%205l-1%201%202-1c2-2%206-3%209-1h2l-2-2c-4-1-6-3-4-5s4-8%203-10l2-2c2%200%203-1%202-2-1-3%201-1%203%203%202%203%202%204%203%203l1-1%202-1-2-1h-2c0-2%208%200%2011%202%201%201%202%202%203%201l2-1c2%200%201-1-2-3l-4-4-3-1h-6c-2%201-6-2-6-3%201-1-1-4-2-7-3-5-4-8-2-8v-2c-2-2-2-2-2%201v7l1%202c3%203%201%204-6%202l-8-2-4-2%201-2v-1l1-3%202-11%202-10%203%202%202%201%202-1c1-1%203-1%209%202v-1c-3-3-1-5%204-5%203%200%204%200%203-1s-1-1%202-1c7%202%2014%202%2013%201l-4-1c-5%200-17-2-16-3h-1l-2-1c0-2%201-2%204-2h5l-4-1c-3%200-4%200-4-3l1-2%201-1c-1-1%200-2%201-2l1-1c0-2-2-2-2-1-1%201-1%200-1-3v-4l-1%203m174%205c-3%204-4%209-2%208l2%201-1%201-2%201h-1c-1-3-4-1-4%201%201%204%203%206%205%205h3c0%203%204%201%204-2l1-3v-6c0-1%200-2-2-2v-5c-1-1-3%200-3%201m63%2033l-2%204c0%203%201%206%202%205l1%201%201%203%201-2v-3l1%202%201%205v5c-1%203-1%203-1%201%200-3-5-7-6-6l2%204%208%2012-2-1-2-1%201%204c0%202%203%201%204-1l1-1v1l1%201%201-1%201-2v-5l-2-3v4l-1%203-2-11c0-6-1-10-2-11l-3-5c0-4-1-4-3-2m-37%207c-6%204-7%208-2%207%202-1%202-1%201%201-3%202-3%205%200%203l-2%204-2%203%203%205c1%204%203%206%204%205l1%201-1%201v1c1%201%2013-1%2013-2h8l-2%201c-2%200-2%201-2%203v3l-1-3c-1-2-2-3-4-2l-7%201c-4%201-4%201-3%203%200%203%201%204%202%202h1c1%201%201%202-1%202s-3%200-4-3l-1-3-8%202-7%202%201%201-2%201-4%202c-2%202-2%203%202%204%202%201%207-3%205-4s-1-2%202-1c2%200%202%201%201%202l-1%203v3c0%202-1%203-3%203l-2%202v1c-1-2-2-1-2%201l-2%204-2%201h-1l-1%202v16c0%205%201%207%203%209l3%203%205-3%205-2%204-2%202-1%203-1c2-2%202-2-1-3h2c4%200%205%200%2010-4l6-4h2l2-1-2-2-1-1h-1l-3%201v-1l2-3%201-1%203-1-1-1h-2l-1-1c1-1%200-1-1-1l-5-3c-3-3-5-3-7-3s-2-4%201-6%204-3%204%200l1%201c1%200%202%201%202%203l3%202%203-1-1-1v-3h1l1%201v-3h2l-1-2c-2-2-1-6%201-5l2%201c2-1%202-5%201-5v-7c0-3%200-3-3-3l-4-2h1c4%202%205%201%205-6l-1-5-2%201%201-2c1%200%202-12%200-12l-1%202c0%201%200%202-1%201-1-2-2-1-2%202%200%202%200%202-1%200%200-3-2-2-2%201%200%202%200%202-1%200-1-3-1-3-1-1s0%202-1%200v-2l-5%203-5%202v-1l3-7c0-1-3%200-5%202m-54%207c-2%203-3%206-1%206l-1%203-3%205%202%205c1%200%203-5%202-6l1-2h2c1-1%202%200%202%201l1%201%205-7c-1-1-5%201-5%203v-5c0-7-1-8-5-4m83%202v2l1%202-2-1a870%20870%200%20010%2015c2%200%202-1%201-1-2-2-1-3%201-3l3%202%204%201c3%200%203%200%201-2v-3c3%200%202-3-3-8-5-7-4-6-6-4m-55%206c-7%201-8%202-8%207%200%203%200%204-1%203-1-2-1-2-4%203l-2%203v-2c4-7%205-14%203-14s-5%203-4%205l-2%202-3%201-3%202c-3%201-3%201-3%205%201%204%201%205%203%205l2-1h2c2%200%202%200%201-2%200-2%200-2%203%200%204%203%209%203%209%200%200-2%201-2%203-2%201%200%202-3%201-8%200-5%200-5%201-4h2l2-1-1%202v1l1%205c-1%203%200%204%201%204l1%201-1%201-1%203v2l3-2c0-2%201-11%203-14l1-3-2-2h-7m-63%203l-2%201h-1l-5%201-4-1%201%202c2%201%202%202%201%202-2%200%201%204%203%205h3c1-1%202-1%204%201h-1c-3%200-2%201%201%203s4%204%200%202h-2l-2%201-1-2c1-1%200-2-2-3l-3-1-1-2c-2-1-2-1-2%202%200%205%201%209%203%209h3l9%201h6c-2-2-2-2%200-1%202%200%202%200%201-2-3-3-2-4%200-1%202%201%203%202%205%201%203%200%203-1%200-3-2-1-3-1-3-8-1-6-9-11-11-7m147%2015v2l5%201%201%201-3%201h-1c-2-2-3-1-2%201l1%202h1l1%201%201%201h4l6%202c3%201%203%201%202-1-1-1-1-1%201-1%202%201%204-1%204-3l-2-1c-1%201-3%200-4-1l-3-2c-3%201-3%200-2-2%202-1%202-1%200-1s-3%200-2%201c0%202-3%201-6%200l-2-1m-123%2030l-2%202c-2%200-3%205-5%2018a51551%2051551%200%20000%2017l2%204c0%202%202%202%203%201h2c1%200%201%201-1%202v1l3%202c2%207%206%203%205-5v-5h-1l-9-1%202-2%206-11%201-2v-3c-2-1-3%200-3%202s0%202-1-1l-2-3-1-1%201-1c3%200%204-4%202-6v-2c1-1%201-4-1-6h-1m165%2025l2%203c2%202%202%202%201%203-2%202-2%202-1%203%202%202%205%202%206%200h2c2%201%204-1%204-4%201-3-5-4-6-2v-1l-2-1-3-1c-2-3-3-2-3%200m-152%2016h-3l-1%202-1%205c-1%203-1%203%201%203l1%202c-1%202%203%205%204%204l-1-2v-2c3-2%205-1%203%201-2%201-2%201%200%201l3-2v-2l-1-5-1-4-2-1h-2m-173%205c0%202%200%202-2%201l-9%203-1%201-2-1-1-1-1%201-1%202-1-1-1-1h-5c-4%200-4%202%200%203l1%201c-2%201-2%201%200%204%201%203%203%204%204%202h2c0%201%205-1%205-3s3-5%204-4l1-1%202-1%201%201-1%201-2%201-2%201c-2%201-2%201%200%202%202%202%203%202%203-1l1-1%201%201%202%201c2%200%204-4%203-6v-6c-1-1-1-1-1%201m340%2020l-2%202-2%201c0%202-3%204-5%203h-1v2l-1-2h-1c-3%202-2%203%200%203l-1%201c-3%202-4%201-4-2%201-3%201-3-2-3-2%200-2%200-1-1l2-1%201-2-2-2-1%201-1%201-2%201v2l2%205%203%204v3c1%201%200%201-1%201l-2-1-1-1v3l-2%202-1%203h12c7%200%2012%200%2011-1-2-1-4-3-4-5s0-2%201-1l2%201-1-2-1-2v-1l-1%201h-2c-1-2%200-2%203-6%203-3%204-4%205-3l1%202v-2h1l2-1-1-1-1-2-1-2-1%202m-78%201l1%201v3l-2%201-1%202v2l1%202-3-1c-2-1-2-1-2%201v2l-1%201%202%201c2-1%203%200%201%202v1l-2%203v1c2%200%204-1%204-3s0-2%201-1h8c1%200%204-2%204-4l-2-3c-2-3-3-4%200-4h1c0-2-4-5-6-5l-2-1c0-2-2-3-2-1m20%203v1c1%200%202%201%201%202l1%202c2-2%203%200%201%205l-4%204-1%201c0%204%200%204%206%204%204%200%206-1%206-2l3-1c2%200%202%200%201%201a1750%201750%200%20017%200l-4-2c-2%200-2%200-1-1%202%200%201-2-1-4s-2-2-1-3v-1h-1l-1-3c-1-1-1-1%201-1s2%200%201-1l-1-1-1-1-1%202h-1c-1-1-2%200-3%202l-2%201-1-3-2-2c0-1-2-1-2%201M24%20322c0%206%200%208%202%208l1-5v-5l2%203c2%205%203%205%205%200l2-4v5c0%205%200%206%202%206l1-8c0-7%200-8-2-8l-4%205-1%205-2-4-2-5-2-1c-2%200-2%201-2%208m34-7c-2%201-1%2015%201%2015l1-3c0-3%200-3%202-3%205%200%208-5%204-8-2-2-7-3-8-1m-37%2047l-2%201c-2%200-4%204-4%205l2-1c2-2%202-2%205-1l4%202-2-2c-3-2-2-3%203-3%203%200%204%200%203%201v1l1%201c0%201%201%202%203%201%203%200%203%200%202%202l-5%201h-6l-2%201%201%201-2%201c-2%200-4%201-4%203h1l2-1c2%200%202%200%201%201-2%200-1%202%201%202v-1h6c8%200%208%200%205%203h-5c-2-2-5-2-5%200l1%201c1-1%204%201%203%203%200%202%206-2%208-4%202-3%203-2%204%202l1%202c0-2%202-3%202%200l-2%202c-3%201-5%204-3%204l1-1h1l2-2h3l2%201-1-2c-1%200-1-1%201-2%201-1%201-1-1-1-1%201-2%201-2-1l-2-2h-1l2-2c2%200%206%203%205%204l3%201c2%200%203%200%202-1l-2-2v-2c-1%201-3%200-4-1l-3-1%202-2%201-1c-3%200-2-6%201-7%203%200%2010-3%208-3l-3-1c-2-2-30-2-32%200m45-1c-2%201-3%202-2%205l-1%202-6%202-3%201-2%201h4l3-1-1%205%201%202h1l2-3v-1c-2%201-2%200-2-2s4-3%205-1c0%201%201%202%202%201v-1c-2-1-2-3%200-3v-1c-2%200-3-1%200-3%201-1%201-1%201%201%200%203%206%202%2012%200%203-2%204-2%205-1h6l-1-3c0-1-7%200-11%202l-6%202c-4%200-4%200-4-2%201-2-1-3-3-2m54%200v1c3%200%202%202%200%204l-2%201h2c2-1%202%200%202%204l-1%204v5c0%203%200%203-2%202v1c0%203%200%203-2%203l-5%201c-1%200-2%200-2-2h-1c-1%202-1%202-11%202-12%200-9%201%204%201l12%201h1l3-1c3-1%202%202-2%203l-1%201c2%200%203%200%204%202l1%203v-3c0-1%200-2%202-1l1-1%202-2c2%200%202%200%201-1v-1c6-1%2012%200%2011%201h2c1%200%201%201-1%202l-2%203%204-2%202-3%203%202%202%201-1-2-1-1c0-2%201-2%205-1h6l-5-1c-5-2-5-2-5-6%200-2%200-3-1-2l-1%201v-1l-1-1c-2%200-2-1-1-3v-5l2-4c4-4%202-5-9-6l-9%201%201%201h3l-3%201c-2%200-2%200-1%201v2c-3%202-3%203-3-1l1-3h1c0-2-4-3-5-1m17%205l-2%202v2l2%201-1%203-2%202c1-1%202%200%202%201s-1%202-2%201l-1-1h-4l1-1%201-1c-1-1-2%200-4%202l-2%204v1c-2%202-1%204%201%204l5-1c2%200%206-1%208-3l1-9v-9l-3%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"seo":{"src":"/static/2b5897d3dd0bc9b258bd2274fa0ade58/6050d/mcp-cover.png"}}}]}},"staticQueryHashes":["1609575157","2068910035","2361467917","2361467917","3838421970","500183989","5650841"]}