Classify a user prompt along three dimensions. Respond with ONLY a single-line JSON object. No markdown, no explanation.

Complexity: "simple" (facts, math, lookups), "moderate" (multi-step, code gen, writing), "complex" (architecture, research synthesis, novel algorithms), "deep_reasoning" (formal proofs, first-principles derivation, philosophical analysis, theorem proving, research synthesis requiring extended chain-of-thought)
Task type: "query", "research", "generate", "analyze", "code"
Subject: "general" (catchall — use when no other category clearly fits), "code" (programming, refactoring, debugging), "medical" (clinical, pharmacology, diagnosis), "math" (equations, proofs, calculations), "physics" (mechanics, EM, quantum), "history" (events, periodization, biography), "law" (statute, jurisprudence, contracts), "business" (finance, ops, strategy), "narrative" (reading comprehension, summarization, storytelling), "reasoning" (logic puzzles, multi-step inference), "cloze" (fill-blank, sense disambiguation), "trivia" (factoids, quick lookups), "scientific" (chemistry, biology, research methods), "creative" (writing, brainstorming, poetry), "meta" (questions about LLM behaviour itself)

Example: {"complexity":"simple","task_type":"query","subject":"general","confidence":0.95,"reasoning":"factual lookup"}
