[{"data":1,"prerenderedAt":8546},["ShallowReactive",2],{"nav:algorithms":3,"lesson:\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":374,"course-wordcounts":8414,"ref-card-index":8470},[4,28,50,71,120,152,205,230,286,306,331,352],{"module":5,"moduleNumber":6,"slug":7,"lessons":8},"Foundations",1,"foundations",[9,15,21],{"title":10,"path":11,"lessonNumber":6,"topics":12,"summary":14},"What Is an Algorithm?","\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm",[5,13],"Correctness & Induction","An algorithm is a finite, mechanical recipe that transforms inputs into outputs. We pin down what counts as an algorithm, how we write one down, and the three things we always ask of it: is it correct, is it fast, and can we prove it.\n",{"title":16,"path":17,"lessonNumber":18,"topics":19,"summary":20},"Asymptotic Analysis","\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis",2,[16],"We measure an algorithm's running time as a function of its input size, then strip away machine-specific constants and lower-order terms to compare algorithms cleanly. This lesson defines the RAM model and the $O$, $\\Omega$, $\\Theta$, $o$, and $\\omega$ notations, and shows how to read the cost of loops off the page.\n",{"title":22,"path":23,"lessonNumber":24,"topics":25,"summary":27},"Recurrences and the Master Theorem","\u002Falgorithms\u002Ffoundations\u002Frecurrences",3,[26],"Recurrences","Recursive and divide-and-conquer algorithms describe their own running time with a recurrence: $T(n)$ in terms of $T$ on smaller inputs. We solve recurrences three ways — drawing the recursion tree, guessing-and-verifying by induction, and applying the Master Theorem — using merge sort as the running example.\n",{"module":29,"moduleNumber":18,"slug":30,"lessons":31},"Divide & Conquer","divide-and-conquer",[32,38,44],{"title":33,"path":34,"lessonNumber":6,"topics":35,"summary":37},"Divide and Conquer & Mergesort","\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort",[29,36],"Comparison Sorting","Divide and conquer breaks a problem into smaller copies of itself, solves them recursively, and stitches the answers together. We meet the paradigm through mergesort — its merge step, its loop-invariant proof, and the recursion tree that pins its cost at $\\Theta(n\\log n)$ — then glimpse Karatsuba multiplication as a second example of the same idea.",{"title":39,"path":40,"lessonNumber":18,"topics":41,"summary":43},"Quicksort","\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort",[36,42],"Probabilistic Analysis","Quicksort sorts in place by partitioning around a pivot and recursing on each side. We give Lomuto and Hoare partitioning with a correctness invariant, see why a bad pivot costs $\\Theta(n^2)$ while a balanced one gives $\\Theta(n\\log n)$, and prove that randomizing the pivot makes the expected cost $\\Theta(n\\log n)$ on every input.",{"title":45,"path":46,"lessonNumber":24,"topics":47,"summary":49},"Linear-Time Selection","\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection",[48,29],"Order Statistics","Finding the $k$-th smallest element looks like it should require sorting, but it does not. Quickselect adapts quicksort's partition to recurse on just one side, achieving expected $O(n)$. The median-of-medians algorithm guarantees a good pivot with the groups-of-five trick, pushing the worst case down to a provable $O(n)$.",{"module":51,"moduleNumber":24,"slug":52,"lessons":53},"Sorting & Order Statistics","sorting",[54,60,65],{"title":55,"path":56,"lessonNumber":6,"topics":57,"summary":59},"Heaps and Heapsort","\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort",[58,36],"Heaps","A binary heap is a tree we store flat in an array, with index arithmetic standing in for pointers. We build the max-heap property bottom-up in $O(n)$ time, sort in place in $\\Theta(n\\log n)$ by repeatedly extracting the maximum, and reuse the same structure to implement a priority queue.",{"title":61,"path":62,"lessonNumber":18,"topics":63,"summary":64},"Lower Bounds for Comparison Sorting","\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds",[36],"Every sort we have seen runs in $\\Omega(n\\log n)$, and that is no accident. Modeling a sort as a decision tree of comparisons, we show any such tree must have $n!$ leaves, forcing height $\\ge \\log_2(n!) = \\Omega(n\\log n)$ — a worst-case bound no comparison sort can ever beat.",{"title":66,"path":67,"lessonNumber":24,"topics":68,"summary":70},"Sorting in Linear Time","\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting",[69],"Linear-Time Sorting","The $\\Omega(n\\log n)$ barrier only binds algorithms that compare. By instead using keys as array indices we slip past it: counting sort runs in $\\Theta(n+k)$ and is stable, radix sort layers it digit by digit, and bucket sort averages $\\Theta(n)$ on uniform data. We see exactly when each applies.",{"module":72,"moduleNumber":73,"slug":74,"lessons":75},"Data Structures",4,"data-structures",[76,82,88,93,99,105,113],{"title":77,"path":78,"lessonNumber":6,"topics":79,"summary":81},"Elementary Data Structures","\u002Falgorithms\u002Fdata-structures\u002Felementary-structures",[80],"Linear Structures","Every container is built one of two ways: **contiguous** in an array, or **linked** through pointers. We trade cache-friendly random access against $O(1)$ splicing, derive the **amortized $O(1)$** append of a doubling dynamic array, and assemble the two ordered access disciplines — the LIFO **stack** and the FIFO **queue** (with its generalization, the **deque**) — on top of both.",{"title":83,"path":84,"lessonNumber":18,"topics":85,"summary":87},"Hash Tables","\u002Falgorithms\u002Fdata-structures\u002Fhash-tables",[86],"Hashing","A hash table implements the dictionary — insert, search, delete — in expected $O(1)$ time by scattering keys across an array with a hash function. We build up from direct addressing, handle collisions by chaining and by open addressing, analyze the load factor $\\alpha$, and see how universal hashing earns its expected-time guarantee against every input.",{"title":89,"path":90,"lessonNumber":24,"topics":91,"summary":92},"Binary Search Trees","\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees",[89],"A binary search tree keeps keys ordered so that every operation follows a single root-to-leaf path. We state the BST property, give search and insert, find minimum, maximum, and successor, see that an inorder walk emits the keys in sorted order, and confront the catch — every operation costs $O(h)$, and a carelessly built tree degrades to height $h = \\Theta(n)$, motivating balance.",{"title":94,"path":95,"lessonNumber":73,"topics":96,"summary":98},"AVL Trees","\u002Falgorithms\u002Fdata-structures\u002Favl-trees",[97],"Balanced Trees","An AVL tree is the first balanced BST: at every node the two subtrees' heights differ by at most $1$. A Fibonacci-style minimal-node argument forces height $h \\le 1.44\\log_2 n = O(\\log n)$, so search, insert, and delete are all $O(\\log n)$. Insertion rebalances with at most one of four rotation cases (LL, RR, LR, RL); deletion may rotate all the way to the root.",{"title":100,"path":101,"lessonNumber":102,"topics":103,"summary":104},"Balanced Search Trees","\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees",5,[97],"An ordinary BST can degrade to height $\\Theta(n)$; balanced search trees guarantee $h = O(\\log n)$ by maintaining invariants and repairing them after every update. We meet rotations, the local restructuring primitive, then red-black trees, whose color invariants force logarithmic height, and finally B-trees, which trade tall-and-thin for short-and-wide to win on disk.",{"title":106,"path":107,"lessonNumber":108,"topics":109,"summary":112},"Disjoint Sets (Union-Find)","\u002Falgorithms\u002Fdata-structures\u002Funion-find",6,[110,111],"Disjoint Sets","Amortized Analysis","The disjoint-set data structure tracks a partition of elements into groups, answering \"are these two in the same group?\" and merging groups on demand. A forest of parent pointers, sped up by union by rank and path compression, drives every operation to near-constant $O(\\alpha(n))$ amortized time — the engine behind connectivity queries and Kruskal's minimum spanning tree.",{"title":114,"path":115,"lessonNumber":116,"topics":117,"summary":119},"Fenwick & Segment Trees","\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees",7,[118],"Range Queries","A prefix-sum array answers a range sum in $O(1)$ but pays $O(n)$ per update; a plain array updates in $O(1)$ but pays $O(n)$ per range sum. Fenwick and segment trees give us _both_ in $O(\\log n)$. The Fenwick (binary indexed) tree is a tiny array keyed by the low bit; the segment tree is a general balanced tree over canonical ranges that handles any associative aggregate and, with lazy propagation, range updates too.",{"module":121,"moduleNumber":102,"slug":122,"lessons":123},"Sequences & Strings","sequences",[124,130,135,141,147],{"title":125,"path":126,"lessonNumber":6,"topics":127,"summary":129},"Two Pointers, Sliding Windows & Prefix Sums","\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows",[128],"Array Techniques","A family of array idioms that collapse an obvious $O(n^2)$ scan into a single $O(n)$ pass by maintaining an invariant as indices move. We meet two pointers (converging on a sorted array, and a fast\u002Fslow pair for in-place rewriting), the sliding window (fixed and variable size, amortized $O(n)$), and prefix sums, which answer any range-sum in $O(1)$ and count subarrays summing to $k$.",{"title":131,"path":132,"lessonNumber":18,"topics":133,"summary":134},"Monotonic Stacks & Queues","\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks",[128],"A **monotonic stack** keeps its contents sorted by popping every element that would break the order before each push — turning a family of \"previous\u002Fnext greater (or smaller) element\" questions into a single $O(n)$ scan. We derive the next-greater-element routine and its amortized analysis, fuse two such scans to measure the **largest rectangle in a histogram** in linear time, and extend the idea to a **monotonic deque** that streams the **sliding-window maximum** in $O(n)$.",{"title":136,"path":137,"lessonNumber":24,"topics":138,"summary":140},"Binary Search on the Answer","\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer",[139],"Searching","Binary search is not really about arrays — it is about locating the boundary of a **monotone predicate** $p(x)$ in $O(\\log(\\text{range}))$ probes. We first pin down the half-open `while (lo \u003C hi)` template for $\\textsc{lower\\_bound}$ and $\\textsc{upper\\_bound}$, then generalize to \"binary search on the answer\": whenever feasibility is monotone in a numeric parameter, we binary search the parameter itself, calling a feasibility check at each step.",{"title":142,"path":143,"lessonNumber":73,"topics":144,"summary":146},"String Matching: Rabin–Karp, KMP & Z","\u002Falgorithms\u002Fsequences\u002Fstring-matching",[145],"Strings","Given a text $T$ of length $n$ and a pattern $P$ of length $m$, find every occurrence of $P$ in $T$. The naive scan costs $O(nm)$; we beat it three ways. Rabin–Karp uses a **rolling hash** to test alignments in $O(1)$ amortised each, with expected $O(n+m)$. KMP precomputes a **failure function** so the scan never re-reads a text character, for worst-case $O(n+m)$. The **Z-function** gives the same bound from a different angle and converts freely to KMP's table.",{"title":148,"path":149,"lessonNumber":102,"topics":150,"summary":151},"Tries & Prefix Trees","\u002Falgorithms\u002Fsequences\u002Ftries",[145],"A **trie** stores a set of strings in a tree keyed by _characters_, so that insert, search, and prefix-test all run in $O(L)$ time — the length of the key, _independent of how many keys are stored_. Shared prefixes are stored once, which makes tries the natural structure for autocomplete, wildcard dictionaries, board word-search, and — over the alphabet $\\{0,1\\}$ — the maximum-XOR-pair problem.",{"module":153,"moduleNumber":108,"slug":154,"lessons":155},"Graphs","graphs",[156,163,168,173,178,183,188,193,199],{"title":157,"path":158,"lessonNumber":6,"topics":159,"summary":162},"Graph Representations and Traversal","\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal",[160,161],"Graph Representations","Graph Traversal","A graph captures _relationships_ — who connects to whom. We fix the vocabulary, weigh the two standard representations (adjacency list versus matrix), then meet the two explorations you'll use constantly: breadth-first search, which finds shortest paths by number of edges, and depth-first search, whose discovery and finish times reveal a graph's hidden structure. Both run in $O(V + E)$.",{"title":164,"path":165,"lessonNumber":18,"topics":166,"summary":167},"Topological Sort and Strong Connectivity","\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc",[161],"Directed acyclic graphs model dependencies: tasks that must precede other tasks. A _topological order_ lays such a graph out in a line so every edge points forward, and depth-first finish times hand it to us almost for free. We then ask the harder question for graphs _with_ cycles: which vertices can reach each other? The answer is the strongly connected components, found by a two-pass DFS.",{"title":169,"path":170,"lessonNumber":24,"topics":171,"summary":172},"Minimum Spanning Trees","\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees",[169],"Given a weighted network, how do we connect everything as cheaply as possible? The answer is a minimum spanning tree. One lemma, the cut property, justifies _every_ correct MST algorithm, and from it two famous greedy methods fall out: Kruskal's, which grows a forest edge by edge with a union-find structure, and Prim's, which grows a single tree using a priority queue.",{"title":174,"path":175,"lessonNumber":73,"topics":176,"summary":177},"Shortest Paths","\u002Falgorithms\u002Fgraphs\u002Fshortest-paths",[174],"Finding the cheapest route through a weighted network is one of the most-used algorithms in computing. A single operation — _relaxation_ — underlies them all. Dijkstra's algorithm solves the non-negative case greedily; Bellman-Ford handles negative edges and detects negative cycles; and Floyd-Warshall finds the shortest path between _every_ pair of vertices.",{"title":179,"path":180,"lessonNumber":102,"topics":181,"summary":182},"Network Flow","\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow",[179],"How much can flow through a network from source to sink? Max-flow is a surprisingly general model — once you see a problem as flow, a whole toolbox opens up. We build flow networks, find maximum flows by repeatedly pushing along augmenting paths in the residual graph, prove the max-flow min-cut theorem, and watch bipartite matching fall out as a special case.",{"title":184,"path":185,"lessonNumber":108,"topics":186,"summary":187},"Bridges & Articulation Points","\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points",[153],"A **bridge** is an edge whose removal disconnects the graph; an **articulation point** is a vertex whose removal does. Both are single points of failure in a network. A single depth-first search computes discovery times and **low-links**, and two local criteria — $low[v] > disc[u]$ for bridges, $low[v] \\ge disc[u]$ for cut vertices — find them all in $O(V+E)$.",{"title":189,"path":190,"lessonNumber":116,"topics":191,"summary":192},"Lowest Common Ancestor & Binary Lifting","\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor",[153],"Given a rooted tree, the lowest common ancestor of $u$ and $v$ is the deepest node that is an ancestor of both. A naive walk answers one query in $O(h)$; **binary lifting** precomputes the $2^k$-th ancestor of every node in $O(n\\log n)$, then answers $k$-th-ancestor and LCA queries in $O(\\log n)$ each. We derive both jumps, apply them to tree distance, and compare against the Euler-tour + RMQ and Tarjan offline alternatives.",{"title":194,"path":195,"lessonNumber":196,"topics":197,"summary":198},"2-SAT via Implication Graphs","\u002Falgorithms\u002Fgraphs\u002Ftwo-sat",8,[153],"A boolean formula whose every clause has exactly two literals can be solved in _linear_ time — even though its three-literal cousin is NP-complete. The trick is to read each clause as a pair of implications, build a directed graph on the $2n$ literals, and ask a question we already know how to answer: which literals share a strongly connected component? The formula is satisfiable iff no variable lands in the same SCC as its own negation, and the SCCs' topological order hands us a satisfying assignment for free.",{"title":200,"path":201,"lessonNumber":202,"topics":203,"summary":204},"Eulerian Tours","\u002Falgorithms\u002Fgraphs\u002Feulerian-tours",9,[153],"An **Eulerian tour** uses every _edge_ of a graph exactly once. We give the exact parity and balance conditions under which one exists (even degree for undirected graphs, in-degree equal to out-degree for directed) and Hierholzer's $O(E)$ algorithm that constructs one by splicing closed sub-tours. We contrast this sharply with the **Hamiltonian** problem (visit every _vertex_ once), which is NP-complete: visiting edges is easy, visiting vertices is hard.",{"module":206,"moduleNumber":116,"slug":207,"lessons":208},"Greedy Algorithms","greedy",[209,214,220,225],{"title":210,"path":211,"lessonNumber":6,"topics":212,"summary":213},"The Greedy Method","\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method",[206],"A greedy algorithm builds a solution one locally-best choice at a time and never looks back. We pin down the two properties that make this work — the greedy-choice property and optimal substructure — prove the canonical activity-selection algorithm correct with an exchange argument, watch greedy fail spectacularly on the 0\u002F1 knapsack, and glimpse matroids as the theory that says exactly when greed is good.",{"title":215,"path":216,"lessonNumber":18,"topics":217,"summary":219},"Scheduling & Interval Partitioning","\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals",[218],"Greedy","Three classic scheduling problems all yield to greedy algorithms — and all three turn on a single design decision: which key to sort by. Interval scheduling sorts by **finish** time to pack the most compatible jobs; interval partitioning sorts by **start** time and proves the rooms needed equal the maximum overlap **depth**; minimizing maximum lateness sorts by **deadline** and is justified by an adjacent-swap exchange argument.",{"title":221,"path":222,"lessonNumber":24,"topics":223,"summary":224},"Huffman Codes","\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes",[206],"Huffman coding is the greedy method's most beautiful application: it builds a provably optimal prefix-free binary code by repeatedly merging the two least frequent symbols. We develop prefix-free codes as binary trees, give the algorithm with a priority queue, build a Huffman tree from example frequencies, prove optimality with the same greedy-choice-plus-substructure argument, and pin the running time at $O(n\\log n)$.",{"title":226,"path":227,"lessonNumber":73,"topics":228,"summary":229},"Matroids & Exchange Arguments","\u002Falgorithms\u002Fgreedy\u002Fmatroids",[218],"The capstone of the greedy module: _why_ and _when_ a greedy algorithm is provably optimal. We recap the two correctness templates — **greedy-stays-ahead** and the **exchange argument** — then meet the **matroid** $M=(S,\\mathcal{I})$, an abstraction whose **exchange property** is exactly the structure greedy needs. The matroid–greedy theorem says sorting by weight and taking what stays independent yields a maximum-weight basis _if and only if_ the structure is a matroid. Kruskal's MST is the canonical instance; 0\u002F1 knapsack and TSP are the canonical failures.",{"module":231,"moduleNumber":196,"slug":232,"lessons":233},"Dynamic Programming","dynamic-programming",[234,239,245,250,255,260,265,270,275,280],{"title":235,"path":236,"lessonNumber":6,"topics":237,"summary":238},"Principles of Dynamic Programming","\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples",[231,26],"Dynamic programming is recursion with memory: when a recursive solution re-solves the same subproblems again and again, we solve each one once and store the answer. We pin down the two structural conditions that make this work — overlapping subproblems and optimal substructure — contrast top-down memoization with bottom-up tabulation, and distil the whole method into a five-step recipe.",{"title":240,"path":241,"lessonNumber":18,"topics":242,"summary":244},"Sequence Alignment & LCS","\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp",[231,243],"String Structures","Two strings can be compared by asking how much of one survives inside the other. The longest common subsequence (LCS) and edit distance are the two classic answers, and they are the _same_ dynamic program wearing different costs. We derive the LCS recurrence by examining the last characters, fill a worked DP table, reconstruct the subsequence, and then show edit distance as the identical $\\Theta(mn)$ pattern.",{"title":246,"path":247,"lessonNumber":24,"topics":248,"summary":249},"Longest Increasing Subsequence","\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence",[231],"Given a sequence of numbers, how long is its longest strictly increasing subsequence? A first dynamic program indexes subproblems by the element each subsequence _ends at_, giving an $O(n^2)$ solution with parent-pointer reconstruction. A sharper idea, the patience-sorting _tails_ array searched by binary search, drops the time to $O(n\\log n)$. We then fold in the variants: non-decreasing, counting, Russian-doll envelopes, and bitonic.",{"title":251,"path":252,"lessonNumber":73,"topics":253,"summary":254},"Knapsack & Subset Problems","\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack",[231],"We start from $\\textsc{Subset-sum}$ — does some sublist hit a target $t$? — and its include\u002Fexclude recurrence over a boolean table $A(i, u)$, then bolt on values to get 0\u002F1 knapsack as the same machine with $\\lor$ promoted to $\\max$. We fill both tables, recover the chosen items, and confront the surprise that the $\\Theta(nt)$ running time is only _pseudo-polynomial_ — exponential in the bit length $b$, and unimprovable unless $\\mathrm{P}=\\mathrm{NP}$ since subset-sum is $\\textsc{NP-complete}$. The fractional variant reveals the sharp line between greedy and dynamic programming.",{"title":256,"path":257,"lessonNumber":102,"topics":258,"summary":259},"Coin Change & Unbounded Knapsack","\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded",[231],"The previous lesson let each item be taken at most once. Drop that cap — items may be reused _any number of times_ — and the 0\u002F1 knapsack collapses from a two-dimensional table to a one-dimensional one, because there is no longer a prefix of \"already-used\" items to track. We meet **unbounded knapsack**, then its most famous instance, **coin change**: the minimum-coins recurrence $C[a] = 1 + \\min_c C[a-c]$, and the counting variant where the _order of the loops_ decides whether you count unordered combinations or ordered sequences — the classic bug. Greed fails in general but works for canonical coin systems.",{"title":261,"path":262,"lessonNumber":108,"topics":263,"summary":264},"Interval DP","\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp",[231],"Many problems ask for the best way to combine a contiguous range of items, and the answer is a dynamic program over subintervals $[i,j]$ that chooses a split point $k$. We derive the pattern from matrix-chain multiplication — parenthesising a product to minimize scalar multiplications in $O(n^3)$ — distil it into a reusable template filled by increasing interval length, and then meet its sharpest variant: the \"last operation\" trick behind Burst Balloons and cutting a stick, where fixing the _last_ move (not the first) makes the two sides independent.",{"title":266,"path":267,"lessonNumber":116,"topics":268,"summary":269},"Dynamic Programming on Trees","\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp",[231],"When the subproblems of a dynamic program are _rooted subtrees_, a single post-order DFS solves the whole thing in $O(n)$: each node combines the already-computed answers of its children. We meet the archetype — maximum-weight independent set on a tree — then the \"path through a node\" pattern behind tree diameter and maximum path sum, and finally **rerooting**, which computes a per-node answer for _every_ node as root in $O(n)$ with two passes.",{"title":271,"path":272,"lessonNumber":196,"topics":273,"summary":274},"Bitmask DP","\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp",[231],"When a subproblem depends not on an index or a prefix but on _which subset_ of a small ground set has been used, we can encode that subset as the bits of an integer and index a DP table by it. With $n \\le \\sim 20$ the $2^n$ subsets fit in a table, turning $\\Theta(n!)$ brute force into $O(2^n \\cdot \\text{poly}(n))$. We meet the bit tricks, the Held–Karp TSP archetype, assignment by mask, subset-sum partitioning, and submask enumeration with its $3^n$ bound.",{"title":276,"path":277,"lessonNumber":202,"topics":278,"summary":279},"DP Optimizations","\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations",[231],"A correct DP recurrence is only half the battle; its naive evaluation is often a factor of $n$ slower than necessary. This capstone surveys five techniques, monotonic-queue, the convex hull trick, divide-and-conquer optimization, Knuth's optimization, and SOS DP, that each exploit _structure in the transition_ (a sliding window, linear costs, monotone optimal splits, the quadrangle inequality, or subset lattices) to shave an $O(n)$, $O(\\log n)$, or worse factor off the running time.",{"title":281,"path":282,"lessonNumber":283,"topics":284,"summary":285},"Dynamic Programming on Graphs","\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs",10,[231],"Many graph algorithms are dynamic programs in disguise: the subproblem is the _best value reachable under a restricted resource_ — intermediate vertices allowed, edges allowed, or a topological prefix — and edge _relaxation_ is the DP transition. We frame Floyd–Warshall as the archetype ($O(V^3)$ all-pairs shortest paths), Bellman–Ford as a DP over path length (the at-most-$K$-stops variant), DAG-DP in topological order ($O(V+E)$), and Warshall's transitive closure as the boolean analog.",{"module":287,"moduleNumber":202,"slug":288,"lessons":289},"Backtracking & Search","backtracking",[290,296,301],{"title":291,"path":292,"lessonNumber":6,"topics":293,"summary":295},"Backtracking: Subsets, Permutations & Combinations","\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals",[294],"Backtracking","Backtracking builds a solution one choice at a time and abandons a partial solution the moment it cannot be completed, exploring a state-space tree by depth-first search. We meet the universal choose\u002Fexplore\u002Fun-choose template, derive the canonical enumerations — subsets ($2^n$), permutations ($n!$), and combinations ($\\binom{n}{k}$) — handle duplicate elements by skipping equal siblings, and see how pruning turns an exponential search into a tractable one.",{"title":297,"path":298,"lessonNumber":18,"topics":299,"summary":300},"Constraint Search: N-Queens & Sudoku","\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search",[294],"Many hard puzzles are **constraint satisfaction problems**: assign each variable a value from its domain so that every constraint holds. Backtracking solves them by assigning variables one at a time and rejecting a partial assignment the instant a constraint breaks. We make the rejection cheap — $O(1)$ conflict checks for N-Queens via column and diagonal sets — and prune harder with **forward checking**, **MRV** ordering, and **constraint propagation**, which is what lets an exponential search actually finish.",{"title":302,"path":303,"lessonNumber":24,"topics":304,"summary":305},"Branch & Bound and Meet in the Middle","\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound",[294],"Plain backtracking prunes a search tree by _feasibility_; for _optimization_ problems we can prune far more aggressively by _value_. **Branch and bound** keeps the best complete solution found so far and discards any partial solution whose optimistic bound cannot beat it. **Meet in the middle** splits the instance in two, enumerates each half, and recombines by binary search — turning $2^n$ into $O(2^{n\u002F2}\\,n)$ and pushing exact search out to $n \\approx 40$.",{"module":307,"moduleNumber":283,"slug":308,"lessons":309},"Mathematical Algorithms","mathematical-algorithms",[310,316,321,326],{"title":311,"path":312,"lessonNumber":6,"topics":313,"summary":315},"Number Theory: GCD & Modular Arithmetic","\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics",[314],"Number Theory","This lesson opens the mathematical-algorithms module with the bedrock of computational number theory. We prove Euclid's recurrence $\\gcd(a,b)=\\gcd(b,\\,a\\bmod b)$ and its $O(\\log\\min(a,b))$ running time, extend it to recover Bézout coefficients $x,y$ with $ax+by=\\gcd(a,b)$, and build modular arithmetic on residue classes — including when a modular inverse $a^{-1}\\bmod m$ exists and how to compute it.",{"title":317,"path":318,"lessonNumber":18,"topics":319,"summary":320},"Modular Exponentiation & Primality","\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality",[314],"Computing $a^n \\bmod m$ naively costs $n$ multiplications; **repeated squaring** does it in $O(\\log n)$ by reading the bits of the exponent. We use this routine to state **Fermat's little theorem** (and the modular inverse it gives), then to test primality — trial division, the probabilistic **Fermat** and **Miller–Rabin** tests, and the deterministic witness set that settles primality for every 64-bit number.",{"title":322,"path":323,"lessonNumber":24,"topics":324,"summary":325},"Sieves & Factorization","\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization",[314],"The previous lesson tested one number for primality; here we ask for _all_ primes up to $n$ at once. The **sieve of Eratosthenes** cross-cuts composites in $O(n\\log\\log n)$, and a **linear sieve** does it in $O(n)$ while recording each number's **smallest prime factor**, which then factors any $x \\le n$ in $O(\\log x)$. From a factorization $x = \\prod p_i^{e_i}$ the multiplicative functions $\\tau$, $\\sigma$, and Euler's totient $\\varphi$ fall out immediately.",{"title":327,"path":328,"lessonNumber":73,"topics":329,"summary":330},"Combinatorics & Counting","\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics",[314],"Counting is the arithmetic of finite sets. We build up from permutations $n!$ and combinations $\\binom{n}{k}$, prove Pascal's rule by a bijection, and count multisets with stars and bars. The practical core is computing $\\binom{n}{k}\\bmod p$ in $O(1)$ from precomputed factorials and inverse factorials. We close with inclusion–exclusion and the Chinese Remainder Theorem, both of which lean on the modular inverse from the previous lesson.",{"module":332,"moduleNumber":333,"slug":334,"lessons":335},"Computational Geometry",11,"computational-geometry",[336,342,347],{"title":337,"path":338,"lessonNumber":6,"topics":339,"summary":341},"Geometric Primitives & Orientation","\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives",[340],"Geometry","Computational geometry is built on a single reliable primitive — the **orientation test**, a sign of a cross product that tells whether three points turn left, right, or lie collinear. From points-as-vectors and the dot and cross products we derive orientation, segment intersection, the shoelace area formula, and point-in-polygon tests, keeping all arithmetic **exact and integer** so that no floating-point rounding can corrupt a sign.",{"title":343,"path":344,"lessonNumber":18,"topics":345,"summary":346},"Convex Hull","\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull",[340],"The convex hull is the smallest convex polygon enclosing a point set — the rubber band snapped around the nails. We build it with Andrew's monotone chain, sorting by $(x,y)$ and sweeping a lower and upper hull while popping any non-left turn via the orientation primitive, in $O(n\\log n)$. A reduction from sorting shows that bound is optimal, and the hull unlocks diameter, smallest enclosing rectangle, and more through rotating calipers.",{"title":348,"path":349,"lessonNumber":24,"topics":350,"summary":351},"Sweep-Line Algorithms","\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line",[340],"The plane-sweep paradigm turns a static $2$-D geometry problem into a dynamic $1$-D ordered-set problem: a vertical line sweeps left to right, stopping at an $x$-sorted **event queue** while a balanced-BST **status structure** tracks the objects it currently crosses, ordered by $y$. We derive Bentley–Ottmann segment intersection in $O((n+k)\\log n)$, recover closest-pair in $O(n\\log n)$, and reduce skyline, rectangle-area, and overlap problems to $\\pm1$ event sweeps.",{"module":353,"moduleNumber":354,"slug":355,"lessons":356},"Intractability",12,"intractability",[357,363,367],{"title":358,"path":359,"lessonNumber":6,"topics":360,"summary":362},"P, NP, and Reductions","\u002Falgorithms\u002Fintractability\u002Fp-np-reductions",[361],"NP-Completeness","Most problems we have met so far have fast algorithms. A vast and important family seemingly does not. This lesson builds the vocabulary for that divide: decision problems, the class $\\mathsf{P}$ of problems we can solve quickly, the class $\\mathsf{NP}$ of problems whose solutions we can _check_ quickly, and polynomial-time reductions, the tool that lets us compare the difficulty of two problems without solving either.",{"title":361,"path":364,"lessonNumber":18,"topics":365,"summary":366},"\u002Falgorithms\u002Fintractability\u002Fnp-completeness",[361],"Some problems in $\\mathsf{NP}$ are universally hardest: every other problem in $\\mathsf{NP}$ reduces to them. This lesson defines $\\mathsf{NP}$-hard and $\\mathsf{NP}$-complete, states the Cook–Levin theorem that anchors the whole edifice on **SAT**, walks the web of reductions that grows from it, and gives the four-step recipe for proving a brand-new problem $\\mathsf{NP}$-complete.",{"title":368,"path":369,"lessonNumber":24,"topics":370,"summary":373},"Coping with NP-Hardness","\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness",[371,372],"Approximation","Heuristics","Proving a problem $\\mathsf{NP}$-hard is the beginning, not the end. The world still needs answers. This lesson surveys the four honest responses to hardness: approximation algorithms with a provable ratio (worked through a 2-approximation for vertex cover), heuristics and local search, exact exponential methods like branch and bound, and exploiting special structure in the instances you actually face.",{"id":375,"title":358,"blurb":376,"body":377,"description":8380,"extension":8381,"meta":8382,"module":353,"navigation":8384,"path":359,"practice":8385,"rawbody":8396,"readingTime":8397,"seo":8402,"sources":8403,"status":8410,"stem":8411,"summary":362,"topics":8412,"__hash__":8413},"course\u002F01.algorithms\u002F12.intractability\u002F01.p-np-reductions.md","",{"type":378,"value":379,"toc":8369},"minimark",[380,451,501,506,521,658,723,967,992,996,1002,1137,1286,1290,1326,1374,1599,1655,1658,1868,2226,2230,2338,2595,2773,3026,3137,3457,3502,3806,3863,4091,4095,4491,4512,4563,4948,5181,5280,5397,5400,5800,5972,5976,6081,6657,7034,7038,7121,7209,7401,7461,7559,7563,8117],[381,382,383,384,445,446,450],"p",{},"Until now this course has been a catalog of triumphs: sorting in\n",[385,386,389],"span",{"className":387},[388],"katex",[385,390,394],{"className":391,"ariaHidden":393},[392],"katex-html","true",[385,395,398,403,410,415,419,424,434,437,440],{"className":396},[397],"base",[385,399],{"className":400,"style":402},[401],"strut","height:1em;vertical-align:-0.25em;",[385,404,409],{"className":405,"style":408},[406,407],"mord","mathnormal","margin-right:0.0278em;","O",[385,411,414],{"className":412},[413],"mopen","(",[385,416,418],{"className":417},[406,407],"n",[385,420],{"className":421,"style":423},[422],"mspace","margin-right:0.1667em;",[385,425,428],{"className":426},[427],"mop",[385,429,433],{"className":430,"style":432},[406,431],"mathrm","margin-right:0.0139em;","log",[385,435],{"className":436,"style":423},[422],[385,438,418],{"className":439},[406,407],[385,441,444],{"className":442},[443],"mclose",")",", shortest paths in near-linear time, spanning trees almost for\nfree. It is tempting to believe that every problem yields to a clever enough\nalgorithm. It does not. There is a large, eminently practical family of\nproblems (scheduling, routing, packing, constraint satisfaction) for which,\nafter more than half a century of effort, ",[447,448,449],"em",{},"nobody"," has found an algorithm\nthat is fast on every instance, and for which we have strong reasons to\nsuspect none exists.",[381,452,453,454,457,458,461,462,480,481,500],{},"The theory of ",[455,456,355],"strong",{}," is how we make that suspicion precise. Its\ncentral insight, due to Cook, Levin, and Karp, is that thousands of\nthese stubborn problems are really the ",[447,459,460],{},"same"," problem in disguise. Solve any\none of them quickly and you solve them all; prove any one of them\nhard and you have proved them all hard. This lesson assembles the three ideas\nneeded to state that claim: decision problems, the classes ",[385,463,465],{"className":464},[388],[385,466,468],{"className":467,"ariaHidden":393},[392],[385,469,471,475],{"className":470},[397],[385,472],{"className":473,"style":474},[401],"height:0.6944em;",[385,476,479],{"className":477},[406,478],"mathsf","P"," and\n",[385,482,484],{"className":483},[388],[385,485,487],{"className":486,"ariaHidden":393},[392],[385,488,490,493],{"className":489},[397],[385,491],{"className":492,"style":474},[401],[385,494,496],{"className":495},[406],[385,497,499],{"className":498},[406,478],"NP",", and reductions.",[502,503,505],"h2",{"id":504},"decision-problems","Decision problems",[381,507,508,509,512,513,516,517,520],{},"To classify difficulty cleanly we restrict attention to problems with a\nyes-or-no answer. A ",[455,510,511],{},"decision problem"," asks, of each input, a single\nquestion whose answer is ",[455,514,515],{},"yes"," or ",[455,518,519],{},"no",".",[522,523,525],"callout",{"type":524},"definition",[381,526,527,530,531,572,573,576,577,594,595,597,598,602,603,620,621,520],{},[455,528,529],{},"Definition (Decision problem)."," A decision problem is a function from inputs (encoded as finite strings)\nto ",[385,532,534],{"className":533},[388],[385,535,537],{"className":536,"ariaHidden":393},[392],[385,538,540,543,547,554,559,562,568],{"className":539},[397],[385,541],{"className":542,"style":402},[401],[385,544,546],{"className":545},[413],"{",[385,548,551],{"className":549},[406,550],"text",[385,552,515],{"className":553},[406],[385,555,558],{"className":556},[557],"mpunct",",",[385,560],{"className":561,"style":423},[422],[385,563,565],{"className":564},[406,550],[385,566,519],{"className":567},[406],[385,569,571],{"className":570},[443],"}",". Equivalently, it is the ",[447,574,575],{},"language"," ",[385,578,580],{"className":579},[388],[385,581,583],{"className":582,"ariaHidden":393},[392],[385,584,586,590],{"className":585},[397],[385,587],{"className":588,"style":589},[401],"height:0.6833em;",[385,591,593],{"className":592},[406,407],"L"," of all\ninputs whose answer is ",[455,596,515],{},"; ",[599,600,601],"q",{},"solving"," the problem means deciding, for a\ngiven string ",[385,604,606],{"className":605},[388],[385,607,609],{"className":608,"ariaHidden":393},[392],[385,610,612,616],{"className":611},[397],[385,613],{"className":614,"style":615},[401],"height:0.4306em;",[385,617,619],{"className":618},[406,407],"x",", whether ",[385,622,624],{"className":623},[388],[385,625,627,649],{"className":626,"ariaHidden":393},[392],[385,628,630,634,637,641,646],{"className":629},[397],[385,631],{"className":632,"style":633},[401],"height:0.5782em;vertical-align:-0.0391em;",[385,635,619],{"className":636},[406,407],[385,638],{"className":639,"style":640},[422],"margin-right:0.2778em;",[385,642,645],{"className":643},[644],"mrel","∈",[385,647],{"className":648,"style":640},[422],[385,650,652,655],{"className":651},[397],[385,653],{"className":654,"style":589},[401],[385,656,593],{"className":657},[406,407],[381,659,660,661,664,665,668,669,690,691,706,707,722],{},"This seems like a severe restriction; surely we usually want to ",[447,662,663],{},"find"," a\nshortest tour, not merely learn whether a short one exists. But the two are\nrarely far apart. The optimization problem ",[599,666,667],{},"find the cheapest tour"," has a\ndecision twin: ",[599,670,671,672,689],{},"is there a tour of cost at most ",[385,673,675],{"className":674},[388],[385,676,678],{"className":677,"ariaHidden":393},[392],[385,679,681,684],{"className":680},[397],[385,682],{"className":683,"style":474},[401],[385,685,688],{"className":686,"style":687},[406,407],"margin-right:0.0315em;","k","?"," If we can answer the\ndecision question quickly for every ",[385,692,694],{"className":693},[388],[385,695,697],{"className":696,"ariaHidden":393},[392],[385,698,700,703],{"className":699},[397],[385,701],{"className":702,"style":474},[401],[385,704,688],{"className":705,"style":687},[406,407],", a binary search over ",[385,708,710],{"className":709},[388],[385,711,713],{"className":712,"ariaHidden":393},[392],[385,714,716,719],{"className":715},[397],[385,717],{"className":718,"style":474},[401],[385,720,688],{"className":721,"style":687},[406,407]," pins down\nthe optimal cost, and a little more work recovers the tour itself. Decision\nproblems lose almost nothing and gain a clean theory, so they are the objects\nwe classify.",[724,725,729,946],"figure",{"className":726},[727,728],"tikz-figure","tikz-diagram-rendered",[730,731,736],"svg",{"xmlns":732,"width":733,"height":734,"viewBox":735},"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg","415.082","104.025","-75 -75 311.311 78.019",[737,738,741,752,761,768,774,779,786,791,797,805,811,833,850,863,908,917,925],"g",{"stroke":739,"style":740},"currentColor","stroke-miterlimit:10;stroke-width:.4",[737,742,744,749],{"style":743},"stroke-width:.8",[745,746],"path",{"fill":747,"d":748},"none","M-58.673-36.989h280.402",[745,750],{"d":751},"m224.715-36.989-4.169-1.576 1.383 1.576-1.383 1.577Z",[737,753,755],{"transform":754},"translate(-3.597 14.05)",[745,756],{"d":757,"fill":739,"stroke":739,"className":758,"style":760},"M-56.304-36.989L-58.365-36.989L-58.365-37.305Q-58.058-37.305-57.867-37.358Q-57.675-37.411-57.675-37.600L-57.675-42.315Q-57.675-42.557-57.746-42.665Q-57.816-42.772-57.950-42.796Q-58.084-42.821-58.365-42.821L-58.365-43.137L-56.999-43.234L-56.999-37.600Q-56.999-37.411-56.805-37.358Q-56.612-37.305-56.304-37.305L-56.304-36.989M-55.847-38.896Q-55.847-39.463-55.575-39.951Q-55.302-40.439-54.832-40.731Q-54.362-41.023-53.795-41.023Q-53.373-41.023-52.997-40.854Q-52.622-40.685-52.345-40.393Q-52.068-40.100-51.910-39.705Q-51.752-39.309-51.752-38.896Q-51.752-38.347-52.031-37.885Q-52.310-37.424-52.778-37.156Q-53.246-36.888-53.795-36.888Q-54.349-36.888-54.819-37.156Q-55.289-37.424-55.568-37.885Q-55.847-38.347-55.847-38.896M-53.795-37.178Q-53.298-37.178-53.022-37.439Q-52.745-37.701-52.652-38.105Q-52.560-38.510-52.560-39.006Q-52.560-39.481-52.659-39.870Q-52.758-40.259-53.030-40.509Q-53.303-40.760-53.795-40.760Q-54.507-40.760-54.771-40.265Q-55.034-39.771-55.034-39.006Q-55.034-38.206-54.779-37.692Q-54.525-37.178-53.795-37.178",[759],"tikz-text","stroke-width:0.270",[737,762,764],{"transform":763},"translate(280.673 14.05)",[745,765],{"d":766,"fill":739,"stroke":739,"className":767,"style":760},"M-56.287-36.989L-58.374-36.989L-58.374-37.305Q-58.067-37.305-57.875-37.358Q-57.684-37.411-57.684-37.600L-57.684-42.315Q-57.684-42.557-57.755-42.665Q-57.825-42.772-57.959-42.796Q-58.093-42.821-58.374-42.821L-58.374-43.137L-57.007-43.234L-57.007-40.184Q-56.810-40.540-56.456-40.753Q-56.102-40.966-55.702-40.966Q-54.423-40.966-54.423-39.753L-54.423-37.600Q-54.423-37.411-54.232-37.358Q-54.041-37.305-53.734-37.305L-53.734-36.989L-55.821-36.989L-55.821-37.305Q-55.509-37.305-55.318-37.358Q-55.127-37.411-55.127-37.600L-55.127-39.718Q-55.127-39.977-55.171-40.199Q-55.215-40.421-55.360-40.564Q-55.505-40.707-55.764-40.707Q-56.107-40.707-56.388-40.518Q-56.669-40.329-56.825-40.017Q-56.981-39.705-56.981-39.358L-56.981-37.600Q-56.981-37.411-56.788-37.358Q-56.594-37.305-56.287-37.305L-56.287-36.989M-51.242-36.989L-53.228-36.989L-53.228-37.305Q-52.921-37.305-52.729-37.358Q-52.538-37.411-52.538-37.600L-52.538-40.048Q-52.538-40.294-52.604-40.399Q-52.670-40.505-52.795-40.529Q-52.921-40.553-53.193-40.553L-53.193-40.869L-51.861-40.966L-51.861-37.600Q-51.861-37.406-51.697-37.356Q-51.532-37.305-51.242-37.305L-51.242-36.989M-52.841-42.513Q-52.841-42.719-52.692-42.869Q-52.543-43.018-52.340-43.018Q-52.209-43.018-52.092-42.948Q-51.976-42.878-51.905-42.761Q-51.835-42.645-51.835-42.513Q-51.835-42.311-51.985-42.161Q-52.134-42.012-52.340-42.012Q-52.543-42.012-52.692-42.161Q-52.841-42.311-52.841-42.513",[759],[737,769,771],{"fill":770},"var(--tk-soft-warn)",[745,772],{"d":773},"M6.186-36.989a2.263 2.263 0 1 0-4.526 0 2.263 2.263 0 0 0 4.526 0Zm-2.263 0",[737,775,776],{"fill":770},[745,777],{"d":778},"M57.4-36.989a2.263 2.263 0 1 0-4.525 0 2.263 2.263 0 0 0 4.526 0Zm-2.262 0",[737,780,783],{"fill":781,"stroke":782},"var(--tk-soft-accent)","var(--tk-accent)",[745,784],{"d":785},"M125.687-36.989a2.263 2.263 0 1 0-4.526 0 2.263 2.263 0 0 0 4.526 0Zm-2.263 0",[737,787,788],{"fill":781,"stroke":782},[745,789],{"d":790},"M176.902-36.989a2.263 2.263 0 1 0-4.526 0 2.263 2.263 0 0 0 4.526 0Zm-2.263 0",[737,792,794],{"fill":781,"stroke":782,"style":793},"stroke-width:1.2",[745,795],{"d":796},"M91.544-36.989a2.263 2.263 0 1 0-4.526 0 2.263 2.263 0 0 0 4.526 0Zm-2.263 0",[737,798,800],{"transform":799},"translate(58.395 -6.947)",[745,801],{"d":802,"fill":739,"stroke":739,"className":803,"style":804},"M-56.677-36.989L-58.311-36.989L-58.311-37.269Q-58.082-37.269-57.933-37.303Q-57.784-37.338-57.784-37.478L-57.784-39.327Q-57.784-39.597-57.892-39.658Q-58-39.720-58.311-39.720L-58.311-40L-57.251-40.075L-57.251-39.426Q-57.080-39.734-56.776-39.905Q-56.472-40.075-56.127-40.075Q-55.621-40.075-55.337-39.852Q-55.053-39.628-55.053-39.132L-55.053-37.478Q-55.053-37.341-54.905-37.305Q-54.756-37.269-54.530-37.269L-54.530-36.989L-56.161-36.989L-56.161-37.269Q-55.932-37.269-55.783-37.303Q-55.634-37.338-55.634-37.478L-55.634-39.118Q-55.634-39.453-55.754-39.653Q-55.874-39.853-56.188-39.853Q-56.458-39.853-56.692-39.717Q-56.926-39.580-57.065-39.346Q-57.203-39.112-57.203-38.838L-57.203-37.478Q-57.203-37.341-57.053-37.305Q-56.902-37.269-56.677-37.269L-56.677-36.989M-53.984-38.472Q-53.984-38.814-53.849-39.113Q-53.714-39.412-53.474-39.636Q-53.235-39.860-52.917-39.985Q-52.599-40.110-52.268-40.110Q-51.823-40.110-51.423-39.894Q-51.024-39.679-50.789-39.301Q-50.555-38.924-50.555-38.472Q-50.555-38.131-50.697-37.847Q-50.839-37.563-51.083-37.356Q-51.328-37.150-51.637-37.035Q-51.946-36.921-52.268-36.921Q-52.698-36.921-53.100-37.122Q-53.502-37.324-53.743-37.676Q-53.984-38.028-53.984-38.472M-52.268-37.170Q-51.666-37.170-51.442-37.548Q-51.218-37.926-51.218-38.558Q-51.218-39.170-51.453-39.529Q-51.687-39.887-52.268-39.887Q-53.320-39.887-53.320-38.558Q-53.320-37.926-53.095-37.548Q-52.869-37.170-52.268-37.170",[759],"stroke-width:0.210",[737,806,808],{"transform":807},"translate(109.61 -6.947)",[745,809],{"d":802,"fill":739,"stroke":739,"className":810,"style":804},[759],[737,812,814,817],{"fill":813},"var(--tk-bg)",[745,815],{"stroke":747,"d":816},"M83.078-43.448h12.406v-7.345H83.078Z",[737,818,819,826],{"fill":782,"stroke":747},[737,820,822],{"transform":821},"translate(142.75 -7.46)",[745,823],{"d":824,"fill":782,"stroke":782,"className":825,"style":804},"M-57.449-38.606Q-57.449-38.144-57.249-37.811Q-57.049-37.478-56.694-37.303Q-56.339-37.129-55.881-37.129Q-55.546-37.129-55.212-37.249Q-54.879-37.368-54.592-37.587Q-54.305-37.806-54.105-38.098Q-53.905-38.390-53.823-38.718Q-53.809-38.773-53.744-38.773L-53.631-38.773Q-53.601-38.773-53.579-38.749Q-53.556-38.725-53.556-38.691Q-53.556-38.684-53.563-38.671Q-53.659-38.284-53.903-37.944Q-54.148-37.604-54.489-37.362Q-54.831-37.119-55.233-36.984Q-55.634-36.849-56.027-36.849Q-56.462-36.849-56.855-36.986Q-57.248-37.122-57.543-37.379Q-57.839-37.635-58.008-38.006Q-58.177-38.377-58.177-38.824Q-58.177-39.443-57.885-40.002Q-57.593-40.561-57.101-40.991Q-56.609-41.422-56.007-41.666Q-55.405-41.911-54.800-41.911Q-54.411-41.911-54.078-41.752Q-53.744-41.593-53.522-41.296L-52.948-41.890Q-52.927-41.911-52.897-41.911L-52.849-41.911Q-52.815-41.911-52.794-41.885Q-52.774-41.860-52.774-41.825Q-52.774-41.819-52.780-41.805L-53.242-39.956Q-53.256-39.894-53.310-39.894L-53.437-39.894Q-53.515-39.894-53.515-39.987Q-53.491-40.154-53.491-40.281Q-53.491-40.561-53.575-40.805Q-53.659-41.050-53.818-41.234Q-53.977-41.419-54.202-41.525Q-54.428-41.631-54.718-41.631Q-55.310-41.631-55.809-41.381Q-56.308-41.132-56.679-40.697Q-57.049-40.263-57.249-39.718Q-57.449-39.173-57.449-38.606",[759],[737,827,828],{"transform":821},[745,829],{"d":830,"fill":782,"stroke":782,"className":831,"style":832},"M-51.573-40.608Q-51.646-40.608-51.699-40.667Q-51.751-40.727-51.751-40.803Q-51.751-40.927-51.646-40.957L-50.838-41.257L-51.646-41.552Q-51.751-41.582-51.751-41.706Q-51.751-41.784-51.699-41.843Q-51.646-41.902-51.573-41.902Q-51.534-41.902-51.492-41.877L-50.701-41.406L-50.787-42.153L-50.792-42.168Q-50.792-42.234-50.733-42.282Q-50.675-42.331-50.606-42.331Q-50.535-42.331-50.479-42.285Q-50.423-42.238-50.423-42.168L-50.423-42.153L-50.511-41.406L-49.722-41.877Q-49.681-41.902-49.642-41.902Q-49.569-41.902-49.515-41.844Q-49.461-41.787-49.461-41.706Q-49.461-41.655-49.488-41.611Q-49.515-41.567-49.566-41.552L-50.377-41.257L-49.566-40.957Q-49.515-40.942-49.488-40.898Q-49.461-40.854-49.461-40.803Q-49.461-40.727-49.515-40.667Q-49.569-40.608-49.642-40.608Q-49.681-40.608-49.722-40.632L-50.511-41.103L-50.423-40.361L-50.423-40.341Q-50.423-40.271-50.479-40.224Q-50.535-40.178-50.606-40.178Q-50.675-40.178-50.733-40.227Q-50.792-40.276-50.792-40.341L-50.787-40.361L-50.701-41.103L-51.492-40.632Q-51.534-40.608-51.573-40.608",[759],"stroke-width:0.150",[737,834,837,844],{"stroke":747,"fontFamily":835,"fontSize":836},"cmr7","7",[737,838,840],{"transform":839},"translate(176.743 -8.308)",[745,841],{"d":842,"fill":739,"stroke":739,"className":843,"style":804},"M-58.024-35.854Q-57.894-35.786-57.757-35.786Q-57.586-35.786-57.436-35.875Q-57.285-35.964-57.174-36.109Q-57.063-36.254-56.985-36.422L-56.721-36.989L-57.890-39.515Q-57.965-39.662-58.095-39.694Q-58.225-39.727-58.458-39.727L-58.458-40.007L-56.937-40.007L-56.937-39.727Q-57.285-39.727-57.285-39.580Q-57.282-39.559-57.280-39.542Q-57.278-39.525-57.278-39.515L-56.421-37.656L-55.648-39.327Q-55.614-39.395-55.614-39.474Q-55.614-39.587-55.698-39.657Q-55.781-39.727-55.894-39.727L-55.894-40.007L-54.698-40.007L-54.698-39.727Q-54.917-39.727-55.089-39.623Q-55.262-39.518-55.354-39.327L-56.691-36.422Q-56.861-36.052-57.131-35.806Q-57.402-35.560-57.757-35.560Q-58.027-35.560-58.246-35.726Q-58.465-35.892-58.465-36.155Q-58.465-36.292-58.372-36.381Q-58.280-36.469-58.140-36.469Q-58.003-36.469-57.914-36.381Q-57.825-36.292-57.825-36.155Q-57.825-36.052-57.878-35.974Q-57.931-35.895-58.024-35.854",[759],[737,845,846],{"transform":839},[745,847],{"d":848,"fill":739,"stroke":739,"className":849,"style":804},"M-54.414-38.524Q-54.414-38.845-54.289-39.134Q-54.164-39.423-53.938-39.646Q-53.713-39.870-53.417-39.990Q-53.122-40.110-52.804-40.110Q-52.476-40.110-52.214-40.010Q-51.953-39.911-51.777-39.729Q-51.601-39.546-51.507-39.288Q-51.413-39.030-51.413-38.698Q-51.413-38.606-51.495-38.585L-53.750-38.585L-53.750-38.524Q-53.750-37.936-53.467-37.553Q-53.183-37.170-52.616-37.170Q-52.294-37.170-52.026-37.363Q-51.758-37.556-51.669-37.871Q-51.662-37.912-51.587-37.926L-51.495-37.926Q-51.413-37.902-51.413-37.830Q-51.413-37.823-51.419-37.796Q-51.532-37.399-51.903-37.160Q-52.274-36.921-52.698-36.921Q-53.135-36.921-53.535-37.129Q-53.935-37.338-54.174-37.705Q-54.414-38.072-54.414-38.524M-53.744-38.794L-51.929-38.794Q-51.929-39.071-52.026-39.323Q-52.124-39.576-52.322-39.732Q-52.520-39.887-52.804-39.887Q-53.081-39.887-53.294-39.729Q-53.508-39.570-53.626-39.315Q-53.744-39.060-53.744-38.794M-50.825-36.996L-50.825-38.059Q-50.825-38.083-50.797-38.110Q-50.770-38.137-50.746-38.137L-50.637-38.137Q-50.572-38.137-50.558-38.079Q-50.462-37.645-50.216-37.394Q-49.970-37.143-49.557-37.143Q-49.215-37.143-48.962-37.276Q-48.709-37.409-48.709-37.717Q-48.709-37.874-48.803-37.989Q-48.897-38.103-49.035-38.172Q-49.174-38.240-49.341-38.278L-49.922-38.377Q-50.278-38.445-50.551-38.666Q-50.825-38.886-50.825-39.228Q-50.825-39.477-50.714-39.652Q-50.603-39.826-50.416-39.925Q-50.230-40.024-50.015-40.067Q-49.799-40.110-49.557-40.110Q-49.143-40.110-48.863-39.928L-48.647-40.103Q-48.637-40.106-48.630-40.108Q-48.624-40.110-48.613-40.110L-48.562-40.110Q-48.535-40.110-48.511-40.086Q-48.487-40.062-48.487-40.034L-48.487-39.187Q-48.487-39.166-48.511-39.139Q-48.535-39.112-48.562-39.112L-48.675-39.112Q-48.702-39.112-48.728-39.137Q-48.753-39.163-48.753-39.187Q-48.753-39.423-48.859-39.587Q-48.965-39.751-49.148-39.833Q-49.331-39.915-49.563-39.915Q-49.892-39.915-50.148-39.812Q-50.404-39.710-50.404-39.433Q-50.404-39.238-50.221-39.129Q-50.039-39.019-49.810-38.978L-49.235-38.872Q-48.989-38.824-48.776-38.696Q-48.562-38.568-48.425-38.365Q-48.289-38.161-48.289-37.912Q-48.289-37.399-48.654-37.160Q-49.020-36.921-49.557-36.921Q-50.052-36.921-50.384-37.215L-50.650-36.941Q-50.671-36.921-50.698-36.921L-50.746-36.921Q-50.770-36.921-50.797-36.948Q-50.825-36.975-50.825-36.996",[759],[737,851,852,858],{"stroke":747,"fontFamily":835,"fontSize":836},[737,853,855],{"transform":854},"translate(227.958 -8.308)",[745,856],{"d":842,"fill":739,"stroke":739,"className":857,"style":804},[759],[737,859,860],{"transform":854},[745,861],{"d":848,"fill":739,"stroke":739,"className":862,"style":804},[759],[737,864,865,872,878,884,890,896,902],{"stroke":747,"fontSize":836},[737,866,868],{"transform":867},"translate(120.19 32.043)",[745,869],{"d":870,"fill":739,"stroke":739,"className":871,"style":804},"M-57.832-45.830L-57.832-47.727L-58.471-47.727L-58.471-47.949Q-58.153-47.949-57.936-48.159Q-57.719-48.369-57.619-48.679Q-57.518-48.988-57.518-49.296L-57.251-49.296L-57.251-48.007L-56.174-48.007L-56.174-47.727L-57.251-47.727L-57.251-45.843Q-57.251-45.567-57.147-45.368Q-57.043-45.170-56.783-45.170Q-56.626-45.170-56.520-45.274Q-56.414-45.379-56.364-45.532Q-56.315-45.686-56.315-45.843L-56.315-46.257L-56.048-46.257L-56.048-45.830Q-56.048-45.604-56.147-45.394Q-56.246-45.184-56.431-45.052Q-56.615-44.921-56.844-44.921Q-57.282-44.921-57.557-45.158Q-57.832-45.396-57.832-45.830M-53.556-44.989L-55.190-44.989L-55.190-45.269Q-54.961-45.269-54.812-45.303Q-54.664-45.338-54.664-45.478L-54.664-49.097Q-54.664-49.367-54.771-49.429Q-54.879-49.490-55.190-49.490L-55.190-49.771L-54.110-49.846L-54.110-47.460Q-54.004-47.645-53.826-47.787Q-53.649-47.928-53.440-48.002Q-53.232-48.075-53.006-48.075Q-52.500-48.075-52.216-47.852Q-51.933-47.628-51.933-47.132L-51.933-45.478Q-51.933-45.341-51.784-45.305Q-51.635-45.269-51.410-45.269L-51.410-44.989L-53.040-44.989L-53.040-45.269Q-52.811-45.269-52.663-45.303Q-52.514-45.338-52.514-45.478L-52.514-47.118Q-52.514-47.453-52.633-47.653Q-52.753-47.853-53.068-47.853Q-53.338-47.853-53.572-47.717Q-53.806-47.580-53.944-47.346Q-54.083-47.112-54.083-46.838L-54.083-45.478Q-54.083-45.341-53.932-45.305Q-53.782-45.269-53.556-45.269L-53.556-44.989M-49.072-44.989L-50.808-44.989L-50.808-45.269Q-50.579-45.269-50.431-45.303Q-50.282-45.338-50.282-45.478L-50.282-47.327Q-50.282-47.597-50.390-47.658Q-50.497-47.720-50.808-47.720L-50.808-48L-49.779-48.075L-49.779-47.368Q-49.650-47.676-49.407-47.875Q-49.164-48.075-48.846-48.075Q-48.628-48.075-48.457-47.951Q-48.286-47.826-48.286-47.614Q-48.286-47.477-48.385-47.378Q-48.484-47.279-48.617-47.279Q-48.754-47.279-48.853-47.378Q-48.952-47.477-48.952-47.614Q-48.952-47.754-48.853-47.853Q-49.144-47.853-49.344-47.657Q-49.544-47.460-49.636-47.166Q-49.728-46.872-49.728-46.592L-49.728-45.478Q-49.728-45.269-49.072-45.269L-49.072-44.989M-47.742-46.524Q-47.742-46.845-47.618-47.134Q-47.493-47.423-47.267-47.646Q-47.042-47.870-46.746-47.990Q-46.450-48.110-46.132-48.110Q-45.804-48.110-45.543-48.010Q-45.281-47.911-45.105-47.729Q-44.929-47.546-44.835-47.288Q-44.741-47.030-44.741-46.698Q-44.741-46.606-44.823-46.585L-47.079-46.585L-47.079-46.524Q-47.079-45.936-46.796-45.553Q-46.512-45.170-45.944-45.170Q-45.623-45.170-45.355-45.363Q-45.087-45.556-44.998-45.871Q-44.991-45.912-44.916-45.926L-44.823-45.926Q-44.741-45.902-44.741-45.830Q-44.741-45.823-44.748-45.796Q-44.861-45.399-45.232-45.160Q-45.603-44.921-46.027-44.921Q-46.464-44.921-46.864-45.129Q-47.264-45.338-47.503-45.705Q-47.742-46.072-47.742-46.524M-47.072-46.794L-45.257-46.794Q-45.257-47.071-45.355-47.323Q-45.452-47.576-45.651-47.732Q-45.849-47.887-46.132-47.887Q-46.409-47.887-46.623-47.729Q-46.837-47.570-46.954-47.315Q-47.072-47.060-47.072-46.794M-44.153-44.996L-44.153-46.059Q-44.153-46.083-44.126-46.110Q-44.099-46.137-44.075-46.137L-43.965-46.137Q-43.901-46.137-43.887-46.079Q-43.791-45.645-43.545-45.394Q-43.299-45.143-42.885-45.143Q-42.544-45.143-42.291-45.276Q-42.038-45.409-42.038-45.717Q-42.038-45.874-42.132-45.989Q-42.226-46.103-42.364-46.172Q-42.503-46.240-42.670-46.278L-43.251-46.377Q-43.607-46.445-43.880-46.666Q-44.153-46.886-44.153-47.228Q-44.153-47.477-44.042-47.652Q-43.931-47.826-43.745-47.925Q-43.559-48.024-43.343-48.067Q-43.128-48.110-42.885-48.110Q-42.472-48.110-42.192-47.928L-41.976-48.103Q-41.966-48.106-41.959-48.108Q-41.952-48.110-41.942-48.110L-41.891-48.110Q-41.863-48.110-41.840-48.086Q-41.816-48.062-41.816-48.034L-41.816-47.187Q-41.816-47.166-41.840-47.139Q-41.863-47.112-41.891-47.112L-42.004-47.112Q-42.031-47.112-42.057-47.137Q-42.082-47.163-42.082-47.187Q-42.082-47.423-42.188-47.587Q-42.294-47.751-42.477-47.833Q-42.660-47.915-42.892-47.915Q-43.220-47.915-43.477-47.812Q-43.733-47.710-43.733-47.433Q-43.733-47.238-43.550-47.129Q-43.367-47.019-43.138-46.978L-42.564-46.872Q-42.318-46.824-42.104-46.696Q-41.891-46.568-41.754-46.365Q-41.617-46.161-41.617-45.912Q-41.617-45.399-41.983-45.160Q-42.349-44.921-42.885-44.921Q-43.381-44.921-43.713-45.215L-43.979-44.941Q-44-44.921-44.027-44.921L-44.075-44.921Q-44.099-44.921-44.126-44.948Q-44.153-44.975-44.153-44.996M-39.307-44.989L-40.941-44.989L-40.941-45.269Q-40.712-45.269-40.563-45.303Q-40.414-45.338-40.414-45.478L-40.414-49.097Q-40.414-49.367-40.522-49.429Q-40.630-49.490-40.941-49.490L-40.941-49.771L-39.861-49.846L-39.861-47.460Q-39.755-47.645-39.577-47.787Q-39.399-47.928-39.191-48.002Q-38.982-48.075-38.756-48.075Q-38.251-48.075-37.967-47.852Q-37.683-47.628-37.683-47.132L-37.683-45.478Q-37.683-45.341-37.535-45.305Q-37.386-45.269-37.160-45.269L-37.160-44.989L-38.791-44.989L-38.791-45.269Q-38.562-45.269-38.413-45.303Q-38.264-45.338-38.264-45.478L-38.264-47.118Q-38.264-47.453-38.384-47.653Q-38.504-47.853-38.818-47.853Q-39.088-47.853-39.322-47.717Q-39.556-47.580-39.695-47.346Q-39.833-47.112-39.833-46.838L-39.833-45.478Q-39.833-45.341-39.683-45.305Q-39.532-45.269-39.307-45.269L-39.307-44.989M-36.613-46.472Q-36.613-46.814-36.478-47.113Q-36.343-47.412-36.104-47.636Q-35.865-47.860-35.547-47.985Q-35.229-48.110-34.898-48.110Q-34.453-48.110-34.053-47.894Q-33.653-47.679-33.419-47.301Q-33.185-46.924-33.185-46.472Q-33.185-46.131-33.327-45.847Q-33.469-45.563-33.713-45.356Q-33.958-45.150-34.267-45.035Q-34.576-44.921-34.898-44.921Q-35.328-44.921-35.730-45.122Q-36.131-45.324-36.372-45.676Q-36.613-46.028-36.613-46.472M-34.898-45.170Q-34.296-45.170-34.072-45.548Q-33.848-45.926-33.848-46.558Q-33.848-47.170-34.082-47.529Q-34.317-47.887-34.898-47.887Q-35.950-47.887-35.950-46.558Q-35.950-45.926-35.725-45.548Q-35.499-45.170-34.898-45.170M-30.923-44.989L-32.526-44.989L-32.526-45.269Q-32.300-45.269-32.151-45.303Q-32.003-45.338-32.003-45.478L-32.003-49.097Q-32.003-49.367-32.110-49.429Q-32.218-49.490-32.526-49.490L-32.526-49.771L-31.449-49.846L-31.449-45.478Q-31.449-45.341-31.298-45.305Q-31.148-45.269-30.923-45.269L-30.923-44.989M-30.328-46.500Q-30.328-46.838-30.188-47.129Q-30.048-47.419-29.803-47.633Q-29.559-47.846-29.255-47.961Q-28.950-48.075-28.626-48.075Q-28.356-48.075-28.092-47.976Q-27.829-47.877-27.638-47.699L-27.638-49.097Q-27.638-49.367-27.746-49.429Q-27.853-49.490-28.164-49.490L-28.164-49.771L-27.088-49.846L-27.088-45.662Q-27.088-45.474-27.033-45.391Q-26.978-45.307-26.877-45.288Q-26.777-45.269-26.561-45.269L-26.561-44.989L-27.669-44.921L-27.669-45.338Q-28.086-44.921-28.711-44.921Q-29.142-44.921-29.514-45.133Q-29.887-45.344-30.107-45.705Q-30.328-46.066-30.328-46.500M-28.653-45.143Q-28.444-45.143-28.258-45.215Q-28.072-45.286-27.918-45.423Q-27.764-45.560-27.669-45.738L-27.669-47.347Q-27.754-47.494-27.899-47.614Q-28.045-47.734-28.214-47.793Q-28.383-47.853-28.564-47.853Q-29.125-47.853-29.393-47.464Q-29.661-47.074-29.661-46.493Q-29.661-45.922-29.427-45.532Q-29.193-45.143-28.653-45.143",[759],[737,873,874],{"transform":867},[745,875],{"d":876,"fill":739,"stroke":739,"className":877,"style":804},"M-21.803-45.016L-22.784-47.515Q-22.845-47.658-22.963-47.693Q-23.081-47.727-23.297-47.727L-23.297-48.007L-21.817-48.007L-21.817-47.727Q-22.196-47.727-22.196-47.566Q-22.196-47.556-22.182-47.515L-21.468-45.683L-20.795-47.388Q-20.825-47.460-20.825-47.488Q-20.825-47.515-20.853-47.515Q-20.914-47.662-21.032-47.694Q-21.150-47.727-21.362-47.727L-21.362-48.007L-19.964-48.007L-19.964-47.727Q-20.340-47.727-20.340-47.566Q-20.340-47.535-20.333-47.515L-19.578-45.577L-18.891-47.327Q-18.870-47.378-18.870-47.433Q-18.870-47.573-18.983-47.650Q-19.096-47.727-19.236-47.727L-19.236-48.007L-18.016-48.007L-18.016-47.727Q-18.221-47.727-18.376-47.621Q-18.532-47.515-18.604-47.327L-19.509-45.016Q-19.544-44.921-19.656-44.921L-19.725-44.921Q-19.834-44.921-19.872-45.016L-20.654-47.019L-21.441-45.016Q-21.475-44.921-21.588-44.921L-21.656-44.921Q-21.765-44.921-21.803-45.016M-15.804-44.989L-17.438-44.989L-17.438-45.269Q-17.209-45.269-17.060-45.303Q-16.912-45.338-16.912-45.478L-16.912-49.097Q-16.912-49.367-17.019-49.429Q-17.127-49.490-17.438-49.490L-17.438-49.771L-16.358-49.846L-16.358-47.460Q-16.252-47.645-16.074-47.787Q-15.897-47.928-15.688-48.002Q-15.480-48.075-15.254-48.075Q-14.748-48.075-14.464-47.852Q-14.181-47.628-14.181-47.132L-14.181-45.478Q-14.181-45.341-14.032-45.305Q-13.883-45.269-13.658-45.269L-13.658-44.989L-15.288-44.989L-15.288-45.269Q-15.059-45.269-14.911-45.303Q-14.762-45.338-14.762-45.478L-14.762-47.118Q-14.762-47.453-14.881-47.653Q-15.001-47.853-15.316-47.853Q-15.586-47.853-15.820-47.717Q-16.054-47.580-16.192-47.346Q-16.331-47.112-16.331-46.838L-16.331-45.478Q-16.331-45.341-16.180-45.305Q-16.030-45.269-15.804-45.269L-15.804-44.989M-13.111-46.524Q-13.111-46.845-12.986-47.134Q-12.861-47.423-12.636-47.646Q-12.410-47.870-12.115-47.990Q-11.819-48.110-11.501-48.110Q-11.173-48.110-10.911-48.010Q-10.650-47.911-10.474-47.729Q-10.298-47.546-10.204-47.288Q-10.110-47.030-10.110-46.698Q-10.110-46.606-10.192-46.585L-12.448-46.585L-12.448-46.524Q-12.448-45.936-12.164-45.553Q-11.880-45.170-11.313-45.170Q-10.992-45.170-10.724-45.363Q-10.455-45.556-10.366-45.871Q-10.359-45.912-10.284-45.926L-10.192-45.926Q-10.110-45.902-10.110-45.830Q-10.110-45.823-10.117-45.796Q-10.230-45.399-10.600-45.160Q-10.971-44.921-11.395-44.921Q-11.833-44.921-12.233-45.129Q-12.632-45.338-12.872-45.705Q-13.111-46.072-13.111-46.524M-12.441-46.794L-10.626-46.794Q-10.626-47.071-10.724-47.323Q-10.821-47.576-11.019-47.732Q-11.217-47.887-11.501-47.887Q-11.778-47.887-11.992-47.729Q-12.205-47.570-12.323-47.315Q-12.441-47.060-12.441-46.794M-7.772-44.989L-9.508-44.989L-9.508-45.269Q-9.279-45.269-9.131-45.303Q-8.982-45.338-8.982-45.478L-8.982-47.327Q-8.982-47.597-9.090-47.658Q-9.197-47.720-9.508-47.720L-9.508-48L-8.480-48.075L-8.480-47.368Q-8.350-47.676-8.107-47.875Q-7.864-48.075-7.547-48.075Q-7.328-48.075-7.157-47.951Q-6.986-47.826-6.986-47.614Q-6.986-47.477-7.085-47.378Q-7.184-47.279-7.317-47.279Q-7.454-47.279-7.553-47.378Q-7.652-47.477-7.652-47.614Q-7.652-47.754-7.553-47.853Q-7.844-47.853-8.044-47.657Q-8.244-47.460-8.336-47.166Q-8.428-46.872-8.428-46.592L-8.428-45.478Q-8.428-45.269-7.772-45.269L-7.772-44.989M-6.442-46.524Q-6.442-46.845-6.318-47.134Q-6.193-47.423-5.967-47.646Q-5.742-47.870-5.446-47.990Q-5.151-48.110-4.833-48.110Q-4.505-48.110-4.243-48.010Q-3.982-47.911-3.806-47.729Q-3.630-47.546-3.536-47.288Q-3.442-47.030-3.442-46.698Q-3.442-46.606-3.524-46.585L-5.779-46.585L-5.779-46.524Q-5.779-45.936-5.496-45.553Q-5.212-45.170-4.645-45.170Q-4.323-45.170-4.055-45.363Q-3.787-45.556-3.698-45.871Q-3.691-45.912-3.616-45.926L-3.524-45.926Q-3.442-45.902-3.442-45.830Q-3.442-45.823-3.448-45.796Q-3.561-45.399-3.932-45.160Q-4.303-44.921-4.727-44.921Q-5.164-44.921-5.564-45.129Q-5.964-45.338-6.203-45.705Q-6.442-46.072-6.442-46.524M-5.773-46.794L-3.958-46.794Q-3.958-47.071-4.055-47.323Q-4.152-47.576-4.351-47.732Q-4.549-47.887-4.833-47.887Q-5.109-47.887-5.323-47.729Q-5.537-47.570-5.655-47.315Q-5.773-47.060-5.773-46.794",[759],[737,879,880],{"transform":867},[745,881],{"d":882,"fill":739,"stroke":739,"className":883,"style":804},"M-56.184-38.500Q-56.184-38.828-56.049-39.129Q-55.914-39.429-55.678-39.650Q-55.442-39.870-55.138-39.990Q-54.833-40.110-54.509-40.110Q-54.003-40.110-53.654-40.007Q-53.306-39.905-53.306-39.529Q-53.306-39.382-53.403-39.281Q-53.500-39.180-53.647-39.180Q-53.801-39.180-53.900-39.279Q-53.999-39.378-53.999-39.529Q-53.999-39.717-53.859-39.809Q-54.061-39.860-54.502-39.860Q-54.857-39.860-55.086-39.664Q-55.315-39.467-55.416-39.158Q-55.517-38.848-55.517-38.500Q-55.517-38.151-55.391-37.845Q-55.264-37.539-55.009-37.355Q-54.755-37.170-54.399-37.170Q-54.177-37.170-53.993-37.254Q-53.808-37.338-53.673-37.493Q-53.538-37.649-53.480-37.857Q-53.466-37.912-53.412-37.912L-53.299-37.912Q-53.268-37.912-53.246-37.888Q-53.224-37.864-53.224-37.830L-53.224-37.809Q-53.309-37.522-53.497-37.324Q-53.685-37.126-53.950-37.023Q-54.215-36.921-54.509-36.921Q-54.939-36.921-55.327-37.127Q-55.715-37.334-55.949-37.697Q-56.184-38.059-56.184-38.500M-52.677-38.472Q-52.677-38.814-52.542-39.113Q-52.407-39.412-52.167-39.636Q-51.928-39.860-51.610-39.985Q-51.292-40.110-50.961-40.110Q-50.517-40.110-50.117-39.894Q-49.717-39.679-49.483-39.301Q-49.248-38.924-49.248-38.472Q-49.248-38.131-49.390-37.847Q-49.532-37.563-49.777-37.356Q-50.021-37.150-50.330-37.035Q-50.640-36.921-50.961-36.921Q-51.392-36.921-51.793-37.122Q-52.195-37.324-52.436-37.676Q-52.677-38.028-52.677-38.472M-50.961-37.170Q-50.359-37.170-50.135-37.548Q-49.912-37.926-49.912-38.558Q-49.912-39.170-50.146-39.529Q-50.380-39.887-50.961-39.887Q-52.014-39.887-52.014-38.558Q-52.014-37.926-51.788-37.548Q-51.562-37.170-50.961-37.170M-48.654-36.996L-48.654-38.059Q-48.654-38.083-48.626-38.110Q-48.599-38.137-48.575-38.137L-48.466-38.137Q-48.401-38.137-48.387-38.079Q-48.291-37.645-48.045-37.394Q-47.799-37.143-47.386-37.143Q-47.044-37.143-46.791-37.276Q-46.538-37.409-46.538-37.717Q-46.538-37.874-46.632-37.989Q-46.726-38.103-46.864-38.172Q-47.003-38.240-47.170-38.278L-47.751-38.377Q-48.107-38.445-48.380-38.666Q-48.654-38.886-48.654-39.228Q-48.654-39.477-48.543-39.652Q-48.432-39.826-48.245-39.925Q-48.059-40.024-47.844-40.067Q-47.628-40.110-47.386-40.110Q-46.972-40.110-46.692-39.928L-46.477-40.103Q-46.466-40.106-46.459-40.108Q-46.453-40.110-46.442-40.110L-46.391-40.110Q-46.364-40.110-46.340-40.086Q-46.316-40.062-46.316-40.034L-46.316-39.187Q-46.316-39.166-46.340-39.139Q-46.364-39.112-46.391-39.112L-46.504-39.112Q-46.531-39.112-46.557-39.137Q-46.582-39.163-46.582-39.187Q-46.582-39.423-46.688-39.587Q-46.794-39.751-46.977-39.833Q-47.160-39.915-47.393-39.915Q-47.721-39.915-47.977-39.812Q-48.233-39.710-48.233-39.433Q-48.233-39.238-48.050-39.129Q-47.868-39.019-47.639-38.978L-47.064-38.872Q-46.818-38.824-46.605-38.696Q-46.391-38.568-46.254-38.365Q-46.118-38.161-46.118-37.912Q-46.118-37.399-46.483-37.160Q-46.849-36.921-47.386-36.921Q-47.881-36.921-48.213-37.215L-48.479-36.941Q-48.500-36.921-48.527-36.921L-48.575-36.921Q-48.599-36.921-48.626-36.948Q-48.654-36.975-48.654-36.996M-44.962-37.830L-44.962-39.727L-45.602-39.727L-45.602-39.949Q-45.284-39.949-45.067-40.159Q-44.850-40.369-44.749-40.679Q-44.648-40.988-44.648-41.296L-44.381-41.296L-44.381-40.007L-43.305-40.007L-43.305-39.727L-44.381-39.727L-44.381-37.843Q-44.381-37.567-44.277-37.368Q-44.173-37.170-43.913-37.170Q-43.756-37.170-43.650-37.274Q-43.544-37.379-43.494-37.532Q-43.445-37.686-43.445-37.843L-43.445-38.257L-43.178-38.257L-43.178-37.830Q-43.178-37.604-43.277-37.394Q-43.376-37.184-43.561-37.052Q-43.746-36.921-43.975-36.921Q-44.412-36.921-44.687-37.158Q-44.962-37.396-44.962-37.830",[759],[737,885,886],{"transform":867},[745,887],{"d":888,"fill":739,"stroke":739,"className":889,"style":804},"M-34.639-35.680L-39.052-35.680Q-39.120-35.690-39.166-35.736Q-39.213-35.782-39.213-35.854Q-39.213-35.998-39.052-36.022L-34.639-36.022Q-34.479-35.998-34.479-35.854Q-34.479-35.782-34.525-35.736Q-34.571-35.690-34.639-35.680M-34.732-37.242L-39.120-39.354Q-39.213-39.388-39.213-39.501Q-39.213-39.611-39.120-39.655L-34.732-41.764Q-34.701-41.784-34.650-41.784Q-34.581-41.784-34.530-41.733Q-34.479-41.682-34.479-41.617Q-34.479-41.511-34.564-41.463L-38.645-39.501L-34.564-37.543Q-34.479-37.495-34.479-37.396Q-34.479-37.324-34.530-37.273Q-34.581-37.221-34.650-37.221Q-34.701-37.221-34.732-37.242",[759],[737,891,892],{"transform":867},[745,893],{"d":894,"fill":739,"stroke":739,"className":895,"style":804},"M-30.916-37.150Q-30.916-37.191-30.909-37.215L-29.918-41.210Q-29.880-41.306-29.880-41.398Q-29.880-41.490-30.314-41.490Q-30.400-41.518-30.400-41.603L-30.372-41.713Q-30.365-41.754-30.294-41.771L-29.313-41.846Q-29.268-41.846-29.239-41.820Q-29.210-41.795-29.210-41.743L-29.931-38.865Q-29.719-38.954-29.571-39.079Q-29.422-39.204-29.084-39.508Q-28.745-39.812-28.504-39.944Q-28.263-40.075-28.004-40.075Q-27.785-40.075-27.636-39.930Q-27.487-39.785-27.487-39.566Q-27.487-39.371-27.604-39.226Q-27.720-39.081-27.908-39.081Q-28.024-39.081-28.106-39.154Q-28.188-39.228-28.188-39.347Q-28.188-39.501-28.075-39.631Q-27.963-39.761-27.809-39.761Q-27.891-39.853-28.021-39.853Q-28.280-39.853-28.530-39.684Q-28.779-39.515-29.131-39.194Q-29.484-38.872-29.658-38.766Q-28.557-38.647-28.557-38.018Q-28.557-37.919-28.593-37.755Q-28.629-37.591-28.629-37.502Q-28.629-37.143-28.390-37.143Q-28.147-37.143-28-37.415Q-27.853-37.686-27.775-38.018Q-27.751-38.079-27.696-38.079L-27.587-38.079Q-27.552-38.079-27.530-38.054Q-27.508-38.028-27.508-37.997Q-27.508-37.984-27.515-37.970Q-27.614-37.570-27.836-37.245Q-28.058-36.921-28.403-36.921Q-28.732-36.921-28.952-37.119Q-29.172-37.317-29.172-37.638Q-29.172-37.697-29.152-37.816Q-29.131-37.936-29.131-37.997Q-29.131-38.264-29.422-38.411Q-29.713-38.558-30.006-38.558L-30.352-37.163Q-30.382-37.061-30.476-36.991Q-30.570-36.921-30.673-36.921Q-30.772-36.921-30.844-36.984Q-30.916-37.047-30.916-37.150",[759],[737,897,898],{"transform":867},[745,899],{"d":900,"fill":739,"stroke":739,"className":901,"style":804},"M-25.665-37.409Q-25.665-37.577-25.539-37.700Q-25.412-37.823-25.245-37.823Q-25.077-37.823-24.954-37.700Q-24.831-37.577-24.831-37.409Q-24.831-37.235-24.954-37.112Q-25.077-36.989-25.245-36.989Q-25.412-36.989-25.539-37.112Q-25.665-37.235-25.665-37.409M-25.378-38.445L-25.378-38.787Q-25.378-39.135-25.265-39.474Q-25.152-39.812-24.951-40.082Q-24.889-40.164-24.771-40.281Q-24.653-40.397-24.576-40.487Q-24.500-40.578-24.455-40.691Q-24.411-40.803-24.411-40.964Q-24.411-41.391-24.604-41.542Q-24.797-41.692-25.245-41.692Q-25.522-41.692-25.771-41.598Q-26.021-41.504-26.154-41.309Q-26.017-41.309-25.928-41.203Q-25.839-41.097-25.839-40.964Q-25.839-40.868-25.886-40.790Q-25.932-40.711-26.012-40.667Q-26.092-40.622-26.181-40.622Q-26.332-40.622-26.432-40.720Q-26.533-40.817-26.533-40.964Q-26.533-41.275-26.340-41.492Q-26.147-41.709-25.850-41.813Q-25.552-41.918-25.245-41.918Q-24.988-41.918-24.727-41.875Q-24.465-41.832-24.247-41.730Q-24.028-41.627-23.888-41.436Q-23.748-41.244-23.748-40.964Q-23.748-40.749-23.857-40.561Q-23.966-40.373-24.158-40.250Q-24.435-40.079-24.648-39.857Q-24.862-39.635-24.987-39.356Q-25.111-39.077-25.111-38.773L-25.111-38.445Q-25.111-38.414-25.135-38.390Q-25.159-38.366-25.187-38.366L-25.299-38.366Q-25.330-38.366-25.354-38.390Q-25.378-38.414-25.378-38.445",[759],[737,903,904],{"transform":867},[745,905],{"d":906,"fill":739,"stroke":739,"className":907,"style":804},"M-17.765-36.989L-19.368-36.989L-19.368-37.269Q-19.139-37.269-18.990-37.303Q-18.842-37.338-18.842-37.478L-18.842-39.727L-19.429-39.727L-19.429-40.007L-18.842-40.007L-18.842-40.824Q-18.842-41.193-18.544-41.441Q-18.247-41.689-17.833-41.803Q-17.420-41.918-17.050-41.918Q-16.599-41.918-16.350-41.805L-16.029-41.846L-16.029-37.478Q-16.029-37.341-15.878-37.305Q-15.728-37.269-15.502-37.269L-15.502-36.989L-17.105-36.989L-17.105-37.269Q-16.880-37.269-16.731-37.303Q-16.582-37.338-16.582-37.478L-16.582-39.727L-18.288-39.727L-18.288-37.478Q-18.288-37.341-18.139-37.305Q-17.990-37.269-17.765-37.269L-17.765-36.989M-18.319-40.810L-18.319-40.007L-16.582-40.007L-16.582-41.097Q-16.743-41.200-16.743-41.391Q-16.743-41.555-16.616-41.651Q-16.784-41.692-17.119-41.692Q-17.392-41.692-17.673-41.590Q-17.953-41.487-18.136-41.289Q-18.319-41.091-18.319-40.810M-13.243-36.989L-14.795-36.989L-14.795-37.269Q-14.569-37.269-14.420-37.303Q-14.272-37.338-14.272-37.478L-14.272-39.327Q-14.272-39.515-14.320-39.599Q-14.367-39.682-14.465-39.701Q-14.562-39.720-14.774-39.720L-14.774-40L-13.718-40.075L-13.718-37.478Q-13.718-37.338-13.586-37.303Q-13.455-37.269-13.243-37.269L-13.243-36.989M-14.514-41.296Q-14.514-41.467-14.391-41.586Q-14.268-41.706-14.097-41.706Q-13.930-41.706-13.807-41.586Q-13.684-41.467-13.684-41.296Q-13.684-41.121-13.807-40.998Q-13.930-40.875-14.097-40.875Q-14.268-40.875-14.391-40.998Q-14.514-41.121-14.514-41.296M-10.953-35.632L-12.583-35.632L-12.583-35.912Q-12.354-35.912-12.206-35.947Q-12.057-35.981-12.057-36.121L-12.057-39.467Q-12.057-39.638-12.194-39.679Q-12.330-39.720-12.583-39.720L-12.583-40L-11.503-40.075L-11.503-39.669Q-11.281-39.870-10.994-39.973Q-10.707-40.075-10.399-40.075Q-9.972-40.075-9.608-39.862Q-9.244-39.648-9.030-39.284Q-8.817-38.920-8.817-38.500Q-8.817-38.055-9.056-37.691Q-9.295-37.327-9.688-37.124Q-10.081-36.921-10.526-36.921Q-10.792-36.921-11.040-37.021Q-11.288-37.122-11.476-37.303L-11.476-36.121Q-11.476-35.984-11.327-35.948Q-11.178-35.912-10.953-35.912L-10.953-35.632M-11.476-39.320L-11.476-37.710Q-11.342-37.457-11.100-37.300Q-10.857-37.143-10.580-37.143Q-10.252-37.143-9.999-37.344Q-9.746-37.546-9.613-37.864Q-9.480-38.182-9.480-38.500Q-9.480-38.729-9.545-38.958Q-9.610-39.187-9.738-39.385Q-9.866-39.583-10.061-39.703Q-10.256-39.822-10.488-39.822Q-10.782-39.822-11.050-39.693Q-11.319-39.563-11.476-39.320M-8.181-36.996L-8.181-38.059Q-8.181-38.083-8.154-38.110Q-8.126-38.137-8.102-38.137L-7.993-38.137Q-7.928-38.137-7.914-38.079Q-7.819-37.645-7.572-37.394Q-7.326-37.143-6.913-37.143Q-6.571-37.143-6.318-37.276Q-6.065-37.409-6.065-37.717Q-6.065-37.874-6.159-37.989Q-6.253-38.103-6.392-38.172Q-6.530-38.240-6.697-38.278L-7.279-38.377Q-7.634-38.445-7.907-38.666Q-8.181-38.886-8.181-39.228Q-8.181-39.477-8.070-39.652Q-7.959-39.826-7.772-39.925Q-7.586-40.024-7.371-40.067Q-7.155-40.110-6.913-40.110Q-6.499-40.110-6.219-39.928L-6.004-40.103Q-5.993-40.106-5.987-40.108Q-5.980-40.110-5.969-40.110L-5.918-40.110Q-5.891-40.110-5.867-40.086Q-5.843-40.062-5.843-40.034L-5.843-39.187Q-5.843-39.166-5.867-39.139Q-5.891-39.112-5.918-39.112L-6.031-39.112Q-6.058-39.112-6.084-39.137Q-6.110-39.163-6.110-39.187Q-6.110-39.423-6.216-39.587Q-6.321-39.751-6.504-39.833Q-6.687-39.915-6.920-39.915Q-7.248-39.915-7.504-39.812Q-7.760-39.710-7.760-39.433Q-7.760-39.238-7.578-39.129Q-7.395-39.019-7.166-38.978L-6.592-38.872Q-6.345-38.824-6.132-38.696Q-5.918-38.568-5.781-38.365Q-5.645-38.161-5.645-37.912Q-5.645-37.399-6.010-37.160Q-6.376-36.921-6.913-36.921Q-7.408-36.921-7.740-37.215L-8.007-36.941Q-8.027-36.921-8.054-36.921L-8.102-36.921Q-8.126-36.921-8.154-36.948Q-8.181-36.975-8.181-36.996",[759],[737,909,910,913],{"fill":782,"stroke":782},[745,911],{"fill":747,"d":912},"M55.138-56.906c11.07 8.516 20.19 11.404 31.07 10.942",[745,914],{"d":915,"style":916},"m88.712-46.07-3.638-1.197 1.234 1.3-1.12 1.399Z","stroke-width:.39998",[737,918,919,922],{"fill":782,"stroke":782},[745,920],{"fill":747,"d":921},"M123.424-56.906c-11.07 8.516-20.19 11.404-31.07 10.942",[745,923],{"d":924,"style":916},"m89.85-46.07 3.524 1.502-1.12-1.4 1.234-1.3Z",[737,926,927,934,940],{"fill":782,"stroke":747,"fontFamily":835,"fontSize":836},[737,928,930],{"transform":929},"translate(124.606 -27.087)",[745,931],{"d":932,"fill":782,"stroke":782,"className":933,"style":804},"M-57.552-36.989L-57.819-36.989L-57.819-41.097Q-57.819-41.367-57.926-41.429Q-58.034-41.490-58.345-41.490L-58.345-41.771L-57.265-41.846L-57.265-39.676Q-57.056-39.867-56.771-39.971Q-56.486-40.075-56.188-40.075Q-55.870-40.075-55.573-39.954Q-55.276-39.833-55.053-39.617Q-54.831-39.402-54.705-39.117Q-54.578-38.831-54.578-38.500Q-54.578-38.055-54.818-37.691Q-55.057-37.327-55.450-37.124Q-55.843-36.921-56.287-36.921Q-56.482-36.921-56.672-36.977Q-56.861-37.033-57.022-37.138Q-57.183-37.242-57.323-37.403L-57.552-36.989M-57.237-39.334L-57.237-37.717Q-57.101-37.457-56.860-37.300Q-56.619-37.143-56.342-37.143Q-56.048-37.143-55.836-37.250Q-55.624-37.358-55.491-37.550Q-55.358-37.741-55.299-37.980Q-55.241-38.219-55.241-38.500Q-55.241-38.859-55.335-39.163Q-55.429-39.467-55.657-39.660Q-55.884-39.853-56.250-39.853Q-56.550-39.853-56.817-39.717Q-57.084-39.580-57.237-39.334M-52.326-36.989L-53.878-36.989L-53.878-37.269Q-53.652-37.269-53.503-37.303Q-53.355-37.338-53.355-37.478L-53.355-39.327Q-53.355-39.515-53.402-39.599Q-53.450-39.682-53.548-39.701Q-53.645-39.720-53.857-39.720L-53.857-40L-52.801-40.075L-52.801-37.478Q-52.801-37.338-52.669-37.303Q-52.538-37.269-52.326-37.269L-52.326-36.989M-53.597-41.296Q-53.597-41.467-53.474-41.586Q-53.351-41.706-53.180-41.706Q-53.013-41.706-52.890-41.586Q-52.767-41.467-52.767-41.296Q-52.767-41.121-52.890-40.998Q-53.013-40.875-53.180-40.875Q-53.351-40.875-53.474-40.998Q-53.597-41.121-53.597-41.296M-49.998-36.989L-51.632-36.989L-51.632-37.269Q-51.403-37.269-51.254-37.303Q-51.106-37.338-51.106-37.478L-51.106-39.327Q-51.106-39.597-51.213-39.658Q-51.321-39.720-51.632-39.720L-51.632-40L-50.572-40.075L-50.572-39.426Q-50.402-39.734-50.097-39.905Q-49.793-40.075-49.448-40.075Q-48.942-40.075-48.658-39.852Q-48.375-39.628-48.375-39.132L-48.375-37.478Q-48.375-37.341-48.226-37.305Q-48.077-37.269-47.852-37.269L-47.852-36.989L-49.482-36.989L-49.482-37.269Q-49.253-37.269-49.104-37.303Q-48.956-37.338-48.956-37.478L-48.956-39.118Q-48.956-39.453-49.075-39.653Q-49.195-39.853-49.509-39.853Q-49.779-39.853-50.014-39.717Q-50.248-39.580-50.386-39.346Q-50.525-39.112-50.525-38.838L-50.525-37.478Q-50.525-37.341-50.374-37.305Q-50.224-37.269-49.998-37.269L-49.998-36.989M-47.206-37.717Q-47.206-38.049-46.982-38.276Q-46.758-38.503-46.414-38.631Q-46.071-38.760-45.698-38.812Q-45.326-38.865-45.022-38.865L-45.022-39.118Q-45.022-39.323-45.129-39.503Q-45.237-39.682-45.418-39.785Q-45.599-39.887-45.808-39.887Q-46.215-39.887-46.450-39.795Q-46.361-39.758-46.315-39.674Q-46.269-39.590-46.269-39.488Q-46.269-39.392-46.315-39.313Q-46.361-39.235-46.442-39.190Q-46.522-39.146-46.611-39.146Q-46.761-39.146-46.862-39.243Q-46.963-39.341-46.963-39.488Q-46.963-40.110-45.808-40.110Q-45.596-40.110-45.346-40.046Q-45.097-39.983-44.895-39.864Q-44.694-39.744-44.567-39.559Q-44.441-39.375-44.441-39.132L-44.441-37.556Q-44.441-37.440-44.379-37.344Q-44.318-37.249-44.205-37.249Q-44.095-37.249-44.030-37.343Q-43.965-37.437-43.965-37.556L-43.965-38.004L-43.699-38.004L-43.699-37.556Q-43.699-37.286-43.926-37.121Q-44.153-36.955-44.434-36.955Q-44.642-36.955-44.779-37.109Q-44.916-37.262-44.940-37.478Q-45.087-37.211-45.369-37.066Q-45.651-36.921-45.975-36.921Q-46.252-36.921-46.536-36.996Q-46.819-37.071-47.013-37.250Q-47.206-37.430-47.206-37.717M-46.590-37.717Q-46.590-37.543-46.490-37.413Q-46.389-37.283-46.233-37.213Q-46.078-37.143-45.914-37.143Q-45.695-37.143-45.486-37.240Q-45.278-37.338-45.150-37.519Q-45.022-37.700-45.022-37.926L-45.022-38.654Q-45.346-38.654-45.712-38.563Q-46.078-38.472-46.334-38.260Q-46.590-38.049-46.590-37.717M-41.532-36.989L-43.268-36.989L-43.268-37.269Q-43.039-37.269-42.891-37.303Q-42.742-37.338-42.742-37.478L-42.742-39.327Q-42.742-39.597-42.850-39.658Q-42.957-39.720-43.268-39.720L-43.268-40L-42.239-40.075L-42.239-39.368Q-42.110-39.676-41.867-39.875Q-41.624-40.075-41.306-40.075Q-41.088-40.075-40.917-39.951Q-40.746-39.826-40.746-39.614Q-40.746-39.477-40.845-39.378Q-40.944-39.279-41.077-39.279Q-41.214-39.279-41.313-39.378Q-41.412-39.477-41.412-39.614Q-41.412-39.754-41.313-39.853Q-41.604-39.853-41.804-39.657Q-42.004-39.460-42.096-39.166Q-42.188-38.872-42.188-38.592L-42.188-37.478Q-42.188-37.269-41.532-37.269L-41.532-36.989M-39.826-35.854Q-39.696-35.786-39.560-35.786Q-39.389-35.786-39.238-35.875Q-39.088-35.964-38.977-36.109Q-38.866-36.254-38.787-36.422L-38.524-36.989L-39.693-39.515Q-39.768-39.662-39.898-39.694Q-40.028-39.727-40.260-39.727L-40.260-40.007L-38.739-40.007L-38.739-39.727Q-39.088-39.727-39.088-39.580Q-39.085-39.559-39.083-39.542Q-39.081-39.525-39.081-39.515L-38.223-37.656L-37.451-39.327Q-37.417-39.395-37.417-39.474Q-37.417-39.587-37.500-39.657Q-37.584-39.727-37.697-39.727L-37.697-40.007L-36.501-40.007L-36.501-39.727Q-36.719-39.727-36.892-39.623Q-37.065-39.518-37.157-39.327L-38.493-36.422Q-38.664-36.052-38.934-35.806Q-39.204-35.560-39.560-35.560Q-39.830-35.560-40.048-35.726Q-40.267-35.892-40.267-36.155Q-40.267-36.292-40.175-36.381Q-40.083-36.469-39.943-36.469Q-39.806-36.469-39.717-36.381Q-39.628-36.292-39.628-36.155Q-39.628-36.052-39.681-35.974Q-39.734-35.895-39.826-35.854",[759],[737,935,936],{"transform":929},[745,937],{"d":938,"fill":782,"stroke":782,"className":939,"style":804},"M-33.255-36.996L-33.255-38.059Q-33.255-38.083-33.227-38.110Q-33.200-38.137-33.176-38.137L-33.067-38.137Q-33.002-38.137-32.988-38.079Q-32.892-37.645-32.646-37.394Q-32.400-37.143-31.986-37.143Q-31.645-37.143-31.392-37.276Q-31.139-37.409-31.139-37.717Q-31.139-37.874-31.233-37.989Q-31.327-38.103-31.465-38.172Q-31.604-38.240-31.771-38.278L-32.352-38.377Q-32.708-38.445-32.981-38.666Q-33.255-38.886-33.255-39.228Q-33.255-39.477-33.143-39.652Q-33.032-39.826-32.846-39.925Q-32.660-40.024-32.444-40.067Q-32.229-40.110-31.986-40.110Q-31.573-40.110-31.293-39.928L-31.077-40.103Q-31.067-40.106-31.060-40.108Q-31.053-40.110-31.043-40.110L-30.992-40.110Q-30.965-40.110-30.941-40.086Q-30.917-40.062-30.917-40.034L-30.917-39.187Q-30.917-39.166-30.941-39.139Q-30.965-39.112-30.992-39.112L-31.105-39.112Q-31.132-39.112-31.158-39.137Q-31.183-39.163-31.183-39.187Q-31.183-39.423-31.289-39.587Q-31.395-39.751-31.578-39.833Q-31.761-39.915-31.993-39.915Q-32.321-39.915-32.578-39.812Q-32.834-39.710-32.834-39.433Q-32.834-39.238-32.651-39.129Q-32.468-39.019-32.239-38.978L-31.665-38.872Q-31.419-38.824-31.205-38.696Q-30.992-38.568-30.855-38.365Q-30.718-38.161-30.718-37.912Q-30.718-37.399-31.084-37.160Q-31.450-36.921-31.986-36.921Q-32.482-36.921-32.814-37.215L-33.080-36.941Q-33.101-36.921-33.128-36.921L-33.176-36.921Q-33.200-36.921-33.227-36.948Q-33.255-36.975-33.255-36.996M-30.131-38.524Q-30.131-38.845-30.006-39.134Q-29.881-39.423-29.655-39.646Q-29.430-39.870-29.134-39.990Q-28.839-40.110-28.521-40.110Q-28.193-40.110-27.931-40.010Q-27.670-39.911-27.494-39.729Q-27.318-39.546-27.224-39.288Q-27.130-39.030-27.130-38.698Q-27.130-38.606-27.212-38.585L-29.467-38.585L-29.467-38.524Q-29.467-37.936-29.184-37.553Q-28.900-37.170-28.333-37.170Q-28.011-37.170-27.743-37.363Q-27.475-37.556-27.386-37.871Q-27.379-37.912-27.304-37.926L-27.212-37.926Q-27.130-37.902-27.130-37.830Q-27.130-37.823-27.136-37.796Q-27.249-37.399-27.620-37.160Q-27.991-36.921-28.415-36.921Q-28.852-36.921-29.252-37.129Q-29.652-37.338-29.891-37.705Q-30.131-38.072-30.131-38.524M-29.461-38.794L-27.646-38.794Q-27.646-39.071-27.743-39.323Q-27.840-39.576-28.039-39.732Q-28.237-39.887-28.521-39.887Q-28.798-39.887-29.011-39.729Q-29.225-39.570-29.343-39.315Q-29.461-39.060-29.461-38.794M-26.484-37.717Q-26.484-38.049-26.260-38.276Q-26.036-38.503-25.692-38.631Q-25.349-38.760-24.976-38.812Q-24.604-38.865-24.299-38.865L-24.299-39.118Q-24.299-39.323-24.407-39.503Q-24.515-39.682-24.696-39.785Q-24.877-39.887-25.086-39.887Q-25.492-39.887-25.728-39.795Q-25.639-39.758-25.593-39.674Q-25.547-39.590-25.547-39.488Q-25.547-39.392-25.593-39.313Q-25.639-39.235-25.720-39.190Q-25.800-39.146-25.889-39.146Q-26.039-39.146-26.140-39.243Q-26.241-39.341-26.241-39.488Q-26.241-40.110-25.086-40.110Q-24.874-40.110-24.624-40.046Q-24.375-39.983-24.173-39.864Q-23.971-39.744-23.845-39.559Q-23.718-39.375-23.718-39.132L-23.718-37.556Q-23.718-37.440-23.657-37.344Q-23.595-37.249-23.483-37.249Q-23.373-37.249-23.308-37.343Q-23.243-37.437-23.243-37.556L-23.243-38.004L-22.977-38.004L-22.977-37.556Q-22.977-37.286-23.204-37.121Q-23.431-36.955-23.712-36.955Q-23.920-36.955-24.057-37.109Q-24.194-37.262-24.217-37.478Q-24.364-37.211-24.646-37.066Q-24.928-36.921-25.253-36.921Q-25.530-36.921-25.814-36.996Q-26.097-37.071-26.290-37.250Q-26.484-37.430-26.484-37.717M-25.868-37.717Q-25.868-37.543-25.767-37.413Q-25.667-37.283-25.511-37.213Q-25.356-37.143-25.192-37.143Q-24.973-37.143-24.764-37.240Q-24.556-37.338-24.428-37.519Q-24.299-37.700-24.299-37.926L-24.299-38.654Q-24.624-38.654-24.990-38.563Q-25.356-38.472-25.612-38.260Q-25.868-38.049-25.868-37.717M-20.810-36.989L-22.546-36.989L-22.546-37.269Q-22.317-37.269-22.168-37.303Q-22.020-37.338-22.020-37.478L-22.020-39.327Q-22.020-39.597-22.127-39.658Q-22.235-39.720-22.546-39.720L-22.546-40L-21.517-40.075L-21.517-39.368Q-21.387-39.676-21.145-39.875Q-20.902-40.075-20.584-40.075Q-20.365-40.075-20.194-39.951Q-20.024-39.826-20.024-39.614Q-20.024-39.477-20.123-39.378Q-20.222-39.279-20.355-39.279Q-20.492-39.279-20.591-39.378Q-20.690-39.477-20.690-39.614Q-20.690-39.754-20.591-39.853Q-20.882-39.853-21.081-39.657Q-21.281-39.460-21.374-39.166Q-21.466-38.872-21.466-38.592L-21.466-37.478Q-21.466-37.269-20.810-37.269L-20.810-36.989M-19.439-38.500Q-19.439-38.828-19.304-39.129Q-19.169-39.429-18.933-39.650Q-18.697-39.870-18.393-39.990Q-18.089-40.110-17.764-40.110Q-17.258-40.110-16.910-40.007Q-16.561-39.905-16.561-39.529Q-16.561-39.382-16.659-39.281Q-16.756-39.180-16.903-39.180Q-17.057-39.180-17.156-39.279Q-17.255-39.378-17.255-39.529Q-17.255-39.717-17.115-39.809Q-17.317-39.860-17.757-39.860Q-18.113-39.860-18.342-39.664Q-18.571-39.467-18.672-39.158Q-18.773-38.848-18.773-38.500Q-18.773-38.151-18.646-37.845Q-18.520-37.539-18.265-37.355Q-18.010-37.170-17.655-37.170Q-17.433-37.170-17.248-37.254Q-17.064-37.338-16.929-37.493Q-16.794-37.649-16.736-37.857Q-16.722-37.912-16.667-37.912L-16.554-37.912Q-16.524-37.912-16.501-37.888Q-16.479-37.864-16.479-37.830L-16.479-37.809Q-16.565-37.522-16.753-37.324Q-16.941-37.126-17.205-37.023Q-17.470-36.921-17.764-36.921Q-18.195-36.921-18.583-37.127Q-18.971-37.334-19.205-37.697Q-19.439-38.059-19.439-38.500",[759],[737,941,942],{"transform":929},[745,943],{"d":944,"fill":782,"stroke":782,"className":945,"style":804},"M-14.398-36.989L-16.032-36.989L-16.032-37.269Q-15.803-37.269-15.654-37.303Q-15.505-37.338-15.505-37.478L-15.505-41.097Q-15.505-41.367-15.613-41.429Q-15.721-41.490-16.032-41.490L-16.032-41.771L-14.952-41.846L-14.952-39.460Q-14.846-39.645-14.668-39.787Q-14.490-39.928-14.282-40.002Q-14.073-40.075-13.848-40.075Q-13.342-40.075-13.058-39.852Q-12.774-39.628-12.774-39.132L-12.774-37.478Q-12.774-37.341-12.626-37.305Q-12.477-37.269-12.251-37.269L-12.251-36.989L-13.882-36.989L-13.882-37.269Q-13.653-37.269-13.504-37.303Q-13.355-37.338-13.355-37.478L-13.355-39.118Q-13.355-39.453-13.475-39.653Q-13.595-39.853-13.909-39.853Q-14.179-39.853-14.413-39.717Q-14.647-39.580-14.786-39.346Q-14.924-39.112-14.924-38.838L-14.924-37.478Q-14.924-37.341-14.774-37.305Q-14.623-37.269-14.398-37.269",[759],[947,948,951,952,520],"figcaption",{"className":949},[950],"tikz-cap","An optimization problem reduces to its decision twin by binary search over the threshold ",[385,953,955],{"className":954},[388],[385,956,958],{"className":957,"ariaHidden":393},[392],[385,959,961,964],{"className":960},[397],[385,962],{"className":963,"style":474},[401],[385,965,688],{"className":966,"style":687},[406,407],[381,968,969,970,973,974,977,978,980,981,984,985,991],{},"A word on ",[455,971,972],{},"encoding"," and ",[455,975,976],{},"size",". An input is a string of bits; the ",[447,979,976],{},"\nof an instance is the length of that string. We always assume a ",[599,982,983],{},"reasonable","\nencoding (integers in binary, graphs as adjacency lists) because an\nartificially bloated encoding (say, integers in unary) could make a slow\nalgorithm look fast. With reasonable encodings fixed, ",[986,987,988],"a",{"href":17},[599,989,990],{},"polynomial in the input size"," is a stable, machine-independent notion.",[502,993,995],{"id":994},"the-class-p","The class P",[381,997,998,999,520],{},"Some decision problems have algorithms whose running time is bounded by a\npolynomial in the input size. These are the problems we regard as ",[447,1000,1001],{},"tractable",[522,1003,1004],{"type":524},[381,1005,1006,576,1025,1040,1041,1104,1105,1120,1121,1136],{},[455,1007,1008,1009,1024],{},"Definition (The class ",[385,1010,1012],{"className":1011},[388],[385,1013,1015],{"className":1014,"ariaHidden":393},[392],[385,1016,1018,1021],{"className":1017},[397],[385,1019],{"className":1020,"style":474},[401],[385,1022,479],{"className":1023},[406,478],").",[385,1026,1028],{"className":1027},[388],[385,1029,1031],{"className":1030,"ariaHidden":393},[392],[385,1032,1034,1037],{"className":1033},[397],[385,1035],{"className":1036,"style":474},[401],[385,1038,479],{"className":1039},[406,478]," is the class of decision problems solvable by an algorithm that\nruns in time ",[385,1042,1044],{"className":1043},[388],[385,1045,1047],{"className":1046,"ariaHidden":393},[392],[385,1048,1050,1054,1057,1060,1101],{"className":1049},[397],[385,1051],{"className":1052,"style":1053},[401],"height:1.0991em;vertical-align:-0.25em;",[385,1055,409],{"className":1056,"style":408},[406,407],[385,1058,414],{"className":1059},[413],[385,1061,1063,1066],{"className":1062},[406],[385,1064,418],{"className":1065},[406,407],[385,1067,1070],{"className":1068},[1069],"msupsub",[385,1071,1074],{"className":1072},[1073],"vlist-t",[385,1075,1078],{"className":1076},[1077],"vlist-r",[385,1079,1083],{"className":1080,"style":1082},[1081],"vlist","height:0.8491em;",[385,1084,1086,1091],{"style":1085},"top:-3.063em;margin-right:0.05em;",[385,1087],{"className":1088,"style":1090},[1089],"pstrut","height:2.7em;",[385,1092,1098],{"className":1093},[1094,1095,1096,1097],"sizing","reset-size6","size3","mtight",[385,1099,688],{"className":1100,"style":687},[406,407,1097],[385,1102,444],{"className":1103},[443]," for some constant ",[385,1106,1108],{"className":1107},[388],[385,1109,1111],{"className":1110,"ariaHidden":393},[392],[385,1112,1114,1117],{"className":1113},[397],[385,1115],{"className":1116,"style":474},[401],[385,1118,688],{"className":1119,"style":687},[406,407],", where ",[385,1122,1124],{"className":1123},[388],[385,1125,1127],{"className":1126,"ariaHidden":393},[392],[385,1128,1130,1133],{"className":1129},[397],[385,1131],{"className":1132,"style":615},[401],[385,1134,418],{"className":1135},[406,407]," is the input size.",[381,1138,1139,1140,1186,1187,1190,1191,1194,1195,1210,1211,1252,1253,1256,1257,1272,1273,1276],{},"Why polynomial, and not, say, ",[599,1141,1142,1185],{},[385,1143,1145],{"className":1144},[388],[385,1146,1148],{"className":1147,"ariaHidden":393},[392],[385,1149,1151,1155],{"className":1150},[397],[385,1152],{"className":1153,"style":1154},[401],"height:0.8141em;",[385,1156,1158,1161],{"className":1157},[406],[385,1159,418],{"className":1160},[406,407],[385,1162,1164],{"className":1163},[1069],[385,1165,1167],{"className":1166},[1073],[385,1168,1170],{"className":1169},[1077],[385,1171,1173],{"className":1172,"style":1154},[1081],[385,1174,1175,1178],{"style":1085},[385,1176],{"className":1177,"style":1090},[1089],[385,1179,1181],{"className":1180},[1094,1095,1096,1097],[385,1182,1184],{"className":1183},[406,1097],"2"," or better","? Because polynomials are\n",[455,1188,1189],{},"closed"," under the operations we constantly perform: addition,\nmultiplication, and especially ",[447,1192,1193],{},"composition",". If a polynomial-time algorithm\ncalls a polynomial-time subroutine a polynomial number of times, the whole\nthing is still polynomial. This closure is what makes ",[385,1196,1198],{"className":1197},[388],[385,1199,1201],{"className":1200,"ariaHidden":393},[392],[385,1202,1204,1207],{"className":1203},[397],[385,1205],{"className":1206,"style":474},[401],[385,1208,479],{"className":1209},[406,478]," stable: it\ndoes not depend on the particular machine model, the programming language, or\nwhether we count ",[385,1212,1214],{"className":1213},[388],[385,1215,1217],{"className":1216,"ariaHidden":393},[392],[385,1218,1220,1223],{"className":1219},[397],[385,1221],{"className":1222,"style":1154},[401],[385,1224,1226,1229],{"className":1225},[406],[385,1227,418],{"className":1228},[406,407],[385,1230,1232],{"className":1231},[1069],[385,1233,1235],{"className":1234},[1073],[385,1236,1238],{"className":1237},[1077],[385,1239,1241],{"className":1240,"style":1154},[1081],[385,1242,1243,1246],{"style":1085},[385,1244],{"className":1245,"style":1090},[1089],[385,1247,1249],{"className":1248},[1094,1095,1096,1097],[385,1250,1184],{"className":1251},[406,1097]," as ",[599,1254,1255],{},"fast."," Everything we have called efficient so far\n(sorting, shortest paths, matching, linear programming) lives in ",[385,1258,1260],{"className":1259},[388],[385,1261,1263],{"className":1262,"ariaHidden":393},[392],[385,1264,1266,1269],{"className":1265},[397],[385,1267],{"className":1268,"style":474},[401],[385,1270,479],{"className":1271},[406,478],".\nThe class is our formal stand-in for ",[599,1274,1275],{},"feasible.",[1277,1278,1279],"sup",{},[986,1280,1285],{"href":1281,"ariaDescribedBy":1282,"dataFootnoteRef":376,"id":1284},"#user-content-fn-clrs-p",[1283],"footnote-label","user-content-fnref-clrs-p","1",[502,1287,1289],{"id":1288},"the-class-np","The class NP",[381,1291,1292,1293,1296,1297,1313,1314,1317,1318,1321,1322,1325],{},"Now consider a problem like ",[455,1294,1295],{},"Hamiltonian Cycle",": given a graph ",[385,1298,1300],{"className":1299},[388],[385,1301,1303],{"className":1302,"ariaHidden":393},[392],[385,1304,1306,1309],{"className":1305},[397],[385,1307],{"className":1308,"style":589},[401],[385,1310,1312],{"className":1311},[406,407],"G",", is there\na cycle that visits every vertex exactly once? We know of no polynomial-time\nalgorithm to ",[447,1315,1316],{},"decide"," this. But notice an asymmetry. If a benevolent oracle\nhands us a cycle and claims it is Hamiltonian, we can ",[447,1319,1320],{},"check"," the claim in\nlinear time: walk the cycle, confirm it visits each vertex once and uses real\nedges. Finding the cycle seems hard; ",[455,1323,1324],{},"verifying"," a proposed cycle is easy.",[381,1327,1328,1329,1347,1348,1366,1367,1369,1370,1373],{},"This is the defining feature of the class ",[385,1330,1332],{"className":1331},[388],[385,1333,1335],{"className":1334,"ariaHidden":393},[392],[385,1336,1338,1341],{"className":1337},[397],[385,1339],{"className":1340,"style":474},[401],[385,1342,1344],{"className":1343},[406],[385,1345,499],{"className":1346},[406,478],": a problem is in\n",[385,1349,1351],{"className":1350},[388],[385,1352,1354],{"className":1353,"ariaHidden":393},[392],[385,1355,1357,1360],{"className":1356},[397],[385,1358],{"className":1359,"style":474},[401],[385,1361,1363],{"className":1362},[406],[385,1364,499],{"className":1365},[406,478]," if every ",[455,1368,515],{},"-instance has a short proof, a ",[455,1371,1372],{},"certificate",",\nthat can be checked quickly.",[522,1375,1376,1454],{"type":524},[381,1377,1378,576,1398,1416,1417,576,1420,1437,1438,1453],{},[455,1379,1008,1380,1024],{},[385,1381,1383],{"className":1382},[388],[385,1384,1386],{"className":1385,"ariaHidden":393},[392],[385,1387,1389,1392],{"className":1388},[397],[385,1390],{"className":1391,"style":474},[401],[385,1393,1395],{"className":1394},[406],[385,1396,499],{"className":1397},[406,478],[385,1399,1401],{"className":1400},[388],[385,1402,1404],{"className":1403,"ariaHidden":393},[392],[385,1405,1407,1410],{"className":1406},[397],[385,1408],{"className":1409,"style":474},[401],[385,1411,1413],{"className":1412},[406],[385,1414,499],{"className":1415},[406,478]," is the class of decision problems for which there exists a\npolynomial-time ",[455,1418,1419],{},"verifier",[385,1421,1423],{"className":1422},[388],[385,1424,1426],{"className":1425,"ariaHidden":393},[392],[385,1427,1429,1432],{"className":1428},[397],[385,1430],{"className":1431,"style":589},[401],[385,1433,1436],{"className":1434,"style":1435},[406,407],"margin-right:0.2222em;","V"," with the following property. For every input\n",[385,1439,1441],{"className":1440},[388],[385,1442,1444],{"className":1443,"ariaHidden":393},[392],[385,1445,1447,1450],{"className":1446},[397],[385,1448],{"className":1449,"style":615},[401],[385,1451,619],{"className":1452},[406,407],":",[1455,1456,1457,1540],"ul",{},[1458,1459,1460,1461,1463,1464,1482,1483,1505,1506,1539],"li",{},"if the answer is ",[455,1462,515],{},", then there exists a certificate ",[385,1465,1467],{"className":1466},[388],[385,1468,1470],{"className":1469,"ariaHidden":393},[392],[385,1471,1473,1477],{"className":1472},[397],[385,1474],{"className":1475,"style":1476},[401],"height:0.625em;vertical-align:-0.1944em;",[385,1478,1481],{"className":1479,"style":1480},[406,407],"margin-right:0.0359em;","y"," of length\npolynomial in ",[385,1484,1486],{"className":1485},[388],[385,1487,1489],{"className":1488,"ariaHidden":393},[392],[385,1490,1492,1495,1499,1502],{"className":1491},[397],[385,1493],{"className":1494,"style":402},[401],[385,1496,1498],{"className":1497},[406],"∣",[385,1500,619],{"className":1501},[406,407],[385,1503,1498],{"className":1504},[406]," such that ",[385,1507,1509],{"className":1508},[388],[385,1510,1512],{"className":1511,"ariaHidden":393},[392],[385,1513,1515,1518,1521,1524,1527,1530,1533,1536],{"className":1514},[397],[385,1516],{"className":1517,"style":402},[401],[385,1519,1436],{"className":1520,"style":1435},[406,407],[385,1522,414],{"className":1523},[413],[385,1525,619],{"className":1526},[406,407],[385,1528,558],{"className":1529},[557],[385,1531],{"className":1532,"style":423},[422],[385,1534,1481],{"className":1535,"style":1480},[406,407],[385,1537,444],{"className":1538},[443]," accepts;",[1458,1541,1460,1542,1544,1545,1548,1549,1564,1565,1598],{},[455,1543,519],{},", then for ",[447,1546,1547],{},"every"," string ",[385,1550,1552],{"className":1551},[388],[385,1553,1555],{"className":1554,"ariaHidden":393},[392],[385,1556,1558,1561],{"className":1557},[397],[385,1559],{"className":1560,"style":1476},[401],[385,1562,1481],{"className":1563,"style":1480},[406,407],", ",[385,1566,1568],{"className":1567},[388],[385,1569,1571],{"className":1570,"ariaHidden":393},[392],[385,1572,1574,1577,1580,1583,1586,1589,1592,1595],{"className":1573},[397],[385,1575],{"className":1576,"style":402},[401],[385,1578,1436],{"className":1579,"style":1435},[406,407],[385,1581,414],{"className":1582},[413],[385,1584,619],{"className":1585},[406,407],[385,1587,558],{"className":1588},[557],[385,1590],{"className":1591,"style":423},[422],[385,1593,1481],{"className":1594,"style":1480},[406,407],[385,1596,444],{"className":1597},[443]," rejects.",[381,1600,1601,1602,1620,1621,1624,1625,1628,1629,1644,1645,1647,1648],{},"The name ",[385,1603,1605],{"className":1604},[388],[385,1606,1608],{"className":1607,"ariaHidden":393},[392],[385,1609,1611,1614],{"className":1610},[397],[385,1612],{"className":1613,"style":474},[401],[385,1615,1617],{"className":1616},[406],[385,1618,499],{"className":1619},[406,478]," stands for ",[455,1622,1623],{},"nondeterministic polynomial time",": one can\nequivalently picture a machine that ",[447,1626,1627],{},"guesses"," the certificate ",[385,1630,1632],{"className":1631},[388],[385,1633,1635],{"className":1634,"ariaHidden":393},[392],[385,1636,1638,1641],{"className":1637},[397],[385,1639],{"className":1640,"style":1476},[401],[385,1642,1481],{"className":1643,"style":1480},[406,407]," and then\nverifies it. The verifier definition avoids speaking of magical guessing; it\nasks only that correct ",[455,1646,515],{},"-answers come with checkable evidence.",[1277,1649,1650],{},[986,1651,1184],{"href":1652,"ariaDescribedBy":1653,"dataFootnoteRef":376,"id":1654},"#user-content-fn-clrs-np",[1283],"user-content-fnref-clrs-np",[381,1656,1657],{},"Three points deserve emphasis.",[1455,1659,1660,1700,1788],{},[1458,1661,1662,1663,1666,1667,1670,1671,1674,1675,1699],{},"The certificate must be ",[455,1664,1665],{},"short"," (polynomial length) and the check must be\n",[455,1668,1669],{},"fast"," (polynomial time). For Hamiltonian Cycle the certificate is the\ncycle; for ",[455,1672,1673],{},"SAT"," (is a boolean formula satisfiable?) it is a satisfying\nassignment; for ",[385,1676,1678],{"className":1677},[388],[385,1679,1681],{"className":1680,"ariaHidden":393},[392],[385,1682,1684,1687],{"className":1683},[397],[385,1685],{"className":1686,"style":474},[401],[385,1688,1692],{"className":1689},[1690,1691],"enclosing","textsc",[385,1693,1695],{"className":1694},[406,550],[385,1696,1698],{"className":1697},[406],"Subset-Sum"," it is the subset that hits the target.",[1458,1701,1702,1703,973,1705,1707,1708,1726,1727,1729,1730,1732,1733,1739,1740,1758,1759,520],{},"The asymmetry between ",[455,1704,515],{},[455,1706,519],{}," is real. ",[385,1709,1711],{"className":1710},[388],[385,1712,1714],{"className":1713,"ariaHidden":393},[392],[385,1715,1717,1720],{"className":1716},[397],[385,1718],{"className":1719,"style":474},[401],[385,1721,1723],{"className":1722},[406],[385,1724,499],{"className":1725},[406,478]," guarantees a\ncertificate only for ",[455,1728,515],{},"-instances. The problem of certifying a ",[455,1731,519],{},"\n(",[599,1734,1735,1736,1738],{},"there is ",[447,1737,519],{}," Hamiltonian cycle",") need not be in ",[385,1741,1743],{"className":1742},[388],[385,1744,1746],{"className":1745,"ariaHidden":393},[392],[385,1747,1749,1752],{"className":1748},[397],[385,1750],{"className":1751,"style":474},[401],[385,1753,1755],{"className":1754},[406],[385,1756,499],{"className":1757},[406,478],"; that\nbelongs to a companion class, ",[385,1760,1762],{"className":1761},[388],[385,1763,1765],{"className":1764,"ariaHidden":393},[392],[385,1766,1768,1771],{"className":1767},[397],[385,1769],{"className":1770,"style":474},[401],[385,1772,1774,1778,1785],{"className":1773},[406],[385,1775,1777],{"className":1776},[406,478],"co",[385,1779,1781],{"className":1780},[406,550],[385,1782,1784],{"className":1783},[406],"-",[385,1786,499],{"className":1787},[406,478],[1458,1789,1790,1791,1806,1807,1825,1826,1829,1830,520],{},"Every problem in ",[385,1792,1794],{"className":1793},[388],[385,1795,1797],{"className":1796,"ariaHidden":393},[392],[385,1798,1800,1803],{"className":1799},[397],[385,1801],{"className":1802,"style":474},[401],[385,1804,479],{"className":1805},[406,478]," is in ",[385,1808,1810],{"className":1809},[388],[385,1811,1813],{"className":1812,"ariaHidden":393},[392],[385,1814,1816,1819],{"className":1815},[397],[385,1817],{"className":1818,"style":474},[401],[385,1820,1822],{"className":1821},[406],[385,1823,499],{"className":1824},[406,478],". If we can ",[447,1827,1828],{},"solve"," a problem\nin polynomial time, we can ignore any offered certificate and just decide the\nanswer directly; an empty certificate suffices. So ",[385,1831,1833],{"className":1832},[388],[385,1834,1836,1856],{"className":1835,"ariaHidden":393},[392],[385,1837,1839,1843,1846,1849,1853],{"className":1838},[397],[385,1840],{"className":1841,"style":1842},[401],"height:0.8304em;vertical-align:-0.136em;",[385,1844,479],{"className":1845},[406,478],[385,1847],{"className":1848,"style":640},[422],[385,1850,1852],{"className":1851},[644],"⊆",[385,1854],{"className":1855,"style":640},[422],[385,1857,1859,1862],{"className":1858},[397],[385,1860],{"className":1861,"style":474},[401],[385,1863,1865],{"className":1864},[406],[385,1866,499],{"className":1867},[406,478],[724,1869,1871,2127],{"className":1870},[727,728],[730,1872,1876],{"xmlns":732,"width":1873,"height":1874,"viewBox":1875},"416.745","122.344","-75 -75 312.559 91.758",[737,1877,1878,1894,1909,1912,1945,1989,2028,2031,2034,2037,2041,2050,2058],{"stroke":739,"style":740},[737,1879,1881,1888],{"stroke":747,"fontSize":1880},"9",[737,1882,1884],{"transform":1883},"translate(-14.955 -32.007)",[745,1885],{"d":1886,"fill":739,"stroke":739,"className":1887,"style":760},"M-36.197-23.700L-38.183-23.700L-38.183-24.016Q-37.876-24.016-37.685-24.069Q-37.493-24.122-37.493-24.311L-37.493-26.759Q-37.493-27.005-37.559-27.110Q-37.625-27.216-37.751-27.240Q-37.876-27.264-38.148-27.264L-38.148-27.580L-36.817-27.677L-36.817-24.311Q-36.817-24.117-36.652-24.067Q-36.487-24.016-36.197-24.016L-36.197-23.700M-37.797-29.224Q-37.797-29.430-37.647-29.580Q-37.498-29.729-37.296-29.729Q-37.164-29.729-37.047-29.659Q-36.931-29.589-36.861-29.472Q-36.790-29.356-36.790-29.224Q-36.790-29.022-36.940-28.872Q-37.089-28.723-37.296-28.723Q-37.498-28.723-37.647-28.872Q-37.797-29.022-37.797-29.224M-33.538-23.700L-35.626-23.700L-35.626-24.016Q-35.318-24.016-35.127-24.069Q-34.936-24.122-34.936-24.311L-34.936-26.759Q-34.936-27-35.006-27.108Q-35.076-27.216-35.210-27.240Q-35.345-27.264-35.626-27.264L-35.626-27.580L-34.285-27.677L-34.285-26.842Q-34.088-27.224-33.734-27.451Q-33.380-27.677-32.954-27.677Q-31.675-27.677-31.675-26.464L-31.675-24.311Q-31.675-24.122-31.484-24.069Q-31.293-24.016-30.985-24.016L-30.985-23.700L-33.073-23.700L-33.073-24.016Q-32.761-24.016-32.569-24.069Q-32.378-24.122-32.378-24.311L-32.378-26.429Q-32.378-26.688-32.422-26.910Q-32.466-27.132-32.611-27.275Q-32.756-27.418-33.015-27.418Q-33.358-27.418-33.639-27.229Q-33.921-27.040-34.077-26.728Q-34.233-26.416-34.233-26.069L-34.233-24.311Q-34.233-24.122-34.039-24.069Q-33.846-24.016-33.538-24.016L-33.538-23.700M-28.449-21.955L-30.537-21.955L-30.537-22.267Q-30.225-22.267-30.034-22.318Q-29.843-22.368-29.843-22.566L-29.843-26.904Q-29.843-27.145-30.016-27.205Q-30.190-27.264-30.537-27.264L-30.537-27.580L-29.166-27.677L-29.166-27.137Q-28.907-27.405-28.573-27.541Q-28.239-27.677-27.869-27.677Q-27.470-27.677-27.114-27.510Q-26.758-27.343-26.503-27.062Q-26.248-26.781-26.105-26.416Q-25.962-26.051-25.962-25.642Q-25.962-25.080-26.239-24.614Q-26.516-24.148-26.991-23.874Q-27.465-23.599-28.014-23.599Q-28.326-23.599-28.616-23.733Q-28.907-23.867-29.139-24.113L-29.139-22.566Q-29.139-22.368-28.948-22.318Q-28.757-22.267-28.449-22.267L-28.449-21.955M-29.139-26.723L-29.139-24.592Q-28.981-24.267-28.698-24.065Q-28.414-23.863-28.072-23.863Q-27.658-23.863-27.364-24.139Q-27.070-24.416-26.922-24.834Q-26.775-25.251-26.775-25.642Q-26.775-26.020-26.909-26.429Q-27.043-26.838-27.318-27.115Q-27.593-27.391-27.970-27.391Q-28.212-27.391-28.428-27.315Q-28.643-27.238-28.834-27.077Q-29.025-26.917-29.139-26.723M-24.661-24.772L-24.661-26.759Q-24.661-27-24.732-27.108Q-24.802-27.216-24.936-27.240Q-25.070-27.264-25.351-27.264L-25.351-27.580L-23.958-27.677L-23.958-24.807Q-23.958-24.429-23.912-24.243Q-23.866-24.056-23.695-23.959Q-23.523-23.863-23.167-23.863Q-22.833-23.863-22.594-24.054Q-22.354-24.245-22.229-24.548Q-22.104-24.851-22.104-25.168L-22.104-26.759Q-22.104-27-22.174-27.108Q-22.244-27.216-22.378-27.240Q-22.512-27.264-22.798-27.264L-22.798-27.580L-21.401-27.677L-21.401-24.517Q-21.401-24.280-21.330-24.172Q-21.260-24.065-21.126-24.041Q-20.992-24.016-20.711-24.016L-20.711-23.700L-22.077-23.599L-22.077-24.320Q-22.244-23.994-22.550-23.797Q-22.855-23.599-23.211-23.599Q-23.870-23.599-24.266-23.869Q-24.661-24.139-24.661-24.772M-19.577-24.772L-19.577-27.264L-20.342-27.264L-20.342-27.523Q-19.937-27.523-19.671-27.789Q-19.406-28.055-19.285-28.455Q-19.164-28.855-19.164-29.237L-18.874-29.237L-18.874-27.580L-17.586-27.580L-17.586-27.264L-18.874-27.264L-18.874-24.807Q-18.874-24.438-18.749-24.164Q-18.623-23.889-18.298-23.889Q-17.999-23.889-17.861-24.183Q-17.722-24.478-17.722-24.807L-17.722-25.330L-17.437-25.330L-17.437-24.772Q-17.437-24.495-17.547-24.223Q-17.657-23.950-17.870-23.775Q-18.083-23.599-18.364-23.599Q-18.724-23.599-18.997-23.737Q-19.269-23.876-19.423-24.139Q-19.577-24.403-19.577-24.772",[759],[737,1889,1890],{"transform":1883},[745,1891],{"d":1892,"fill":739,"stroke":739,"className":1893,"style":760},"M-13.096-23.990Q-12.920-23.863-12.647-23.863Q-12.357-23.863-12.144-24.117Q-11.931-24.372-11.852-24.689L-11.448-26.302Q-11.360-26.679-11.360-26.868Q-11.360-27.093-11.487-27.255Q-11.615-27.418-11.834-27.418Q-12.252-27.418-12.584-27.068Q-12.915-26.719-13.034-26.266Q-13.052-26.183-13.122-26.183L-13.232-26.183Q-13.320-26.183-13.320-26.302Q-13.188-26.842-12.766-27.260Q-12.344-27.677-11.817-27.677Q-11.483-27.677-11.208-27.506Q-10.933-27.334-10.819-27.040Q-10.661-27.312-10.415-27.495Q-10.169-27.677-9.883-27.677Q-9.545-27.677-9.272-27.510Q-9-27.343-9-27.022Q-9-26.794-9.143-26.625Q-9.285-26.455-9.523-26.455Q-9.663-26.455-9.769-26.548Q-9.874-26.640-9.874-26.785Q-9.874-26.970-9.751-27.112Q-9.628-27.255-9.444-27.290Q-9.624-27.418-9.901-27.418Q-10.191-27.418-10.402-27.161Q-10.613-26.904-10.692-26.587L-11.096-24.979Q-11.188-24.618-11.188-24.421Q-11.188-24.188-11.059-24.025Q-10.929-23.863-10.700-23.863Q-10.415-23.863-10.167-24.032Q-9.918-24.201-9.745-24.473Q-9.571-24.746-9.505-25.014Q-9.496-25.045-9.472-25.069Q-9.448-25.093-9.413-25.093L-9.307-25.093Q-9.268-25.093-9.242-25.056Q-9.215-25.018-9.215-24.979Q-9.303-24.632-9.523-24.313Q-9.742-23.994-10.059-23.797Q-10.375-23.599-10.718-23.599Q-11.056-23.599-11.331-23.768Q-11.606-23.937-11.729-24.241Q-11.878-23.972-12.127-23.786Q-12.375-23.599-12.656-23.599Q-12.999-23.599-13.273-23.766Q-13.548-23.933-13.548-24.258Q-13.548-24.482-13.399-24.654Q-13.249-24.825-13.016-24.825Q-12.871-24.825-12.768-24.733Q-12.665-24.640-12.665-24.491Q-12.665-24.315-12.788-24.168Q-12.911-24.021-13.096-23.990",[759],[737,1895,1896,1903],{"stroke":747,"fontSize":1880},[737,1897,1899],{"transform":1898},"translate(-23.78 19.322)",[745,1900],{"d":1901,"fill":739,"stroke":739,"className":1902,"style":760},"M-36.179-23.599Q-36.729-23.599-37.188-23.878Q-37.647-24.157-37.915-24.627Q-38.183-25.097-38.183-25.642Q-38.183-26.055-38.034-26.433Q-37.885-26.811-37.610-27.106Q-37.335-27.400-36.966-27.567Q-36.597-27.734-36.179-27.734Q-35.845-27.734-35.525-27.668Q-35.204-27.602-34.975-27.416Q-34.747-27.229-34.747-26.904Q-34.747-26.728-34.874-26.600Q-35.002-26.473-35.178-26.473Q-35.362-26.473-35.492-26.598Q-35.621-26.723-35.621-26.904Q-35.621-27.040-35.547-27.152Q-35.472-27.264-35.340-27.317Q-35.648-27.444-36.179-27.444Q-36.615-27.444-36.883-27.167Q-37.151-26.890-37.263-26.475Q-37.375-26.060-37.375-25.642Q-37.375-25.212-37.236-24.810Q-37.098-24.408-36.803-24.148Q-36.509-23.889-36.070-23.889Q-35.648-23.889-35.345-24.139Q-35.041-24.390-34.936-24.799Q-34.927-24.829-34.903-24.854Q-34.879-24.878-34.848-24.878L-34.738-24.878Q-34.650-24.878-34.650-24.763Q-34.795-24.227-35.208-23.913Q-35.621-23.599-36.179-23.599M-32.075-23.599Q-32.633-23.599-33.106-23.882Q-33.578-24.166-33.853-24.643Q-34.127-25.119-34.127-25.673Q-34.127-26.069-33.984-26.444Q-33.842-26.820-33.585-27.108Q-33.327-27.396-32.969-27.565Q-32.611-27.734-32.207-27.734Q-31.662-27.734-31.291-27.497Q-30.919-27.260-30.732-26.842Q-30.546-26.425-30.546-25.888Q-30.546-25.836-30.570-25.798Q-30.594-25.761-30.642-25.761L-33.314-25.761L-33.314-25.682Q-33.314-24.935-33.002-24.412Q-32.690-23.889-31.991-23.889Q-31.587-23.889-31.266-24.146Q-30.946-24.403-30.823-24.807Q-30.805-24.887-30.721-24.887L-30.642-24.887Q-30.603-24.887-30.574-24.856Q-30.546-24.825-30.546-24.781L-30.546-24.746Q-30.651-24.403-30.873-24.144Q-31.095-23.885-31.409-23.742Q-31.723-23.599-32.075-23.599M-33.305-26.012L-31.192-26.012Q-31.192-26.280-31.244-26.526Q-31.297-26.772-31.418-26.994Q-31.539-27.216-31.737-27.343Q-31.934-27.471-32.207-27.471Q-32.550-27.471-32.802-27.246Q-33.055-27.022-33.180-26.684Q-33.305-26.346-33.305-26.012M-27.790-23.700L-30.023-23.700L-30.023-24.016Q-29.711-24.016-29.520-24.069Q-29.328-24.122-29.328-24.311L-29.328-26.759Q-29.328-27-29.399-27.108Q-29.469-27.216-29.603-27.240Q-29.737-27.264-30.023-27.264L-30.023-27.580L-28.709-27.677L-28.709-26.816Q-28.546-27.207-28.278-27.442Q-28.010-27.677-27.619-27.677Q-27.346-27.677-27.131-27.514Q-26.916-27.352-26.916-27.093Q-26.916-26.917-27.034-26.798Q-27.153-26.679-27.329-26.679Q-27.509-26.679-27.628-26.798Q-27.746-26.917-27.746-27.093Q-27.746-27.308-27.593-27.418L-27.610-27.418Q-27.988-27.418-28.221-27.156Q-28.454-26.895-28.553-26.508Q-28.652-26.121-28.652-25.761L-28.652-24.311Q-28.652-24.122-28.395-24.069Q-28.137-24.016-27.790-24.016L-27.790-23.700M-25.720-24.772L-25.720-27.264L-26.485-27.264L-26.485-27.523Q-26.081-27.523-25.815-27.789Q-25.549-28.055-25.428-28.455Q-25.307-28.855-25.307-29.237L-25.017-29.237L-25.017-27.580L-23.730-27.580L-23.730-27.264L-25.017-27.264L-25.017-24.807Q-25.017-24.438-24.892-24.164Q-24.767-23.889-24.442-23.889Q-24.143-23.889-24.004-24.183Q-23.866-24.478-23.866-24.807L-23.866-25.330L-23.580-25.330L-23.580-24.772Q-23.580-24.495-23.690-24.223Q-23.800-23.950-24.013-23.775Q-24.226-23.599-24.508-23.599Q-24.868-23.599-25.140-23.737Q-25.413-23.876-25.567-24.139Q-25.720-24.403-25.720-24.772M-20.772-23.700L-22.759-23.700L-22.759-24.016Q-22.451-24.016-22.260-24.069Q-22.069-24.122-22.069-24.311L-22.069-26.759Q-22.069-27.005-22.135-27.110Q-22.200-27.216-22.326-27.240Q-22.451-27.264-22.723-27.264L-22.723-27.580L-21.392-27.677L-21.392-24.311Q-21.392-24.117-21.227-24.067Q-21.062-24.016-20.772-24.016L-20.772-23.700M-22.372-29.224Q-22.372-29.430-22.222-29.580Q-22.073-29.729-21.871-29.729Q-21.739-29.729-21.623-29.659Q-21.506-29.589-21.436-29.472Q-21.366-29.356-21.366-29.224Q-21.366-29.022-21.515-28.872Q-21.664-28.723-21.871-28.723Q-22.073-28.723-22.222-28.872Q-22.372-29.022-22.372-29.224M-18.188-23.700L-20.249-23.700L-20.249-24.016Q-19.937-24.016-19.746-24.069Q-19.555-24.122-19.555-24.311L-19.555-27.264L-20.249-27.264L-20.249-27.580L-19.555-27.580L-19.555-28.648Q-19.555-28.995-19.353-29.266Q-19.151-29.536-18.836-29.703Q-18.522-29.870-18.158-29.958Q-17.793-30.046-17.476-30.046Q-17.191-30.046-16.929-29.934Q-16.668-29.822-16.496-29.608Q-16.325-29.395-16.325-29.110Q-16.325-28.925-16.455-28.795Q-16.584-28.666-16.764-28.666Q-16.945-28.666-17.074-28.795Q-17.204-28.925-17.204-29.110Q-17.204-29.281-17.101-29.402Q-16.997-29.523-16.826-29.549Q-16.962-29.668-17.153-29.725Q-17.345-29.782-17.547-29.782Q-17.889-29.782-18.204-29.637Q-18.518-29.492-18.713-29.226Q-18.909-28.960-18.909-28.613L-18.909-27.580L-17.683-27.580L-16.316-27.695L-16.316-24.311Q-16.316-24.122-16.123-24.069Q-15.929-24.016-15.622-24.016L-15.622-23.700L-17.683-23.700L-17.683-24.016Q-17.375-24.016-17.182-24.069Q-16.989-24.122-16.989-24.311L-16.989-26.776Q-16.989-27.027-17.046-27.132Q-17.103-27.238-17.331-27.264L-18.878-27.264L-18.878-24.311Q-18.878-24.122-18.687-24.069Q-18.496-24.016-18.188-24.016L-18.188-23.700M-13.051-23.599Q-13.600-23.599-14.060-23.878Q-14.519-24.157-14.787-24.627Q-15.055-25.097-15.055-25.642Q-15.055-26.055-14.906-26.433Q-14.756-26.811-14.481-27.106Q-14.207-27.400-13.838-27.567Q-13.469-27.734-13.051-27.734Q-12.717-27.734-12.396-27.668Q-12.075-27.602-11.847-27.416Q-11.618-27.229-11.618-26.904Q-11.618-26.728-11.746-26.600Q-11.873-26.473-12.049-26.473Q-12.234-26.473-12.363-26.598Q-12.493-26.723-12.493-26.904Q-12.493-27.040-12.418-27.152Q-12.344-27.264-12.212-27.317Q-12.519-27.444-13.051-27.444Q-13.486-27.444-13.754-27.167Q-14.022-26.890-14.134-26.475Q-14.246-26.060-14.246-25.642Q-14.246-25.212-14.108-24.810Q-13.970-24.408-13.675-24.148Q-13.381-23.889-12.941-23.889Q-12.519-23.889-12.216-24.139Q-11.913-24.390-11.807-24.799Q-11.799-24.829-11.774-24.854Q-11.750-24.878-11.720-24.878L-11.610-24.878Q-11.522-24.878-11.522-24.763Q-11.667-24.227-12.080-23.913Q-12.493-23.599-13.051-23.599M-10.889-24.610Q-10.889-25.150-10.456-25.484Q-10.023-25.818-9.417-25.957Q-8.810-26.095-8.279-26.095L-8.279-26.429Q-8.279-26.688-8.397-26.932Q-8.516-27.176-8.725-27.323Q-8.933-27.471-9.206-27.471Q-9.768-27.471-10.080-27.273Q-9.931-27.246-9.839-27.128Q-9.746-27.009-9.746-26.851Q-9.746-26.675-9.872-26.545Q-9.997-26.416-10.177-26.416Q-10.366-26.416-10.493-26.543Q-10.621-26.671-10.621-26.851Q-10.621-27.321-10.181-27.528Q-9.742-27.734-9.206-27.734Q-8.916-27.734-8.628-27.646Q-8.340-27.558-8.107-27.398Q-7.874-27.238-7.725-26.998Q-7.575-26.759-7.575-26.464L-7.575-24.429Q-7.575-24.276-7.501-24.137Q-7.426-23.999-7.281-23.999Q-7.127-23.999-7.055-24.135Q-6.982-24.271-6.982-24.429L-6.982-25.005L-6.697-25.005L-6.697-24.429Q-6.697-24.096-6.945-23.871Q-7.193-23.647-7.523-23.647Q-7.782-23.647-7.964-23.841Q-8.147-24.034-8.191-24.311Q-8.358-23.990-8.692-23.794Q-9.026-23.599-9.395-23.599Q-9.949-23.599-10.419-23.847Q-10.889-24.096-10.889-24.610M-10.133-24.610Q-10.133-24.298-9.891-24.080Q-9.650-23.863-9.333-23.863Q-8.898-23.863-8.588-24.172Q-8.279-24.482-8.279-24.913L-8.279-25.840Q-8.696-25.840-9.122-25.713Q-9.549-25.585-9.841-25.308Q-10.133-25.032-10.133-24.610M-5.703-24.772L-5.703-27.264L-6.468-27.264L-6.468-27.523Q-6.064-27.523-5.798-27.789Q-5.532-28.055-5.411-28.455Q-5.290-28.855-5.290-29.237L-5-29.237L-5-27.580L-3.713-27.580L-3.713-27.264L-5-27.264L-5-24.807Q-5-24.438-4.875-24.164Q-4.750-23.889-4.425-23.889Q-4.126-23.889-3.987-24.183Q-3.849-24.478-3.849-24.807L-3.849-25.330L-3.563-25.330L-3.563-24.772Q-3.563-24.495-3.673-24.223Q-3.783-23.950-3.996-23.775Q-4.209-23.599-4.491-23.599Q-4.851-23.599-5.123-23.737Q-5.396-23.876-5.550-24.139Q-5.703-24.403-5.703-24.772M-0.738-23.599Q-1.296-23.599-1.768-23.882Q-2.241-24.166-2.515-24.643Q-2.790-25.119-2.790-25.673Q-2.790-26.069-2.647-26.444Q-2.504-26.820-2.247-27.108Q-1.990-27.396-1.632-27.565Q-1.274-27.734-0.869-27.734Q-0.324-27.734 0.047-27.497Q0.418-27.260 0.605-26.842Q0.792-26.425 0.792-25.888Q0.792-25.836 0.768-25.798Q0.743-25.761 0.695-25.761L-1.977-25.761L-1.977-25.682Q-1.977-24.935-1.665-24.412Q-1.353-23.889-0.654-23.889Q-0.250-23.889 0.071-24.146Q0.392-24.403 0.515-24.807Q0.532-24.887 0.616-24.887L0.695-24.887Q0.735-24.887 0.763-24.856Q0.792-24.825 0.792-24.781L0.792-24.746Q0.686-24.403 0.464-24.144Q0.242-23.885-0.072-23.742Q-0.386-23.599-0.738-23.599M-1.968-26.012L0.146-26.012Q0.146-26.280 0.093-26.526Q0.040-26.772-0.081-26.994Q-0.201-27.216-0.399-27.343Q-0.597-27.471-0.869-27.471Q-1.212-27.471-1.465-27.246Q-1.718-27.022-1.843-26.684Q-1.968-26.346-1.968-26.012",[759],[737,1904,1905],{"transform":1898},[745,1906],{"d":1907,"fill":739,"stroke":739,"className":1908,"style":760},"M5.046-22.404Q5.134-22.250 5.307-22.184Q5.481-22.118 5.683-22.118Q6.008-22.118 6.272-22.294Q6.536-22.470 6.718-22.740Q6.900-23.010 7.032-23.340Q7.164-23.669 7.239-23.968Q6.839-23.599 6.369-23.599Q6.004-23.599 5.740-23.726Q5.477-23.854 5.332-24.100Q5.187-24.346 5.187-24.698Q5.187-24.983 5.263-25.302Q5.340-25.620 5.455-25.921Q5.569-26.222 5.727-26.627Q5.846-26.912 5.846-27.145Q5.846-27.264 5.800-27.341Q5.753-27.418 5.648-27.418Q5.296-27.418 5.061-27.057Q4.826-26.697 4.721-26.266Q4.703-26.183 4.628-26.183L4.523-26.183Q4.475-26.183 4.453-26.222Q4.431-26.262 4.431-26.302Q4.519-26.644 4.679-26.950Q4.839-27.255 5.090-27.466Q5.340-27.677 5.666-27.677Q6.004-27.677 6.235-27.471Q6.465-27.264 6.465-26.921Q6.465-26.741 6.404-26.587Q6.373-26.499 6.221-26.104Q6.070-25.708 6-25.478Q5.929-25.247 5.883-25.023Q5.837-24.799 5.837-24.575Q5.837-24.276 5.967-24.069Q6.096-23.863 6.377-23.863Q6.953-23.863 7.384-24.557L8.061-27.264Q8.096-27.405 8.210-27.492Q8.324-27.580 8.465-27.580Q8.579-27.580 8.660-27.503Q8.742-27.427 8.742-27.308Q8.742-27.255 8.733-27.229L7.854-23.682Q7.727-23.195 7.401-22.777Q7.076-22.360 6.619-22.107Q6.162-21.854 5.674-21.854Q5.424-21.854 5.193-21.944Q4.962-22.034 4.820-22.215Q4.677-22.395 4.677-22.645Q4.677-22.896 4.824-23.074Q4.971-23.252 5.204-23.252Q5.349-23.252 5.452-23.159Q5.556-23.067 5.556-22.918Q5.556-22.716 5.404-22.560Q5.252-22.404 5.046-22.404",[759],[745,1910],{"fill":747,"d":1911},"M88.392-49.308H39.486a4 4 0 0 0-4 4v26.144a4 4 0 0 0 4 4h48.906a4 4 0 0 0 4-4v-26.144a4 4 0 0 0-4-4ZM35.486-15.164",[737,1913,1914,1921,1927,1933,1939],{"stroke":747,"fontSize":1880},[737,1915,1917],{"transform":1916},"translate(83.158 -.786)",[745,1918],{"d":1919,"fill":739,"stroke":739,"className":1920,"style":760},"M-36.152-34.718L-37.483-37.965Q-37.571-38.163-37.736-38.213Q-37.901-38.264-38.204-38.264L-38.204-38.580L-36.279-38.580L-36.279-38.264Q-36.771-38.264-36.771-38.049Q-36.771-38.027-36.754-37.965L-35.738-35.491L-34.829-37.715Q-34.794-37.798-34.794-37.895Q-34.794-38.066-34.917-38.165Q-35.040-38.264-35.207-38.264L-35.207-38.580L-33.695-38.580L-33.695-38.264Q-33.981-38.264-34.194-38.121Q-34.407-37.978-34.512-37.715L-35.747-34.718Q-35.791-34.599-35.919-34.599L-35.980-34.599Q-36.108-34.599-36.152-34.718",[759],[737,1922,1923],{"transform":1916},[745,1924],{"d":1925,"fill":739,"stroke":739,"className":1926,"style":760},"M-31.447-34.599Q-32.006-34.599-32.478-34.882Q-32.950-35.166-33.225-35.643Q-33.500-36.119-33.500-36.673Q-33.500-37.069-33.357-37.444Q-33.214-37.820-32.957-38.108Q-32.700-38.396-32.342-38.565Q-31.984-38.734-31.579-38.734Q-31.034-38.734-30.663-38.497Q-30.292-38.260-30.105-37.842Q-29.918-37.425-29.918-36.888Q-29.918-36.836-29.942-36.798Q-29.967-36.761-30.015-36.761L-32.687-36.761L-32.687-36.682Q-32.687-35.935-32.375-35.412Q-32.063-34.889-31.364-34.889Q-30.960-34.889-30.639-35.146Q-30.318-35.403-30.195-35.807Q-30.177-35.887-30.094-35.887L-30.015-35.887Q-29.975-35.887-29.947-35.856Q-29.918-35.825-29.918-35.781L-29.918-35.746Q-30.024-35.403-30.246-35.144Q-30.467-34.885-30.782-34.742Q-31.096-34.599-31.447-34.599M-32.678-37.012L-30.564-37.012Q-30.564-37.280-30.617-37.526Q-30.670-37.772-30.790-37.994Q-30.911-38.216-31.109-38.343Q-31.307-38.471-31.579-38.471Q-31.922-38.471-32.175-38.246Q-32.427-38.022-32.553-37.684Q-32.678-37.346-32.678-37.012M-27.163-34.700L-29.395-34.700L-29.395-35.016Q-29.083-35.016-28.892-35.069Q-28.701-35.122-28.701-35.311L-28.701-37.759Q-28.701-38-28.771-38.108Q-28.842-38.216-28.976-38.240Q-29.110-38.264-29.395-38.264L-29.395-38.580L-28.081-38.677L-28.081-37.816Q-27.919-38.207-27.651-38.442Q-27.383-38.677-26.991-38.677Q-26.719-38.677-26.504-38.514Q-26.288-38.352-26.288-38.093Q-26.288-37.917-26.407-37.798Q-26.526-37.679-26.701-37.679Q-26.882-37.679-27-37.798Q-27.119-37.917-27.119-38.093Q-27.119-38.308-26.965-38.418L-26.983-38.418Q-27.361-38.418-27.593-38.156Q-27.826-37.895-27.925-37.508Q-28.024-37.121-28.024-36.761L-28.024-35.311Q-28.024-35.122-27.767-35.069Q-27.510-35.016-27.163-35.016L-27.163-34.700M-23.735-34.700L-25.721-34.700L-25.721-35.016Q-25.414-35.016-25.223-35.069Q-25.031-35.122-25.031-35.311L-25.031-37.759Q-25.031-38.005-25.097-38.110Q-25.163-38.216-25.289-38.240Q-25.414-38.264-25.686-38.264L-25.686-38.580L-24.355-38.677L-24.355-35.311Q-24.355-35.117-24.190-35.067Q-24.025-35.016-23.735-35.016L-23.735-34.700M-25.335-40.224Q-25.335-40.430-25.185-40.580Q-25.036-40.729-24.834-40.729Q-24.702-40.729-24.585-40.659Q-24.469-40.589-24.399-40.472Q-24.328-40.356-24.328-40.224Q-24.328-40.022-24.478-39.872Q-24.627-39.723-24.834-39.723Q-25.036-39.723-25.185-39.872Q-25.335-40.022-25.335-40.224M-21.151-34.700L-23.212-34.700L-23.212-35.016Q-22.900-35.016-22.709-35.069Q-22.518-35.122-22.518-35.311L-22.518-38.264L-23.212-38.264L-23.212-38.580L-22.518-38.580L-22.518-39.648Q-22.518-39.995-22.316-40.266Q-22.113-40.536-21.799-40.703Q-21.485-40.870-21.120-40.958Q-20.756-41.046-20.439-41.046Q-20.154-41.046-19.892-40.934Q-19.631-40.822-19.459-40.608Q-19.288-40.395-19.288-40.110Q-19.288-39.925-19.417-39.795Q-19.547-39.666-19.727-39.666Q-19.907-39.666-20.037-39.795Q-20.167-39.925-20.167-40.110Q-20.167-40.281-20.063-40.402Q-19.960-40.523-19.789-40.549Q-19.925-40.668-20.116-40.725Q-20.307-40.782-20.509-40.782Q-20.852-40.782-21.166-40.637Q-21.481-40.492-21.676-40.226Q-21.872-39.960-21.872-39.613L-21.872-38.580L-20.646-38.580L-19.279-38.695L-19.279-35.311Q-19.279-35.122-19.086-35.069Q-18.892-35.016-18.585-35.016L-18.585-34.700L-20.646-34.700L-20.646-35.016Q-20.338-35.016-20.145-35.069Q-19.951-35.122-19.951-35.311L-19.951-37.776Q-19.951-38.027-20.009-38.132Q-20.066-38.238-20.294-38.264L-21.841-38.264L-21.841-35.311Q-21.841-35.122-21.650-35.069Q-21.459-35.016-21.151-35.016L-21.151-34.700M-16.014-34.599Q-16.572-34.599-17.044-34.882Q-17.517-35.166-17.791-35.643Q-18.066-36.119-18.066-36.673Q-18.066-37.069-17.923-37.444Q-17.780-37.820-17.523-38.108Q-17.266-38.396-16.908-38.565Q-16.550-38.734-16.146-38.734Q-15.601-38.734-15.229-38.497Q-14.858-38.260-14.671-37.842Q-14.485-37.425-14.485-36.888Q-14.485-36.836-14.509-36.798Q-14.533-36.761-14.581-36.761L-17.253-36.761L-17.253-36.682Q-17.253-35.935-16.941-35.412Q-16.629-34.889-15.930-34.889Q-15.526-34.889-15.205-35.146Q-14.884-35.403-14.761-35.807Q-14.744-35.887-14.660-35.887L-14.581-35.887Q-14.542-35.887-14.513-35.856Q-14.485-35.825-14.485-35.781L-14.485-35.746Q-14.590-35.403-14.812-35.144Q-15.034-34.885-15.348-34.742Q-15.662-34.599-16.014-34.599M-17.244-37.012L-15.131-37.012Q-15.131-37.280-15.183-37.526Q-15.236-37.772-15.357-37.994Q-15.478-38.216-15.676-38.343Q-15.873-38.471-16.146-38.471Q-16.488-38.471-16.741-38.246Q-16.994-38.022-17.119-37.684Q-17.244-37.346-17.244-37.012M-11.729-34.700L-13.962-34.700L-13.962-35.016Q-13.650-35.016-13.458-35.069Q-13.267-35.122-13.267-35.311L-13.267-37.759Q-13.267-38-13.338-38.108Q-13.408-38.216-13.542-38.240Q-13.676-38.264-13.962-38.264L-13.962-38.580L-12.648-38.677L-12.648-37.816Q-12.485-38.207-12.217-38.442Q-11.949-38.677-11.558-38.677Q-11.285-38.677-11.070-38.514Q-10.855-38.352-10.855-38.093Q-10.855-37.917-10.973-37.798Q-11.092-37.679-11.268-37.679Q-11.448-37.679-11.567-37.798Q-11.685-37.917-11.685-38.093Q-11.685-38.308-11.531-38.418L-11.549-38.418Q-11.927-38.418-12.160-38.156Q-12.393-37.895-12.492-37.508Q-12.591-37.121-12.591-36.761L-12.591-35.311Q-12.591-35.122-12.333-35.069Q-12.076-35.016-11.729-35.016",[759],[737,1928,1929],{"transform":1916},[745,1930],{"d":1931,"fill":739,"stroke":739,"className":1932,"style":760},"M-5.424-34.612L-6.233-40.351Q-6.299-40.532-6.883-40.532Q-6.989-40.532-6.989-40.650Q-6.989-40.848-6.826-40.848L-4.642-40.848Q-4.598-40.848-4.570-40.813Q-4.541-40.778-4.541-40.738Q-4.541-40.659-4.572-40.595Q-4.603-40.532-4.669-40.532Q-5.389-40.532-5.389-40.290L-4.721-35.575L-1.887-40Q-1.878-40.044-1.838-40.127Q-1.799-40.211-1.799-40.263Q-1.799-40.413-1.929-40.472Q-2.058-40.532-2.238-40.532Q-2.344-40.532-2.344-40.650Q-2.344-40.848-2.186-40.848L-0.494-40.848Q-0.454-40.848-0.423-40.813Q-0.393-40.778-0.393-40.738Q-0.393-40.668-0.426-40.600Q-0.459-40.532-0.520-40.532Q-1.184-40.532-1.588-39.921Q-1.601-39.908-1.606-39.905Q-1.610-39.903-1.619-39.894L-5.003-34.612Q-5.060-34.502-5.191-34.502L-5.288-34.502Q-5.336-34.502-5.376-34.531Q-5.416-34.559-5.424-34.612",[759],[737,1934,1935],{"transform":1916},[745,1936],{"d":1937,"fill":739,"stroke":739,"className":1938,"style":760},"M-36.153-21.955L-38.241-21.955L-38.241-22.267Q-37.928-22.267-37.737-22.318Q-37.546-22.368-37.546-22.566L-37.546-26.904Q-37.546-27.145-37.720-27.205Q-37.893-27.264-38.241-27.264L-38.241-27.580L-36.869-27.677L-36.869-27.137Q-36.610-27.405-36.276-27.541Q-35.942-27.677-35.573-27.677Q-35.173-27.677-34.817-27.510Q-34.461-27.343-34.206-27.062Q-33.951-26.781-33.809-26.416Q-33.666-26.051-33.666-25.642Q-33.666-25.080-33.943-24.614Q-34.220-24.148-34.694-23.874Q-35.169-23.599-35.718-23.599Q-36.030-23.599-36.320-23.733Q-36.610-23.867-36.843-24.113L-36.843-22.566Q-36.843-22.368-36.652-22.318Q-36.461-22.267-36.153-22.267L-36.153-21.955M-36.843-26.723L-36.843-24.592Q-36.685-24.267-36.401-24.065Q-36.118-23.863-35.775-23.863Q-35.362-23.863-35.068-24.139Q-34.773-24.416-34.626-24.834Q-34.479-25.251-34.479-25.642Q-34.479-26.020-34.613-26.429Q-34.747-26.838-35.022-27.115Q-35.296-27.391-35.674-27.391Q-35.916-27.391-36.131-27.315Q-36.346-27.238-36.538-27.077Q-36.729-26.917-36.843-26.723",[759],[737,1940,1941],{"transform":1916},[745,1942],{"d":1943,"fill":739,"stroke":739,"className":1944,"style":760},"M-32.836-25.607Q-32.836-26.174-32.563-26.662Q-32.291-27.150-31.821-27.442Q-31.350-27.734-30.783-27.734Q-30.362-27.734-29.986-27.565Q-29.610-27.396-29.333-27.104Q-29.056-26.811-28.898-26.416Q-28.740-26.020-28.740-25.607Q-28.740-25.058-29.019-24.596Q-29.298-24.135-29.766-23.867Q-30.234-23.599-30.783-23.599Q-31.337-23.599-31.807-23.867Q-32.278-24.135-32.557-24.596Q-32.836-25.058-32.836-25.607M-30.783-23.889Q-30.287-23.889-30.010-24.150Q-29.733-24.412-29.641-24.816Q-29.549-25.221-29.549-25.717Q-29.549-26.192-29.647-26.581Q-29.746-26.970-30.019-27.220Q-30.291-27.471-30.783-27.471Q-31.495-27.471-31.759-26.976Q-32.023-26.482-32.023-25.717Q-32.023-24.917-31.768-24.403Q-31.513-23.889-30.783-23.889M-26.108-23.700L-28.169-23.700L-28.169-24.016Q-27.861-24.016-27.670-24.069Q-27.479-24.122-27.479-24.311L-27.479-29.026Q-27.479-29.268-27.549-29.376Q-27.619-29.483-27.753-29.507Q-27.887-29.532-28.169-29.532L-28.169-29.848L-26.802-29.945L-26.802-24.311Q-26.802-24.122-26.609-24.069Q-26.415-24.016-26.108-24.016L-26.108-23.700M-25.233-22.223Q-25.066-22.118-24.886-22.118Q-24.561-22.118-24.324-22.362Q-24.086-22.606-23.937-22.953L-23.634-23.700L-25-26.965Q-25.093-27.163-25.255-27.213Q-25.418-27.264-25.721-27.264L-25.721-27.580L-23.796-27.580L-23.796-27.264Q-24.288-27.264-24.288-27.049Q-24.288-27.027-24.271-26.965L-23.264-24.575L-22.364-26.715Q-22.328-26.798-22.328-26.904Q-22.328-27.066-22.449-27.165Q-22.570-27.264-22.733-27.264L-22.733-27.580L-21.230-27.580L-21.230-27.264Q-21.515-27.264-21.729-27.121Q-21.942-26.978-22.047-26.715L-23.634-22.953Q-23.823-22.500-24.137-22.177Q-24.451-21.854-24.886-21.854Q-25.211-21.854-25.470-22.074Q-25.730-22.294-25.730-22.619Q-25.730-22.786-25.611-22.900Q-25.492-23.014-25.325-23.014Q-25.211-23.014-25.121-22.964Q-25.031-22.913-24.980-22.825Q-24.930-22.738-24.930-22.619Q-24.930-22.474-25.011-22.364Q-25.093-22.254-25.233-22.223M-18.466-25.348L-20.931-25.348L-20.931-25.941L-18.466-25.941L-18.466-25.348M-17.020-24.772L-17.020-27.264L-17.784-27.264L-17.784-27.523Q-17.380-27.523-17.114-27.789Q-16.848-28.055-16.728-28.455Q-16.607-28.855-16.607-29.237L-16.317-29.237L-16.317-27.580L-15.029-27.580L-15.029-27.264L-16.317-27.264L-16.317-24.807Q-16.317-24.438-16.191-24.164Q-16.066-23.889-15.741-23.889Q-15.442-23.889-15.304-24.183Q-15.165-24.478-15.165-24.807L-15.165-25.330L-14.880-25.330L-14.880-24.772Q-14.880-24.495-14.990-24.223Q-15.099-23.950-15.313-23.775Q-15.526-23.599-15.807-23.599Q-16.167-23.599-16.440-23.737Q-16.712-23.876-16.866-24.139Q-17.020-24.403-17.020-24.772M-12.072-23.700L-14.058-23.700L-14.058-24.016Q-13.750-24.016-13.559-24.069Q-13.368-24.122-13.368-24.311L-13.368-26.759Q-13.368-27.005-13.434-27.110Q-13.500-27.216-13.625-27.240Q-13.750-27.264-14.023-27.264L-14.023-27.580L-12.691-27.677L-12.691-24.311Q-12.691-24.117-12.526-24.067Q-12.362-24.016-12.072-24.016L-12.072-23.700M-13.671-29.224Q-13.671-29.430-13.522-29.580Q-13.372-29.729-13.170-29.729Q-13.038-29.729-12.922-29.659Q-12.805-29.589-12.735-29.472Q-12.665-29.356-12.665-29.224Q-12.665-29.022-12.814-28.872Q-12.964-28.723-13.170-28.723Q-13.372-28.723-13.522-28.872Q-13.671-29.022-13.671-29.224M-9.413-23.700L-11.500-23.700L-11.500-24.016Q-11.193-24.016-11.001-24.069Q-10.810-24.122-10.810-24.311L-10.810-26.759Q-10.810-27-10.881-27.108Q-10.951-27.216-11.085-27.240Q-11.219-27.264-11.500-27.264L-11.500-27.580L-10.160-27.677L-10.160-26.842Q-9.962-27.220-9.602-27.449Q-9.241-27.677-8.820-27.677Q-7.774-27.677-7.589-26.868Q-7.387-27.238-7.029-27.457Q-6.671-27.677-6.253-27.677Q-5.629-27.677-5.304-27.383Q-4.979-27.088-4.979-26.464L-4.979-24.311Q-4.979-24.122-4.785-24.069Q-4.592-24.016-4.284-24.016L-4.284-23.700L-6.372-23.700L-6.372-24.016Q-6.064-24.016-5.871-24.069Q-5.678-24.122-5.678-24.311L-5.678-26.429Q-5.678-26.860-5.805-27.139Q-5.932-27.418-6.319-27.418Q-6.662-27.418-6.945-27.229Q-7.229-27.040-7.385-26.728Q-7.541-26.416-7.541-26.069L-7.541-24.311Q-7.541-24.122-7.350-24.069Q-7.158-24.016-6.851-24.016L-6.851-23.700L-8.938-23.700L-8.938-24.016Q-8.626-24.016-8.435-24.069Q-8.244-24.122-8.244-24.311L-8.244-26.429Q-8.244-26.688-8.288-26.910Q-8.332-27.132-8.477-27.275Q-8.622-27.418-8.881-27.418Q-9.417-27.418-9.762-27.011Q-10.107-26.605-10.107-26.069L-10.107-24.311Q-10.107-24.122-9.914-24.069Q-9.720-24.016-9.413-24.016L-9.413-23.700M-1.784-23.599Q-2.342-23.599-2.814-23.882Q-3.287-24.166-3.562-24.643Q-3.836-25.119-3.836-25.673Q-3.836-26.069-3.693-26.444Q-3.551-26.820-3.293-27.108Q-3.036-27.396-2.678-27.565Q-2.320-27.734-1.916-27.734Q-1.371-27.734-1-27.497Q-0.628-27.260-0.441-26.842Q-0.255-26.425-0.255-25.888Q-0.255-25.836-0.279-25.798Q-0.303-25.761-0.351-25.761L-3.023-25.761L-3.023-25.682Q-3.023-24.935-2.711-24.412Q-2.399-23.889-1.700-23.889Q-1.296-23.889-0.975-24.146Q-0.655-24.403-0.532-24.807Q-0.514-24.887-0.430-24.887L-0.351-24.887Q-0.312-24.887-0.283-24.856Q-0.255-24.825-0.255-24.781L-0.255-24.746Q-0.360-24.403-0.582-24.144Q-0.804-23.885-1.118-23.742Q-1.432-23.599-1.784-23.599M-3.014-26.012L-0.901-26.012Q-0.901-26.280-0.953-26.526Q-1.006-26.772-1.127-26.994Q-1.248-27.216-1.446-27.343Q-1.643-27.471-1.916-27.471Q-2.259-27.471-2.511-27.246Q-2.764-27.022-2.889-26.684Q-3.014-26.346-3.014-26.012",[759],[737,1946,1947,1950],{"stroke":782},[745,1948],{"fill":747,"d":1949},"M230.089-72.07h-59.154a4 4 0 0 0-4 4v26.143a4 4 0 0 0 4 4h59.154a4 4 0 0 0 4-4V-68.07a4 4 0 0 0-4-4Zm-63.154 34.143",[737,1951,1952,1959,1965,1971,1977,1983],{"stroke":747,"fontSize":1880},[737,1953,1955],{"transform":1954},"translate(208.759 -23.905)",[745,1956],{"d":1957,"fill":739,"stroke":739,"className":1958,"style":760},"M-38.183-34.682L-38.183-36.124Q-38.183-36.155-38.155-36.179Q-38.126-36.203-38.095-36.203L-37.986-36.203Q-37.950-36.203-37.928-36.181Q-37.907-36.159-37.898-36.124Q-37.638-34.863-36.672-34.863Q-36.245-34.863-35.951-35.047Q-35.657-35.232-35.657-35.636Q-35.657-35.930-35.887-36.126Q-36.118-36.322-36.430-36.383L-37.032-36.502Q-37.498-36.590-37.841-36.873Q-38.183-37.157-38.183-37.596Q-38.183-38.189-37.746-38.462Q-37.309-38.734-36.672-38.734Q-36.193-38.734-35.845-38.488L-35.595-38.712Q-35.538-38.734-35.538-38.734L-35.485-38.734Q-35.459-38.734-35.426-38.708Q-35.393-38.681-35.393-38.651L-35.393-37.491Q-35.393-37.460-35.428-37.433Q-35.463-37.407-35.485-37.407L-35.595-37.407Q-35.617-37.407-35.650-37.436Q-35.683-37.464-35.683-37.491Q-35.683-37.956-35.949-38.227Q-36.215-38.497-36.680-38.497Q-37.085-38.497-37.388-38.352Q-37.691-38.207-37.691-37.851Q-37.691-37.605-37.474-37.451Q-37.256-37.297-36.979-37.240L-36.351-37.113Q-36.034-37.051-35.764-36.884Q-35.494-36.717-35.327-36.451Q-35.160-36.185-35.160-35.869Q-35.160-35.227-35.586-34.913Q-36.012-34.599-36.672-34.599Q-36.944-34.599-37.210-34.693Q-37.476-34.788-37.656-34.977L-37.977-34.638Q-37.994-34.599-38.043-34.599L-38.095-34.599Q-38.117-34.599-38.150-34.627Q-38.183-34.656-38.183-34.682M-34.589-36.607Q-34.589-37.174-34.316-37.662Q-34.044-38.150-33.574-38.442Q-33.103-38.734-32.536-38.734Q-32.115-38.734-31.739-38.565Q-31.363-38.396-31.086-38.104Q-30.809-37.811-30.651-37.416Q-30.493-37.020-30.493-36.607Q-30.493-36.058-30.772-35.596Q-31.051-35.135-31.519-34.867Q-31.987-34.599-32.536-34.599Q-33.090-34.599-33.560-34.867Q-34.031-35.135-34.310-35.596Q-34.589-36.058-34.589-36.607M-32.536-34.889Q-32.040-34.889-31.763-35.150Q-31.486-35.412-31.394-35.816Q-31.302-36.221-31.302-36.717Q-31.302-37.192-31.400-37.581Q-31.499-37.970-31.772-38.220Q-32.044-38.471-32.536-38.471Q-33.248-38.471-33.512-37.976Q-33.776-37.482-33.776-36.717Q-33.776-35.917-33.521-35.403Q-33.266-34.889-32.536-34.889M-27.843-34.700L-29.930-34.700L-29.930-35.016Q-29.623-35.016-29.432-35.069Q-29.241-35.122-29.241-35.311L-29.241-37.759Q-29.241-38-29.311-38.108Q-29.381-38.216-29.515-38.240Q-29.649-38.264-29.930-38.264L-29.930-38.580L-28.590-38.677L-28.590-37.842Q-28.392-38.220-28.032-38.449Q-27.672-38.677-27.250-38.677Q-26.204-38.677-26.019-37.868Q-25.817-38.238-25.459-38.457Q-25.101-38.677-24.683-38.677Q-24.059-38.677-23.734-38.383Q-23.409-38.088-23.409-37.464L-23.409-35.311Q-23.409-35.122-23.216-35.069Q-23.022-35.016-22.715-35.016L-22.715-34.700L-24.802-34.700L-24.802-35.016Q-24.494-35.016-24.301-35.069Q-24.108-35.122-24.108-35.311L-24.108-37.429Q-24.108-37.860-24.235-38.139Q-24.363-38.418-24.749-38.418Q-25.092-38.418-25.376-38.229Q-25.659-38.040-25.815-37.728Q-25.971-37.416-25.971-37.069L-25.971-35.311Q-25.971-35.122-25.780-35.069Q-25.589-35.016-25.281-35.016L-25.281-34.700L-27.368-34.700L-27.368-35.016Q-27.056-35.016-26.865-35.069Q-26.674-35.122-26.674-35.311L-26.674-37.429Q-26.674-37.688-26.718-37.910Q-26.762-38.132-26.907-38.275Q-27.052-38.418-27.311-38.418Q-27.847-38.418-28.192-38.011Q-28.537-37.605-28.537-37.069L-28.537-35.311Q-28.537-35.122-28.344-35.069Q-28.151-35.016-27.843-35.016L-27.843-34.700M-20.214-34.599Q-20.772-34.599-21.245-34.882Q-21.717-35.166-21.992-35.643Q-22.266-36.119-22.266-36.673Q-22.266-37.069-22.124-37.444Q-21.981-37.820-21.724-38.108Q-21.467-38.396-21.108-38.565Q-20.750-38.734-20.346-38.734Q-19.801-38.734-19.430-38.497Q-19.058-38.260-18.872-37.842Q-18.685-37.425-18.685-36.888Q-18.685-36.836-18.709-36.798Q-18.733-36.761-18.782-36.761L-21.453-36.761L-21.453-36.682Q-21.453-35.935-21.141-35.412Q-20.829-34.889-20.131-34.889Q-19.726-34.889-19.406-35.146Q-19.085-35.403-18.962-35.807Q-18.944-35.887-18.861-35.887L-18.782-35.887Q-18.742-35.887-18.713-35.856Q-18.685-35.825-18.685-35.781L-18.685-35.746Q-18.790-35.403-19.012-35.144Q-19.234-34.885-19.548-34.742Q-19.863-34.599-20.214-34.599M-21.445-37.012L-19.331-37.012Q-19.331-37.280-19.384-37.526Q-19.436-37.772-19.557-37.994Q-19.678-38.216-19.876-38.343Q-20.074-38.471-20.346-38.471Q-20.689-38.471-20.941-38.246Q-21.194-38.022-21.319-37.684Q-21.445-37.346-21.445-37.012",[759],[737,1960,1961],{"transform":1954},[745,1962],{"d":1963,"fill":739,"stroke":739,"className":1964,"style":760},"M-14.454-33.404Q-14.366-33.250-14.193-33.184Q-14.019-33.118-13.817-33.118Q-13.492-33.118-13.228-33.294Q-12.964-33.470-12.782-33.740Q-12.600-34.010-12.468-34.340Q-12.336-34.669-12.261-34.968Q-12.661-34.599-13.131-34.599Q-13.496-34.599-13.760-34.726Q-14.023-34.854-14.168-35.100Q-14.313-35.346-14.313-35.698Q-14.313-35.983-14.237-36.302Q-14.160-36.620-14.045-36.921Q-13.931-37.222-13.773-37.627Q-13.654-37.912-13.654-38.145Q-13.654-38.264-13.700-38.341Q-13.747-38.418-13.852-38.418Q-14.204-38.418-14.439-38.057Q-14.674-37.697-14.779-37.266Q-14.797-37.183-14.872-37.183L-14.977-37.183Q-15.025-37.183-15.047-37.222Q-15.069-37.262-15.069-37.302Q-14.981-37.644-14.821-37.950Q-14.661-38.255-14.410-38.466Q-14.160-38.677-13.834-38.677Q-13.496-38.677-13.265-38.471Q-13.035-38.264-13.035-37.921Q-13.035-37.741-13.096-37.587Q-13.127-37.499-13.279-37.104Q-13.430-36.708-13.500-36.478Q-13.571-36.247-13.617-36.023Q-13.663-35.799-13.663-35.575Q-13.663-35.276-13.533-35.069Q-13.404-34.863-13.123-34.863Q-12.547-34.863-12.116-35.557L-11.439-38.264Q-11.404-38.405-11.290-38.492Q-11.176-38.580-11.035-38.580Q-10.921-38.580-10.840-38.503Q-10.758-38.427-10.758-38.308Q-10.758-38.255-10.767-38.229L-11.646-34.682Q-11.773-34.195-12.099-33.777Q-12.424-33.360-12.881-33.107Q-13.338-32.854-13.826-32.854Q-14.076-32.854-14.307-32.944Q-14.538-33.034-14.680-33.215Q-14.823-33.395-14.823-33.645Q-14.823-33.896-14.676-34.074Q-14.529-34.252-14.296-34.252Q-14.151-34.252-14.048-34.159Q-13.944-34.067-13.944-33.918Q-13.944-33.716-14.096-33.560Q-14.248-33.404-14.454-33.404",[759],[737,1966,1967],{"transform":1954},[745,1968],{"d":1969,"fill":739,"stroke":739,"className":1970,"style":760},"M-6.981-35.610Q-6.981-36.150-6.548-36.484Q-6.115-36.818-5.509-36.957Q-4.902-37.095-4.371-37.095L-4.371-37.429Q-4.371-37.688-4.489-37.932Q-4.608-38.176-4.817-38.323Q-5.025-38.471-5.298-38.471Q-5.860-38.471-6.172-38.273Q-6.023-38.246-5.931-38.128Q-5.838-38.009-5.838-37.851Q-5.838-37.675-5.964-37.545Q-6.089-37.416-6.269-37.416Q-6.458-37.416-6.585-37.543Q-6.713-37.671-6.713-37.851Q-6.713-38.321-6.273-38.528Q-5.834-38.734-5.298-38.734Q-5.008-38.734-4.720-38.646Q-4.432-38.558-4.199-38.398Q-3.966-38.238-3.817-37.998Q-3.667-37.759-3.667-37.464L-3.667-35.429Q-3.667-35.276-3.593-35.137Q-3.518-34.999-3.373-34.999Q-3.219-34.999-3.147-35.135Q-3.074-35.271-3.074-35.429L-3.074-36.005L-2.788-36.005L-2.788-35.429Q-2.788-35.096-3.037-34.871Q-3.285-34.647-3.615-34.647Q-3.874-34.647-4.056-34.841Q-4.239-35.034-4.283-35.311Q-4.450-34.990-4.784-34.794Q-5.118-34.599-5.487-34.599Q-6.040-34.599-6.511-34.847Q-6.981-35.096-6.981-35.610M-6.225-35.610Q-6.225-35.298-5.983-35.080Q-5.742-34.863-5.425-34.863Q-4.990-34.863-4.680-35.172Q-4.371-35.482-4.371-35.913L-4.371-36.840Q-4.788-36.840-5.214-36.713Q-5.641-36.585-5.933-36.308Q-6.225-36.032-6.225-35.610M-0.420-34.599Q-0.969-34.599-1.428-34.878Q-1.888-35.157-2.156-35.627Q-2.424-36.097-2.424-36.642Q-2.424-37.055-2.274-37.433Q-2.125-37.811-1.850-38.106Q-1.576-38.400-1.206-38.567Q-0.837-38.734-0.420-38.734Q-0.086-38.734 0.235-38.668Q0.556-38.602 0.784-38.416Q1.013-38.229 1.013-37.904Q1.013-37.728 0.885-37.600Q0.758-37.473 0.582-37.473Q0.398-37.473 0.268-37.598Q0.138-37.723 0.138-37.904Q0.138-38.040 0.213-38.152Q0.288-38.264 0.420-38.317Q0.112-38.444-0.420-38.444Q-0.855-38.444-1.123-38.167Q-1.391-37.890-1.503-37.475Q-1.615-37.060-1.615-36.642Q-1.615-36.212-1.477-35.810Q-1.338-35.408-1.044-35.148Q-0.749-34.889-0.310-34.889Q0.112-34.889 0.415-35.139Q0.718-35.390 0.824-35.799Q0.833-35.829 0.857-35.854Q0.881-35.878 0.912-35.878L1.022-35.878Q1.109-35.878 1.109-35.763Q0.964-35.227 0.551-34.913Q0.138-34.599-0.420-34.599M3.685-34.599Q3.135-34.599 2.676-34.878Q2.217-35.157 1.949-35.627Q1.681-36.097 1.681-36.642Q1.681-37.055 1.830-37.433Q1.980-37.811 2.254-38.106Q2.529-38.400 2.898-38.567Q3.267-38.734 3.685-38.734Q4.019-38.734 4.339-38.668Q4.660-38.602 4.889-38.416Q5.117-38.229 5.117-37.904Q5.117-37.728 4.990-37.600Q4.862-37.473 4.687-37.473Q4.502-37.473 4.372-37.598Q4.243-37.723 4.243-37.904Q4.243-38.040 4.317-38.152Q4.392-38.264 4.524-38.317Q4.216-38.444 3.685-38.444Q3.250-38.444 2.982-38.167Q2.713-37.890 2.601-37.475Q2.489-37.060 2.489-36.642Q2.489-36.212 2.628-35.810Q2.766-35.408 3.061-35.148Q3.355-34.889 3.795-34.889Q4.216-34.889 4.520-35.139Q4.823-35.390 4.928-35.799Q4.937-35.829 4.961-35.854Q4.985-35.878 5.016-35.878L5.126-35.878Q5.214-35.878 5.214-35.763Q5.069-35.227 4.656-34.913Q4.243-34.599 3.685-34.599M7.789-34.599Q7.231-34.599 6.759-34.882Q6.286-35.166 6.012-35.643Q5.737-36.119 5.737-36.673Q5.737-37.069 5.880-37.444Q6.023-37.820 6.280-38.108Q6.537-38.396 6.895-38.565Q7.253-38.734 7.657-38.734Q8.202-38.734 8.574-38.497Q8.945-38.260 9.132-37.842Q9.318-37.425 9.318-36.888Q9.318-36.836 9.294-36.798Q9.270-36.761 9.222-36.761L6.550-36.761L6.550-36.682Q6.550-35.935 6.862-35.412Q7.174-34.889 7.873-34.889Q8.277-34.889 8.598-35.146Q8.919-35.403 9.042-35.807Q9.059-35.887 9.143-35.887L9.222-35.887Q9.261-35.887 9.290-35.856Q9.318-35.825 9.318-35.781L9.318-35.746Q9.213-35.403 8.991-35.144Q8.769-34.885 8.455-34.742Q8.141-34.599 7.789-34.599M6.559-37.012L8.672-37.012Q8.672-37.280 8.620-37.526Q8.567-37.772 8.446-37.994Q8.325-38.216 8.128-38.343Q7.930-38.471 7.657-38.471Q7.315-38.471 7.062-38.246Q6.809-38.022 6.684-37.684Q6.559-37.346 6.559-37.012M11.929-32.955L9.841-32.955L9.841-33.267Q10.153-33.267 10.345-33.318Q10.536-33.368 10.536-33.566L10.536-37.904Q10.536-38.145 10.362-38.205Q10.189-38.264 9.841-38.264L9.841-38.580L11.213-38.677L11.213-38.137Q11.472-38.405 11.806-38.541Q12.140-38.677 12.509-38.677Q12.909-38.677 13.265-38.510Q13.621-38.343 13.876-38.062Q14.130-37.781 14.273-37.416Q14.416-37.051 14.416-36.642Q14.416-36.080 14.139-35.614Q13.862-35.148 13.388-34.874Q12.913-34.599 12.364-34.599Q12.052-34.599 11.762-34.733Q11.472-34.867 11.239-35.113L11.239-33.566Q11.239-33.368 11.430-33.318Q11.621-33.267 11.929-33.267L11.929-32.955M11.239-37.723L11.239-35.592Q11.397-35.267 11.681-35.065Q11.964-34.863 12.307-34.863Q12.720-34.863 13.014-35.139Q13.309-35.416 13.456-35.834Q13.603-36.251 13.603-36.642Q13.603-37.020 13.469-37.429Q13.335-37.838 13.060-38.115Q12.786-38.391 12.408-38.391Q12.166-38.391 11.951-38.315Q11.735-38.238 11.544-38.077Q11.353-37.917 11.239-37.723M15.664-35.772L15.664-38.264L14.900-38.264L14.900-38.523Q15.304-38.523 15.570-38.789Q15.836-39.055 15.956-39.455Q16.077-39.855 16.077-40.237L16.367-40.237L16.367-38.580L17.655-38.580L17.655-38.264L16.367-38.264L16.367-35.807Q16.367-35.438 16.493-35.164Q16.618-34.889 16.943-34.889Q17.242-34.889 17.380-35.183Q17.519-35.478 17.519-35.807L17.519-36.330L17.804-36.330L17.804-35.772Q17.804-35.495 17.694-35.223Q17.585-34.950 17.371-34.775Q17.158-34.599 16.877-34.599Q16.517-34.599 16.244-34.737Q15.972-34.876 15.818-35.139Q15.664-35.403 15.664-35.772M18.626-34.682L18.626-36.124Q18.626-36.155 18.655-36.179Q18.683-36.203 18.714-36.203L18.824-36.203Q18.859-36.203 18.881-36.181Q18.903-36.159 18.912-36.124Q19.171-34.863 20.138-34.863Q20.564-34.863 20.858-35.047Q21.153-35.232 21.153-35.636Q21.153-35.930 20.922-36.126Q20.692-36.322 20.379-36.383L19.777-36.502Q19.312-36.590 18.969-36.873Q18.626-37.157 18.626-37.596Q18.626-38.189 19.063-38.462Q19.501-38.734 20.138-38.734Q20.617-38.734 20.964-38.488L21.214-38.712Q21.272-38.734 21.272-38.734L21.324-38.734Q21.351-38.734 21.384-38.708Q21.417-38.681 21.417-38.651L21.417-37.491Q21.417-37.460 21.381-37.433Q21.346-37.407 21.324-37.407L21.214-37.407Q21.192-37.407 21.160-37.436Q21.127-37.464 21.127-37.491Q21.127-37.956 20.861-38.227Q20.595-38.497 20.129-38.497Q19.725-38.497 19.421-38.352Q19.118-38.207 19.118-37.851Q19.118-37.605 19.336-37.451Q19.553-37.297 19.830-37.240L20.459-37.113Q20.775-37.051 21.045-36.884Q21.316-36.717 21.483-36.451Q21.650-36.185 21.650-35.869Q21.650-35.227 21.223-34.913Q20.797-34.599 20.138-34.599Q19.865-34.599 19.599-34.693Q19.334-34.788 19.153-34.977L18.833-34.638Q18.815-34.599 18.767-34.599L18.714-34.599Q18.692-34.599 18.659-34.627Q18.626-34.656 18.626-34.682",[759],[737,1972,1973],{"transform":1954},[745,1974],{"d":1975,"fill":739,"stroke":739,"className":1976,"style":760},"M-14.372-24.843L-19.914-24.843Q-19.993-24.856-20.043-24.906Q-20.094-24.957-20.094-25.032Q-20.094-25.181-19.914-25.229L-13.959-25.229Q-13.695-25.436-13.375-25.627Q-13.054-25.818-12.751-25.950Q-13.410-26.227-13.959-26.671L-19.914-26.671Q-20.094-26.701-20.094-26.860Q-20.094-27.009-19.914-27.057L-14.372-27.057Q-14.596-27.295-14.935-27.754Q-15.273-28.213-15.273-28.363Q-15.273-28.398-15.238-28.433Q-15.203-28.468-15.163-28.468L-14.983-28.468Q-14.921-28.468-14.873-28.371Q-14.596-27.809-14.148-27.332Q-13.700-26.855-13.137-26.528Q-12.575-26.200-11.960-26.060Q-11.876-26.020-11.876-25.950Q-11.876-25.858-11.960-25.840Q-12.720-25.656-13.379-25.212Q-14.355-24.570-14.873-23.520Q-14.921-23.423-14.983-23.423L-15.163-23.423Q-15.207-23.423-15.240-23.456Q-15.273-23.489-15.273-23.529Q-15.273-23.634-15.102-23.900Q-14.930-24.166-14.722-24.429Q-14.513-24.693-14.372-24.843",[759],[737,1978,1979],{"transform":1954},[745,1980],{"d":1981,"fill":782,"stroke":782,"className":1982,"style":760},"M-7.598-22.223Q-7.431-22.118-7.251-22.118Q-6.926-22.118-6.689-22.362Q-6.451-22.606-6.302-22.953L-5.999-23.700L-7.365-26.965Q-7.458-27.163-7.620-27.213Q-7.783-27.264-8.086-27.264L-8.086-27.580L-6.161-27.580L-6.161-27.264Q-6.653-27.264-6.653-27.049Q-6.653-27.027-6.636-26.965L-5.629-24.575L-4.729-26.715Q-4.693-26.798-4.693-26.904Q-4.693-27.066-4.814-27.165Q-4.935-27.264-5.098-27.264L-5.098-27.580L-3.595-27.580L-3.595-27.264Q-3.880-27.264-4.094-27.121Q-4.307-26.978-4.412-26.715L-5.999-22.953Q-6.188-22.500-6.502-22.177Q-6.816-21.854-7.251-21.854Q-7.576-21.854-7.836-22.074Q-8.095-22.294-8.095-22.619Q-8.095-22.786-7.976-22.900Q-7.858-23.014-7.691-23.014Q-7.576-23.014-7.486-22.964Q-7.396-22.913-7.346-22.825Q-7.295-22.738-7.295-22.619Q-7.295-22.474-7.376-22.364Q-7.458-22.254-7.598-22.223",[759],[737,1984,1985],{"transform":1954},[745,1986],{"d":1987,"fill":782,"stroke":782,"className":1988,"style":760},"M-1.338-23.599Q-1.897-23.599-2.369-23.882Q-2.841-24.166-3.116-24.643Q-3.391-25.119-3.391-25.673Q-3.391-26.069-3.248-26.444Q-3.105-26.820-2.848-27.108Q-2.591-27.396-2.233-27.565Q-1.875-27.734-1.470-27.734Q-0.925-27.734-0.554-27.497Q-0.183-27.260 0.004-26.842Q0.191-26.425 0.191-25.888Q0.191-25.836 0.167-25.798Q0.142-25.761 0.094-25.761L-2.578-25.761L-2.578-25.682Q-2.578-24.935-2.266-24.412Q-1.954-23.889-1.255-23.889Q-0.851-23.889-0.530-24.146Q-0.209-24.403-0.086-24.807Q-0.068-24.887 0.015-24.887L0.094-24.887Q0.134-24.887 0.162-24.856Q0.191-24.825 0.191-24.781L0.191-24.746Q0.085-24.403-0.137-24.144Q-0.358-23.885-0.673-23.742Q-0.987-23.599-1.338-23.599M-2.569-26.012L-0.455-26.012Q-0.455-26.280-0.508-26.526Q-0.561-26.772-0.681-26.994Q-0.802-27.216-1-27.343Q-1.198-27.471-1.470-27.471Q-1.813-27.471-2.066-27.246Q-2.318-27.022-2.444-26.684Q-2.569-26.346-2.569-26.012M0.771-23.682L0.771-25.124Q0.771-25.155 0.799-25.179Q0.828-25.203 0.859-25.203L0.969-25.203Q1.004-25.203 1.026-25.181Q1.048-25.159 1.057-25.124Q1.316-23.863 2.283-23.863Q2.709-23.863 3.003-24.047Q3.298-24.232 3.298-24.636Q3.298-24.930 3.067-25.126Q2.836-25.322 2.524-25.383L1.922-25.502Q1.456-25.590 1.114-25.873Q0.771-26.157 0.771-26.596Q0.771-27.189 1.208-27.462Q1.645-27.734 2.283-27.734Q2.762-27.734 3.109-27.488L3.359-27.712Q3.416-27.734 3.416-27.734L3.469-27.734Q3.496-27.734 3.528-27.708Q3.561-27.681 3.561-27.651L3.561-26.491Q3.561-26.460 3.526-26.433Q3.491-26.407 3.469-26.407L3.359-26.407Q3.337-26.407 3.304-26.436Q3.271-26.464 3.271-26.491Q3.271-26.956 3.006-27.227Q2.740-27.497 2.274-27.497Q1.870-27.497 1.566-27.352Q1.263-27.207 1.263-26.851Q1.263-26.605 1.481-26.451Q1.698-26.297 1.975-26.240L2.603-26.113Q2.920-26.051 3.190-25.884Q3.460-25.717 3.627-25.451Q3.794-25.185 3.794-24.869Q3.794-24.227 3.368-23.913Q2.942-23.599 2.283-23.599Q2.010-23.599 1.744-23.693Q1.478-23.788 1.298-23.977L0.977-23.638Q0.960-23.599 0.912-23.599L0.859-23.599Q0.837-23.599 0.804-23.627Q0.771-23.656 0.771-23.682",[759],[737,1990,1992,1995],{"stroke":1991},"var(--tk-warn)",[745,1993],{"fill":747,"d":1994},"M229.35-20.855h-57.676a4 4 0 0 0-4 4V9.288a4 4 0 0 0 4 4h57.676a4 4 0 0 0 4-4v-26.143a4 4 0 0 0-4-4Zm-61.676 34.143",[737,1996,1997,2004,2010,2016,2022],{"stroke":747,"fontSize":1880},[737,1998,2000],{"transform":1999},"translate(209.498 28.428)",[745,2001],{"d":2002,"fill":739,"stroke":739,"className":2003,"style":760},"M-36.131-34.599Q-36.562-34.599-36.863-34.825Q-37.164-35.052-37.315-35.421Q-37.467-35.790-37.467-36.203Q-37.467-36.678-37.291-37.121Q-37.116-37.565-36.803-37.919Q-36.491-38.273-36.067-38.475Q-35.643-38.677-35.169-38.677Q-34.791-38.677-34.503-38.471Q-34.215-38.264-34.215-37.895Q-34.215-37.495-34.457-37.253Q-34.699-37.012-35.081-36.902Q-35.463-36.792-35.815-36.768Q-36.166-36.743-36.619-36.743L-36.654-36.743Q-36.790-36.181-36.790-35.825Q-36.790-35.588-36.724-35.372Q-36.658-35.157-36.505-35.010Q-36.351-34.863-36.114-34.863Q-35.788-34.863-35.472-34.975Q-35.156-35.087-34.883-35.289Q-34.611-35.491-34.422-35.755Q-34.400-35.790-34.351-35.790Q-34.290-35.790-34.226-35.726Q-34.162-35.662-34.162-35.601Q-34.162-35.570-34.189-35.535Q-34.514-35.082-35.041-34.841Q-35.569-34.599-36.131-34.599M-36.584-37.003Q-36.092-37.003-35.683-37.051Q-35.274-37.099-34.947-37.295Q-34.619-37.491-34.619-37.904Q-34.619-38.132-34.784-38.275Q-34.949-38.418-35.178-38.418Q-35.709-38.418-36.065-38.002Q-36.421-37.587-36.584-37.003M-32.840-35.706Q-32.840-35.908-32.787-36.174Q-32.734-36.440-32.677-36.614Q-32.620-36.787-32.508-37.093Q-32.396-37.398-32.308-37.627Q-32.180-37.965-32.180-38.185Q-32.180-38.418-32.352-38.418Q-32.906-38.418-33.187-37.266Q-33.204-37.183-33.279-37.183L-33.442-37.183Q-33.530-37.183-33.530-37.302Q-33.398-37.842-33.095-38.260Q-32.791-38.677-32.334-38.677Q-32.013-38.677-31.805-38.464Q-31.596-38.251-31.596-37.939Q-31.596-37.754-31.658-37.587Q-31.750-37.346-31.857-37.053Q-31.965-36.761-32.042-36.517Q-32.119-36.273-32.167-36.043Q-32.216-35.812-32.216-35.592Q-32.216-35.280-32.073-35.071Q-31.930-34.863-31.631-34.863Q-31.253-34.863-30.996-35.179Q-30.739-35.495-30.568-35.935Q-30.418-36.304-30.313-36.669Q-30.207-37.033-30.207-37.302Q-30.207-37.543-30.282-37.697Q-30.357-37.851-30.467-38.002Q-30.576-38.154-30.576-38.238Q-30.576-38.409-30.429-38.547Q-30.282-38.686-30.119-38.686Q-29.904-38.686-29.810-38.488Q-29.715-38.290-29.715-38.040Q-29.715-37.644-29.860-37.066Q-30.005-36.489-30.190-36.023Q-30.770-34.599-31.649-34.599Q-32.189-34.599-32.514-34.887Q-32.840-35.175-32.840-35.706M-27.632-34.599Q-28.063-34.599-28.364-34.825Q-28.665-35.052-28.816-35.421Q-28.968-35.790-28.968-36.203Q-28.968-36.678-28.792-37.121Q-28.616-37.565-28.304-37.919Q-27.992-38.273-27.568-38.475Q-27.144-38.677-26.670-38.677Q-26.292-38.677-26.004-38.471Q-25.716-38.264-25.716-37.895Q-25.716-37.495-25.958-37.253Q-26.199-37.012-26.582-36.902Q-26.964-36.792-27.316-36.768Q-27.667-36.743-28.120-36.743L-28.155-36.743Q-28.291-36.181-28.291-35.825Q-28.291-35.588-28.225-35.372Q-28.159-35.157-28.006-35.010Q-27.852-34.863-27.615-34.863Q-27.289-34.863-26.973-34.975Q-26.657-35.087-26.384-35.289Q-26.112-35.491-25.923-35.755Q-25.901-35.790-25.852-35.790Q-25.791-35.790-25.727-35.726Q-25.663-35.662-25.663-35.601Q-25.663-35.570-25.690-35.535Q-26.015-35.082-26.542-34.841Q-27.070-34.599-27.632-34.599M-28.085-37.003Q-27.593-37.003-27.184-37.051Q-26.775-37.099-26.448-37.295Q-26.120-37.491-26.120-37.904Q-26.120-38.132-26.285-38.275Q-26.450-38.418-26.678-38.418Q-27.210-38.418-27.566-38.002Q-27.922-37.587-28.085-37.003M-24.609-34.863Q-24.609-34.915-24.600-34.942L-23.923-37.627Q-23.862-37.886-23.862-38.075Q-23.862-38.418-24.086-38.418Q-24.433-38.418-24.688-37.266Q-24.705-37.183-24.780-37.183L-24.943-37.183Q-25.031-37.183-25.031-37.302Q-24.899-37.877-24.692-38.277Q-24.486-38.677-24.068-38.677Q-23.778-38.677-23.561-38.512Q-23.343-38.347-23.277-38.075Q-23.062-38.347-22.778-38.512Q-22.495-38.677-22.178-38.677Q-21.836-38.677-21.552-38.525Q-21.269-38.374-21.269-38.057Q-21.269-37.846-21.398-37.695Q-21.528-37.543-21.730-37.543Q-21.862-37.543-21.957-37.629Q-22.051-37.715-22.051-37.842Q-22.051-37.987-21.959-38.110Q-21.866-38.233-21.730-38.282Q-21.897-38.418-22.196-38.418Q-22.842-38.418-23.330-37.372L-23.949-34.907Q-23.985-34.779-24.092-34.689Q-24.200-34.599-24.327-34.599Q-24.442-34.599-24.525-34.674Q-24.609-34.748-24.609-34.863M-20.944-33.628Q-20.944-33.865-20.818-34.034Q-20.693-34.203-20.469-34.203Q-20.333-34.203-20.243-34.122Q-20.153-34.041-20.153-33.909Q-20.153-33.738-20.273-33.601Q-20.394-33.465-20.566-33.448Q-20.513-33.289-20.364-33.204Q-20.214-33.118-20.034-33.118Q-19.643-33.118-19.353-33.404Q-19.063-33.689-18.889-34.080Q-18.716-34.471-18.606-34.898Q-18.962-34.599-19.379-34.599Q-19.880-34.599-20.170-34.880Q-20.460-35.161-20.460-35.662Q-20.460-35.869-20.412-36.124Q-20.364-36.379-20.295-36.585Q-20.227-36.792-20.080-37.194Q-19.933-37.596-19.920-37.627Q-19.792-37.965-19.792-38.185Q-19.792-38.418-19.964-38.418Q-20.517-38.418-20.799-37.266Q-20.816-37.183-20.891-37.183L-21.053-37.183Q-21.141-37.183-21.141-37.302Q-21.010-37.842-20.706-38.260Q-20.403-38.677-19.946-38.677Q-19.625-38.677-19.417-38.464Q-19.208-38.251-19.208-37.939Q-19.208-37.754-19.269-37.587Q-19.283-37.543-19.430-37.154Q-19.577-36.765-19.658-36.500Q-19.740-36.234-19.788-35.994Q-19.836-35.755-19.836-35.526Q-19.836-35.258-19.726-35.060Q-19.616-34.863-19.370-34.863Q-18.821-34.863-18.452-35.526L-17.758-38.273Q-17.727-38.405-17.615-38.492Q-17.503-38.580-17.380-38.580Q-17.265-38.580-17.184-38.508Q-17.103-38.435-17.103-38.317Q-17.103-38.264-17.112-38.238L-17.999-34.682Q-18.109-34.230-18.412-33.804Q-18.716-33.377-19.148-33.116Q-19.581-32.854-20.052-32.854Q-20.416-32.854-20.680-33.065Q-20.944-33.276-20.944-33.628",[759],[737,2005,2006],{"transform":1999},[745,2007],{"d":2008,"fill":739,"stroke":739,"className":2009,"style":760},"M-12.616-33.404Q-12.528-33.250-12.355-33.184Q-12.181-33.118-11.979-33.118Q-11.654-33.118-11.390-33.294Q-11.126-33.470-10.944-33.740Q-10.762-34.010-10.630-34.340Q-10.498-34.669-10.423-34.968Q-10.823-34.599-11.293-34.599Q-11.658-34.599-11.922-34.726Q-12.185-34.854-12.330-35.100Q-12.475-35.346-12.475-35.698Q-12.475-35.983-12.399-36.302Q-12.322-36.620-12.207-36.921Q-12.093-37.222-11.935-37.627Q-11.816-37.912-11.816-38.145Q-11.816-38.264-11.862-38.341Q-11.909-38.418-12.014-38.418Q-12.366-38.418-12.601-38.057Q-12.836-37.697-12.941-37.266Q-12.959-37.183-13.034-37.183L-13.139-37.183Q-13.187-37.183-13.209-37.222Q-13.231-37.262-13.231-37.302Q-13.143-37.644-12.983-37.950Q-12.823-38.255-12.572-38.466Q-12.322-38.677-11.996-38.677Q-11.658-38.677-11.427-38.471Q-11.197-38.264-11.197-37.921Q-11.197-37.741-11.258-37.587Q-11.289-37.499-11.441-37.104Q-11.592-36.708-11.662-36.478Q-11.733-36.247-11.779-36.023Q-11.825-35.799-11.825-35.575Q-11.825-35.276-11.695-35.069Q-11.566-34.863-11.285-34.863Q-10.709-34.863-10.278-35.557L-9.601-38.264Q-9.566-38.405-9.452-38.492Q-9.338-38.580-9.197-38.580Q-9.083-38.580-9.002-38.503Q-8.920-38.427-8.920-38.308Q-8.920-38.255-8.929-38.229L-9.808-34.682Q-9.935-34.195-10.261-33.777Q-10.586-33.360-11.043-33.107Q-11.500-32.854-11.988-32.854Q-12.238-32.854-12.469-32.944Q-12.700-33.034-12.842-33.215Q-12.985-33.395-12.985-33.645Q-12.985-33.896-12.838-34.074Q-12.691-34.252-12.458-34.252Q-12.313-34.252-12.210-34.159Q-12.106-34.067-12.106-33.918Q-12.106-33.716-12.258-33.560Q-12.410-33.404-12.616-33.404",[759],[737,2011,2012],{"transform":1999},[745,2013],{"d":2014,"fill":739,"stroke":739,"className":2015,"style":760},"M-3.029-34.700L-5.262-34.700L-5.262-35.016Q-4.949-35.016-4.758-35.069Q-4.567-35.122-4.567-35.311L-4.567-37.759Q-4.567-38-4.637-38.108Q-4.708-38.216-4.842-38.240Q-4.976-38.264-5.262-38.264L-5.262-38.580L-3.948-38.677L-3.948-37.816Q-3.785-38.207-3.517-38.442Q-3.249-38.677-2.858-38.677Q-2.585-38.677-2.370-38.514Q-2.155-38.352-2.155-38.093Q-2.155-37.917-2.273-37.798Q-2.392-37.679-2.568-37.679Q-2.748-37.679-2.866-37.798Q-2.985-37.917-2.985-38.093Q-2.985-38.308-2.831-38.418L-2.849-38.418Q-3.227-38.418-3.460-38.156Q-3.693-37.895-3.792-37.508Q-3.890-37.121-3.890-36.761L-3.890-35.311Q-3.890-35.122-3.633-35.069Q-3.376-35.016-3.029-35.016L-3.029-34.700M0.416-34.599Q-0.142-34.599-0.614-34.882Q-1.087-35.166-1.361-35.643Q-1.636-36.119-1.636-36.673Q-1.636-37.069-1.493-37.444Q-1.350-37.820-1.093-38.108Q-0.836-38.396-0.478-38.565Q-0.120-38.734 0.284-38.734Q0.829-38.734 1.201-38.497Q1.572-38.260 1.759-37.842Q1.946-37.425 1.946-36.888Q1.946-36.836 1.921-36.798Q1.897-36.761 1.849-36.761L-0.823-36.761L-0.823-36.682Q-0.823-35.935-0.511-35.412Q-0.199-34.889 0.500-34.889Q0.904-34.889 1.225-35.146Q1.546-35.403 1.669-35.807Q1.686-35.887 1.770-35.887L1.849-35.887Q1.888-35.887 1.917-35.856Q1.946-35.825 1.946-35.781L1.946-35.746Q1.840-35.403 1.618-35.144Q1.396-34.885 1.082-34.742Q0.768-34.599 0.416-34.599M-0.814-37.012L1.300-37.012Q1.300-37.280 1.247-37.526Q1.194-37.772 1.073-37.994Q0.952-38.216 0.755-38.343Q0.557-38.471 0.284-38.471Q-0.058-38.471-0.311-38.246Q-0.564-38.022-0.689-37.684Q-0.814-37.346-0.814-37.012M2.442-33.197Q2.657-33.118 2.904-33.118Q3.246-33.118 3.385-33.476Q3.523-33.834 3.523-34.243L3.523-37.759Q3.523-38.101 3.356-38.183Q3.189-38.264 2.759-38.264L2.759-38.580L4.200-38.677L4.200-34.221Q4.200-33.869 4.024-33.553Q3.848-33.237 3.545-33.045Q3.242-32.854 2.886-32.854Q2.635-32.854 2.394-32.933Q2.152-33.013 1.992-33.182Q1.831-33.351 1.831-33.601Q1.831-33.782 1.961-33.907Q2.091-34.032 2.271-34.032Q2.455-34.032 2.581-33.907Q2.706-33.782 2.706-33.601Q2.706-33.307 2.442-33.197M3.189-40.224Q3.189-40.430 3.339-40.580Q3.488-40.729 3.695-40.729Q3.897-40.729 4.048-40.582Q4.200-40.435 4.200-40.224Q4.200-40.017 4.048-39.870Q3.897-39.723 3.695-39.723Q3.488-39.723 3.339-39.872Q3.189-40.022 3.189-40.224M7.355-34.599Q6.797-34.599 6.325-34.882Q5.852-35.166 5.578-35.643Q5.303-36.119 5.303-36.673Q5.303-37.069 5.446-37.444Q5.589-37.820 5.846-38.108Q6.103-38.396 6.461-38.565Q6.819-38.734 7.223-38.734Q7.768-38.734 8.140-38.497Q8.511-38.260 8.698-37.842Q8.884-37.425 8.884-36.888Q8.884-36.836 8.860-36.798Q8.836-36.761 8.788-36.761L6.116-36.761L6.116-36.682Q6.116-35.935 6.428-35.412Q6.740-34.889 7.439-34.889Q7.843-34.889 8.164-35.146Q8.485-35.403 8.608-35.807Q8.625-35.887 8.709-35.887L8.788-35.887Q8.827-35.887 8.856-35.856Q8.884-35.825 8.884-35.781L8.884-35.746Q8.779-35.403 8.557-35.144Q8.335-34.885 8.021-34.742Q7.707-34.599 7.355-34.599M6.125-37.012L8.238-37.012Q8.238-37.280 8.186-37.526Q8.133-37.772 8.012-37.994Q7.891-38.216 7.694-38.343Q7.496-38.471 7.223-38.471Q6.881-38.471 6.628-38.246Q6.375-38.022 6.250-37.684Q6.125-37.346 6.125-37.012M11.468-34.599Q10.919-34.599 10.460-34.878Q10.001-35.157 9.733-35.627Q9.465-36.097 9.465-36.642Q9.465-37.055 9.614-37.433Q9.763-37.811 10.038-38.106Q10.313-38.400 10.682-38.567Q11.051-38.734 11.468-38.734Q11.802-38.734 12.123-38.668Q12.444-38.602 12.673-38.416Q12.901-38.229 12.901-37.904Q12.901-37.728 12.774-37.600Q12.646-37.473 12.470-37.473Q12.286-37.473 12.156-37.598Q12.027-37.723 12.027-37.904Q12.027-38.040 12.101-38.152Q12.176-38.264 12.308-38.317Q12-38.444 11.468-38.444Q11.033-38.444 10.765-38.167Q10.497-37.890 10.385-37.475Q10.273-37.060 10.273-36.642Q10.273-36.212 10.412-35.810Q10.550-35.408 10.844-35.148Q11.139-34.889 11.578-34.889Q12-34.889 12.303-35.139Q12.607-35.390 12.712-35.799Q12.721-35.829 12.745-35.854Q12.769-35.878 12.800-35.878L12.910-35.878Q12.998-35.878 12.998-35.763Q12.853-35.227 12.440-34.913Q12.027-34.599 11.468-34.599M14.197-35.772L14.197-38.264L13.433-38.264L13.433-38.523Q13.837-38.523 14.103-38.789Q14.369-39.055 14.490-39.455Q14.611-39.855 14.611-40.237L14.901-40.237L14.901-38.580L16.188-38.580L16.188-38.264L14.901-38.264L14.901-35.807Q14.901-35.438 15.026-35.164Q15.151-34.889 15.476-34.889Q15.775-34.889 15.914-35.183Q16.052-35.478 16.052-35.807L16.052-36.330L16.338-36.330L16.338-35.772Q16.338-35.495 16.228-35.223Q16.118-34.950 15.905-34.775Q15.692-34.599 15.410-34.599Q15.050-34.599 14.778-34.737Q14.505-34.876 14.351-35.139Q14.197-35.403 14.197-35.772M17.159-34.682L17.159-36.124Q17.159-36.155 17.188-36.179Q17.217-36.203 17.247-36.203L17.357-36.203Q17.392-36.203 17.414-36.181Q17.436-36.159 17.445-36.124Q17.704-34.863 18.671-34.863Q19.097-34.863 19.392-35.047Q19.686-35.232 19.686-35.636Q19.686-35.930 19.456-36.126Q19.225-36.322 18.913-36.383L18.311-36.502Q17.845-36.590 17.502-36.873Q17.159-37.157 17.159-37.596Q17.159-38.189 17.597-38.462Q18.034-38.734 18.671-38.734Q19.150-38.734 19.497-38.488L19.748-38.712Q19.805-38.734 19.805-38.734L19.858-38.734Q19.884-38.734 19.917-38.708Q19.950-38.681 19.950-38.651L19.950-37.491Q19.950-37.460 19.915-37.433Q19.880-37.407 19.858-37.407L19.748-37.407Q19.726-37.407 19.693-37.436Q19.660-37.464 19.660-37.491Q19.660-37.956 19.394-38.227Q19.128-38.497 18.662-38.497Q18.258-38.497 17.955-38.352Q17.652-38.207 17.652-37.851Q17.652-37.605 17.869-37.451Q18.087-37.297 18.363-37.240L18.992-37.113Q19.308-37.051 19.579-36.884Q19.849-36.717 20.016-36.451Q20.183-36.185 20.183-35.869Q20.183-35.227 19.757-34.913Q19.330-34.599 18.671-34.599Q18.399-34.599 18.133-34.693Q17.867-34.788 17.687-34.977L17.366-34.638Q17.348-34.599 17.300-34.599L17.247-34.599Q17.225-34.599 17.192-34.627Q17.159-34.656 17.159-34.682",[759],[737,2017,2018],{"transform":1999},[745,2019],{"d":2020,"fill":739,"stroke":739,"className":2021,"style":760},"M-13.799-24.843L-19.341-24.843Q-19.420-24.856-19.470-24.906Q-19.521-24.957-19.521-25.032Q-19.521-25.181-19.341-25.229L-13.386-25.229Q-13.122-25.436-12.802-25.627Q-12.481-25.818-12.178-25.950Q-12.837-26.227-13.386-26.671L-19.341-26.671Q-19.521-26.701-19.521-26.860Q-19.521-27.009-19.341-27.057L-13.799-27.057Q-14.023-27.295-14.362-27.754Q-14.700-28.213-14.700-28.363Q-14.700-28.398-14.665-28.433Q-14.630-28.468-14.590-28.468L-14.410-28.468Q-14.348-28.468-14.300-28.371Q-14.023-27.809-13.575-27.332Q-13.127-26.855-12.564-26.528Q-12.002-26.200-11.387-26.060Q-11.303-26.020-11.303-25.950Q-11.303-25.858-11.387-25.840Q-12.147-25.656-12.806-25.212Q-13.782-24.570-14.300-23.520Q-14.348-23.423-14.410-23.423L-14.590-23.423Q-14.634-23.423-14.667-23.456Q-14.700-23.489-14.700-23.529Q-14.700-23.634-14.529-23.900Q-14.357-24.166-14.149-24.429Q-13.940-24.693-13.799-24.843",[759],[737,2023,2024],{"transform":1999},[745,2025],{"d":2026,"fill":1991,"stroke":1991,"className":2027,"style":760},"M-5.315-23.700L-7.402-23.700L-7.402-24.016Q-7.095-24.016-6.903-24.069Q-6.712-24.122-6.712-24.311L-6.712-26.759Q-6.712-27-6.783-27.108Q-6.853-27.216-6.987-27.240Q-7.121-27.264-7.402-27.264L-7.402-27.580L-6.062-27.677L-6.062-26.842Q-5.864-27.224-5.510-27.451Q-5.157-27.677-4.730-27.677Q-3.451-27.677-3.451-26.464L-3.451-24.311Q-3.451-24.122-3.260-24.069Q-3.069-24.016-2.762-24.016L-2.762-23.700L-4.849-23.700L-4.849-24.016Q-4.537-24.016-4.346-24.069Q-4.155-24.122-4.155-24.311L-4.155-26.429Q-4.155-26.688-4.199-26.910Q-4.243-27.132-4.388-27.275Q-4.533-27.418-4.792-27.418Q-5.135-27.418-5.416-27.229Q-5.697-27.040-5.853-26.728Q-6.009-26.416-6.009-26.069L-6.009-24.311Q-6.009-24.122-5.816-24.069Q-5.622-24.016-5.315-24.016L-5.315-23.700M-2.305-25.607Q-2.305-26.174-2.032-26.662Q-1.760-27.150-1.289-27.442Q-0.819-27.734-0.252-27.734Q0.170-27.734 0.545-27.565Q0.921-27.396 1.198-27.104Q1.475-26.811 1.633-26.416Q1.791-26.020 1.791-25.607Q1.791-25.058 1.512-24.596Q1.233-24.135 0.765-23.867Q0.297-23.599-0.252-23.599Q-0.806-23.599-1.276-23.867Q-1.746-24.135-2.025-24.596Q-2.305-25.058-2.305-25.607M-0.252-23.889Q0.244-23.889 0.521-24.150Q0.798-24.412 0.890-24.816Q0.983-25.221 0.983-25.717Q0.983-26.192 0.884-26.581Q0.785-26.970 0.512-27.220Q0.240-27.471-0.252-27.471Q-0.964-27.471-1.228-26.976Q-1.492-26.482-1.492-25.717Q-1.492-24.917-1.237-24.403Q-0.982-23.889-0.252-23.889",[759],[745,2029],{"fill":747,"d":2030},"m-20.003-54.041 52.277 10.756",[745,2032],{"d":2033,"style":916},"m34.728-42.78-3.238-2.045.882 1.56-1.427 1.086Z",[745,2035],{"fill":747,"d":2036},"m-11.179-12.245 43.453-8.943",[745,2038],{"d":2039,"style":2040},"m34.728-21.693-3.783-.6 1.427 1.085-.882 1.56Z","stroke-width:.399984",[737,2042,2043,2046],{"fill":782,"stroke":782},[745,2044],{"fill":747,"d":2045},"m92.592-42.665 71.088-8.126",[745,2047],{"d":2048,"style":2049},"m166.17-51.075-3.715-.935 1.324 1.208-1.018 1.475Z","stroke-width:.39997600000000005",[737,2051,2052,2055],{"fill":1991,"stroke":1991},[745,2053],{"fill":747,"d":2054},"M92.592-21.807 164.44-9.805",[745,2056],{"d":2057,"style":916},"m166.912-9.392-3.313-1.923.94 1.526-1.385 1.138Z",[737,2059,2060,2067,2073,2079,2085,2091,2097,2103,2109,2115,2121],{"stroke":747,"fontSize":836},[737,2061,2063],{"transform":2062},"translate(77.247 23.01)",[745,2064],{"d":2065,"fill":739,"stroke":739,"className":2066,"style":804},"M-37.476-22.111L-37.476-28.789Q-37.452-28.950-37.302-28.950Q-37.158-28.950-37.134-28.789L-37.134-22.111Q-37.158-21.950-37.302-21.950Q-37.452-21.950-37.476-22.111",[759],[737,2068,2069],{"transform":2062},[745,2070],{"d":2071,"fill":739,"stroke":739,"className":2072,"style":804},"M-35.514-22.887Q-35.514-23.078-35.398-23.218Q-35.282-23.358-35.094-23.358Q-34.974-23.358-34.891-23.283Q-34.807-23.208-34.807-23.092Q-34.807-22.938-34.913-22.822Q-35.019-22.705-35.173-22.685Q-35.012-22.497-34.667-22.497Q-34.178-22.497-33.785-23.013Q-33.641-23.204-33.553-23.420Q-33.464-23.635-33.392-23.932Q-33.727-23.632-34.127-23.632Q-34.574-23.632-34.851-23.856Q-35.128-24.079-35.128-24.520Q-35.128-24.831-35.021-25.151Q-34.913-25.471-34.701-25.990Q-34.626-26.192-34.626-26.332Q-34.626-26.431-34.665-26.498Q-34.704-26.564-34.793-26.564Q-35.074-26.564-35.263-26.293Q-35.453-26.021-35.542-25.689Q-35.552-25.624-35.614-25.624L-35.723-25.624Q-35.754-25.624-35.778-25.655Q-35.802-25.686-35.802-25.710L-35.802-25.737Q-35.733-25.997-35.593-26.234Q-35.453-26.472-35.243-26.629Q-35.033-26.786-34.780-26.786Q-34.598-26.786-34.443-26.715Q-34.287-26.643-34.190-26.508Q-34.093-26.373-34.093-26.192Q-34.093-26.075-34.140-25.939Q-34.356-25.409-34.469-25.067Q-34.581-24.725-34.581-24.414Q-34.581-24.172-34.467-24.013Q-34.352-23.854-34.113-23.854Q-33.631-23.854-33.265-24.449L-32.763-26.458Q-32.732-26.571-32.640-26.645Q-32.548-26.718-32.435-26.718Q-32.332-26.718-32.261-26.655Q-32.189-26.592-32.189-26.492Q-32.189-26.469-32.190-26.455Q-32.192-26.441-32.196-26.424L-32.883-23.673Q-32.978-23.290-33.253-22.967Q-33.529-22.644-33.908-22.458Q-34.287-22.271-34.680-22.271Q-34.998-22.271-35.256-22.429Q-35.514-22.586-35.514-22.887",[759],[737,2074,2075],{"transform":2062},[745,2076],{"d":2077,"fill":739,"stroke":739,"className":2078,"style":804},"M-30.794-22.111L-30.794-28.789Q-30.770-28.950-30.620-28.950Q-30.476-28.950-30.452-28.789L-30.452-22.111Q-30.476-21.950-30.620-21.950Q-30.770-21.950-30.794-22.111",[759],[737,2080,2081],{"transform":2062},[745,2082],{"d":2083,"fill":739,"stroke":739,"className":2084,"style":804},"M-21.676-24.507L-26.509-24.507Q-26.577-24.517-26.623-24.563Q-26.669-24.609-26.669-24.681Q-26.669-24.746-26.623-24.792Q-26.577-24.838-26.509-24.848L-21.676-24.848Q-21.607-24.838-21.561-24.792Q-21.515-24.746-21.515-24.681Q-21.515-24.609-21.561-24.563Q-21.607-24.517-21.676-24.507M-21.676-26.045L-26.509-26.045Q-26.577-26.055-26.623-26.101Q-26.669-26.147-26.669-26.219Q-26.669-26.363-26.509-26.387L-21.676-26.387Q-21.515-26.363-21.515-26.219Q-21.515-26.147-21.561-26.101Q-21.607-26.055-21.676-26.045",[759],[737,2086,2087],{"transform":2062},[745,2088],{"d":2089,"fill":739,"stroke":739,"className":2090,"style":804},"M-16.785-22.343L-18.415-22.343L-18.415-22.623Q-18.186-22.623-18.037-22.658Q-17.889-22.692-17.889-22.832L-17.889-26.178Q-17.889-26.349-18.025-26.390Q-18.162-26.431-18.415-26.431L-18.415-26.711L-17.335-26.786L-17.335-26.380Q-17.113-26.581-16.826-26.684Q-16.538-26.786-16.231-26.786Q-15.804-26.786-15.440-26.573Q-15.076-26.359-14.862-25.995Q-14.648-25.631-14.648-25.211Q-14.648-24.766-14.888-24.402Q-15.127-24.038-15.520-23.835Q-15.913-23.632-16.357-23.632Q-16.624-23.632-16.872-23.732Q-17.119-23.833-17.307-24.014L-17.307-22.832Q-17.307-22.695-17.159-22.659Q-17.010-22.623-16.785-22.623L-16.785-22.343M-17.307-26.031L-17.307-24.421Q-17.174-24.168-16.931-24.011Q-16.689-23.854-16.412-23.854Q-16.084-23.854-15.831-24.055Q-15.578-24.257-15.445-24.575Q-15.311-24.893-15.311-25.211Q-15.311-25.440-15.376-25.669Q-15.441-25.898-15.569-26.096Q-15.698-26.294-15.892-26.414Q-16.087-26.533-16.320-26.533Q-16.614-26.533-16.882-26.404Q-17.150-26.274-17.307-26.031",[759],[737,2092,2093],{"transform":2062},[745,2094],{"d":2095,"fill":739,"stroke":739,"className":2096,"style":804},"M-13.838-25.183Q-13.838-25.525-13.703-25.824Q-13.568-26.123-13.328-26.347Q-13.089-26.571-12.771-26.696Q-12.453-26.821-12.122-26.821Q-11.677-26.821-11.278-26.605Q-10.878-26.390-10.643-26.012Q-10.409-25.635-10.409-25.183Q-10.409-24.842-10.551-24.558Q-10.693-24.274-10.937-24.067Q-11.182-23.861-11.491-23.746Q-11.800-23.632-12.122-23.632Q-12.552-23.632-12.954-23.833Q-13.356-24.035-13.597-24.387Q-13.838-24.739-13.838-25.183M-12.122-23.881Q-11.520-23.881-11.296-24.259Q-11.072-24.637-11.072-25.269Q-11.072-25.881-11.307-26.240Q-11.541-26.598-12.122-26.598Q-13.174-26.598-13.174-25.269Q-13.174-24.637-12.949-24.259Q-12.723-23.881-12.122-23.881M-8.147-23.700L-9.750-23.700L-9.750-23.980Q-9.524-23.980-9.375-24.014Q-9.227-24.049-9.227-24.189L-9.227-27.808Q-9.227-28.078-9.334-28.140Q-9.442-28.201-9.750-28.201L-9.750-28.482L-8.673-28.557L-8.673-24.189Q-8.673-24.052-8.523-24.016Q-8.372-23.980-8.147-23.980L-8.147-23.700M-7.217-22.565Q-7.087-22.497-6.950-22.497Q-6.779-22.497-6.629-22.586Q-6.479-22.675-6.368-22.820Q-6.257-22.965-6.178-23.133L-5.915-23.700L-7.084-26.226Q-7.159-26.373-7.289-26.405Q-7.419-26.438-7.651-26.438L-7.651-26.718L-6.130-26.718L-6.130-26.438Q-6.479-26.438-6.479-26.291Q-6.475-26.270-6.474-26.253Q-6.472-26.236-6.472-26.226L-5.614-24.367L-4.841-26.038Q-4.807-26.106-4.807-26.185Q-4.807-26.298-4.891-26.368Q-4.975-26.438-5.088-26.438L-5.088-26.718L-3.891-26.718L-3.891-26.438Q-4.110-26.438-4.283-26.334Q-4.455-26.229-4.548-26.038L-5.884-23.133Q-6.055-22.763-6.325-22.517Q-6.595-22.271-6.950-22.271Q-7.220-22.271-7.439-22.437Q-7.658-22.603-7.658-22.866Q-7.658-23.003-7.566-23.092Q-7.473-23.180-7.333-23.180Q-7.196-23.180-7.108-23.092Q-7.019-23.003-7.019-22.866Q-7.019-22.763-7.072-22.685Q-7.125-22.606-7.217-22.565",[759],[737,2098,2099],{"transform":2062},[745,2100],{"d":2101,"fill":739,"stroke":739,"className":2102,"style":804},"M-1.215-21.950Q-1.765-22.350-2.136-22.905Q-2.507-23.461-2.688-24.107Q-2.869-24.753-2.869-25.450Q-2.869-25.963-2.769-26.458Q-2.668-26.954-2.463-27.405Q-2.258-27.856-1.945-28.248Q-1.632-28.639-1.215-28.943Q-1.205-28.947-1.198-28.948Q-1.191-28.950-1.181-28.950L-1.113-28.950Q-1.078-28.950-1.056-28.926Q-1.034-28.902-1.034-28.865Q-1.034-28.820-1.061-28.803Q-1.410-28.502-1.663-28.118Q-1.916-27.733-2.068-27.292Q-2.220-26.851-2.292-26.395Q-2.364-25.939-2.364-25.450Q-2.364-24.449-2.054-23.562Q-1.745-22.675-1.061-22.090Q-1.034-22.073-1.034-22.029Q-1.034-21.991-1.056-21.967Q-1.078-21.943-1.113-21.943L-1.181-21.943Q-1.188-21.947-1.196-21.948Q-1.205-21.950-1.215-21.950",[759],[737,2104,2105],{"transform":2062},[745,2106],{"d":2107,"fill":739,"stroke":739,"className":2108,"style":804},"M0.481-22.111L0.481-28.789Q0.505-28.950 0.655-28.950Q0.799-28.950 0.823-28.789L0.823-22.111Q0.799-21.950 0.655-21.950Q0.505-21.950 0.481-22.111",[759],[737,2110,2111],{"transform":2062},[745,2112],{"d":2113,"fill":739,"stroke":739,"className":2114,"style":804},"M2.576-23.960Q2.719-23.854 2.948-23.854Q3.174-23.854 3.348-24.050Q3.523-24.247 3.577-24.476L3.892-25.737Q3.964-26.004 3.964-26.137Q3.964-26.328 3.852-26.446Q3.741-26.564 3.550-26.564Q3.321-26.564 3.123-26.440Q2.924-26.315 2.783-26.111Q2.641-25.908 2.583-25.689Q2.572-25.624 2.514-25.624L2.402-25.624Q2.371-25.624 2.347-25.655Q2.323-25.686 2.323-25.710L2.323-25.737Q2.436-26.164 2.789-26.475Q3.143-26.786 3.564-26.786Q3.735-26.786 3.899-26.733Q4.063-26.680 4.196-26.576Q4.329-26.472 4.404-26.318Q4.545-26.523 4.746-26.655Q4.948-26.786 5.167-26.786Q5.457-26.786 5.686-26.651Q5.915-26.516 5.915-26.246Q5.915-26.127 5.862-26.023Q5.809-25.918 5.712-25.855Q5.614-25.792 5.495-25.792Q5.379-25.792 5.297-25.865Q5.215-25.939 5.215-26.058Q5.215-26.199 5.305-26.313Q5.396-26.428 5.529-26.458Q5.375-26.564 5.153-26.564Q4.999-26.564 4.869-26.470Q4.739-26.376 4.651-26.240Q4.562-26.103 4.514-25.939L4.199-24.681Q4.138-24.397 4.138-24.281Q4.138-24.090 4.249-23.972Q4.360-23.854 4.551-23.854Q4.726-23.854 4.885-23.929Q5.044-24.004 5.174-24.134Q5.303-24.264 5.392-24.421Q5.481-24.578 5.515-24.729Q5.539-24.790 5.594-24.790L5.703-24.790Q5.737-24.790 5.760-24.765Q5.782-24.739 5.782-24.708Q5.782-24.695 5.775-24.681Q5.707-24.401 5.522-24.161Q5.338-23.922 5.078-23.777Q4.818-23.632 4.534-23.632Q4.268-23.632 4.039-23.751Q3.810-23.871 3.697-24.100Q3.567-23.902 3.364-23.767Q3.160-23.632 2.931-23.632Q2.651-23.632 2.420-23.767Q2.190-23.902 2.190-24.168Q2.190-24.349 2.311-24.486Q2.432-24.623 2.610-24.623Q2.730-24.623 2.810-24.551Q2.890-24.479 2.890-24.360Q2.890-24.220 2.803-24.105Q2.716-23.991 2.576-23.960",[759],[737,2116,2117],{"transform":2062},[745,2118],{"d":2119,"fill":739,"stroke":739,"className":2120,"style":804},"M7.390-22.111L7.390-28.789Q7.414-28.950 7.564-28.950Q7.708-28.950 7.732-28.789L7.732-22.111Q7.708-21.950 7.564-21.950Q7.414-21.950 7.390-22.111",[759],[737,2122,2123],{"transform":2062},[745,2124],{"d":2125,"fill":739,"stroke":739,"className":2126,"style":804},"M9.386-21.943L9.317-21.943Q9.283-21.943 9.261-21.969Q9.239-21.994 9.239-22.029Q9.239-22.073 9.270-22.090Q9.625-22.394 9.875-22.784Q10.124-23.174 10.276-23.606Q10.428-24.038 10.498-24.507Q10.568-24.975 10.568-25.450Q10.568-25.929 10.498-26.395Q10.428-26.862 10.274-27.297Q10.121-27.733 9.869-28.121Q9.618-28.509 9.270-28.803Q9.239-28.820 9.239-28.865Q9.239-28.899 9.261-28.924Q9.283-28.950 9.317-28.950L9.386-28.950Q9.396-28.950 9.405-28.948Q9.413-28.947 9.423-28.943Q9.967-28.543 10.339-27.990Q10.712-27.436 10.893-26.790Q11.074-26.144 11.074-25.450Q11.074-24.749 10.893-24.102Q10.712-23.454 10.338-22.900Q9.963-22.346 9.423-21.950Q9.413-21.950 9.405-21.948Q9.396-21.947 9.386-21.943",[759],[947,2128,2130,2131,2146,2147,2177,2178,2193,2194,2209,2210,2225],{"className":2129},[950],"A verifier ",[385,2132,2134],{"className":2133},[388],[385,2135,2137],{"className":2136,"ariaHidden":393},[392],[385,2138,2140,2143],{"className":2139},[397],[385,2141],{"className":2142,"style":589},[401],[385,2144,1436],{"className":2145,"style":1435},[406,407]," accepts ",[385,2148,2150],{"className":2149},[388],[385,2151,2153],{"className":2152,"ariaHidden":393},[392],[385,2154,2156,2159,2162,2165,2168,2171,2174],{"className":2155},[397],[385,2157],{"className":2158,"style":402},[401],[385,2160,414],{"className":2161},[413],[385,2163,619],{"className":2164},[406,407],[385,2166,558],{"className":2167},[557],[385,2169],{"className":2170,"style":423},[422],[385,2172,1481],{"className":2173,"style":1480},[406,407],[385,2175,444],{"className":2176},[443]," when the certificate ",[385,2179,2181],{"className":2180},[388],[385,2182,2184],{"className":2183,"ariaHidden":393},[392],[385,2185,2187,2190],{"className":2186},[397],[385,2188],{"className":2189,"style":1476},[401],[385,2191,1481],{"className":2192,"style":1480},[406,407]," proves ",[385,2195,2197],{"className":2196},[388],[385,2198,2200],{"className":2199,"ariaHidden":393},[392],[385,2201,2203,2206],{"className":2202},[397],[385,2204],{"className":2205,"style":615},[401],[385,2207,619],{"className":2208},[406,407]," is a yes-instance; no ",[385,2211,2213],{"className":2212},[388],[385,2214,2216],{"className":2215,"ariaHidden":393},[392],[385,2217,2219,2222],{"className":2218},[397],[385,2220],{"className":2221,"style":1476},[401],[385,2223,1481],{"className":2224,"style":1480},[406,407]," works otherwise.",[502,2227,2229],{"id":2228},"reductions-comparing-difficulty","Reductions: comparing difficulty",[381,2231,2232,2233,2270,2271,2274,2275,2290,2291,2306,2307,2322,2323,520],{},"We want to say ",[599,2234,2235,2236,2253,2254],{},"problem ",[385,2237,2239],{"className":2238},[388],[385,2240,2242],{"className":2241,"ariaHidden":393},[392],[385,2243,2245,2248],{"className":2244},[397],[385,2246],{"className":2247,"style":589},[401],[385,2249,2252],{"className":2250,"style":2251},[406,407],"margin-right:0.0502em;","B"," is at least as hard as problem ",[385,2255,2257],{"className":2256},[388],[385,2258,2260],{"className":2259,"ariaHidden":393},[392],[385,2261,2263,2266],{"className":2262},[397],[385,2264],{"className":2265,"style":589},[401],[385,2267,2269],{"className":2268},[406,407],"A"," without knowing\nhow hard either one actually is. The device that makes this possible is a\n",[455,2272,2273],{},"reduction",": a way to convert any instance of ",[385,2276,2278],{"className":2277},[388],[385,2279,2281],{"className":2280,"ariaHidden":393},[392],[385,2282,2284,2287],{"className":2283},[397],[385,2285],{"className":2286,"style":589},[401],[385,2288,2269],{"className":2289},[406,407]," into an instance of ",[385,2292,2294],{"className":2293},[388],[385,2295,2297],{"className":2296,"ariaHidden":393},[392],[385,2298,2300,2303],{"className":2299},[397],[385,2301],{"className":2302,"style":589},[401],[385,2304,2252],{"className":2305,"style":2251},[406,407],"\nthat has the same answer, so that an algorithm for ",[385,2308,2310],{"className":2309},[388],[385,2311,2313],{"className":2312,"ariaHidden":393},[392],[385,2314,2316,2319],{"className":2315},[397],[385,2317],{"className":2318,"style":589},[401],[385,2320,2252],{"className":2321,"style":2251},[406,407]," becomes an algorithm for\n",[385,2324,2326],{"className":2325},[388],[385,2327,2329],{"className":2328,"ariaHidden":393},[392],[385,2330,2332,2335],{"className":2331},[397],[385,2333],{"className":2334,"style":589},[401],[385,2336,2269],{"className":2337},[406,407],[522,2339,2340],{"type":524},[381,2341,2342,2345,2346,973,2361,2376,2377,2392,2393,2408,2409,2488,2489,2507,2508,2523,2524],{},[455,2343,2344],{},"Definition (Polynomial-time reduction)."," Let ",[385,2347,2349],{"className":2348},[388],[385,2350,2352],{"className":2351,"ariaHidden":393},[392],[385,2353,2355,2358],{"className":2354},[397],[385,2356],{"className":2357,"style":589},[401],[385,2359,2269],{"className":2360},[406,407],[385,2362,2364],{"className":2363},[388],[385,2365,2367],{"className":2366,"ariaHidden":393},[392],[385,2368,2370,2373],{"className":2369},[397],[385,2371],{"className":2372,"style":589},[401],[385,2374,2252],{"className":2375,"style":2251},[406,407]," be decision problems. A polynomial-time reduction from\n",[385,2378,2380],{"className":2379},[388],[385,2381,2383],{"className":2382,"ariaHidden":393},[392],[385,2384,2386,2389],{"className":2385},[397],[385,2387],{"className":2388,"style":589},[401],[385,2390,2269],{"className":2391},[406,407]," to ",[385,2394,2396],{"className":2395},[388],[385,2397,2399],{"className":2398,"ariaHidden":393},[392],[385,2400,2402,2405],{"className":2401},[397],[385,2403],{"className":2404,"style":589},[401],[385,2406,2252],{"className":2407,"style":2251},[406,407],", written ",[385,2410,2412],{"className":2411},[388],[385,2413,2415,2479],{"className":2414,"ariaHidden":393},[392],[385,2416,2418,2422,2425,2428,2476],{"className":2417},[397],[385,2419],{"className":2420,"style":2421},[401],"height:0.8333em;vertical-align:-0.15em;",[385,2423,2269],{"className":2424},[406,407],[385,2426],{"className":2427,"style":640},[422],[385,2429,2431,2435],{"className":2430},[644],[385,2432,2434],{"className":2433},[644],"≤",[385,2436,2438],{"className":2437},[1069],[385,2439,2442,2467],{"className":2440},[1073,2441],"vlist-t2",[385,2443,2445,2462],{"className":2444},[1077],[385,2446,2449],{"className":2447,"style":2448},[1081],"height:0.3283em;",[385,2450,2452,2455],{"style":2451},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[385,2453],{"className":2454,"style":1090},[1089],[385,2456,2458],{"className":2457},[1094,1095,1096,1097],[385,2459,479],{"className":2460,"style":2461},[406,407,1097],"margin-right:0.1389em;",[385,2463,2466],{"className":2464},[2465],"vlist-s","​",[385,2468,2470],{"className":2469},[1077],[385,2471,2474],{"className":2472,"style":2473},[1081],"height:0.15em;",[385,2475],{},[385,2477],{"className":2478,"style":640},[422],[385,2480,2482,2485],{"className":2481},[397],[385,2483],{"className":2484,"style":589},[401],[385,2486,2252],{"className":2487,"style":2251},[406,407],", is a function ",[385,2490,2492],{"className":2491},[388],[385,2493,2495],{"className":2494,"ariaHidden":393},[392],[385,2496,2498,2502],{"className":2497},[397],[385,2499],{"className":2500,"style":2501},[401],"height:0.8889em;vertical-align:-0.1944em;",[385,2503,2506],{"className":2504,"style":2505},[406,407],"margin-right:0.1076em;","f"," computable in polynomial\ntime such that for every input ",[385,2509,2511],{"className":2510},[388],[385,2512,2514],{"className":2513,"ariaHidden":393},[392],[385,2515,2517,2520],{"className":2516},[397],[385,2518],{"className":2519,"style":615},[401],[385,2521,619],{"className":2522},[406,407],",\n",[385,2525,2527],{"className":2526},[388],[385,2528,2530,2565],{"className":2529,"ariaHidden":393},[392],[385,2531,2533,2536,2539,2546,2549,2552,2555,2559,2562],{"className":2532},[397],[385,2534],{"className":2535,"style":2501},[401],[385,2537,619],{"className":2538},[406,407],[385,2540,2542],{"className":2541},[406,550],[385,2543,2545],{"className":2544},[406]," is a yes-instance of ",[385,2547,2269],{"className":2548},[406,407],[385,2550],{"className":2551,"style":640},[422],[385,2553],{"className":2554,"style":640},[422],[385,2556,2558],{"className":2557},[644],"↔",[385,2560],{"className":2561,"style":640},[422],[385,2563],{"className":2564,"style":640},[422],[385,2566,2568,2571,2574,2577,2580,2583,2589,2592],{"className":2567},[397],[385,2569],{"className":2570,"style":402},[401],[385,2572,2506],{"className":2573,"style":2505},[406,407],[385,2575,414],{"className":2576},[413],[385,2578,619],{"className":2579},[406,407],[385,2581,444],{"className":2582},[443],[385,2584,2586],{"className":2585},[406,550],[385,2587,2545],{"className":2588},[406],[385,2590,2252],{"className":2591,"style":2251},[406,407],[385,2593,520],{"className":2594},[406],[381,2596,2597,2598,1252,2668,2701,2709,2710,2713,2714,2717,2718,2721,2722,2737,2738,2740,2741,2756,2757,2772],{},"Read ",[385,2599,2601],{"className":2600},[388],[385,2602,2604,2659],{"className":2603,"ariaHidden":393},[392],[385,2605,2607,2610,2613,2616,2656],{"className":2606},[397],[385,2608],{"className":2609,"style":2421},[401],[385,2611,2269],{"className":2612},[406,407],[385,2614],{"className":2615,"style":640},[422],[385,2617,2619,2622],{"className":2618},[644],[385,2620,2434],{"className":2621},[644],[385,2623,2625],{"className":2624},[1069],[385,2626,2628,2648],{"className":2627},[1073,2441],[385,2629,2631,2645],{"className":2630},[1077],[385,2632,2634],{"className":2633,"style":2448},[1081],[385,2635,2636,2639],{"style":2451},[385,2637],{"className":2638,"style":1090},[1089],[385,2640,2642],{"className":2641},[1094,1095,1096,1097],[385,2643,479],{"className":2644,"style":2461},[406,407,1097],[385,2646,2466],{"className":2647},[2465],[385,2649,2651],{"className":2650},[1077],[385,2652,2654],{"className":2653,"style":2473},[1081],[385,2655],{},[385,2657],{"className":2658,"style":640},[422],[385,2660,2662,2665],{"className":2661},[397],[385,2663],{"className":2664,"style":589},[401],[385,2666,2252],{"className":2667,"style":2251},[406,407],[599,2669,2670,2685,2686,520],{},[385,2671,2673],{"className":2672},[388],[385,2674,2676],{"className":2675,"ariaHidden":393},[392],[385,2677,2679,2682],{"className":2678},[397],[385,2680],{"className":2681,"style":589},[401],[385,2683,2269],{"className":2684},[406,407]," is no harder than ",[385,2687,2689],{"className":2688},[388],[385,2690,2692],{"className":2691,"ariaHidden":393},[392],[385,2693,2695,2698],{"className":2694},[397],[385,2696],{"className":2697,"style":589},[401],[385,2699,2252],{"className":2700,"style":2251},[406,407],[1277,2702,2703],{},[986,2704,2708],{"href":2705,"ariaDescribedBy":2706,"dataFootnoteRef":376,"id":2707},"#user-content-fn-clrs-reduce",[1283],"user-content-fnref-clrs-reduce","3"," Picture this as a\n",[455,2711,2712],{},"transform–solve–transform pipeline",": take the input, ",[447,2715,2716],{},"transform"," it into an\ninput for the other problem, hand that to a ",[447,2719,2720],{},"solver"," for ",[385,2723,2725],{"className":2724},[388],[385,2726,2728],{"className":2727,"ariaHidden":393},[392],[385,2729,2731,2734],{"className":2730},[397],[385,2732],{"className":2733,"style":589},[401],[385,2735,2252],{"className":2736,"style":2251},[406,407],", then ",[447,2739,2716],{},"\nthe solver's output back into an answer for ",[385,2742,2744],{"className":2743},[388],[385,2745,2747],{"className":2746,"ariaHidden":393},[392],[385,2748,2750,2753],{"className":2749},[397],[385,2751],{"className":2752,"style":589},[401],[385,2754,2269],{"className":2755},[406,407],". The solver for ",[385,2758,2760],{"className":2759},[388],[385,2761,2763],{"className":2762,"ariaHidden":393},[392],[385,2764,2766,2769],{"className":2765},[397],[385,2767],{"className":2768,"style":589},[401],[385,2770,2252],{"className":2771,"style":2251},[406,407]," is used as a\nblack-box subroutine, and we never look inside it.",[724,2774,2776,2991],{"className":2775},[727,728],[730,2777,2781],{"xmlns":732,"width":2778,"height":2779,"viewBox":2780},"691.285","130.688","-75 -75 518.464 98.016",[737,2782,2783,2787,2820,2847,2850,2866,2869,2896,2899,2913,2940,2943,2946,2949,2952,2979,2982,2985,2988],{"stroke":739,"style":740},[745,2784],{"fill":747,"d":2785,"style":2786},"M4.116-2.093V-68.07a4 4 0 0 1 4-4h361.886a4 4 0 0 1 4 4v65.977a4 4 0 0 1-4 4H8.116a4 4 0 0 1-4-4ZM374.002-72.07","stroke-dasharray:3.0,3.0",[737,2788,2789,2796,2802,2808,2814],{"stroke":747,"fontSize":1880},[737,2790,2792],{"transform":2791},"translate(143.176 42.959)",[745,2793],{"d":2794,"fill":739,"stroke":739,"className":2795,"style":760},"M18.712-27.455Q18.712-27.995 19.145-28.329Q19.578-28.663 20.184-28.802Q20.791-28.940 21.322-28.940L21.322-29.274Q21.322-29.533 21.204-29.777Q21.085-30.021 20.876-30.168Q20.668-30.316 20.395-30.316Q19.833-30.316 19.521-30.118Q19.670-30.091 19.762-29.973Q19.855-29.854 19.855-29.696Q19.855-29.520 19.729-29.390Q19.604-29.261 19.424-29.261Q19.235-29.261 19.108-29.388Q18.980-29.516 18.980-29.696Q18.980-30.166 19.420-30.373Q19.859-30.579 20.395-30.579Q20.685-30.579 20.973-30.491Q21.261-30.403 21.494-30.243Q21.727-30.083 21.876-29.843Q22.026-29.604 22.026-29.309L22.026-27.274Q22.026-27.121 22.100-26.982Q22.175-26.844 22.320-26.844Q22.474-26.844 22.546-26.980Q22.619-27.116 22.619-27.274L22.619-27.850L22.905-27.850L22.905-27.274Q22.905-26.941 22.656-26.716Q22.408-26.492 22.078-26.492Q21.819-26.492 21.637-26.686Q21.454-26.879 21.410-27.156Q21.243-26.835 20.909-26.639Q20.575-26.444 20.206-26.444Q19.653-26.444 19.182-26.692Q18.712-26.941 18.712-27.455M19.468-27.455Q19.468-27.143 19.710-26.925Q19.951-26.708 20.268-26.708Q20.703-26.708 21.013-27.017Q21.322-27.327 21.322-27.758L21.322-28.685Q20.905-28.685 20.479-28.558Q20.052-28.430 19.760-28.153Q19.468-27.877 19.468-27.455",[759],[737,2797,2798],{"transform":2791},[745,2799],{"d":2800,"fill":739,"stroke":739,"className":2801,"style":760},"M26.359-26.527L26.359-27.969Q26.359-28 26.387-28.024Q26.416-28.048 26.447-28.048L26.556-28.048Q26.592-28.048 26.613-28.026Q26.635-28.004 26.644-27.969Q26.904-26.708 27.870-26.708Q28.297-26.708 28.591-26.892Q28.885-27.077 28.885-27.481Q28.885-27.775 28.655-27.971Q28.424-28.167 28.112-28.228L27.510-28.347Q27.044-28.435 26.701-28.718Q26.359-29.002 26.359-29.441Q26.359-30.034 26.796-30.307Q27.233-30.579 27.870-30.579Q28.349-30.579 28.697-30.333L28.947-30.557Q29.004-30.579 29.004-30.579L29.057-30.579Q29.083-30.579 29.116-30.553Q29.149-30.526 29.149-30.496L29.149-29.336Q29.149-29.305 29.114-29.278Q29.079-29.252 29.057-29.252L28.947-29.252Q28.925-29.252 28.892-29.281Q28.859-29.309 28.859-29.336Q28.859-29.801 28.593-30.072Q28.327-30.342 27.862-30.342Q27.457-30.342 27.154-30.197Q26.851-30.052 26.851-29.696Q26.851-29.450 27.068-29.296Q27.286-29.142 27.563-29.085L28.191-28.958Q28.508-28.896 28.778-28.729Q29.048-28.562 29.215-28.296Q29.382-28.030 29.382-27.714Q29.382-27.072 28.956-26.758Q28.530-26.444 27.870-26.444Q27.598-26.444 27.332-26.538Q27.066-26.633 26.886-26.822L26.565-26.483Q26.548-26.444 26.499-26.444L26.447-26.444Q26.425-26.444 26.392-26.472Q26.359-26.501 26.359-26.527M29.953-28.452Q29.953-29.019 30.226-29.507Q30.498-29.995 30.968-30.287Q31.439-30.579 32.006-30.579Q32.427-30.579 32.803-30.410Q33.179-30.241 33.456-29.949Q33.733-29.656 33.891-29.261Q34.049-28.865 34.049-28.452Q34.049-27.903 33.770-27.441Q33.491-26.980 33.023-26.712Q32.555-26.444 32.006-26.444Q31.452-26.444 30.982-26.712Q30.511-26.980 30.232-27.441Q29.953-27.903 29.953-28.452M32.006-26.734Q32.502-26.734 32.779-26.995Q33.056-27.257 33.148-27.661Q33.240-28.066 33.240-28.562Q33.240-29.037 33.142-29.426Q33.043-29.815 32.770-30.065Q32.498-30.316 32.006-30.316Q31.294-30.316 31.030-29.821Q30.766-29.327 30.766-28.562Q30.766-27.762 31.021-27.248Q31.276-26.734 32.006-26.734M36.681-26.545L34.620-26.545L34.620-26.861Q34.928-26.861 35.119-26.914Q35.310-26.967 35.310-27.156L35.310-31.871Q35.310-32.113 35.240-32.221Q35.170-32.328 35.036-32.352Q34.902-32.377 34.620-32.377L34.620-32.693L35.987-32.790L35.987-27.156Q35.987-26.967 36.180-26.914Q36.374-26.861 36.681-26.861L36.681-26.545M39.112-26.563L37.780-29.810Q37.692-30.008 37.527-30.058Q37.363-30.109 37.059-30.109L37.059-30.425L38.984-30.425L38.984-30.109Q38.492-30.109 38.492-29.894Q38.492-29.872 38.509-29.810L39.525-27.336L40.434-29.560Q40.469-29.643 40.469-29.740Q40.469-29.911 40.346-30.010Q40.223-30.109 40.056-30.109L40.056-30.425L41.568-30.425L41.568-30.109Q41.282-30.109 41.069-29.966Q40.856-29.823 40.751-29.560L39.516-26.563Q39.472-26.444 39.344-26.444L39.283-26.444Q39.155-26.444 39.112-26.563",[759],[737,2803,2804],{"transform":2791},[745,2805],{"d":2806,"fill":739,"stroke":739,"className":2807,"style":760},"M43.831-26.444Q43.272-26.444 42.800-26.727Q42.328-27.011 42.053-27.488Q41.778-27.964 41.778-28.518Q41.778-28.914 41.921-29.289Q42.064-29.665 42.321-29.953Q42.578-30.241 42.936-30.410Q43.294-30.579 43.699-30.579Q44.244-30.579 44.615-30.342Q44.986-30.105 45.173-29.687Q45.360-29.270 45.360-28.733Q45.360-28.681 45.336-28.643Q45.311-28.606 45.263-28.606L42.591-28.606L42.591-28.527Q42.591-27.780 42.903-27.257Q43.215-26.734 43.914-26.734Q44.318-26.734 44.639-26.991Q44.960-27.248 45.083-27.652Q45.101-27.732 45.184-27.732L45.263-27.732Q45.303-27.732 45.331-27.701Q45.360-27.670 45.360-27.626L45.360-27.591Q45.254-27.248 45.032-26.989Q44.811-26.730 44.496-26.587Q44.182-26.444 43.831-26.444M42.600-28.857L44.714-28.857Q44.714-29.125 44.661-29.371Q44.608-29.617 44.488-29.839Q44.367-30.061 44.169-30.188Q43.971-30.316 43.699-30.316Q43.356-30.316 43.103-30.091Q42.851-29.867 42.725-29.529Q42.600-29.191 42.600-28.857M48.115-26.545L45.883-26.545L45.883-26.861Q46.195-26.861 46.386-26.914Q46.577-26.967 46.577-27.156L46.577-29.604Q46.577-29.845 46.507-29.953Q46.436-30.061 46.302-30.085Q46.168-30.109 45.883-30.109L45.883-30.425L47.197-30.522L47.197-29.661Q47.359-30.052 47.627-30.287Q47.895-30.522 48.287-30.522Q48.559-30.522 48.774-30.359Q48.990-30.197 48.990-29.938Q48.990-29.762 48.871-29.643Q48.752-29.524 48.577-29.524Q48.396-29.524 48.278-29.643Q48.159-29.762 48.159-29.938Q48.159-30.153 48.313-30.263L48.295-30.263Q47.917-30.263 47.685-30.001Q47.452-29.740 47.353-29.353Q47.254-28.966 47.254-28.606L47.254-27.156Q47.254-26.967 47.511-26.914Q47.768-26.861 48.115-26.861",[759],[737,2809,2810],{"transform":2791},[745,2811],{"d":2812,"fill":739,"stroke":739,"className":2813,"style":760},"M54.875-26.545L52.643-26.545L52.643-26.861Q52.950-26.861 53.141-26.914Q53.333-26.967 53.333-27.156L53.333-30.109L52.643-30.109L52.643-30.425L53.333-30.425L53.333-31.493Q53.333-31.876 53.546-32.199Q53.759-32.522 54.113-32.706Q54.466-32.891 54.844-32.891Q55.165-32.891 55.416-32.713Q55.666-32.535 55.666-32.223Q55.666-32.047 55.547-31.928Q55.429-31.810 55.253-31.810Q55.073-31.810 54.950-31.928Q54.827-32.047 54.827-32.223Q54.827-32.464 55.042-32.592Q54.937-32.627 54.800-32.627Q54.532-32.627 54.350-32.445Q54.168-32.262 54.075-31.992Q53.983-31.722 53.983-31.458L53.983-30.425L55.033-30.425L55.033-30.109L54.009-30.109L54.009-27.156Q54.009-26.967 54.266-26.914Q54.523-26.861 54.875-26.861L54.875-26.545M55.420-28.452Q55.420-29.019 55.692-29.507Q55.965-29.995 56.435-30.287Q56.905-30.579 57.472-30.579Q57.894-30.579 58.270-30.410Q58.646-30.241 58.922-29.949Q59.199-29.656 59.357-29.261Q59.516-28.865 59.516-28.452Q59.516-27.903 59.237-27.441Q58.958-26.980 58.490-26.712Q58.022-26.444 57.472-26.444Q56.918-26.444 56.448-26.712Q55.978-26.980 55.699-27.441Q55.420-27.903 55.420-28.452M57.472-26.734Q57.969-26.734 58.246-26.995Q58.523-27.257 58.615-27.661Q58.707-28.066 58.707-28.562Q58.707-29.037 58.608-29.426Q58.509-29.815 58.237-30.065Q57.964-30.316 57.472-30.316Q56.760-30.316 56.497-29.821Q56.233-29.327 56.233-28.562Q56.233-27.762 56.488-27.248Q56.743-26.734 57.472-26.734M62.262-26.545L60.030-26.545L60.030-26.861Q60.342-26.861 60.533-26.914Q60.724-26.967 60.724-27.156L60.724-29.604Q60.724-29.845 60.654-29.953Q60.584-30.061 60.450-30.085Q60.315-30.109 60.030-30.109L60.030-30.425L61.344-30.522L61.344-29.661Q61.506-30.052 61.774-30.287Q62.043-30.522 62.434-30.522Q62.706-30.522 62.921-30.359Q63.137-30.197 63.137-29.938Q63.137-29.762 63.018-29.643Q62.899-29.524 62.724-29.524Q62.543-29.524 62.425-29.643Q62.306-29.762 62.306-29.938Q62.306-30.153 62.460-30.263L62.442-30.263Q62.064-30.263 61.832-30.001Q61.599-29.740 61.500-29.353Q61.401-28.966 61.401-28.606L61.401-27.156Q61.401-26.967 61.658-26.914Q61.915-26.861 62.262-26.861",[759],[737,2815,2816],{"transform":2791},[745,2817],{"d":2818,"fill":739,"stroke":739,"className":2819,"style":760},"M68.649-26.545L66.918-26.545Q66.821-26.545 66.821-26.664Q66.821-26.721 66.852-26.791Q66.883-26.861 66.944-26.861Q67.634-26.861 68.034-27.472Q68.034-27.472 68.060-27.499L71.330-32.882Q71.391-32.987 71.519-32.987L71.607-32.987Q71.730-32.987 71.743-32.882L72.371-27.050Q72.415-26.932 72.606-26.897Q72.798-26.861 73.057-26.861Q73.101-26.861 73.134-26.824Q73.167-26.787 73.167-26.752Q73.167-26.545 73.004-26.545L70.772-26.545Q70.732-26.545 70.701-26.585Q70.671-26.624 70.671-26.664Q70.671-26.725 70.706-26.793Q70.741-26.861 70.798-26.861Q71.075-26.861 71.284-26.905Q71.492-26.949 71.536-27.103L71.374-28.588L69.053-28.588L68.333-27.393Q68.249-27.270 68.249-27.147Q68.249-26.989 68.390-26.925Q68.530-26.861 68.711-26.861Q68.755-26.861 68.781-26.828Q68.807-26.795 68.807-26.752Q68.807-26.545 68.649-26.545M71.022-31.827L69.251-28.905L71.339-28.905",[759],[737,2821,2822,2829,2835,2841],{"stroke":747,"fontSize":1880},[737,2823,2825],{"transform":2824},"translate(-83.946 -6.286)",[745,2826],{"d":2827,"fill":739,"stroke":739,"className":2828,"style":760},"M20.637-26.545L18.651-26.545L18.651-26.861Q18.958-26.861 19.149-26.914Q19.341-26.967 19.341-27.156L19.341-29.604Q19.341-29.850 19.275-29.955Q19.209-30.061 19.083-30.085Q18.958-30.109 18.686-30.109L18.686-30.425L20.017-30.522L20.017-27.156Q20.017-26.962 20.182-26.912Q20.347-26.861 20.637-26.861L20.637-26.545M19.037-32.069Q19.037-32.275 19.187-32.425Q19.336-32.574 19.538-32.574Q19.670-32.574 19.787-32.504Q19.903-32.434 19.973-32.317Q20.044-32.201 20.044-32.069Q20.044-31.867 19.894-31.717Q19.745-31.568 19.538-31.568Q19.336-31.568 19.187-31.717Q19.037-31.867 19.037-32.069M23.296-26.545L21.208-26.545L21.208-26.861Q21.516-26.861 21.707-26.914Q21.898-26.967 21.898-27.156L21.898-29.604Q21.898-29.845 21.828-29.953Q21.758-30.061 21.624-30.085Q21.489-30.109 21.208-30.109L21.208-30.425L22.549-30.522L22.549-29.687Q22.746-30.069 23.100-30.296Q23.454-30.522 23.880-30.522Q25.159-30.522 25.159-29.309L25.159-27.156Q25.159-26.967 25.350-26.914Q25.541-26.861 25.849-26.861L25.849-26.545L23.761-26.545L23.761-26.861Q24.073-26.861 24.265-26.914Q24.456-26.967 24.456-27.156L24.456-29.274Q24.456-29.533 24.412-29.755Q24.368-29.977 24.223-30.120Q24.078-30.263 23.819-30.263Q23.476-30.263 23.195-30.074Q22.913-29.885 22.757-29.573Q22.601-29.261 22.601-28.914L22.601-27.156Q22.601-26.967 22.795-26.914Q22.988-26.861 23.296-26.861L23.296-26.545M28.385-24.800L26.297-24.800L26.297-25.112Q26.609-25.112 26.800-25.163Q26.991-25.213 26.991-25.411L26.991-29.749Q26.991-29.990 26.818-30.050Q26.644-30.109 26.297-30.109L26.297-30.425L27.668-30.522L27.668-29.982Q27.927-30.250 28.261-30.386Q28.595-30.522 28.965-30.522Q29.364-30.522 29.720-30.355Q30.076-30.188 30.331-29.907Q30.586-29.626 30.729-29.261Q30.872-28.896 30.872-28.487Q30.872-27.925 30.595-27.459Q30.318-26.993 29.843-26.719Q29.369-26.444 28.820-26.444Q28.508-26.444 28.218-26.578Q27.927-26.712 27.695-26.958L27.695-25.411Q27.695-25.213 27.886-25.163Q28.077-25.112 28.385-25.112L28.385-24.800M27.695-29.568L27.695-27.437Q27.853-27.112 28.136-26.910Q28.420-26.708 28.762-26.708Q29.176-26.708 29.470-26.984Q29.764-27.261 29.912-27.679Q30.059-28.096 30.059-28.487Q30.059-28.865 29.925-29.274Q29.791-29.683 29.516-29.960Q29.241-30.236 28.864-30.236Q28.622-30.236 28.406-30.160Q28.191-30.083 28-29.922Q27.809-29.762 27.695-29.568M32.173-27.617L32.173-29.604Q32.173-29.845 32.102-29.953Q32.032-30.061 31.898-30.085Q31.764-30.109 31.483-30.109L31.483-30.425L32.876-30.522L32.876-27.652Q32.876-27.274 32.922-27.088Q32.968-26.901 33.139-26.804Q33.311-26.708 33.667-26.708Q34.001-26.708 34.240-26.899Q34.480-27.090 34.605-27.393Q34.730-27.696 34.730-28.013L34.730-29.604Q34.730-29.845 34.660-29.953Q34.590-30.061 34.456-30.085Q34.322-30.109 34.036-30.109L34.036-30.425L35.433-30.522L35.433-27.362Q35.433-27.125 35.504-27.017Q35.574-26.910 35.708-26.886Q35.842-26.861 36.123-26.861L36.123-26.545L34.757-26.444L34.757-27.165Q34.590-26.839 34.284-26.642Q33.979-26.444 33.623-26.444Q32.964-26.444 32.568-26.714Q32.173-26.984 32.173-27.617M37.257-27.617L37.257-30.109L36.492-30.109L36.492-30.368Q36.897-30.368 37.163-30.634Q37.428-30.900 37.549-31.300Q37.670-31.700 37.670-32.082L37.960-32.082L37.960-30.425L39.248-30.425L39.248-30.109L37.960-30.109L37.960-27.652Q37.960-27.283 38.085-27.009Q38.211-26.734 38.536-26.734Q38.835-26.734 38.973-27.028Q39.112-27.323 39.112-27.652L39.112-28.175L39.397-28.175L39.397-27.617Q39.397-27.340 39.287-27.068Q39.177-26.795 38.964-26.620Q38.751-26.444 38.470-26.444Q38.110-26.444 37.837-26.582Q37.565-26.721 37.411-26.984Q37.257-27.248 37.257-27.617",[759],[737,2830,2831],{"transform":2824},[745,2832],{"d":2833,"fill":739,"stroke":739,"className":2834,"style":760},"M43.738-26.835Q43.914-26.708 44.187-26.708Q44.477-26.708 44.690-26.962Q44.903-27.217 44.982-27.534L45.386-29.147Q45.474-29.524 45.474-29.713Q45.474-29.938 45.347-30.100Q45.219-30.263 45-30.263Q44.582-30.263 44.250-29.913Q43.919-29.564 43.800-29.111Q43.782-29.028 43.712-29.028L43.602-29.028Q43.514-29.028 43.514-29.147Q43.646-29.687 44.068-30.105Q44.490-30.522 45.017-30.522Q45.351-30.522 45.626-30.351Q45.901-30.179 46.015-29.885Q46.173-30.157 46.419-30.340Q46.665-30.522 46.951-30.522Q47.289-30.522 47.562-30.355Q47.834-30.188 47.834-29.867Q47.834-29.639 47.691-29.470Q47.549-29.300 47.311-29.300Q47.171-29.300 47.065-29.393Q46.960-29.485 46.960-29.630Q46.960-29.815 47.083-29.957Q47.206-30.100 47.390-30.135Q47.210-30.263 46.933-30.263Q46.643-30.263 46.432-30.006Q46.221-29.749 46.142-29.432L45.738-27.824Q45.646-27.463 45.646-27.266Q45.646-27.033 45.775-26.870Q45.905-26.708 46.134-26.708Q46.419-26.708 46.667-26.877Q46.916-27.046 47.089-27.318Q47.263-27.591 47.329-27.859Q47.338-27.890 47.362-27.914Q47.386-27.938 47.421-27.938L47.527-27.938Q47.566-27.938 47.592-27.901Q47.619-27.863 47.619-27.824Q47.531-27.477 47.311-27.158Q47.092-26.839 46.775-26.642Q46.459-26.444 46.116-26.444Q45.778-26.444 45.503-26.613Q45.228-26.782 45.105-27.086Q44.956-26.817 44.707-26.631Q44.459-26.444 44.178-26.444Q43.835-26.444 43.561-26.611Q43.286-26.778 43.286-27.103Q43.286-27.327 43.435-27.499Q43.585-27.670 43.818-27.670Q43.963-27.670 44.066-27.578Q44.169-27.485 44.169-27.336Q44.169-27.160 44.046-27.013Q43.923-26.866 43.738-26.835",[759],[737,2836,2837],{"transform":2824},[745,2838],{"d":2839,"fill":739,"stroke":739,"className":2840,"style":760},"M53.875-26.545L51.643-26.545L51.643-26.861Q51.950-26.861 52.141-26.914Q52.333-26.967 52.333-27.156L52.333-30.109L51.643-30.109L51.643-30.425L52.333-30.425L52.333-31.493Q52.333-31.876 52.546-32.199Q52.759-32.522 53.113-32.706Q53.466-32.891 53.844-32.891Q54.165-32.891 54.416-32.713Q54.666-32.535 54.666-32.223Q54.666-32.047 54.547-31.928Q54.429-31.810 54.253-31.810Q54.073-31.810 53.950-31.928Q53.827-32.047 53.827-32.223Q53.827-32.464 54.042-32.592Q53.937-32.627 53.800-32.627Q53.532-32.627 53.350-32.445Q53.168-32.262 53.075-31.992Q52.983-31.722 52.983-31.458L52.983-30.425L54.033-30.425L54.033-30.109L53.009-30.109L53.009-27.156Q53.009-26.967 53.266-26.914Q53.523-26.861 53.875-26.861L53.875-26.545M54.420-28.452Q54.420-29.019 54.692-29.507Q54.965-29.995 55.435-30.287Q55.905-30.579 56.472-30.579Q56.894-30.579 57.270-30.410Q57.646-30.241 57.922-29.949Q58.199-29.656 58.357-29.261Q58.516-28.865 58.516-28.452Q58.516-27.903 58.237-27.441Q57.958-26.980 57.490-26.712Q57.022-26.444 56.472-26.444Q55.918-26.444 55.448-26.712Q54.978-26.980 54.699-27.441Q54.420-27.903 54.420-28.452M56.472-26.734Q56.969-26.734 57.246-26.995Q57.523-27.257 57.615-27.661Q57.707-28.066 57.707-28.562Q57.707-29.037 57.608-29.426Q57.509-29.815 57.237-30.065Q56.964-30.316 56.472-30.316Q55.760-30.316 55.497-29.821Q55.233-29.327 55.233-28.562Q55.233-27.762 55.488-27.248Q55.743-26.734 56.472-26.734M61.262-26.545L59.030-26.545L59.030-26.861Q59.342-26.861 59.533-26.914Q59.724-26.967 59.724-27.156L59.724-29.604Q59.724-29.845 59.654-29.953Q59.584-30.061 59.450-30.085Q59.315-30.109 59.030-30.109L59.030-30.425L60.344-30.522L60.344-29.661Q60.506-30.052 60.774-30.287Q61.043-30.522 61.434-30.522Q61.706-30.522 61.921-30.359Q62.137-30.197 62.137-29.938Q62.137-29.762 62.018-29.643Q61.899-29.524 61.724-29.524Q61.543-29.524 61.425-29.643Q61.306-29.762 61.306-29.938Q61.306-30.153 61.460-30.263L61.442-30.263Q61.064-30.263 60.832-30.001Q60.599-29.740 60.500-29.353Q60.401-28.966 60.401-28.606L60.401-27.156Q60.401-26.967 60.658-26.914Q60.915-26.861 61.262-26.861",[759],[737,2842,2843],{"transform":2824},[745,2844],{"d":2845,"fill":739,"stroke":739,"className":2846,"style":760},"M67.650-26.545L65.919-26.545Q65.822-26.545 65.822-26.664Q65.822-26.721 65.853-26.791Q65.884-26.861 65.945-26.861Q66.635-26.861 67.035-27.472Q67.035-27.472 67.061-27.499L70.331-32.882Q70.392-32.987 70.520-32.987L70.608-32.987Q70.731-32.987 70.744-32.882L71.372-27.050Q71.416-26.932 71.607-26.897Q71.799-26.861 72.058-26.861Q72.102-26.861 72.135-26.824Q72.168-26.787 72.168-26.752Q72.168-26.545 72.005-26.545L69.773-26.545Q69.733-26.545 69.702-26.585Q69.672-26.624 69.672-26.664Q69.672-26.725 69.707-26.793Q69.742-26.861 69.799-26.861Q70.076-26.861 70.285-26.905Q70.493-26.949 70.537-27.103L70.375-28.588L68.054-28.588L67.334-27.393Q67.250-27.270 67.250-27.147Q67.250-26.989 67.391-26.925Q67.531-26.861 67.712-26.861Q67.756-26.861 67.782-26.828Q67.808-26.795 67.808-26.752Q67.808-26.545 67.650-26.545M70.023-31.827L68.252-28.905L70.340-28.905",[759],[745,2848],{"fill":747,"d":2849},"M99.7-54.998H33.725a4 4 0 0 0-4 4v31.834a4 4 0 0 0 4 4H99.7a4 4 0 0 0 4-4v-31.834a4 4 0 0 0-4-4ZM29.725-15.164",[737,2851,2853,2860],{"stroke":747,"fontFamily":2852,"fontSize":1880},"cmr9",[737,2854,2856],{"transform":2855},"translate(28.667 -.786)",[745,2857],{"d":2858,"fill":739,"stroke":739,"className":2859,"style":760},"M19.279-38.617L19.279-41.109L18.514-41.109L18.514-41.368Q18.919-41.368 19.185-41.634Q19.450-41.900 19.571-42.300Q19.692-42.700 19.692-43.082L19.982-43.082L19.982-41.425L21.270-41.425L21.270-41.109L19.982-41.109L19.982-38.652Q19.982-38.283 20.107-38.009Q20.233-37.734 20.558-37.734Q20.857-37.734 20.995-38.028Q21.134-38.323 21.134-38.652L21.134-39.175L21.419-39.175L21.419-38.617Q21.419-38.340 21.309-38.068Q21.199-37.795 20.986-37.620Q20.773-37.444 20.492-37.444Q20.132-37.444 19.859-37.582Q19.587-37.721 19.433-37.984Q19.279-38.248 19.279-38.617M24.416-37.545L22.184-37.545L22.184-37.861Q22.496-37.861 22.687-37.914Q22.878-37.967 22.878-38.156L22.878-40.604Q22.878-40.845 22.808-40.953Q22.738-41.061 22.603-41.085Q22.469-41.109 22.184-41.109L22.184-41.425L23.498-41.522L23.498-40.661Q23.660-41.052 23.928-41.287Q24.197-41.522 24.588-41.522Q24.860-41.522 25.075-41.359Q25.291-41.197 25.291-40.938Q25.291-40.762 25.172-40.643Q25.053-40.524 24.878-40.524Q24.697-40.524 24.579-40.643Q24.460-40.762 24.460-40.938Q24.460-41.153 24.614-41.263L24.596-41.263Q24.218-41.263 23.986-41.001Q23.753-40.740 23.654-40.353Q23.555-39.966 23.555-39.606L23.555-38.156Q23.555-37.967 23.812-37.914Q24.069-37.861 24.416-37.861L24.416-37.545M25.919-38.455Q25.919-38.995 26.352-39.329Q26.785-39.663 27.391-39.802Q27.998-39.940 28.530-39.940L28.530-40.274Q28.530-40.533 28.411-40.777Q28.292-41.021 28.083-41.168Q27.875-41.316 27.602-41.316Q27.040-41.316 26.728-41.118Q26.877-41.091 26.969-40.973Q27.062-40.854 27.062-40.696Q27.062-40.520 26.937-40.390Q26.811-40.261 26.631-40.261Q26.442-40.261 26.315-40.388Q26.187-40.516 26.187-40.696Q26.187-41.166 26.627-41.373Q27.066-41.579 27.602-41.579Q27.892-41.579 28.180-41.491Q28.468-41.403 28.701-41.243Q28.934-41.083 29.083-40.843Q29.233-40.604 29.233-40.309L29.233-38.274Q29.233-38.121 29.307-37.982Q29.382-37.844 29.527-37.844Q29.681-37.844 29.753-37.980Q29.826-38.116 29.826-38.274L29.826-38.850L30.112-38.850L30.112-38.274Q30.112-37.941 29.863-37.716Q29.615-37.492 29.285-37.492Q29.026-37.492 28.844-37.686Q28.661-37.879 28.617-38.156Q28.450-37.835 28.116-37.639Q27.782-37.444 27.413-37.444Q26.860-37.444 26.389-37.692Q25.919-37.941 25.919-38.455M26.675-38.455Q26.675-38.143 26.917-37.925Q27.158-37.708 27.475-37.708Q27.910-37.708 28.220-38.017Q28.530-38.327 28.530-38.758L28.530-39.685Q28.112-39.685 27.686-39.558Q27.260-39.430 26.967-39.153Q26.675-38.877 26.675-38.455M32.555-37.545L30.468-37.545L30.468-37.861Q30.775-37.861 30.966-37.914Q31.157-37.967 31.157-38.156L31.157-40.604Q31.157-40.845 31.087-40.953Q31.017-41.061 30.883-41.085Q30.749-41.109 30.468-41.109L30.468-41.425L31.808-41.522L31.808-40.687Q32.006-41.069 32.359-41.296Q32.713-41.522 33.139-41.522Q34.418-41.522 34.418-40.309L34.418-38.156Q34.418-37.967 34.609-37.914Q34.801-37.861 35.108-37.861L35.108-37.545L33.021-37.545L33.021-37.861Q33.333-37.861 33.524-37.914Q33.715-37.967 33.715-38.156L33.715-40.274Q33.715-40.533 33.671-40.755Q33.627-40.977 33.482-41.120Q33.337-41.263 33.078-41.263Q32.735-41.263 32.454-41.074Q32.173-40.885 32.017-40.573Q31.861-40.261 31.861-39.914L31.861-38.156Q31.861-37.967 32.054-37.914Q32.247-37.861 32.555-37.861L32.555-37.545M35.614-37.527L35.614-38.969Q35.614-39 35.642-39.024Q35.671-39.048 35.701-39.048L35.811-39.048Q35.846-39.048 35.868-39.026Q35.890-39.004 35.899-38.969Q36.158-37.708 37.125-37.708Q37.551-37.708 37.846-37.892Q38.140-38.077 38.140-38.481Q38.140-38.775 37.910-38.971Q37.679-39.167 37.367-39.228L36.765-39.347Q36.299-39.435 35.956-39.718Q35.614-40.002 35.614-40.441Q35.614-41.034 36.051-41.307Q36.488-41.579 37.125-41.579Q37.604-41.579 37.951-41.333L38.202-41.557Q38.259-41.579 38.259-41.579L38.312-41.579Q38.338-41.579 38.371-41.553Q38.404-41.526 38.404-41.496L38.404-40.336Q38.404-40.305 38.369-40.278Q38.334-40.252 38.312-40.252L38.202-40.252Q38.180-40.252 38.147-40.281Q38.114-40.309 38.114-40.336Q38.114-40.801 37.848-41.072Q37.582-41.342 37.116-41.342Q36.712-41.342 36.409-41.197Q36.106-41.052 36.106-40.696Q36.106-40.450 36.323-40.296Q36.541-40.142 36.818-40.085L37.446-39.958Q37.762-39.896 38.033-39.729Q38.303-39.562 38.470-39.296Q38.637-39.030 38.637-38.714Q38.637-38.072 38.211-37.758Q37.784-37.444 37.125-37.444Q36.853-37.444 36.587-37.538Q36.321-37.633 36.141-37.822L35.820-37.483Q35.802-37.444 35.754-37.444L35.701-37.444Q35.679-37.444 35.646-37.472Q35.614-37.501 35.614-37.527M41.489-37.545L39.257-37.545L39.257-37.861Q39.564-37.861 39.755-37.914Q39.947-37.967 39.947-38.156L39.947-41.109L39.257-41.109L39.257-41.425L39.947-41.425L39.947-42.493Q39.947-42.876 40.160-43.199Q40.373-43.522 40.727-43.706Q41.080-43.891 41.458-43.891Q41.779-43.891 42.030-43.713Q42.280-43.535 42.280-43.223Q42.280-43.047 42.161-42.928Q42.043-42.810 41.867-42.810Q41.687-42.810 41.564-42.928Q41.441-43.047 41.441-43.223Q41.441-43.464 41.656-43.592Q41.551-43.627 41.414-43.627Q41.146-43.627 40.964-43.445Q40.781-43.262 40.689-42.992Q40.597-42.722 40.597-42.458L40.597-41.425L41.647-41.425L41.647-41.109L40.623-41.109L40.623-38.156Q40.623-37.967 40.880-37.914Q41.137-37.861 41.489-37.861L41.489-37.545M42.034-39.452Q42.034-40.019 42.306-40.507Q42.579-40.995 43.049-41.287Q43.519-41.579 44.086-41.579Q44.508-41.579 44.884-41.410Q45.260-41.241 45.536-40.949Q45.813-40.656 45.971-40.261Q46.130-39.865 46.130-39.452Q46.130-38.903 45.851-38.441Q45.572-37.980 45.103-37.712Q44.635-37.444 44.086-37.444Q43.532-37.444 43.062-37.712Q42.592-37.980 42.313-38.441Q42.034-38.903 42.034-39.452M44.086-37.734Q44.583-37.734 44.860-37.995Q45.136-38.257 45.229-38.661Q45.321-39.066 45.321-39.562Q45.321-40.037 45.222-40.426Q45.123-40.815 44.851-41.065Q44.578-41.316 44.086-41.316Q43.374-41.316 43.111-40.821Q42.847-40.327 42.847-39.562Q42.847-38.762 43.102-38.248Q43.357-37.734 44.086-37.734M48.876-37.545L46.644-37.545L46.644-37.861Q46.956-37.861 47.147-37.914Q47.338-37.967 47.338-38.156L47.338-40.604Q47.338-40.845 47.268-40.953Q47.197-41.061 47.063-41.085Q46.929-41.109 46.644-41.109L46.644-41.425L47.958-41.522L47.958-40.661Q48.120-41.052 48.388-41.287Q48.656-41.522 49.048-41.522Q49.320-41.522 49.535-41.359Q49.751-41.197 49.751-40.938Q49.751-40.762 49.632-40.643Q49.513-40.524 49.338-40.524Q49.157-40.524 49.039-40.643Q48.920-40.762 48.920-40.938Q48.920-41.153 49.074-41.263L49.056-41.263Q48.678-41.263 48.446-41.001Q48.213-40.740 48.114-40.353Q48.015-39.966 48.015-39.606L48.015-38.156Q48.015-37.967 48.272-37.914Q48.529-37.861 48.876-37.861L48.876-37.545M52.396-37.545L50.309-37.545L50.309-37.861Q50.616-37.861 50.808-37.914Q50.999-37.967 50.999-38.156L50.999-40.604Q50.999-40.845 50.928-40.953Q50.858-41.061 50.724-41.085Q50.590-41.109 50.309-41.109L50.309-41.425L51.649-41.522L51.649-40.687Q51.847-41.065 52.207-41.294Q52.568-41.522 52.989-41.522Q54.035-41.522 54.220-40.713Q54.422-41.083 54.780-41.302Q55.138-41.522 55.556-41.522Q56.180-41.522 56.505-41.228Q56.830-40.933 56.830-40.309L56.830-38.156Q56.830-37.967 57.024-37.914Q57.217-37.861 57.525-37.861L57.525-37.545L55.437-37.545L55.437-37.861Q55.745-37.861 55.938-37.914Q56.132-37.967 56.132-38.156L56.132-40.274Q56.132-40.705 56.004-40.984Q55.877-41.263 55.490-41.263Q55.147-41.263 54.864-41.074Q54.580-40.885 54.424-40.573Q54.268-40.261 54.268-39.914L54.268-38.156Q54.268-37.967 54.459-37.914Q54.651-37.861 54.958-37.861L54.958-37.545L52.871-37.545L52.871-37.861Q53.183-37.861 53.374-37.914Q53.565-37.967 53.565-38.156L53.565-40.274Q53.565-40.533 53.521-40.755Q53.477-40.977 53.332-41.120Q53.187-41.263 52.928-41.263Q52.392-41.263 52.047-40.856Q51.702-40.450 51.702-39.914L51.702-38.156Q51.702-37.967 51.895-37.914Q52.089-37.861 52.396-37.861",[759],[737,2861,2862],{"transform":2855},[745,2863],{"d":2864,"fill":739,"stroke":739,"className":2865,"style":760},"M29.548-26.545L27.562-26.545L27.562-26.861Q27.869-26.861 28.060-26.914Q28.252-26.967 28.252-27.156L28.252-29.604Q28.252-29.850 28.186-29.955Q28.120-30.061 27.994-30.085Q27.869-30.109 27.597-30.109L27.597-30.425L28.928-30.522L28.928-27.156Q28.928-26.962 29.093-26.912Q29.258-26.861 29.548-26.861L29.548-26.545M27.948-32.069Q27.948-32.275 28.098-32.425Q28.247-32.574 28.449-32.574Q28.581-32.574 28.698-32.504Q28.814-32.434 28.884-32.317Q28.955-32.201 28.955-32.069Q28.955-31.867 28.805-31.717Q28.656-31.568 28.449-31.568Q28.247-31.568 28.098-31.717Q27.948-31.867 27.948-32.069M32.207-26.545L30.119-26.545L30.119-26.861Q30.427-26.861 30.618-26.914Q30.809-26.967 30.809-27.156L30.809-29.604Q30.809-29.845 30.739-29.953Q30.669-30.061 30.535-30.085Q30.400-30.109 30.119-30.109L30.119-30.425L31.460-30.522L31.460-29.687Q31.657-30.069 32.011-30.296Q32.365-30.522 32.791-30.522Q34.070-30.522 34.070-29.309L34.070-27.156Q34.070-26.967 34.261-26.914Q34.452-26.861 34.760-26.861L34.760-26.545L32.672-26.545L32.672-26.861Q32.984-26.861 33.176-26.914Q33.367-26.967 33.367-27.156L33.367-29.274Q33.367-29.533 33.323-29.755Q33.279-29.977 33.134-30.120Q32.989-30.263 32.730-30.263Q32.387-30.263 32.106-30.074Q31.824-29.885 31.668-29.573Q31.512-29.261 31.512-28.914L31.512-27.156Q31.512-26.967 31.706-26.914Q31.899-26.861 32.207-26.861L32.207-26.545M37.296-24.800L35.208-24.800L35.208-25.112Q35.520-25.112 35.711-25.163Q35.902-25.213 35.902-25.411L35.902-29.749Q35.902-29.990 35.729-30.050Q35.555-30.109 35.208-30.109L35.208-30.425L36.579-30.522L36.579-29.982Q36.838-30.250 37.172-30.386Q37.506-30.522 37.876-30.522Q38.275-30.522 38.631-30.355Q38.987-30.188 39.242-29.907Q39.497-29.626 39.640-29.261Q39.783-28.896 39.783-28.487Q39.783-27.925 39.506-27.459Q39.229-26.993 38.754-26.719Q38.280-26.444 37.731-26.444Q37.419-26.444 37.129-26.578Q36.838-26.712 36.606-26.958L36.606-25.411Q36.606-25.213 36.797-25.163Q36.988-25.112 37.296-25.112L37.296-24.800M36.606-29.568L36.606-27.437Q36.764-27.112 37.047-26.910Q37.331-26.708 37.673-26.708Q38.087-26.708 38.381-26.984Q38.675-27.261 38.823-27.679Q38.970-28.096 38.970-28.487Q38.970-28.865 38.836-29.274Q38.702-29.683 38.427-29.960Q38.152-30.236 37.775-30.236Q37.533-30.236 37.317-30.160Q37.102-30.083 36.911-29.922Q36.720-29.762 36.606-29.568M41.084-27.617L41.084-29.604Q41.084-29.845 41.013-29.953Q40.943-30.061 40.809-30.085Q40.675-30.109 40.394-30.109L40.394-30.425L41.787-30.522L41.787-27.652Q41.787-27.274 41.833-27.088Q41.879-26.901 42.050-26.804Q42.222-26.708 42.578-26.708Q42.912-26.708 43.151-26.899Q43.391-27.090 43.516-27.393Q43.641-27.696 43.641-28.013L43.641-29.604Q43.641-29.845 43.571-29.953Q43.501-30.061 43.367-30.085Q43.233-30.109 42.947-30.109L42.947-30.425L44.344-30.522L44.344-27.362Q44.344-27.125 44.415-27.017Q44.485-26.910 44.619-26.886Q44.753-26.861 45.034-26.861L45.034-26.545L43.668-26.444L43.668-27.165Q43.501-26.839 43.195-26.642Q42.890-26.444 42.534-26.444Q41.875-26.444 41.479-26.714Q41.084-26.984 41.084-27.617M46.168-27.617L46.168-30.109L45.403-30.109L45.403-30.368Q45.808-30.368 46.074-30.634Q46.339-30.900 46.460-31.300Q46.581-31.700 46.581-32.082L46.871-32.082L46.871-30.425L48.159-30.425L48.159-30.109L46.871-30.109L46.871-27.652Q46.871-27.283 46.996-27.009Q47.122-26.734 47.447-26.734Q47.746-26.734 47.884-27.028Q48.023-27.323 48.023-27.652L48.023-28.175L48.308-28.175L48.308-27.617Q48.308-27.340 48.198-27.068Q48.088-26.795 47.875-26.620Q47.662-26.444 47.381-26.444Q47.021-26.444 46.748-26.582Q46.476-26.721 46.322-26.984Q46.168-27.248 46.168-27.617",[759],[745,2867],{"fill":747,"d":2868},"M222.048-54.998H156.07a4 4 0 0 0-4 4v31.834a4 4 0 0 0 4 4h65.978a4 4 0 0 0 4-4v-31.834a4 4 0 0 0-4-4ZM152.07-15.164",[737,2870,2871,2878,2884,2890],{"stroke":747,"fontSize":1880},[737,2872,2874],{"transform":2873},"translate(159.116 .09)",[745,2875],{"d":2876,"fill":739,"stroke":739,"className":2877,"style":760},"M18.651-37.527L18.651-38.969Q18.651-39 18.679-39.024Q18.708-39.048 18.739-39.048L18.848-39.048Q18.884-39.048 18.906-39.026Q18.927-39.004 18.936-38.969Q19.196-37.708 20.162-37.708Q20.589-37.708 20.883-37.892Q21.177-38.077 21.177-38.481Q21.177-38.775 20.947-38.971Q20.716-39.167 20.404-39.228L19.802-39.347Q19.336-39.435 18.993-39.718Q18.651-40.002 18.651-40.441Q18.651-41.034 19.088-41.307Q19.525-41.579 20.162-41.579Q20.641-41.579 20.989-41.333L21.239-41.557Q21.296-41.579 21.296-41.579L21.349-41.579Q21.375-41.579 21.408-41.553Q21.441-41.526 21.441-41.496L21.441-40.336Q21.441-40.305 21.406-40.278Q21.371-40.252 21.349-40.252L21.239-40.252Q21.217-40.252 21.184-40.281Q21.151-40.309 21.151-40.336Q21.151-40.801 20.885-41.072Q20.619-41.342 20.154-41.342Q19.749-41.342 19.446-41.197Q19.143-41.052 19.143-40.696Q19.143-40.450 19.360-40.296Q19.578-40.142 19.855-40.085L20.483-39.958Q20.800-39.896 21.070-39.729Q21.340-39.562 21.507-39.296Q21.674-39.030 21.674-38.714Q21.674-38.072 21.248-37.758Q20.822-37.444 20.162-37.444Q19.890-37.444 19.624-37.538Q19.358-37.633 19.178-37.822L18.857-37.483Q18.840-37.444 18.791-37.444L18.739-37.444Q18.717-37.444 18.684-37.472Q18.651-37.501 18.651-37.527M22.245-39.452Q22.245-40.019 22.518-40.507Q22.790-40.995 23.260-41.287Q23.731-41.579 24.298-41.579Q24.719-41.579 25.095-41.410Q25.471-41.241 25.748-40.949Q26.025-40.656 26.183-40.261Q26.341-39.865 26.341-39.452Q26.341-38.903 26.062-38.441Q25.783-37.980 25.315-37.712Q24.847-37.444 24.298-37.444Q23.744-37.444 23.274-37.712Q22.803-37.980 22.524-38.441Q22.245-38.903 22.245-39.452M24.298-37.734Q24.794-37.734 25.071-37.995Q25.348-38.257 25.440-38.661Q25.532-39.066 25.532-39.562Q25.532-40.037 25.434-40.426Q25.335-40.815 25.062-41.065Q24.790-41.316 24.298-41.316Q23.586-41.316 23.322-40.821Q23.058-40.327 23.058-39.562Q23.058-38.762 23.313-38.248Q23.568-37.734 24.298-37.734M28.973-37.545L26.912-37.545L26.912-37.861Q27.220-37.861 27.411-37.914Q27.602-37.967 27.602-38.156L27.602-42.871Q27.602-43.113 27.532-43.221Q27.462-43.328 27.328-43.352Q27.194-43.377 26.912-43.377L26.912-43.693L28.279-43.790L28.279-38.156Q28.279-37.967 28.472-37.914Q28.666-37.861 28.973-37.861L28.973-37.545M31.404-37.563L30.072-40.810Q29.984-41.008 29.819-41.058Q29.655-41.109 29.351-41.109L29.351-41.425L31.276-41.425L31.276-41.109Q30.784-41.109 30.784-40.894Q30.784-40.872 30.801-40.810L31.817-38.336L32.726-40.560Q32.761-40.643 32.761-40.740Q32.761-40.911 32.638-41.010Q32.515-41.109 32.348-41.109L32.348-41.425L33.860-41.425L33.860-41.109Q33.574-41.109 33.361-40.966Q33.148-40.823 33.043-40.560L31.808-37.563Q31.764-37.444 31.636-37.444L31.575-37.444Q31.447-37.444 31.404-37.563",[759],[737,2879,2880],{"transform":2873},[745,2881],{"d":2882,"fill":739,"stroke":739,"className":2883,"style":760},"M36.123-37.444Q35.564-37.444 35.092-37.727Q34.620-38.011 34.345-38.488Q34.070-38.964 34.070-39.518Q34.070-39.914 34.213-40.289Q34.356-40.665 34.613-40.953Q34.870-41.241 35.228-41.410Q35.586-41.579 35.991-41.579Q36.536-41.579 36.907-41.342Q37.278-41.105 37.465-40.687Q37.652-40.270 37.652-39.733Q37.652-39.681 37.628-39.643Q37.603-39.606 37.555-39.606L34.883-39.606L34.883-39.527Q34.883-38.780 35.195-38.257Q35.507-37.734 36.206-37.734Q36.610-37.734 36.931-37.991Q37.252-38.248 37.375-38.652Q37.393-38.732 37.476-38.732L37.555-38.732Q37.595-38.732 37.623-38.701Q37.652-38.670 37.652-38.626L37.652-38.591Q37.546-38.248 37.324-37.989Q37.103-37.730 36.788-37.587Q36.474-37.444 36.123-37.444M34.892-39.857L37.006-39.857Q37.006-40.125 36.953-40.371Q36.900-40.617 36.780-40.839Q36.659-41.061 36.461-41.188Q36.263-41.316 35.991-41.316Q35.648-41.316 35.395-41.091Q35.143-40.867 35.017-40.529Q34.892-40.191 34.892-39.857M40.407-37.545L38.175-37.545L38.175-37.861Q38.487-37.861 38.678-37.914Q38.869-37.967 38.869-38.156L38.869-40.604Q38.869-40.845 38.799-40.953Q38.728-41.061 38.594-41.085Q38.460-41.109 38.175-41.109L38.175-41.425L39.489-41.522L39.489-40.661Q39.651-41.052 39.919-41.287Q40.187-41.522 40.579-41.522Q40.851-41.522 41.066-41.359Q41.282-41.197 41.282-40.938Q41.282-40.762 41.163-40.643Q41.044-40.524 40.869-40.524Q40.688-40.524 40.570-40.643Q40.451-40.762 40.451-40.938Q40.451-41.153 40.605-41.263L40.587-41.263Q40.209-41.263 39.977-41.001Q39.744-40.740 39.645-40.353Q39.546-39.966 39.546-39.606L39.546-38.156Q39.546-37.967 39.803-37.914Q40.060-37.861 40.407-37.861",[759],[737,2885,2886],{"transform":2873},[745,2887],{"d":2888,"fill":739,"stroke":739,"className":2889,"style":760},"M21.683-26.545L19.451-26.545L19.451-26.861Q19.758-26.861 19.949-26.914Q20.141-26.967 20.141-27.156L20.141-30.109L19.451-30.109L19.451-30.425L20.141-30.425L20.141-31.493Q20.141-31.876 20.354-32.199Q20.567-32.522 20.921-32.706Q21.274-32.891 21.652-32.891Q21.973-32.891 22.224-32.713Q22.474-32.535 22.474-32.223Q22.474-32.047 22.355-31.928Q22.237-31.810 22.061-31.810Q21.881-31.810 21.758-31.928Q21.635-32.047 21.635-32.223Q21.635-32.464 21.850-32.592Q21.745-32.627 21.608-32.627Q21.340-32.627 21.158-32.445Q20.976-32.262 20.883-31.992Q20.791-31.722 20.791-31.458L20.791-30.425L21.841-30.425L21.841-30.109L20.817-30.109L20.817-27.156Q20.817-26.967 21.074-26.914Q21.331-26.861 21.683-26.861L21.683-26.545M22.228-28.452Q22.228-29.019 22.500-29.507Q22.773-29.995 23.243-30.287Q23.713-30.579 24.280-30.579Q24.702-30.579 25.078-30.410Q25.454-30.241 25.730-29.949Q26.007-29.656 26.165-29.261Q26.324-28.865 26.324-28.452Q26.324-27.903 26.045-27.441Q25.766-26.980 25.298-26.712Q24.830-26.444 24.280-26.444Q23.726-26.444 23.256-26.712Q22.786-26.980 22.507-27.441Q22.228-27.903 22.228-28.452M24.280-26.734Q24.777-26.734 25.054-26.995Q25.331-27.257 25.423-27.661Q25.515-28.066 25.515-28.562Q25.515-29.037 25.416-29.426Q25.317-29.815 25.045-30.065Q24.772-30.316 24.280-30.316Q23.568-30.316 23.305-29.821Q23.041-29.327 23.041-28.562Q23.041-27.762 23.296-27.248Q23.551-26.734 24.280-26.734M29.070-26.545L26.838-26.545L26.838-26.861Q27.150-26.861 27.341-26.914Q27.532-26.967 27.532-27.156L27.532-29.604Q27.532-29.845 27.462-29.953Q27.392-30.061 27.258-30.085Q27.123-30.109 26.838-30.109L26.838-30.425L28.152-30.522L28.152-29.661Q28.314-30.052 28.582-30.287Q28.851-30.522 29.242-30.522Q29.514-30.522 29.729-30.359Q29.945-30.197 29.945-29.938Q29.945-29.762 29.826-29.643Q29.707-29.524 29.532-29.524Q29.351-29.524 29.233-29.643Q29.114-29.762 29.114-29.938Q29.114-30.153 29.268-30.263L29.250-30.263Q28.872-30.263 28.640-30.001Q28.407-29.740 28.308-29.353Q28.209-28.966 28.209-28.606L28.209-27.156Q28.209-26.967 28.466-26.914Q28.723-26.861 29.070-26.861",[759],[737,2891,2892],{"transform":2873},[745,2893],{"d":2894,"fill":739,"stroke":739,"className":2895,"style":760},"M37.272-26.545L33.800-26.545Q33.691-26.545 33.691-26.664Q33.691-26.725 33.723-26.793Q33.756-26.861 33.818-26.861Q34.319-26.861 34.547-26.914Q34.675-26.962 34.745-27.191L35.967-32.108Q35.984-32.196 35.984-32.240Q35.984-32.306 35.958-32.324Q35.787-32.377 35.255-32.377Q35.149-32.377 35.149-32.495Q35.149-32.557 35.182-32.625Q35.215-32.693 35.277-32.693L38.551-32.693Q38.955-32.693 39.348-32.557Q39.742-32.420 39.997-32.137Q40.252-31.854 40.252-31.441Q40.252-31.005 39.957-30.645Q39.663-30.285 39.225-30.061Q38.788-29.837 38.353-29.757Q38.713-29.722 39.041-29.564Q39.368-29.406 39.573-29.129Q39.777-28.852 39.777-28.487Q39.777-28.074 39.546-27.714Q39.316-27.354 38.929-27.092Q38.542-26.831 38.107-26.688Q37.672-26.545 37.272-26.545M35.457-26.923Q35.457-26.861 35.743-26.861L37.092-26.861Q37.540-26.861 37.960-27.099Q38.379-27.336 38.632-27.729Q38.885-28.123 38.885-28.571Q38.885-28.865 38.764-29.103Q38.643-29.340 38.426-29.476Q38.208-29.612 37.914-29.612L36.112-29.612L35.492-27.129Q35.457-26.989 35.457-26.923M36.714-32.043L36.173-29.876L37.588-29.876Q38.006-29.876 38.430-30.089Q38.854-30.302 39.120-30.667Q39.386-31.032 39.386-31.467Q39.386-31.862 39.129-32.119Q38.872-32.377 38.472-32.377L37.184-32.377Q36.925-32.377 36.850-32.330Q36.775-32.284 36.714-32.043",[759],[745,2897],{"fill":747,"d":2898},"M344.394-54.998h-65.977a4 4 0 0 0-4 4v31.834a4 4 0 0 0 4 4h65.977a4 4 0 0 0 4-4v-31.834a4 4 0 0 0-4-4Zm-69.977 39.834",[737,2900,2901,2907],{"stroke":747,"fontFamily":2852,"fontSize":1880},[737,2902,2904],{"transform":2903},"translate(273.36 -.786)",[745,2905],{"d":2858,"fill":739,"stroke":739,"className":2906,"style":760},[759],[737,2908,2909],{"transform":2903},[745,2910],{"d":2911,"fill":739,"stroke":739,"className":2912,"style":760},"M24.686-28.452Q24.686-29.019 24.959-29.507Q25.231-29.995 25.701-30.287Q26.172-30.579 26.739-30.579Q27.160-30.579 27.536-30.410Q27.912-30.241 28.189-29.949Q28.466-29.656 28.624-29.261Q28.782-28.865 28.782-28.452Q28.782-27.903 28.503-27.441Q28.224-26.980 27.756-26.712Q27.288-26.444 26.739-26.444Q26.185-26.444 25.715-26.712Q25.244-26.980 24.965-27.441Q24.686-27.903 24.686-28.452M26.739-26.734Q27.235-26.734 27.512-26.995Q27.789-27.257 27.881-27.661Q27.973-28.066 27.973-28.562Q27.973-29.037 27.875-29.426Q27.776-29.815 27.503-30.065Q27.231-30.316 26.739-30.316Q26.027-30.316 25.763-29.821Q25.499-29.327 25.499-28.562Q25.499-27.762 25.754-27.248Q26.009-26.734 26.739-26.734M30.034-27.617L30.034-29.604Q30.034-29.845 29.964-29.953Q29.894-30.061 29.760-30.085Q29.626-30.109 29.344-30.109L29.344-30.425L30.738-30.522L30.738-27.652Q30.738-27.274 30.784-27.088Q30.830-26.901 31.001-26.804Q31.173-26.708 31.529-26.708Q31.863-26.708 32.102-26.899Q32.342-27.090 32.467-27.393Q32.592-27.696 32.592-28.013L32.592-29.604Q32.592-29.845 32.522-29.953Q32.451-30.061 32.317-30.085Q32.183-30.109 31.898-30.109L31.898-30.425L33.295-30.522L33.295-27.362Q33.295-27.125 33.365-27.017Q33.436-26.910 33.570-26.886Q33.704-26.861 33.985-26.861L33.985-26.545L32.618-26.444L32.618-27.165Q32.451-26.839 32.146-26.642Q31.841-26.444 31.485-26.444Q30.825-26.444 30.430-26.714Q30.034-26.984 30.034-27.617M35.119-27.617L35.119-30.109L34.354-30.109L34.354-30.368Q34.759-30.368 35.024-30.634Q35.290-30.900 35.411-31.300Q35.532-31.700 35.532-32.082L35.822-32.082L35.822-30.425L37.110-30.425L37.110-30.109L35.822-30.109L35.822-27.652Q35.822-27.283 35.947-27.009Q36.073-26.734 36.398-26.734Q36.697-26.734 36.835-27.028Q36.973-27.323 36.973-27.652L36.973-28.175L37.259-28.175L37.259-27.617Q37.259-27.340 37.149-27.068Q37.039-26.795 36.826-26.620Q36.613-26.444 36.332-26.444Q35.971-26.444 35.699-26.582Q35.427-26.721 35.273-26.984Q35.119-27.248 35.119-27.617M40.111-24.800L38.024-24.800L38.024-25.112Q38.336-25.112 38.527-25.163Q38.718-25.213 38.718-25.411L38.718-29.749Q38.718-29.990 38.544-30.050Q38.371-30.109 38.024-30.109L38.024-30.425L39.395-30.522L39.395-29.982Q39.654-30.250 39.988-30.386Q40.322-30.522 40.691-30.522Q41.091-30.522 41.447-30.355Q41.803-30.188 42.058-29.907Q42.313-29.626 42.456-29.261Q42.598-28.896 42.598-28.487Q42.598-27.925 42.322-27.459Q42.045-26.993 41.570-26.719Q41.095-26.444 40.546-26.444Q40.234-26.444 39.944-26.578Q39.654-26.712 39.421-26.958L39.421-25.411Q39.421-25.213 39.612-25.163Q39.803-25.112 40.111-25.112L40.111-24.800M39.421-29.568L39.421-27.437Q39.579-27.112 39.863-26.910Q40.146-26.708 40.489-26.708Q40.902-26.708 41.197-26.984Q41.491-27.261 41.638-27.679Q41.785-28.096 41.785-28.487Q41.785-28.865 41.651-29.274Q41.517-29.683 41.243-29.960Q40.968-30.236 40.590-30.236Q40.348-30.236 40.133-30.160Q39.918-30.083 39.727-29.922Q39.535-29.762 39.421-29.568M43.899-27.617L43.899-29.604Q43.899-29.845 43.829-29.953Q43.759-30.061 43.625-30.085Q43.490-30.109 43.209-30.109L43.209-30.425L44.602-30.522L44.602-27.652Q44.602-27.274 44.648-27.088Q44.695-26.901 44.866-26.804Q45.037-26.708 45.393-26.708Q45.727-26.708 45.967-26.899Q46.206-27.090 46.332-27.393Q46.457-27.696 46.457-28.013L46.457-29.604Q46.457-29.845 46.386-29.953Q46.316-30.061 46.182-30.085Q46.048-30.109 45.762-30.109L45.762-30.425L47.160-30.522L47.160-27.362Q47.160-27.125 47.230-27.017Q47.301-26.910 47.435-26.886Q47.569-26.861 47.850-26.861L47.850-26.545L46.483-26.444L46.483-27.165Q46.316-26.839 46.011-26.642Q45.705-26.444 45.349-26.444Q44.690-26.444 44.295-26.714Q43.899-26.984 43.899-27.617M48.984-27.617L48.984-30.109L48.219-30.109L48.219-30.368Q48.623-30.368 48.889-30.634Q49.155-30.900 49.276-31.300Q49.397-31.700 49.397-32.082L49.687-32.082L49.687-30.425L50.974-30.425L50.974-30.109L49.687-30.109L49.687-27.652Q49.687-27.283 49.812-27.009Q49.937-26.734 50.262-26.734Q50.561-26.734 50.700-27.028Q50.838-27.323 50.838-27.652L50.838-28.175L51.124-28.175L51.124-27.617Q51.124-27.340 51.014-27.068Q50.904-26.795 50.691-26.620Q50.478-26.444 50.197-26.444Q49.836-26.444 49.564-26.582Q49.291-26.721 49.137-26.984Q48.984-27.248 48.984-27.617",[759],[737,2914,2915,2922,2928,2934],{"stroke":747,"fontSize":1880},[737,2916,2918],{"transform":2917},"translate(366.778 -5.41)",[745,2919],{"d":2920,"fill":739,"stroke":739,"className":2921,"style":760},"M18.712-27.455Q18.712-27.995 19.145-28.329Q19.578-28.663 20.184-28.802Q20.791-28.940 21.322-28.940L21.322-29.274Q21.322-29.533 21.204-29.777Q21.085-30.021 20.876-30.168Q20.668-30.316 20.395-30.316Q19.833-30.316 19.521-30.118Q19.670-30.091 19.762-29.973Q19.855-29.854 19.855-29.696Q19.855-29.520 19.729-29.390Q19.604-29.261 19.424-29.261Q19.235-29.261 19.108-29.388Q18.980-29.516 18.980-29.696Q18.980-30.166 19.420-30.373Q19.859-30.579 20.395-30.579Q20.685-30.579 20.973-30.491Q21.261-30.403 21.494-30.243Q21.727-30.083 21.876-29.843Q22.026-29.604 22.026-29.309L22.026-27.274Q22.026-27.121 22.100-26.982Q22.175-26.844 22.320-26.844Q22.474-26.844 22.546-26.980Q22.619-27.116 22.619-27.274L22.619-27.850L22.905-27.850L22.905-27.274Q22.905-26.941 22.656-26.716Q22.408-26.492 22.078-26.492Q21.819-26.492 21.637-26.686Q21.454-26.879 21.410-27.156Q21.243-26.835 20.909-26.639Q20.575-26.444 20.206-26.444Q19.653-26.444 19.182-26.692Q18.712-26.941 18.712-27.455M19.468-27.455Q19.468-27.143 19.710-26.925Q19.951-26.708 20.268-26.708Q20.703-26.708 21.013-27.017Q21.322-27.327 21.322-27.758L21.322-28.685Q20.905-28.685 20.479-28.558Q20.052-28.430 19.760-28.153Q19.468-27.877 19.468-27.455M25.348-26.545L23.260-26.545L23.260-26.861Q23.568-26.861 23.759-26.914Q23.950-26.967 23.950-27.156L23.950-29.604Q23.950-29.845 23.880-29.953Q23.810-30.061 23.676-30.085Q23.542-30.109 23.260-30.109L23.260-30.425L24.601-30.522L24.601-29.687Q24.799-30.069 25.152-30.296Q25.506-30.522 25.932-30.522Q27.211-30.522 27.211-29.309L27.211-27.156Q27.211-26.967 27.402-26.914Q27.593-26.861 27.901-26.861L27.901-26.545L25.814-26.545L25.814-26.861Q26.126-26.861 26.317-26.914Q26.508-26.967 26.508-27.156L26.508-29.274Q26.508-29.533 26.464-29.755Q26.420-29.977 26.275-30.120Q26.130-30.263 25.871-30.263Q25.528-30.263 25.247-30.074Q24.966-29.885 24.810-29.573Q24.654-29.261 24.654-28.914L24.654-27.156Q24.654-26.967 24.847-26.914Q25.040-26.861 25.348-26.861L25.348-26.545M28.406-26.527L28.406-27.969Q28.406-28 28.435-28.024Q28.464-28.048 28.494-28.048L28.604-28.048Q28.639-28.048 28.661-28.026Q28.683-28.004 28.692-27.969Q28.951-26.708 29.918-26.708Q30.344-26.708 30.639-26.892Q30.933-27.077 30.933-27.481Q30.933-27.775 30.703-27.971Q30.472-28.167 30.160-28.228L29.558-28.347Q29.092-28.435 28.749-28.718Q28.406-29.002 28.406-29.441Q28.406-30.034 28.844-30.307Q29.281-30.579 29.918-30.579Q30.397-30.579 30.744-30.333L30.995-30.557Q31.052-30.579 31.052-30.579L31.105-30.579Q31.131-30.579 31.164-30.553Q31.197-30.526 31.197-30.496L31.197-29.336Q31.197-29.305 31.162-29.278Q31.127-29.252 31.105-29.252L30.995-29.252Q30.973-29.252 30.940-29.281Q30.907-29.309 30.907-29.336Q30.907-29.801 30.641-30.072Q30.375-30.342 29.909-30.342Q29.505-30.342 29.202-30.197Q28.899-30.052 28.899-29.696Q28.899-29.450 29.116-29.296Q29.334-29.142 29.611-29.085L30.239-28.958Q30.555-28.896 30.826-28.729Q31.096-28.562 31.263-28.296Q31.430-28.030 31.430-27.714Q31.430-27.072 31.004-26.758Q30.577-26.444 29.918-26.444Q29.646-26.444 29.380-26.538Q29.114-26.633 28.934-26.822L28.613-26.483Q28.595-26.444 28.547-26.444L28.494-26.444Q28.472-26.444 28.439-26.472Q28.406-26.501 28.406-26.527M33.768-26.563L32.577-29.810Q32.502-30.008 32.357-30.058Q32.212-30.109 31.922-30.109L31.922-30.425L33.803-30.425L33.803-30.109Q33.280-30.109 33.280-29.885Q33.280-29.854 33.298-29.810L34.163-27.428L34.919-29.516L34.809-29.810Q34.735-30.008 34.587-30.058Q34.440-30.109 34.155-30.109L34.155-30.425L35.943-30.425L35.943-30.109Q35.433-30.109 35.433-29.885Q35.433-29.832 35.442-29.810L36.361-27.310L37.178-29.560Q37.196-29.604 37.196-29.705Q37.196-29.898 37.044-30.003Q36.892-30.109 36.690-30.109L36.690-30.425L38.233-30.425L38.233-30.109Q37.965-30.109 37.769-29.960Q37.573-29.810 37.486-29.560L36.387-26.563Q36.356-26.444 36.224-26.444L36.163-26.444Q36.044-26.444 36-26.563L35.082-29.094L34.155-26.563Q34.111-26.444 33.992-26.444L33.930-26.444Q33.799-26.444 33.768-26.563",[759],[737,2923,2924],{"transform":2917},[745,2925],{"d":2926,"fill":739,"stroke":739,"className":2927,"style":760},"M40.491-26.444Q39.932-26.444 39.460-26.727Q38.988-27.011 38.713-27.488Q38.438-27.964 38.438-28.518Q38.438-28.914 38.581-29.289Q38.724-29.665 38.981-29.953Q39.238-30.241 39.596-30.410Q39.954-30.579 40.359-30.579Q40.904-30.579 41.275-30.342Q41.646-30.105 41.833-29.687Q42.020-29.270 42.020-28.733Q42.020-28.681 41.996-28.643Q41.971-28.606 41.923-28.606L39.251-28.606L39.251-28.527Q39.251-27.780 39.563-27.257Q39.875-26.734 40.574-26.734Q40.978-26.734 41.299-26.991Q41.620-27.248 41.743-27.652Q41.761-27.732 41.844-27.732L41.923-27.732Q41.963-27.732 41.991-27.701Q42.020-27.670 42.020-27.626L42.020-27.591Q41.914-27.248 41.692-26.989Q41.471-26.730 41.156-26.587Q40.842-26.444 40.491-26.444M39.260-28.857L41.374-28.857Q41.374-29.125 41.321-29.371Q41.268-29.617 41.148-29.839Q41.027-30.061 40.829-30.188Q40.631-30.316 40.359-30.316Q40.016-30.316 39.763-30.091Q39.511-29.867 39.385-29.529Q39.260-29.191 39.260-28.857M44.775-26.545L42.543-26.545L42.543-26.861Q42.855-26.861 43.046-26.914Q43.237-26.967 43.237-27.156L43.237-29.604Q43.237-29.845 43.167-29.953Q43.096-30.061 42.962-30.085Q42.828-30.109 42.543-30.109L42.543-30.425L43.857-30.522L43.857-29.661Q44.019-30.052 44.287-30.287Q44.555-30.522 44.947-30.522Q45.219-30.522 45.434-30.359Q45.650-30.197 45.650-29.938Q45.650-29.762 45.531-29.643Q45.412-29.524 45.237-29.524Q45.056-29.524 44.938-29.643Q44.819-29.762 44.819-29.938Q44.819-30.153 44.973-30.263L44.955-30.263Q44.577-30.263 44.345-30.001Q44.112-29.740 44.013-29.353Q43.914-28.966 43.914-28.606L43.914-27.156Q43.914-26.967 44.171-26.914Q44.428-26.861 44.775-26.861",[759],[737,2929,2930],{"transform":2917},[745,2931],{"d":2932,"fill":739,"stroke":739,"className":2933,"style":760},"M51.534-26.545L49.302-26.545L49.302-26.861Q49.609-26.861 49.800-26.914Q49.992-26.967 49.992-27.156L49.992-30.109L49.302-30.109L49.302-30.425L49.992-30.425L49.992-31.493Q49.992-31.876 50.205-32.199Q50.418-32.522 50.772-32.706Q51.125-32.891 51.503-32.891Q51.824-32.891 52.075-32.713Q52.325-32.535 52.325-32.223Q52.325-32.047 52.206-31.928Q52.088-31.810 51.912-31.810Q51.732-31.810 51.609-31.928Q51.486-32.047 51.486-32.223Q51.486-32.464 51.701-32.592Q51.596-32.627 51.459-32.627Q51.191-32.627 51.009-32.445Q50.827-32.262 50.734-31.992Q50.642-31.722 50.642-31.458L50.642-30.425L51.692-30.425L51.692-30.109L50.668-30.109L50.668-27.156Q50.668-26.967 50.925-26.914Q51.182-26.861 51.534-26.861L51.534-26.545M52.079-28.452Q52.079-29.019 52.351-29.507Q52.624-29.995 53.094-30.287Q53.564-30.579 54.131-30.579Q54.553-30.579 54.929-30.410Q55.305-30.241 55.581-29.949Q55.858-29.656 56.016-29.261Q56.175-28.865 56.175-28.452Q56.175-27.903 55.896-27.441Q55.617-26.980 55.149-26.712Q54.681-26.444 54.131-26.444Q53.577-26.444 53.107-26.712Q52.637-26.980 52.358-27.441Q52.079-27.903 52.079-28.452M54.131-26.734Q54.628-26.734 54.905-26.995Q55.181-27.257 55.274-27.661Q55.366-28.066 55.366-28.562Q55.366-29.037 55.267-29.426Q55.168-29.815 54.896-30.065Q54.623-30.316 54.131-30.316Q53.419-30.316 53.156-29.821Q52.892-29.327 52.892-28.562Q52.892-27.762 53.147-27.248Q53.402-26.734 54.131-26.734M58.921-26.545L56.689-26.545L56.689-26.861Q57.001-26.861 57.192-26.914Q57.383-26.967 57.383-27.156L57.383-29.604Q57.383-29.845 57.313-29.953Q57.243-30.061 57.109-30.085Q56.974-30.109 56.689-30.109L56.689-30.425L58.003-30.522L58.003-29.661Q58.165-30.052 58.433-30.287Q58.702-30.522 59.093-30.522Q59.365-30.522 59.580-30.359Q59.796-30.197 59.796-29.938Q59.796-29.762 59.677-29.643Q59.558-29.524 59.383-29.524Q59.202-29.524 59.084-29.643Q58.965-29.762 58.965-29.938Q58.965-30.153 59.119-30.263L59.101-30.263Q58.723-30.263 58.491-30.001Q58.258-29.740 58.159-29.353Q58.060-28.966 58.060-28.606L58.060-27.156Q58.060-26.967 58.317-26.914Q58.574-26.861 58.921-26.861",[759],[737,2935,2936],{"transform":2917},[745,2937],{"d":2938,"fill":739,"stroke":739,"className":2939,"style":760},"M65.309-26.545L63.578-26.545Q63.481-26.545 63.481-26.664Q63.481-26.721 63.512-26.791Q63.543-26.861 63.604-26.861Q64.294-26.861 64.694-27.472Q64.694-27.472 64.720-27.499L67.990-32.882Q68.051-32.987 68.179-32.987L68.267-32.987Q68.390-32.987 68.403-32.882L69.031-27.050Q69.075-26.932 69.266-26.897Q69.458-26.861 69.717-26.861Q69.761-26.861 69.794-26.824Q69.827-26.787 69.827-26.752Q69.827-26.545 69.664-26.545L67.432-26.545Q67.392-26.545 67.361-26.585Q67.331-26.624 67.331-26.664Q67.331-26.725 67.366-26.793Q67.401-26.861 67.458-26.861Q67.735-26.861 67.944-26.905Q68.152-26.949 68.196-27.103L68.034-28.588L65.713-28.588L64.993-27.393Q64.909-27.270 64.909-27.147Q64.909-26.989 65.050-26.925Q65.190-26.861 65.371-26.861Q65.415-26.861 65.441-26.828Q65.467-26.795 65.467-26.752Q65.467-26.545 65.309-26.545M67.682-31.827L65.911-28.905L67.999-28.905",[759],[745,2941],{"fill":747,"d":2942},"M-7.99-35.081h34.438",[745,2944],{"d":2945},"m28.954-35.081-3.585-1.351 1.18 1.35-1.18 1.351Z",[745,2947],{"fill":747,"d":2948},"M103.9-35.081h44.895",[745,2950],{"d":2951},"m151.3-35.081-3.584-1.351 1.18 1.35-1.18 1.351Z",[737,2953,2954,2961,2967,2973],{"stroke":747,"fontSize":836},[737,2955,2957],{"transform":2956},"translate(101.809 -13.819)",[745,2958],{"d":2959,"fill":739,"stroke":739,"className":2960,"style":804},"M18.856-25.622Q18.856-25.800 18.974-25.935Q19.092-26.070 19.273-26.070Q19.389-26.070 19.471-25.996Q19.553-25.923 19.553-25.803Q19.553-25.670 19.476-25.564Q19.399-25.458 19.266-25.410Q19.399-25.342 19.560-25.342Q19.799-25.342 19.908-25.655Q20.018-25.967 20.100-26.412Q20.131-26.562 20.201-26.931Q20.271-27.300 20.325-27.594L20.626-29.283L19.960-29.283Q19.878-29.310 19.878-29.396L19.905-29.505Q19.912-29.546 19.980-29.563L20.674-29.563L20.760-30.018Q20.814-30.325 20.842-30.460Q20.869-30.595 20.934-30.768Q20.999-30.941 21.101-31.074Q21.231-31.252 21.433-31.363Q21.635-31.474 21.850-31.474Q22.120-31.474 22.342-31.349Q22.564-31.224 22.564-30.968Q22.564-30.790 22.443-30.655Q22.322-30.520 22.151-30.520Q22.034-30.520 21.949-30.594Q21.864-30.667 21.864-30.787Q21.864-30.917 21.944-31.028Q22.024-31.139 22.151-31.180Q22.010-31.248 21.843-31.248Q21.706-31.248 21.626-31.152Q21.546-31.057 21.513-30.934Q21.481-30.811 21.450-30.653Q21.440-30.602 21.387-30.324Q21.334-30.045 21.330-30.031L21.248-29.563L22.045-29.563Q22.130-29.539 22.130-29.457L22.103-29.344Q22.096-29.300 22.024-29.283L21.200-29.283L20.900-27.608Q20.794-27.024 20.715-26.671Q20.636-26.319 20.500-25.984Q20.370-25.653 20.115-25.385Q19.861-25.116 19.553-25.116Q19.283-25.116 19.069-25.246Q18.856-25.376 18.856-25.622",[759],[737,2962,2963],{"transform":2956},[745,2964],{"d":2965,"fill":739,"stroke":739,"className":2966,"style":804},"M25.471-24.795Q24.921-25.195 24.550-25.750Q24.179-26.306 23.998-26.952Q23.817-27.598 23.817-28.295Q23.817-28.808 23.917-29.303Q24.018-29.799 24.223-30.250Q24.428-30.701 24.741-31.093Q25.054-31.484 25.471-31.788Q25.481-31.792 25.488-31.793Q25.495-31.795 25.505-31.795L25.573-31.795Q25.608-31.795 25.630-31.771Q25.652-31.747 25.652-31.710Q25.652-31.665 25.625-31.648Q25.276-31.347 25.023-30.963Q24.770-30.578 24.618-30.137Q24.466-29.696 24.394-29.240Q24.322-28.784 24.322-28.295Q24.322-27.294 24.632-26.407Q24.941-25.520 25.625-24.935Q25.652-24.918 25.652-24.874Q25.652-24.836 25.630-24.812Q25.608-24.788 25.573-24.788L25.505-24.788Q25.498-24.792 25.490-24.793Q25.481-24.795 25.471-24.795",[759],[737,2968,2969],{"transform":2956},[745,2970],{"d":2971,"fill":739,"stroke":739,"className":2972,"style":804},"M26.887-26.805Q27.030-26.699 27.259-26.699Q27.485-26.699 27.659-26.895Q27.834-27.092 27.888-27.321L28.203-28.582Q28.275-28.849 28.275-28.982Q28.275-29.173 28.163-29.291Q28.052-29.409 27.861-29.409Q27.632-29.409 27.434-29.285Q27.235-29.160 27.094-28.956Q26.952-28.753 26.894-28.534Q26.883-28.469 26.825-28.469L26.713-28.469Q26.682-28.469 26.658-28.500Q26.634-28.531 26.634-28.555L26.634-28.582Q26.747-29.009 27.100-29.320Q27.454-29.631 27.875-29.631Q28.046-29.631 28.210-29.578Q28.374-29.525 28.507-29.421Q28.640-29.317 28.715-29.163Q28.856-29.368 29.057-29.500Q29.259-29.631 29.478-29.631Q29.768-29.631 29.997-29.496Q30.226-29.361 30.226-29.091Q30.226-28.972 30.173-28.868Q30.120-28.763 30.023-28.700Q29.925-28.637 29.806-28.637Q29.690-28.637 29.608-28.710Q29.526-28.784 29.526-28.903Q29.526-29.044 29.616-29.158Q29.707-29.273 29.840-29.303Q29.686-29.409 29.464-29.409Q29.310-29.409 29.180-29.315Q29.050-29.221 28.962-29.085Q28.873-28.948 28.825-28.784L28.510-27.526Q28.449-27.242 28.449-27.126Q28.449-26.935 28.560-26.817Q28.671-26.699 28.862-26.699Q29.037-26.699 29.196-26.774Q29.355-26.849 29.485-26.979Q29.614-27.109 29.703-27.266Q29.792-27.423 29.826-27.574Q29.850-27.635 29.905-27.635L30.014-27.635Q30.048-27.635 30.071-27.610Q30.093-27.584 30.093-27.553Q30.093-27.540 30.086-27.526Q30.018-27.246 29.833-27.006Q29.649-26.767 29.389-26.622Q29.129-26.477 28.845-26.477Q28.579-26.477 28.350-26.596Q28.121-26.716 28.008-26.945Q27.878-26.747 27.675-26.612Q27.471-26.477 27.242-26.477Q26.962-26.477 26.731-26.612Q26.501-26.747 26.501-27.013Q26.501-27.194 26.622-27.331Q26.743-27.468 26.921-27.468Q27.041-27.468 27.121-27.396Q27.201-27.324 27.201-27.205Q27.201-27.065 27.114-26.950Q27.027-26.836 26.887-26.805",[759],[737,2974,2975],{"transform":2956},[745,2976],{"d":2977,"fill":739,"stroke":739,"className":2978,"style":804},"M31.322-24.788L31.253-24.788Q31.219-24.788 31.197-24.814Q31.175-24.839 31.175-24.874Q31.175-24.918 31.206-24.935Q31.561-25.239 31.811-25.629Q32.060-26.019 32.212-26.451Q32.364-26.883 32.434-27.352Q32.504-27.820 32.504-28.295Q32.504-28.774 32.434-29.240Q32.364-29.707 32.210-30.142Q32.057-30.578 31.805-30.966Q31.554-31.354 31.206-31.648Q31.175-31.665 31.175-31.710Q31.175-31.744 31.197-31.769Q31.219-31.795 31.253-31.795L31.322-31.795Q31.332-31.795 31.341-31.793Q31.349-31.792 31.359-31.788Q31.903-31.388 32.275-30.835Q32.648-30.281 32.829-29.635Q33.010-28.989 33.010-28.295Q33.010-27.594 32.829-26.947Q32.648-26.299 32.274-25.745Q31.899-25.191 31.359-24.795Q31.349-24.795 31.341-24.793Q31.332-24.792 31.322-24.788",[759],[745,2980],{"fill":747,"d":2981},"M226.248-35.081h44.894",[745,2983],{"d":2984},"m273.648-35.081-3.585-1.351 1.179 1.35-1.179 1.351Z",[745,2986],{"fill":747,"d":2987},"M348.594-35.081h29.918",[745,2989],{"d":2990},"m381.018-35.081-3.585-1.351 1.179 1.35-1.179 1.351Z",[947,2992,2994,2995,3010,3011,520],{"className":2993},[950],"Transform-solve-transform pipeline turning a solver for ",[385,2996,2998],{"className":2997},[388],[385,2999,3001],{"className":3000,"ariaHidden":393},[392],[385,3002,3004,3007],{"className":3003},[397],[385,3005],{"className":3006,"style":589},[401],[385,3008,2252],{"className":3009,"style":2251},[406,407]," into a solver for ",[385,3012,3014],{"className":3013},[388],[385,3015,3017],{"className":3016,"ariaHidden":393},[392],[385,3018,3020,3023],{"className":3019},[397],[385,3021],{"className":3022,"style":589},[401],[385,3024,2269],{"className":3025},[406,407],[381,3027,3028,3029,3044,3045,3048,3049,3064,3065,3068,3069,3084,3085,3100,3101,3104,3105,3120,3121,3136],{},"The dashed box is the punchline: a fast solver for ",[385,3030,3032],{"className":3031},[388],[385,3033,3035],{"className":3034,"ariaHidden":393},[392],[385,3036,3038,3041],{"className":3037},[397],[385,3039],{"className":3040,"style":589},[401],[385,3042,2252],{"className":3043,"style":2251},[406,407],", wrapped in the fast\ntransformers on either side, ",[447,3046,3047],{},"is"," a fast solver for ",[385,3050,3052],{"className":3051},[388],[385,3053,3055],{"className":3054,"ariaHidden":393},[392],[385,3056,3058,3061],{"className":3057},[397],[385,3059],{"className":3060,"style":589},[401],[385,3062,2269],{"className":3063},[406,407],". For a ",[455,3066,3067],{},"decision","\nproblem the right-hand transformer is trivial (pass the yes\u002Fno answer through\nunchanged), and the pipeline collapses to the textbook definition above: apply\n",[385,3070,3072],{"className":3071},[388],[385,3073,3075],{"className":3074,"ariaHidden":393},[392],[385,3076,3078,3081],{"className":3077},[397],[385,3079],{"className":3080,"style":2501},[401],[385,3082,2506],{"className":3083,"style":2505},[406,407],", ask the ",[385,3086,3088],{"className":3087},[388],[385,3089,3091],{"className":3090,"ariaHidden":393},[392],[385,3092,3094,3097],{"className":3093},[397],[385,3095],{"className":3096,"style":589},[401],[385,3098,2252],{"className":3099,"style":2251},[406,407],"-question, report the answer. For a ",[455,3102,3103],{},"search"," problem (the\nwarm-up below) the right-hand transformer does real work, turning ",[385,3106,3108],{"className":3107},[388],[385,3109,3111],{"className":3110,"ariaHidden":393},[392],[385,3112,3114,3117],{"className":3113},[397],[385,3115],{"className":3116,"style":589},[401],[385,3118,2252],{"className":3119,"style":2251},[406,407],"'s witness\nback into a witness for ",[385,3122,3124],{"className":3123},[388],[385,3125,3127],{"className":3126,"ariaHidden":393},[392],[385,3128,3130,3133],{"className":3129},[397],[385,3131],{"className":3132,"style":589},[401],[385,3134,2269],{"className":3135},[406,407],". Either way, the diagram encodes the two ways every\nreduction is used, which are mirror images of each other.",[1455,3138,3139,3315],{},[1458,3140,3141,3144,3145,973,3215,2737,3249,3282,3283,3298,3299,3314],{},[455,3142,3143],{},"Upper bound (good news flows forward)."," If ",[385,3146,3148],{"className":3147},[388],[385,3149,3151,3206],{"className":3150,"ariaHidden":393},[392],[385,3152,3154,3157,3160,3163,3203],{"className":3153},[397],[385,3155],{"className":3156,"style":2421},[401],[385,3158,2269],{"className":3159},[406,407],[385,3161],{"className":3162,"style":640},[422],[385,3164,3166,3169],{"className":3165},[644],[385,3167,2434],{"className":3168},[644],[385,3170,3172],{"className":3171},[1069],[385,3173,3175,3195],{"className":3174},[1073,2441],[385,3176,3178,3192],{"className":3177},[1077],[385,3179,3181],{"className":3180,"style":2448},[1081],[385,3182,3183,3186],{"style":2451},[385,3184],{"className":3185,"style":1090},[1089],[385,3187,3189],{"className":3188},[1094,1095,1096,1097],[385,3190,479],{"className":3191,"style":2461},[406,407,1097],[385,3193,2466],{"className":3194},[2465],[385,3196,3198],{"className":3197},[1077],[385,3199,3201],{"className":3200,"style":2473},[1081],[385,3202],{},[385,3204],{"className":3205,"style":640},[422],[385,3207,3209,3212],{"className":3208},[397],[385,3210],{"className":3211,"style":589},[401],[385,3213,2252],{"className":3214,"style":2251},[406,407],[385,3216,3218],{"className":3217},[388],[385,3219,3221,3240],{"className":3220,"ariaHidden":393},[392],[385,3222,3224,3228,3231,3234,3237],{"className":3223},[397],[385,3225],{"className":3226,"style":3227},[401],"height:0.7224em;vertical-align:-0.0391em;",[385,3229,2252],{"className":3230,"style":2251},[406,407],[385,3232],{"className":3233,"style":640},[422],[385,3235,645],{"className":3236},[644],[385,3238],{"className":3239,"style":640},[422],[385,3241,3243,3246],{"className":3242},[397],[385,3244],{"className":3245,"style":474},[401],[385,3247,479],{"className":3248},[406,478],[385,3250,3252],{"className":3251},[388],[385,3253,3255,3273],{"className":3254,"ariaHidden":393},[392],[385,3256,3258,3261,3264,3267,3270],{"className":3257},[397],[385,3259],{"className":3260,"style":3227},[401],[385,3262,2269],{"className":3263},[406,407],[385,3265],{"className":3266,"style":640},[422],[385,3268,645],{"className":3269},[644],[385,3271],{"className":3272,"style":640},[422],[385,3274,3276,3279],{"className":3275},[397],[385,3277],{"className":3278,"style":474},[401],[385,3280,479],{"className":3281},[406,478],". Tractability of the harder problem\ndrags the easier one along: run ",[385,3284,3286],{"className":3285},[388],[385,3287,3289],{"className":3288,"ariaHidden":393},[392],[385,3290,3292,3295],{"className":3291},[397],[385,3293],{"className":3294,"style":2501},[401],[385,3296,2506],{"className":3297,"style":2505},[406,407],", then the fast solver for ",[385,3300,3302],{"className":3301},[388],[385,3303,3305],{"className":3304,"ariaHidden":393},[392],[385,3306,3308,3311],{"className":3307},[397],[385,3309],{"className":3310,"style":589},[401],[385,3312,2252],{"className":3313,"style":2251},[406,407],"; the\ncomposition of two polynomials is a polynomial.",[1458,3316,3317,3144,3320,973,3390,3405,3406,2737,3409,3424,3425,3440,3441,3456],{},[455,3318,3319],{},"Lower bound (bad news flows backward).",[385,3321,3323],{"className":3322},[388],[385,3324,3326,3381],{"className":3325,"ariaHidden":393},[392],[385,3327,3329,3332,3335,3338,3378],{"className":3328},[397],[385,3330],{"className":3331,"style":2421},[401],[385,3333,2269],{"className":3334},[406,407],[385,3336],{"className":3337,"style":640},[422],[385,3339,3341,3344],{"className":3340},[644],[385,3342,2434],{"className":3343},[644],[385,3345,3347],{"className":3346},[1069],[385,3348,3350,3370],{"className":3349},[1073,2441],[385,3351,3353,3367],{"className":3352},[1077],[385,3354,3356],{"className":3355,"style":2448},[1081],[385,3357,3358,3361],{"style":2451},[385,3359],{"className":3360,"style":1090},[1089],[385,3362,3364],{"className":3363},[1094,1095,1096,1097],[385,3365,479],{"className":3366,"style":2461},[406,407,1097],[385,3368,2466],{"className":3369},[2465],[385,3371,3373],{"className":3372},[1077],[385,3374,3376],{"className":3375,"style":2473},[1081],[385,3377],{},[385,3379],{"className":3380,"style":640},[422],[385,3382,3384,3387],{"className":3383},[397],[385,3385],{"className":3386,"style":589},[401],[385,3388,2252],{"className":3389,"style":2251},[406,407],[385,3391,3393],{"className":3392},[388],[385,3394,3396],{"className":3395,"ariaHidden":393},[392],[385,3397,3399,3402],{"className":3398},[397],[385,3400],{"className":3401,"style":589},[401],[385,3403,2269],{"className":3404},[406,407]," is ",[447,3407,3408],{},"known\nto be hard",[385,3410,3412],{"className":3411},[388],[385,3413,3415],{"className":3414,"ariaHidden":393},[392],[385,3416,3418,3421],{"className":3417},[397],[385,3419],{"className":3420,"style":589},[401],[385,3422,2252],{"className":3423,"style":2251},[406,407]," is hard too. For if ",[385,3426,3428],{"className":3427},[388],[385,3429,3431],{"className":3430,"ariaHidden":393},[392],[385,3432,3434,3437],{"className":3433},[397],[385,3435],{"className":3436,"style":589},[401],[385,3438,2252],{"className":3439,"style":2251},[406,407]," had a fast algorithm, the\npipeline above would give ",[385,3442,3444],{"className":3443},[388],[385,3445,3447],{"className":3446,"ariaHidden":393},[392],[385,3448,3450,3453],{"className":3449},[397],[385,3451],{"className":3452,"style":589},[401],[385,3454,2269],{"className":3455},[406,407]," one as well, a contradiction.",[381,3458,3459,3460,3475,3476,576,3491,3494,3495,3498,3499,3501],{},"It is the second direction that powers the theory of intractability. To show a\nnew problem ",[385,3461,3463],{"className":3462},[388],[385,3464,3466],{"className":3465,"ariaHidden":393},[392],[385,3467,3469,3472],{"className":3468},[397],[385,3470],{"className":3471,"style":589},[401],[385,3473,2252],{"className":3474,"style":2251},[406,407]," is hard, we reduce a known-hard problem ",[385,3477,3479],{"className":3478},[388],[385,3480,3482],{"className":3481,"ariaHidden":393},[392],[385,3483,3485,3488],{"className":3484},[397],[385,3486],{"className":3487,"style":589},[401],[385,3489,2269],{"className":3490},[406,407],[447,3492,3493],{},"to"," it. The\ndirection is a notorious source of error: we reduce ",[455,3496,3497],{},"from"," the hard problem\n",[455,3500,3493],{}," the new one. Getting the arrow backwards proves nothing.",[724,3503,3505,3731],{"className":3504},[727,728],[730,3506,3510],{"xmlns":732,"width":3507,"height":3508,"viewBox":3509},"385.804","134.132","-75 -75 289.353 100.599",[737,3511,3512,3515,3542,3545,3560,3589,3616,3669,3709,3724],{"stroke":739,"style":740},[745,3513],{"fill":747,"d":3514},"M18.021-56.462H-45.67a4 4 0 0 0-4 4v17.607a4 4 0 0 0 4 4H18.02a4 4 0 0 0 4-4v-17.607a4 4 0 0 0-4-4ZM-49.67-30.855",[737,3516,3517,3524,3530,3536],{"stroke":747,"fontSize":1880},[737,3518,3520],{"transform":3519},"translate(-32.513 2.25)",[745,3521],{"d":3522,"fill":739,"stroke":739,"className":3523,"style":760},"M-11.663-43.658L-13.394-43.658Q-13.491-43.658-13.491-43.777Q-13.491-43.834-13.460-43.904Q-13.429-43.974-13.368-43.974Q-12.678-43.974-12.278-44.585Q-12.278-44.585-12.252-44.612L-8.982-49.995Q-8.921-50.100-8.793-50.100L-8.705-50.100Q-8.582-50.100-8.569-49.995L-7.941-44.163Q-7.897-44.045-7.706-44.010Q-7.514-43.974-7.255-43.974Q-7.211-43.974-7.178-43.937Q-7.145-43.900-7.145-43.865Q-7.145-43.658-7.308-43.658L-9.540-43.658Q-9.580-43.658-9.611-43.698Q-9.641-43.737-9.641-43.777Q-9.641-43.838-9.606-43.906Q-9.571-43.974-9.514-43.974Q-9.237-43.974-9.028-44.018Q-8.820-44.062-8.776-44.216L-8.938-45.701L-11.259-45.701L-11.979-44.506Q-12.063-44.383-12.063-44.260Q-12.063-44.102-11.922-44.038Q-11.782-43.974-11.601-43.974Q-11.557-43.974-11.531-43.941Q-11.505-43.908-11.505-43.865Q-11.505-43.658-11.663-43.658M-9.290-48.940L-11.061-46.018L-8.973-46.018",[759],[737,3525,3526],{"transform":3519},[745,3527],{"d":3528,"fill":739,"stroke":739,"className":3529,"style":760},"M-0.953-41.417Q-1.458-41.804-1.827-42.309Q-2.197-42.814-2.440-43.414Q-2.684-44.014-2.799-44.631Q-2.913-45.249-2.913-45.908Q-2.913-46.567-2.799-47.182Q-2.684-47.798-2.445-48.391Q-2.205-48.984-1.832-49.494Q-1.458-50.004-0.953-50.390Q-0.918-50.408-0.896-50.408L-0.817-50.408Q-0.729-50.408-0.729-50.307Q-0.729-50.272-0.764-50.237Q-1.326-49.714-1.671-49.008Q-2.016-48.303-2.164-47.521Q-2.311-46.739-2.311-45.908Q-2.311-45.284-2.232-44.700Q-2.153-44.115-1.975-43.548Q-1.797-42.981-1.498-42.480Q-1.199-41.979-0.764-41.571Q-0.729-41.535-0.729-41.496Q-0.729-41.399-0.817-41.399L-0.896-41.399Q-0.918-41.399-0.953-41.417M2.070-43.658L0.036-43.658L0.036-43.974Q0.348-43.974 0.539-44.027Q0.730-44.080 0.730-44.269L0.730-48.984Q0.730-49.226 0.660-49.334Q0.590-49.441 0.455-49.465Q0.321-49.490 0.036-49.490L0.036-49.806L1.407-49.903L1.407-45.658L2.611-46.673Q2.818-46.844 2.818-47.024Q2.818-47.121 2.749-47.171Q2.681-47.222 2.585-47.222L2.585-47.538L4.294-47.538L4.294-47.222Q3.696-47.222 3.050-46.673L2.404-46.123L3.565-44.524Q3.740-44.286 3.844-44.181Q3.947-44.075 4.099-44.025Q4.250-43.974 4.501-43.974L4.501-43.658L2.673-43.658L2.673-43.974Q2.971-43.974 2.971-44.163Q2.971-44.282 2.800-44.524L1.925-45.719L1.376-45.249L1.376-44.269Q1.376-44.080 1.570-44.027Q1.763-43.974 2.070-43.974L2.070-43.658M7.049-43.658L4.962-43.658L4.962-43.974Q5.270-43.974 5.461-44.027Q5.652-44.080 5.652-44.269L5.652-46.717Q5.652-46.958 5.582-47.066Q5.511-47.174 5.377-47.198Q5.243-47.222 4.962-47.222L4.962-47.538L6.302-47.635L6.302-46.800Q6.500-47.182 6.854-47.409Q7.208-47.635 7.634-47.635Q8.913-47.635 8.913-46.422L8.913-44.269Q8.913-44.080 9.104-44.027Q9.295-43.974 9.603-43.974L9.603-43.658L7.515-43.658L7.515-43.974Q7.827-43.974 8.018-44.027Q8.210-44.080 8.210-44.269L8.210-46.387Q8.210-46.646 8.166-46.868Q8.122-47.090 7.977-47.233Q7.832-47.376 7.572-47.376Q7.230-47.376 6.948-47.187Q6.667-46.998 6.511-46.686Q6.355-46.374 6.355-46.027L6.355-44.269Q6.355-44.080 6.549-44.027Q6.742-43.974 7.049-43.974L7.049-43.658M10.060-45.565Q10.060-46.132 10.332-46.620Q10.605-47.108 11.075-47.400Q11.545-47.692 12.112-47.692Q12.534-47.692 12.910-47.523Q13.285-47.354 13.562-47.062Q13.839-46.769 13.997-46.374Q14.155-45.978 14.155-45.565Q14.155-45.016 13.876-44.554Q13.597-44.093 13.129-43.825Q12.661-43.557 12.112-43.557Q11.558-43.557 11.088-43.825Q10.618-44.093 10.339-44.554Q10.060-45.016 10.060-45.565M12.112-43.847Q12.609-43.847 12.885-44.108Q13.162-44.370 13.255-44.774Q13.347-45.179 13.347-45.675Q13.347-46.150 13.248-46.539Q13.149-46.928 12.877-47.178Q12.604-47.429 12.112-47.429Q11.400-47.429 11.136-46.934Q10.873-46.440 10.873-45.675Q10.873-44.875 11.128-44.361Q11.383-43.847 12.112-43.847",[759],[737,3531,3532],{"transform":3519},[745,3533],{"d":3534,"fill":739,"stroke":739,"className":3535,"style":760},"M16.207-43.676L15.016-46.923Q14.941-47.121 14.796-47.171Q14.651-47.222 14.361-47.222L14.361-47.538L16.242-47.538L16.242-47.222Q15.719-47.222 15.719-46.998Q15.719-46.967 15.737-46.923L16.602-44.541L17.358-46.629L17.248-46.923Q17.174-47.121 17.026-47.171Q16.879-47.222 16.594-47.222L16.594-47.538L18.382-47.538L18.382-47.222Q17.872-47.222 17.872-46.998Q17.872-46.945 17.881-46.923L18.800-44.423L19.617-46.673Q19.635-46.717 19.635-46.818Q19.635-47.011 19.483-47.116Q19.331-47.222 19.129-47.222L19.129-47.538L20.672-47.538L20.672-47.222Q20.404-47.222 20.208-47.073Q20.013-46.923 19.925-46.673L18.826-43.676Q18.795-43.557 18.663-43.557L18.602-43.557Q18.483-43.557 18.439-43.676L17.521-46.207L16.594-43.676Q16.550-43.557 16.431-43.557L16.369-43.557Q16.238-43.557 16.207-43.676M23.247-43.658L21.160-43.658L21.160-43.974Q21.467-43.974 21.658-44.027Q21.849-44.080 21.849-44.269L21.849-46.717Q21.849-46.958 21.779-47.066Q21.709-47.174 21.575-47.198Q21.441-47.222 21.160-47.222L21.160-47.538L22.500-47.635L22.500-46.800Q22.698-47.182 23.051-47.409Q23.405-47.635 23.831-47.635Q25.110-47.635 25.110-46.422L25.110-44.269Q25.110-44.080 25.301-44.027Q25.493-43.974 25.800-43.974L25.800-43.658L23.713-43.658L23.713-43.974Q24.025-43.974 24.216-44.027Q24.407-44.080 24.407-44.269L24.407-46.387Q24.407-46.646 24.363-46.868Q24.319-47.090 24.174-47.233Q24.029-47.376 23.770-47.376Q23.427-47.376 23.146-47.187Q22.865-46.998 22.709-46.686Q22.553-46.374 22.553-46.027L22.553-44.269Q22.553-44.080 22.746-44.027Q22.939-43.974 23.247-43.974",[759],[737,3537,3538],{"transform":3519},[745,3539],{"d":3540,"fill":739,"stroke":739,"className":3541,"style":760},"M31.470-43.658L29.383-43.658L29.383-43.974Q29.690-43.974 29.882-44.027Q30.073-44.080 30.073-44.269L30.073-48.984Q30.073-49.226 30.002-49.334Q29.932-49.441 29.798-49.465Q29.664-49.490 29.383-49.490L29.383-49.806L30.750-49.903L30.750-46.853Q30.947-47.209 31.301-47.422Q31.655-47.635 32.055-47.635Q33.334-47.635 33.334-46.422L33.334-44.269Q33.334-44.080 33.525-44.027Q33.716-43.974 34.023-43.974L34.023-43.658L31.936-43.658L31.936-43.974Q32.248-43.974 32.439-44.027Q32.630-44.080 32.630-44.269L32.630-46.387Q32.630-46.646 32.586-46.868Q32.542-47.090 32.397-47.233Q32.252-47.376 31.993-47.376Q31.650-47.376 31.369-47.187Q31.088-46.998 30.932-46.686Q30.776-46.374 30.776-46.027L30.776-44.269Q30.776-44.080 30.969-44.027Q31.163-43.974 31.470-43.974L31.470-43.658M34.590-44.568Q34.590-45.108 35.023-45.442Q35.456-45.776 36.063-45.915Q36.669-46.053 37.201-46.053L37.201-46.387Q37.201-46.646 37.082-46.890Q36.963-47.134 36.755-47.281Q36.546-47.429 36.273-47.429Q35.711-47.429 35.399-47.231Q35.548-47.204 35.641-47.086Q35.733-46.967 35.733-46.809Q35.733-46.633 35.608-46.503Q35.482-46.374 35.302-46.374Q35.113-46.374 34.986-46.501Q34.858-46.629 34.858-46.809Q34.858-47.279 35.298-47.486Q35.737-47.692 36.273-47.692Q36.563-47.692 36.851-47.604Q37.139-47.516 37.372-47.356Q37.605-47.196 37.754-46.956Q37.904-46.717 37.904-46.422L37.904-44.387Q37.904-44.234 37.979-44.095Q38.053-43.957 38.198-43.957Q38.352-43.957 38.425-44.093Q38.497-44.229 38.497-44.387L38.497-44.963L38.783-44.963L38.783-44.387Q38.783-44.054 38.534-43.829Q38.286-43.605 37.957-43.605Q37.697-43.605 37.515-43.799Q37.333-43.992 37.289-44.269Q37.122-43.948 36.788-43.752Q36.454-43.557 36.084-43.557Q35.531-43.557 35.061-43.805Q34.590-44.054 34.590-44.568M35.346-44.568Q35.346-44.256 35.588-44.038Q35.830-43.821 36.146-43.821Q36.581-43.821 36.891-44.130Q37.201-44.440 37.201-44.871L37.201-45.798Q36.783-45.798 36.357-45.671Q35.931-45.543 35.638-45.266Q35.346-44.990 35.346-44.568M41.323-43.658L39.090-43.658L39.090-43.974Q39.402-43.974 39.594-44.027Q39.785-44.080 39.785-44.269L39.785-46.717Q39.785-46.958 39.714-47.066Q39.644-47.174 39.510-47.198Q39.376-47.222 39.090-47.222L39.090-47.538L40.404-47.635L40.404-46.774Q40.567-47.165 40.835-47.400Q41.103-47.635 41.494-47.635Q41.767-47.635 41.982-47.472Q42.197-47.310 42.197-47.051Q42.197-46.875 42.079-46.756Q41.960-46.637 41.784-46.637Q41.604-46.637 41.485-46.756Q41.367-46.875 41.367-47.051Q41.367-47.266 41.521-47.376L41.503-47.376Q41.125-47.376 40.892-47.114Q40.659-46.853 40.560-46.466Q40.461-46.079 40.461-45.719L40.461-44.269Q40.461-44.080 40.719-44.027Q40.976-43.974 41.323-43.974L41.323-43.658M44.707-43.557Q44.162-43.557 43.718-43.840Q43.274-44.124 43.019-44.596Q42.764-45.069 42.764-45.600Q42.764-46.154 43.041-46.620Q43.318-47.086 43.790-47.360Q44.263-47.635 44.808-47.635Q45.142-47.635 45.445-47.503Q45.748-47.371 45.968-47.134L45.968-48.984Q45.968-49.226 45.897-49.334Q45.827-49.441 45.693-49.465Q45.559-49.490 45.273-49.490L45.273-49.806L46.640-49.903L46.640-44.475Q46.640-44.238 46.710-44.130Q46.781-44.023 46.917-43.999Q47.053-43.974 47.334-43.974L47.334-43.658L45.941-43.557L45.941-44.106Q45.691-43.843 45.372-43.700Q45.054-43.557 44.707-43.557M44.768-43.821Q45.137-43.821 45.447-44.032Q45.757-44.242 45.941-44.585L45.941-46.717Q45.770-47.020 45.489-47.198Q45.208-47.376 44.869-47.376Q44.179-47.376 43.876-46.855Q43.573-46.334 43.573-45.592Q43.573-44.871 43.843-44.346Q44.113-43.821 44.768-43.821M48.279-41.399L48.196-41.399Q48.108-41.399 48.108-41.496Q48.108-41.535 48.143-41.571Q48.978-42.344 49.338-43.478Q49.699-44.612 49.699-45.908Q49.699-46.528 49.620-47.119Q49.541-47.710 49.360-48.268Q49.180-48.826 48.879-49.334Q48.578-49.841 48.143-50.237Q48.108-50.272 48.108-50.307Q48.108-50.408 48.196-50.408L48.279-50.408Q48.297-50.408 48.332-50.390Q48.837-50.008 49.211-49.494Q49.584-48.980 49.822-48.402Q50.059-47.824 50.176-47.196Q50.292-46.567 50.292-45.908Q50.292-45.249 50.176-44.618Q50.059-43.988 49.820-43.403Q49.580-42.819 49.209-42.309Q48.837-41.799 48.332-41.417Q48.297-41.399 48.279-41.399",[759],[745,3543],{"fill":747,"d":3544},"M189.88-56.462h-43.215a4 4 0 0 0-4 4v17.607a4 4 0 0 0 4 4h43.215a4 4 0 0 0 4-4v-17.607a4 4 0 0 0-4-4Zm-47.215 25.607",[737,3546,3547,3554],{"stroke":747,"fontSize":1880},[737,3548,3550],{"transform":3549},"translate(165.268 2.25)",[745,3551],{"d":3552,"fill":739,"stroke":739,"className":3553,"style":760},"M-9.848-43.658L-13.320-43.658Q-13.429-43.658-13.429-43.777Q-13.429-43.838-13.397-43.906Q-13.364-43.974-13.302-43.974Q-12.801-43.974-12.573-44.027Q-12.445-44.075-12.375-44.304L-11.153-49.221Q-11.136-49.309-11.136-49.353Q-11.136-49.419-11.162-49.437Q-11.333-49.490-11.865-49.490Q-11.971-49.490-11.971-49.608Q-11.971-49.670-11.938-49.738Q-11.905-49.806-11.843-49.806L-8.569-49.806Q-8.165-49.806-7.772-49.670Q-7.378-49.533-7.123-49.250Q-6.868-48.967-6.868-48.554Q-6.868-48.118-7.163-47.758Q-7.457-47.398-7.895-47.174Q-8.332-46.950-8.767-46.870Q-8.407-46.835-8.079-46.677Q-7.752-46.519-7.547-46.242Q-7.343-45.965-7.343-45.600Q-7.343-45.187-7.574-44.827Q-7.804-44.467-8.191-44.205Q-8.578-43.944-9.013-43.801Q-9.448-43.658-9.848-43.658M-11.663-44.036Q-11.663-43.974-11.377-43.974L-10.028-43.974Q-9.580-43.974-9.160-44.212Q-8.741-44.449-8.488-44.842Q-8.235-45.236-8.235-45.684Q-8.235-45.978-8.356-46.216Q-8.477-46.453-8.694-46.589Q-8.912-46.725-9.206-46.725L-11.008-46.725L-11.628-44.242Q-11.663-44.102-11.663-44.036M-10.406-49.156L-10.947-46.989L-9.532-46.989Q-9.114-46.989-8.690-47.202Q-8.266-47.415-8-47.780Q-7.734-48.145-7.734-48.580Q-7.734-48.975-7.991-49.232Q-8.248-49.490-8.648-49.490L-9.936-49.490Q-10.195-49.490-10.270-49.443Q-10.345-49.397-10.406-49.156",[759],[737,3555,3556],{"transform":3549},[745,3557],{"d":3558,"fill":739,"stroke":739,"className":3559,"style":760},"M-0.442-41.417Q-0.947-41.804-1.316-42.309Q-1.686-42.814-1.929-43.414Q-2.173-44.014-2.288-44.631Q-2.402-45.249-2.402-45.908Q-2.402-46.567-2.288-47.182Q-2.173-47.798-1.934-48.391Q-1.694-48.984-1.321-49.494Q-0.947-50.004-0.442-50.390Q-0.407-50.408-0.385-50.408L-0.306-50.408Q-0.218-50.408-0.218-50.307Q-0.218-50.272-0.253-50.237Q-0.815-49.714-1.160-49.008Q-1.505-48.303-1.653-47.521Q-1.800-46.739-1.800-45.908Q-1.800-45.284-1.721-44.700Q-1.642-44.115-1.464-43.548Q-1.286-42.981-0.987-42.480Q-0.688-41.979-0.253-41.571Q-0.218-41.535-0.218-41.496Q-0.218-41.399-0.306-41.399L-0.385-41.399Q-0.407-41.399-0.442-41.417M2.683-43.658L0.595-43.658L0.595-43.974Q0.903-43.974 1.094-44.027Q1.285-44.080 1.285-44.269L1.285-46.717Q1.285-46.958 1.215-47.066Q1.144-47.174 1.010-47.198Q0.876-47.222 0.595-47.222L0.595-47.538L1.935-47.635L1.935-46.800Q2.133-47.182 2.487-47.409Q2.841-47.635 3.267-47.635Q4.546-47.635 4.546-46.422L4.546-44.269Q4.546-44.080 4.737-44.027Q4.928-43.974 5.236-43.974L5.236-43.658L3.148-43.658L3.148-43.974Q3.460-43.974 3.652-44.027Q3.843-44.080 3.843-44.269L3.843-46.387Q3.843-46.646 3.799-46.868Q3.755-47.090 3.610-47.233Q3.465-47.376 3.206-47.376Q2.863-47.376 2.581-47.187Q2.300-46.998 2.144-46.686Q1.988-46.374 1.988-46.027L1.988-44.269Q1.988-44.080 2.182-44.027Q2.375-43.974 2.683-43.974L2.683-43.658M7.745-43.557Q7.187-43.557 6.715-43.840Q6.242-44.124 5.967-44.601Q5.693-45.077 5.693-45.631Q5.693-46.027 5.836-46.402Q5.978-46.778 6.236-47.066Q6.493-47.354 6.851-47.523Q7.209-47.692 7.613-47.692Q8.158-47.692 8.529-47.455Q8.901-47.218 9.088-46.800Q9.274-46.383 9.274-45.846Q9.274-45.794 9.250-45.756Q9.226-45.719 9.178-45.719L6.506-45.719L6.506-45.640Q6.506-44.893 6.818-44.370Q7.130-43.847 7.829-43.847Q8.233-43.847 8.554-44.104Q8.874-44.361 8.998-44.765Q9.015-44.845 9.099-44.845L9.178-44.845Q9.217-44.845 9.246-44.814Q9.274-44.783 9.274-44.739L9.274-44.704Q9.169-44.361 8.947-44.102Q8.725-43.843 8.411-43.700Q8.097-43.557 7.745-43.557M6.515-45.970L8.628-45.970Q8.628-46.238 8.576-46.484Q8.523-46.730 8.402-46.952Q8.281-47.174 8.083-47.301Q7.886-47.429 7.613-47.429Q7.270-47.429 7.018-47.204Q6.765-46.980 6.640-46.642Q6.515-46.304 6.515-45.970M11.573-43.676L10.382-46.923Q10.307-47.121 10.162-47.171Q10.017-47.222 9.727-47.222L9.727-47.538L11.608-47.538L11.608-47.222Q11.085-47.222 11.085-46.998Q11.085-46.967 11.102-46.923L11.968-44.541L12.724-46.629L12.614-46.923Q12.539-47.121 12.392-47.171Q12.245-47.222 11.959-47.222L11.959-47.538L13.748-47.538L13.748-47.222Q13.238-47.222 13.238-46.998Q13.238-46.945 13.247-46.923L14.165-44.423L14.983-46.673Q15-46.717 15-46.818Q15-47.011 14.849-47.116Q14.697-47.222 14.495-47.222L14.495-47.538L16.038-47.538L16.038-47.222Q15.769-47.222 15.574-47.073Q15.378-46.923 15.290-46.673L14.192-43.676Q14.161-43.557 14.029-43.557L13.968-43.557Q13.849-43.557 13.805-43.676L12.887-46.207L11.959-43.676Q11.915-43.557 11.797-43.557L11.735-43.557Q11.603-43.557 11.573-43.676M16.912-41.399L16.829-41.399Q16.741-41.399 16.741-41.496Q16.741-41.535 16.776-41.571Q17.611-42.344 17.971-43.478Q18.331-44.612 18.331-45.908Q18.331-46.528 18.252-47.119Q18.173-47.710 17.993-48.268Q17.813-48.826 17.512-49.334Q17.211-49.841 16.776-50.237Q16.741-50.272 16.741-50.307Q16.741-50.408 16.829-50.408L16.912-50.408Q16.930-50.408 16.965-50.390Q17.470-50.008 17.844-49.494Q18.217-48.980 18.455-48.402Q18.692-47.824 18.808-47.196Q18.925-46.567 18.925-45.908Q18.925-45.249 18.808-44.618Q18.692-43.988 18.452-43.403Q18.213-42.819 17.841-42.309Q17.470-41.799 16.965-41.417Q16.930-41.399 16.912-41.399",[759],[737,3561,3562,3565,3568],{"style":743},[745,3563],{"fill":747,"d":3564},"M22.221-43.658H138.34",[745,3566],{"d":3567},"m141.326-43.658-4.169-1.577 1.383 1.577-1.383 1.576Z",[737,3569,3570,3577,3583],{"stroke":747,"fontSize":836},[737,3571,3573],{"transform":3572},"translate(66.233 -5.094)",[745,3574],{"d":3575,"fill":739,"stroke":739,"className":3576,"style":804},"M-13.312-42.735Q-13.312-42.913-13.194-43.048Q-13.076-43.183-12.895-43.183Q-12.779-43.183-12.697-43.109Q-12.615-43.036-12.615-42.916Q-12.615-42.783-12.692-42.677Q-12.769-42.571-12.902-42.523Q-12.769-42.455-12.608-42.455Q-12.369-42.455-12.260-42.768Q-12.150-43.080-12.068-43.525Q-12.037-43.675-11.967-44.044Q-11.897-44.413-11.843-44.707L-11.542-46.396L-12.208-46.396Q-12.290-46.423-12.290-46.509L-12.263-46.618Q-12.256-46.659-12.188-46.676L-11.494-46.676L-11.408-47.131Q-11.354-47.438-11.326-47.573Q-11.299-47.708-11.234-47.881Q-11.169-48.054-11.067-48.187Q-10.937-48.365-10.735-48.476Q-10.533-48.587-10.318-48.587Q-10.048-48.587-9.826-48.462Q-9.604-48.337-9.604-48.081Q-9.604-47.903-9.725-47.768Q-9.846-47.633-10.017-47.633Q-10.134-47.633-10.219-47.707Q-10.304-47.780-10.304-47.900Q-10.304-48.030-10.224-48.141Q-10.144-48.252-10.017-48.293Q-10.158-48.361-10.325-48.361Q-10.462-48.361-10.542-48.265Q-10.622-48.170-10.655-48.047Q-10.687-47.924-10.718-47.766Q-10.728-47.715-10.781-47.437Q-10.834-47.158-10.838-47.144L-10.920-46.676L-10.123-46.676Q-10.038-46.652-10.038-46.570L-10.065-46.457Q-10.072-46.413-10.144-46.396L-10.968-46.396L-11.268-44.721Q-11.374-44.137-11.453-43.784Q-11.532-43.432-11.668-43.097Q-11.798-42.766-12.053-42.498Q-12.307-42.229-12.615-42.229Q-12.885-42.229-13.099-42.359Q-13.312-42.489-13.312-42.735",[759],[737,3578,3579],{"transform":3572},[745,3580],{"d":3581,"fill":739,"stroke":739,"className":3582,"style":804},"M-4.450-43.658L-6.084-43.658L-6.084-43.938Q-5.855-43.938-5.706-43.972Q-5.557-44.007-5.557-44.147L-5.557-45.996Q-5.557-46.266-5.665-46.327Q-5.773-46.389-6.084-46.389L-6.084-46.669L-5.024-46.744L-5.024-46.095Q-4.853-46.403-4.549-46.574Q-4.245-46.744-3.900-46.744Q-3.500-46.744-3.223-46.604Q-2.946-46.464-2.861-46.116Q-2.693-46.409-2.394-46.577Q-2.095-46.744-1.750-46.744Q-1.244-46.744-0.960-46.521Q-0.676-46.297-0.676-45.801L-0.676-44.147Q-0.676-44.010-0.528-43.974Q-0.379-43.938-0.154-43.938L-0.154-43.658L-1.784-43.658L-1.784-43.938Q-1.558-43.938-1.408-43.974Q-1.258-44.010-1.258-44.147L-1.258-45.787Q-1.258-46.122-1.377-46.322Q-1.497-46.522-1.811-46.522Q-2.081-46.522-2.315-46.386Q-2.550-46.249-2.688-46.015Q-2.826-45.781-2.826-45.507L-2.826-44.147Q-2.826-44.010-2.678-43.974Q-2.529-43.938-2.303-43.938L-2.303-43.658L-3.934-43.658L-3.934-43.938Q-3.705-43.938-3.556-43.972Q-3.407-44.007-3.407-44.147L-3.407-45.787Q-3.407-46.122-3.527-46.322Q-3.647-46.522-3.961-46.522Q-4.231-46.522-4.465-46.386Q-4.699-46.249-4.838-46.015Q-4.976-45.781-4.976-45.507L-4.976-44.147Q-4.976-44.010-4.826-43.974Q-4.675-43.938-4.450-43.938L-4.450-43.658M0.492-44.386Q0.492-44.718 0.716-44.945Q0.940-45.172 1.284-45.300Q1.627-45.429 2-45.481Q2.372-45.534 2.677-45.534L2.677-45.787Q2.677-45.992 2.569-46.172Q2.461-46.351 2.280-46.454Q2.099-46.556 1.890-46.556Q1.484-46.556 1.248-46.464Q1.337-46.427 1.383-46.343Q1.429-46.259 1.429-46.157Q1.429-46.061 1.383-45.982Q1.337-45.904 1.256-45.859Q1.176-45.815 1.087-45.815Q0.937-45.815 0.836-45.912Q0.735-46.010 0.735-46.157Q0.735-46.779 1.890-46.779Q2.102-46.779 2.352-46.715Q2.601-46.652 2.803-46.533Q3.005-46.413 3.131-46.228Q3.258-46.044 3.258-45.801L3.258-44.225Q3.258-44.109 3.319-44.013Q3.381-43.918 3.493-43.918Q3.603-43.918 3.668-44.012Q3.733-44.106 3.733-44.225L3.733-44.673L3.999-44.673L3.999-44.225Q3.999-43.955 3.772-43.790Q3.545-43.624 3.264-43.624Q3.056-43.624 2.919-43.778Q2.783-43.931 2.759-44.147Q2.612-43.880 2.330-43.735Q2.048-43.590 1.723-43.590Q1.446-43.590 1.162-43.665Q0.879-43.740 0.686-43.919Q0.492-44.099 0.492-44.386M1.108-44.386Q1.108-44.212 1.209-44.082Q1.309-43.952 1.465-43.882Q1.620-43.812 1.784-43.812Q2.003-43.812 2.212-43.909Q2.420-44.007 2.548-44.188Q2.677-44.369 2.677-44.595L2.677-45.323Q2.352-45.323 1.986-45.232Q1.620-45.141 1.364-44.929Q1.108-44.718 1.108-44.386M6.060-42.301L4.430-42.301L4.430-42.581Q4.659-42.581 4.808-42.616Q4.956-42.650 4.956-42.790L4.956-46.136Q4.956-46.307 4.820-46.348Q4.683-46.389 4.430-46.389L4.430-46.669L5.510-46.744L5.510-46.338Q5.732-46.539 6.019-46.642Q6.306-46.744 6.614-46.744Q7.041-46.744 7.405-46.531Q7.769-46.317 7.983-45.953Q8.197-45.589 8.197-45.169Q8.197-44.724 7.957-44.360Q7.718-43.996 7.325-43.793Q6.932-43.590 6.488-43.590Q6.221-43.590 5.973-43.690Q5.725-43.791 5.537-43.972L5.537-42.790Q5.537-42.653 5.686-42.617Q5.835-42.581 6.060-42.581L6.060-42.301M5.537-45.989L5.537-44.379Q5.671-44.126 5.913-43.969Q6.156-43.812 6.433-43.812Q6.761-43.812 7.014-44.013Q7.267-44.215 7.400-44.533Q7.533-44.851 7.533-45.169Q7.533-45.398 7.469-45.627Q7.404-45.856 7.275-46.054Q7.147-46.252 6.952-46.372Q6.758-46.491 6.525-46.491Q6.231-46.491 5.963-46.362Q5.695-46.232 5.537-45.989M8.832-43.665L8.832-44.728Q8.832-44.752 8.860-44.779Q8.887-44.806 8.911-44.806L9.020-44.806Q9.085-44.806 9.099-44.748Q9.195-44.314 9.441-44.063Q9.687-43.812 10.100-43.812Q10.442-43.812 10.695-43.945Q10.948-44.078 10.948-44.386Q10.948-44.543 10.854-44.658Q10.760-44.772 10.622-44.841Q10.483-44.909 10.316-44.947L9.735-45.046Q9.379-45.114 9.106-45.335Q8.832-45.555 8.832-45.897Q8.832-46.146 8.943-46.321Q9.054-46.495 9.241-46.594Q9.427-46.693 9.642-46.736Q9.858-46.779 10.100-46.779Q10.514-46.779 10.794-46.597L11.010-46.772Q11.020-46.775 11.027-46.777Q11.033-46.779 11.044-46.779L11.095-46.779Q11.122-46.779 11.146-46.755Q11.170-46.731 11.170-46.703L11.170-45.856Q11.170-45.835 11.146-45.808Q11.122-45.781 11.095-45.781L10.982-45.781Q10.955-45.781 10.929-45.806Q10.904-45.832 10.904-45.856Q10.904-46.092 10.798-46.256Q10.692-46.420 10.509-46.502Q10.326-46.584 10.094-46.584Q9.765-46.584 9.509-46.481Q9.253-46.379 9.253-46.102Q9.253-45.907 9.436-45.798Q9.618-45.688 9.847-45.647L10.422-45.541Q10.668-45.493 10.881-45.365Q11.095-45.237 11.232-45.034Q11.368-44.830 11.368-44.581Q11.368-44.068 11.003-43.829Q10.637-43.590 10.100-43.590Q9.605-43.590 9.273-43.884L9.007-43.610Q8.986-43.590 8.959-43.590L8.911-43.590Q8.887-43.590 8.860-43.617Q8.832-43.644 8.832-43.665",[759],[737,3584,3585],{"transform":3572},[745,3586],{"d":3587,"fill":739,"stroke":739,"className":3588,"style":804},"M16.320-43.658L14.768-43.658L14.768-43.938Q14.994-43.938 15.143-43.972Q15.291-44.007 15.291-44.147L15.291-45.996Q15.291-46.184 15.243-46.268Q15.196-46.351 15.098-46.370Q15.001-46.389 14.789-46.389L14.789-46.669L15.845-46.744L15.845-44.147Q15.845-44.007 15.977-43.972Q16.108-43.938 16.320-43.938L16.320-43.658M15.049-47.965Q15.049-48.136 15.172-48.255Q15.295-48.375 15.466-48.375Q15.633-48.375 15.756-48.255Q15.879-48.136 15.879-47.965Q15.879-47.790 15.756-47.667Q15.633-47.544 15.466-47.544Q15.295-47.544 15.172-47.667Q15.049-47.790 15.049-47.965M18.648-43.658L17.014-43.658L17.014-43.938Q17.243-43.938 17.392-43.972Q17.540-44.007 17.540-44.147L17.540-45.996Q17.540-46.266 17.433-46.327Q17.325-46.389 17.014-46.389L17.014-46.669L18.074-46.744L18.074-46.095Q18.244-46.403 18.549-46.574Q18.853-46.744 19.198-46.744Q19.704-46.744 19.988-46.521Q20.271-46.297 20.271-45.801L20.271-44.147Q20.271-44.010 20.420-43.974Q20.569-43.938 20.794-43.938L20.794-43.658L19.164-43.658L19.164-43.938Q19.393-43.938 19.542-43.972Q19.690-44.007 19.690-44.147L19.690-45.787Q19.690-46.122 19.571-46.322Q19.451-46.522 19.137-46.522Q18.867-46.522 18.632-46.386Q18.398-46.249 18.260-46.015Q18.121-45.781 18.121-45.507L18.121-44.147Q18.121-44.010 18.272-43.974Q18.422-43.938 18.648-43.938L18.648-43.658M21.382-43.665L21.382-44.728Q21.382-44.752 21.410-44.779Q21.437-44.806 21.461-44.806L21.570-44.806Q21.635-44.806 21.649-44.748Q21.744-44.314 21.991-44.063Q22.237-43.812 22.650-43.812Q22.992-43.812 23.245-43.945Q23.498-44.078 23.498-44.386Q23.498-44.543 23.404-44.658Q23.310-44.772 23.171-44.841Q23.033-44.909 22.866-44.947L22.285-45.046Q21.929-45.114 21.656-45.335Q21.382-45.555 21.382-45.897Q21.382-46.146 21.493-46.321Q21.604-46.495 21.791-46.594Q21.977-46.693 22.192-46.736Q22.408-46.779 22.650-46.779Q23.064-46.779 23.344-46.597L23.559-46.772Q23.570-46.775 23.576-46.777Q23.583-46.779 23.594-46.779L23.645-46.779Q23.672-46.779 23.696-46.755Q23.720-46.731 23.720-46.703L23.720-45.856Q23.720-45.835 23.696-45.808Q23.672-45.781 23.645-45.781L23.532-45.781Q23.505-45.781 23.479-45.806Q23.453-45.832 23.453-45.856Q23.453-46.092 23.347-46.256Q23.242-46.420 23.059-46.502Q22.876-46.584 22.643-46.584Q22.315-46.584 22.059-46.481Q21.803-46.379 21.803-46.102Q21.803-45.907 21.985-45.798Q22.168-45.688 22.397-45.647L22.972-45.541Q23.218-45.493 23.431-45.365Q23.645-45.237 23.782-45.034Q23.918-44.830 23.918-44.581Q23.918-44.068 23.553-43.829Q23.187-43.590 22.650-43.590Q22.155-43.590 21.823-43.884L21.556-43.610Q21.536-43.590 21.509-43.590L21.461-43.590Q21.437-43.590 21.410-43.617Q21.382-43.644 21.382-43.665M25.074-44.499L25.074-46.396L24.434-46.396L24.434-46.618Q24.752-46.618 24.969-46.828Q25.186-47.038 25.287-47.348Q25.388-47.657 25.388-47.965L25.655-47.965L25.655-46.676L26.731-46.676L26.731-46.396L25.655-46.396L25.655-44.512Q25.655-44.236 25.759-44.037Q25.863-43.839 26.123-43.839Q26.280-43.839 26.386-43.943Q26.492-44.048 26.542-44.201Q26.591-44.355 26.591-44.512L26.591-44.926L26.858-44.926L26.858-44.499Q26.858-44.273 26.759-44.063Q26.660-43.853 26.475-43.721Q26.290-43.590 26.061-43.590Q25.624-43.590 25.349-43.827Q25.074-44.065 25.074-44.499M27.726-44.386Q27.726-44.718 27.950-44.945Q28.174-45.172 28.517-45.300Q28.861-45.429 29.233-45.481Q29.606-45.534 29.910-45.534L29.910-45.787Q29.910-45.992 29.802-46.172Q29.695-46.351 29.514-46.454Q29.332-46.556 29.124-46.556Q28.717-46.556 28.481-46.464Q28.570-46.427 28.616-46.343Q28.662-46.259 28.662-46.157Q28.662-46.061 28.616-45.982Q28.570-45.904 28.490-45.859Q28.410-45.815 28.321-45.815Q28.170-45.815 28.069-45.912Q27.969-46.010 27.969-46.157Q27.969-46.779 29.124-46.779Q29.336-46.779 29.585-46.715Q29.835-46.652 30.036-46.533Q30.238-46.413 30.365-46.228Q30.491-46.044 30.491-45.801L30.491-44.225Q30.491-44.109 30.553-44.013Q30.614-43.918 30.727-43.918Q30.836-43.918 30.901-44.012Q30.966-44.106 30.966-44.225L30.966-44.673L31.233-44.673L31.233-44.225Q31.233-43.955 31.005-43.790Q30.778-43.624 30.498-43.624Q30.289-43.624 30.153-43.778Q30.016-43.931 29.992-44.147Q29.845-43.880 29.563-43.735Q29.281-43.590 28.956-43.590Q28.680-43.590 28.396-43.665Q28.112-43.740 27.919-43.919Q27.726-44.099 27.726-44.386M28.341-44.386Q28.341-44.212 28.442-44.082Q28.543-43.952 28.698-43.882Q28.854-43.812 29.018-43.812Q29.237-43.812 29.445-43.909Q29.654-44.007 29.782-44.188Q29.910-44.369 29.910-44.595L29.910-45.323Q29.585-45.323 29.220-45.232Q28.854-45.141 28.597-44.929Q28.341-44.718 28.341-44.386M33.331-43.658L31.698-43.658L31.698-43.938Q31.927-43.938 32.075-43.972Q32.224-44.007 32.224-44.147L32.224-45.996Q32.224-46.266 32.116-46.327Q32.009-46.389 31.698-46.389L31.698-46.669L32.757-46.744L32.757-46.095Q32.928-46.403 33.232-46.574Q33.536-46.744 33.882-46.744Q34.388-46.744 34.671-46.521Q34.955-46.297 34.955-45.801L34.955-44.147Q34.955-44.010 35.104-43.974Q35.252-43.938 35.478-43.938L35.478-43.658L33.847-43.658L33.847-43.938Q34.076-43.938 34.225-43.972Q34.374-44.007 34.374-44.147L34.374-45.787Q34.374-46.122 34.254-46.322Q34.135-46.522 33.820-46.522Q33.550-46.522 33.316-46.386Q33.082-46.249 32.943-46.015Q32.805-45.781 32.805-45.507L32.805-44.147Q32.805-44.010 32.955-43.974Q33.106-43.938 33.331-43.938L33.331-43.658M36.066-45.169Q36.066-45.497 36.201-45.798Q36.336-46.098 36.572-46.319Q36.807-46.539 37.112-46.659Q37.416-46.779 37.741-46.779Q38.246-46.779 38.595-46.676Q38.944-46.574 38.944-46.198Q38.944-46.051 38.846-45.950Q38.749-45.849 38.602-45.849Q38.448-45.849 38.349-45.948Q38.250-46.047 38.250-46.198Q38.250-46.386 38.390-46.478Q38.188-46.529 37.747-46.529Q37.392-46.529 37.163-46.333Q36.934-46.136 36.833-45.827Q36.732-45.517 36.732-45.169Q36.732-44.820 36.859-44.514Q36.985-44.208 37.240-44.024Q37.494-43.839 37.850-43.839Q38.072-43.839 38.257-43.923Q38.441-44.007 38.576-44.162Q38.711-44.318 38.769-44.526Q38.783-44.581 38.838-44.581L38.951-44.581Q38.981-44.581 39.004-44.557Q39.026-44.533 39.026-44.499L39.026-44.478Q38.940-44.191 38.752-43.993Q38.564-43.795 38.299-43.692Q38.035-43.590 37.741-43.590Q37.310-43.590 36.922-43.796Q36.534-44.003 36.300-44.366Q36.066-44.728 36.066-45.169M39.573-45.193Q39.573-45.514 39.697-45.803Q39.822-46.092 40.048-46.315Q40.273-46.539 40.569-46.659Q40.865-46.779 41.182-46.779Q41.511-46.779 41.772-46.679Q42.034-46.580 42.210-46.398Q42.386-46.215 42.480-45.957Q42.574-45.699 42.574-45.367Q42.574-45.275 42.492-45.254L40.236-45.254L40.236-45.193Q40.236-44.605 40.519-44.222Q40.803-43.839 41.370-43.839Q41.692-43.839 41.960-44.032Q42.228-44.225 42.317-44.540Q42.324-44.581 42.399-44.595L42.492-44.595Q42.574-44.571 42.574-44.499Q42.574-44.492 42.567-44.465Q42.454-44.068 42.083-43.829Q41.712-43.590 41.288-43.590Q40.851-43.590 40.451-43.798Q40.051-44.007 39.812-44.374Q39.573-44.741 39.573-45.193M40.243-45.463L42.057-45.463Q42.057-45.740 41.960-45.992Q41.863-46.245 41.664-46.401Q41.466-46.556 41.182-46.556Q40.906-46.556 40.692-46.398Q40.478-46.239 40.360-45.984Q40.243-45.729 40.243-45.463M43.161-43.665L43.161-44.728Q43.161-44.752 43.189-44.779Q43.216-44.806 43.240-44.806L43.349-44.806Q43.414-44.806 43.428-44.748Q43.524-44.314 43.770-44.063Q44.016-43.812 44.430-43.812Q44.771-43.812 45.024-43.945Q45.277-44.078 45.277-44.386Q45.277-44.543 45.183-44.658Q45.089-44.772 44.951-44.841Q44.812-44.909 44.645-44.947L44.064-45.046Q43.708-45.114 43.435-45.335Q43.161-45.555 43.161-45.897Q43.161-46.146 43.273-46.321Q43.384-46.495 43.570-46.594Q43.756-46.693 43.972-46.736Q44.187-46.779 44.430-46.779Q44.843-46.779 45.123-46.597L45.339-46.772Q45.349-46.775 45.356-46.777Q45.363-46.779 45.373-46.779L45.424-46.779Q45.451-46.779 45.475-46.755Q45.499-46.731 45.499-46.703L45.499-45.856Q45.499-45.835 45.475-45.808Q45.451-45.781 45.424-45.781L45.311-45.781Q45.284-45.781 45.258-45.806Q45.233-45.832 45.233-45.856Q45.233-46.092 45.127-46.256Q45.021-46.420 44.838-46.502Q44.655-46.584 44.423-46.584Q44.095-46.584 43.838-46.481Q43.582-46.379 43.582-46.102Q43.582-45.907 43.765-45.798Q43.948-45.688 44.177-45.647L44.751-45.541Q44.997-45.493 45.211-45.365Q45.424-45.237 45.561-45.034Q45.698-44.830 45.698-44.581Q45.698-44.068 45.332-43.829Q44.966-43.590 44.430-43.590Q43.934-43.590 43.602-43.884L43.336-43.610Q43.315-43.590 43.288-43.590L43.240-43.590Q43.216-43.590 43.189-43.617Q43.161-43.644 43.161-43.665",[759],[737,3590,3591,3598,3604,3610],{"stroke":747},[737,3592,3594],{"transform":3593},"translate(76.577 -20.48)",[745,3595],{"d":3596,"fill":739,"stroke":739,"className":3597,"style":804},"M-11.928-43.658L-13.343-43.658Q-13.377-43.658-13.401-43.694Q-13.425-43.730-13.425-43.771L-13.398-43.884Q-13.370-43.931-13.323-43.938Q-12.762-43.938-12.468-44.379Q-12.465-44.386-12.451-44.398Q-12.437-44.410-12.430-44.420L-9.785-48.553Q-9.727-48.648-9.617-48.648L-9.529-48.648Q-9.429-48.648-9.409-48.553L-8.783-44.072Q-8.729-43.938-8.233-43.938Q-8.148-43.911-8.148-43.832L-8.175-43.720Q-8.202-43.668-8.254-43.658L-10.072-43.658Q-10.106-43.658-10.132-43.694Q-10.158-43.730-10.158-43.771L-10.130-43.884Q-10.086-43.931-10.045-43.938Q-9.549-43.938-9.484-44.099L-9.645-45.227L-11.620-45.227L-12.195-44.331Q-12.249-44.212-12.249-44.140Q-12.249-43.938-11.908-43.938Q-11.822-43.911-11.822-43.832L-11.849-43.720Q-11.880-43.665-11.928-43.658M-10.004-47.753L-11.439-45.507L-9.689-45.507",[759],[737,3599,3600],{"transform":3593},[745,3601],{"d":3602,"fill":739,"stroke":739,"className":3603,"style":804},"M-0.205-42.349L-4.618-42.349Q-4.686-42.359-4.732-42.405Q-4.779-42.451-4.779-42.523Q-4.779-42.667-4.618-42.691L-0.205-42.691Q-0.045-42.667-0.045-42.523Q-0.045-42.451-0.091-42.405Q-0.137-42.359-0.205-42.349M-0.298-43.911L-4.686-46.023Q-4.779-46.057-4.779-46.170Q-4.779-46.280-4.686-46.324L-0.298-48.433Q-0.267-48.453-0.216-48.453Q-0.147-48.453-0.096-48.402Q-0.045-48.351-0.045-48.286Q-0.045-48.180-0.130-48.132L-4.211-46.170L-0.130-44.212Q-0.045-44.164-0.045-44.065Q-0.045-43.993-0.096-43.942Q-0.147-43.890-0.216-43.890Q-0.267-43.890-0.298-43.911",[759],[737,3605,3606],{"transform":3593},[745,3607],{"d":3608,"fill":739,"stroke":739,"className":3609,"style":832},"M2.872-42.653L1.370-42.653Q1.343-42.653 1.323-42.680Q1.302-42.707 1.302-42.738Q1.302-42.873 1.397-42.892Q1.707-42.892 1.817-42.912Q1.895-42.934 1.932-43.034L2.601-45.729Q2.606-45.744 2.606-45.773Q2.606-45.798 2.591-45.802Q2.466-45.827 2.171-45.827Q2.139-45.827 2.117-45.852Q2.095-45.878 2.095-45.912Q2.095-46.049 2.191-46.069L4.246-46.069Q4.527-46.069 4.815-45.986Q5.103-45.903 5.302-45.718Q5.501-45.534 5.501-45.253Q5.501-44.987 5.328-44.779Q5.154-44.572 4.887-44.434Q4.620-44.296 4.316-44.224Q4.012-44.152 3.765-44.152L2.745-44.152L2.462-42.992Q2.452-42.963 2.452-42.948Q2.452-42.924 2.466-42.919Q2.596-42.892 2.891-42.892Q2.923-42.892 2.945-42.867Q2.967-42.841 2.967-42.814Q2.967-42.673 2.872-42.653M3.111-45.688L2.781-44.362L3.675-44.362Q3.922-44.362 4.130-44.401Q4.339-44.440 4.532-44.552Q4.715-44.665 4.818-44.883Q4.920-45.102 4.920-45.329Q4.920-45.544 4.785-45.652Q4.649-45.761 4.456-45.794Q4.263-45.827 4.041-45.827L3.365-45.827Q3.236-45.827 3.187-45.806Q3.138-45.785 3.111-45.688",[759],[737,3611,3612],{"transform":3593},[745,3613],{"d":3614,"fill":739,"stroke":739,"className":3615,"style":804},"M12.175-43.658L9.318-43.658Q9.226-43.685 9.226-43.771L9.257-43.884Q9.294-43.931 9.339-43.938Q9.745-43.938 9.892-43.972Q10.015-44.007 10.053-44.184L11-47.965Q11.007-47.982 11.012-48.011Q11.017-48.040 11.020-48.060Q11.020-48.115 10.962-48.132Q10.829-48.159 10.446-48.159Q10.354-48.183 10.354-48.272L10.381-48.382Q10.408-48.429 10.466-48.440L13.153-48.440Q13.474-48.440 13.811-48.335Q14.148-48.231 14.372-48.007Q14.595-47.783 14.595-47.445Q14.595-47.182 14.447-46.958Q14.298-46.734 14.064-46.572Q13.830-46.409 13.561-46.305Q13.293-46.201 13.044-46.157Q13.334-46.129 13.609-46.008Q13.884-45.887 14.059-45.668Q14.233-45.449 14.233-45.162Q14.233-44.834 14.037-44.552Q13.840-44.270 13.526-44.072Q13.211-43.873 12.847-43.766Q12.483-43.658 12.175-43.658M10.648-43.972Q10.648-43.938 10.880-43.938L12.029-43.938Q12.285-43.938 12.546-44.032Q12.808-44.126 13.027-44.299Q13.245-44.471 13.372-44.707Q13.498-44.943 13.498-45.213Q13.498-45.449 13.389-45.637Q13.279-45.825 13.086-45.928Q12.893-46.030 12.657-46.030L11.154-46.030L10.675-44.133Q10.668-44.085 10.661-44.053Q10.654-44.020 10.648-43.972M11.622-47.913L11.208-46.256L12.391-46.256Q12.722-46.256 13.071-46.409Q13.420-46.563 13.650-46.838Q13.881-47.114 13.881-47.445Q13.881-47.777 13.649-47.968Q13.416-48.159 13.085-48.159L11.977-48.159Q11.837-48.159 11.779-48.148Q11.721-48.136 11.687-48.084Q11.653-48.033 11.622-47.913",[759],[737,3617,3618,3621,3624],{"fill":782,"stroke":782,"style":743},[745,3619],{"fill":747,"d":3620},"M145.511-12.36H13.063",[745,3622],{"d":3623},"m10.077-12.36 4.169 1.576-1.383-1.576 1.383-1.577Z",[737,3625,3626,3633,3639,3645,3651,3657,3663],{"fill":782,"stroke":747,"fontSize":836},[737,3627,3629],{"transform":3628},"translate(63.895 39.892)",[745,3630],{"d":3631,"fill":782,"stroke":782,"className":3632,"style":804},"M-10.387-43.658L-13.244-43.658Q-13.336-43.685-13.336-43.771L-13.305-43.884Q-13.268-43.931-13.223-43.938Q-12.817-43.938-12.670-43.972Q-12.547-44.007-12.509-44.184L-11.562-47.965Q-11.555-47.982-11.550-48.011Q-11.545-48.040-11.542-48.060Q-11.542-48.115-11.600-48.132Q-11.733-48.159-12.116-48.159Q-12.208-48.183-12.208-48.272L-12.181-48.382Q-12.154-48.429-12.096-48.440L-9.409-48.440Q-9.088-48.440-8.751-48.335Q-8.414-48.231-8.190-48.007Q-7.967-47.783-7.967-47.445Q-7.967-47.182-8.115-46.958Q-8.264-46.734-8.498-46.572Q-8.732-46.409-9.001-46.305Q-9.269-46.201-9.518-46.157Q-9.228-46.129-8.953-46.008Q-8.678-45.887-8.503-45.668Q-8.329-45.449-8.329-45.162Q-8.329-44.834-8.525-44.552Q-8.722-44.270-9.036-44.072Q-9.351-43.873-9.715-43.766Q-10.079-43.658-10.387-43.658M-11.914-43.972Q-11.914-43.938-11.682-43.938L-10.533-43.938Q-10.277-43.938-10.016-44.032Q-9.754-44.126-9.535-44.299Q-9.317-44.471-9.190-44.707Q-9.064-44.943-9.064-45.213Q-9.064-45.449-9.173-45.637Q-9.283-45.825-9.476-45.928Q-9.669-46.030-9.905-46.030L-11.408-46.030L-11.887-44.133Q-11.894-44.085-11.901-44.053Q-11.908-44.020-11.914-43.972M-10.940-47.913L-11.354-46.256L-10.171-46.256Q-9.840-46.256-9.491-46.409Q-9.142-46.563-8.912-46.838Q-8.681-47.114-8.681-47.445Q-8.681-47.777-8.913-47.968Q-9.146-48.159-9.477-48.159L-10.585-48.159Q-10.725-48.159-10.783-48.148Q-10.841-48.136-10.875-48.084Q-10.909-48.033-10.940-47.913",[759],[737,3634,3635],{"transform":3628},[745,3636],{"d":3637,"fill":782,"stroke":782,"className":3638,"style":804},"M-3.295-43.884Q-3.022-43.679-2.692-43.571Q-2.362-43.463-2.027-43.463L-0.698-43.463Q-0.626-43.453-0.582-43.408Q-0.537-43.364-0.537-43.285Q-0.537-43.221-0.583-43.174Q-0.629-43.128-0.698-43.118L-2.051-43.118Q-2.677-43.118-3.220-43.422Q-3.764-43.726-4.087-44.253Q-4.410-44.779-4.410-45.408Q-4.410-45.883-4.222-46.302Q-4.034-46.721-3.707-47.030Q-3.381-47.339-2.955-47.515Q-2.530-47.691-2.058-47.691L-0.698-47.691Q-0.629-47.681-0.583-47.635Q-0.537-47.589-0.537-47.520Q-0.537-47.449-0.583-47.402Q-0.629-47.356-0.698-47.346L-2.038-47.346Q-2.738-47.346-3.295-46.926Q-3.600-46.697-3.829-46.310Q-4.058-45.924-4.058-45.575L-0.698-45.575Q-0.537-45.552-0.537-45.408Q-0.537-45.336-0.583-45.290Q-0.629-45.244-0.698-45.234L-4.058-45.234Q-4.058-44.885-3.829-44.499Q-3.600-44.113-3.295-43.884",[759],[737,3640,3641],{"transform":3628},[745,3642],{"d":3643,"fill":782,"stroke":782,"className":3644,"style":804},"M3.908-43.658L3.173-43.658L3.173-48.515L5.077-48.515Q5.494-48.515 5.903-48.341Q6.311-48.166 6.573-47.838Q6.834-47.510 6.834-47.079Q6.834-46.645 6.576-46.312Q6.318-45.979 5.911-45.801Q5.504-45.623 5.077-45.623L3.908-45.623L3.908-43.658M3.888-48.074L3.888-46.088L4.893-46.088Q5.125-46.088 5.351-46.145Q5.576-46.201 5.764-46.326Q5.952-46.450 6.060-46.640Q6.167-46.830 6.167-47.079Q6.167-47.568 5.790-47.821Q5.412-48.074 4.893-48.074",[759],[737,3646,3647],{"transform":3628},[745,3648],{"d":3649,"fill":782,"stroke":782,"className":3650,"style":804},"M14.778-44.465L10.236-44.465Q10.075-44.489 10.075-44.639Q10.075-44.783 10.236-44.806L15.151-44.806Q15.591-45.165 16.149-45.408Q15.602-45.634 15.151-46.003L10.236-46.003Q10.171-46.013 10.123-46.061Q10.075-46.109 10.075-46.177Q10.075-46.321 10.236-46.345L14.778-46.345Q14.587-46.553 14.339-46.893Q14.091-47.233 14.091-47.339Q14.091-47.411 14.183-47.438L14.351-47.438Q14.412-47.425 14.429-47.384Q14.672-46.902 15.043-46.521Q15.414-46.139 15.885-45.881Q16.357-45.623 16.890-45.500Q16.918-45.497 16.933-45.468Q16.948-45.439 16.948-45.408Q16.948-45.333 16.863-45.309Q16.333-45.182 15.875-44.926Q15.417-44.670 15.045-44.287Q14.672-43.904 14.429-43.426Q14.395-43.378 14.351-43.371L14.183-43.371Q14.091-43.398 14.091-43.470Q14.091-43.583 14.354-43.940Q14.617-44.297 14.778-44.465",[759],[737,3652,3653],{"transform":3628},[745,3654],{"d":3655,"fill":782,"stroke":782,"className":3656,"style":804},"M21.673-43.658L20.258-43.658Q20.224-43.658 20.200-43.694Q20.176-43.730 20.176-43.771L20.203-43.884Q20.231-43.931 20.278-43.938Q20.839-43.938 21.133-44.379Q21.136-44.386 21.150-44.398Q21.164-44.410 21.171-44.420L23.816-48.553Q23.874-48.648 23.984-48.648L24.072-48.648Q24.172-48.648 24.192-48.553L24.818-44.072Q24.872-43.938 25.368-43.938Q25.453-43.911 25.453-43.832L25.426-43.720Q25.399-43.668 25.347-43.658L23.529-43.658Q23.495-43.658 23.469-43.694Q23.443-43.730 23.443-43.771L23.471-43.884Q23.515-43.931 23.556-43.938Q24.052-43.938 24.117-44.099L23.956-45.227L21.981-45.227L21.406-44.331Q21.352-44.212 21.352-44.140Q21.352-43.938 21.693-43.938Q21.779-43.911 21.779-43.832L21.752-43.720Q21.721-43.665 21.673-43.658M23.597-47.753L22.162-45.507L23.912-45.507",[759],[737,3658,3659],{"transform":3628},[745,3660],{"d":3661,"fill":782,"stroke":782,"className":3662,"style":804},"M29.937-43.884Q30.210-43.679 30.540-43.571Q30.870-43.463 31.205-43.463L32.534-43.463Q32.606-43.453 32.650-43.408Q32.695-43.364 32.695-43.285Q32.695-43.221 32.649-43.174Q32.603-43.128 32.534-43.118L31.181-43.118Q30.555-43.118 30.012-43.422Q29.468-43.726 29.145-44.253Q28.822-44.779 28.822-45.408Q28.822-45.883 29.010-46.302Q29.198-46.721 29.525-47.030Q29.851-47.339 30.277-47.515Q30.702-47.691 31.174-47.691L32.534-47.691Q32.603-47.681 32.649-47.635Q32.695-47.589 32.695-47.520Q32.695-47.449 32.649-47.402Q32.603-47.356 32.534-47.346L31.194-47.346Q30.494-47.346 29.937-46.926Q29.632-46.697 29.403-46.310Q29.174-45.924 29.174-45.575L32.534-45.575Q32.695-45.552 32.695-45.408Q32.695-45.336 32.649-45.290Q32.603-45.244 32.534-45.234L29.174-45.234Q29.174-44.885 29.403-44.499Q29.632-44.113 29.937-43.884",[759],[737,3664,3665],{"transform":3628},[745,3666],{"d":3667,"fill":782,"stroke":782,"className":3668,"style":804},"M37.140-43.658L36.405-43.658L36.405-48.515L38.309-48.515Q38.726-48.515 39.135-48.341Q39.543-48.166 39.805-47.838Q40.066-47.510 40.066-47.079Q40.066-46.645 39.808-46.312Q39.550-45.979 39.143-45.801Q38.736-45.623 38.309-45.623L37.140-45.623L37.140-43.658M37.120-48.074L37.120-46.088L38.125-46.088Q38.357-46.088 38.583-46.145Q38.808-46.201 38.996-46.326Q39.184-46.450 39.292-46.640Q39.399-46.830 39.399-47.079Q39.399-47.568 39.022-47.821Q38.644-48.074 38.125-48.074",[759],[737,3670,3671,3674,3677],{"fill":1991,"stroke":1991,"style":743},[745,3672],{"fill":747,"d":3673},"M8.938 10.402h132.447",[745,3675],{"d":3676},"m144.372 10.402-4.17-1.577 1.383 1.577-1.382 1.576Z",[737,3678,3679,3685,3691,3697,3703],{"fill":1991,"stroke":747,"fontSize":836},[737,3680,3682],{"transform":3681},"translate(59.74 62.654)",[745,3683],{"d":3596,"fill":1991,"stroke":1991,"className":3684,"style":804},[759],[737,3686,3687],{"transform":3681},[745,3688],{"d":3689,"fill":1991,"stroke":1991,"className":3690,"style":804},"M-3.120-43.658L-4.754-43.658L-4.754-43.938Q-4.525-43.938-4.376-43.972Q-4.227-44.007-4.227-44.147L-4.227-47.766Q-4.227-48.036-4.335-48.098Q-4.443-48.159-4.754-48.159L-4.754-48.440L-3.674-48.515L-3.674-46.129Q-3.568-46.314-3.390-46.456Q-3.212-46.597-3.004-46.671Q-2.795-46.744-2.570-46.744Q-2.064-46.744-1.780-46.521Q-1.496-46.297-1.496-45.801L-1.496-44.147Q-1.496-44.010-1.348-43.974Q-1.199-43.938-0.973-43.938L-0.973-43.658L-2.604-43.658L-2.604-43.938Q-2.375-43.938-2.226-43.972Q-2.077-44.007-2.077-44.147L-2.077-45.787Q-2.077-46.122-2.197-46.322Q-2.317-46.522-2.631-46.522Q-2.901-46.522-3.135-46.386Q-3.369-46.249-3.508-46.015Q-3.646-45.781-3.646-45.507L-3.646-44.147Q-3.646-44.010-3.496-43.974Q-3.345-43.938-3.120-43.938L-3.120-43.658M-0.327-44.386Q-0.327-44.718-0.104-44.945Q0.120-45.172 0.464-45.300Q0.807-45.429 1.180-45.481Q1.552-45.534 1.857-45.534L1.857-45.787Q1.857-45.992 1.749-46.172Q1.641-46.351 1.460-46.454Q1.279-46.556 1.071-46.556Q0.664-46.556 0.428-46.464Q0.517-46.427 0.563-46.343Q0.609-46.259 0.609-46.157Q0.609-46.061 0.563-45.982Q0.517-45.904 0.436-45.859Q0.356-45.815 0.267-45.815Q0.117-45.815 0.016-45.912Q-0.085-46.010-0.085-46.157Q-0.085-46.779 1.071-46.779Q1.282-46.779 1.532-46.715Q1.781-46.652 1.983-46.533Q2.185-46.413 2.311-46.228Q2.438-46.044 2.438-45.801L2.438-44.225Q2.438-44.109 2.499-44.013Q2.561-43.918 2.674-43.918Q2.783-43.918 2.848-44.012Q2.913-44.106 2.913-44.225L2.913-44.673L3.179-44.673L3.179-44.225Q3.179-43.955 2.952-43.790Q2.725-43.624 2.445-43.624Q2.236-43.624 2.099-43.778Q1.963-43.931 1.939-44.147Q1.792-43.880 1.510-43.735Q1.228-43.590 0.903-43.590Q0.626-43.590 0.342-43.665Q0.059-43.740-0.134-43.919Q-0.327-44.099-0.327-44.386M0.288-44.386Q0.288-44.212 0.389-44.082Q0.489-43.952 0.645-43.882Q0.801-43.812 0.965-43.812Q1.183-43.812 1.392-43.909Q1.600-44.007 1.728-44.188Q1.857-44.369 1.857-44.595L1.857-45.323Q1.532-45.323 1.166-45.232Q0.801-45.141 0.544-44.929Q0.288-44.718 0.288-44.386M5.346-43.658L3.610-43.658L3.610-43.938Q3.839-43.938 3.988-43.972Q4.136-44.007 4.136-44.147L4.136-45.996Q4.136-46.266 4.029-46.327Q3.921-46.389 3.610-46.389L3.610-46.669L4.639-46.744L4.639-46.037Q4.769-46.345 5.011-46.544Q5.254-46.744 5.572-46.744Q5.791-46.744 5.962-46.620Q6.133-46.495 6.133-46.283Q6.133-46.146 6.033-46.047Q5.934-45.948 5.801-45.948Q5.664-45.948 5.565-46.047Q5.466-46.146 5.466-46.283Q5.466-46.423 5.565-46.522Q5.275-46.522 5.075-46.326Q4.875-46.129 4.782-45.835Q4.690-45.541 4.690-45.261L4.690-44.147Q4.690-43.938 5.346-43.938L5.346-43.658M6.717-45.169Q6.717-45.507 6.857-45.798Q6.997-46.088 7.242-46.302Q7.486-46.515 7.790-46.630Q8.094-46.744 8.419-46.744Q8.689-46.744 8.952-46.645Q9.216-46.546 9.407-46.368L9.407-47.766Q9.407-48.036 9.299-48.098Q9.192-48.159 8.881-48.159L8.881-48.440L9.957-48.515L9.957-44.331Q9.957-44.143 10.012-44.060Q10.067-43.976 10.167-43.957Q10.268-43.938 10.484-43.938L10.484-43.658L9.376-43.590L9.376-44.007Q8.959-43.590 8.334-43.590Q7.903-43.590 7.530-43.802Q7.158-44.013 6.937-44.374Q6.717-44.735 6.717-45.169M8.392-43.812Q8.600-43.812 8.787-43.884Q8.973-43.955 9.127-44.092Q9.280-44.229 9.376-44.407L9.376-46.016Q9.291-46.163 9.145-46.283Q9-46.403 8.831-46.462Q8.662-46.522 8.481-46.522Q7.920-46.522 7.652-46.133Q7.384-45.743 7.384-45.162Q7.384-44.591 7.618-44.201Q7.852-43.812 8.392-43.812",[759],[737,3692,3693],{"transform":3681},[745,3694],{"d":3695,"fill":1991,"stroke":1991,"className":3696,"style":804},"M18.773-44.465L14.231-44.465Q14.070-44.489 14.070-44.639Q14.070-44.783 14.231-44.806L19.146-44.806Q19.586-45.165 20.144-45.408Q19.597-45.634 19.146-46.003L14.231-46.003Q14.166-46.013 14.118-46.061Q14.070-46.109 14.070-46.177Q14.070-46.321 14.231-46.345L18.773-46.345Q18.582-46.553 18.334-46.893Q18.086-47.233 18.086-47.339Q18.086-47.411 18.178-47.438L18.346-47.438Q18.407-47.425 18.424-47.384Q18.667-46.902 19.038-46.521Q19.409-46.139 19.880-45.881Q20.352-45.623 20.885-45.500Q20.913-45.497 20.928-45.468Q20.943-45.439 20.943-45.408Q20.943-45.333 20.858-45.309Q20.328-45.182 19.870-44.926Q19.412-44.670 19.040-44.287Q18.667-43.904 18.424-43.426Q18.390-43.378 18.346-43.371L18.178-43.371Q18.086-43.398 18.086-43.470Q18.086-43.583 18.349-43.940Q18.612-44.297 18.773-44.465",[759],[737,3698,3699],{"transform":3681},[745,3700],{"d":3701,"fill":1991,"stroke":1991,"className":3702,"style":804},"M27.209-43.658L24.352-43.658Q24.260-43.685 24.260-43.771L24.291-43.884Q24.328-43.931 24.373-43.938Q24.779-43.938 24.926-43.972Q25.049-44.007 25.087-44.184L26.034-47.965Q26.041-47.982 26.046-48.011Q26.051-48.040 26.054-48.060Q26.054-48.115 25.996-48.132Q25.863-48.159 25.480-48.159Q25.388-48.183 25.388-48.272L25.415-48.382Q25.442-48.429 25.500-48.440L28.187-48.440Q28.508-48.440 28.845-48.335Q29.182-48.231 29.406-48.007Q29.629-47.783 29.629-47.445Q29.629-47.182 29.481-46.958Q29.332-46.734 29.098-46.572Q28.864-46.409 28.595-46.305Q28.327-46.201 28.078-46.157Q28.368-46.129 28.643-46.008Q28.918-45.887 29.093-45.668Q29.267-45.449 29.267-45.162Q29.267-44.834 29.071-44.552Q28.874-44.270 28.560-44.072Q28.245-43.873 27.881-43.766Q27.517-43.658 27.209-43.658M25.682-43.972Q25.682-43.938 25.914-43.938L27.063-43.938Q27.319-43.938 27.580-44.032Q27.842-44.126 28.061-44.299Q28.279-44.471 28.406-44.707Q28.532-44.943 28.532-45.213Q28.532-45.449 28.423-45.637Q28.313-45.825 28.120-45.928Q27.927-46.030 27.691-46.030L26.188-46.030L25.709-44.133Q25.702-44.085 25.695-44.053Q25.688-44.020 25.682-43.972M26.656-47.913L26.242-46.256L27.425-46.256Q27.756-46.256 28.105-46.409Q28.454-46.563 28.684-46.838Q28.915-47.114 28.915-47.445Q28.915-47.777 28.683-47.968Q28.450-48.159 28.119-48.159L27.011-48.159Q26.871-48.159 26.813-48.148Q26.755-48.136 26.721-48.084Q26.687-48.033 26.656-47.913",[759],[737,3704,3705],{"transform":3681},[745,3706],{"d":3707,"fill":1991,"stroke":1991,"className":3708,"style":804},"M34.845-43.658L33.211-43.658L33.211-43.938Q33.440-43.938 33.589-43.972Q33.738-44.007 33.738-44.147L33.738-47.766Q33.738-48.036 33.630-48.098Q33.522-48.159 33.211-48.159L33.211-48.440L34.291-48.515L34.291-46.129Q34.397-46.314 34.575-46.456Q34.753-46.597 34.961-46.671Q35.170-46.744 35.395-46.744Q35.901-46.744 36.185-46.521Q36.469-46.297 36.469-45.801L36.469-44.147Q36.469-44.010 36.617-43.974Q36.766-43.938 36.992-43.938L36.992-43.658L35.361-43.658L35.361-43.938Q35.590-43.938 35.739-43.972Q35.888-44.007 35.888-44.147L35.888-45.787Q35.888-46.122 35.768-46.322Q35.648-46.522 35.334-46.522Q35.064-46.522 34.830-46.386Q34.596-46.249 34.457-46.015Q34.319-45.781 34.319-45.507L34.319-44.147Q34.319-44.010 34.469-43.974Q34.620-43.938 34.845-43.938L34.845-43.658M37.638-44.386Q37.638-44.718 37.861-44.945Q38.085-45.172 38.429-45.300Q38.772-45.429 39.145-45.481Q39.517-45.534 39.822-45.534L39.822-45.787Q39.822-45.992 39.714-46.172Q39.606-46.351 39.425-46.454Q39.244-46.556 39.036-46.556Q38.629-46.556 38.393-46.464Q38.482-46.427 38.528-46.343Q38.574-46.259 38.574-46.157Q38.574-46.061 38.528-45.982Q38.482-45.904 38.401-45.859Q38.321-45.815 38.232-45.815Q38.082-45.815 37.981-45.912Q37.880-46.010 37.880-46.157Q37.880-46.779 39.036-46.779Q39.247-46.779 39.497-46.715Q39.746-46.652 39.948-46.533Q40.150-46.413 40.276-46.228Q40.403-46.044 40.403-45.801L40.403-44.225Q40.403-44.109 40.464-44.013Q40.526-43.918 40.639-43.918Q40.748-43.918 40.813-44.012Q40.878-44.106 40.878-44.225L40.878-44.673L41.144-44.673L41.144-44.225Q41.144-43.955 40.917-43.790Q40.690-43.624 40.410-43.624Q40.201-43.624 40.064-43.778Q39.928-43.931 39.904-44.147Q39.757-43.880 39.475-43.735Q39.193-43.590 38.868-43.590Q38.591-43.590 38.307-43.665Q38.024-43.740 37.831-43.919Q37.638-44.099 37.638-44.386M38.253-44.386Q38.253-44.212 38.354-44.082Q38.454-43.952 38.610-43.882Q38.766-43.812 38.930-43.812Q39.148-43.812 39.357-43.909Q39.565-44.007 39.693-44.188Q39.822-44.369 39.822-44.595L39.822-45.323Q39.497-45.323 39.131-45.232Q38.766-45.141 38.509-44.929Q38.253-44.718 38.253-44.386M43.311-43.658L41.575-43.658L41.575-43.938Q41.804-43.938 41.953-43.972Q42.101-44.007 42.101-44.147L42.101-45.996Q42.101-46.266 41.994-46.327Q41.886-46.389 41.575-46.389L41.575-46.669L42.604-46.744L42.604-46.037Q42.734-46.345 42.976-46.544Q43.219-46.744 43.537-46.744Q43.756-46.744 43.927-46.620Q44.098-46.495 44.098-46.283Q44.098-46.146 43.998-46.047Q43.899-45.948 43.766-45.948Q43.629-45.948 43.530-46.047Q43.431-46.146 43.431-46.283Q43.431-46.423 43.530-46.522Q43.240-46.522 43.040-46.326Q42.840-46.129 42.747-45.835Q42.655-45.541 42.655-45.261L42.655-44.147Q42.655-43.938 43.311-43.938L43.311-43.658M44.682-45.169Q44.682-45.507 44.822-45.798Q44.962-46.088 45.207-46.302Q45.451-46.515 45.755-46.630Q46.059-46.744 46.384-46.744Q46.654-46.744 46.917-46.645Q47.181-46.546 47.372-46.368L47.372-47.766Q47.372-48.036 47.264-48.098Q47.157-48.159 46.846-48.159L46.846-48.440L47.922-48.515L47.922-44.331Q47.922-44.143 47.977-44.060Q48.032-43.976 48.132-43.957Q48.233-43.938 48.449-43.938L48.449-43.658L47.341-43.590L47.341-44.007Q46.924-43.590 46.299-43.590Q45.868-43.590 45.495-43.802Q45.123-44.013 44.902-44.374Q44.682-44.735 44.682-45.169M46.357-43.812Q46.565-43.812 46.752-43.884Q46.938-43.955 47.092-44.092Q47.245-44.229 47.341-44.407L47.341-46.016Q47.256-46.163 47.110-46.283Q46.965-46.403 46.796-46.462Q46.627-46.522 46.446-46.522Q45.885-46.522 45.617-46.133Q45.349-45.743 45.349-45.162Q45.349-44.591 45.583-44.201Q45.817-43.812 46.357-43.812",[759],[737,3710,3711,3718],{"fill":782,"stroke":747,"fontFamily":835,"fontSize":836},[737,3712,3714],{"transform":3713},"translate(-48.446 33.048)",[745,3715],{"d":3716,"fill":782,"stroke":782,"className":3717,"style":804},"M-12.984-44.499L-12.984-46.396L-13.623-46.396L-13.623-46.618Q-13.305-46.618-13.088-46.828Q-12.871-47.038-12.771-47.348Q-12.670-47.657-12.670-47.965L-12.403-47.965L-12.403-46.676L-11.326-46.676L-11.326-46.396L-12.403-46.396L-12.403-44.512Q-12.403-44.236-12.299-44.037Q-12.195-43.839-11.935-43.839Q-11.778-43.839-11.672-43.943Q-11.566-44.048-11.516-44.201Q-11.467-44.355-11.467-44.512L-11.467-44.926L-11.200-44.926L-11.200-44.499Q-11.200-44.273-11.299-44.063Q-11.398-43.853-11.583-43.721Q-11.767-43.590-11.996-43.590Q-12.434-43.590-12.709-43.827Q-12.984-44.065-12.984-44.499M-8.640-43.658L-10.376-43.658L-10.376-43.938Q-10.147-43.938-9.999-43.972Q-9.850-44.007-9.850-44.147L-9.850-45.996Q-9.850-46.266-9.958-46.327Q-10.065-46.389-10.376-46.389L-10.376-46.669L-9.347-46.744L-9.347-46.037Q-9.218-46.345-8.975-46.544Q-8.732-46.744-8.414-46.744Q-8.196-46.744-8.025-46.620Q-7.854-46.495-7.854-46.283Q-7.854-46.146-7.953-46.047Q-8.052-45.948-8.185-45.948Q-8.322-45.948-8.421-46.047Q-8.520-46.146-8.520-46.283Q-8.520-46.423-8.421-46.522Q-8.712-46.522-8.912-46.326Q-9.112-46.129-9.204-45.835Q-9.296-45.541-9.296-45.261L-9.296-44.147Q-9.296-43.938-8.640-43.938L-8.640-43.658M-7.211-44.386Q-7.211-44.718-6.987-44.945Q-6.763-45.172-6.420-45.300Q-6.076-45.429-5.704-45.481Q-5.331-45.534-5.027-45.534L-5.027-45.787Q-5.027-45.992-5.135-46.172Q-5.242-46.351-5.424-46.454Q-5.605-46.556-5.813-46.556Q-6.220-46.556-6.456-46.464Q-6.367-46.427-6.321-46.343Q-6.275-46.259-6.275-46.157Q-6.275-46.061-6.321-45.982Q-6.367-45.904-6.447-45.859Q-6.528-45.815-6.617-45.815Q-6.767-45.815-6.868-45.912Q-6.969-46.010-6.969-46.157Q-6.969-46.779-5.813-46.779Q-5.601-46.779-5.352-46.715Q-5.102-46.652-4.901-46.533Q-4.699-46.413-4.573-46.228Q-4.446-46.044-4.446-45.801L-4.446-44.225Q-4.446-44.109-4.385-44.013Q-4.323-43.918-4.210-43.918Q-4.101-43.918-4.036-44.012Q-3.971-44.106-3.971-44.225L-3.971-44.673L-3.704-44.673L-3.704-44.225Q-3.704-43.955-3.932-43.790Q-4.159-43.624-4.439-43.624Q-4.648-43.624-4.784-43.778Q-4.921-43.931-4.945-44.147Q-5.092-43.880-5.374-43.735Q-5.656-43.590-5.981-43.590Q-6.258-43.590-6.541-43.665Q-6.825-43.740-7.018-43.919Q-7.211-44.099-7.211-44.386M-6.596-44.386Q-6.596-44.212-6.495-44.082Q-6.394-43.952-6.239-43.882Q-6.083-43.812-5.919-43.812Q-5.700-43.812-5.492-43.909Q-5.283-44.007-5.155-44.188Q-5.027-44.369-5.027-44.595L-5.027-45.323Q-5.352-45.323-5.718-45.232Q-6.083-45.141-6.340-44.929Q-6.596-44.718-6.596-44.386M-3.287-45.169Q-3.287-45.497-3.152-45.798Q-3.017-46.098-2.782-46.319Q-2.546-46.539-2.242-46.659Q-1.937-46.779-1.613-46.779Q-1.107-46.779-0.758-46.676Q-0.409-46.574-0.409-46.198Q-0.409-46.051-0.507-45.950Q-0.604-45.849-0.751-45.849Q-0.905-45.849-1.004-45.948Q-1.103-46.047-1.103-46.198Q-1.103-46.386-0.963-46.478Q-1.165-46.529-1.606-46.529Q-1.961-46.529-2.190-46.333Q-2.419-46.136-2.520-45.827Q-2.621-45.517-2.621-45.169Q-2.621-44.820-2.494-44.514Q-2.368-44.208-2.113-44.024Q-1.859-43.839-1.503-43.839Q-1.281-43.839-1.096-43.923Q-0.912-44.007-0.777-44.162Q-0.642-44.318-0.584-44.526Q-0.570-44.581-0.515-44.581L-0.403-44.581Q-0.372-44.581-0.350-44.557Q-0.327-44.533-0.327-44.499L-0.327-44.478Q-0.413-44.191-0.601-43.993Q-0.789-43.795-1.054-43.692Q-1.319-43.590-1.613-43.590Q-2.043-43.590-2.431-43.796Q-2.819-44.003-3.053-44.366Q-3.287-44.728-3.287-45.169M0.787-44.499L0.787-46.396L0.148-46.396L0.148-46.618Q0.466-46.618 0.683-46.828Q0.900-47.038 1-47.348Q1.101-47.657 1.101-47.965L1.368-47.965L1.368-46.676L2.445-46.676L2.445-46.396L1.368-46.396L1.368-44.512Q1.368-44.236 1.472-44.037Q1.576-43.839 1.836-43.839Q1.993-43.839 2.099-43.943Q2.205-44.048 2.255-44.201Q2.304-44.355 2.304-44.512L2.304-44.926L2.571-44.926L2.571-44.499Q2.571-44.273 2.472-44.063Q2.373-43.853 2.188-43.721Q2.004-43.590 1.775-43.590Q1.337-43.590 1.062-43.827Q0.787-44.065 0.787-44.499M3.439-44.386Q3.439-44.718 3.663-44.945Q3.887-45.172 4.230-45.300Q4.574-45.429 4.946-45.481Q5.319-45.534 5.623-45.534L5.623-45.787Q5.623-45.992 5.516-46.172Q5.408-46.351 5.227-46.454Q5.046-46.556 4.837-46.556Q4.430-46.556 4.195-46.464Q4.283-46.427 4.330-46.343Q4.376-46.259 4.376-46.157Q4.376-46.061 4.330-45.982Q4.283-45.904 4.203-45.859Q4.123-45.815 4.034-45.815Q3.883-45.815 3.783-45.912Q3.682-46.010 3.682-46.157Q3.682-46.779 4.837-46.779Q5.049-46.779 5.299-46.715Q5.548-46.652 5.750-46.533Q5.951-46.413 6.078-46.228Q6.204-46.044 6.204-45.801L6.204-44.225Q6.204-44.109 6.266-44.013Q6.327-43.918 6.440-43.918Q6.550-43.918 6.614-44.012Q6.679-44.106 6.679-44.225L6.679-44.673L6.946-44.673L6.946-44.225Q6.946-43.955 6.719-43.790Q6.491-43.624 6.211-43.624Q6.003-43.624 5.866-43.778Q5.729-43.931 5.705-44.147Q5.558-43.880 5.276-43.735Q4.994-43.590 4.670-43.590Q4.393-43.590 4.109-43.665Q3.825-43.740 3.632-43.919Q3.439-44.099 3.439-44.386M4.054-44.386Q4.054-44.212 4.155-44.082Q4.256-43.952 4.412-43.882Q4.567-43.812 4.731-43.812Q4.950-43.812 5.158-43.909Q5.367-44.007 5.495-44.188Q5.623-44.369 5.623-44.595L5.623-45.323Q5.299-45.323 4.933-45.232Q4.567-45.141 4.311-44.929Q4.054-44.718 4.054-44.386M8.170-43.658L7.903-43.658L7.903-47.766Q7.903-48.036 7.795-48.098Q7.688-48.159 7.377-48.159L7.377-48.440L8.457-48.515L8.457-46.345Q8.665-46.536 8.951-46.640Q9.236-46.744 9.533-46.744Q9.851-46.744 10.149-46.623Q10.446-46.502 10.668-46.286Q10.890-46.071 11.017-45.786Q11.143-45.500 11.143-45.169Q11.143-44.724 10.904-44.360Q10.665-43.996 10.272-43.793Q9.879-43.590 9.434-43.590Q9.239-43.590 9.050-43.646Q8.860-43.702 8.699-43.807Q8.539-43.911 8.399-44.072L8.170-43.658M8.484-46.003L8.484-44.386Q8.621-44.126 8.862-43.969Q9.103-43.812 9.380-43.812Q9.674-43.812 9.885-43.919Q10.097-44.027 10.231-44.219Q10.364-44.410 10.422-44.649Q10.480-44.888 10.480-45.169Q10.480-45.528 10.386-45.832Q10.292-46.136 10.065-46.329Q9.838-46.522 9.472-46.522Q9.171-46.522 8.904-46.386Q8.638-46.249 8.484-46.003M13.396-43.658L11.844-43.658L11.844-43.938Q12.070-43.938 12.218-43.972Q12.367-44.007 12.367-44.147L12.367-45.996Q12.367-46.184 12.319-46.268Q12.271-46.351 12.174-46.370Q12.076-46.389 11.864-46.389L11.864-46.669L12.921-46.744L12.921-44.147Q12.921-44.007 13.052-43.972Q13.184-43.938 13.396-43.938L13.396-43.658M12.124-47.965Q12.124-48.136 12.247-48.255Q12.370-48.375 12.541-48.375Q12.709-48.375 12.832-48.255Q12.955-48.136 12.955-47.965Q12.955-47.790 12.832-47.667Q12.709-47.544 12.541-47.544Q12.370-47.544 12.247-47.667Q12.124-47.790 12.124-47.965M15.710-43.658L14.107-43.658L14.107-43.938Q14.332-43.938 14.481-43.972Q14.630-44.007 14.630-44.147L14.630-47.766Q14.630-48.036 14.522-48.098Q14.414-48.159 14.107-48.159L14.107-48.440L15.183-48.515L15.183-44.147Q15.183-44.010 15.334-43.974Q15.484-43.938 15.710-43.938L15.710-43.658M17.921-43.658L16.369-43.658L16.369-43.938Q16.595-43.938 16.744-43.972Q16.892-44.007 16.892-44.147L16.892-45.996Q16.892-46.184 16.844-46.268Q16.797-46.351 16.699-46.370Q16.602-46.389 16.390-46.389L16.390-46.669L17.446-46.744L17.446-44.147Q17.446-44.007 17.578-43.972Q17.709-43.938 17.921-43.938L17.921-43.658M16.650-47.965Q16.650-48.136 16.773-48.255Q16.896-48.375 17.067-48.375Q17.234-48.375 17.357-48.255Q17.480-48.136 17.480-47.965Q17.480-47.790 17.357-47.667Q17.234-47.544 17.067-47.544Q16.896-47.544 16.773-47.667Q16.650-47.790 16.650-47.965M19.093-44.499L19.093-46.396L18.454-46.396L18.454-46.618Q18.772-46.618 18.989-46.828Q19.206-47.038 19.307-47.348Q19.408-47.657 19.408-47.965L19.675-47.965L19.675-46.676L20.751-46.676L20.751-46.396L19.675-46.396L19.675-44.512Q19.675-44.236 19.779-44.037Q19.883-43.839 20.143-43.839Q20.300-43.839 20.406-43.943Q20.512-44.048 20.561-44.201Q20.611-44.355 20.611-44.512L20.611-44.926L20.878-44.926L20.878-44.499Q20.878-44.273 20.779-44.063Q20.679-43.853 20.495-43.721Q20.310-43.590 20.081-43.590Q19.644-43.590 19.369-43.827Q19.093-44.065 19.093-44.499",[759],[737,3719,3720],{"transform":3713},[745,3721],{"d":3722,"fill":782,"stroke":782,"className":3723,"style":804},"M21.846-42.523Q21.976-42.455 22.113-42.455Q22.284-42.455 22.434-42.544Q22.585-42.633 22.696-42.778Q22.807-42.923 22.885-43.091L23.149-43.658L21.980-46.184Q21.905-46.331 21.775-46.363Q21.645-46.396 21.412-46.396L21.412-46.676L22.933-46.676L22.933-46.396Q22.585-46.396 22.585-46.249Q22.588-46.228 22.590-46.211Q22.592-46.194 22.592-46.184L23.449-44.325L24.222-45.996Q24.256-46.064 24.256-46.143Q24.256-46.256 24.172-46.326Q24.089-46.396 23.976-46.396L23.976-46.676L25.172-46.676L25.172-46.396Q24.953-46.396 24.781-46.292Q24.608-46.187 24.516-45.996L23.179-43.091Q23.009-42.721 22.739-42.475Q22.468-42.229 22.113-42.229Q21.843-42.229 21.624-42.395Q21.405-42.561 21.405-42.824Q21.405-42.961 21.498-43.050Q21.590-43.138 21.730-43.138Q21.867-43.138 21.956-43.050Q22.045-42.961 22.045-42.824Q22.045-42.721 21.992-42.643Q21.939-42.564 21.846-42.523",[759],[737,3725,3727],{"transform":3726},"translate(191.321 56.49)",[745,3728],{"d":3729,"fill":1991,"stroke":1991,"className":3730,"style":804},"M-11.829-43.658L-13.463-43.658L-13.463-43.938Q-13.234-43.938-13.085-43.972Q-12.936-44.007-12.936-44.147L-12.936-47.766Q-12.936-48.036-13.044-48.098Q-13.152-48.159-13.463-48.159L-13.463-48.440L-12.383-48.515L-12.383-46.129Q-12.277-46.314-12.099-46.456Q-11.921-46.597-11.713-46.671Q-11.504-46.744-11.279-46.744Q-10.773-46.744-10.489-46.521Q-10.205-46.297-10.205-45.801L-10.205-44.147Q-10.205-44.010-10.057-43.974Q-9.908-43.938-9.682-43.938L-9.682-43.658L-11.313-43.658L-11.313-43.938Q-11.084-43.938-10.935-43.972Q-10.786-44.007-10.786-44.147L-10.786-45.787Q-10.786-46.122-10.906-46.322Q-11.026-46.522-11.340-46.522Q-11.610-46.522-11.844-46.386Q-12.078-46.249-12.217-46.015Q-12.355-45.781-12.355-45.507L-12.355-44.147Q-12.355-44.010-12.205-43.974Q-12.054-43.938-11.829-43.938L-11.829-43.658M-9.036-44.386Q-9.036-44.718-8.813-44.945Q-8.589-45.172-8.245-45.300Q-7.902-45.429-7.529-45.481Q-7.157-45.534-6.852-45.534L-6.852-45.787Q-6.852-45.992-6.960-46.172Q-7.068-46.351-7.249-46.454Q-7.430-46.556-7.638-46.556Q-8.045-46.556-8.281-46.464Q-8.192-46.427-8.146-46.343Q-8.100-46.259-8.100-46.157Q-8.100-46.061-8.146-45.982Q-8.192-45.904-8.273-45.859Q-8.353-45.815-8.442-45.815Q-8.592-45.815-8.693-45.912Q-8.794-46.010-8.794-46.157Q-8.794-46.779-7.638-46.779Q-7.427-46.779-7.177-46.715Q-6.928-46.652-6.726-46.533Q-6.524-46.413-6.398-46.228Q-6.271-46.044-6.271-45.801L-6.271-44.225Q-6.271-44.109-6.210-44.013Q-6.148-43.918-6.035-43.918Q-5.926-43.918-5.861-44.012Q-5.796-44.106-5.796-44.225L-5.796-44.673L-5.530-44.673L-5.530-44.225Q-5.530-43.955-5.757-43.790Q-5.984-43.624-6.264-43.624Q-6.473-43.624-6.610-43.778Q-6.746-43.931-6.770-44.147Q-6.917-43.880-7.199-43.735Q-7.481-43.590-7.806-43.590Q-8.083-43.590-8.367-43.665Q-8.650-43.740-8.843-43.919Q-9.036-44.099-9.036-44.386M-8.421-44.386Q-8.421-44.212-8.320-44.082Q-8.220-43.952-8.064-43.882Q-7.908-43.812-7.744-43.812Q-7.526-43.812-7.317-43.909Q-7.109-44.007-6.981-44.188Q-6.852-44.369-6.852-44.595L-6.852-45.323Q-7.177-45.323-7.543-45.232Q-7.908-45.141-8.165-44.929Q-8.421-44.718-8.421-44.386M-3.363-43.658L-5.099-43.658L-5.099-43.938Q-4.870-43.938-4.721-43.972Q-4.573-44.007-4.573-44.147L-4.573-45.996Q-4.573-46.266-4.680-46.327Q-4.788-46.389-5.099-46.389L-5.099-46.669L-4.070-46.744L-4.070-46.037Q-3.940-46.345-3.698-46.544Q-3.455-46.744-3.137-46.744Q-2.918-46.744-2.747-46.620Q-2.576-46.495-2.576-46.283Q-2.576-46.146-2.676-46.047Q-2.775-45.948-2.908-45.948Q-3.045-45.948-3.144-46.047Q-3.243-46.146-3.243-46.283Q-3.243-46.423-3.144-46.522Q-3.434-46.522-3.634-46.326Q-3.834-46.129-3.927-45.835Q-4.019-45.541-4.019-45.261L-4.019-44.147Q-4.019-43.938-3.363-43.938L-3.363-43.658M-1.992-45.169Q-1.992-45.507-1.852-45.798Q-1.712-46.088-1.467-46.302Q-1.223-46.515-0.919-46.630Q-0.615-46.744-0.290-46.744Q-0.020-46.744 0.243-46.645Q0.507-46.546 0.698-46.368L0.698-47.766Q0.698-48.036 0.590-48.098Q0.483-48.159 0.172-48.159L0.172-48.440L1.248-48.515L1.248-44.331Q1.248-44.143 1.303-44.060Q1.358-43.976 1.458-43.957Q1.559-43.938 1.775-43.938L1.775-43.658L0.667-43.590L0.667-44.007Q0.250-43.590-0.375-43.590Q-0.806-43.590-1.179-43.802Q-1.551-44.013-1.772-44.374Q-1.992-44.735-1.992-45.169M-0.317-43.812Q-0.109-43.812 0.078-43.884Q0.264-43.955 0.418-44.092Q0.571-44.229 0.667-44.407L0.667-46.016Q0.582-46.163 0.436-46.283Q0.291-46.403 0.122-46.462Q-0.047-46.522-0.228-46.522Q-0.789-46.522-1.057-46.133Q-1.325-45.743-1.325-45.162Q-1.325-44.591-1.091-44.201Q-0.857-43.812-0.317-43.812M4.106-43.658L2.472-43.658L2.472-43.938Q2.701-43.938 2.850-43.972Q2.998-44.007 2.998-44.147L2.998-45.996Q2.998-46.266 2.891-46.327Q2.783-46.389 2.472-46.389L2.472-46.669L3.531-46.744L3.531-46.095Q3.702-46.403 4.007-46.574Q4.311-46.744 4.656-46.744Q5.162-46.744 5.446-46.521Q5.729-46.297 5.729-45.801L5.729-44.147Q5.729-44.010 5.878-43.974Q6.027-43.938 6.252-43.938L6.252-43.658L4.622-43.658L4.622-43.938Q4.851-43.938 4.999-43.972Q5.148-44.007 5.148-44.147L5.148-45.787Q5.148-46.122 5.029-46.322Q4.909-46.522 4.594-46.522Q4.324-46.522 4.090-46.386Q3.856-46.249 3.718-46.015Q3.579-45.781 3.579-45.507L3.579-44.147Q3.579-44.010 3.730-43.974Q3.880-43.938 4.106-43.938L4.106-43.658M6.799-45.193Q6.799-45.514 6.924-45.803Q7.049-46.092 7.274-46.315Q7.500-46.539 7.795-46.659Q8.091-46.779 8.409-46.779Q8.737-46.779 8.998-46.679Q9.260-46.580 9.436-46.398Q9.612-46.215 9.706-45.957Q9.800-45.699 9.800-45.367Q9.800-45.275 9.718-45.254L7.462-45.254L7.462-45.193Q7.462-44.605 7.746-44.222Q8.029-43.839 8.597-43.839Q8.918-43.839 9.186-44.032Q9.455-44.225 9.544-44.540Q9.550-44.581 9.626-44.595L9.718-44.595Q9.800-44.571 9.800-44.499Q9.800-44.492 9.793-44.465Q9.680-44.068 9.310-43.829Q8.939-43.590 8.515-43.590Q8.077-43.590 7.677-43.798Q7.278-44.007 7.038-44.374Q6.799-44.741 6.799-45.193M7.469-45.463L9.284-45.463Q9.284-45.740 9.186-45.992Q9.089-46.245 8.891-46.401Q8.693-46.556 8.409-46.556Q8.132-46.556 7.918-46.398Q7.705-46.239 7.587-45.984Q7.469-45.729 7.469-45.463M10.388-43.665L10.388-44.728Q10.388-44.752 10.415-44.779Q10.443-44.806 10.467-44.806L10.576-44.806Q10.641-44.806 10.654-44.748Q10.750-44.314 10.996-44.063Q11.242-43.812 11.656-43.812Q11.998-43.812 12.251-43.945Q12.504-44.078 12.504-44.386Q12.504-44.543 12.410-44.658Q12.316-44.772 12.177-44.841Q12.039-44.909 11.871-44.947L11.290-45.046Q10.935-45.114 10.661-45.335Q10.388-45.555 10.388-45.897Q10.388-46.146 10.499-46.321Q10.610-46.495 10.796-46.594Q10.983-46.693 11.198-46.736Q11.413-46.779 11.656-46.779Q12.070-46.779 12.350-46.597L12.565-46.772Q12.575-46.775 12.582-46.777Q12.589-46.779 12.599-46.779L12.651-46.779Q12.678-46.779 12.702-46.755Q12.726-46.731 12.726-46.703L12.726-45.856Q12.726-45.835 12.702-45.808Q12.678-45.781 12.651-45.781L12.538-45.781Q12.510-45.781 12.485-45.806Q12.459-45.832 12.459-45.856Q12.459-46.092 12.353-46.256Q12.247-46.420 12.064-46.502Q11.882-46.584 11.649-46.584Q11.321-46.584 11.065-46.481Q10.808-46.379 10.808-46.102Q10.808-45.907 10.991-45.798Q11.174-45.688 11.403-45.647L11.977-45.541Q12.223-45.493 12.437-45.365Q12.651-45.237 12.787-45.034Q12.924-44.830 12.924-44.581Q12.924-44.068 12.558-43.829Q12.193-43.590 11.656-43.590Q11.160-43.590 10.829-43.884L10.562-43.610Q10.542-43.590 10.514-43.590L10.467-43.590Q10.443-43.590 10.415-43.617Q10.388-43.644 10.388-43.665M13.553-43.665L13.553-44.728Q13.553-44.752 13.580-44.779Q13.608-44.806 13.632-44.806L13.741-44.806Q13.806-44.806 13.820-44.748Q13.915-44.314 14.161-44.063Q14.407-43.812 14.821-43.812Q15.163-43.812 15.416-43.945Q15.669-44.078 15.669-44.386Q15.669-44.543 15.575-44.658Q15.481-44.772 15.342-44.841Q15.204-44.909 15.036-44.947L14.455-45.046Q14.100-45.114 13.826-45.335Q13.553-45.555 13.553-45.897Q13.553-46.146 13.664-46.321Q13.775-46.495 13.961-46.594Q14.148-46.693 14.363-46.736Q14.578-46.779 14.821-46.779Q15.235-46.779 15.515-46.597L15.730-46.772Q15.740-46.775 15.747-46.777Q15.754-46.779 15.764-46.779L15.816-46.779Q15.843-46.779 15.867-46.755Q15.891-46.731 15.891-46.703L15.891-45.856Q15.891-45.835 15.867-45.808Q15.843-45.781 15.816-45.781L15.703-45.781Q15.675-45.781 15.650-45.806Q15.624-45.832 15.624-45.856Q15.624-46.092 15.518-46.256Q15.412-46.420 15.229-46.502Q15.047-46.584 14.814-46.584Q14.486-46.584 14.230-46.481Q13.973-46.379 13.973-46.102Q13.973-45.907 14.156-45.798Q14.339-45.688 14.568-45.647L15.142-45.541Q15.388-45.493 15.602-45.365Q15.816-45.237 15.952-45.034Q16.089-44.830 16.089-44.581Q16.089-44.068 15.723-43.829Q15.358-43.590 14.821-43.590Q14.325-43.590 13.994-43.884L13.727-43.610Q13.707-43.590 13.679-43.590L13.632-43.590Q13.608-43.590 13.580-43.617Q13.553-43.644 13.553-43.665",[759],[947,3732,3734,3735,3805],{"className":3733},[950],"The two uses of ",[385,3736,3738],{"className":3737},[388],[385,3739,3741,3796],{"className":3740,"ariaHidden":393},[392],[385,3742,3744,3747,3750,3753,3793],{"className":3743},[397],[385,3745],{"className":3746,"style":2421},[401],[385,3748,2269],{"className":3749},[406,407],[385,3751],{"className":3752,"style":640},[422],[385,3754,3756,3759],{"className":3755},[644],[385,3757,2434],{"className":3758},[644],[385,3760,3762],{"className":3761},[1069],[385,3763,3765,3785],{"className":3764},[1073,2441],[385,3766,3768,3782],{"className":3767},[1077],[385,3769,3771],{"className":3770,"style":2448},[1081],[385,3772,3773,3776],{"style":2451},[385,3774],{"className":3775,"style":1090},[1089],[385,3777,3779],{"className":3778},[1094,1095,1096,1097],[385,3780,479],{"className":3781,"style":2461},[406,407,1097],[385,3783,2466],{"className":3784},[2465],[385,3786,3788],{"className":3787},[1077],[385,3789,3791],{"className":3790,"style":2473},[1081],[385,3792],{},[385,3794],{"className":3795,"style":640},[422],[385,3797,3799,3802],{"className":3798},[397],[385,3800],{"className":3801,"style":589},[401],[385,3803,2252],{"className":3804,"style":2251},[406,407],": tractability flows forward, hardness flows backward.",[381,3807,3808,3809,3862],{},"Two structural facts make ",[385,3810,3812],{"className":3811},[388],[385,3813,3815],{"className":3814,"ariaHidden":393},[392],[385,3816,3818,3822],{"className":3817},[397],[385,3819],{"className":3820,"style":3821},[401],"height:0.786em;vertical-align:-0.15em;",[385,3823,3825,3828],{"className":3824},[644],[385,3826,2434],{"className":3827},[644],[385,3829,3831],{"className":3830},[1069],[385,3832,3834,3854],{"className":3833},[1073,2441],[385,3835,3837,3851],{"className":3836},[1077],[385,3838,3840],{"className":3839,"style":2448},[1081],[385,3841,3842,3845],{"style":2451},[385,3843],{"className":3844,"style":1090},[1089],[385,3846,3848],{"className":3847},[1094,1095,1096,1097],[385,3849,479],{"className":3850,"style":2461},[406,407,1097],[385,3852,2466],{"className":3853},[2465],[385,3855,3857],{"className":3856},[1077],[385,3858,3860],{"className":3859,"style":2473},[1081],[385,3861],{}," behave like an ordering of difficulty.",[1455,3864,3865],{},[1458,3866,3867,3870,3871,3874,3875,973,3945,2737,4017,4087,4088],{},[455,3868,3869],{},"Reflexivity is trivial"," and, crucially, ",[455,3872,3873],{},"transitivity holds",": if ",[385,3876,3878],{"className":3877},[388],[385,3879,3881,3936],{"className":3880,"ariaHidden":393},[392],[385,3882,3884,3887,3890,3893,3933],{"className":3883},[397],[385,3885],{"className":3886,"style":2421},[401],[385,3888,2269],{"className":3889},[406,407],[385,3891],{"className":3892,"style":640},[422],[385,3894,3896,3899],{"className":3895},[644],[385,3897,2434],{"className":3898},[644],[385,3900,3902],{"className":3901},[1069],[385,3903,3905,3925],{"className":3904},[1073,2441],[385,3906,3908,3922],{"className":3907},[1077],[385,3909,3911],{"className":3910,"style":2448},[1081],[385,3912,3913,3916],{"style":2451},[385,3914],{"className":3915,"style":1090},[1089],[385,3917,3919],{"className":3918},[1094,1095,1096,1097],[385,3920,479],{"className":3921,"style":2461},[406,407,1097],[385,3923,2466],{"className":3924},[2465],[385,3926,3928],{"className":3927},[1077],[385,3929,3931],{"className":3930,"style":2473},[1081],[385,3932],{},[385,3934],{"className":3935,"style":640},[422],[385,3937,3939,3942],{"className":3938},[397],[385,3940],{"className":3941,"style":589},[401],[385,3943,2252],{"className":3944,"style":2251},[406,407],[385,3946,3948],{"className":3947},[388],[385,3949,3951,4006],{"className":3950,"ariaHidden":393},[392],[385,3952,3954,3957,3960,3963,4003],{"className":3953},[397],[385,3955],{"className":3956,"style":2421},[401],[385,3958,2252],{"className":3959,"style":2251},[406,407],[385,3961],{"className":3962,"style":640},[422],[385,3964,3966,3969],{"className":3965},[644],[385,3967,2434],{"className":3968},[644],[385,3970,3972],{"className":3971},[1069],[385,3973,3975,3995],{"className":3974},[1073,2441],[385,3976,3978,3992],{"className":3977},[1077],[385,3979,3981],{"className":3980,"style":2448},[1081],[385,3982,3983,3986],{"style":2451},[385,3984],{"className":3985,"style":1090},[1089],[385,3987,3989],{"className":3988},[1094,1095,1096,1097],[385,3990,479],{"className":3991,"style":2461},[406,407,1097],[385,3993,2466],{"className":3994},[2465],[385,3996,3998],{"className":3997},[1077],[385,3999,4001],{"className":4000,"style":2473},[1081],[385,4002],{},[385,4004],{"className":4005,"style":640},[422],[385,4007,4009,4012],{"className":4008},[397],[385,4010],{"className":4011,"style":589},[401],[385,4013,4016],{"className":4014,"style":4015},[406,407],"margin-right:0.0715em;","C",[385,4018,4020],{"className":4019},[388],[385,4021,4023,4078],{"className":4022,"ariaHidden":393},[392],[385,4024,4026,4029,4032,4035,4075],{"className":4025},[397],[385,4027],{"className":4028,"style":2421},[401],[385,4030,2269],{"className":4031},[406,407],[385,4033],{"className":4034,"style":640},[422],[385,4036,4038,4041],{"className":4037},[644],[385,4039,2434],{"className":4040},[644],[385,4042,4044],{"className":4043},[1069],[385,4045,4047,4067],{"className":4046},[1073,2441],[385,4048,4050,4064],{"className":4049},[1077],[385,4051,4053],{"className":4052,"style":2448},[1081],[385,4054,4055,4058],{"style":2451},[385,4056],{"className":4057,"style":1090},[1089],[385,4059,4061],{"className":4060},[1094,1095,1096,1097],[385,4062,479],{"className":4063,"style":2461},[406,407,1097],[385,4065,2466],{"className":4066},[2465],[385,4068,4070],{"className":4069},[1077],[385,4071,4073],{"className":4072,"style":2473},[1081],[385,4074],{},[385,4076],{"className":4077,"style":640},[422],[385,4079,4081,4084],{"className":4080},[397],[385,4082],{"className":4083,"style":589},[401],[385,4085,4016],{"className":4086,"style":4015},[406,407],", since we just compose the two\ntranslators, and a polynomial of a polynomial is still a polynomial. Chains\nof reductions are the raw material of the next lesson's ",[599,4089,4090],{},"reduction web.",[502,4092,4094],{"id":4093},"a-warm-up-reduction-matching-reduces-to-flow","A warm-up reduction: matching reduces to flow",[381,4096,4097,4098,4103,4104,4221,4222,4335,4336,3405,4374,4376,4377,4431,4432,4486,4487,4490],{},"Reductions are not a tool reserved for hardness arguments; we have already been\nusing them to design algorithms. The cleanest example, motivating the whole\nidea, is ",[986,4099,4100],{"href":180},[455,4101,4102],{},"bipartite matching",". We are given a set\nof tasks ",[385,4105,4107],{"className":4106},[388],[385,4108,4110],{"className":4109,"ariaHidden":393},[392],[385,4111,4113,4117,4159,4162,4165,4170,4173,4176,4179],{"className":4112},[397],[385,4114],{"className":4115,"style":4116},[401],"height:0.8095em;vertical-align:-0.1944em;",[385,4118,4120,4124],{"className":4119},[406],[385,4121,4123],{"className":4122},[406,407],"t",[385,4125,4127],{"className":4126},[1069],[385,4128,4130,4151],{"className":4129},[1073,2441],[385,4131,4133,4148],{"className":4132},[1077],[385,4134,4137],{"className":4135,"style":4136},[1081],"height:0.3011em;",[385,4138,4139,4142],{"style":2451},[385,4140],{"className":4141,"style":1090},[1089],[385,4143,4145],{"className":4144},[1094,1095,1096,1097],[385,4146,1285],{"className":4147},[406,1097],[385,4149,2466],{"className":4150},[2465],[385,4152,4154],{"className":4153},[1077],[385,4155,4157],{"className":4156,"style":2473},[1081],[385,4158],{},[385,4160,558],{"className":4161},[557],[385,4163],{"className":4164,"style":423},[422],[385,4166,4169],{"className":4167},[4168],"minner","…",[385,4171],{"className":4172,"style":423},[422],[385,4174,558],{"className":4175},[557],[385,4177],{"className":4178,"style":423},[422],[385,4180,4182,4185],{"className":4181},[406],[385,4183,4123],{"className":4184},[406,407],[385,4186,4188],{"className":4187},[1069],[385,4189,4191,4213],{"className":4190},[1073,2441],[385,4192,4194,4210],{"className":4193},[1077],[385,4195,4198],{"className":4196,"style":4197},[1081],"height:0.1514em;",[385,4199,4200,4203],{"style":2451},[385,4201],{"className":4202,"style":1090},[1089],[385,4204,4206],{"className":4205},[1094,1095,1096,1097],[385,4207,4209],{"className":4208},[406,407,1097],"m",[385,4211,2466],{"className":4212},[2465],[385,4214,4216],{"className":4215},[1077],[385,4217,4219],{"className":4218,"style":2473},[1081],[385,4220],{},", a set of workers ",[385,4223,4225],{"className":4224},[388],[385,4226,4228],{"className":4227,"ariaHidden":393},[392],[385,4229,4231,4234,4277,4280,4283,4286,4289,4292,4295],{"className":4230},[397],[385,4232],{"className":4233,"style":1476},[401],[385,4235,4237,4242],{"className":4236},[406],[385,4238,4241],{"className":4239,"style":4240},[406,407],"margin-right:0.0269em;","w",[385,4243,4245],{"className":4244},[1069],[385,4246,4248,4269],{"className":4247},[1073,2441],[385,4249,4251,4266],{"className":4250},[1077],[385,4252,4254],{"className":4253,"style":4136},[1081],[385,4255,4257,4260],{"style":4256},"top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;",[385,4258],{"className":4259,"style":1090},[1089],[385,4261,4263],{"className":4262},[1094,1095,1096,1097],[385,4264,1285],{"className":4265},[406,1097],[385,4267,2466],{"className":4268},[2465],[385,4270,4272],{"className":4271},[1077],[385,4273,4275],{"className":4274,"style":2473},[1081],[385,4276],{},[385,4278,558],{"className":4279},[557],[385,4281],{"className":4282,"style":423},[422],[385,4284,4169],{"className":4285},[4168],[385,4287],{"className":4288,"style":423},[422],[385,4290,558],{"className":4291},[557],[385,4293],{"className":4294,"style":423},[422],[385,4296,4298,4301],{"className":4297},[406],[385,4299,4241],{"className":4300,"style":4240},[406,407],[385,4302,4304],{"className":4303},[1069],[385,4305,4307,4327],{"className":4306},[1073,2441],[385,4308,4310,4324],{"className":4309},[1077],[385,4311,4313],{"className":4312,"style":4197},[1081],[385,4314,4315,4318],{"style":4256},[385,4316],{"className":4317,"style":1090},[1089],[385,4319,4321],{"className":4320},[1094,1095,1096,1097],[385,4322,418],{"className":4323},[406,407,1097],[385,4325,2466],{"className":4326},[2465],[385,4328,4330],{"className":4329},[1077],[385,4331,4333],{"className":4332,"style":2473},[1081],[385,4334],{},", and a compatibility\ntable, where ",[385,4337,4339],{"className":4338},[388],[385,4340,4342],{"className":4341,"ariaHidden":393},[392],[385,4343,4345,4348,4351,4355,4359,4362,4365,4370],{"className":4344},[397],[385,4346],{"className":4347,"style":402},[401],[385,4349,2269],{"className":4350},[406,407],[385,4352,4354],{"className":4353},[413],"[",[385,4356,4358],{"className":4357},[406,407],"i",[385,4360,558],{"className":4361},[557],[385,4363],{"className":4364,"style":423},[422],[385,4366,4369],{"className":4367,"style":4368},[406,407],"margin-right:0.0572em;","j",[385,4371,4373],{"className":4372},[443],"]",[455,4375,393],{}," when task ",[385,4378,4380],{"className":4379},[388],[385,4381,4383],{"className":4382,"ariaHidden":393},[392],[385,4384,4386,4390],{"className":4385},[397],[385,4387],{"className":4388,"style":4389},[401],"height:0.7651em;vertical-align:-0.15em;",[385,4391,4393,4396],{"className":4392},[406],[385,4394,4123],{"className":4395},[406,407],[385,4397,4399],{"className":4398},[1069],[385,4400,4402,4423],{"className":4401},[1073,2441],[385,4403,4405,4420],{"className":4404},[1077],[385,4406,4409],{"className":4407,"style":4408},[1081],"height:0.3117em;",[385,4410,4411,4414],{"style":2451},[385,4412],{"className":4413,"style":1090},[1089],[385,4415,4417],{"className":4416},[1094,1095,1096,1097],[385,4418,4358],{"className":4419},[406,407,1097],[385,4421,2466],{"className":4422},[2465],[385,4424,4426],{"className":4425},[1077],[385,4427,4429],{"className":4428,"style":2473},[1081],[385,4430],{}," can be done by worker ",[385,4433,4435],{"className":4434},[388],[385,4436,4438],{"className":4437,"ariaHidden":393},[392],[385,4439,4441,4445],{"className":4440},[397],[385,4442],{"className":4443,"style":4444},[401],"height:0.7167em;vertical-align:-0.2861em;",[385,4446,4448,4451],{"className":4447},[406],[385,4449,4241],{"className":4450,"style":4240},[406,407],[385,4452,4454],{"className":4453},[1069],[385,4455,4457,4477],{"className":4456},[1073,2441],[385,4458,4460,4474],{"className":4459},[1077],[385,4461,4463],{"className":4462,"style":4408},[1081],[385,4464,4465,4468],{"style":4256},[385,4466],{"className":4467,"style":1090},[1089],[385,4469,4471],{"className":4470},[1094,1095,1096,1097],[385,4472,4369],{"className":4473,"style":4368},[406,407,1097],[385,4475,2466],{"className":4476},[2465],[385,4478,4480],{"className":4479},[1077],[385,4481,4484],{"className":4482,"style":4483},[1081],"height:0.2861em;",[385,4485],{},". A\n",[455,4488,4489],{},"matching"," assigns tasks to workers so that no task and no worker is used\ntwice; we want a matching of maximum cardinality. There is a slogan worth\nremembering here:",[522,4492,4494],{"type":4493},"remark",[381,4495,4496,4499,4500,4503,4504,4507,4508,4511],{},[455,4497,4498],{},"Remark (Modeling tip)."," Whenever a graph problem asks for paths or assignments subject to a\nper-edge or per-vertex ",[447,4501,4502],{},"budget constraint"," (here, ",[599,4505,4506],{},"each task and each worker used at most once","), consider routing it through ",[455,4509,4510],{},"max-flow"," as a subroutine.",[381,4513,4514,4515,2392,4537,4559,4560,4562],{},"We do not write a matching algorithm from scratch. Instead we reduce\n",[385,4516,4518],{"className":4517},[388],[385,4519,4521],{"className":4520,"ariaHidden":393},[392],[385,4522,4524,4527],{"className":4523},[397],[385,4525],{"className":4526,"style":2501},[401],[385,4528,4530],{"className":4529},[1690,1691],[385,4531,4533],{"className":4532},[406,550],[385,4534,4536],{"className":4535},[406],"Bipartite-Matching",[385,4538,4540],{"className":4539},[388],[385,4541,4543],{"className":4542,"ariaHidden":393},[392],[385,4544,4546,4549],{"className":4545},[397],[385,4547],{"className":4548,"style":474},[401],[385,4550,4552],{"className":4551},[1690,1691],[385,4553,4555],{"className":4554},[406,550],[385,4556,4558],{"className":4557},[406],"Max-Flow",", a problem we already know\nhow to solve, and reuse that solver. This is the pipeline of the previous\nsection made concrete, and because matching is a ",[447,4561,3103],{}," problem, the output\ntransformer is no longer trivial.",[381,4564,4565,4568,4569,576,4572,4588,4589,576,4592,4608,4609,4680,4681,4751,4752,4859,4860,3405,4893,4895,4896,4898,4899,4915,4916,4931,4932,4947],{},[455,4566,4567],{},"Transform the input."," Build a flow network: add a ",[455,4570,4571],{},"source",[385,4573,4575],{"className":4574},[388],[385,4576,4578],{"className":4577,"ariaHidden":393},[392],[385,4579,4581,4584],{"className":4580},[397],[385,4582],{"className":4583,"style":615},[401],[385,4585,4587],{"className":4586},[406,407],"s"," and a\n",[455,4590,4591],{},"sink",[385,4593,4595],{"className":4594},[388],[385,4596,4598],{"className":4597,"ariaHidden":393},[392],[385,4599,4601,4605],{"className":4600},[397],[385,4602],{"className":4603,"style":4604},[401],"height:0.6151em;",[385,4606,4123],{"className":4607},[406,407],". Direct an edge ",[385,4610,4612],{"className":4611},[388],[385,4613,4615,4634],{"className":4614,"ariaHidden":393},[392],[385,4616,4618,4621,4624,4627,4631],{"className":4617},[397],[385,4619],{"className":4620,"style":615},[401],[385,4622,4587],{"className":4623},[406,407],[385,4625],{"className":4626,"style":640},[422],[385,4628,4630],{"className":4629},[644],"→",[385,4632],{"className":4633,"style":640},[422],[385,4635,4637,4640],{"className":4636},[397],[385,4638],{"className":4639,"style":4389},[401],[385,4641,4643,4646],{"className":4642},[406],[385,4644,4123],{"className":4645},[406,407],[385,4647,4649],{"className":4648},[1069],[385,4650,4652,4672],{"className":4651},[1073,2441],[385,4653,4655,4669],{"className":4654},[1077],[385,4656,4658],{"className":4657,"style":4408},[1081],[385,4659,4660,4663],{"style":2451},[385,4661],{"className":4662,"style":1090},[1089],[385,4664,4666],{"className":4665},[1094,1095,1096,1097],[385,4667,4358],{"className":4668},[406,407,1097],[385,4670,2466],{"className":4671},[2465],[385,4673,4675],{"className":4674},[1077],[385,4676,4678],{"className":4677,"style":2473},[1081],[385,4679],{}," for every task, an edge ",[385,4682,4684],{"className":4683},[388],[385,4685,4687,4742],{"className":4686,"ariaHidden":393},[392],[385,4688,4690,4693,4733,4736,4739],{"className":4689},[397],[385,4691],{"className":4692,"style":4444},[401],[385,4694,4696,4699],{"className":4695},[406],[385,4697,4241],{"className":4698,"style":4240},[406,407],[385,4700,4702],{"className":4701},[1069],[385,4703,4705,4725],{"className":4704},[1073,2441],[385,4706,4708,4722],{"className":4707},[1077],[385,4709,4711],{"className":4710,"style":4408},[1081],[385,4712,4713,4716],{"style":4256},[385,4714],{"className":4715,"style":1090},[1089],[385,4717,4719],{"className":4718},[1094,1095,1096,1097],[385,4720,4369],{"className":4721,"style":4368},[406,407,1097],[385,4723,2466],{"className":4724},[2465],[385,4726,4728],{"className":4727},[1077],[385,4729,4731],{"className":4730,"style":4483},[1081],[385,4732],{},[385,4734],{"className":4735,"style":640},[422],[385,4737,4630],{"className":4738},[644],[385,4740],{"className":4741,"style":640},[422],[385,4743,4745,4748],{"className":4744},[397],[385,4746],{"className":4747,"style":4604},[401],[385,4749,4123],{"className":4750},[406,407]," for\nevery worker, and an edge ",[385,4753,4755],{"className":4754},[388],[385,4756,4758,4813],{"className":4757,"ariaHidden":393},[392],[385,4759,4761,4764,4804,4807,4810],{"className":4760},[397],[385,4762],{"className":4763,"style":4389},[401],[385,4765,4767,4770],{"className":4766},[406],[385,4768,4123],{"className":4769},[406,407],[385,4771,4773],{"className":4772},[1069],[385,4774,4776,4796],{"className":4775},[1073,2441],[385,4777,4779,4793],{"className":4778},[1077],[385,4780,4782],{"className":4781,"style":4408},[1081],[385,4783,4784,4787],{"style":2451},[385,4785],{"className":4786,"style":1090},[1089],[385,4788,4790],{"className":4789},[1094,1095,1096,1097],[385,4791,4358],{"className":4792},[406,407,1097],[385,4794,2466],{"className":4795},[2465],[385,4797,4799],{"className":4798},[1077],[385,4800,4802],{"className":4801,"style":2473},[1081],[385,4803],{},[385,4805],{"className":4806,"style":640},[422],[385,4808,4630],{"className":4809},[644],[385,4811],{"className":4812,"style":640},[422],[385,4814,4816,4819],{"className":4815},[397],[385,4817],{"className":4818,"style":4444},[401],[385,4820,4822,4825],{"className":4821},[406],[385,4823,4241],{"className":4824,"style":4240},[406,407],[385,4826,4828],{"className":4827},[1069],[385,4829,4831,4851],{"className":4830},[1073,2441],[385,4832,4834,4848],{"className":4833},[1077],[385,4835,4837],{"className":4836,"style":4408},[1081],[385,4838,4839,4842],{"style":4256},[385,4840],{"className":4841,"style":1090},[1089],[385,4843,4845],{"className":4844},[1094,1095,1096,1097],[385,4846,4369],{"className":4847,"style":4368},[406,407,1097],[385,4849,2466],{"className":4850},[2465],[385,4852,4854],{"className":4853},[1077],[385,4855,4857],{"className":4856,"style":4483},[1081],[385,4858],{}," whenever ",[385,4861,4863],{"className":4862},[388],[385,4864,4866],{"className":4865,"ariaHidden":393},[392],[385,4867,4869,4872,4875,4878,4881,4884,4887,4890],{"className":4868},[397],[385,4870],{"className":4871,"style":402},[401],[385,4873,2269],{"className":4874},[406,407],[385,4876,4354],{"className":4877},[413],[385,4879,4358],{"className":4880},[406,407],[385,4882,558],{"className":4883},[557],[385,4885],{"className":4886,"style":423},[422],[385,4888,4369],{"className":4889,"style":4368},[406,407],[385,4891,4373],{"className":4892},[443],[455,4894,393],{},". Give\n",[447,4897,1547],{}," edge capacity ",[385,4900,4902],{"className":4901},[388],[385,4903,4905],{"className":4904,"ariaHidden":393},[392],[385,4906,4908,4912],{"className":4907},[397],[385,4909],{"className":4910,"style":4911},[401],"height:0.6444em;",[385,4913,1285],{"className":4914},[406],". The unit capacities out of ",[385,4917,4919],{"className":4918},[388],[385,4920,4922],{"className":4921,"ariaHidden":393},[392],[385,4923,4925,4928],{"className":4924},[397],[385,4926],{"className":4927,"style":615},[401],[385,4929,4587],{"className":4930},[406,407]," and into ",[385,4933,4935],{"className":4934},[388],[385,4936,4938],{"className":4937,"ariaHidden":393},[392],[385,4939,4941,4944],{"className":4940},[397],[385,4942],{"className":4943,"style":4604},[401],[385,4945,4123],{"className":4946},[406,407]," are\nexactly the budget constraints: each task and each worker can carry at most one\nunit.",[724,4949,4951,5177],{"className":4950},[727,728],[730,4952,4956],{"xmlns":732,"width":4953,"height":4954,"viewBox":4955},"392.348","143.863","-75 -75 294.261 107.897",[737,4957,4958,4961,4968,4971,4987,4990,5004,5007,5021,5024,5039,5042,5056,5059,5073,5076,5082,5085,5089,5092,5095,5098,5101,5104,5107,5110,5113,5116,5119,5122,5125,5128,5131,5134,5137,5140,5143,5146,5149,5164],{"stroke":739,"style":740},[745,4959],{"fill":747,"d":4960},"M-40.284-21.321c0-7.857-6.37-14.227-14.226-14.227s-14.227 6.37-14.227 14.227 6.37 14.226 14.227 14.226 14.226-6.37 14.226-14.226Zm-14.226 0",[737,4962,4964],{"transform":4963},"translate(-2.154 -40.742)",[745,4965],{"d":4966,"fill":739,"stroke":739,"className":4967,"style":760},"M-53.675 20.809Q-53.455 21.195-52.699 21.195Q-52.401 21.195-52.106 21.094Q-51.812 20.993-51.618 20.780Q-51.425 20.567-51.425 20.259Q-51.425 20.031-51.603 19.884Q-51.781 19.736-52.027 19.684L-52.537 19.587Q-52.752 19.547-52.928 19.424Q-53.104 19.301-53.209 19.115Q-53.315 18.928-53.315 18.712Q-53.315 18.313-53.091 18.007Q-52.866 17.702-52.508 17.541Q-52.150 17.381-51.746 17.381Q-51.482 17.381-51.234 17.460Q-50.986 17.539-50.816 17.719Q-50.647 17.900-50.647 18.163Q-50.647 18.370-50.768 18.528Q-50.889 18.686-51.100 18.686Q-51.223 18.686-51.309 18.605Q-51.394 18.524-51.394 18.405Q-51.394 18.242-51.271 18.108Q-51.148 17.974-50.990 17.974Q-51.078 17.794-51.295 17.717Q-51.513 17.640-51.763 17.640Q-52.005 17.640-52.231 17.728Q-52.458 17.816-52.603 17.985Q-52.748 18.154-52.748 18.405Q-52.748 18.581-52.616 18.699Q-52.484 18.818-52.286 18.866L-51.781 18.963Q-51.394 19.042-51.126 19.312Q-50.858 19.583-50.858 19.965Q-50.858 20.295-51.047 20.615Q-51.236 20.936-51.513 21.134Q-52.014 21.459-52.708 21.459Q-53.020 21.459-53.321 21.373Q-53.622 21.288-53.827 21.090Q-54.031 20.892-54.031 20.585Q-54.031 20.334-53.888 20.150Q-53.745 19.965-53.504 19.965Q-53.350 19.965-53.251 20.057Q-53.152 20.150-53.152 20.295Q-53.152 20.505-53.304 20.657Q-53.455 20.809-53.675 20.809",[759],[745,4969],{"fill":747,"d":4970},"M38.06-64a7.213 7.213 0 1 0-14.425 0 7.213 7.213 0 0 0 14.426 0Zm-7.212 0",[737,4972,4973,4980],{"stroke":747},[737,4974,4976],{"transform":4975},"translate(81.605 -83.09)",[745,4977],{"d":4978,"fill":739,"stroke":739,"className":4979,"style":760},"M-53.926 20.620Q-53.926 20.488-53.899 20.369L-53.249 17.794L-54.194 17.794Q-54.303 17.794-54.303 17.675Q-54.303 17.614-54.270 17.546Q-54.238 17.478-54.176 17.478L-53.178 17.478L-52.818 16.041Q-52.783 15.900-52.671 15.812Q-52.559 15.724-52.423 15.724Q-52.300 15.724-52.216 15.799Q-52.133 15.874-52.133 15.992Q-52.133 16.049-52.141 16.076L-52.493 17.478L-51.566 17.478Q-51.517 17.478-51.489 17.511Q-51.460 17.544-51.460 17.587Q-51.460 17.653-51.493 17.724Q-51.526 17.794-51.583 17.794L-52.568 17.794L-53.222 20.404Q-53.275 20.607-53.275 20.800Q-53.275 21.195-53.016 21.195Q-52.735 21.195-52.504 21.015Q-52.273 20.835-52.102 20.563Q-51.930 20.290-51.829 20.026Q-51.821 20-51.799 19.983Q-51.777 19.965-51.746 19.965L-51.640 19.965Q-51.592 19.965-51.570 19.998Q-51.548 20.031-51.548 20.079Q-51.689 20.422-51.900 20.736Q-52.111 21.050-52.396 21.255Q-52.682 21.459-53.033 21.459Q-53.284 21.459-53.486 21.354Q-53.688 21.248-53.807 21.057Q-53.926 20.866-53.926 20.620",[759],[737,4981,4982],{"transform":4975},[745,4983],{"d":4984,"fill":739,"stroke":739,"className":4985,"style":4986},"M-48.129 22.358L-50.420 22.358L-50.420 22.100Q-49.544 22.100-49.544 21.927L-49.544 18.848Q-49.737 18.936-49.969 18.973Q-50.200 19.009-50.455 19.009L-50.455 18.752Q-50.077 18.752-49.756 18.667Q-49.436 18.582-49.207 18.368L-49.087 18.368Q-49.055 18.368-49.030 18.391Q-49.005 18.415-49.005 18.453L-49.005 21.927Q-49.005 22.100-48.129 22.100",[759],"stroke-width:0.180",[745,4988],{"fill":747,"d":4989},"M38.06-21.321a7.213 7.213 0 1 0-14.425 0 7.213 7.213 0 0 0 14.426 0Zm-7.212 0",[737,4991,4992,4998],{"stroke":747},[737,4993,4995],{"transform":4994},"translate(81.605 -40.411)",[745,4996],{"d":4978,"fill":739,"stroke":739,"className":4997,"style":760},[759],[737,4999,5000],{"transform":4994},[745,5001],{"d":5002,"fill":739,"stroke":739,"className":5003,"style":4986},"M-48.129 22.358L-50.739 22.358L-50.739 22.173Q-50.733 22.150-50.713 22.124L-49.562 21.069Q-49.222 20.758-49.042 20.572Q-48.861 20.386-48.716 20.126Q-48.571 19.865-48.571 19.569Q-48.571 19.296-48.697 19.081Q-48.823 18.866-49.043 18.746Q-49.263 18.626-49.538 18.626Q-49.714 18.626-49.884 18.683Q-50.054 18.740-50.186 18.847Q-50.317 18.954-50.397 19.112Q-50.309 19.112-50.231 19.156Q-50.153 19.200-50.109 19.276Q-50.066 19.352-50.066 19.449Q-50.066 19.589-50.162 19.686Q-50.259 19.783-50.402 19.783Q-50.540 19.783-50.640 19.683Q-50.739 19.584-50.739 19.449Q-50.739 19.124-50.549 18.876Q-50.358 18.629-50.055 18.498Q-49.752 18.368-49.436 18.368Q-49.055 18.368-48.712 18.503Q-48.369 18.637-48.155 18.910Q-47.941 19.182-47.941 19.569Q-47.941 19.844-48.066 20.071Q-48.191 20.298-48.371 20.470Q-48.551 20.641-48.876 20.881Q-49.201 21.122-49.286 21.189L-50.042 21.793L-49.509 21.793Q-49.020 21.793-48.689 21.785Q-48.358 21.778-48.343 21.763Q-48.284 21.693-48.252 21.558Q-48.220 21.423-48.188 21.212L-47.941 21.212",[759],[745,5005],{"fill":747,"d":5006},"M38.06 21.358a7.213 7.213 0 1 0-14.425 0 7.213 7.213 0 0 0 14.426 0Zm-7.212 0",[737,5008,5009,5015],{"stroke":747},[737,5010,5012],{"transform":5011},"translate(81.605 2.268)",[745,5013],{"d":4978,"fill":739,"stroke":739,"className":5014,"style":760},[759],[737,5016,5017],{"transform":5011},[745,5018],{"d":5019,"fill":739,"stroke":739,"className":5020,"style":4986},"M-50.397 21.907Q-50.101 22.244-49.371 22.244Q-49.113 22.244-48.933 22.116Q-48.753 21.989-48.665 21.781Q-48.577 21.573-48.577 21.315Q-48.577 20.920-48.784 20.649Q-48.990 20.378-49.377 20.378L-49.843 20.378Q-49.907 20.363-49.922 20.301L-49.922 20.234Q-49.907 20.178-49.843 20.161L-49.441 20.137Q-49.231 20.137-49.062 19.995Q-48.894 19.853-48.801 19.639Q-48.709 19.425-48.709 19.209Q-48.709 18.921-48.894 18.756Q-49.078 18.590-49.371 18.590Q-49.632 18.590-49.856 18.658Q-50.080 18.725-50.227 18.883Q-50.098 18.901-50.019 18.990Q-49.940 19.080-49.940 19.209Q-49.940 19.346-50.035 19.441Q-50.130 19.537-50.271 19.537Q-50.405 19.537-50.502 19.440Q-50.599 19.343-50.599 19.209Q-50.599 18.921-50.408 18.730Q-50.218 18.538-49.937 18.453Q-49.655 18.368-49.371 18.368Q-49.096 18.368-48.795 18.459Q-48.495 18.549-48.287 18.738Q-48.079 18.927-48.079 19.209Q-48.079 19.578-48.325 19.850Q-48.571 20.123-48.943 20.252Q-48.524 20.345-48.207 20.628Q-47.889 20.911-47.889 21.309Q-47.889 21.672-48.108 21.938Q-48.328 22.203-48.674 22.343Q-49.020 22.484-49.371 22.484Q-49.594 22.484-49.841 22.436Q-50.089 22.387-50.309 22.277Q-50.528 22.168-50.660 21.989Q-50.792 21.810-50.792 21.555Q-50.792 21.406-50.690 21.303Q-50.587 21.201-50.438 21.201Q-50.288 21.201-50.186 21.303Q-50.083 21.406-50.083 21.555Q-50.083 21.687-50.172 21.788Q-50.262 21.889-50.397 21.907",[759],[745,5022],{"fill":747,"d":5023},"M124.276-64a8.07 8.07 0 1 0-16.14 0 8.07 8.07 0 0 0 16.14 0Zm-8.07 0",[737,5025,5026,5033],{"stroke":747},[737,5027,5029],{"transform":5028},"translate(165.319 -83.92)",[745,5030],{"d":5031,"fill":739,"stroke":739,"className":5032,"style":760},"M-53.504 20.295Q-53.504 20.022-53.425 19.717Q-53.345 19.411-53.218 19.077Q-53.091 18.743-52.972 18.431Q-52.853 18.146-52.853 17.913Q-52.853 17.794-52.899 17.717Q-52.946 17.640-53.051 17.640Q-53.403 17.640-53.638 18.001Q-53.873 18.361-53.978 18.792Q-53.996 18.875-54.071 18.875L-54.176 18.875Q-54.224 18.875-54.246 18.836Q-54.268 18.796-54.268 18.756Q-54.180 18.414-54.020 18.108Q-53.860 17.803-53.609 17.592Q-53.359 17.381-53.033 17.381Q-52.695 17.381-52.464 17.590Q-52.234 17.798-52.234 18.137Q-52.234 18.317-52.295 18.471Q-52.300 18.488-52.438 18.849Q-52.576 19.209-52.658 19.455Q-52.739 19.701-52.792 19.945Q-52.844 20.189-52.844 20.404Q-52.844 20.769-52.658 20.982Q-52.471 21.195-52.115 21.195Q-51.632 21.195-51.324 20.483L-51.324 20.312Q-51.324 20.026-51.262 19.785L-50.766 17.794Q-50.731 17.653-50.616 17.566Q-50.502 17.478-50.362 17.478Q-50.239 17.478-50.159 17.552Q-50.080 17.627-50.080 17.750Q-50.080 17.803-50.089 17.829L-50.586 19.820Q-50.678 20.255-50.678 20.431Q-50.678 20.765-50.511 20.980Q-50.344 21.195-50.010 21.195Q-49.628 21.195-49.366 20.899Q-49.105 20.602-48.929 20.163Q-48.793 19.811-48.681 19.435Q-48.569 19.060-48.569 18.840Q-48.569 18.585-48.648 18.442Q-48.727 18.299-48.878 18.119Q-49.030 17.939-49.030 17.847Q-49.030 17.662-48.881 17.517Q-48.731 17.372-48.551 17.372Q-48.327 17.372-48.228 17.579Q-48.129 17.785-48.129 18.045Q-48.129 18.317-48.210 18.712Q-48.292 19.108-48.413 19.510Q-48.533 19.912-48.626 20.132Q-48.766 20.483-48.953 20.778Q-49.140 21.072-49.408 21.266Q-49.676 21.459-50.028 21.459Q-50.458 21.459-50.718 21.336Q-50.977 21.213-51.205 20.870Q-51.579 21.459-52.133 21.459Q-52.528 21.459-52.836 21.338Q-53.143 21.217-53.323 20.956Q-53.504 20.694-53.504 20.295",[759],[737,5034,5035],{"transform":5028},[745,5036],{"d":5037,"fill":739,"stroke":739,"className":5038,"style":4986},"M-44.840 22.358L-47.131 22.358L-47.131 22.100Q-46.255 22.100-46.255 21.927L-46.255 18.848Q-46.448 18.936-46.680 18.973Q-46.911 19.009-47.166 19.009L-47.166 18.752Q-46.788 18.752-46.467 18.667Q-46.147 18.582-45.918 18.368L-45.798 18.368Q-45.766 18.368-45.741 18.391Q-45.716 18.415-45.716 18.453L-45.716 21.927Q-45.716 22.100-44.840 22.100",[759],[745,5040],{"fill":747,"d":5041},"M124.276-21.321a8.07 8.07 0 1 0-16.14 0 8.07 8.07 0 0 0 16.14 0Zm-8.07 0",[737,5043,5044,5050],{"stroke":747},[737,5045,5047],{"transform":5046},"translate(165.319 -41.242)",[745,5048],{"d":5031,"fill":739,"stroke":739,"className":5049,"style":760},[759],[737,5051,5052],{"transform":5046},[745,5053],{"d":5054,"fill":739,"stroke":739,"className":5055,"style":4986},"M-44.840 22.358L-47.450 22.358L-47.450 22.173Q-47.444 22.150-47.424 22.124L-46.273 21.069Q-45.933 20.758-45.753 20.572Q-45.572 20.386-45.427 20.126Q-45.282 19.865-45.282 19.569Q-45.282 19.296-45.408 19.081Q-45.534 18.866-45.754 18.746Q-45.974 18.626-46.249 18.626Q-46.425 18.626-46.595 18.683Q-46.765 18.740-46.897 18.847Q-47.028 18.954-47.108 19.112Q-47.020 19.112-46.942 19.156Q-46.864 19.200-46.820 19.276Q-46.777 19.352-46.777 19.449Q-46.777 19.589-46.873 19.686Q-46.970 19.783-47.113 19.783Q-47.251 19.783-47.351 19.683Q-47.450 19.584-47.450 19.449Q-47.450 19.124-47.260 18.876Q-47.069 18.629-46.766 18.498Q-46.463 18.368-46.147 18.368Q-45.766 18.368-45.423 18.503Q-45.080 18.637-44.866 18.910Q-44.652 19.182-44.652 19.569Q-44.652 19.844-44.777 20.071Q-44.902 20.298-45.082 20.470Q-45.262 20.641-45.587 20.881Q-45.912 21.122-45.997 21.189L-46.753 21.793L-46.220 21.793Q-45.731 21.793-45.400 21.785Q-45.069 21.778-45.054 21.763Q-44.995 21.693-44.963 21.558Q-44.931 21.423-44.899 21.212L-44.652 21.212",[759],[745,5057],{"fill":747,"d":5058},"M124.276 21.358a8.07 8.07 0 1 0-16.14 0 8.07 8.07 0 0 0 16.14 0Zm-8.07 0",[737,5060,5061,5067],{"stroke":747},[737,5062,5064],{"transform":5063},"translate(165.319 1.438)",[745,5065],{"d":5031,"fill":739,"stroke":739,"className":5066,"style":760},[759],[737,5068,5069],{"transform":5063},[745,5070],{"d":5071,"fill":739,"stroke":739,"className":5072,"style":4986},"M-47.108 21.907Q-46.812 22.244-46.082 22.244Q-45.824 22.244-45.644 22.116Q-45.464 21.989-45.376 21.781Q-45.288 21.573-45.288 21.315Q-45.288 20.920-45.495 20.649Q-45.701 20.378-46.088 20.378L-46.554 20.378Q-46.618 20.363-46.633 20.301L-46.633 20.234Q-46.618 20.178-46.554 20.161L-46.152 20.137Q-45.942 20.137-45.773 19.995Q-45.605 19.853-45.512 19.639Q-45.420 19.425-45.420 19.209Q-45.420 18.921-45.605 18.756Q-45.789 18.590-46.082 18.590Q-46.343 18.590-46.567 18.658Q-46.791 18.725-46.938 18.883Q-46.809 18.901-46.730 18.990Q-46.651 19.080-46.651 19.209Q-46.651 19.346-46.746 19.441Q-46.841 19.537-46.982 19.537Q-47.116 19.537-47.213 19.440Q-47.310 19.343-47.310 19.209Q-47.310 18.921-47.119 18.730Q-46.929 18.538-46.648 18.453Q-46.366 18.368-46.082 18.368Q-45.807 18.368-45.506 18.459Q-45.206 18.549-44.998 18.738Q-44.790 18.927-44.790 19.209Q-44.790 19.578-45.036 19.850Q-45.282 20.123-45.654 20.252Q-45.235 20.345-44.918 20.628Q-44.600 20.911-44.600 21.309Q-44.600 21.672-44.819 21.938Q-45.039 22.203-45.385 22.343Q-45.731 22.484-46.082 22.484Q-46.305 22.484-46.552 22.436Q-46.800 22.387-47.020 22.277Q-47.239 22.168-47.371 21.989Q-47.503 21.810-47.503 21.555Q-47.503 21.406-47.401 21.303Q-47.298 21.201-47.149 21.201Q-46.999 21.201-46.897 21.303Q-46.794 21.406-46.794 21.555Q-46.794 21.687-46.883 21.788Q-46.973 21.889-47.108 21.907",[759],[745,5074],{"fill":747,"d":5075},"M215.79-21.321c0-7.857-6.369-14.227-14.226-14.227s-14.226 6.37-14.226 14.227 6.37 14.226 14.226 14.226 14.227-6.37 14.227-14.226Zm-14.226 0",[737,5077,5079],{"transform":5078},"translate(254.405 -39.911)",[745,5080],{"d":4978,"fill":739,"stroke":739,"className":5081,"style":760},[759],[745,5083],{"fill":747,"d":5084},"M-41.608-27.772 21.468-59.31",[745,5086],{"d":5087,"style":5088},"m23.709-60.43-3.81.394 1.658.68-.45 1.736Z","stroke-width:.39996800000000005",[745,5090],{"fill":747,"d":5091},"M-40.084-21.321H20.36",[745,5093],{"d":5094},"m22.865-21.321-3.584-1.351 1.179 1.35-1.18 1.351Z",[745,5096],{"fill":747,"d":5097},"m-41.608-14.87 63.076 31.538",[745,5099],{"d":5100,"style":5088},"m23.709 17.788-2.602-2.81.45 1.734-1.658.681Z",[745,5102],{"fill":747,"d":5103},"M38.26-64h66.601",[745,5105],{"d":5106},"m107.367-64-3.585-1.351 1.18 1.35-1.18 1.351Z",[745,5108],{"fill":747,"d":5109},"m37.478-60.686 68.582 34.292",[745,5111],{"d":5112,"style":5088},"m108.3-25.274-2.601-2.81.45 1.734-1.658.681Z",[745,5114],{"fill":747,"d":5115},"M38.26-21.321h66.601",[745,5117],{"d":5118},"m107.367-21.321-3.585-1.351 1.18 1.35-1.18 1.351Z",[745,5120],{"fill":747,"d":5121},"m37.478 18.043 68.582-34.291",[745,5123],{"d":5124,"style":5088},"m108.3-17.369-3.81.395 1.66.681-.451 1.735Z",[745,5126],{"fill":747,"d":5127},"M38.26 21.358h66.601",[745,5129],{"d":5130},"m107.367 21.358-3.585-1.35 1.18 1.35-1.18 1.35Z",[745,5132],{"fill":747,"d":5133},"m123.602-60.302 62.31 31.154",[745,5135],{"d":5136,"style":5088},"m188.153-28.027-2.602-2.811.45 1.735-1.658.681Z",[745,5138],{"fill":747,"d":5139},"M124.476-21.321h59.587",[745,5141],{"d":5142},"m186.568-21.321-3.584-1.351 1.179 1.35-1.18 1.351Z",[745,5144],{"fill":747,"d":5145},"m123.602 17.66 62.31-31.155",[745,5147],{"d":5148,"style":5088},"m188.153-14.616-3.81.395 1.658.681-.45 1.735Z",[737,5150,5151,5158],{"stroke":747,"fontFamily":835,"fontSize":836},[737,5152,5154],{"transform":5153},"translate(23.261 -70.98)",[745,5155],{"d":5156,"fill":739,"stroke":739,"className":5157,"style":804},"M-54.196 19.847Q-54.196 19.519-54.061 19.218Q-53.926 18.918-53.690 18.697Q-53.454 18.477-53.150 18.357Q-52.845 18.237-52.521 18.237Q-52.015 18.237-51.666 18.340Q-51.318 18.442-51.318 18.818Q-51.318 18.965-51.415 19.066Q-51.512 19.167-51.659 19.167Q-51.813 19.167-51.912 19.068Q-52.011 18.969-52.011 18.818Q-52.011 18.630-51.871 18.538Q-52.073 18.487-52.514 18.487Q-52.869 18.487-53.098 18.683Q-53.327 18.880-53.428 19.189Q-53.529 19.499-53.529 19.847Q-53.529 20.196-53.403 20.502Q-53.276 20.808-53.021 20.992Q-52.767 21.177-52.411 21.177Q-52.189 21.177-52.005 21.093Q-51.820 21.009-51.685 20.854Q-51.550 20.698-51.492 20.490Q-51.478 20.435-51.424 20.435L-51.311 20.435Q-51.280 20.435-51.258 20.459Q-51.236 20.483-51.236 20.517L-51.236 20.538Q-51.321 20.825-51.509 21.023Q-51.697 21.221-51.962 21.324Q-52.227 21.426-52.521 21.426Q-52.951 21.426-53.339 21.220Q-53.727 21.013-53.961 20.650Q-54.196 20.288-54.196 19.847M-50.590 20.630Q-50.590 20.298-50.366 20.071Q-50.142 19.844-49.798 19.716Q-49.455 19.587-49.082 19.535Q-48.710 19.482-48.406 19.482L-48.406 19.229Q-48.406 19.024-48.513 18.844Q-48.621 18.665-48.802 18.562Q-48.983 18.460-49.192 18.460Q-49.598 18.460-49.834 18.552Q-49.745 18.589-49.699 18.673Q-49.653 18.757-49.653 18.859Q-49.653 18.955-49.699 19.034Q-49.745 19.112-49.826 19.157Q-49.906 19.201-49.995 19.201Q-50.145 19.201-50.246 19.104Q-50.347 19.006-50.347 18.859Q-50.347 18.237-49.192 18.237Q-48.980 18.237-48.730 18.301Q-48.481 18.364-48.279 18.483Q-48.077 18.603-47.951 18.788Q-47.824 18.972-47.824 19.215L-47.824 20.791Q-47.824 20.907-47.763 21.003Q-47.701 21.098-47.589 21.098Q-47.479 21.098-47.414 21.004Q-47.349 20.910-47.349 20.791L-47.349 20.343L-47.083 20.343L-47.083 20.791Q-47.083 21.061-47.310 21.226Q-47.537 21.392-47.818 21.392Q-48.026 21.392-48.163 21.238Q-48.300 21.085-48.323 20.869Q-48.470 21.136-48.752 21.281Q-49.034 21.426-49.359 21.426Q-49.636 21.426-49.920 21.351Q-50.203 21.276-50.396 21.097Q-50.590 20.917-50.590 20.630M-49.974 20.630Q-49.974 20.804-49.874 20.934Q-49.773 21.064-49.617 21.134Q-49.462 21.204-49.298 21.204Q-49.079 21.204-48.870 21.107Q-48.662 21.009-48.534 20.828Q-48.406 20.647-48.406 20.421L-48.406 19.693Q-48.730 19.693-49.096 19.784Q-49.462 19.875-49.718 20.087Q-49.974 20.298-49.974 20.630M-45.022 22.715L-46.652 22.715L-46.652 22.435Q-46.423 22.435-46.274 22.400Q-46.126 22.366-46.126 22.226L-46.126 18.880Q-46.126 18.709-46.262 18.668Q-46.399 18.627-46.652 18.627L-46.652 18.347L-45.572 18.272L-45.572 18.678Q-45.350 18.477-45.063 18.374Q-44.776 18.272-44.468 18.272Q-44.041 18.272-43.677 18.485Q-43.313 18.699-43.099 19.063Q-42.885 19.427-42.885 19.847Q-42.885 20.292-43.125 20.656Q-43.364 21.020-43.757 21.223Q-44.150 21.426-44.594 21.426Q-44.861 21.426-45.109 21.326Q-45.357 21.225-45.545 21.044L-45.545 22.226Q-45.545 22.363-45.396 22.399Q-45.247 22.435-45.022 22.435L-45.022 22.715M-45.545 19.027L-45.545 20.637Q-45.411 20.890-45.169 21.047Q-44.926 21.204-44.649 21.204Q-44.321 21.204-44.068 21.003Q-43.815 20.801-43.682 20.483Q-43.549 20.165-43.549 19.847Q-43.549 19.618-43.614 19.389Q-43.678 19.160-43.807 18.962Q-43.935 18.764-44.130 18.644Q-44.324 18.525-44.557 18.525Q-44.851 18.525-45.119 18.654Q-45.387 18.784-45.545 19.027M-41.850 20.938Q-41.850 20.770-41.727 20.647Q-41.604 20.524-41.429 20.524Q-41.262 20.524-41.139 20.647Q-41.016 20.770-41.016 20.938Q-41.016 21.112-41.139 21.235Q-41.262 21.358-41.429 21.358Q-41.604 21.358-41.727 21.235Q-41.850 21.112-41.850 20.938",[759],[737,5159,5160],{"transform":5153},[745,5161],{"d":5162,"fill":739,"stroke":739,"className":5163,"style":804},"M-33.406 21.358L-35.936 21.358L-35.936 21.078Q-34.968 21.078-34.968 20.869L-34.968 17.250Q-35.361 17.438-35.983 17.438L-35.983 17.157Q-35.566 17.157-35.202 17.056Q-34.838 16.956-34.582 16.710L-34.456 16.710Q-34.391 16.727-34.374 16.795L-34.374 20.869Q-34.374 21.078-33.406 21.078",[759],[737,5165,5166,5172],{"stroke":747,"fontFamily":835,"fontSize":836},[737,5167,5169],{"transform":5168},"translate(211.05 -70.98)",[745,5170],{"d":5156,"fill":739,"stroke":739,"className":5171,"style":804},[759],[737,5173,5174],{"transform":5168},[745,5175],{"d":5162,"fill":739,"stroke":739,"className":5176,"style":804},[759],[947,5178,5180],{"className":5179},[950],"Flow network reducing bipartite matching to max-flow with unit-capacity edges.",[381,5182,5183,5186,5187,5231,5232,5279],{},[455,5184,5185],{},"Solve with the black box."," Run any max-flow algorithm (Ford–Fulkerson or\nEdmonds–Karp) and let ",[385,5188,5190],{"className":5189},[388],[385,5191,5193],{"className":5192,"ariaHidden":393},[392],[385,5194,5196,5199],{"className":5195},[397],[385,5197],{"className":5198,"style":2501},[401],[385,5200,5202,5205],{"className":5201},[406],[385,5203,2506],{"className":5204,"style":2505},[406,407],[385,5206,5208],{"className":5207},[1069],[385,5209,5211],{"className":5210},[1073],[385,5212,5214],{"className":5213},[1077],[385,5215,5218],{"className":5216,"style":5217},[1081],"height:0.6887em;",[385,5219,5220,5223],{"style":1085},[385,5221],{"className":5222,"style":1090},[1089],[385,5224,5226],{"className":5225},[1094,1095,1096,1097],[385,5227,5230],{"className":5228},[5229,1097],"mbin","∗"," be the maximum flow. The value ",[385,5233,5235],{"className":5234},[388],[385,5236,5238],{"className":5237,"ariaHidden":393},[392],[385,5239,5241,5244,5247,5276],{"className":5240},[397],[385,5242],{"className":5243,"style":402},[401],[385,5245,1498],{"className":5246},[406],[385,5248,5250,5253],{"className":5249},[406],[385,5251,2506],{"className":5252,"style":2505},[406,407],[385,5254,5256],{"className":5255},[1069],[385,5257,5259],{"className":5258},[1073],[385,5260,5262],{"className":5261},[1077],[385,5263,5265],{"className":5264,"style":5217},[1081],[385,5266,5267,5270],{"style":1085},[385,5268],{"className":5269,"style":1090},[1089],[385,5271,5273],{"className":5272},[1094,1095,1096,1097],[385,5274,5230],{"className":5275},[5229,1097],[385,5277,1498],{"className":5278},[406]," is the size\nof the largest matching.",[381,5281,5282,5285,5286,5288,5289,5396],{},[455,5283,5284],{},"Transform the output."," A flow value is just a number; the ",[447,5287,4489],{}," is\nrecovered by reading off which compatibility edges ",[385,5290,5292],{"className":5291},[388],[385,5293,5295,5350],{"className":5294,"ariaHidden":393},[392],[385,5296,5298,5301,5341,5344,5347],{"className":5297},[397],[385,5299],{"className":5300,"style":4389},[401],[385,5302,5304,5307],{"className":5303},[406],[385,5305,4123],{"className":5306},[406,407],[385,5308,5310],{"className":5309},[1069],[385,5311,5313,5333],{"className":5312},[1073,2441],[385,5314,5316,5330],{"className":5315},[1077],[385,5317,5319],{"className":5318,"style":4408},[1081],[385,5320,5321,5324],{"style":2451},[385,5322],{"className":5323,"style":1090},[1089],[385,5325,5327],{"className":5326},[1094,1095,1096,1097],[385,5328,4358],{"className":5329},[406,407,1097],[385,5331,2466],{"className":5332},[2465],[385,5334,5336],{"className":5335},[1077],[385,5337,5339],{"className":5338,"style":2473},[1081],[385,5340],{},[385,5342],{"className":5343,"style":640},[422],[385,5345,4630],{"className":5346},[644],[385,5348],{"className":5349,"style":640},[422],[385,5351,5353,5356],{"className":5352},[397],[385,5354],{"className":5355,"style":4444},[401],[385,5357,5359,5362],{"className":5358},[406],[385,5360,4241],{"className":5361,"style":4240},[406,407],[385,5363,5365],{"className":5364},[1069],[385,5366,5368,5388],{"className":5367},[1073,2441],[385,5369,5371,5385],{"className":5370},[1077],[385,5372,5374],{"className":5373,"style":4408},[1081],[385,5375,5376,5379],{"style":4256},[385,5377],{"className":5378,"style":1090},[1089],[385,5380,5382],{"className":5381},[1094,1095,1096,1097],[385,5383,4369],{"className":5384,"style":4368},[406,407,1097],[385,5386,2466],{"className":5387},[2465],[385,5389,5391],{"className":5390},[1077],[385,5392,5394],{"className":5393,"style":4483},[1081],[385,5395],{}," carry one unit\nof flow. Those edges are the assignment.",[381,5398,5399],{},"Two claims make the reduction correct, and it's worth separating\nthem:",[1455,5401,5402,5588],{},[1458,5403,5404,5407,5408,5423,5424,5427,5428,5571,5572,5587],{},[447,5405,5406],{},"Easy direction."," If some ",[385,5409,5411],{"className":5410},[388],[385,5412,5414],{"className":5413,"ariaHidden":393},[392],[385,5415,5417,5420],{"className":5416},[397],[385,5418],{"className":5419,"style":474},[401],[385,5421,688],{"className":5422,"style":687},[406,407]," tasks ",[455,5425,5426],{},"can"," be assigned, then pushing one unit\nalong each chosen ",[385,5429,5431],{"className":5430},[388],[385,5432,5434,5452,5507,5562],{"className":5433,"ariaHidden":393},[392],[385,5435,5437,5440,5443,5446,5449],{"className":5436},[397],[385,5438],{"className":5439,"style":615},[401],[385,5441,4587],{"className":5442},[406,407],[385,5444],{"className":5445,"style":640},[422],[385,5447,4630],{"className":5448},[644],[385,5450],{"className":5451,"style":640},[422],[385,5453,5455,5458,5498,5501,5504],{"className":5454},[397],[385,5456],{"className":5457,"style":4389},[401],[385,5459,5461,5464],{"className":5460},[406],[385,5462,4123],{"className":5463},[406,407],[385,5465,5467],{"className":5466},[1069],[385,5468,5470,5490],{"className":5469},[1073,2441],[385,5471,5473,5487],{"className":5472},[1077],[385,5474,5476],{"className":5475,"style":4408},[1081],[385,5477,5478,5481],{"style":2451},[385,5479],{"className":5480,"style":1090},[1089],[385,5482,5484],{"className":5483},[1094,1095,1096,1097],[385,5485,4358],{"className":5486},[406,407,1097],[385,5488,2466],{"className":5489},[2465],[385,5491,5493],{"className":5492},[1077],[385,5494,5496],{"className":5495,"style":2473},[1081],[385,5497],{},[385,5499],{"className":5500,"style":640},[422],[385,5502,4630],{"className":5503},[644],[385,5505],{"className":5506,"style":640},[422],[385,5508,5510,5513,5553,5556,5559],{"className":5509},[397],[385,5511],{"className":5512,"style":4444},[401],[385,5514,5516,5519],{"className":5515},[406],[385,5517,4241],{"className":5518,"style":4240},[406,407],[385,5520,5522],{"className":5521},[1069],[385,5523,5525,5545],{"className":5524},[1073,2441],[385,5526,5528,5542],{"className":5527},[1077],[385,5529,5531],{"className":5530,"style":4408},[1081],[385,5532,5533,5536],{"style":4256},[385,5534],{"className":5535,"style":1090},[1089],[385,5537,5539],{"className":5538},[1094,1095,1096,1097],[385,5540,4369],{"className":5541,"style":4368},[406,407,1097],[385,5543,2466],{"className":5544},[2465],[385,5546,5548],{"className":5547},[1077],[385,5549,5551],{"className":5550,"style":4483},[1081],[385,5552],{},[385,5554],{"className":5555,"style":640},[422],[385,5557,4630],{"className":5558},[644],[385,5560],{"className":5561,"style":640},[422],[385,5563,5565,5568],{"className":5564},[397],[385,5566],{"className":5567,"style":4604},[401],[385,5569,4123],{"className":5570},[406,407]," path gives a flow of value ",[385,5573,5575],{"className":5574},[388],[385,5576,5578],{"className":5577,"ariaHidden":393},[392],[385,5579,5581,5584],{"className":5580},[397],[385,5582],{"className":5583,"style":474},[401],[385,5585,688],{"className":5586,"style":687},[406,407],". So\nthe max flow is at least as large as the best matching.",[1458,5589,5590,5593,5594,576,5596,2737,5611,5626,5627,5630,5631,5634,5635,5713,5714,516,5730,5745,5746,5761,5762,576,5777,5780,5781,5784,5785,520],{},[447,5591,5592],{},"Less easy direction."," If the max flow value ",[455,5595,3047],{},[385,5597,5599],{"className":5598},[388],[385,5600,5602],{"className":5601,"ariaHidden":393},[392],[385,5603,5605,5608],{"className":5604},[397],[385,5606],{"className":5607,"style":474},[401],[385,5609,688],{"className":5610,"style":687},[406,407],[385,5612,5614],{"className":5613},[388],[385,5615,5617],{"className":5616,"ariaHidden":393},[392],[385,5618,5620,5623],{"className":5619},[397],[385,5621],{"className":5622,"style":474},[401],[385,5624,688],{"className":5625,"style":687},[406,407]," tasks can be\nassigned. This needs the ",[455,5628,5629],{},"integrality theorem",": when every edge capacity is\nan integer, some maximum flow is ",[455,5632,5633],{},"integral"," (every ",[385,5636,5638],{"className":5637},[388],[385,5639,5641,5701],{"className":5640,"ariaHidden":393},[392],[385,5642,5644,5647,5692,5695,5698],{"className":5643},[397],[385,5645],{"className":5646,"style":2501},[401],[385,5648,5650,5653],{"className":5649},[406],[385,5651,2506],{"className":5652,"style":2505},[406,407],[385,5654,5656],{"className":5655},[1069],[385,5657,5659,5684],{"className":5658},[1073,2441],[385,5660,5662,5681],{"className":5661},[1077],[385,5663,5665],{"className":5664,"style":4197},[1081],[385,5666,5668,5671],{"style":5667},"top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;",[385,5669],{"className":5670,"style":1090},[1089],[385,5672,5674],{"className":5673},[1094,1095,1096,1097],[385,5675,5677],{"className":5676},[406,1097],[385,5678,5680],{"className":5679,"style":1480},[406,407,1097],"uv",[385,5682,2466],{"className":5683},[2465],[385,5685,5687],{"className":5686},[1077],[385,5688,5690],{"className":5689,"style":2473},[1081],[385,5691],{},[385,5693],{"className":5694,"style":640},[422],[385,5696,645],{"className":5697},[644],[385,5699],{"className":5700,"style":640},[422],[385,5702,5704,5708],{"className":5703},[397],[385,5705],{"className":5706,"style":5707},[401],"height:0.6889em;",[385,5709,5712],{"className":5710},[406,5711],"mathbb","Z",")\nand Ford–Fulkerson actually finds such a flow. With unit capacities,\nintegral means each edge carries ",[385,5715,5717],{"className":5716},[388],[385,5718,5720],{"className":5719,"ariaHidden":393},[392],[385,5721,5723,5726],{"className":5722},[397],[385,5724],{"className":5725,"style":4911},[401],[385,5727,5729],{"className":5728},[406],"0",[385,5731,5733],{"className":5732},[388],[385,5734,5736],{"className":5735,"ariaHidden":393},[392],[385,5737,5739,5742],{"className":5738},[397],[385,5740],{"className":5741,"style":4911},[401],[385,5743,1285],{"className":5744},[406],", and an integral flow decomposes\ninto a collection of edge-disjoint ",[385,5747,5749],{"className":5748},[388],[385,5750,5752],{"className":5751,"ariaHidden":393},[392],[385,5753,5755,5758],{"className":5754},[397],[385,5756],{"className":5757,"style":615},[401],[385,5759,4587],{"className":5760},[406,407],"–",[385,5763,5765],{"className":5764},[388],[385,5766,5768],{"className":5767,"ariaHidden":393},[392],[385,5769,5771,5774],{"className":5770},[397],[385,5772],{"className":5773,"style":4604},[401],[385,5775,4123],{"className":5776},[406,407],[455,5778,5779],{},"path flows",". Each path uses one\ntask and one worker, so the paths ",[447,5782,5783],{},"are"," a matching of size ",[385,5786,5788],{"className":5787},[388],[385,5789,5791],{"className":5790,"ariaHidden":393},[392],[385,5792,5794,5797],{"className":5793},[397],[385,5795],{"className":5796,"style":474},[401],[385,5798,688],{"className":5799,"style":687},[406,407],[381,5801,5802,5803,5857,5858,5873,5874,5889,5890,520],{},"Both directions together give ",[385,5804,5806],{"className":5805},[388],[385,5807,5809],{"className":5808,"ariaHidden":393},[392],[385,5810,5812,5815,5818,5847,5850,5853],{"className":5811},[397],[385,5813],{"className":5814,"style":402},[401],[385,5816,1498],{"className":5817},[406],[385,5819,5821,5824],{"className":5820},[406],[385,5822,2506],{"className":5823,"style":2505},[406,407],[385,5825,5827],{"className":5826},[1069],[385,5828,5830],{"className":5829},[1073],[385,5831,5833],{"className":5832},[1077],[385,5834,5836],{"className":5835,"style":5217},[1081],[385,5837,5838,5841],{"style":1085},[385,5839],{"className":5840,"style":1090},[1089],[385,5842,5844],{"className":5843},[1094,1095,1096,1097],[385,5845,5230],{"className":5846},[5229,1097],[385,5848,1498],{"className":5849},[406],[385,5851],{"className":5852,"style":640},[422],[385,5854,5856],{"className":5855},[644],"="," (size of maximum matching), so the\nreduction is valid. The transform–solve–transform diagram now does real work: build\nthe network (",[385,5859,5861],{"className":5860},[388],[385,5862,5864],{"className":5863,"ariaHidden":393},[392],[385,5865,5867,5870],{"className":5866},[397],[385,5868],{"className":5869,"style":2501},[401],[385,5871,2506],{"className":5872,"style":2505},[406,407],"), call the flow solver (",[385,5875,5877],{"className":5876},[388],[385,5878,5880],{"className":5879,"ariaHidden":393},[392],[385,5881,5883,5886],{"className":5882},[397],[385,5884],{"className":5885,"style":589},[401],[385,5887,2252],{"className":5888,"style":2251},[406,407],"), decompose the integral flow into\npaths (the output transformer). We obtained a matching algorithm without\nwriting one, purely because ",[385,5891,5893],{"className":5892},[388],[385,5894,5896,5957],{"className":5895,"ariaHidden":393},[392],[385,5897,5899,5902,5914,5954],{"className":5898},[397],[385,5900],{"className":5901,"style":2501},[401],[385,5903,5905,5911],{"className":5904},[1690,1691],[385,5906,5908],{"className":5907},[406,550],[385,5909,4536],{"className":5910},[406],[385,5912],{"className":5913,"style":640},[422],[385,5915,5917,5920],{"className":5916},[644],[385,5918,2434],{"className":5919},[644],[385,5921,5923],{"className":5922},[1069],[385,5924,5926,5946],{"className":5925},[1073,2441],[385,5927,5929,5943],{"className":5928},[1077],[385,5930,5932],{"className":5931,"style":2448},[1081],[385,5933,5934,5937],{"style":2451},[385,5935],{"className":5936,"style":1090},[1089],[385,5938,5940],{"className":5939},[1094,1095,1096,1097],[385,5941,479],{"className":5942,"style":2461},[406,407,1097],[385,5944,2466],{"className":5945},[2465],[385,5947,5949],{"className":5948},[1077],[385,5950,5952],{"className":5951,"style":2473},[1081],[385,5953],{},[385,5955],{"className":5956,"style":640},[422],[385,5958,5960,5963],{"className":5959},[397],[385,5961],{"className":5962,"style":474},[401],[385,5964,5966],{"className":5965},[1690,1691],[385,5967,5969],{"className":5968},[406,550],[385,5970,4558],{"className":5971},[406],[502,5973,5975],{"id":5974},"a-small-reduction-between-decision-problems","A small reduction between decision problems",[381,5977,5978,5979,5982,5983,5985,5986,6008,6009,6024,6025,6040,6041,6056,6057,6060,6061,6076,6077,6080],{},"The matching reduction reused an ",[447,5980,5981],{},"easy"," solver to solve another easy problem.\nThe reductions that drive intractability go the other way, relating two\n",[447,5984,3067],{}," problems with no known fast solver, but the mechanism is identical.\nHere is a textbook example. ",[385,5987,5989],{"className":5988},[388],[385,5990,5992],{"className":5991,"ariaHidden":393},[392],[385,5993,5995,5998],{"className":5994},[397],[385,5996],{"className":5997,"style":2501},[401],[385,5999,6001],{"className":6000},[1690,1691],[385,6002,6004],{"className":6003},[406,550],[385,6005,6007],{"className":6006},[406],"Independent-Set"," asks:\ngiven a graph ",[385,6010,6012],{"className":6011},[388],[385,6013,6015],{"className":6014,"ariaHidden":393},[392],[385,6016,6018,6021],{"className":6017},[397],[385,6019],{"className":6020,"style":589},[401],[385,6022,1312],{"className":6023},[406,407]," and integer ",[385,6026,6028],{"className":6027},[388],[385,6029,6031],{"className":6030,"ariaHidden":393},[392],[385,6032,6034,6037],{"className":6033},[397],[385,6035],{"className":6036,"style":474},[401],[385,6038,688],{"className":6039,"style":687},[406,407],", is there a set of ",[385,6042,6044],{"className":6043},[388],[385,6045,6047],{"className":6046,"ariaHidden":393},[392],[385,6048,6050,6053],{"className":6049},[397],[385,6051],{"className":6052,"style":474},[401],[385,6054,688],{"className":6055,"style":687},[406,407]," vertices no two of\nwhich are adjacent? ",[455,6058,6059],{},"Clique"," asks: is there a set of ",[385,6062,6064],{"className":6063},[388],[385,6065,6067],{"className":6066,"ariaHidden":393},[392],[385,6068,6070,6073],{"className":6069},[397],[385,6071],{"className":6072,"style":474},[401],[385,6074,688],{"className":6075,"style":687},[406,407]," vertices that are\n",[447,6078,6079],{},"all"," pairwise adjacent? These are the same question asked of complementary\ngraphs.",[381,6082,6083,6084,6114,6115,6136,6137,6140,6141,6192,6193,6208,6209,6252,6253,6256,6257,6272,6273,6290,6291,6306,6307,6322,6323,6366,6367,6511,6512,6555,6556,6571,6572,6648,6649],{},"Given an instance ",[385,6085,6087],{"className":6086},[388],[385,6088,6090],{"className":6089,"ariaHidden":393},[392],[385,6091,6093,6096,6099,6102,6105,6108,6111],{"className":6092},[397],[385,6094],{"className":6095,"style":402},[401],[385,6097,414],{"className":6098},[413],[385,6100,1312],{"className":6101},[406,407],[385,6103,558],{"className":6104},[557],[385,6106],{"className":6107,"style":423},[422],[385,6109,688],{"className":6110,"style":687},[406,407],[385,6112,444],{"className":6113},[443]," of ",[385,6116,6118],{"className":6117},[388],[385,6119,6121],{"className":6120,"ariaHidden":393},[392],[385,6122,6124,6127],{"className":6123},[397],[385,6125],{"className":6126,"style":2501},[401],[385,6128,6130],{"className":6129},[1690,1691],[385,6131,6133],{"className":6132},[406,550],[385,6134,6007],{"className":6135},[406],", build the ",[455,6138,6139],{},"complement","\ngraph ",[385,6142,6144],{"className":6143},[388],[385,6145,6147],{"className":6146,"ariaHidden":393},[392],[385,6148,6150,6154],{"className":6149},[397],[385,6151],{"className":6152,"style":6153},[401],"height:0.8201em;",[385,6155,6158],{"className":6156},[406,6157],"accent",[385,6159,6161],{"className":6160},[1073],[385,6162,6164],{"className":6163},[1077],[385,6165,6167,6177],{"className":6166,"style":6153},[1081],[385,6168,6170,6174],{"style":6169},"top:-3em;",[385,6171],{"className":6172,"style":6173},[1089],"height:3em;",[385,6175,1312],{"className":6176},[406,407],[385,6178,6180,6183],{"style":6179},"top:-3.2523em;",[385,6181],{"className":6182,"style":6173},[1089],[385,6184,6188],{"className":6185,"style":6187},[6186],"accent-body","left:-0.1667em;",[385,6189,6191],{"className":6190},[406],"ˉ"," on the same vertices, where ",[385,6194,6196],{"className":6195},[388],[385,6197,6199],{"className":6198,"ariaHidden":393},[392],[385,6200,6202,6205],{"className":6201},[397],[385,6203],{"className":6204,"style":615},[401],[385,6206,5680],{"className":6207,"style":1480},[406,407]," is an edge of ",[385,6210,6212],{"className":6211},[388],[385,6213,6215],{"className":6214,"ariaHidden":393},[392],[385,6216,6218,6221],{"className":6217},[397],[385,6219],{"className":6220,"style":6153},[401],[385,6222,6224],{"className":6223},[406,6157],[385,6225,6227],{"className":6226},[1073],[385,6228,6230],{"className":6229},[1077],[385,6231,6233,6241],{"className":6232,"style":6153},[1081],[385,6234,6235,6238],{"style":6169},[385,6236],{"className":6237,"style":6173},[1089],[385,6239,1312],{"className":6240},[406,407],[385,6242,6243,6246],{"style":6179},[385,6244],{"className":6245,"style":6173},[1089],[385,6247,6249],{"className":6248,"style":6187},[6186],[385,6250,6191],{"className":6251},[406]," exactly\nwhen it is ",[447,6254,6255],{},"not"," an edge of ",[385,6258,6260],{"className":6259},[388],[385,6261,6263],{"className":6262,"ariaHidden":393},[392],[385,6264,6266,6269],{"className":6265},[397],[385,6267],{"className":6268,"style":589},[401],[385,6270,1312],{"className":6271},[406,407],". A set ",[385,6274,6276],{"className":6275},[388],[385,6277,6279],{"className":6278,"ariaHidden":393},[392],[385,6280,6282,6285],{"className":6281},[397],[385,6283],{"className":6284,"style":589},[401],[385,6286,6289],{"className":6287,"style":6288},[406,407],"margin-right:0.0576em;","S"," is independent in ",[385,6292,6294],{"className":6293},[388],[385,6295,6297],{"className":6296,"ariaHidden":393},[392],[385,6298,6300,6303],{"className":6299},[397],[385,6301],{"className":6302,"style":589},[401],[385,6304,1312],{"className":6305},[406,407]," (no edges\ninside it) precisely when ",[385,6308,6310],{"className":6309},[388],[385,6311,6313],{"className":6312,"ariaHidden":393},[392],[385,6314,6316,6319],{"className":6315},[397],[385,6317],{"className":6318,"style":589},[401],[385,6320,6289],{"className":6321,"style":6288},[406,407]," is a clique in ",[385,6324,6326],{"className":6325},[388],[385,6327,6329],{"className":6328,"ariaHidden":393},[392],[385,6330,6332,6335],{"className":6331},[397],[385,6333],{"className":6334,"style":6153},[401],[385,6336,6338],{"className":6337},[406,6157],[385,6339,6341],{"className":6340},[1073],[385,6342,6344],{"className":6343},[1077],[385,6345,6347,6355],{"className":6346,"style":6153},[1081],[385,6348,6349,6352],{"style":6169},[385,6350],{"className":6351,"style":6173},[1089],[385,6353,1312],{"className":6354},[406,407],[385,6356,6357,6360],{"style":6179},[385,6358],{"className":6359,"style":6173},[1089],[385,6361,6363],{"className":6362,"style":6187},[6186],[385,6364,6191],{"className":6365},[406]," (all edges inside it).\nSo\n",[385,6368,6370],{"className":6369},[388],[385,6371,6373,6406,6434,6496],{"className":6372,"ariaHidden":393},[392],[385,6374,6376,6379,6382,6385,6388,6391,6394,6397,6400,6403],{"className":6375},[397],[385,6377],{"className":6378,"style":402},[401],[385,6380,414],{"className":6381},[413],[385,6383,1312],{"className":6384},[406,407],[385,6386,558],{"className":6387},[557],[385,6389],{"className":6390,"style":423},[422],[385,6392,688],{"className":6393,"style":687},[406,407],[385,6395,444],{"className":6396},[443],[385,6398],{"className":6399,"style":640},[422],[385,6401,645],{"className":6402},[644],[385,6404],{"className":6405,"style":640},[422],[385,6407,6409,6412,6419,6422,6425,6428,6431],{"className":6408},[397],[385,6410],{"className":6411,"style":2501},[401],[385,6413,6415],{"className":6414},[406,550],[385,6416,6007],{"className":6417},[406,6418],"textbf",[385,6420],{"className":6421,"style":640},[422],[385,6423],{"className":6424,"style":640},[422],[385,6426,2558],{"className":6427},[644],[385,6429],{"className":6430,"style":640},[422],[385,6432],{"className":6433,"style":640},[422],[385,6435,6437,6441,6444,6475,6478,6481,6484,6487,6490,6493],{"className":6436},[397],[385,6438],{"className":6439,"style":6440},[401],"height:1.0701em;vertical-align:-0.25em;",[385,6442,414],{"className":6443},[413],[385,6445,6447],{"className":6446},[406,6157],[385,6448,6450],{"className":6449},[1073],[385,6451,6453],{"className":6452},[1077],[385,6454,6456,6464],{"className":6455,"style":6153},[1081],[385,6457,6458,6461],{"style":6169},[385,6459],{"className":6460,"style":6173},[1089],[385,6462,1312],{"className":6463},[406,407],[385,6465,6466,6469],{"style":6179},[385,6467],{"className":6468,"style":6173},[1089],[385,6470,6472],{"className":6471,"style":6187},[6186],[385,6473,6191],{"className":6474},[406],[385,6476,558],{"className":6477},[557],[385,6479],{"className":6480,"style":423},[422],[385,6482,688],{"className":6483,"style":687},[406,407],[385,6485,444],{"className":6486},[443],[385,6488],{"className":6489,"style":640},[422],[385,6491,645],{"className":6492},[644],[385,6494],{"className":6495,"style":640},[422],[385,6497,6499,6502,6508],{"className":6498},[397],[385,6500],{"className":6501,"style":2501},[401],[385,6503,6505],{"className":6504},[406,550],[385,6506,6059],{"className":6507},[406,6418],[385,6509,520],{"className":6510},[406],"\nConstructing ",[385,6513,6515],{"className":6514},[388],[385,6516,6518],{"className":6517,"ariaHidden":393},[392],[385,6519,6521,6524],{"className":6520},[397],[385,6522],{"className":6523,"style":6153},[401],[385,6525,6527],{"className":6526},[406,6157],[385,6528,6530],{"className":6529},[1073],[385,6531,6533],{"className":6532},[1077],[385,6534,6536,6544],{"className":6535,"style":6153},[1081],[385,6537,6538,6541],{"style":6169},[385,6539],{"className":6540,"style":6173},[1089],[385,6542,1312],{"className":6543},[406,407],[385,6545,6546,6549],{"style":6179},[385,6547],{"className":6548,"style":6173},[1089],[385,6550,6552],{"className":6551,"style":6187},[6186],[385,6553,6191],{"className":6554},[406]," takes time polynomial in the size of ",[385,6557,6559],{"className":6558},[388],[385,6560,6562],{"className":6561,"ariaHidden":393},[392],[385,6563,6565,6568],{"className":6564},[397],[385,6566],{"className":6567,"style":589},[401],[385,6569,1312],{"className":6570},[406,407],", so this is a\nvalid reduction ",[385,6573,6575],{"className":6574},[388],[385,6576,6578,6636],{"className":6577,"ariaHidden":393},[392],[385,6579,6581,6584,6590,6593,6633],{"className":6580},[397],[385,6582],{"className":6583,"style":2501},[401],[385,6585,6587],{"className":6586},[406,550],[385,6588,6007],{"className":6589},[406,6418],[385,6591],{"className":6592,"style":640},[422],[385,6594,6596,6599],{"className":6595},[644],[385,6597,2434],{"className":6598},[644],[385,6600,6602],{"className":6601},[1069],[385,6603,6605,6625],{"className":6604},[1073,2441],[385,6606,6608,6622],{"className":6607},[1077],[385,6609,6611],{"className":6610,"style":2448},[1081],[385,6612,6613,6616],{"style":2451},[385,6614],{"className":6615,"style":1090},[1089],[385,6617,6619],{"className":6618},[1094,1095,1096,1097],[385,6620,479],{"className":6621,"style":2461},[406,407,1097],[385,6623,2466],{"className":6624},[2465],[385,6626,6628],{"className":6627},[1077],[385,6629,6631],{"className":6630,"style":2473},[1081],[385,6632],{},[385,6634],{"className":6635,"style":640},[422],[385,6637,6639,6642],{"className":6638},[397],[385,6640],{"className":6641,"style":2501},[401],[385,6643,6645],{"className":6644},[406,550],[385,6646,6059],{"className":6647},[406,6418],", and, since\ncomplementation is its own inverse, the reverse reduction holds too. The two\nproblems are equivalent in difficulty: a fast algorithm for either yields one\nfor the other.",[1277,6650,6651],{},[986,6652,6656],{"href":6653,"ariaDescribedBy":6654,"dataFootnoteRef":376,"id":6655},"#user-content-fn-erickson-reduce",[1283],"user-content-fnref-erickson-reduce","4",[724,6658,6660,6938],{"className":6659},[727,728],[730,6661,6665],{"xmlns":732,"width":6662,"height":6663,"viewBox":6664},"356.100","158.155","-75 -75 267.075 118.616",[737,6666,6667,6679,6682,6689,6701,6704,6711,6723,6726,6801,6812,6815,6821,6832,6835,6841,6852,6855,6915],{"stroke":739,"style":740},[737,6668,6669,6672],{"fill":781,"stroke":782,"style":793},[745,6670],{"d":6671},"M-6.309-64.557a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6673,6675],{"transform":6674},"translate(-2.312 -34.089)",[745,6676],{"d":6677,"fill":739,"stroke":739,"className":6678,"style":760},"M-9.515-27.568L-12.547-27.568L-12.547-27.884Q-11.396-27.884-11.396-28.179L-11.396-32.903Q-11.884-32.670-12.605-32.670L-12.605-32.986Q-11.475-32.986-10.913-33.562L-10.768-33.562Q-10.733-33.562-10.700-33.529Q-10.667-33.496-10.667-33.461L-10.667-28.179Q-10.667-27.884-9.515-27.884",[759],[745,6680],{"fill":747,"d":6681},"M-41.487-38.998a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6683,6685],{"transform":6684},"translate(-37.49 -8.53)",[745,6686],{"d":6687,"fill":739,"stroke":739,"className":6688,"style":760},"M-9.515-27.568L-12.965-27.568L-12.965-27.801Q-12.965-27.814-12.934-27.845L-11.480-29.422Q-11.014-29.919-10.761-30.224Q-10.508-30.530-10.317-30.941Q-10.126-31.352-10.126-31.791Q-10.126-32.380-10.449-32.813Q-10.772-33.246-11.352-33.246Q-11.616-33.246-11.862-33.136Q-12.108-33.026-12.284-32.839Q-12.460-32.652-12.556-32.402L-12.477-32.402Q-12.275-32.402-12.132-32.266Q-11.989-32.130-11.989-31.914Q-11.989-31.708-12.132-31.569Q-12.275-31.431-12.477-31.431Q-12.679-31.431-12.822-31.574Q-12.965-31.716-12.965-31.914Q-12.965-32.376-12.728-32.749Q-12.490-33.123-12.090-33.342Q-11.691-33.562-11.242-33.562Q-10.719-33.562-10.265-33.347Q-9.810-33.131-9.537-32.732Q-9.265-32.332-9.265-31.791Q-9.265-31.396-9.436-31.042Q-9.608-30.688-9.873-30.409Q-10.139-30.130-10.590-29.745Q-11.040-29.361-11.119-29.286L-12.143-28.324L-11.326-28.324Q-10.675-28.324-10.238-28.335Q-9.801-28.346-9.770-28.368Q-9.700-28.451-9.645-28.691Q-9.590-28.930-9.550-29.198L-9.265-29.198",[759],[737,6690,6691,6694],{"fill":781,"stroke":782,"style":793},[745,6692],{"d":6693},"M-28.05 2.356a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6695,6697],{"transform":6696},"translate(-24.054 32.825)",[745,6698],{"d":6699,"fill":739,"stroke":739,"className":6700,"style":760},"M-12.521-28.289L-12.565-28.289Q-12.363-27.972-11.976-27.814Q-11.589-27.656-11.163-27.656Q-10.627-27.656-10.388-28.091Q-10.148-28.526-10.148-29.106Q-10.148-29.686-10.394-30.126Q-10.640-30.565-11.172-30.565L-11.792-30.565Q-11.818-30.565-11.851-30.594Q-11.884-30.622-11.884-30.644L-11.884-30.745Q-11.884-30.776-11.855-30.800Q-11.827-30.824-11.792-30.824L-11.273-30.864Q-10.807-30.864-10.561-31.336Q-10.315-31.809-10.315-32.327Q-10.315-32.754-10.528-33.028Q-10.741-33.303-11.163-33.303Q-11.506-33.303-11.831-33.173Q-12.156-33.044-12.341-32.789L-12.315-32.789Q-12.112-32.789-11.976-32.648Q-11.840-32.507-11.840-32.310Q-11.840-32.112-11.974-31.978Q-12.108-31.844-12.306-31.844Q-12.508-31.844-12.646-31.978Q-12.785-32.112-12.785-32.310Q-12.785-32.899-12.282-33.230Q-11.778-33.562-11.163-33.562Q-10.785-33.562-10.383-33.422Q-9.981-33.281-9.713-33.002Q-9.445-32.723-9.445-32.327Q-9.445-31.778-9.799-31.341Q-10.152-30.903-10.693-30.719Q-10.302-30.640-9.957-30.416Q-9.612-30.192-9.401-29.851Q-9.190-29.510-9.190-29.115Q-9.190-28.733-9.353-28.410Q-9.515-28.087-9.807-27.851Q-10.100-27.616-10.447-27.493Q-10.794-27.370-11.163-27.370Q-11.611-27.370-12.042-27.531Q-12.473-27.691-12.754-28.018Q-13.035-28.346-13.035-28.803Q-13.035-29.018-12.888-29.161Q-12.741-29.304-12.521-29.304Q-12.310-29.304-12.165-29.159Q-12.020-29.014-12.020-28.803Q-12.020-28.592-12.167-28.440Q-12.315-28.289-12.521-28.289",[759],[745,6702],{"fill":747,"d":6703},"M15.433 2.356a7.113 7.113 0 1 0-14.227 0 7.113 7.113 0 0 0 14.227 0Zm-7.114 0",[737,6705,6707],{"transform":6706},"translate(19.429 32.825)",[745,6708],{"d":6709,"fill":739,"stroke":739,"className":6710,"style":760},"M-10.724-29.045L-13.163-29.045L-13.163-29.361L-10.337-33.509Q-10.293-33.562-10.227-33.562L-10.073-33.562Q-10.034-33.562-10.001-33.529Q-9.968-33.496-9.968-33.452L-9.968-29.361L-9.067-29.361L-9.067-29.045L-9.968-29.045L-9.968-28.179Q-9.968-27.884-9.067-27.884L-9.067-27.568L-11.620-27.568L-11.620-27.884Q-11.260-27.884-10.992-27.939Q-10.724-27.994-10.724-28.179L-10.724-29.045M-10.667-32.534L-12.829-29.361L-10.667-29.361",[759],[737,6712,6713,6716],{"fill":781,"stroke":782,"style":793},[745,6714],{"d":6715},"M28.87-38.998a7.113 7.113 0 1 0-14.227 0 7.113 7.113 0 0 0 14.227 0Zm-7.114 0",[737,6717,6719],{"transform":6718},"translate(32.866 -8.53)",[745,6720],{"d":6721,"fill":739,"stroke":739,"className":6722,"style":760},"M-12.596-28.574Q-12.455-28.161-12.095-27.909Q-11.735-27.656-11.299-27.656Q-10.847-27.656-10.581-27.909Q-10.315-28.161-10.212-28.546Q-10.109-28.930-10.109-29.387Q-10.109-31.088-11.018-31.088Q-11.339-31.088-11.568-30.994Q-11.796-30.899-11.926-30.780Q-12.055-30.662-12.167-30.523Q-12.279-30.385-12.315-30.376L-12.398-30.376Q-12.442-30.376-12.473-30.407Q-12.504-30.438-12.504-30.486L-12.504-33.483Q-12.504-33.514-12.468-33.538Q-12.433-33.562-12.407-33.562L-12.367-33.562Q-11.735-33.272-11.062-33.272Q-10.390-33.272-9.748-33.562L-9.722-33.562Q-9.691-33.562-9.658-33.540Q-9.625-33.518-9.625-33.483L-9.625-33.382Q-9.625-33.378-9.634-33.360Q-9.643-33.342-9.643-33.338Q-9.959-32.943-10.429-32.721Q-10.900-32.499-11.396-32.499Q-11.805-32.499-12.187-32.609L-12.187-30.890Q-11.730-31.347-11.018-31.347Q-10.508-31.347-10.109-31.066Q-9.709-30.785-9.487-30.330Q-9.265-29.875-9.265-29.370Q-9.265-28.820-9.544-28.361Q-9.823-27.902-10.289-27.636Q-10.755-27.370-11.299-27.370Q-11.739-27.370-12.123-27.597Q-12.508-27.823-12.736-28.203Q-12.965-28.583-12.965-29.027Q-12.965-29.220-12.833-29.352Q-12.701-29.484-12.504-29.484Q-12.372-29.484-12.268-29.425Q-12.165-29.365-12.106-29.262Q-12.047-29.159-12.047-29.027Q-12.047-28.829-12.174-28.697Q-12.301-28.566-12.504-28.566Q-12.565-28.566-12.596-28.574",[759],[745,6724],{"fill":747,"d":6725},"m-19.662-60.023-23.022 16.726M-46.34-32.043l8.794 27.064M-27.45 2.356H1.006M10.58-4.599l8.793-27.064",[737,6727,6728,6735,6741,6747,6753,6759,6765,6771,6777,6783,6789,6795],{"stroke":747,"fontSize":1880},[737,6729,6731],{"transform":6730},"translate(-48.849 62)",[745,6732],{"d":6733,"fill":739,"stroke":739,"className":6734,"style":760},"M-12.082-29.559Q-12.082-29.001-11.858-28.574Q-11.633-28.148-11.209-27.917Q-10.785-27.687-10.227-27.687Q-9.643-27.687-9.164-27.933Q-8.685-28.179-8.518-28.684L-8.329-29.475Q-8.320-29.493-8.320-29.550Q-8.320-29.642-8.381-29.664Q-8.645-29.717-9.282-29.717Q-9.331-29.717-9.359-29.754Q-9.388-29.792-9.388-29.836Q-9.388-30.033-9.221-30.033L-6.852-30.033Q-6.808-30.033-6.780-29.996Q-6.751-29.959-6.751-29.928Q-6.751-29.858-6.786-29.787Q-6.821-29.717-6.879-29.717Q-7.195-29.717-7.327-29.664Q-7.459-29.611-7.529-29.387L-7.718-28.640L-7.960-27.647Q-7.990-27.568-8.056-27.568Q-8.144-27.568-8.276-27.759Q-8.408-27.950-8.483-28.109Q-8.693-27.858-9.021-27.689Q-9.348-27.520-9.709-27.445Q-10.069-27.370-10.425-27.370Q-11.154-27.370-11.730-27.687Q-12.306-28.003-12.635-28.568Q-12.965-29.132-12.965-29.862Q-12.965-30.627-12.616-31.363Q-12.266-32.099-11.684-32.668Q-11.102-33.237-10.350-33.575Q-9.599-33.914-8.843-33.914Q-8.373-33.914-7.975-33.709Q-7.577-33.505-7.331-33.123L-6.619-33.896Q-6.602-33.914-6.562-33.914L-6.509-33.914Q-6.422-33.914-6.422-33.795L-7.024-31.400Q-7.041-31.321-7.111-31.321L-7.248-31.321Q-7.340-31.321-7.340-31.440Q-7.300-31.620-7.300-31.870Q-7.300-32.332-7.465-32.727Q-7.630-33.123-7.960-33.360Q-8.289-33.597-8.759-33.597Q-9.498-33.597-10.111-33.241Q-10.724-32.885-11.165-32.286Q-11.607-31.686-11.844-30.972Q-12.082-30.257-12.082-29.559",[759],[737,6736,6737],{"transform":6730},[745,6738],{"d":6739,"fill":739,"stroke":739,"className":6740,"style":760},"M-5.406-28.073Q-5.406-28.201-5.337-28.317Q-5.269-28.434-5.153-28.504Q-5.036-28.574-4.900-28.574Q-4.698-28.574-4.546-28.427Q-4.395-28.280-4.395-28.073Q-4.395-27.867-4.544-27.717Q-4.694-27.568-4.900-27.568Q-5.111-27.568-5.258-27.720Q-5.406-27.871-5.406-28.073M-5.406-30.943Q-5.406-31.141-5.261-31.295Q-5.116-31.448-4.900-31.448Q-4.764-31.448-4.648-31.380Q-4.531-31.312-4.463-31.196Q-4.395-31.079-4.395-30.943Q-4.395-30.741-4.546-30.589Q-4.698-30.438-4.900-30.438Q-5.107-30.438-5.256-30.591Q-5.406-30.745-5.406-30.943",[759],[737,6742,6743],{"transform":6730},[745,6744],{"d":6745,"fill":739,"stroke":739,"className":6746,"style":760},"M2.475-26.487L2.475-28.675Q2.475-29.141 2.095-29.416Q1.715-29.691 1.231-29.691Q1.205-29.691 1.172-29.715Q1.139-29.739 1.139-29.774L1.139-29.871Q1.139-29.901 1.174-29.928Q1.210-29.954 1.231-29.954Q1.715-29.954 2.095-30.222Q2.475-30.490 2.475-30.961L2.475-33.149Q2.475-33.567 2.767-33.830Q3.060-34.094 3.486-34.206Q3.912-34.318 4.308-34.318L4.391-34.318Q4.422-34.318 4.450-34.294Q4.479-34.270 4.479-34.239L4.479-34.138Q4.479-34.116 4.446-34.087Q4.413-34.059 4.391-34.059Q3.917-34.059 3.532-33.808Q3.148-33.558 3.148-33.114L3.148-30.925Q3.148-30.512 2.842-30.229Q2.537-29.945 2.084-29.818Q2.361-29.743 2.605-29.592Q2.849-29.440 2.998-29.216Q3.148-28.992 3.148-28.711L3.148-26.522Q3.148-26.219 3.332-26.006Q3.517-25.793 3.800-25.685Q4.084-25.577 4.391-25.577Q4.422-25.577 4.450-25.553Q4.479-25.529 4.479-25.498L4.479-25.397Q4.479-25.375 4.446-25.347Q4.413-25.318 4.391-25.318L4.308-25.318Q3.912-25.318 3.486-25.430Q3.060-25.542 2.767-25.806Q2.475-26.069 2.475-26.487",[759],[737,6748,6749],{"transform":6730},[745,6750],{"d":6751,"fill":739,"stroke":739,"className":6752,"style":760},"M9.034-27.568L6.002-27.568L6.002-27.884Q7.153-27.884 7.153-28.179L7.153-32.903Q6.665-32.670 5.944-32.670L5.944-32.986Q7.074-32.986 7.636-33.562L7.781-33.562Q7.816-33.562 7.849-33.529Q7.882-33.496 7.882-33.461L7.882-28.179Q7.882-27.884 9.034-27.884",[759],[737,6754,6755],{"transform":6730},[745,6756],{"d":6757,"fill":739,"stroke":739,"className":6758,"style":760},"M10.653-25.964Q10.653-26.004 10.688-26.039Q11.013-26.351 11.193-26.757Q11.374-27.164 11.374-27.612L11.374-27.695Q11.233-27.568 11.031-27.568Q10.886-27.568 10.772-27.634Q10.657-27.700 10.591-27.812Q10.525-27.924 10.525-28.073Q10.525-28.293 10.666-28.434Q10.807-28.574 11.031-28.574Q11.352-28.574 11.492-28.276Q11.633-27.977 11.633-27.612Q11.633-27.102 11.429-26.647Q11.224-26.193 10.859-25.841Q10.824-25.823 10.798-25.823Q10.741-25.823 10.697-25.867Q10.653-25.911 10.653-25.964",[759],[737,6760,6761],{"transform":6730},[745,6762],{"d":6763,"fill":739,"stroke":739,"className":6764,"style":760},"M14.764-28.289L14.720-28.289Q14.922-27.972 15.309-27.814Q15.696-27.656 16.122-27.656Q16.658-27.656 16.897-28.091Q17.137-28.526 17.137-29.106Q17.137-29.686 16.891-30.126Q16.645-30.565 16.113-30.565L15.493-30.565Q15.467-30.565 15.434-30.594Q15.401-30.622 15.401-30.644L15.401-30.745Q15.401-30.776 15.430-30.800Q15.458-30.824 15.493-30.824L16.012-30.864Q16.478-30.864 16.724-31.336Q16.970-31.809 16.970-32.327Q16.970-32.754 16.757-33.028Q16.544-33.303 16.122-33.303Q15.779-33.303 15.454-33.173Q15.129-33.044 14.944-32.789L14.970-32.789Q15.173-32.789 15.309-32.648Q15.445-32.507 15.445-32.310Q15.445-32.112 15.311-31.978Q15.177-31.844 14.979-31.844Q14.777-31.844 14.639-31.978Q14.500-32.112 14.500-32.310Q14.500-32.899 15.003-33.230Q15.507-33.562 16.122-33.562Q16.500-33.562 16.902-33.422Q17.304-33.281 17.572-33.002Q17.840-32.723 17.840-32.327Q17.840-31.778 17.486-31.341Q17.133-30.903 16.592-30.719Q16.983-30.640 17.328-30.416Q17.673-30.192 17.884-29.851Q18.095-29.510 18.095-29.115Q18.095-28.733 17.932-28.410Q17.770-28.087 17.478-27.851Q17.185-27.616 16.838-27.493Q16.491-27.370 16.122-27.370Q15.674-27.370 15.243-27.531Q14.812-27.691 14.531-28.018Q14.250-28.346 14.250-28.803Q14.250-29.018 14.397-29.161Q14.544-29.304 14.764-29.304Q14.975-29.304 15.120-29.159Q15.265-29.014 15.265-28.803Q15.265-28.592 15.118-28.440Q14.970-28.289 14.764-28.289",[759],[737,6766,6767],{"transform":6730},[745,6768],{"d":6769,"fill":739,"stroke":739,"className":6770,"style":760},"M19.389-25.964Q19.389-26.004 19.424-26.039Q19.749-26.351 19.929-26.757Q20.110-27.164 20.110-27.612L20.110-27.695Q19.969-27.568 19.767-27.568Q19.622-27.568 19.508-27.634Q19.393-27.700 19.327-27.812Q19.261-27.924 19.261-28.073Q19.261-28.293 19.402-28.434Q19.543-28.574 19.767-28.574Q20.088-28.574 20.228-28.276Q20.369-27.977 20.369-27.612Q20.369-27.102 20.165-26.647Q19.960-26.193 19.595-25.841Q19.560-25.823 19.534-25.823Q19.477-25.823 19.433-25.867Q19.389-25.911 19.389-25.964",[759],[737,6772,6773],{"transform":6730},[745,6774],{"d":6775,"fill":739,"stroke":739,"className":6776,"style":760},"M23.425-28.574Q23.566-28.161 23.926-27.909Q24.287-27.656 24.722-27.656Q25.174-27.656 25.440-27.909Q25.706-28.161 25.809-28.546Q25.912-28.930 25.912-29.387Q25.912-31.088 25.003-31.088Q24.682-31.088 24.453-30.994Q24.225-30.899 24.095-30.780Q23.966-30.662 23.854-30.523Q23.742-30.385 23.706-30.376L23.623-30.376Q23.579-30.376 23.548-30.407Q23.517-30.438 23.517-30.486L23.517-33.483Q23.517-33.514 23.553-33.538Q23.588-33.562 23.614-33.562L23.654-33.562Q24.287-33.272 24.959-33.272Q25.631-33.272 26.273-33.562L26.299-33.562Q26.330-33.562 26.363-33.540Q26.396-33.518 26.396-33.483L26.396-33.382Q26.396-33.378 26.387-33.360Q26.378-33.342 26.378-33.338Q26.062-32.943 25.592-32.721Q25.121-32.499 24.625-32.499Q24.216-32.499 23.834-32.609L23.834-30.890Q24.291-31.347 25.003-31.347Q25.513-31.347 25.912-31.066Q26.312-30.785 26.534-30.330Q26.756-29.875 26.756-29.370Q26.756-28.820 26.477-28.361Q26.198-27.902 25.732-27.636Q25.266-27.370 24.722-27.370Q24.282-27.370 23.898-27.597Q23.513-27.823 23.285-28.203Q23.056-28.583 23.056-29.027Q23.056-29.220 23.188-29.352Q23.320-29.484 23.517-29.484Q23.649-29.484 23.753-29.425Q23.856-29.365 23.915-29.262Q23.974-29.159 23.974-29.027Q23.974-28.829 23.847-28.697Q23.720-28.566 23.517-28.566Q23.456-28.566 23.425-28.574",[759],[737,6778,6779],{"transform":6730},[745,6780],{"d":6781,"fill":739,"stroke":739,"className":6782,"style":760},"M27.861-25.397L27.861-25.498Q27.861-25.529 27.892-25.553Q27.923-25.577 27.953-25.577Q28.261-25.577 28.545-25.685Q28.828-25.793 29.013-26.006Q29.197-26.219 29.197-26.522L29.197-28.711Q29.197-29.001 29.347-29.223Q29.496-29.444 29.738-29.594Q29.979-29.743 30.256-29.818Q29.799-29.950 29.498-30.231Q29.197-30.512 29.197-30.925L29.197-33.114Q29.197-33.417 29.013-33.630Q28.828-33.843 28.545-33.951Q28.261-34.059 27.953-34.059Q27.936-34.059 27.899-34.087Q27.861-34.116 27.861-34.138L27.861-34.239Q27.861-34.270 27.892-34.294Q27.923-34.318 27.953-34.318L28.033-34.318Q28.432-34.318 28.859-34.206Q29.285-34.094 29.577-33.830Q29.870-33.567 29.870-33.149L29.870-30.961Q29.870-30.644 30.050-30.416Q30.230-30.187 30.520-30.071Q30.810-29.954 31.113-29.954Q31.140-29.954 31.170-29.928Q31.201-29.901 31.201-29.871L31.201-29.774Q31.201-29.739 31.172-29.715Q31.144-29.691 31.113-29.691Q30.630-29.691 30.250-29.416Q29.870-29.141 29.870-28.675L29.870-26.487Q29.870-26.069 29.577-25.806Q29.285-25.542 28.859-25.430Q28.432-25.318 28.033-25.318L27.953-25.318Q27.936-25.318 27.899-25.347Q27.861-25.375 27.861-25.397",[759],[737,6784,6785],{"transform":6730},[745,6786],{"d":6787,"fill":739,"stroke":739,"className":6788,"style":760},"M37.226-27.568L35.240-27.568L35.240-27.884Q35.547-27.884 35.738-27.937Q35.930-27.990 35.930-28.179L35.930-30.627Q35.930-30.873 35.864-30.978Q35.798-31.084 35.672-31.108Q35.547-31.132 35.275-31.132L35.275-31.448L36.606-31.545L36.606-28.179Q36.606-27.985 36.771-27.935Q36.936-27.884 37.226-27.884L37.226-27.568M35.626-33.092Q35.626-33.298 35.776-33.448Q35.925-33.597 36.127-33.597Q36.259-33.597 36.376-33.527Q36.492-33.457 36.562-33.340Q36.633-33.224 36.633-33.092Q36.633-32.890 36.483-32.740Q36.334-32.591 36.127-32.591Q35.925-32.591 35.776-32.740Q35.626-32.890 35.626-33.092M39.885-27.568L37.797-27.568L37.797-27.884Q38.105-27.884 38.296-27.937Q38.487-27.990 38.487-28.179L38.487-30.627Q38.487-30.868 38.417-30.976Q38.347-31.084 38.213-31.108Q38.078-31.132 37.797-31.132L37.797-31.448L39.138-31.545L39.138-30.710Q39.335-31.092 39.689-31.319Q40.043-31.545 40.469-31.545Q41.748-31.545 41.748-30.332L41.748-28.179Q41.748-27.990 41.939-27.937Q42.130-27.884 42.438-27.884L42.438-27.568L40.350-27.568L40.350-27.884Q40.662-27.884 40.854-27.937Q41.045-27.990 41.045-28.179L41.045-30.297Q41.045-30.556 41.001-30.778Q40.957-31 40.812-31.143Q40.667-31.286 40.408-31.286Q40.065-31.286 39.784-31.097Q39.502-30.908 39.346-30.596Q39.190-30.284 39.190-29.937L39.190-28.179Q39.190-27.990 39.384-27.937Q39.577-27.884 39.885-27.884L39.885-27.568M44.886-27.467Q44.341-27.467 43.897-27.750Q43.453-28.034 43.198-28.506Q42.943-28.979 42.943-29.510Q42.943-30.064 43.220-30.530Q43.497-30.996 43.969-31.270Q44.442-31.545 44.987-31.545Q45.321-31.545 45.624-31.413Q45.927-31.281 46.147-31.044L46.147-32.894Q46.147-33.136 46.077-33.244Q46.006-33.351 45.872-33.375Q45.738-33.400 45.453-33.400L45.453-33.716L46.819-33.813L46.819-28.385Q46.819-28.148 46.890-28.040Q46.960-27.933 47.096-27.909Q47.232-27.884 47.514-27.884L47.514-27.568L46.120-27.467L46.120-28.016Q45.870-27.753 45.551-27.610Q45.233-27.467 44.886-27.467M44.947-27.731Q45.316-27.731 45.626-27.942Q45.936-28.152 46.120-28.495L46.120-30.627Q45.949-30.930 45.668-31.108Q45.387-31.286 45.048-31.286Q44.358-31.286 44.055-30.765Q43.752-30.244 43.752-29.502Q43.752-28.781 44.022-28.256Q44.292-27.731 44.947-27.731M50.084-27.467Q49.526-27.467 49.054-27.750Q48.581-28.034 48.307-28.511Q48.032-28.987 48.032-29.541Q48.032-29.937 48.175-30.312Q48.318-30.688 48.575-30.976Q48.832-31.264 49.190-31.433Q49.548-31.602 49.953-31.602Q50.497-31.602 50.869-31.365Q51.240-31.128 51.427-30.710Q51.614-30.293 51.614-29.756Q51.614-29.704 51.589-29.666Q51.565-29.629 51.517-29.629L48.845-29.629L48.845-29.550Q48.845-28.803 49.157-28.280Q49.469-27.757 50.168-27.757Q50.572-27.757 50.893-28.014Q51.214-28.271 51.337-28.675Q51.354-28.755 51.438-28.755L51.517-28.755Q51.557-28.755 51.585-28.724Q51.614-28.693 51.614-28.649L51.614-28.614Q51.508-28.271 51.286-28.012Q51.064-27.753 50.750-27.610Q50.436-27.467 50.084-27.467M48.854-29.880L50.968-29.880Q50.968-30.148 50.915-30.394Q50.862-30.640 50.741-30.862Q50.620-31.084 50.423-31.211Q50.225-31.339 49.953-31.339Q49.610-31.339 49.357-31.114Q49.104-30.890 48.979-30.552Q48.854-30.214 48.854-29.880M54.224-25.823L52.137-25.823L52.137-26.135Q52.449-26.135 52.640-26.186Q52.831-26.236 52.831-26.434L52.831-30.772Q52.831-31.013 52.657-31.073Q52.484-31.132 52.137-31.132L52.137-31.448L53.508-31.545L53.508-31.005Q53.767-31.273 54.101-31.409Q54.435-31.545 54.804-31.545Q55.204-31.545 55.560-31.378Q55.916-31.211 56.171-30.930Q56.426-30.649 56.568-30.284Q56.711-29.919 56.711-29.510Q56.711-28.948 56.434-28.482Q56.158-28.016 55.683-27.742Q55.208-27.467 54.659-27.467Q54.347-27.467 54.057-27.601Q53.767-27.735 53.534-27.981L53.534-26.434Q53.534-26.236 53.725-26.186Q53.916-26.135 54.224-26.135L54.224-25.823M53.534-30.591L53.534-28.460Q53.692-28.135 53.976-27.933Q54.259-27.731 54.602-27.731Q55.015-27.731 55.309-28.007Q55.604-28.284 55.751-28.702Q55.898-29.119 55.898-29.510Q55.898-29.888 55.764-30.297Q55.630-30.706 55.356-30.983Q55.081-31.259 54.703-31.259Q54.461-31.259 54.246-31.183Q54.031-31.106 53.839-30.945Q53.648-30.785 53.534-30.591",[759],[737,6790,6791],{"transform":6730},[745,6792],{"d":6793,"fill":739,"stroke":739,"className":6794,"style":760},"M59.601-27.467Q59.042-27.467 58.570-27.750Q58.098-28.034 57.823-28.511Q57.548-28.987 57.548-29.541Q57.548-29.937 57.691-30.312Q57.834-30.688 58.091-30.976Q58.348-31.264 58.706-31.433Q59.064-31.602 59.469-31.602Q60.014-31.602 60.385-31.365Q60.756-31.128 60.943-30.710Q61.130-30.293 61.130-29.756Q61.130-29.704 61.106-29.666Q61.081-29.629 61.033-29.629L58.361-29.629L58.361-29.550Q58.361-28.803 58.673-28.280Q58.985-27.757 59.684-27.757Q60.088-27.757 60.409-28.014Q60.730-28.271 60.853-28.675Q60.871-28.755 60.954-28.755L61.033-28.755Q61.073-28.755 61.101-28.724Q61.130-28.693 61.130-28.649L61.130-28.614Q61.024-28.271 60.802-28.012Q60.581-27.753 60.266-27.610Q59.952-27.467 59.601-27.467M58.370-29.880L60.484-29.880Q60.484-30.148 60.431-30.394Q60.378-30.640 60.258-30.862Q60.137-31.084 59.939-31.211Q59.741-31.339 59.469-31.339Q59.126-31.339 58.873-31.114Q58.621-30.890 58.495-30.552Q58.370-30.214 58.370-29.880M63.789-27.568L61.701-27.568L61.701-27.884Q62.009-27.884 62.200-27.937Q62.391-27.990 62.391-28.179L62.391-30.627Q62.391-30.868 62.321-30.976Q62.250-31.084 62.116-31.108Q61.982-31.132 61.701-31.132L61.701-31.448L63.041-31.545L63.041-30.710Q63.239-31.092 63.593-31.319Q63.947-31.545 64.373-31.545Q65.652-31.545 65.652-30.332L65.652-28.179Q65.652-27.990 65.843-27.937Q66.034-27.884 66.342-27.884L66.342-27.568L64.254-27.568L64.254-27.884Q64.566-27.884 64.758-27.937Q64.949-27.990 64.949-28.179L64.949-30.297Q64.949-30.556 64.905-30.778Q64.861-31 64.716-31.143Q64.571-31.286 64.311-31.286Q63.969-31.286 63.687-31.097Q63.406-30.908 63.250-30.596Q63.094-30.284 63.094-29.937L63.094-28.179Q63.094-27.990 63.288-27.937Q63.481-27.884 63.789-27.884L63.789-27.568M68.789-27.467Q68.245-27.467 67.801-27.750Q67.357-28.034 67.102-28.506Q66.847-28.979 66.847-29.510Q66.847-30.064 67.124-30.530Q67.401-30.996 67.873-31.270Q68.346-31.545 68.891-31.545Q69.225-31.545 69.528-31.413Q69.831-31.281 70.051-31.044L70.051-32.894Q70.051-33.136 69.980-33.244Q69.910-33.351 69.776-33.375Q69.642-33.400 69.356-33.400L69.356-33.716L70.723-33.813L70.723-28.385Q70.723-28.148 70.793-28.040Q70.864-27.933 71-27.909Q71.136-27.884 71.417-27.884L71.417-27.568L70.024-27.467L70.024-28.016Q69.774-27.753 69.455-27.610Q69.137-27.467 68.789-27.467M68.851-27.731Q69.220-27.731 69.530-27.942Q69.840-28.152 70.024-28.495L70.024-30.627Q69.853-30.930 69.572-31.108Q69.290-31.286 68.952-31.286Q68.262-31.286 67.959-30.765Q67.656-30.244 67.656-29.502Q67.656-28.781 67.926-28.256Q68.196-27.731 68.851-27.731M73.988-27.467Q73.430-27.467 72.958-27.750Q72.485-28.034 72.211-28.511Q71.936-28.987 71.936-29.541Q71.936-29.937 72.079-30.312Q72.222-30.688 72.479-30.976Q72.736-31.264 73.094-31.433Q73.452-31.602 73.856-31.602Q74.401-31.602 74.773-31.365Q75.144-31.128 75.331-30.710Q75.518-30.293 75.518-29.756Q75.518-29.704 75.493-29.666Q75.469-29.629 75.421-29.629L72.749-29.629L72.749-29.550Q72.749-28.803 73.061-28.280Q73.373-27.757 74.072-27.757Q74.476-27.757 74.797-28.014Q75.118-28.271 75.241-28.675Q75.258-28.755 75.342-28.755L75.421-28.755Q75.460-28.755 75.489-28.724Q75.518-28.693 75.518-28.649L75.518-28.614Q75.412-28.271 75.190-28.012Q74.968-27.753 74.654-27.610Q74.340-27.467 73.988-27.467M72.758-29.880L74.872-29.880Q74.872-30.148 74.819-30.394Q74.766-30.640 74.645-30.862Q74.524-31.084 74.327-31.211Q74.129-31.339 73.856-31.339Q73.514-31.339 73.261-31.114Q73.008-30.890 72.883-30.552Q72.758-30.214 72.758-29.880M78.176-27.568L76.089-27.568L76.089-27.884Q76.396-27.884 76.588-27.937Q76.779-27.990 76.779-28.179L76.779-30.627Q76.779-30.868 76.708-30.976Q76.638-31.084 76.504-31.108Q76.370-31.132 76.089-31.132L76.089-31.448L77.429-31.545L77.429-30.710Q77.627-31.092 77.981-31.319Q78.334-31.545 78.761-31.545Q80.039-31.545 80.039-30.332L80.039-28.179Q80.039-27.990 80.231-27.937Q80.422-27.884 80.729-27.884L80.729-27.568L78.642-27.568L78.642-27.884Q78.954-27.884 79.145-27.937Q79.336-27.990 79.336-28.179L79.336-30.297Q79.336-30.556 79.292-30.778Q79.248-31 79.103-31.143Q78.958-31.286 78.699-31.286Q78.356-31.286 78.075-31.097Q77.794-30.908 77.638-30.596Q77.482-30.284 77.482-29.937L77.482-28.179Q77.482-27.990 77.675-27.937Q77.869-27.884 78.176-27.884",[759],[737,6796,6797],{"transform":6730},[745,6798],{"d":6799,"fill":739,"stroke":739,"className":6800,"style":760},"M81.614-28.640L81.614-31.132L80.849-31.132L80.849-31.391Q81.254-31.391 81.520-31.657Q81.785-31.923 81.906-32.323Q82.027-32.723 82.027-33.105L82.317-33.105L82.317-31.448L83.605-31.448L83.605-31.132L82.317-31.132L82.317-28.675Q82.317-28.306 82.442-28.032Q82.568-27.757 82.893-27.757Q83.192-27.757 83.330-28.051Q83.469-28.346 83.469-28.675L83.469-29.198L83.754-29.198L83.754-28.640Q83.754-28.363 83.644-28.091Q83.534-27.818 83.321-27.643Q83.108-27.467 82.827-27.467Q82.467-27.467 82.194-27.605Q81.922-27.744 81.768-28.007Q81.614-28.271 81.614-28.640",[759],[737,6802,6803,6806],{"fill":781,"stroke":782,"style":793},[745,6804],{"d":6805},"M153.027-64.557a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6807,6809],{"transform":6808},"translate(157.023 -34.089)",[745,6810],{"d":6677,"fill":739,"stroke":739,"className":6811,"style":760},[759],[745,6813],{"fill":747,"d":6814},"M117.849-38.998a7.113 7.113 0 1 0-14.227 0 7.113 7.113 0 0 0 14.227 0Zm-7.114 0",[737,6816,6818],{"transform":6817},"translate(121.845 -8.53)",[745,6819],{"d":6687,"fill":739,"stroke":739,"className":6820,"style":760},[759],[737,6822,6823,6826],{"fill":781,"stroke":782,"style":793},[745,6824],{"d":6825},"M131.286 2.356a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6827,6829],{"transform":6828},"translate(135.282 32.825)",[745,6830],{"d":6699,"fill":739,"stroke":739,"className":6831,"style":760},[759],[745,6833],{"fill":747,"d":6834},"M174.768 2.356a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6836,6838],{"transform":6837},"translate(178.764 32.825)",[745,6839],{"d":6709,"fill":739,"stroke":739,"className":6840,"style":760},[759],[737,6842,6843,6846],{"fill":781,"stroke":782,"style":793},[745,6844],{"d":6845},"M188.205-38.998a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0Zm-7.113 0",[737,6847,6849],{"transform":6848},"translate(192.201 -8.53)",[745,6850],{"d":6721,"fill":739,"stroke":739,"className":6851,"style":760},[759],[745,6853],{"fill":747,"d":6854},"M143.53-57.221 126.556-4.98M148.297-57.221 165.395-4.6M152.154-60.023l22.698 16.491M116.652-34.7l45.086 32.758M118.049-38.998h55.33M130.413-2.177l44.439-32.288",[737,6856,6857,6864,6869,6874,6879,6884,6889,6894,6899,6904,6909],{"stroke":747,"fontSize":1880},[737,6858,6860],{"transform":6859},"translate(123.466 62.331)",[745,6861],{"d":6862,"fill":739,"stroke":739,"className":6863,"style":760},"M-7.365-34.831L-10.705-34.831L-10.705-35.178L-7.365-35.178",[759],[737,6865,6866],{"transform":6859},[745,6867],{"d":6733,"fill":739,"stroke":739,"className":6868,"style":760},[759],[737,6870,6871],{"transform":6859},[745,6872],{"d":6739,"fill":739,"stroke":739,"className":6873,"style":760},[759],[737,6875,6876],{"transform":6859},[745,6877],{"d":6745,"fill":739,"stroke":739,"className":6878,"style":760},[759],[737,6880,6881],{"transform":6859},[745,6882],{"d":6751,"fill":739,"stroke":739,"className":6883,"style":760},[759],[737,6885,6886],{"transform":6859},[745,6887],{"d":6757,"fill":739,"stroke":739,"className":6888,"style":760},[759],[737,6890,6891],{"transform":6859},[745,6892],{"d":6763,"fill":739,"stroke":739,"className":6893,"style":760},[759],[737,6895,6896],{"transform":6859},[745,6897],{"d":6769,"fill":739,"stroke":739,"className":6898,"style":760},[759],[737,6900,6901],{"transform":6859},[745,6902],{"d":6775,"fill":739,"stroke":739,"className":6903,"style":760},[759],[737,6905,6906],{"transform":6859},[745,6907],{"d":6781,"fill":739,"stroke":739,"className":6908,"style":760},[759],[737,6910,6911],{"transform":6859},[745,6912],{"d":6913,"fill":739,"stroke":739,"className":6914,"style":760},"M37.244-27.467Q36.694-27.467 36.235-27.746Q35.776-28.025 35.508-28.495Q35.240-28.965 35.240-29.510Q35.240-29.923 35.389-30.301Q35.538-30.679 35.813-30.974Q36.088-31.268 36.457-31.435Q36.826-31.602 37.244-31.602Q37.578-31.602 37.898-31.536Q38.219-31.470 38.448-31.284Q38.676-31.097 38.676-30.772Q38.676-30.596 38.549-30.468Q38.421-30.341 38.245-30.341Q38.061-30.341 37.931-30.466Q37.802-30.591 37.802-30.772Q37.802-30.908 37.876-31.020Q37.951-31.132 38.083-31.185Q37.775-31.312 37.244-31.312Q36.808-31.312 36.540-31.035Q36.272-30.758 36.160-30.343Q36.048-29.928 36.048-29.510Q36.048-29.080 36.187-28.678Q36.325-28.276 36.620-28.016Q36.914-27.757 37.353-27.757Q37.775-27.757 38.078-28.007Q38.382-28.258 38.487-28.667Q38.496-28.697 38.520-28.722Q38.544-28.746 38.575-28.746L38.685-28.746Q38.773-28.746 38.773-28.631Q38.628-28.095 38.215-27.781Q37.802-27.467 37.244-27.467M41.405-27.568L39.344-27.568L39.344-27.884Q39.652-27.884 39.843-27.937Q40.034-27.990 40.034-28.179L40.034-32.894Q40.034-33.136 39.964-33.244Q39.893-33.351 39.759-33.375Q39.625-33.400 39.344-33.400L39.344-33.716L40.711-33.813L40.711-28.179Q40.711-27.990 40.904-27.937Q41.098-27.884 41.405-27.884L41.405-27.568M43.897-27.568L41.911-27.568L41.911-27.884Q42.218-27.884 42.409-27.937Q42.600-27.990 42.600-28.179L42.600-30.627Q42.600-30.873 42.535-30.978Q42.469-31.084 42.343-31.108Q42.218-31.132 41.946-31.132L41.946-31.448L43.277-31.545L43.277-28.179Q43.277-27.985 43.442-27.935Q43.607-27.884 43.897-27.884L43.897-27.568M42.297-33.092Q42.297-33.298 42.447-33.448Q42.596-33.597 42.798-33.597Q42.930-33.597 43.047-33.527Q43.163-33.457 43.233-33.340Q43.304-33.224 43.304-33.092Q43.304-32.890 43.154-32.740Q43.005-32.591 42.798-32.591Q42.596-32.591 42.447-32.740Q42.297-32.890 42.297-33.092M49.047-25.823L46.960-25.823L46.960-26.135Q47.267-26.135 47.461-26.186Q47.654-26.236 47.654-26.434L47.654-28.073Q47.162-27.467 46.428-27.467Q46.033-27.467 45.672-27.632Q45.312-27.797 45.042-28.084Q44.771-28.372 44.624-28.744Q44.477-29.115 44.477-29.510Q44.477-30.060 44.752-30.528Q45.026-30.996 45.494-31.270Q45.962-31.545 46.507-31.545Q46.898-31.545 47.230-31.332Q47.562-31.119 47.760-30.772L48.094-31.545L48.353-31.545L48.353-26.434Q48.353-26.236 48.546-26.186Q48.740-26.135 49.047-26.135L49.047-25.823M46.481-27.731Q46.885-27.731 47.206-27.996Q47.527-28.262 47.681-28.658L47.681-30.214Q47.610-30.486 47.463-30.725Q47.316-30.965 47.087-31.112Q46.859-31.259 46.582-31.259Q46.173-31.259 45.879-30.987Q45.584-30.714 45.435-30.301Q45.286-29.888 45.286-29.502Q45.286-29.128 45.417-28.715Q45.549-28.302 45.819-28.016Q46.090-27.731 46.481-27.731M50.036-28.640L50.036-30.627Q50.036-30.868 49.966-30.976Q49.895-31.084 49.761-31.108Q49.627-31.132 49.346-31.132L49.346-31.448L50.739-31.545L50.739-28.675Q50.739-28.297 50.785-28.111Q50.831-27.924 51.003-27.827Q51.174-27.731 51.530-27.731Q51.864-27.731 52.104-27.922Q52.343-28.113 52.468-28.416Q52.594-28.719 52.594-29.036L52.594-30.627Q52.594-30.868 52.523-30.976Q52.453-31.084 52.319-31.108Q52.185-31.132 51.899-31.132L51.899-31.448L53.297-31.545L53.297-28.385Q53.297-28.148 53.367-28.040Q53.437-27.933 53.571-27.909Q53.705-27.884 53.987-27.884L53.987-27.568L52.620-27.467L52.620-28.188Q52.453-27.862 52.148-27.665Q51.842-27.467 51.486-27.467Q50.827-27.467 50.432-27.737Q50.036-28.007 50.036-28.640M56.496-27.467Q55.938-27.467 55.465-27.750Q54.993-28.034 54.718-28.511Q54.444-28.987 54.444-29.541Q54.444-29.937 54.587-30.312Q54.729-30.688 54.986-30.976Q55.244-31.264 55.602-31.433Q55.960-31.602 56.364-31.602Q56.909-31.602 57.280-31.365Q57.652-31.128 57.838-30.710Q58.025-30.293 58.025-29.756Q58.025-29.704 58.001-29.666Q57.977-29.629 57.929-29.629L55.257-29.629L55.257-29.550Q55.257-28.803 55.569-28.280Q55.881-27.757 56.579-27.757Q56.984-27.757 57.305-28.014Q57.625-28.271 57.748-28.675Q57.766-28.755 57.849-28.755L57.929-28.755Q57.968-28.755 57.997-28.724Q58.025-28.693 58.025-28.649L58.025-28.614Q57.920-28.271 57.698-28.012Q57.476-27.753 57.162-27.610Q56.848-27.467 56.496-27.467M55.265-29.880L57.379-29.880Q57.379-30.148 57.327-30.394Q57.274-30.640 57.153-30.862Q57.032-31.084 56.834-31.211Q56.637-31.339 56.364-31.339Q56.021-31.339 55.769-31.114Q55.516-30.890 55.391-30.552Q55.265-30.214 55.265-29.880",[759],[737,6916,6917,6920,6923],{"fill":782,"stroke":782,"style":743},[745,6918],{"fill":747,"d":6919},"M39.073-27.568h54.345",[745,6921],{"d":6922},"m36.087-27.568 4.169 1.576-1.383-1.576 1.383-1.577ZM96.404-27.568l-4.168-1.577 1.382 1.577-1.382 1.576Z",[737,6924,6925,6932],{"fill":782,"stroke":747,"fontFamily":835,"fontSize":836},[737,6926,6928],{"transform":6927},"translate(58.768 -5.094)",[745,6929],{"d":6930,"fill":782,"stroke":782,"className":6931,"style":804},"M-13.108-29.079Q-13.108-29.407-12.973-29.708Q-12.838-30.008-12.602-30.229Q-12.366-30.449-12.062-30.569Q-11.757-30.689-11.433-30.689Q-10.927-30.689-10.578-30.586Q-10.230-30.484-10.230-30.108Q-10.230-29.961-10.327-29.860Q-10.424-29.759-10.571-29.759Q-10.725-29.759-10.824-29.858Q-10.923-29.957-10.923-30.108Q-10.923-30.296-10.783-30.388Q-10.985-30.439-11.426-30.439Q-11.781-30.439-12.010-30.243Q-12.239-30.046-12.340-29.737Q-12.441-29.427-12.441-29.079Q-12.441-28.730-12.315-28.424Q-12.188-28.118-11.933-27.934Q-11.679-27.749-11.323-27.749Q-11.101-27.749-10.917-27.833Q-10.732-27.917-10.597-28.072Q-10.462-28.228-10.404-28.436Q-10.390-28.491-10.336-28.491L-10.223-28.491Q-10.192-28.491-10.170-28.467Q-10.148-28.443-10.148-28.409L-10.148-28.388Q-10.233-28.101-10.421-27.903Q-10.609-27.705-10.874-27.602Q-11.139-27.500-11.433-27.500Q-11.863-27.500-12.251-27.706Q-12.639-27.913-12.873-28.276Q-13.108-28.638-13.108-29.079M-9.601-29.051Q-9.601-29.393-9.466-29.692Q-9.331-29.991-9.091-30.215Q-8.852-30.439-8.534-30.564Q-8.216-30.689-7.885-30.689Q-7.441-30.689-7.041-30.473Q-6.641-30.258-6.407-29.880Q-6.172-29.503-6.172-29.051Q-6.172-28.710-6.314-28.426Q-6.456-28.142-6.701-27.935Q-6.945-27.729-7.254-27.614Q-7.564-27.500-7.885-27.500Q-8.316-27.500-8.717-27.701Q-9.119-27.903-9.360-28.255Q-9.601-28.607-9.601-29.051M-7.885-27.749Q-7.283-27.749-7.059-28.127Q-6.836-28.505-6.836-29.137Q-6.836-29.749-7.070-30.108Q-7.304-30.466-7.885-30.466Q-8.938-30.466-8.938-29.137Q-8.938-28.505-8.712-28.127Q-8.486-27.749-7.885-27.749M-3.896-27.568L-5.530-27.568L-5.530-27.848Q-5.301-27.848-5.152-27.882Q-5.004-27.917-5.004-28.057L-5.004-29.906Q-5.004-30.176-5.111-30.237Q-5.219-30.299-5.530-30.299L-5.530-30.579L-4.470-30.654L-4.470-30.005Q-4.299-30.313-3.995-30.484Q-3.691-30.654-3.346-30.654Q-2.946-30.654-2.669-30.514Q-2.392-30.374-2.307-30.026Q-2.139-30.319-1.840-30.487Q-1.541-30.654-1.196-30.654Q-0.690-30.654-0.406-30.431Q-0.123-30.207-0.123-29.711L-0.123-28.057Q-0.123-27.920 0.026-27.884Q0.175-27.848 0.400-27.848L0.400-27.568L-1.230-27.568L-1.230-27.848Q-1.005-27.848-0.854-27.884Q-0.704-27.920-0.704-28.057L-0.704-29.697Q-0.704-30.032-0.823-30.232Q-0.943-30.432-1.257-30.432Q-1.527-30.432-1.762-30.296Q-1.996-30.159-2.134-29.925Q-2.273-29.691-2.273-29.417L-2.273-28.057Q-2.273-27.920-2.124-27.884Q-1.975-27.848-1.750-27.848L-1.750-27.568L-3.380-27.568L-3.380-27.848Q-3.151-27.848-3.002-27.882Q-2.854-27.917-2.854-28.057L-2.854-29.697Q-2.854-30.032-2.973-30.232Q-3.093-30.432-3.407-30.432Q-3.677-30.432-3.912-30.296Q-4.146-30.159-4.284-29.925Q-4.422-29.691-4.422-29.417L-4.422-28.057Q-4.422-27.920-4.272-27.884Q-4.122-27.848-3.896-27.848L-3.896-27.568M2.632-26.211L1.002-26.211L1.002-26.491Q1.231-26.491 1.380-26.526Q1.528-26.560 1.528-26.700L1.528-30.046Q1.528-30.217 1.391-30.258Q1.255-30.299 1.002-30.299L1.002-30.579L2.082-30.654L2.082-30.248Q2.304-30.449 2.591-30.552Q2.878-30.654 3.186-30.654Q3.613-30.654 3.977-30.441Q4.341-30.227 4.555-29.863Q4.768-29.499 4.768-29.079Q4.768-28.634 4.529-28.270Q4.290-27.906 3.897-27.703Q3.504-27.500 3.059-27.500Q2.793-27.500 2.545-27.600Q2.297-27.701 2.109-27.882L2.109-26.700Q2.109-26.563 2.258-26.527Q2.407-26.491 2.632-26.491L2.632-26.211M2.109-29.899L2.109-28.289Q2.243-28.036 2.485-27.879Q2.728-27.722 3.005-27.722Q3.333-27.722 3.586-27.923Q3.839-28.125 3.972-28.443Q4.105-28.761 4.105-29.079Q4.105-29.308 4.040-29.537Q3.975-29.766 3.847-29.964Q3.719-30.162 3.524-30.282Q3.329-30.401 3.097-30.401Q2.803-30.401 2.535-30.272Q2.266-30.142 2.109-29.899M7.072-27.568L5.469-27.568L5.469-27.848Q5.695-27.848 5.843-27.882Q5.992-27.917 5.992-28.057L5.992-31.676Q5.992-31.946 5.884-32.008Q5.777-32.069 5.469-32.069L5.469-32.350L6.546-32.425L6.546-28.057Q6.546-27.920 6.696-27.884Q6.847-27.848 7.072-27.848L7.072-27.568M7.626-29.103Q7.626-29.424 7.751-29.713Q7.875-30.002 8.101-30.225Q8.327-30.449 8.622-30.569Q8.918-30.689 9.236-30.689Q9.564-30.689 9.825-30.589Q10.087-30.490 10.263-30.308Q10.439-30.125 10.533-29.867Q10.627-29.609 10.627-29.277Q10.627-29.185 10.545-29.164L8.289-29.164L8.289-29.103Q8.289-28.515 8.573-28.132Q8.856-27.749 9.424-27.749Q9.745-27.749 10.013-27.942Q10.282-28.135 10.370-28.450Q10.377-28.491 10.453-28.505L10.545-28.505Q10.627-28.481 10.627-28.409Q10.627-28.402 10.620-28.375Q10.507-27.978 10.136-27.739Q9.765-27.500 9.342-27.500Q8.904-27.500 8.504-27.708Q8.104-27.917 7.865-28.284Q7.626-28.651 7.626-29.103M8.296-29.373L10.111-29.373Q10.111-29.650 10.013-29.902Q9.916-30.155 9.718-30.311Q9.519-30.466 9.236-30.466Q8.959-30.466 8.745-30.308Q8.532-30.149 8.414-29.894Q8.296-29.639 8.296-29.373M12.896-27.568L11.263-27.568L11.263-27.848Q11.492-27.848 11.640-27.882Q11.789-27.917 11.789-28.057L11.789-29.906Q11.789-30.176 11.681-30.237Q11.574-30.299 11.263-30.299L11.263-30.579L12.322-30.654L12.322-30.005Q12.493-30.313 12.797-30.484Q13.101-30.654 13.447-30.654Q13.847-30.654 14.123-30.514Q14.400-30.374 14.486-30.026Q14.653-30.319 14.952-30.487Q15.251-30.654 15.597-30.654Q16.102-30.654 16.386-30.431Q16.670-30.207 16.670-29.711L16.670-28.057Q16.670-27.920 16.818-27.884Q16.967-27.848 17.193-27.848L17.193-27.568L15.562-27.568L15.562-27.848Q15.788-27.848 15.938-27.884Q16.089-27.920 16.089-28.057L16.089-29.697Q16.089-30.032 15.969-30.232Q15.849-30.432 15.535-30.432Q15.265-30.432 15.031-30.296Q14.797-30.159 14.658-29.925Q14.520-29.691 14.520-29.417L14.520-28.057Q14.520-27.920 14.669-27.884Q14.817-27.848 15.043-27.848L15.043-27.568L13.412-27.568L13.412-27.848Q13.641-27.848 13.790-27.882Q13.939-27.917 13.939-28.057L13.939-29.697Q13.939-30.032 13.819-30.232Q13.700-30.432 13.385-30.432Q13.115-30.432 12.881-30.296Q12.647-30.159 12.508-29.925Q12.370-29.691 12.370-29.417L12.370-28.057Q12.370-27.920 12.520-27.884Q12.671-27.848 12.896-27.848L12.896-27.568M17.740-29.103Q17.740-29.424 17.864-29.713Q17.989-30.002 18.215-30.225Q18.440-30.449 18.736-30.569Q19.032-30.689 19.349-30.689Q19.678-30.689 19.939-30.589Q20.201-30.490 20.377-30.308Q20.553-30.125 20.647-29.867Q20.741-29.609 20.741-29.277Q20.741-29.185 20.659-29.164L18.403-29.164L18.403-29.103Q18.403-28.515 18.686-28.132Q18.970-27.749 19.537-27.749Q19.859-27.749 20.127-27.942Q20.395-28.135 20.484-28.450Q20.491-28.491 20.566-28.505L20.659-28.505Q20.741-28.481 20.741-28.409Q20.741-28.402 20.734-28.375Q20.621-27.978 20.250-27.739Q19.879-27.500 19.455-27.500Q19.018-27.500 18.618-27.708Q18.218-27.917 17.979-28.284Q17.740-28.651 17.740-29.103M18.410-29.373L20.224-29.373Q20.224-29.650 20.127-29.902Q20.030-30.155 19.831-30.311Q19.633-30.466 19.349-30.466Q19.073-30.466 18.859-30.308Q18.645-30.149 18.527-29.894Q18.410-29.639 18.410-29.373M23.010-27.568L21.376-27.568L21.376-27.848Q21.605-27.848 21.754-27.882Q21.903-27.917 21.903-28.057L21.903-29.906Q21.903-30.176 21.795-30.237Q21.687-30.299 21.376-30.299L21.376-30.579L22.436-30.654L22.436-30.005Q22.607-30.313 22.911-30.484Q23.215-30.654 23.560-30.654Q24.066-30.654 24.350-30.431Q24.634-30.207 24.634-29.711L24.634-28.057Q24.634-27.920 24.782-27.884Q24.931-27.848 25.157-27.848L25.157-27.568L23.526-27.568L23.526-27.848Q23.755-27.848 23.904-27.882Q24.053-27.917 24.053-28.057L24.053-29.697Q24.053-30.032 23.933-30.232Q23.813-30.432 23.499-30.432Q23.229-30.432 22.995-30.296Q22.761-30.159 22.622-29.925Q22.484-29.691 22.484-29.417L22.484-28.057Q22.484-27.920 22.634-27.884Q22.785-27.848 23.010-27.848",[759],[737,6933,6934],{"transform":6927},[745,6935],{"d":6936,"fill":782,"stroke":782,"className":6937,"style":804},"M26.093-28.409L26.093-30.306L25.454-30.306L25.454-30.528Q25.772-30.528 25.989-30.738Q26.206-30.948 26.306-31.258Q26.407-31.567 26.407-31.875L26.674-31.875L26.674-30.586L27.751-30.586L27.751-30.306L26.674-30.306L26.674-28.422Q26.674-28.146 26.778-27.947Q26.882-27.749 27.142-27.749Q27.299-27.749 27.405-27.853Q27.511-27.958 27.561-28.111Q27.610-28.265 27.610-28.422L27.610-28.836L27.877-28.836L27.877-28.409Q27.877-28.183 27.778-27.973Q27.679-27.763 27.494-27.631Q27.310-27.500 27.081-27.500Q26.643-27.500 26.368-27.737Q26.093-27.975 26.093-28.409",[759],[947,6939,6941,6942,6957,6958,6973,6974,6989,6990,7033],{"className":6940},[950],"A size-",[385,6943,6945],{"className":6944},[388],[385,6946,6948],{"className":6947,"ariaHidden":393},[392],[385,6949,6951,6954],{"className":6950},[397],[385,6952],{"className":6953,"style":4911},[401],[385,6955,2708],{"className":6956},[406]," independent set in ",[385,6959,6961],{"className":6960},[388],[385,6962,6964],{"className":6963,"ariaHidden":393},[392],[385,6965,6967,6970],{"className":6966},[397],[385,6968],{"className":6969,"style":589},[401],[385,6971,1312],{"className":6972},[406,407]," is a size-",[385,6975,6977],{"className":6976},[388],[385,6978,6980],{"className":6979,"ariaHidden":393},[392],[385,6981,6983,6986],{"className":6982},[397],[385,6984],{"className":6985,"style":4911},[401],[385,6987,2708],{"className":6988},[406]," clique in the complement ",[385,6991,6993],{"className":6992},[388],[385,6994,6996],{"className":6995,"ariaHidden":393},[392],[385,6997,6999,7002],{"className":6998},[397],[385,7000],{"className":7001,"style":6153},[401],[385,7003,7005],{"className":7004},[406,6157],[385,7006,7008],{"className":7007},[1073],[385,7009,7011],{"className":7010},[1077],[385,7012,7014,7022],{"className":7013,"style":6153},[1081],[385,7015,7016,7019],{"style":6169},[385,7017],{"className":7018,"style":6173},[1089],[385,7020,1312],{"className":7021},[406,407],[385,7023,7024,7027],{"style":6179},[385,7025],{"className":7026,"style":6173},[1089],[385,7028,7030],{"className":7029,"style":6187},[6186],[385,7031,6191],{"className":7032},[406]," on the same vertices.",[502,7035,7037],{"id":7036},"the-p-versus-np-question","The P versus NP question",[381,7039,7040,7041,7077,7078,7093,7094,7097,7098,7116,7117,7120],{},"We now have two classes with ",[385,7042,7044],{"className":7043},[388],[385,7045,7047,7065],{"className":7046,"ariaHidden":393},[392],[385,7048,7050,7053,7056,7059,7062],{"className":7049},[397],[385,7051],{"className":7052,"style":1842},[401],[385,7054,479],{"className":7055},[406,478],[385,7057],{"className":7058,"style":640},[422],[385,7060,1852],{"className":7061},[644],[385,7063],{"className":7064,"style":640},[422],[385,7066,7068,7071],{"className":7067},[397],[385,7069],{"className":7070,"style":474},[401],[385,7072,7074],{"className":7073},[406],[385,7075,499],{"className":7076},[406,478],". Problems in\n",[385,7079,7081],{"className":7080},[388],[385,7082,7084],{"className":7083,"ariaHidden":393},[392],[385,7085,7087,7090],{"className":7086},[397],[385,7088],{"className":7089,"style":474},[401],[385,7091,479],{"className":7092},[406,478]," can be ",[447,7095,7096],{},"solved"," quickly; problems in ",[385,7099,7101],{"className":7100},[388],[385,7102,7104],{"className":7103,"ariaHidden":393},[392],[385,7105,7107,7110],{"className":7106},[397],[385,7108],{"className":7109,"style":474},[401],[385,7111,7113],{"className":7112},[406],[385,7114,499],{"className":7115},[406,478]," can at least\nhave their solutions ",[447,7118,7119],{},"checked"," quickly. The defining open question of\ntheoretical computer science is whether checking is genuinely easier than\nsolving.",[522,7122,7124],{"type":7123},"note",[381,7125,7126,7204,7205,7208],{},[455,7127,7128,7129,1024],{},"Question (",[385,7130,7132],{"className":7131},[388],[385,7133,7135,7192],{"className":7134,"ariaHidden":393},[392],[385,7136,7138,7142,7145,7148,7189],{"className":7137},[397],[385,7139],{"className":7140,"style":7141},[401],"height:1.153em;",[385,7143,479],{"className":7144},[406,478],[385,7146],{"className":7147,"style":640},[422],[385,7149,7151],{"className":7150},[644],[385,7152,7155],{"className":7153},[427,7154],"op-limits",[385,7156,7158],{"className":7157},[1073],[385,7159,7161],{"className":7160},[1077],[385,7162,7164,7174],{"className":7163,"style":7141},[1081],[385,7165,7166,7169],{"style":6169},[385,7167],{"className":7168,"style":6173},[1089],[385,7170,7171],{},[385,7172,5856],{"className":7173},[427],[385,7175,7177,7180],{"style":7176},"top:-3.5669em;margin-left:0em;",[385,7178],{"className":7179,"style":6173},[1089],[385,7181,7183],{"className":7182},[1094,1095,1096,1097],[385,7184,7186],{"className":7185},[406,1097],[385,7187,689],{"className":7188},[443,1097],[385,7190],{"className":7191,"style":640},[422],[385,7193,7195,7198],{"className":7194},[397],[385,7196],{"className":7197,"style":474},[401],[385,7199,7201],{"className":7200},[406],[385,7202,499],{"className":7203},[406,478]," Is every problem whose solutions\ncan be verified in polynomial time also ",[447,7206,7207],{},"solvable"," in polynomial time?",[381,7210,7211,7212,7214,7215,7291,7292,7300,7301,7319,7320,7343,7344,7347,7348,7366,7367,480,7382,7400],{},"Almost everyone believes the answer is ",[455,7213,519],{},": that ",[385,7216,7218],{"className":7217},[388],[385,7219,7221,7279],{"className":7220,"ariaHidden":393},[392],[385,7222,7224,7227,7230,7233,7276],{"className":7223},[397],[385,7225],{"className":7226,"style":2501},[401],[385,7228,479],{"className":7229},[406,478],[385,7231],{"className":7232,"style":640},[422],[385,7234,7236,7269,7273],{"className":7235},[644],[385,7237,7239],{"className":7238},[644],[385,7240,7243],{"className":7241},[406,7242],"vbox",[385,7244,7247],{"className":7245},[7246],"thinbox",[385,7248,7251,7254,7265],{"className":7249},[7250],"rlap",[385,7252],{"className":7253,"style":2501},[401],[385,7255,7258],{"className":7256},[7257],"inner",[385,7259,7261],{"className":7260},[406],[385,7262,7264],{"className":7263},[644],"",[385,7266],{"className":7267},[7268],"fix",[385,7270],{"className":7271},[422,7272],"nobreak",[385,7274,5856],{"className":7275},[644],[385,7277],{"className":7278,"style":640},[422],[385,7280,7282,7285],{"className":7281},[397],[385,7283],{"className":7284,"style":474},[401],[385,7286,7288],{"className":7287},[406],[385,7289,499],{"className":7290},[406,478],", and that finding a needle is fundamentally harder than\nrecognizing one once found. But no proof is known in either direction, and the\nquestion carries a million-dollar Clay Millennium Prize.",[1277,7293,7294],{},[986,7295,7299],{"href":7296,"ariaDescribedBy":7297,"dataFootnoteRef":376,"id":7298},"#user-content-fn-skiena-pnp",[1283],"user-content-fnref-skiena-pnp","5"," What makes it more\nthan a curiosity is the next lesson's discovery: there are problems in\n",[385,7302,7304],{"className":7303},[388],[385,7305,7307],{"className":7306,"ariaHidden":393},[392],[385,7308,7310,7313],{"className":7309},[397],[385,7311],{"className":7312,"style":474},[401],[385,7314,7316],{"className":7315},[406],[385,7317,499],{"className":7318},[406,478],", the ",[986,7321,7322],{"href":364},[455,7323,7324,7342],{},[385,7325,7327],{"className":7326},[388],[385,7328,7330],{"className":7329,"ariaHidden":393},[392],[385,7331,7333,7336],{"className":7332},[397],[385,7334],{"className":7335,"style":474},[401],[385,7337,7339],{"className":7338},[406],[385,7340,499],{"className":7341},[406,478],"-complete"," problems, that are ",[447,7345,7346],{},"universally\nhardest",". Every problem in ",[385,7349,7351],{"className":7350},[388],[385,7352,7354],{"className":7353,"ariaHidden":393},[392],[385,7355,7357,7360],{"className":7356},[397],[385,7358],{"className":7359,"style":474},[401],[385,7361,7363],{"className":7362},[406],[385,7364,499],{"className":7365},[406,478]," reduces to each of them. A\npolynomial-time algorithm for even one would collapse ",[385,7368,7370],{"className":7369},[388],[385,7371,7373],{"className":7372,"ariaHidden":393},[392],[385,7374,7376,7379],{"className":7375},[397],[385,7377],{"className":7378,"style":474},[401],[385,7380,479],{"className":7381},[406,478],[385,7383,7385],{"className":7384},[388],[385,7386,7388],{"className":7387,"ariaHidden":393},[392],[385,7389,7391,7394],{"className":7390},[397],[385,7392],{"className":7393,"style":474},[401],[385,7395,7397],{"className":7396},[406],[385,7398,499],{"className":7399},[406,478]," into a single class; a proof that even one requires\nsuper-polynomial time would settle the question the other way.",[724,7402,7404,7457],{"className":7403},[727,728],[730,7405,7409],{"xmlns":732,"width":7406,"height":7407,"viewBox":7408},"291.102","153.227","-75 -75 218.327 114.920",[737,7410,7411,7414,7422,7425,7432,7435],{"stroke":739,"style":740},[745,7412],{"fill":747,"d":7413,"style":743},"M-65.203 33.25V-68.87a3 3 0 0 1 3-3h198.86a3 3 0 0 1 3 3V33.25a3 3 0 0 1-3 3h-198.86a3 3 0 0 1-3-3Zm204.86-105.12",[737,7415,7417],{"transform":7416},"translate(-94.629 -40.168)",[745,7418],{"d":7419,"fill":739,"stroke":739,"className":7420,"style":7421},"M38.985-17.810L38.169-17.810L38.169-24.748L39.468-24.748Q39.732-24.226 40.157-23.379Q40.581-22.532 41.219-21.250Q41.856-19.968 42.195-19.277Q42.535-18.586 42.535-18.542L42.535-24.748L43.355-24.748L43.355-17.810L42.056-17.810Q41.929-18.074 41.365-19.199Q40.801-20.325 40.281-21.367Q39.761-22.410 39.378-23.193Q38.995-23.977 38.985-24.021L38.985-17.810M46.177-17.810L45.249-17.810L45.249-24.748L47.779-24.748Q48.213-24.748 48.633-24.604Q49.053-24.460 49.390-24.194Q49.727-23.928 49.927-23.552Q50.127-23.176 50.127-22.722Q50.127-22.122 49.788-21.650Q49.449-21.179 48.904-20.920Q48.360-20.662 47.779-20.662L46.177-20.662L46.177-17.810M46.148-24.148L46.148-21.282L47.539-21.282Q47.998-21.282 48.394-21.443Q48.789-21.604 49.034-21.931Q49.278-22.258 49.278-22.722Q49.278-23.176 49.034-23.503Q48.789-23.831 48.392-23.989Q47.994-24.148 47.539-24.148",[759],"stroke-width:0.300",[745,7423],{"fill":781,"stroke":782,"d":7424},"M54.298-17.81c0-21.214-24.84-38.411-55.483-38.411S-56.667-39.024-56.667-17.81s24.84 38.411 55.482 38.411c30.643 0 55.483-17.197 55.483-38.411Zm-55.483 0",[737,7426,7428],{"transform":7427},"translate(-41.606 3.472)",[745,7429],{"d":7430,"fill":739,"stroke":739,"className":7431,"style":7421},"M39.097-17.810L38.169-17.810L38.169-24.748L40.699-24.748Q41.133-24.748 41.553-24.604Q41.973-24.460 42.310-24.194Q42.647-23.928 42.847-23.552Q43.047-23.176 43.047-22.722Q43.047-22.122 42.708-21.650Q42.369-21.179 41.824-20.920Q41.280-20.662 40.699-20.662L39.097-20.662L39.097-17.810M39.068-24.148L39.068-21.282L40.459-21.282Q40.918-21.282 41.314-21.443Q41.709-21.604 41.954-21.931Q42.198-22.258 42.198-22.722Q42.198-23.176 41.954-23.503Q41.709-23.831 41.311-23.989Q40.914-24.148 40.459-24.148",[759],[745,7433],{"fill":770,"stroke":1991,"d":7434},"M125.43-17.81c0-21.214-12.102-38.411-27.03-38.411S71.37-39.024 71.37-17.81 83.47 20.601 98.4 20.601s27.03-17.197 27.03-38.411Zm-27.03 0",[737,7436,7438,7445,7451],{"stroke":747,"fontSize":7437},"10",[737,7439,7441],{"transform":7440},"translate(41.729 8.5)",[745,7442],{"d":7443,"fill":739,"stroke":739,"className":7444,"style":7421},"M50.026-29.810L49.210-29.810L49.210-36.748L50.509-36.748Q50.773-36.226 51.198-35.379Q51.622-34.532 52.260-33.250Q52.897-31.968 53.236-31.277Q53.576-30.586 53.576-30.542L53.576-36.748L54.396-36.748L54.396-29.810L53.097-29.810Q52.970-30.074 52.406-31.199Q51.842-32.325 51.322-33.367Q50.802-34.410 50.419-35.193Q50.036-35.977 50.026-36.021L50.026-29.810M57.218-29.810L56.290-29.810L56.290-36.748L58.820-36.748Q59.254-36.748 59.674-36.604Q60.094-36.460 60.431-36.194Q60.768-35.928 60.968-35.552Q61.168-35.176 61.168-34.722Q61.168-34.122 60.829-33.650Q60.490-33.179 59.945-32.920Q59.401-32.662 58.820-32.662L57.218-32.662L57.218-29.810M57.189-36.148L57.189-33.282L58.581-33.282Q59.039-33.282 59.435-33.443Q59.831-33.604 60.075-33.931Q60.319-34.258 60.319-34.722Q60.319-35.176 60.075-35.503Q59.831-35.831 59.433-35.989Q59.035-36.148 58.581-36.148",[759],[737,7446,7447],{"transform":7440},[745,7448],{"d":7449,"fill":739,"stroke":739,"className":7450,"style":7421},"M64.500-31.661L61.853-31.661L61.853-32.281L64.500-32.281",[759],[737,7452,7453],{"transform":7440},[745,7454],{"d":7455,"fill":739,"stroke":739,"className":7456,"style":7421},"M39.717-17.698Q39.112-17.698 38.619-18.013Q38.125-18.328 37.842-18.852Q37.559-19.377 37.559-19.968Q37.559-20.559 37.840-21.101Q38.121-21.643 38.616-21.968Q39.112-22.292 39.717-22.292Q40.303-22.292 40.784-22.063Q41.265-21.833 41.265-21.311Q41.265-21.116 41.126-20.972Q40.987-20.828 40.787-20.828Q40.586-20.828 40.447-20.972Q40.308-21.116 40.308-21.311Q40.308-21.487 40.420-21.616Q40.533-21.746 40.699-21.780Q40.352-21.999 39.727-21.999Q39.248-21.999 38.956-21.682Q38.663-21.365 38.545-20.896Q38.428-20.427 38.428-19.968Q38.428-19.485 38.572-19.033Q38.716-18.581 39.036-18.286Q39.356-17.991 39.839-17.991Q40.313-17.991 40.645-18.281Q40.977-18.572 41.099-19.040Q41.099-19.099 41.177-19.099L41.299-19.099Q41.329-19.099 41.353-19.072Q41.377-19.045 41.377-19.011L41.377-18.982Q41.226-18.391 40.777-18.044Q40.328-17.698 39.717-17.698M44.165-17.698Q43.565-17.698 43.052-18.003Q42.539-18.308 42.242-18.821Q41.944-19.333 41.944-19.939Q41.944-20.398 42.107-20.823Q42.271-21.247 42.576-21.582Q42.881-21.916 43.287-22.104Q43.692-22.292 44.165-22.292Q44.781-22.292 45.286-21.968Q45.791-21.643 46.084-21.099Q46.377-20.554 46.377-19.939Q46.377-19.338 46.080-18.823Q45.782-18.308 45.271-18.003Q44.761-17.698 44.165-17.698M44.165-17.991Q44.966-17.991 45.235-18.572Q45.503-19.153 45.503-20.051Q45.503-20.554 45.450-20.884Q45.396-21.213 45.215-21.482Q45.103-21.648 44.930-21.772Q44.756-21.897 44.563-21.963Q44.371-22.029 44.165-22.029Q43.853-22.029 43.572-21.887Q43.291-21.746 43.106-21.482Q42.920-21.199 42.869-20.859Q42.818-20.520 42.818-20.051Q42.818-19.490 42.915-19.043Q43.013-18.596 43.309-18.293Q43.604-17.991 44.165-17.991M49.253-17.810L46.963-17.810L46.963-18.162Q47.305-18.162 47.525-18.215Q47.745-18.269 47.745-18.479L47.745-21.208Q47.745-21.477 47.664-21.597Q47.583-21.716 47.432-21.743Q47.281-21.770 46.963-21.770L46.963-22.122L48.414-22.229L48.414-21.252Q48.614-21.682 49.007-21.956Q49.400-22.229 49.864-22.229Q51.016-22.229 51.216-21.291Q51.416-21.711 51.802-21.970Q52.188-22.229 52.647-22.229Q53.101-22.229 53.411-22.082Q53.721-21.936 53.877-21.636Q54.034-21.335 54.034-20.881L54.034-18.479Q54.034-18.269 54.256-18.215Q54.478-18.162 54.815-18.162L54.815-17.810L52.525-17.810L52.525-18.162Q52.867-18.162 53.086-18.215Q53.306-18.269 53.306-18.479L53.306-20.852Q53.306-21.355 53.164-21.663Q53.023-21.970 52.583-21.970Q52.007-21.970 51.631-21.506Q51.255-21.042 51.255-20.452L51.255-18.479Q51.255-18.269 51.475-18.215Q51.695-18.162 52.037-18.162L52.037-17.810L49.747-17.810L49.747-18.162Q50.088-18.162 50.308-18.215Q50.528-18.269 50.528-18.479L50.528-20.852Q50.528-21.340 50.386-21.655Q50.245-21.970 49.805-21.970Q49.224-21.970 48.851-21.506Q48.477-21.042 48.477-20.452L48.477-18.479Q48.477-18.269 48.697-18.215Q48.916-18.162 49.253-18.162L49.253-17.810M57.544-15.872L55.254-15.872L55.254-16.218Q55.596-16.218 55.816-16.277Q56.036-16.335 56.036-16.540L56.036-21.360Q56.036-21.633 55.840-21.702Q55.645-21.770 55.254-21.770L55.254-22.122L56.734-22.229L56.734-21.609Q57.007-21.912 57.371-22.070Q57.735-22.229 58.145-22.229Q58.736-22.229 59.209-21.909Q59.683-21.589 59.949-21.069Q60.215-20.549 60.215-19.968Q60.215-19.363 59.920-18.840Q59.624-18.318 59.114-18.008Q58.604-17.698 57.994-17.698Q57.266-17.698 56.763-18.289L56.763-16.540Q56.763-16.335 56.985-16.277Q57.207-16.218 57.544-16.218L57.544-15.872M56.763-21.169L56.763-18.782Q56.939-18.425 57.251-18.193Q57.564-17.961 57.935-17.961Q58.282-17.961 58.548-18.147Q58.814-18.332 58.995-18.645Q59.175-18.957 59.261-19.302Q59.346-19.646 59.346-19.968Q59.346-20.369 59.202-20.835Q59.058-21.301 58.763-21.621Q58.467-21.941 58.047-21.941Q57.642-21.941 57.303-21.733Q56.963-21.526 56.763-21.169M63.116-17.810L60.855-17.810L60.855-18.162Q61.197-18.162 61.416-18.215Q61.636-18.269 61.636-18.479L61.636-23.728Q61.636-23.997 61.556-24.116Q61.475-24.236 61.324-24.263Q61.172-24.289 60.855-24.289L60.855-24.641L62.339-24.748L62.339-18.479Q62.339-18.269 62.559-18.215Q62.779-18.162 63.116-18.162L63.116-17.810M65.806-17.698Q65.196-17.698 64.685-18.018Q64.175-18.337 63.885-18.872Q63.594-19.407 63.594-20.002Q63.594-20.588 63.860-21.116Q64.126-21.643 64.602-21.968Q65.079-22.292 65.665-22.292Q66.123-22.292 66.463-22.139Q66.802-21.985 67.022-21.711Q67.242-21.438 67.354-21.067Q67.466-20.696 67.466-20.251Q67.466-20.120 67.364-20.120L64.468-20.120L64.468-20.012Q64.468-19.182 64.803-18.586Q65.137-17.991 65.894-17.991Q66.202-17.991 66.463-18.127Q66.724-18.264 66.917-18.508Q67.110-18.752 67.178-19.031Q67.188-19.065 67.215-19.092Q67.242-19.119 67.276-19.119L67.364-19.119Q67.466-19.119 67.466-18.992Q67.325-18.425 66.856-18.061Q66.387-17.698 65.806-17.698M64.478-20.369L66.758-20.369Q66.758-20.745 66.653-21.130Q66.548-21.516 66.304-21.772Q66.060-22.029 65.665-22.029Q65.098-22.029 64.788-21.499Q64.478-20.969 64.478-20.369M68.775-19.011L68.775-21.770L67.945-21.770L67.945-22.029Q68.599-22.029 68.907-22.639Q69.214-23.249 69.214-23.962L69.502-23.962L69.502-22.122L70.914-22.122L70.914-21.770L69.502-21.770L69.502-19.031Q69.502-18.616 69.642-18.303Q69.781-17.991 70.142-17.991Q70.484-17.991 70.635-18.320Q70.787-18.650 70.787-19.031L70.787-19.622L71.075-19.622L71.075-19.011Q71.075-18.699 70.960-18.393Q70.845-18.088 70.621-17.893Q70.396-17.698 70.074-17.698Q69.473-17.698 69.124-18.057Q68.775-18.415 68.775-19.011M74.126-17.698Q73.516-17.698 73.006-18.018Q72.496-18.337 72.205-18.872Q71.915-19.407 71.915-20.002Q71.915-20.588 72.181-21.116Q72.447-21.643 72.923-21.968Q73.399-22.292 73.985-22.292Q74.444-22.292 74.783-22.139Q75.123-21.985 75.342-21.711Q75.562-21.438 75.674-21.067Q75.787-20.696 75.787-20.251Q75.787-20.120 75.684-20.120L72.789-20.120L72.789-20.012Q72.789-19.182 73.123-18.586Q73.457-17.991 74.214-17.991Q74.522-17.991 74.783-18.127Q75.044-18.264 75.237-18.508Q75.430-18.752 75.498-19.031Q75.508-19.065 75.535-19.092Q75.562-19.119 75.596-19.119L75.684-19.119Q75.787-19.119 75.787-18.992Q75.645-18.425 75.176-18.061Q74.707-17.698 74.126-17.698M72.798-20.369L75.079-20.369Q75.079-20.745 74.974-21.130Q74.869-21.516 74.624-21.772Q74.380-22.029 73.985-22.029Q73.418-22.029 73.108-21.499Q72.798-20.969 72.798-20.369",[759],[947,7458,7460],{"className":7459},[950],"Conjectured world with P and NP-complete as disjoint regions inside NP.",[381,7462,7463,7464,7467,7468,7483,7484,7502,7503,7521,7522,7558],{},"The sketch shows the ",[447,7465,7466],{},"conjectured"," world: ",[385,7469,7471],{"className":7470},[388],[385,7472,7474],{"className":7473,"ariaHidden":393},[392],[385,7475,7477,7480],{"className":7476},[397],[385,7478],{"className":7479,"style":474},[401],[385,7481,479],{"className":7482},[406,478]," and the\n",[385,7485,7487],{"className":7486},[388],[385,7488,7490],{"className":7489,"ariaHidden":393},[392],[385,7491,7493,7496],{"className":7492},[397],[385,7494],{"className":7495,"style":474},[401],[385,7497,7499],{"className":7498},[406],[385,7500,499],{"className":7501},[406,478],"-complete problems sit as disjoint regions inside ",[385,7504,7506],{"className":7505},[388],[385,7507,7509],{"className":7508,"ariaHidden":393},[392],[385,7510,7512,7515],{"className":7511},[397],[385,7513],{"className":7514,"style":474},[401],[385,7516,7518],{"className":7517},[406],[385,7519,499],{"className":7520},[406,478],". If\n",[385,7523,7525],{"className":7524},[388],[385,7526,7528,7546],{"className":7527,"ariaHidden":393},[392],[385,7529,7531,7534,7537,7540,7543],{"className":7530},[397],[385,7532],{"className":7533,"style":474},[401],[385,7535,479],{"className":7536},[406,478],[385,7538],{"className":7539,"style":640},[422],[385,7541,5856],{"className":7542},[644],[385,7544],{"className":7545,"style":640},[422],[385,7547,7549,7552],{"className":7548},[397],[385,7550],{"className":7551,"style":474},[401],[385,7553,7555],{"className":7554},[406],[385,7556,499],{"className":7557},[406,478],", all three regions coincide and the entire picture\ncollapses to a single blob. We do not know which world we live in, but we will\nsee that the two regions, if separate, can never overlap.",[502,7560,7562],{"id":7561},"takeaways","Takeaways",[1455,7564,7565,7572,7655,7908,7998,8058],{},[1458,7566,7567,7568,7571],{},"We study ",[455,7569,7570],{},"decision problems"," (yes\u002Fno answers); optimization problems reduce\nto them by binary search, so little is lost.",[1458,7573,7574,7589,7590,7592,7593,7611,7612,7614,7615,7618,7619,520],{},[385,7575,7577],{"className":7576},[388],[385,7578,7580],{"className":7579,"ariaHidden":393},[392],[385,7581,7583,7586],{"className":7582},[397],[385,7584],{"className":7585,"style":474},[401],[385,7587,479],{"className":7588},[406,478]," is the class of problems ",[455,7591,7207],{}," in polynomial time;\n",[385,7594,7596],{"className":7595},[388],[385,7597,7599],{"className":7598,"ariaHidden":393},[392],[385,7600,7602,7605],{"className":7601},[397],[385,7603],{"className":7604,"style":474},[401],[385,7606,7608],{"className":7607},[406],[385,7609,499],{"className":7610},[406,478]," is the class of problems whose ",[455,7613,515],{},"-answers admit a short,\npolynomial-time ",[455,7616,7617],{},"checkable"," certificate. Always ",[385,7620,7622],{"className":7621},[388],[385,7623,7625,7643],{"className":7624,"ariaHidden":393},[392],[385,7626,7628,7631,7634,7637,7640],{"className":7627},[397],[385,7629],{"className":7630,"style":1842},[401],[385,7632,479],{"className":7633},[406,478],[385,7635],{"className":7636,"style":640},[422],[385,7638,1852],{"className":7639},[644],[385,7641],{"className":7642,"style":640},[422],[385,7644,7646,7649],{"className":7645},[397],[385,7647],{"className":7648,"style":474},[401],[385,7650,7652],{"className":7651},[406],[385,7653,499],{"className":7654},[406,478],[1458,7656,7657,7658,576,7661,7731,7732,7735,7736,7751,7752,7784,7785,7800,7801,7830,7831,7846,7847,7874,7875,7890,7891,7893,520],{},"A ",[455,7659,7660],{},"polynomial-time reduction",[385,7662,7664],{"className":7663},[388],[385,7665,7667,7722],{"className":7666,"ariaHidden":393},[392],[385,7668,7670,7673,7676,7679,7719],{"className":7669},[397],[385,7671],{"className":7672,"style":2421},[401],[385,7674,2269],{"className":7675},[406,407],[385,7677],{"className":7678,"style":640},[422],[385,7680,7682,7685],{"className":7681},[644],[385,7683,2434],{"className":7684},[644],[385,7686,7688],{"className":7687},[1069],[385,7689,7691,7711],{"className":7690},[1073,2441],[385,7692,7694,7708],{"className":7693},[1077],[385,7695,7697],{"className":7696,"style":2448},[1081],[385,7698,7699,7702],{"style":2451},[385,7700],{"className":7701,"style":1090},[1089],[385,7703,7705],{"className":7704},[1094,1095,1096,1097],[385,7706,479],{"className":7707,"style":2461},[406,407,1097],[385,7709,2466],{"className":7710},[2465],[385,7712,7714],{"className":7713},[1077],[385,7715,7717],{"className":7716,"style":2473},[1081],[385,7718],{},[385,7720],{"className":7721,"style":640},[422],[385,7723,7725,7728],{"className":7724},[397],[385,7726],{"className":7727,"style":589},[401],[385,7729,2252],{"className":7730,"style":2251},[406,407]," is a ",[455,7733,7734],{},"transform–solve–transform","\npipeline: transform the input, call a black-box solver for ",[385,7737,7739],{"className":7738},[388],[385,7740,7742],{"className":7741,"ariaHidden":393},[392],[385,7743,7745,7748],{"className":7744},[397],[385,7746],{"className":7747,"style":589},[401],[385,7749,2252],{"className":7750,"style":2251},[406,407],", transform its\noutput back. It means ",[599,7753,7754,2685,7769],{},[385,7755,7757],{"className":7756},[388],[385,7758,7760],{"className":7759,"ariaHidden":393},[392],[385,7761,7763,7766],{"className":7762},[397],[385,7764],{"className":7765,"style":589},[401],[385,7767,2269],{"className":7768},[406,407],[385,7770,7772],{"className":7771},[388],[385,7773,7775],{"className":7774,"ariaHidden":393},[392],[385,7776,7778,7781],{"className":7777},[397],[385,7779],{"className":7780,"style":589},[401],[385,7782,2252],{"className":7783,"style":2251},[406,407],": tractability flows forward\n(",[385,7786,7788],{"className":7787},[388],[385,7789,7791],{"className":7790,"ariaHidden":393},[392],[385,7792,7794,7797],{"className":7793},[397],[385,7795],{"className":7796,"style":589},[401],[385,7798,2252],{"className":7799,"style":2251},[406,407]," easy ",[385,7802,7804],{"className":7803},[388],[385,7805,7807,7821],{"className":7806,"ariaHidden":393},[392],[385,7808,7810,7814,7818],{"className":7809},[397],[385,7811],{"className":7812,"style":7813},[401],"height:0.3669em;",[385,7815,7817],{"className":7816},[644],"⇒",[385,7819],{"className":7820,"style":640},[422],[385,7822,7824,7827],{"className":7823},[397],[385,7825],{"className":7826,"style":589},[401],[385,7828,2269],{"className":7829},[406,407]," easy), hardness flows backward (",[385,7832,7834],{"className":7833},[388],[385,7835,7837],{"className":7836,"ariaHidden":393},[392],[385,7838,7840,7843],{"className":7839},[397],[385,7841],{"className":7842,"style":589},[401],[385,7844,2269],{"className":7845},[406,407]," hard\n",[385,7848,7850],{"className":7849},[388],[385,7851,7853,7865],{"className":7852,"ariaHidden":393},[392],[385,7854,7856,7859,7862],{"className":7855},[397],[385,7857],{"className":7858,"style":7813},[401],[385,7860,7817],{"className":7861},[644],[385,7863],{"className":7864,"style":640},[422],[385,7866,7868,7871],{"className":7867},[397],[385,7869],{"className":7870,"style":589},[401],[385,7872,2252],{"className":7873,"style":2251},[406,407]," hard). To prove ",[385,7876,7878],{"className":7877},[388],[385,7879,7881],{"className":7880,"ariaHidden":393},[392],[385,7882,7884,7887],{"className":7883},[397],[385,7885],{"className":7886,"style":589},[401],[385,7888,2252],{"className":7889,"style":2251},[406,407]," hard, reduce a known hard problem ",[455,7892,3493],{},[385,7894,7896],{"className":7895},[388],[385,7897,7899],{"className":7898,"ariaHidden":393},[392],[385,7900,7902,7905],{"className":7901},[397],[385,7903],{"className":7904,"style":589},[401],[385,7906,2252],{"className":7907,"style":2251},[406,407],[1458,7909,7910,7911,7914,7915,7997],{},"Reductions also ",[447,7912,7913],{},"build"," algorithms: ",[385,7916,7918],{"className":7917},[388],[385,7919,7921,7982],{"className":7920,"ariaHidden":393},[392],[385,7922,7924,7927,7939,7979],{"className":7923},[397],[385,7925],{"className":7926,"style":2501},[401],[385,7928,7930,7936],{"className":7929},[1690,1691],[385,7931,7933],{"className":7932},[406,550],[385,7934,4536],{"className":7935},[406],[385,7937],{"className":7938,"style":640},[422],[385,7940,7942,7945],{"className":7941},[644],[385,7943,2434],{"className":7944},[644],[385,7946,7948],{"className":7947},[1069],[385,7949,7951,7971],{"className":7950},[1073,2441],[385,7952,7954,7968],{"className":7953},[1077],[385,7955,7957],{"className":7956,"style":2448},[1081],[385,7958,7959,7962],{"style":2451},[385,7960],{"className":7961,"style":1090},[1089],[385,7963,7965],{"className":7964},[1094,1095,1096,1097],[385,7966,479],{"className":7967,"style":2461},[406,407,1097],[385,7969,2466],{"className":7970},[2465],[385,7972,7974],{"className":7973},[1077],[385,7975,7977],{"className":7976,"style":2473},[1081],[385,7978],{},[385,7980],{"className":7981,"style":640},[422],[385,7983,7985,7988],{"className":7984},[397],[385,7986],{"className":7987,"style":474},[401],[385,7989,7991],{"className":7990},[1690,1691],[385,7992,7994],{"className":7993},[406,550],[385,7995,4558],{"className":7996},[406]," solves matching by routing it through a flow solver, with\nthe integrality theorem guaranteeing the flow decomposes back into a matching.",[1458,7999,8000,8001,8004,8005,8057],{},"Reductions ",[455,8002,8003],{},"compose",", so ",[385,8006,8008],{"className":8007},[388],[385,8009,8011],{"className":8010,"ariaHidden":393},[392],[385,8012,8014,8017],{"className":8013},[397],[385,8015],{"className":8016,"style":3821},[401],[385,8018,8020,8023],{"className":8019},[644],[385,8021,2434],{"className":8022},[644],[385,8024,8026],{"className":8025},[1069],[385,8027,8029,8049],{"className":8028},[1073,2441],[385,8030,8032,8046],{"className":8031},[1077],[385,8033,8035],{"className":8034,"style":2448},[1081],[385,8036,8037,8040],{"style":2451},[385,8038],{"className":8039,"style":1090},[1089],[385,8041,8043],{"className":8042},[1094,1095,1096,1097],[385,8044,479],{"className":8045,"style":2461},[406,407,1097],[385,8047,2466],{"className":8048},[2465],[385,8050,8052],{"className":8051},[1077],[385,8053,8055],{"className":8054,"style":2473},[1081],[385,8056],{}," chains, building a web of equivalent\ndifficulty.",[1458,8059,8060,8061,8097,8098,8116],{},"Whether ",[385,8062,8064],{"className":8063},[388],[385,8065,8067,8085],{"className":8066,"ariaHidden":393},[392],[385,8068,8070,8073,8076,8079,8082],{"className":8069},[397],[385,8071],{"className":8072,"style":474},[401],[385,8074,479],{"className":8075},[406,478],[385,8077],{"className":8078,"style":640},[422],[385,8080,5856],{"className":8081},[644],[385,8083],{"className":8084,"style":640},[422],[385,8086,8088,8091],{"className":8087},[397],[385,8089],{"className":8090,"style":474},[401],[385,8092,8094],{"className":8093},[406],[385,8095,499],{"className":8096},[406,478],", that is, whether checking is as easy as\nsolving, is the central open question, and the hardest problems in ",[385,8099,8101],{"className":8100},[388],[385,8102,8104],{"className":8103,"ariaHidden":393},[392],[385,8105,8107,8110],{"className":8106},[397],[385,8108],{"className":8109,"style":474},[401],[385,8111,8113],{"className":8112},[406],[385,8114,499],{"className":8115},[406,478]," hold\nthe key.",[8118,8119,8122,8127],"section",{"className":8120,"dataFootnotes":376},[8121],"footnotes",[502,8123,8126],{"className":8124,"id":1283},[8125],"sr-only","Footnotes",[8128,8129,8130,8160,8190,8272,8284],"ol",{},[1458,8131,8133,8136,8137,8152,8153],{"id":8132},"user-content-fn-clrs-p",[455,8134,8135],{},"CLRS",", Ch. 34 — NP-Completeness (§34.1): the class ",[385,8138,8140],{"className":8139},[388],[385,8141,8143],{"className":8142,"ariaHidden":393},[392],[385,8144,8146,8149],{"className":8145},[397],[385,8147],{"className":8148,"style":474},[401],[385,8150,479],{"className":8151},[406,478]," of polynomial-time-solvable decision problems and its closure-based robustness. ",[986,8154,8159],{"href":8155,"ariaLabel":8156,"className":8157,"dataFootnoteBackref":376},"#user-content-fnref-clrs-p","Back to reference 1",[8158],"data-footnote-backref","↩",[1458,8161,8163,8165,8166,8184,8185],{"id":8162},"user-content-fn-clrs-np",[455,8164,8135],{},", Ch. 34 — NP-Completeness (§34.2): the class ",[385,8167,8169],{"className":8168},[388],[385,8170,8172],{"className":8171,"ariaHidden":393},[392],[385,8173,8175,8178],{"className":8174},[397],[385,8176],{"className":8177,"style":474},[401],[385,8179,8181],{"className":8180},[406],[385,8182,499],{"className":8183},[406,478]," defined via a polynomial-time verifier and short certificates. ",[986,8186,8159],{"href":8187,"ariaLabel":8188,"className":8189,"dataFootnoteBackref":376},"#user-content-fnref-clrs-np","Back to reference 2",[8158],[1458,8191,8193,8195,8196,8266,8267],{"id":8192},"user-content-fn-clrs-reduce",[455,8194,8135],{},", Ch. 34 — NP-Completeness (§34.3): polynomial-time reductions ",[385,8197,8199],{"className":8198},[388],[385,8200,8202,8257],{"className":8201,"ariaHidden":393},[392],[385,8203,8205,8208,8211,8214,8254],{"className":8204},[397],[385,8206],{"className":8207,"style":2421},[401],[385,8209,2269],{"className":8210},[406,407],[385,8212],{"className":8213,"style":640},[422],[385,8215,8217,8220],{"className":8216},[644],[385,8218,2434],{"className":8219},[644],[385,8221,8223],{"className":8222},[1069],[385,8224,8226,8246],{"className":8225},[1073,2441],[385,8227,8229,8243],{"className":8228},[1077],[385,8230,8232],{"className":8231,"style":2448},[1081],[385,8233,8234,8237],{"style":2451},[385,8235],{"className":8236,"style":1090},[1089],[385,8238,8240],{"className":8239},[1094,1095,1096,1097],[385,8241,479],{"className":8242,"style":2461},[406,407,1097],[385,8244,2466],{"className":8245},[2465],[385,8247,8249],{"className":8248},[1077],[385,8250,8252],{"className":8251,"style":2473},[1081],[385,8253],{},[385,8255],{"className":8256,"style":640},[422],[385,8258,8260,8263],{"className":8259},[397],[385,8261],{"className":8262,"style":589},[401],[385,8264,2252],{"className":8265,"style":2251},[406,407]," as a measure of relative difficulty. ",[986,8268,8159],{"href":8269,"ariaLabel":8270,"className":8271,"dataFootnoteBackref":376},"#user-content-fnref-clrs-reduce","Back to reference 3",[8158],[1458,8273,8275,8278,8279],{"id":8274},"user-content-fn-erickson-reduce",[455,8276,8277],{},"Erickson",", Ch. 12 — NP-Hardness: the Independent-Set \u002F Clique equivalence via graph complementation. ",[986,8280,8159],{"href":8281,"ariaLabel":8282,"className":8283,"dataFootnoteBackref":376},"#user-content-fnref-erickson-reduce","Back to reference 4",[8158],[1458,8285,8287,8290,8291,8363,8364],{"id":8286},"user-content-fn-skiena-pnp",[455,8288,8289],{},"Skiena",", §11 — NP-Completeness: the ",[385,8292,8294],{"className":8293},[388],[385,8295,8297,8351],{"className":8296,"ariaHidden":393},[392],[385,8298,8300,8303,8306,8309,8348],{"className":8299},[397],[385,8301],{"className":8302,"style":7141},[401],[385,8304,479],{"className":8305},[406,478],[385,8307],{"className":8308,"style":640},[422],[385,8310,8312],{"className":8311},[644],[385,8313,8315],{"className":8314},[427,7154],[385,8316,8318],{"className":8317},[1073],[385,8319,8321],{"className":8320},[1077],[385,8322,8324,8334],{"className":8323,"style":7141},[1081],[385,8325,8326,8329],{"style":6169},[385,8327],{"className":8328,"style":6173},[1089],[385,8330,8331],{},[385,8332,5856],{"className":8333},[427],[385,8335,8336,8339],{"style":7176},[385,8337],{"className":8338,"style":6173},[1089],[385,8340,8342],{"className":8341},[1094,1095,1096,1097],[385,8343,8345],{"className":8344},[406,1097],[385,8346,689],{"className":8347},[443,1097],[385,8349],{"className":8350,"style":640},[422],[385,8352,8354,8357],{"className":8353},[397],[385,8355],{"className":8356,"style":474},[401],[385,8358,8360],{"className":8359},[406],[385,8361,499],{"className":8362},[406,478]," question and the belief that verifying is easier than solving. ",[986,8365,8159],{"href":8366,"ariaLabel":8367,"className":8368,"dataFootnoteBackref":376},"#user-content-fnref-skiena-pnp","Back to reference 5",[8158],{"title":376,"searchDepth":18,"depth":18,"links":8370},[8371,8372,8373,8374,8375,8376,8377,8378,8379],{"id":504,"depth":18,"text":505},{"id":994,"depth":18,"text":995},{"id":1288,"depth":18,"text":1289},{"id":2228,"depth":18,"text":2229},{"id":4093,"depth":18,"text":4094},{"id":5974,"depth":18,"text":5975},{"id":7036,"depth":18,"text":7037},{"id":7561,"depth":18,"text":7562},{"id":1283,"depth":18,"text":8126},"Until now this course has been a catalog of triumphs: sorting in\nO(nlogn), shortest paths in near-linear time, spanning trees almost for\nfree. It is tempting to believe that every problem yields to a clever enough\nalgorithm. It does not. There is a large, eminently practical family of\nproblems (scheduling, routing, packing, constraint satisfaction) for which,\nafter more than half a century of effort, nobody has found an algorithm\nthat is fast on every instance, and for which we have strong reasons to\nsuspect none exists.","md",{"moduleNumber":196,"lessonNumber":6,"order":8383},801,true,[8386,8390,8393],{"title":8387,"slug":8388,"difficulty":8389},"Partition Equal Subset Sum","partition-equal-subset-sum","Medium",{"title":8391,"slug":8392,"difficulty":8389},"Partition to K Equal Sum Subsets","partition-to-k-equal-sum-subsets",{"title":8394,"slug":8395,"difficulty":8389},"Satisfiability of Equality Equations","satisfiability-of-equality-equations","---\ntitle: P, NP, and Reductions\nmodule: Intractability\nmoduleNumber: 8\nlessonNumber: 1\norder: 801\nsummary: >-\n  Most problems we have met so far have fast algorithms. A vast and important\n  family seemingly does not. This lesson builds the vocabulary for that\n  divide: decision problems, the class $\\mathsf{P}$ of problems we can solve\n  quickly, the class $\\mathsf{NP}$ of problems whose solutions we can _check_\n  quickly, and polynomial-time reductions, the tool that lets us compare the\n  difficulty of two problems without solving either.\ntopics: [NP-Completeness]\nsources:\n  - book: CLRS\n    ref: \"Ch. 34 — NP-Completeness\"\n  - book: Skiena\n    ref: \"§11 — NP-Completeness\"\n  - book: Erickson\n    ref: \"Ch. 12 — NP-Hardness\"\npractice:\n  - title: 'Partition Equal Subset Sum'\n    slug: partition-equal-subset-sum\n    difficulty: Medium\n  - title: 'Partition to K Equal Sum Subsets'\n    slug: partition-to-k-equal-sum-subsets\n    difficulty: Medium\n  - title: 'Satisfiability of Equality Equations'\n    slug: satisfiability-of-equality-equations\n    difficulty: Medium\n---\n\nUntil now this course has been a catalog of triumphs: sorting in\n$O(n\\log n)$, shortest paths in near-linear time, spanning trees almost for\nfree. It is tempting to believe that every problem yields to a clever enough\nalgorithm. It does not. There is a large, eminently practical family of\nproblems (scheduling, routing, packing, constraint satisfaction) for which,\nafter more than half a century of effort, _nobody_ has found an algorithm\nthat is fast on every instance, and for which we have strong reasons to\nsuspect none exists.\n\nThe theory of **intractability** is how we make that suspicion precise. Its\ncentral insight, due to Cook, Levin, and Karp, is that thousands of\nthese stubborn problems are really the _same_ problem in disguise. Solve any\none of them quickly and you solve them all; prove any one of them\nhard and you have proved them all hard. This lesson assembles the three ideas\nneeded to state that claim: decision problems, the classes $\\mathsf{P}$ and\n$\\mathsf{NP}$, and reductions.\n\n## Decision problems\n\nTo classify difficulty cleanly we restrict attention to problems with a\nyes-or-no answer. A **decision problem** asks, of each input, a single\nquestion whose answer is **yes** or **no**.\n\n> **Definition (Decision problem).** A decision problem is a function from inputs (encoded as finite strings)\n> to $\\{\\text{yes}, \\text{no}\\}$. Equivalently, it is the _language_ $L$ of all\n> inputs whose answer is **yes**; \"solving\" the problem means deciding, for a\n> given string $x$, whether $x \\in L$.\n\nThis seems like a severe restriction; surely we usually want to _find_ a\nshortest tour, not merely learn whether a short one exists. But the two are\nrarely far apart. The optimization problem \"find the cheapest tour\" has a\ndecision twin: \"is there a tour of cost at most $k$?\" If we can answer the\ndecision question quickly for every $k$, a binary search over $k$ pins down\nthe optimal cost, and a little more work recovers the tour itself. Decision\nproblems lose almost nothing and gain a clean theory, so they are the objects\nwe classify.\n\n$$\n% caption: An optimization problem reduces to its decision twin by binary search over the\n%          threshold $k$.\n\\begin{tikzpicture}[>=Stealth, font=\\small]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\draw[->, thick] (0,0) -- (10,0);\n  \\node[anchor=north] at (0,-0.15) {$\\text{lo}$};\n  \\node[anchor=north] at (10,-0.15) {$\\text{hi}$};\n  \\foreach \\x in {2.2, 4.0} {\n    \\node[circle, draw, fill=red!18, inner sep=1.6pt] at (\\x,0) {};\n  }\n  \\foreach \\x in {6.4, 8.2} {\n    \\node[circle, draw=acc, fill=acc!15, inner sep=1.6pt] at (\\x,0) {};\n  }\n  \\node[circle, draw, fill=acc!15, draw=acc, very thick, inner sep=1.6pt] (opt) at (5.2,0) {};\n  \\node[anchor=south, font=\\scriptsize] at (2.2,0.12) {no};\n  \\node[anchor=south, font=\\scriptsize] at (4.0,0.12) {no};\n  \\node[anchor=south, font=\\scriptsize, text=acc, fill=white, inner sep=1pt] at (5.2,0.22) {$C^{*}$};\n  \\node[anchor=south, font=\\scriptsize] at (6.4,0.12) {yes};\n  \\node[anchor=south, font=\\scriptsize] at (8.2,0.12) {yes};\n  \\node[anchor=north, align=center, font=\\scriptsize] at (5.2,-0.55)\n    {threshold where\\\\cost $\\le k$? flips};\n  \\draw[->, acc] (4.0,0.7) to[bend right=20] (5.2,0.32);\n  \\draw[->, acc] (6.4,0.7) to[bend left=20] (5.2,0.32);\n  \\node[anchor=south, font=\\scriptsize, text=acc] at (5.2,0.78) {binary search};\n\\end{tikzpicture}\n$$\n\nA word on **encoding** and **size**. An input is a string of bits; the _size_\nof an instance is the length of that string. We always assume a \"reasonable\"\nencoding (integers in binary, graphs as adjacency lists) because an\nartificially bloated encoding (say, integers in unary) could make a slow\nalgorithm look fast. With reasonable encodings fixed, [\"polynomial in the input\nsize\"](\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis) is a stable, machine-independent notion.\n\n## The class P\n\nSome decision problems have algorithms whose running time is bounded by a\npolynomial in the input size. These are the problems we regard as _tractable_.\n\n> **Definition (The class $\\mathsf{P}$).** $\\mathsf{P}$ is the class of decision problems solvable by an algorithm that\n> runs in time $O(n^k)$ for some constant $k$, where $n$ is the input size.\n\nWhy polynomial, and not, say, \"$n^2$ or better\"? Because polynomials are\n**closed** under the operations we constantly perform: addition,\nmultiplication, and especially _composition_. If a polynomial-time algorithm\ncalls a polynomial-time subroutine a polynomial number of times, the whole\nthing is still polynomial. This closure is what makes $\\mathsf{P}$ stable: it\ndoes not depend on the particular machine model, the programming language, or\nwhether we count $n^2$ as \"fast.\" Everything we have called efficient so far\n(sorting, shortest paths, matching, linear programming) lives in $\\mathsf{P}$.\nThe class is our formal stand-in for \"feasible.\"[^clrs-p]\n\n## The class NP\n\nNow consider a problem like **Hamiltonian Cycle**: given a graph $G$, is there\na cycle that visits every vertex exactly once? We know of no polynomial-time\nalgorithm to _decide_ this. But notice an asymmetry. If a benevolent oracle\nhands us a cycle and claims it is Hamiltonian, we can _check_ the claim in\nlinear time: walk the cycle, confirm it visits each vertex once and uses real\nedges. Finding the cycle seems hard; **verifying** a proposed cycle is easy.\n\nThis is the defining feature of the class $\\mathsf{NP}$: a problem is in\n$\\mathsf{NP}$ if every **yes**-instance has a short proof, a **certificate**,\nthat can be checked quickly.\n\n> **Definition (The class $\\mathsf{NP}$).** $\\mathsf{NP}$ is the class of decision problems for which there exists a\n> polynomial-time **verifier** $V$ with the following property. For every input\n> $x$:\n>\n> - if the answer is **yes**, then there exists a certificate $y$ of length\n>   polynomial in $|x|$ such that $V(x, y)$ accepts;\n> - if the answer is **no**, then for _every_ string $y$, $V(x, y)$ rejects.\n\nThe name $\\mathsf{NP}$ stands for **nondeterministic polynomial time**: one can\nequivalently picture a machine that _guesses_ the certificate $y$ and then\nverifies it. The verifier definition avoids speaking of magical guessing; it\nasks only that correct **yes**-answers come with checkable evidence.[^clrs-np]\n\nThree points deserve emphasis.\n\n- The certificate must be **short** (polynomial length) and the check must be\n  **fast** (polynomial time). For Hamiltonian Cycle the certificate is the\n  cycle; for **SAT** (is a boolean formula satisfiable?) it is a satisfying\n  assignment; for $\\textsc{Subset-Sum}$ it is the subset that hits the target.\n- The asymmetry between **yes** and **no** is real. $\\mathsf{NP}$ guarantees a\n  certificate only for **yes**-instances. The problem of certifying a **no**\n  (\"there is _no_ Hamiltonian cycle\") need not be in $\\mathsf{NP}$; that\n  belongs to a companion class, $\\mathsf{co\\text{-}NP}$.\n- Every problem in $\\mathsf{P}$ is in $\\mathsf{NP}$. If we can _solve_ a problem\n  in polynomial time, we can ignore any offered certificate and just decide the\n  answer directly; an empty certificate suffices. So $\\mathsf{P} \\subseteq\n  \\mathsf{NP}$.\n\n$$\n% caption: A verifier $V$ accepts $(x,y)$ when the certificate $y$ proves $x$ is a\n%          yes-instance; no $y$ works otherwise.\n\\begin{tikzpicture}[>=Stealth, font=\\small,\n    box\u002F.style={draw, rectangle, rounded corners, minimum height=12mm,\n                minimum width=20mm, align=center}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node (x) at (0,1.2) {input $x$};\n  \\node (y) at (0,-0.6) {certificate $y$};\n  \\node[box] (v) at (3.6,0.3) {verifier $V$\\\\poly-time};\n  \\node[box, draw=acc, align=center] (out) at (8.4,1.1)\n    {some $y$ accepts\\\\$\\Rightarrow$ {\\color{acc}yes}};\n  \\node[box, draw=red!75!black, align=center] (no) at (8.4,-0.7)\n    {\\emph{every} $y$ rejects\\\\$\\Rightarrow$ {\\color{red!75!black}no}};\n  \\draw[->] (x) -- (v.160);\n  \\draw[->] (y) -- (v.200);\n  \\draw[->, acc] (v.20) -- (out);\n  \\draw[->, red!75!black] (v.340) -- (no);\n  \\node[anchor=north, font=\\scriptsize] at (3.6,-0.5)\n    {$|y| = \\text{poly}(|x|)$};\n\\end{tikzpicture}\n$$\n\n## Reductions: comparing difficulty\n\nWe want to say \"problem $B$ is at least as hard as problem $A$\" without knowing\nhow hard either one actually is. The device that makes this possible is a\n**reduction**: a way to convert any instance of $A$ into an instance of $B$\nthat has the same answer, so that an algorithm for $B$ becomes an algorithm for\n$A$.\n\n> **Definition (Polynomial-time reduction).** Let $A$ and $B$ be decision problems. A polynomial-time reduction from\n> $A$ to $B$, written $A \\le_P B$, is a function $f$ computable in polynomial\n> time such that for every input $x$,\n> $$ x \\text{ is a yes-instance of } A \\iff f(x) \\text{ is a yes-instance of } B. $$\n\nRead $A \\le_P B$ as \"$A$ is no harder than $B$.\"[^clrs-reduce] Picture this as a\n**transform–solve–transform pipeline**: take the input, _transform_ it into an\ninput for the other problem, hand that to a _solver_ for $B$, then _transform_\nthe solver's output back into an answer for $A$. The solver for $B$ is used as a\nblack-box subroutine, and we never look inside it.\n\n$$\n% caption: Transform-solve-transform pipeline turning a solver for $B$ into a solver for\n%          $A$.\n\\begin{tikzpicture}[\n    box\u002F.style={draw, rectangle, rounded corners, minimum height=14mm,\n                minimum width=26mm, font=\\small, align=center},\n    >=Stealth]\n  % dashed enclosing box (the assembled solver for A), drawn first\n  \\draw[dashed, rounded corners] (-0.5,-1.0) rectangle (12.5,1.6);\n  \\node[font=\\small] at (6.0,-1.4) {a solver for $A$};\n  % pipeline of fixed-coordinate boxes\n  \\node[font=\\small]            (x)   at (-2.0,0.3) {input $x$ for $A$};\n  \\node[box]                    (tin) at ( 1.7,0.3) {transform\\\\input};\n  \\node[box]                    (solv)at ( 6.0,0.3) {solver\\\\for $B$};\n  \\node[box]                    (tout)at (10.3,0.3) {transform\\\\output};\n  \\node[font=\\small]            (ans) at (13.8,0.3) {answer for $A$};\n  \\draw[->] (x)    -- (tin);\n  \\draw[->] (tin)  -- node[above,font=\\scriptsize]{$f(x)$} (solv);\n  \\draw[->] (solv) -- (tout);\n  \\draw[->] (tout) -- (ans);\n\\end{tikzpicture}\n$$\n\nThe dashed box is the punchline: a fast solver for $B$, wrapped in the fast\ntransformers on either side, _is_ a fast solver for $A$. For a **decision**\nproblem the right-hand transformer is trivial (pass the yes\u002Fno answer through\nunchanged), and the pipeline collapses to the textbook definition above: apply\n$f$, ask the $B$-question, report the answer. For a **search** problem (the\nwarm-up below) the right-hand transformer does real work, turning $B$'s witness\nback into a witness for $A$. Either way, the diagram encodes the two ways every\nreduction is used, which are mirror images of each other.\n\n- **Upper bound (good news flows forward).** If $A \\le_P B$ and $B \\in\n  \\mathsf{P}$, then $A \\in \\mathsf{P}$. Tractability of the harder problem\n  drags the easier one along: run $f$, then the fast solver for $B$; the\n  composition of two polynomials is a polynomial.\n- **Lower bound (bad news flows backward).** If $A \\le_P B$ and $A$ is _known\n  to be hard_, then $B$ is hard too. For if $B$ had a fast algorithm, the\n  pipeline above would give $A$ one as well, a contradiction.\n\nIt is the second direction that powers the theory of intractability. To show a\nnew problem $B$ is hard, we reduce a known-hard problem $A$ _to_ it. The\ndirection is a notorious source of error: we reduce **from** the hard problem\n**to** the new one. Getting the arrow backwards proves nothing.\n\n$$\n% caption: The two uses of $A \\le_P B$: tractability flows forward, hardness flows\n%          backward.\n\\begin{tikzpicture}[>=Stealth, font=\\small,\n    p\u002F.style={draw, rounded corners, minimum height=9mm, minimum width=18mm}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[p] (a) at (0,0) {$A$ (known hard)};\n  \\node[p] (b) at (6.4,0) {$B$ (new)};\n  \\draw[->, thick] (a) -- node[above, font=\\scriptsize]{$f$ maps instances} (b);\n  \\node[font=\\scriptsize, anchor=south] at (3.2,0.55) {$A \\le_P B$};\n  % forward: good news\n  \\draw[->, acc, thick] (5.6,-1.1) -- node[below, font=\\scriptsize, text=acc]{$B\\in\\mathsf{P}\\Rightarrow A\\in\\mathsf{P}$} (0.8,-1.1);\n  % backward: bad news\n  \\draw[->, red!75!black, thick] (0.8,-1.9) -- node[below, font=\\scriptsize, text=red!75!black]{$A$ hard $\\Rightarrow B$ hard} (5.6,-1.9);\n  \\node[font=\\scriptsize, text=acc, anchor=east] at (-0.2,-1.1) {tractability};\n  \\node[font=\\scriptsize, text=red!75!black, anchor=west] at (6.6,-1.9) {hardness};\n\\end{tikzpicture}\n$$\n\nTwo structural facts make $\\le_P$ behave like an ordering of difficulty.\n\n- **Reflexivity is trivial** and, crucially, **transitivity holds**: if $A\n  \\le_P B$ and $B \\le_P C$, then $A \\le_P C$, since we just compose the two\n  translators, and a polynomial of a polynomial is still a polynomial. Chains\n  of reductions are the raw material of the next lesson's \"reduction web.\"\n\n## A warm-up reduction: matching reduces to flow\n\nReductions are not a tool reserved for hardness arguments; we have already been\nusing them to design algorithms. The cleanest example, motivating the whole\nidea, is [**bipartite matching**](\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow). We are given a set\nof tasks $t_1,\\dots,t_m$, a set of workers $w_1,\\dots,w_n$, and a compatibility\ntable, where $A[i,j]$ is **true** when task $t_i$ can be done by worker $w_j$. A\n**matching** assigns tasks to workers so that no task and no worker is used\ntwice; we want a matching of maximum cardinality. There is a slogan worth\nremembering here:\n\n> **Remark (Modeling tip).** Whenever a graph problem asks for paths or assignments subject to a\n> per-edge or per-vertex _budget constraint_ (here, \"each task and each worker\n> used at most once\"), consider routing it through **max-flow** as a subroutine.\n\nWe do not write a matching algorithm from scratch. Instead we reduce\n$\\textsc{Bipartite-Matching}$ to $\\textsc{Max-Flow}$, a problem we already know\nhow to solve, and reuse that solver. This is the pipeline of the previous\nsection made concrete, and because matching is a _search_ problem, the output\ntransformer is no longer trivial.\n\n**Transform the input.** Build a flow network: add a **source** $s$ and a\n**sink** $t$. Direct an edge $s \\to t_i$ for every task, an edge $w_j \\to t$ for\nevery worker, and an edge $t_i \\to w_j$ whenever $A[i,j]$ is **true**. Give\n_every_ edge capacity $1$. The unit capacities out of $s$ and into $t$ are\nexactly the budget constraints: each task and each worker can carry at most one\nunit.\n\n$$\n% caption: Flow network reducing bipartite matching to max-flow with unit-capacity edges.\n\\begin{tikzpicture}[>=Stealth, node distance=10mm,\n    v\u002F.style={circle, draw, inner sep=1.6pt, font=\\small},\n    vnode\u002F.style={circle, draw, minimum width=10mm, font=\\small}]\n  \\node[vnode] (s) at (0,1.5) {$s$};\n  \\node[v] (t1) at (3,3.0) {$t_1$};\n  \\node[v] (t2) at (3,1.5) {$t_2$};\n  \\node[v] (t3) at (3,0.0) {$t_3$};\n  \\node[v] (w1) at (6,3.0) {$w_1$};\n  \\node[v] (w2) at (6,1.5) {$w_2$};\n  \\node[v] (w3) at (6,0.0) {$w_3$};\n  \\node[vnode] (t) at (9,1.5) {$t$};\n  % source to tasks\n  \\draw[->] (s) -- (t1);\n  \\draw[->] (s) -- (t2);\n  \\draw[->] (s) -- (t3);\n  % compatibility edges (from table A)\n  \\draw[->] (t1) -- (w1);\n  \\draw[->] (t1) -- (w2);\n  \\draw[->] (t2) -- (w2);\n  \\draw[->] (t3) -- (w2);\n  \\draw[->] (t3) -- (w3);\n  % workers to sink\n  \\draw[->] (w1) -- (t);\n  \\draw[->] (w2) -- (t);\n  \\draw[->] (w3) -- (t);\n  \\node[font=\\scriptsize] at (1.2,2.55) {cap. $1$};\n  \\node[font=\\scriptsize] at (7.8,2.55) {cap. $1$};\n\\end{tikzpicture}\n$$\n\n**Solve with the black box.** Run any max-flow algorithm (Ford–Fulkerson or\nEdmonds–Karp) and let $f^*$ be the maximum flow. The value $|f^*|$ is the size\nof the largest matching.\n\n**Transform the output.** A flow value is just a number; the _matching_ is\nrecovered by reading off which compatibility edges $t_i \\to w_j$ carry one unit\nof flow. Those edges are the assignment.\n\nTwo claims make the reduction correct, and it's worth separating\nthem:\n\n- _Easy direction._ If some $k$ tasks **can** be assigned, then pushing one unit\n  along each chosen $s \\to t_i \\to w_j \\to t$ path gives a flow of value $k$. So\n  the max flow is at least as large as the best matching.\n- _Less easy direction._ If the max flow value **is** $k$, then $k$ tasks can be\n  assigned. This needs the **integrality theorem**: when every edge capacity is\n  an integer, some maximum flow is **integral** (every $f_{uv} \\in \\mathbb{Z}$)\n  and Ford–Fulkerson actually finds such a flow. With unit capacities,\n  integral means each edge carries $0$ or $1$, and an integral flow decomposes\n  into a collection of edge-disjoint $s$–$t$ **path flows**. Each path uses one\n  task and one worker, so the paths _are_ a matching of size $k$.\n\nBoth directions together give $|f^*| = $ (size of maximum matching), so the\nreduction is valid. The transform–solve–transform diagram now does real work: build\nthe network ($f$), call the flow solver ($B$), decompose the integral flow into\npaths (the output transformer). We obtained a matching algorithm without\nwriting one, purely because $\\textsc{Bipartite-Matching} \\le_P \\textsc{Max-Flow}$.\n\n## A small reduction between decision problems\n\nThe matching reduction reused an _easy_ solver to solve another easy problem.\nThe reductions that drive intractability go the other way, relating two\n_decision_ problems with no known fast solver, but the mechanism is identical.\nHere is a textbook example. $\\textsc{Independent-Set}$ asks:\ngiven a graph $G$ and integer $k$, is there a set of $k$ vertices no two of\nwhich are adjacent? **Clique** asks: is there a set of $k$ vertices that are\n_all_ pairwise adjacent? These are the same question asked of complementary\ngraphs.\n\nGiven an instance $(G, k)$ of $\\textsc{Independent-Set}$, build the **complement**\ngraph $\\bar G$ on the same vertices, where $uv$ is an edge of $\\bar G$ exactly\nwhen it is _not_ an edge of $G$. A set $S$ is independent in $G$ (no edges\ninside it) precisely when $S$ is a clique in $\\bar G$ (all edges inside it).\nSo\n$$ (G, k) \\in \\textbf{Independent-Set} \\iff (\\bar G, k) \\in \\textbf{Clique}. $$\nConstructing $\\bar G$ takes time polynomial in the size of $G$, so this is a\nvalid reduction $\\textbf{Independent-Set} \\le_P \\textbf{Clique}$, and, since\ncomplementation is its own inverse, the reverse reduction holds too. The two\nproblems are equivalent in difficulty: a fast algorithm for either yields one\nfor the other.[^erickson-reduce]\n\n$$\n% caption: A size-$3$ independent set in $G$ is a size-$3$ clique in the complement\n%          $\\bar G$ on the same vertices.\n\\begin{tikzpicture}[>=Stealth, font=\\small,\n    v\u002F.style={circle, draw, inner sep=1.7pt, minimum size=5mm},\n    sel\u002F.style={circle, draw=acc, fill=acc!15, very thick, inner sep=1.7pt, minimum size=5mm}]\n  \\definecolor{acc}{HTML}{2348F2}\n  % G on the left\n  \\begin{scope}[shift={(0,0)}]\n    \\node[sel] (a) at (90:1.3) {$1$};\n    \\node[v]   (b) at (162:1.3) {$2$};\n    \\node[sel] (c) at (234:1.3) {$3$};\n    \\node[v]   (d) at (306:1.3) {$4$};\n    \\node[sel] (e) at (18:1.3) {$5$};\n    \\draw (a)--(b); \\draw (b)--(c); \\draw (c)--(d); \\draw (d)--(e);\n    \\node at (0,-2.1) {$G$: $\\{1,3,5\\}$ independent};\n  \\end{scope}\n  % complement on the right\n  \\begin{scope}[shift={(5.6,0)}]\n    \\node[sel] (a) at (90:1.3) {$1$};\n    \\node[v]   (b) at (162:1.3) {$2$};\n    \\node[sel] (c) at (234:1.3) {$3$};\n    \\node[v]   (d) at (306:1.3) {$4$};\n    \\node[sel] (e) at (18:1.3) {$5$};\n    % complement edges: all non-edges of G\n    \\draw (a)--(c); \\draw (a)--(d); \\draw (a)--(e);\n    \\draw (b)--(d); \\draw (b)--(e); \\draw (c)--(e);\n    \\node at (0,-2.1) {$\\bar G$: $\\{1,3,5\\}$ clique};\n  \\end{scope}\n  \\draw[\u003C->, acc, thick] (1.7,0) -- node[above, font=\\scriptsize, text=acc]{complement} (3.9,0);\n\\end{tikzpicture}\n$$\n\n## The P versus NP question\n\nWe now have two classes with $\\mathsf{P} \\subseteq \\mathsf{NP}$. Problems in\n$\\mathsf{P}$ can be _solved_ quickly; problems in $\\mathsf{NP}$ can at least\nhave their solutions _checked_ quickly. The defining open question of\ntheoretical computer science is whether checking is genuinely easier than\nsolving.\n\n> **Question ($\\mathsf{P} \\overset{?}{=} \\mathsf{NP}$).** Is every problem whose solutions\n> can be verified in polynomial time also _solvable_ in polynomial time?\n\nAlmost everyone believes the answer is **no**: that $\\mathsf{P} \\ne\n\\mathsf{NP}$, and that finding a needle is fundamentally harder than\nrecognizing one once found. But no proof is known in either direction, and the\nquestion carries a million-dollar Clay Millennium Prize.[^skiena-pnp] What makes it more\nthan a curiosity is the next lesson's discovery: there are problems in\n$\\mathsf{NP}$, the [**$\\mathsf{NP}$-complete**](\u002Falgorithms\u002Fintractability\u002Fnp-completeness) problems, that are _universally\nhardest_. Every problem in $\\mathsf{NP}$ reduces to each of them. A\npolynomial-time algorithm for even one would collapse $\\mathsf{P}$ and\n$\\mathsf{NP}$ into a single class; a proof that even one requires\nsuper-polynomial time would settle the question the other way.\n\n$$\n% caption: Conjectured world with P and NP-complete as disjoint regions inside NP.\n\\begin{tikzpicture}[>=Stealth]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\draw[rounded corners=3pt, thick] (-3.6,-1.9) rectangle (3.6,1.9);\n  \\node[anchor=north west] at (-3.45,1.78) {$\\mathsf{NP}$};\n  \\draw[draw=acc, fill=acc!15] (-1.35,0) ellipse (1.95 and 1.35);\n  \\node at (-1.35,0) {$\\mathsf{P}$};\n  \\draw[draw=red!75!black, fill=red!18] (2.15,0) ellipse (0.95 and 1.35);\n  \\node[align=center] at (2.15,0) {$\\mathsf{NP}$-\\\\complete};\n\\end{tikzpicture}\n$$\n\nThe sketch shows the _conjectured_ world: $\\mathsf{P}$ and the\n$\\mathsf{NP}$-complete problems sit as disjoint regions inside $\\mathsf{NP}$. If\n$\\mathsf{P} = \\mathsf{NP}$, all three regions coincide and the entire picture\ncollapses to a single blob. We do not know which world we live in, but we will\nsee that the two regions, if separate, can never overlap.\n\n## Takeaways\n\n- We study **decision problems** (yes\u002Fno answers); optimization problems reduce\n  to them by binary search, so little is lost.\n- $\\mathsf{P}$ is the class of problems **solvable** in polynomial time;\n  $\\mathsf{NP}$ is the class of problems whose **yes**-answers admit a short,\n  polynomial-time **checkable** certificate. Always $\\mathsf{P} \\subseteq\n  \\mathsf{NP}$.\n- A **polynomial-time reduction** $A \\le_P B$ is a **transform–solve–transform**\n  pipeline: transform the input, call a black-box solver for $B$, transform its\n  output back. It means \"$A$ is no harder than $B$\": tractability flows forward\n  ($B$ easy $\\Rightarrow A$ easy), hardness flows backward ($A$ hard\n  $\\Rightarrow B$ hard). To prove $B$ hard, reduce a known hard problem **to**\n  $B$.\n- Reductions also _build_ algorithms: $\\textsc{Bipartite-Matching} \\le_P\n  \\textsc{Max-Flow}$ solves matching by routing it through a flow solver, with\n  the integrality theorem guaranteeing the flow decomposes back into a matching.\n- Reductions **compose**, so $\\le_P$ chains, building a web of equivalent\n  difficulty.\n- Whether $\\mathsf{P} = \\mathsf{NP}$, that is, whether checking is as easy as\n  solving, is the central open question, and the hardest problems in $\\mathsf{NP}$ hold\n  the key.\n\n[^clrs-p]: **CLRS**, Ch. 34 — NP-Completeness (§34.1): the class $\\mathsf{P}$ of polynomial-time-solvable decision problems and its closure-based robustness.\n[^clrs-np]: **CLRS**, Ch. 34 — NP-Completeness (§34.2): the class $\\mathsf{NP}$ defined via a polynomial-time verifier and short certificates.\n[^clrs-reduce]: **CLRS**, Ch. 34 — NP-Completeness (§34.3): polynomial-time reductions $A \\le_P B$ as a measure of relative difficulty.\n[^erickson-reduce]: **Erickson**, Ch. 12 — NP-Hardness: the Independent-Set \u002F Clique equivalence via graph complementation.\n[^skiena-pnp]: **Skiena**, §11 — NP-Completeness: the $\\mathsf{P} \\overset{?}{=} \\mathsf{NP}$ question and the belief that verifying is easier than solving.\n",{"text":8398,"minutes":8399,"time":8400,"words":8401},"12 min read",11.53,691800,2306,{"title":358,"description":8380},[8404,8406,8408],{"book":8135,"ref":8405},"Ch. 34 — NP-Completeness",{"book":8289,"ref":8407},"§11 — NP-Completeness",{"book":8277,"ref":8409},"Ch. 12 — NP-Hardness","available","01.algorithms\u002F12.intractability\u002F01.p-np-reductions",[361],"p5zlb267BGCpNQmYa1tnN5Dqj6Olu1see_ok-4bGJEY",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":8415,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":8416,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":8417,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":8418,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":8419,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":8420,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":8421,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":8422,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":8423,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":8424,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":8425,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":8426,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":8427,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":8428,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":8429,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":8430,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":8431,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":8432,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":8433,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":8434,"\u002Falgorithms\u002Fsequences\u002Ftries":8435,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":8436,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":8437,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":8438,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":8439,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":8440,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":8441,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":8442,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":8443,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":8444,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":8445,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":8446,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":8447,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":8448,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":8449,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":8450,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":8451,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":8452,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":8453,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":8454,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":8455,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":8456,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":8457,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":8458,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":8459,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":8460,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":8461,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":8431,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":8462,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":8463,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":8464,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":8465,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":8447,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":8466,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":8401,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":8427,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":8467,"\u002Falgorithms":8468,"\u002Ftheory-of-computation":8469,"\u002Fcomputer-architecture":8469,"\u002Fphysical-computing":8469,"\u002Fdatabases":8469,"\u002Fdeep-learning":8469},1763,2107,1738,2628,1723,2048,1697,1044,1542,1565,1679,1586,1388,1465,1971,1455,1533,1483,1578,1791,1481,2704,1658,2070,1978,2080,1568,1451,1291,1543,1883,1443,1599,2038,2241,1744,1678,2288,1929,1657,1412,1554,1418,1713,1798,1694,1762,1534,1595,1262,1495,1630,2142,107,0,{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":8471,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":8472,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":8473,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":8474,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":8475,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":8476,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":8477,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":8478,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":8479,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":8480,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":8481,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":8482,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":8483,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":8484,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":8485,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":8486,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":8487,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":8488,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":8489,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":8490,"\u002Falgorithms\u002Fsequences\u002Ftries":8491,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":8492,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":8493,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":8494,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":8495,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":8496,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":8497,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":8498,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":8499,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":8500,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":8501,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":8502,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":8503,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":8504,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":8505,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":8506,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":8507,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":8508,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":8509,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":8510,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":8511,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":8512,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":8513,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":8514,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":8515,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":8516,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":8517,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":8518,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":8519,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":8520,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":8521,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":8522,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":8523,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":8524,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":8525,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":8526,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":8527,"\u002Falgorithms":8528,"\u002Ftheory-of-computation":8531,"\u002Fcomputer-architecture":8534,"\u002Fphysical-computing":8537,"\u002Fdatabases":8540,"\u002Fdeep-learning":8543},{"path":11,"title":10,"module":5,"summary":14},{"path":17,"title":16,"module":5,"summary":20},{"path":23,"title":22,"module":5,"summary":27},{"path":34,"title":33,"module":29,"summary":37},{"path":40,"title":39,"module":29,"summary":43},{"path":46,"title":45,"module":29,"summary":49},{"path":56,"title":55,"module":51,"summary":59},{"path":62,"title":61,"module":51,"summary":64},{"path":67,"title":66,"module":51,"summary":70},{"path":78,"title":77,"module":72,"summary":81},{"path":84,"title":83,"module":72,"summary":87},{"path":90,"title":89,"module":72,"summary":92},{"path":95,"title":94,"module":72,"summary":98},{"path":101,"title":100,"module":72,"summary":104},{"path":107,"title":106,"module":72,"summary":112},{"path":115,"title":114,"module":72,"summary":119},{"path":126,"title":125,"module":121,"summary":129},{"path":132,"title":131,"module":121,"summary":134},{"path":137,"title":136,"module":121,"summary":140},{"path":143,"title":142,"module":121,"summary":146},{"path":149,"title":148,"module":121,"summary":151},{"path":158,"title":157,"module":153,"summary":162},{"path":165,"title":164,"module":153,"summary":167},{"path":170,"title":169,"module":153,"summary":172},{"path":175,"title":174,"module":153,"summary":177},{"path":180,"title":179,"module":153,"summary":182},{"path":185,"title":184,"module":153,"summary":187},{"path":190,"title":189,"module":153,"summary":192},{"path":195,"title":194,"module":153,"summary":198},{"path":201,"title":200,"module":153,"summary":204},{"path":211,"title":210,"module":206,"summary":213},{"path":216,"title":215,"module":206,"summary":219},{"path":222,"title":221,"module":206,"summary":224},{"path":227,"title":226,"module":206,"summary":229},{"path":236,"title":235,"module":231,"summary":238},{"path":241,"title":240,"module":231,"summary":244},{"path":247,"title":246,"module":231,"summary":249},{"path":252,"title":251,"module":231,"summary":254},{"path":257,"title":256,"module":231,"summary":259},{"path":262,"title":261,"module":231,"summary":264},{"path":267,"title":266,"module":231,"summary":269},{"path":272,"title":271,"module":231,"summary":274},{"path":277,"title":276,"module":231,"summary":279},{"path":282,"title":281,"module":231,"summary":285},{"path":292,"title":291,"module":287,"summary":295},{"path":298,"title":297,"module":287,"summary":300},{"path":303,"title":302,"module":287,"summary":305},{"path":312,"title":311,"module":307,"summary":315},{"path":318,"title":317,"module":307,"summary":320},{"path":323,"title":322,"module":307,"summary":325},{"path":328,"title":327,"module":307,"summary":330},{"path":338,"title":337,"module":332,"summary":341},{"path":344,"title":343,"module":332,"summary":346},{"path":349,"title":348,"module":332,"summary":351},{"path":359,"title":358,"module":353,"summary":362},{"path":364,"title":361,"module":353,"summary":366},{"path":369,"title":368,"module":353,"summary":373},{"path":8529,"title":8530,"module":376,"summary":376},"\u002Falgorithms","Algorithms",{"path":8532,"title":8533,"module":376,"summary":376},"\u002Ftheory-of-computation","Theory of Computation",{"path":8535,"title":8536,"module":376,"summary":376},"\u002Fcomputer-architecture","Computer Architecture",{"path":8538,"title":8539,"module":376,"summary":376},"\u002Fphysical-computing","Physical Computing",{"path":8541,"title":8542,"module":376,"summary":376},"\u002Fdatabases","Databases",{"path":8544,"title":8545,"module":376,"summary":376},"\u002Fdeep-learning","Deep Learning",1781560528562]