[{"data":1,"prerenderedAt":7782},["ShallowReactive",2],{"nav:algorithms":3,"lesson:\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":374,"course-wordcounts":7650,"ref-card-index":7706},[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":291,"blurb":376,"body":377,"description":7614,"extension":7615,"meta":7616,"module":287,"navigation":7618,"path":292,"practice":7619,"rawbody":7632,"readingTime":7633,"seo":7638,"sources":7639,"status":7646,"stem":7647,"summary":295,"topics":7648,"__hash__":7649},"course\u002F01.algorithms\u002F09.backtracking\u002F01.backtracking-fundamentals.md","",{"type":378,"value":379,"toc":7600},"minimark",[380,420,431,436,472,519,522,861,920,997,1055,1321,1364,1845,1981,2016,2305,2329,2546,2594,2792,3206,3416,3509,3620,3662,3779,3783,3849,4055,4407,5030,5407,5487,5980,5984,5999,6095,6340,6735,6890,6894,7222,7299,7324,7328,7538,7596],[381,382,383,387,388,392,393,397,398,400,401,404,405,415,416,419],"p",{},[384,385,386],"a",{"href":236},"Dynamic programming",", which closed the previous module, works when a problem has\n",[389,390,391],"em",{},"overlapping subproblems"," we can tabulate. But a great many problems ask us\ninstead to ",[394,395,396],"strong",{},"enumerate or search a combinatorial space",": list every subset,\nevery permutation, every way to place eight queens, every assignment satisfying a\nformula. These spaces are exponential, so we cannot afford to materialize them,\nyet we can walk them cleverly. ",[394,399,294],{}," is the disciplined depth-first\nwalk of such a space: it builds a candidate solution one decision at a time and,\ncrucially, ",[394,402,403],{},"abandons"," a partial candidate the instant it proves it cannot be\nextended to a valid complete one.",[406,407,408],"sup",{},[384,409,414],{"href":410,"ariaDescribedBy":411,"dataFootnoteRef":376,"id":413},"#user-content-fn-erickson-bt",[412],"footnote-label","user-content-fnref-erickson-bt","1"," This act of abandonment, the\n",[389,417,418],{},"backtrack",", is what separates a directed search from blind brute force.",[381,421,422,423,426,427,430],{},"This lesson opens the module by establishing the paradigm and instantiating it on\nthe three enumerations every later technique builds on (subsets, permutations,\nand combinations) together with the two ideas that make backtracking ",[389,424,425],{},"fast"," in\npractice: deduplication of equal choices and ",[394,428,429],{},"pruning"," of infeasible subtrees.",[432,433,435],"h2",{"id":434},"the-paradigm-choose-explore-un-choose","The paradigm: choose, explore, un-choose",[381,437,438,439,442,443,446,447,450,451,454,455,458,459,462,463,471],{},"Think of a solution as a sequence of decisions. At each step we have a ",[394,440,441],{},"partial\nsolution"," and a set of ",[394,444,445],{},"valid choices"," to extend it. We pick one choice,\nrecurse to extend further, and then ",[394,448,449],{},"undo"," that\nchoice before trying the next one. The recursion thus traverses a ",[394,452,453],{},"state-space\ntree"," (also called a ",[389,456,457],{},"decision tree"," or ",[389,460,461],{},"choice tree","): the root is the empty\npartial solution, each edge is one choice, each node is the partial solution\naccumulated so far, and the leaves are complete candidates.",[406,464,465],{},[384,466,470],{"href":467,"ariaDescribedBy":468,"dataFootnoteRef":376,"id":469},"#user-content-fn-skiena-bt",[412],"user-content-fnref-skiena-bt","2"," The walk\nis depth-first.",[473,474,476],"callout",{"type":475},"remark",[381,477,478,481,482,486,487,489,490,493,494,497,498,501,502,504,505,508,509,512,513,515,516,518],{},[394,479,480],{},"Remark (The backtracking template)."," To enumerate solutions, maintain a mutable\n",[483,484,485],"code",{},"partial",". At each node: if ",[483,488,485],{}," is ",[389,491,492],{},"complete",", record it; otherwise, for\neach ",[389,495,496],{},"valid"," next choice — ",[394,499,500],{},"choose"," it (push onto ",[483,503,485],{},"), ",[394,506,507],{},"explore","\n(recurse), then ",[394,510,511],{},"un-choose"," it (pop), restoring ",[483,514,485],{}," exactly as it was.\nAbandon a branch early whenever ",[483,517,485],{}," can no longer reach a valid solution.",[381,520,521],{},"The un-choose step is what lets a single mutable buffer serve the entire tree: by\nthe time control returns from a child, the buffer is byte-for-byte what it was\nbefore we descended, so the next sibling starts from a clean slate.",[523,524,528,829],"figure",{"className":525},[526,527],"tikz-figure","tikz-diagram-rendered",[529,530,535],"svg",{"xmlns":531,"width":532,"height":533,"viewBox":534},"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg","551.801","133.192","-75 -75 413.851 99.894",[536,537,540,561,564,572,575,582,588,609,646,653,656,662,665,671,683,710,740,747,750,756,759,765,778,802],"g",{"stroke":538,"style":539},"currentColor","stroke-miterlimit:10;stroke-width:.4",[536,541,545,555],{"stroke":542,"fontFamily":543,"fontSize":544},"none","cmr7","7",[536,546,548],{"transform":547},"translate(9.25 -24.6)",[549,550],"path",{"d":551,"fill":538,"stroke":538,"className":552,"style":554},"M-21.803-35.281L-22.070-35.281L-22.070-39.389Q-22.070-39.659-22.177-39.721Q-22.285-39.782-22.596-39.782L-22.596-40.063L-21.516-40.138L-21.516-37.968Q-21.307-38.159-21.022-38.263Q-20.736-38.367-20.439-38.367Q-20.121-38.367-19.824-38.246Q-19.527-38.125-19.304-37.909Q-19.082-37.694-18.956-37.409Q-18.829-37.123-18.829-36.792Q-18.829-36.347-19.069-35.983Q-19.308-35.619-19.701-35.416Q-20.094-35.213-20.538-35.213Q-20.733-35.213-20.923-35.269Q-21.112-35.325-21.273-35.430Q-21.434-35.534-21.574-35.695L-21.803-35.281M-21.488-37.626L-21.488-36.009Q-21.352-35.749-21.111-35.592Q-20.870-35.435-20.593-35.435Q-20.299-35.435-20.087-35.542Q-19.875-35.650-19.742-35.842Q-19.609-36.033-19.550-36.272Q-19.492-36.511-19.492-36.792Q-19.492-37.151-19.586-37.455Q-19.680-37.759-19.908-37.952Q-20.135-38.145-20.501-38.145Q-20.801-38.145-21.068-38.009Q-21.335-37.872-21.488-37.626",[553],"tikz-text","stroke-width:0.210",[536,556,557],{"transform":547},[549,558],{"d":559,"fill":538,"stroke":538,"className":560,"style":554},"M-18.019-36.816Q-18.019-37.137-17.894-37.426Q-17.769-37.715-17.543-37.938Q-17.318-38.162-17.022-38.282Q-16.727-38.402-16.409-38.402Q-16.081-38.402-15.819-38.302Q-15.558-38.203-15.382-38.021Q-15.206-37.838-15.112-37.580Q-15.018-37.322-15.018-36.990Q-15.018-36.898-15.100-36.877L-17.355-36.877L-17.355-36.816Q-17.355-36.228-17.072-35.845Q-16.788-35.462-16.221-35.462Q-15.899-35.462-15.631-35.655Q-15.363-35.848-15.274-36.163Q-15.267-36.204-15.192-36.218L-15.100-36.218Q-15.018-36.194-15.018-36.122Q-15.018-36.115-15.024-36.088Q-15.137-35.691-15.508-35.452Q-15.879-35.213-16.303-35.213Q-16.740-35.213-17.140-35.421Q-17.540-35.630-17.779-35.997Q-18.019-36.364-18.019-36.816M-17.349-37.086L-15.534-37.086Q-15.534-37.363-15.631-37.615Q-15.729-37.868-15.927-38.024Q-16.125-38.179-16.409-38.179Q-16.686-38.179-16.899-38.021Q-17.113-37.862-17.231-37.607Q-17.349-37.352-17.349-37.086M-12.632-35.281L-14.365-35.281L-14.365-35.561Q-14.139-35.561-13.990-35.595Q-13.842-35.630-13.842-35.770L-13.842-38.019L-14.430-38.019L-14.430-38.299L-13.842-38.299L-13.842-39.116Q-13.842-39.434-13.664-39.682Q-13.486-39.929-13.196-40.070Q-12.905-40.210-12.594-40.210Q-12.338-40.210-12.135-40.068Q-11.931-39.926-11.931-39.683Q-11.931-39.547-12.030-39.448Q-12.129-39.348-12.266-39.348Q-12.403-39.348-12.502-39.448Q-12.601-39.547-12.601-39.683Q-12.601-39.864-12.461-39.957Q-12.540-39.984-12.639-39.984Q-12.847-39.984-13.001-39.851Q-13.155-39.718-13.235-39.514Q-13.315-39.311-13.315-39.102L-13.315-38.299L-12.427-38.299L-12.427-38.019L-13.288-38.019L-13.288-35.770Q-13.288-35.561-12.632-35.561L-12.632-35.281M-11.993-36.764Q-11.993-37.106-11.858-37.405Q-11.723-37.704-11.483-37.928Q-11.244-38.152-10.926-38.277Q-10.608-38.402-10.277-38.402Q-9.833-38.402-9.433-38.186Q-9.033-37.971-8.799-37.593Q-8.564-37.216-8.564-36.764Q-8.564-36.423-8.706-36.139Q-8.848-35.855-9.093-35.648Q-9.337-35.442-9.646-35.327Q-9.956-35.213-10.277-35.213Q-10.708-35.213-11.109-35.414Q-11.511-35.616-11.752-35.968Q-11.993-36.320-11.993-36.764M-10.277-35.462Q-9.675-35.462-9.451-35.840Q-9.228-36.218-9.228-36.850Q-9.228-37.462-9.462-37.821Q-9.696-38.179-10.277-38.179Q-11.330-38.179-11.330-36.850Q-11.330-36.218-11.104-35.840Q-10.878-35.462-10.277-35.462M-6.220-35.281L-7.956-35.281L-7.956-35.561Q-7.727-35.561-7.578-35.595Q-7.430-35.630-7.430-35.770L-7.430-37.619Q-7.430-37.889-7.537-37.950Q-7.645-38.012-7.956-38.012L-7.956-38.292L-6.927-38.367L-6.927-37.660Q-6.797-37.968-6.555-38.167Q-6.312-38.367-5.994-38.367Q-5.775-38.367-5.605-38.243Q-5.434-38.118-5.434-37.906Q-5.434-37.769-5.533-37.670Q-5.632-37.571-5.765-37.571Q-5.902-37.571-6.001-37.670Q-6.100-37.769-6.100-37.906Q-6.100-38.046-6.001-38.145Q-6.292-38.145-6.491-37.949Q-6.691-37.752-6.784-37.458Q-6.876-37.164-6.876-36.884L-6.876-35.770Q-6.876-35.561-6.220-35.561L-6.220-35.281M-4.890-36.816Q-4.890-37.137-4.765-37.426Q-4.641-37.715-4.415-37.938Q-4.189-38.162-3.894-38.282Q-3.598-38.402-3.280-38.402Q-2.952-38.402-2.691-38.302Q-2.429-38.203-2.253-38.021Q-2.077-37.838-1.983-37.580Q-1.889-37.322-1.889-36.990Q-1.889-36.898-1.971-36.877L-4.227-36.877L-4.227-36.816Q-4.227-36.228-3.943-35.845Q-3.660-35.462-3.092-35.462Q-2.771-35.462-2.503-35.655Q-2.234-35.848-2.146-36.163Q-2.139-36.204-2.063-36.218L-1.971-36.218Q-1.889-36.194-1.889-36.122Q-1.889-36.115-1.896-36.088Q-2.009-35.691-2.380-35.452Q-2.750-35.213-3.174-35.213Q-3.612-35.213-4.012-35.421Q-4.412-35.630-4.651-35.997Q-4.890-36.364-4.890-36.816M-4.220-37.086L-2.405-37.086Q-2.405-37.363-2.503-37.615Q-2.600-37.868-2.798-38.024Q-2.997-38.179-3.280-38.179Q-3.557-38.179-3.771-38.021Q-3.984-37.862-4.102-37.607Q-4.220-37.352-4.220-37.086",[553],[549,562],{"fill":542,"d":563},"M-32.883-25.323h19.917V-45.24h-19.917Z",[536,565,567],{"transform":566},"translate(-2.622 1.937)",[549,568],{"d":569,"fill":538,"stroke":538,"className":570,"style":571},"M-22.195-35.571Q-22.019-35.444-21.746-35.444Q-21.456-35.444-21.243-35.698Q-21.030-35.953-20.951-36.270L-20.547-37.883Q-20.459-38.260-20.459-38.449Q-20.459-38.674-20.586-38.836Q-20.714-38.999-20.933-38.999Q-21.351-38.999-21.683-38.649Q-22.014-38.300-22.133-37.847Q-22.151-37.764-22.221-37.764L-22.331-37.764Q-22.419-37.764-22.419-37.883Q-22.287-38.423-21.865-38.841Q-21.443-39.258-20.916-39.258Q-20.582-39.258-20.307-39.087Q-20.032-38.915-19.918-38.621Q-19.760-38.893-19.514-39.076Q-19.268-39.258-18.982-39.258Q-18.644-39.258-18.371-39.091Q-18.099-38.924-18.099-38.603Q-18.099-38.375-18.242-38.206Q-18.384-38.036-18.622-38.036Q-18.762-38.036-18.868-38.129Q-18.973-38.221-18.973-38.366Q-18.973-38.551-18.850-38.693Q-18.727-38.836-18.543-38.871Q-18.723-38.999-19-38.999Q-19.290-38.999-19.501-38.742Q-19.712-38.485-19.791-38.168L-20.195-36.560Q-20.287-36.199-20.287-36.002Q-20.287-35.769-20.158-35.606Q-20.028-35.444-19.799-35.444Q-19.514-35.444-19.266-35.613Q-19.017-35.782-18.844-36.054Q-18.670-36.327-18.604-36.595Q-18.595-36.626-18.571-36.650Q-18.547-36.674-18.512-36.674L-18.406-36.674Q-18.367-36.674-18.341-36.637Q-18.314-36.599-18.314-36.560Q-18.402-36.213-18.622-35.894Q-18.841-35.575-19.158-35.378Q-19.474-35.180-19.817-35.180Q-20.155-35.180-20.430-35.349Q-20.705-35.518-20.828-35.822Q-20.977-35.553-21.226-35.367Q-21.474-35.180-21.755-35.180Q-22.098-35.180-22.372-35.347Q-22.647-35.514-22.647-35.839Q-22.647-36.063-22.498-36.235Q-22.348-36.406-22.115-36.406Q-21.970-36.406-21.867-36.314Q-21.764-36.221-21.764-36.072Q-21.764-35.896-21.887-35.749Q-22.010-35.602-22.195-35.571",[553],"stroke-width:0.270",[549,573],{"fill":542,"d":574},"M-12.966-25.323H6.951V-45.24h-19.917Z",[536,576,578],{"transform":577},"translate(17.478 1.062)",[549,579],{"d":580,"fill":538,"stroke":538,"className":581,"style":571},"M-22.067-33.985Q-21.979-33.831-21.806-33.765Q-21.632-33.699-21.430-33.699Q-21.105-33.699-20.841-33.875Q-20.577-34.051-20.395-34.321Q-20.213-34.591-20.081-34.921Q-19.949-35.250-19.874-35.549Q-20.274-35.180-20.744-35.180Q-21.109-35.180-21.373-35.307Q-21.636-35.435-21.781-35.681Q-21.926-35.927-21.926-36.279Q-21.926-36.564-21.850-36.883Q-21.773-37.201-21.658-37.502Q-21.544-37.803-21.386-38.208Q-21.267-38.493-21.267-38.726Q-21.267-38.845-21.313-38.922Q-21.360-38.999-21.465-38.999Q-21.817-38.999-22.052-38.638Q-22.287-38.278-22.392-37.847Q-22.410-37.764-22.485-37.764L-22.590-37.764Q-22.638-37.764-22.660-37.803Q-22.682-37.843-22.682-37.883Q-22.594-38.225-22.434-38.531Q-22.274-38.836-22.023-39.047Q-21.773-39.258-21.447-39.258Q-21.109-39.258-20.878-39.052Q-20.648-38.845-20.648-38.502Q-20.648-38.322-20.709-38.168Q-20.740-38.080-20.892-37.685Q-21.043-37.289-21.113-37.059Q-21.184-36.828-21.230-36.604Q-21.276-36.380-21.276-36.156Q-21.276-35.857-21.146-35.650Q-21.017-35.444-20.736-35.444Q-20.160-35.444-19.729-36.138L-19.052-38.845Q-19.017-38.986-18.903-39.073Q-18.789-39.161-18.648-39.161Q-18.534-39.161-18.453-39.084Q-18.371-39.008-18.371-38.889Q-18.371-38.836-18.380-38.810L-19.259-35.263Q-19.386-34.776-19.712-34.358Q-20.037-33.941-20.494-33.688Q-20.951-33.435-21.439-33.435Q-21.689-33.435-21.920-33.525Q-22.151-33.615-22.293-33.796Q-22.436-33.976-22.436-34.226Q-22.436-34.477-22.289-34.655Q-22.142-34.833-21.909-34.833Q-21.764-34.833-21.661-34.740Q-21.557-34.648-21.557-34.499Q-21.557-34.297-21.709-34.141Q-21.861-33.985-22.067-33.985",[553],[536,583,585],{"fill":584},"var(--tk-soft-neutral)",[549,586],{"d":587},"M6.951-25.323h19.917V-45.24H6.95Z",[536,589,590,597,603],{"stroke":542,"fontSize":544},[536,591,593],{"transform":592},"translate(-1.642 30.203)",[549,594],{"d":595,"fill":538,"stroke":538,"className":596,"style":554},"M-20.966-33.924L-22.596-33.924L-22.596-34.204Q-22.367-34.204-22.218-34.239Q-22.070-34.273-22.070-34.413L-22.070-37.759Q-22.070-37.930-22.206-37.971Q-22.343-38.012-22.596-38.012L-22.596-38.292L-21.516-38.367L-21.516-37.961Q-21.294-38.162-21.007-38.265Q-20.719-38.367-20.412-38.367Q-19.985-38.367-19.621-38.154Q-19.257-37.940-19.043-37.576Q-18.829-37.212-18.829-36.792Q-18.829-36.347-19.069-35.983Q-19.308-35.619-19.701-35.416Q-20.094-35.213-20.538-35.213Q-20.805-35.213-21.053-35.313Q-21.300-35.414-21.488-35.595L-21.488-34.413Q-21.488-34.276-21.340-34.240Q-21.191-34.204-20.966-34.204L-20.966-33.924M-21.488-37.612L-21.488-36.002Q-21.355-35.749-21.112-35.592Q-20.870-35.435-20.593-35.435Q-20.265-35.435-20.012-35.636Q-19.759-35.838-19.626-36.156Q-19.492-36.474-19.492-36.792Q-19.492-37.021-19.557-37.250Q-19.622-37.479-19.750-37.677Q-19.879-37.875-20.073-37.995Q-20.268-38.114-20.501-38.114Q-20.795-38.114-21.063-37.985Q-21.331-37.855-21.488-37.612M-18.135-36.009Q-18.135-36.341-17.912-36.568Q-17.688-36.795-17.344-36.923Q-17.001-37.052-16.628-37.104Q-16.256-37.157-15.951-37.157L-15.951-37.410Q-15.951-37.615-16.059-37.795Q-16.167-37.974-16.348-38.077Q-16.529-38.179-16.737-38.179Q-17.144-38.179-17.380-38.087Q-17.291-38.050-17.245-37.966Q-17.199-37.882-17.199-37.780Q-17.199-37.684-17.245-37.605Q-17.291-37.527-17.372-37.482Q-17.452-37.438-17.541-37.438Q-17.691-37.438-17.792-37.535Q-17.893-37.633-17.893-37.780Q-17.893-38.402-16.737-38.402Q-16.526-38.402-16.276-38.338Q-16.027-38.275-15.825-38.156Q-15.623-38.036-15.497-37.851Q-15.370-37.667-15.370-37.424L-15.370-35.848Q-15.370-35.732-15.309-35.636Q-15.247-35.541-15.134-35.541Q-15.025-35.541-14.960-35.635Q-14.895-35.729-14.895-35.848L-14.895-36.296L-14.629-36.296L-14.629-35.848Q-14.629-35.578-14.856-35.413Q-15.083-35.247-15.363-35.247Q-15.572-35.247-15.709-35.401Q-15.845-35.554-15.869-35.770Q-16.016-35.503-16.298-35.358Q-16.580-35.213-16.905-35.213Q-17.182-35.213-17.466-35.288Q-17.749-35.363-17.942-35.542Q-18.135-35.722-18.135-36.009M-17.520-36.009Q-17.520-35.835-17.419-35.705Q-17.319-35.575-17.163-35.505Q-17.007-35.435-16.843-35.435Q-16.625-35.435-16.416-35.532Q-16.208-35.630-16.080-35.811Q-15.951-35.992-15.951-36.218L-15.951-36.946Q-16.276-36.946-16.642-36.855Q-17.007-36.764-17.264-36.552Q-17.520-36.341-17.520-36.009M-12.462-35.281L-14.198-35.281L-14.198-35.561Q-13.969-35.561-13.820-35.595Q-13.672-35.630-13.672-35.770L-13.672-37.619Q-13.672-37.889-13.779-37.950Q-13.887-38.012-14.198-38.012L-14.198-38.292L-13.169-38.367L-13.169-37.660Q-13.039-37.968-12.797-38.167Q-12.554-38.367-12.236-38.367Q-12.017-38.367-11.846-38.243Q-11.675-38.118-11.675-37.906Q-11.675-37.769-11.775-37.670Q-11.874-37.571-12.007-37.571Q-12.144-37.571-12.243-37.670Q-12.342-37.769-12.342-37.906Q-12.342-38.046-12.243-38.145Q-12.533-38.145-12.733-37.949Q-12.933-37.752-13.026-37.458Q-13.118-37.164-13.118-36.884L-13.118-35.770Q-13.118-35.561-12.462-35.561L-12.462-35.281M-10.565-36.122L-10.565-38.019L-11.204-38.019L-11.204-38.241Q-10.886-38.241-10.669-38.451Q-10.452-38.661-10.351-38.971Q-10.250-39.280-10.250-39.588L-9.984-39.588L-9.984-38.299L-8.907-38.299L-8.907-38.019L-9.984-38.019L-9.984-36.135Q-9.984-35.859-9.879-35.660Q-9.775-35.462-9.515-35.462Q-9.358-35.462-9.252-35.566Q-9.146-35.671-9.097-35.824Q-9.047-35.978-9.047-36.135L-9.047-36.549L-8.780-36.549L-8.780-36.122Q-8.780-35.896-8.880-35.686Q-8.979-35.476-9.163-35.344Q-9.348-35.213-9.577-35.213Q-10.014-35.213-10.289-35.450Q-10.565-35.688-10.565-36.122M-6.354-35.281L-7.905-35.281L-7.905-35.561Q-7.680-35.561-7.531-35.595Q-7.382-35.630-7.382-35.770L-7.382-37.619Q-7.382-37.807-7.430-37.891Q-7.478-37.974-7.576-37.993Q-7.673-38.012-7.885-38.012L-7.885-38.292L-6.829-38.367L-6.829-35.770Q-6.829-35.630-6.697-35.595Q-6.566-35.561-6.354-35.561L-6.354-35.281M-7.625-39.588Q-7.625-39.759-7.502-39.878Q-7.379-39.998-7.208-39.998Q-7.041-39.998-6.918-39.878Q-6.795-39.759-6.795-39.588Q-6.795-39.413-6.918-39.290Q-7.041-39.167-7.208-39.167Q-7.379-39.167-7.502-39.290Q-7.625-39.413-7.625-39.588M-5.650-36.009Q-5.650-36.341-5.426-36.568Q-5.202-36.795-4.858-36.923Q-4.515-37.052-4.142-37.104Q-3.770-37.157-3.466-37.157L-3.466-37.410Q-3.466-37.615-3.573-37.795Q-3.681-37.974-3.862-38.077Q-4.043-38.179-4.252-38.179Q-4.658-38.179-4.894-38.087Q-4.805-38.050-4.759-37.966Q-4.713-37.882-4.713-37.780Q-4.713-37.684-4.759-37.605Q-4.805-37.527-4.886-37.482Q-4.966-37.438-5.055-37.438Q-5.205-37.438-5.306-37.535Q-5.407-37.633-5.407-37.780Q-5.407-38.402-4.252-38.402Q-4.040-38.402-3.790-38.338Q-3.541-38.275-3.339-38.156Q-3.137-38.036-3.011-37.851Q-2.884-37.667-2.884-37.424L-2.884-35.848Q-2.884-35.732-2.823-35.636Q-2.761-35.541-2.649-35.541Q-2.539-35.541-2.474-35.635Q-2.409-35.729-2.409-35.848L-2.409-36.296L-2.143-36.296L-2.143-35.848Q-2.143-35.578-2.370-35.413Q-2.597-35.247-2.878-35.247Q-3.086-35.247-3.223-35.401Q-3.360-35.554-3.383-35.770Q-3.530-35.503-3.812-35.358Q-4.094-35.213-4.419-35.213Q-4.696-35.213-4.980-35.288Q-5.263-35.363-5.456-35.542Q-5.650-35.722-5.650-36.009M-5.034-36.009Q-5.034-35.835-4.934-35.705Q-4.833-35.575-4.677-35.505Q-4.522-35.435-4.358-35.435Q-4.139-35.435-3.930-35.532Q-3.722-35.630-3.594-35.811Q-3.466-35.992-3.466-36.218L-3.466-36.946Q-3.790-36.946-4.156-36.855Q-4.522-36.764-4.778-36.552Q-5.034-36.341-5.034-36.009M-0.058-35.281L-1.661-35.281L-1.661-35.561Q-1.435-35.561-1.287-35.595Q-1.138-35.630-1.138-35.770L-1.138-39.389Q-1.138-39.659-1.246-39.721Q-1.353-39.782-1.661-39.782L-1.661-40.063L-0.584-40.138L-0.584-35.770Q-0.584-35.633-0.434-35.597Q-0.283-35.561-0.058-35.561",[553],[536,598,599],{"transform":592},[549,600],{"d":601,"fill":538,"stroke":538,"className":602,"style":554},"M8.419-36.088L3.586-36.088Q3.518-36.098 3.472-36.144Q3.426-36.190 3.426-36.262Q3.426-36.327 3.472-36.373Q3.518-36.419 3.586-36.429L8.419-36.429Q8.488-36.419 8.534-36.373Q8.580-36.327 8.580-36.262Q8.580-36.190 8.534-36.144Q8.488-36.098 8.419-36.088M8.419-37.626L3.586-37.626Q3.518-37.636 3.472-37.682Q3.426-37.728 3.426-37.800Q3.426-37.944 3.586-37.968L8.419-37.968Q8.580-37.944 8.580-37.800Q8.580-37.728 8.534-37.682Q8.488-37.636 8.419-37.626",[553],[536,604,605],{"transform":592},[549,606],{"d":607,"fill":538,"stroke":538,"className":608,"style":554},"M12.087-35.541Q12.230-35.435 12.459-35.435Q12.685-35.435 12.859-35.631Q13.034-35.828 13.088-36.057L13.403-37.318Q13.475-37.585 13.475-37.718Q13.475-37.909 13.363-38.027Q13.252-38.145 13.061-38.145Q12.832-38.145 12.634-38.021Q12.435-37.896 12.294-37.692Q12.152-37.489 12.094-37.270Q12.083-37.205 12.025-37.205L11.913-37.205Q11.882-37.205 11.858-37.236Q11.834-37.267 11.834-37.291L11.834-37.318Q11.947-37.745 12.300-38.056Q12.654-38.367 13.075-38.367Q13.246-38.367 13.410-38.314Q13.574-38.261 13.707-38.157Q13.840-38.053 13.915-37.899Q14.056-38.104 14.257-38.236Q14.459-38.367 14.678-38.367Q14.968-38.367 15.197-38.232Q15.426-38.097 15.426-37.827Q15.426-37.708 15.373-37.604Q15.320-37.499 15.223-37.436Q15.125-37.373 15.006-37.373Q14.890-37.373 14.808-37.446Q14.726-37.520 14.726-37.639Q14.726-37.780 14.816-37.894Q14.907-38.009 15.040-38.039Q14.886-38.145 14.664-38.145Q14.510-38.145 14.380-38.051Q14.250-37.957 14.162-37.821Q14.073-37.684 14.025-37.520L13.710-36.262Q13.649-35.978 13.649-35.862Q13.649-35.671 13.760-35.553Q13.871-35.435 14.062-35.435Q14.237-35.435 14.396-35.510Q14.555-35.585 14.685-35.715Q14.814-35.845 14.903-36.002Q14.992-36.159 15.026-36.310Q15.050-36.371 15.105-36.371L15.214-36.371Q15.248-36.371 15.271-36.346Q15.293-36.320 15.293-36.289Q15.293-36.276 15.286-36.262Q15.218-35.982 15.033-35.742Q14.849-35.503 14.589-35.358Q14.329-35.213 14.045-35.213Q13.779-35.213 13.550-35.332Q13.321-35.452 13.208-35.681Q13.078-35.483 12.875-35.348Q12.671-35.213 12.442-35.213Q12.162-35.213 11.931-35.348Q11.701-35.483 11.701-35.749Q11.701-35.930 11.822-36.067Q11.943-36.204 12.121-36.204Q12.241-36.204 12.321-36.132Q12.401-36.060 12.401-35.941Q12.401-35.801 12.314-35.686Q12.227-35.572 12.087-35.541M16.482-34.468Q16.482-34.659 16.599-34.799Q16.715-34.939 16.903-34.939Q17.022-34.939 17.106-34.864Q17.190-34.789 17.190-34.673Q17.190-34.519 17.084-34.403Q16.978-34.286 16.824-34.266Q16.985-34.078 17.330-34.078Q17.819-34.078 18.212-34.594Q18.355-34.785 18.444-35.001Q18.533-35.216 18.605-35.513Q18.270-35.213 17.870-35.213Q17.422-35.213 17.145-35.437Q16.869-35.660 16.869-36.101Q16.869-36.412 16.976-36.732Q17.084-37.052 17.296-37.571Q17.371-37.773 17.371-37.913Q17.371-38.012 17.332-38.079Q17.292-38.145 17.204-38.145Q16.923-38.145 16.734-37.874Q16.544-37.602 16.455-37.270Q16.445-37.205 16.383-37.205L16.274-37.205Q16.243-37.205 16.219-37.236Q16.195-37.267 16.195-37.291L16.195-37.318Q16.264-37.578 16.404-37.815Q16.544-38.053 16.754-38.210Q16.964-38.367 17.217-38.367Q17.398-38.367 17.554-38.296Q17.709-38.224 17.807-38.089Q17.904-37.954 17.904-37.773Q17.904-37.656 17.856-37.520Q17.641-36.990 17.528-36.648Q17.415-36.306 17.415-35.995Q17.415-35.753 17.530-35.594Q17.644-35.435 17.884-35.435Q18.366-35.435 18.731-36.030L19.234-38.039Q19.265-38.152 19.357-38.226Q19.449-38.299 19.562-38.299Q19.665-38.299 19.736-38.236Q19.808-38.173 19.808-38.073Q19.808-38.050 19.806-38.036Q19.805-38.022 19.801-38.005L19.114-35.254Q19.019-34.871 18.743-34.548Q18.468-34.225 18.089-34.039Q17.709-33.852 17.316-33.852Q16.998-33.852 16.740-34.010Q16.482-34.167 16.482-34.468",[553],[536,610,613,616,619],{"fill":611,"stroke":611,"style":612},"var(--tk-accent)","stroke-width:1.2",[549,614],{"fill":542,"d":615},"M36.827-35.281h50.86",[549,617],{"stroke":542,"d":618},"m90.887-35.281-5.12-2.56 1.92 2.56-1.92 2.56",[536,620,621,628,634,640],{"fill":611,"stroke":542,"fontSize":544},[536,622,624],{"transform":623},"translate(72.313 -3.933)",[549,625],{"d":626,"fill":611,"stroke":611,"className":627,"style":554},"M-22.610-36.792Q-22.610-37.120-22.475-37.421Q-22.340-37.721-22.104-37.942Q-21.868-38.162-21.564-38.282Q-21.259-38.402-20.935-38.402Q-20.429-38.402-20.080-38.299Q-19.732-38.197-19.732-37.821Q-19.732-37.674-19.829-37.573Q-19.926-37.472-20.073-37.472Q-20.227-37.472-20.326-37.571Q-20.425-37.670-20.425-37.821Q-20.425-38.009-20.285-38.101Q-20.487-38.152-20.928-38.152Q-21.283-38.152-21.512-37.956Q-21.741-37.759-21.842-37.450Q-21.943-37.140-21.943-36.792Q-21.943-36.443-21.817-36.137Q-21.690-35.831-21.435-35.647Q-21.181-35.462-20.825-35.462Q-20.603-35.462-20.419-35.546Q-20.234-35.630-20.099-35.785Q-19.964-35.941-19.906-36.149Q-19.892-36.204-19.838-36.204L-19.725-36.204Q-19.694-36.204-19.672-36.180Q-19.650-36.156-19.650-36.122L-19.650-36.101Q-19.735-35.814-19.923-35.616Q-20.111-35.418-20.376-35.315Q-20.641-35.213-20.935-35.213Q-21.365-35.213-21.753-35.419Q-22.141-35.626-22.375-35.989Q-22.610-36.351-22.610-36.792",[553],[536,629,630],{"transform":623},[549,631],{"d":632,"fill":611,"stroke":611,"className":633,"style":554},"M-17.588-35.281L-19.222-35.281L-19.222-35.561Q-18.993-35.561-18.844-35.595Q-18.695-35.630-18.695-35.770L-18.695-39.389Q-18.695-39.659-18.803-39.721Q-18.911-39.782-19.222-39.782L-19.222-40.063L-18.142-40.138L-18.142-37.752Q-18.036-37.937-17.858-38.079Q-17.680-38.220-17.472-38.294Q-17.263-38.367-17.038-38.367Q-16.532-38.367-16.248-38.144Q-15.964-37.920-15.964-37.424L-15.964-35.770Q-15.964-35.633-15.816-35.597Q-15.667-35.561-15.441-35.561L-15.441-35.281L-17.072-35.281L-17.072-35.561Q-16.843-35.561-16.694-35.595Q-16.545-35.630-16.545-35.770L-16.545-37.410Q-16.545-37.745-16.665-37.945Q-16.785-38.145-17.099-38.145Q-17.369-38.145-17.603-38.009Q-17.837-37.872-17.976-37.638Q-18.114-37.404-18.114-37.130L-18.114-35.770Q-18.114-35.633-17.964-35.597Q-17.813-35.561-17.588-35.561L-17.588-35.281M-14.895-36.764Q-14.895-37.106-14.760-37.405Q-14.625-37.704-14.385-37.928Q-14.146-38.152-13.828-38.277Q-13.510-38.402-13.179-38.402Q-12.734-38.402-12.334-38.186Q-11.935-37.971-11.700-37.593Q-11.466-37.216-11.466-36.764Q-11.466-36.423-11.608-36.139Q-11.750-35.855-11.994-35.648Q-12.239-35.442-12.548-35.327Q-12.857-35.213-13.179-35.213Q-13.609-35.213-14.011-35.414Q-14.413-35.616-14.654-35.968Q-14.895-36.320-14.895-36.764M-13.179-35.462Q-12.577-35.462-12.353-35.840Q-12.129-36.218-12.129-36.850Q-12.129-37.462-12.364-37.821Q-12.598-38.179-13.179-38.179Q-14.231-38.179-14.231-36.850Q-14.231-36.218-14.006-35.840Q-13.780-35.462-13.179-35.462",[553],[536,635,636],{"transform":623},[549,637],{"d":638,"fill":611,"stroke":611,"className":639,"style":554},"M-10.693-36.764Q-10.693-37.106-10.558-37.405Q-10.423-37.704-10.183-37.928Q-9.944-38.152-9.626-38.277Q-9.308-38.402-8.977-38.402Q-8.532-38.402-8.133-38.186Q-7.733-37.971-7.498-37.593Q-7.264-37.216-7.264-36.764Q-7.264-36.423-7.406-36.139Q-7.548-35.855-7.792-35.648Q-8.037-35.442-8.346-35.327Q-8.655-35.213-8.977-35.213Q-9.407-35.213-9.809-35.414Q-10.211-35.616-10.452-35.968Q-10.693-36.320-10.693-36.764M-8.977-35.462Q-8.375-35.462-8.151-35.840Q-7.927-36.218-7.927-36.850Q-7.927-37.462-8.162-37.821Q-8.396-38.179-8.977-38.179Q-10.029-38.179-10.029-36.850Q-10.029-36.218-9.804-35.840Q-9.578-35.462-8.977-35.462M-6.670-35.288L-6.670-36.351Q-6.670-36.375-6.642-36.402Q-6.615-36.429-6.591-36.429L-6.482-36.429Q-6.417-36.429-6.403-36.371Q-6.307-35.937-6.061-35.686Q-5.815-35.435-5.402-35.435Q-5.060-35.435-4.807-35.568Q-4.554-35.701-4.554-36.009Q-4.554-36.166-4.648-36.281Q-4.742-36.395-4.880-36.464Q-5.019-36.532-5.186-36.570L-5.767-36.669Q-6.123-36.737-6.396-36.958Q-6.670-37.178-6.670-37.520Q-6.670-37.769-6.559-37.944Q-6.447-38.118-6.261-38.217Q-6.075-38.316-5.860-38.359Q-5.644-38.402-5.402-38.402Q-4.988-38.402-4.708-38.220L-4.492-38.395Q-4.482-38.398-4.475-38.400Q-4.468-38.402-4.458-38.402L-4.407-38.402Q-4.380-38.402-4.356-38.378Q-4.332-38.354-4.332-38.326L-4.332-37.479Q-4.332-37.458-4.356-37.431Q-4.380-37.404-4.407-37.404L-4.520-37.404Q-4.547-37.404-4.573-37.429Q-4.598-37.455-4.598-37.479Q-4.598-37.715-4.704-37.879Q-4.810-38.043-4.993-38.125Q-5.176-38.207-5.408-38.207Q-5.737-38.207-5.993-38.104Q-6.249-38.002-6.249-37.725Q-6.249-37.530-6.066-37.421Q-5.883-37.311-5.654-37.270L-5.080-37.164Q-4.834-37.116-4.621-36.988Q-4.407-36.860-4.270-36.657Q-4.133-36.453-4.133-36.204Q-4.133-35.691-4.499-35.452Q-4.865-35.213-5.402-35.213Q-5.897-35.213-6.229-35.507L-6.495-35.233Q-6.516-35.213-6.543-35.213L-6.591-35.213Q-6.615-35.213-6.642-35.240Q-6.670-35.267-6.670-35.288M-3.546-36.816Q-3.546-37.137-3.421-37.426Q-3.296-37.715-3.070-37.938Q-2.845-38.162-2.549-38.282Q-2.254-38.402-1.936-38.402Q-1.608-38.402-1.346-38.302Q-1.085-38.203-0.909-38.021Q-0.733-37.838-0.639-37.580Q-0.545-37.322-0.545-36.990Q-0.545-36.898-0.627-36.877L-2.883-36.877L-2.883-36.816Q-2.883-36.228-2.599-35.845Q-2.315-35.462-1.748-35.462Q-1.426-35.462-1.158-35.655Q-0.890-35.848-0.801-36.163Q-0.794-36.204-0.719-36.218L-0.627-36.218Q-0.545-36.194-0.545-36.122Q-0.545-36.115-0.551-36.088Q-0.664-35.691-1.035-35.452Q-1.406-35.213-1.830-35.213Q-2.267-35.213-2.667-35.421Q-3.067-35.630-3.306-35.997Q-3.546-36.364-3.546-36.816M-2.876-37.086L-1.061-37.086Q-1.061-37.363-1.158-37.615Q-1.256-37.868-1.454-38.024Q-1.652-38.179-1.936-38.179Q-2.213-38.179-2.426-38.021Q-2.640-37.862-2.758-37.607Q-2.876-37.352-2.876-37.086",[553],[536,641,642],{"transform":623},[549,643],{"d":644,"fill":611,"stroke":611,"className":645,"style":554},"M3.467-36.183Q3.467-35.859 3.655-35.647Q3.843-35.435 4.161-35.435Q4.612-35.435 5.022-35.601Q5.432-35.766 5.699-36.101Q5.716-36.129 5.764-36.129Q5.812-36.129 5.858-36.079Q5.904-36.030 5.904-35.982Q5.904-35.951 5.883-35.924Q5.593-35.558 5.131-35.385Q4.670-35.213 4.147-35.213Q3.795-35.213 3.498-35.366Q3.200-35.520 3.029-35.801Q2.858-36.081 2.858-36.436Q2.858-36.812 3.031-37.164Q3.204-37.516 3.504-37.790Q3.805-38.063 4.162-38.215Q4.520-38.367 4.896-38.367Q5.097-38.367 5.313-38.308Q5.528-38.248 5.670-38.113Q5.812-37.978 5.812-37.766Q5.812-37.578 5.697-37.438Q5.583-37.298 5.391-37.298Q5.275-37.298 5.193-37.371Q5.111-37.445 5.111-37.564Q5.111-37.711 5.210-37.824Q5.309-37.937 5.456-37.968Q5.268-38.145 4.882-38.145Q4.547-38.145 4.282-37.959Q4.017-37.773 3.836-37.475Q3.655-37.178 3.561-36.831Q3.467-36.484 3.467-36.183",[553],[536,647,649],{"transform":648},"translate(128.289 -25.28)",[549,650],{"d":651,"fill":538,"stroke":538,"className":652,"style":554},"M-22.651-36.816Q-22.651-37.137-22.526-37.426Q-22.401-37.715-22.175-37.938Q-21.950-38.162-21.654-38.282Q-21.359-38.402-21.041-38.402Q-20.713-38.402-20.451-38.302Q-20.190-38.203-20.014-38.021Q-19.838-37.838-19.744-37.580Q-19.650-37.322-19.650-36.990Q-19.650-36.898-19.732-36.877L-21.987-36.877L-21.987-36.816Q-21.987-36.228-21.704-35.845Q-21.420-35.462-20.853-35.462Q-20.531-35.462-20.263-35.655Q-19.995-35.848-19.906-36.163Q-19.899-36.204-19.824-36.218L-19.732-36.218Q-19.650-36.194-19.650-36.122Q-19.650-36.115-19.656-36.088Q-19.769-35.691-20.140-35.452Q-20.511-35.213-20.935-35.213Q-21.372-35.213-21.772-35.421Q-22.172-35.630-22.411-35.997Q-22.651-36.364-22.651-36.816M-21.981-37.086L-20.166-37.086Q-20.166-37.363-20.263-37.615Q-20.361-37.868-20.559-38.024Q-20.757-38.179-21.041-38.179Q-21.318-38.179-21.531-38.021Q-21.745-37.862-21.863-37.607Q-21.981-37.352-21.981-37.086M-17.879-35.281L-19.202-35.281L-19.202-35.561Q-18.641-35.561-18.262-35.961L-17.548-36.758L-18.460-37.807Q-18.597-37.954-18.746-37.986Q-18.894-38.019-19.161-38.019L-19.161-38.299L-17.660-38.299L-17.660-38.019Q-17.852-38.019-17.852-37.885Q-17.852-37.855-17.821-37.807L-17.226-37.123L-16.785-37.619Q-16.673-37.749-16.673-37.865Q-16.673-37.927-16.710-37.973Q-16.748-38.019-16.806-38.019L-16.806-38.299L-15.490-38.299L-15.490-38.019Q-16.050-38.019-16.430-37.619L-17.052-36.918L-16.057-35.770Q-15.958-35.671-15.857-35.626Q-15.757-35.582-15.645-35.572Q-15.534-35.561-15.357-35.561L-15.357-35.281L-16.850-35.281L-16.850-35.561Q-16.785-35.561-16.726-35.595Q-16.666-35.630-16.666-35.695Q-16.666-35.742-16.696-35.770L-17.373-36.556L-17.906-35.961Q-18.019-35.831-18.019-35.715Q-18.019-35.650-17.978-35.606Q-17.937-35.561-17.879-35.561L-17.879-35.281M-13.217-33.924L-14.847-33.924L-14.847-34.204Q-14.618-34.204-14.470-34.239Q-14.321-34.273-14.321-34.413L-14.321-37.759Q-14.321-37.930-14.458-37.971Q-14.594-38.012-14.847-38.012L-14.847-38.292L-13.767-38.367L-13.767-37.961Q-13.545-38.162-13.258-38.265Q-12.971-38.367-12.663-38.367Q-12.236-38.367-11.872-38.154Q-11.508-37.940-11.294-37.576Q-11.081-37.212-11.081-36.792Q-11.081-36.347-11.320-35.983Q-11.559-35.619-11.952-35.416Q-12.345-35.213-12.790-35.213Q-13.056-35.213-13.304-35.313Q-13.552-35.414-13.740-35.595L-13.740-34.413Q-13.740-34.276-13.591-34.240Q-13.443-34.204-13.217-34.204L-13.217-33.924M-13.740-37.612L-13.740-36.002Q-13.607-35.749-13.364-35.592Q-13.121-35.435-12.844-35.435Q-12.516-35.435-12.263-35.636Q-12.010-35.838-11.877-36.156Q-11.744-36.474-11.744-36.792Q-11.744-37.021-11.809-37.250Q-11.874-37.479-12.002-37.677Q-12.130-37.875-12.325-37.995Q-12.520-38.114-12.752-38.114Q-13.046-38.114-13.314-37.985Q-13.583-37.855-13.740-37.612M-8.777-35.281L-10.380-35.281L-10.380-35.561Q-10.154-35.561-10.006-35.595Q-9.857-35.630-9.857-35.770L-9.857-39.389Q-9.857-39.659-9.965-39.721Q-10.072-39.782-10.380-39.782L-10.380-40.063L-9.303-40.138L-9.303-35.770Q-9.303-35.633-9.153-35.597Q-9.003-35.561-8.777-35.561L-8.777-35.281M-8.223-36.764Q-8.223-37.106-8.088-37.405Q-7.953-37.704-7.714-37.928Q-7.475-38.152-7.157-38.277Q-6.839-38.402-6.507-38.402Q-6.063-38.402-5.663-38.186Q-5.263-37.971-5.029-37.593Q-4.795-37.216-4.795-36.764Q-4.795-36.423-4.937-36.139Q-5.079-35.855-5.323-35.648Q-5.568-35.442-5.877-35.327Q-6.186-35.213-6.507-35.213Q-6.938-35.213-7.340-35.414Q-7.741-35.616-7.982-35.968Q-8.223-36.320-8.223-36.764M-6.507-35.462Q-5.906-35.462-5.682-35.840Q-5.458-36.218-5.458-36.850Q-5.458-37.462-5.692-37.821Q-5.926-38.179-6.507-38.179Q-7.560-38.179-7.560-36.850Q-7.560-36.218-7.335-35.840Q-7.109-35.462-6.507-35.462M-2.450-35.281L-4.187-35.281L-4.187-35.561Q-3.958-35.561-3.809-35.595Q-3.660-35.630-3.660-35.770L-3.660-37.619Q-3.660-37.889-3.768-37.950Q-3.876-38.012-4.187-38.012L-4.187-38.292L-3.158-38.367L-3.158-37.660Q-3.028-37.968-2.785-38.167Q-2.543-38.367-2.225-38.367Q-2.006-38.367-1.835-38.243Q-1.664-38.118-1.664-37.906Q-1.664-37.769-1.763-37.670Q-1.862-37.571-1.996-37.571Q-2.132-37.571-2.232-37.670Q-2.331-37.769-2.331-37.906Q-2.331-38.046-2.232-38.145Q-2.522-38.145-2.722-37.949Q-2.922-37.752-3.014-37.458Q-3.107-37.164-3.107-36.884L-3.107-35.770Q-3.107-35.561-2.450-35.561L-2.450-35.281M-1.121-36.816Q-1.121-37.137-0.996-37.426Q-0.871-37.715-0.646-37.938Q-0.420-38.162-0.124-38.282Q0.171-38.402 0.489-38.402Q0.817-38.402 1.079-38.302Q1.340-38.203 1.516-38.021Q1.692-37.838 1.786-37.580Q1.880-37.322 1.880-36.990Q1.880-36.898 1.798-36.877L-0.458-36.877L-0.458-36.816Q-0.458-36.228-0.174-35.845Q0.110-35.462 0.677-35.462Q0.998-35.462 1.267-35.655Q1.535-35.848 1.624-36.163Q1.631-36.204 1.706-36.218L1.798-36.218Q1.880-36.194 1.880-36.122Q1.880-36.115 1.873-36.088Q1.761-35.691 1.390-35.452Q1.019-35.213 0.595-35.213Q0.158-35.213-0.242-35.421Q-0.642-35.630-0.882-35.997Q-1.121-36.364-1.121-36.816M-0.451-37.086L1.364-37.086Q1.364-37.363 1.267-37.615Q1.169-37.868 0.971-38.024Q0.773-38.179 0.489-38.179Q0.212-38.179-0.001-38.021Q-0.215-37.862-0.333-37.607Q-0.451-37.352-0.451-37.086",[553],[549,654],{"fill":542,"d":655},"M86.619-25.323h19.917V-45.24H86.619Z",[536,657,659],{"transform":658},"translate(116.88 1.937)",[549,660],{"d":569,"fill":538,"stroke":538,"className":661,"style":571},[553],[549,663],{"fill":542,"d":664},"M106.536-25.323h19.916V-45.24h-19.916Z",[536,666,668],{"transform":667},"translate(136.98 1.062)",[549,669],{"d":580,"fill":538,"stroke":538,"className":670,"style":571},[553],[536,672,673,676],{"stroke":611,"style":612},[549,674],{"fill":542,"d":675},"M126.453-25.323h19.917V-45.24h-19.917Z",[536,677,679],{"transform":678},"translate(157.333 1.937)",[549,680],{"d":681,"fill":538,"stroke":538,"className":682,"style":571},"M-21.834-36.388Q-21.834-35.993-21.621-35.718Q-21.408-35.444-21.026-35.444Q-20.481-35.444-19.975-35.679Q-19.470-35.914-19.153-36.336Q-19.132-36.371-19.070-36.371Q-19.013-36.371-18.967-36.320Q-18.921-36.270-18.921-36.217Q-18.921-36.182-18.947-36.156Q-19.294-35.681-19.857-35.430Q-20.419-35.180-21.043-35.180Q-21.474-35.180-21.823-35.382Q-22.173-35.584-22.364-35.940Q-22.555-36.296-22.555-36.722Q-22.555-37.184-22.353-37.641Q-22.151-38.098-21.795-38.467Q-21.439-38.836-20.995-39.047Q-20.551-39.258-20.081-39.258Q-19.813-39.258-19.564-39.177Q-19.316-39.095-19.149-38.917Q-18.982-38.739-18.982-38.476Q-18.982-38.239-19.132-38.061Q-19.281-37.883-19.514-37.883Q-19.654-37.883-19.760-37.977Q-19.865-38.072-19.865-38.217Q-19.865-38.419-19.718-38.573Q-19.571-38.726-19.369-38.726Q-19.474-38.867-19.679-38.933Q-19.883-38.999-20.090-38.999Q-20.626-38.999-21.023-38.570Q-21.421-38.142-21.628-37.522Q-21.834-36.903-21.834-36.388",[553],[536,684,685,692,698,704],{"stroke":542,"fontSize":544},[536,686,688],{"transform":687},"translate(114.064 29.28)",[549,689],{"d":690,"fill":538,"stroke":538,"className":691,"style":554},"M-20.860-35.281L-22.596-35.281L-22.596-35.561Q-22.367-35.561-22.218-35.595Q-22.070-35.630-22.070-35.770L-22.070-37.619Q-22.070-37.889-22.177-37.950Q-22.285-38.012-22.596-38.012L-22.596-38.292L-21.567-38.367L-21.567-37.660Q-21.437-37.968-21.195-38.167Q-20.952-38.367-20.634-38.367Q-20.415-38.367-20.244-38.243Q-20.073-38.118-20.073-37.906Q-20.073-37.769-20.173-37.670Q-20.272-37.571-20.405-37.571Q-20.542-37.571-20.641-37.670Q-20.740-37.769-20.740-37.906Q-20.740-38.046-20.641-38.145Q-20.931-38.145-21.131-37.949Q-21.331-37.752-21.424-37.458Q-21.516-37.164-21.516-36.884L-21.516-35.770Q-21.516-35.561-20.860-35.561L-20.860-35.281M-19.530-36.816Q-19.530-37.137-19.405-37.426Q-19.280-37.715-19.055-37.938Q-18.829-38.162-18.534-38.282Q-18.238-38.402-17.920-38.402Q-17.592-38.402-17.330-38.302Q-17.069-38.203-16.893-38.021Q-16.717-37.838-16.623-37.580Q-16.529-37.322-16.529-36.990Q-16.529-36.898-16.611-36.877L-18.867-36.877L-18.867-36.816Q-18.867-36.228-18.583-35.845Q-18.299-35.462-17.732-35.462Q-17.411-35.462-17.143-35.655Q-16.874-35.848-16.785-36.163Q-16.778-36.204-16.703-36.218L-16.611-36.218Q-16.529-36.194-16.529-36.122Q-16.529-36.115-16.536-36.088Q-16.649-35.691-17.019-35.452Q-17.390-35.213-17.814-35.213Q-18.252-35.213-18.652-35.421Q-19.051-35.630-19.291-35.997Q-19.530-36.364-19.530-36.816M-18.860-37.086L-17.045-37.086Q-17.045-37.363-17.143-37.615Q-17.240-37.868-17.438-38.024Q-17.636-38.179-17.920-38.179Q-18.197-38.179-18.411-38.021Q-18.624-37.862-18.742-37.607Q-18.860-37.352-18.860-37.086M-15.941-36.792Q-15.941-37.120-15.806-37.421Q-15.671-37.721-15.435-37.942Q-15.199-38.162-14.895-38.282Q-14.591-38.402-14.266-38.402Q-13.760-38.402-13.412-38.299Q-13.063-38.197-13.063-37.821Q-13.063-37.674-13.161-37.573Q-13.258-37.472-13.405-37.472Q-13.559-37.472-13.658-37.571Q-13.757-37.670-13.757-37.821Q-13.757-38.009-13.617-38.101Q-13.819-38.152-14.259-38.152Q-14.615-38.152-14.844-37.956Q-15.073-37.759-15.174-37.450Q-15.275-37.140-15.275-36.792Q-15.275-36.443-15.148-36.137Q-15.022-35.831-14.767-35.647Q-14.512-35.462-14.157-35.462Q-13.935-35.462-13.750-35.546Q-13.566-35.630-13.431-35.785Q-13.296-35.941-13.237-36.149Q-13.224-36.204-13.169-36.204L-13.056-36.204Q-13.026-36.204-13.003-36.180Q-12.981-36.156-12.981-36.122L-12.981-36.101Q-13.067-35.814-13.255-35.616Q-13.443-35.418-13.707-35.315Q-13.972-35.213-14.266-35.213Q-14.697-35.213-15.085-35.419Q-15.473-35.626-15.707-35.989Q-15.941-36.351-15.941-36.792M-11.819-36.115L-11.819-37.619Q-11.819-37.889-11.927-37.950Q-12.034-38.012-12.345-38.012L-12.345-38.292L-11.238-38.367L-11.238-36.135L-11.238-36.115Q-11.238-35.835-11.187-35.691Q-11.135-35.548-10.994-35.491Q-10.852-35.435-10.565-35.435Q-10.312-35.435-10.107-35.575Q-9.902-35.715-9.785-35.941Q-9.669-36.166-9.669-36.416L-9.669-37.619Q-9.669-37.889-9.777-37.950Q-9.884-38.012-10.195-38.012L-10.195-38.292L-9.088-38.367L-9.088-35.954Q-9.088-35.763-9.035-35.681Q-8.982-35.599-8.881-35.580Q-8.780-35.561-8.565-35.561L-8.565-35.281L-9.642-35.213L-9.642-35.777Q-9.751-35.595-9.896-35.472Q-10.042-35.349-10.228-35.281Q-10.414-35.213-10.616-35.213Q-11.819-35.213-11.819-36.115M-6.227-35.281L-7.964-35.281L-7.964-35.561Q-7.735-35.561-7.586-35.595Q-7.437-35.630-7.437-35.770L-7.437-37.619Q-7.437-37.889-7.545-37.950Q-7.653-38.012-7.964-38.012L-7.964-38.292L-6.935-38.367L-6.935-37.660Q-6.805-37.968-6.562-38.167Q-6.320-38.367-6.002-38.367Q-5.783-38.367-5.612-38.243Q-5.441-38.118-5.441-37.906Q-5.441-37.769-5.540-37.670Q-5.639-37.571-5.773-37.571Q-5.909-37.571-6.008-37.670Q-6.108-37.769-6.108-37.906Q-6.108-38.046-6.008-38.145Q-6.299-38.145-6.499-37.949Q-6.699-37.752-6.791-37.458Q-6.883-37.164-6.883-36.884L-6.883-35.770Q-6.883-35.561-6.227-35.561L-6.227-35.281M-4.857-35.288L-4.857-36.351Q-4.857-36.375-4.829-36.402Q-4.802-36.429-4.778-36.429L-4.669-36.429Q-4.604-36.429-4.590-36.371Q-4.494-35.937-4.248-35.686Q-4.002-35.435-3.589-35.435Q-3.247-35.435-2.994-35.568Q-2.741-35.701-2.741-36.009Q-2.741-36.166-2.835-36.281Q-2.929-36.395-3.067-36.464Q-3.206-36.532-3.373-36.570L-3.954-36.669Q-4.310-36.737-4.583-36.958Q-4.857-37.178-4.857-37.520Q-4.857-37.769-4.746-37.944Q-4.634-38.118-4.448-38.217Q-4.262-38.316-4.047-38.359Q-3.831-38.402-3.589-38.402Q-3.175-38.402-2.895-38.220L-2.679-38.395Q-2.669-38.398-2.662-38.400Q-2.655-38.402-2.645-38.402L-2.594-38.402Q-2.567-38.402-2.543-38.378Q-2.519-38.354-2.519-38.326L-2.519-37.479Q-2.519-37.458-2.543-37.431Q-2.567-37.404-2.594-37.404L-2.707-37.404Q-2.734-37.404-2.760-37.429Q-2.785-37.455-2.785-37.479Q-2.785-37.715-2.891-37.879Q-2.997-38.043-3.180-38.125Q-3.363-38.207-3.595-38.207Q-3.924-38.207-4.180-38.104Q-4.436-38.002-4.436-37.725Q-4.436-37.530-4.253-37.421Q-4.070-37.311-3.841-37.270L-3.267-37.164Q-3.021-37.116-2.808-36.988Q-2.594-36.860-2.457-36.657Q-2.320-36.453-2.320-36.204Q-2.320-35.691-2.686-35.452Q-3.052-35.213-3.589-35.213Q-4.084-35.213-4.416-35.507L-4.682-35.233Q-4.703-35.213-4.730-35.213L-4.778-35.213Q-4.802-35.213-4.829-35.240Q-4.857-35.267-4.857-35.288M-1.733-36.816Q-1.733-37.137-1.608-37.426Q-1.483-37.715-1.257-37.938Q-1.032-38.162-0.736-38.282Q-0.441-38.402-0.123-38.402Q0.205-38.402 0.467-38.302Q0.728-38.203 0.904-38.021Q1.080-37.838 1.174-37.580Q1.268-37.322 1.268-36.990Q1.268-36.898 1.186-36.877L-1.070-36.877L-1.070-36.816Q-1.070-36.228-0.786-35.845Q-0.502-35.462 0.065-35.462Q0.387-35.462 0.655-35.655Q0.923-35.848 1.012-36.163Q1.019-36.204 1.094-36.218L1.186-36.218Q1.268-36.194 1.268-36.122Q1.268-36.115 1.262-36.088Q1.149-35.691 0.778-35.452Q0.407-35.213-0.017-35.213Q-0.454-35.213-0.854-35.421Q-1.254-35.630-1.493-35.997Q-1.733-36.364-1.733-36.816M-1.063-37.086L0.752-37.086Q0.752-37.363 0.655-37.615Q0.557-37.868 0.359-38.024Q0.161-38.179-0.123-38.179Q-0.400-38.179-0.613-38.021Q-0.827-37.862-0.945-37.607Q-1.063-37.352-1.063-37.086",[553],[536,693,694],{"transform":687},[549,695],{"d":696,"fill":538,"stroke":538,"className":697,"style":554},"M4.545-36.764Q4.545-37.106 4.680-37.405Q4.815-37.704 5.055-37.928Q5.294-38.152 5.612-38.277Q5.930-38.402 6.261-38.402Q6.706-38.402 7.105-38.186Q7.505-37.971 7.740-37.593Q7.974-37.216 7.974-36.764Q7.974-36.423 7.832-36.139Q7.690-35.855 7.446-35.648Q7.201-35.442 6.892-35.327Q6.583-35.213 6.261-35.213Q5.831-35.213 5.429-35.414Q5.027-35.616 4.786-35.968Q4.545-36.320 4.545-36.764M6.261-35.462Q6.863-35.462 7.087-35.840Q7.311-36.218 7.311-36.850Q7.311-37.462 7.076-37.821Q6.842-38.179 6.261-38.179Q5.209-38.179 5.209-36.850Q5.209-36.218 5.434-35.840Q5.660-35.462 6.261-35.462M10.250-35.281L8.616-35.281L8.616-35.561Q8.845-35.561 8.994-35.595Q9.143-35.630 9.143-35.770L9.143-37.619Q9.143-37.889 9.035-37.950Q8.927-38.012 8.616-38.012L8.616-38.292L9.676-38.367L9.676-37.718Q9.847-38.026 10.151-38.197Q10.455-38.367 10.800-38.367Q11.306-38.367 11.590-38.144Q11.874-37.920 11.874-37.424L11.874-35.770Q11.874-35.633 12.022-35.597Q12.171-35.561 12.397-35.561L12.397-35.281L10.766-35.281L10.766-35.561Q10.995-35.561 11.144-35.595Q11.293-35.630 11.293-35.770L11.293-37.410Q11.293-37.745 11.173-37.945Q11.053-38.145 10.739-38.145Q10.469-38.145 10.235-38.009Q10.001-37.872 9.862-37.638Q9.724-37.404 9.724-37.130L9.724-35.770Q9.724-35.633 9.874-35.597Q10.024-35.561 10.250-35.561",[553],[536,699,700],{"transform":687},[549,701],{"d":702,"fill":538,"stroke":538,"className":703,"style":554},"M16.104-35.541Q16.247-35.435 16.476-35.435Q16.702-35.435 16.876-35.631Q17.051-35.828 17.105-36.057L17.420-37.318Q17.492-37.585 17.492-37.718Q17.492-37.909 17.380-38.027Q17.269-38.145 17.078-38.145Q16.849-38.145 16.651-38.021Q16.452-37.896 16.311-37.692Q16.169-37.489 16.111-37.270Q16.100-37.205 16.042-37.205L15.930-37.205Q15.899-37.205 15.875-37.236Q15.851-37.267 15.851-37.291L15.851-37.318Q15.964-37.745 16.317-38.056Q16.671-38.367 17.092-38.367Q17.263-38.367 17.427-38.314Q17.591-38.261 17.724-38.157Q17.857-38.053 17.932-37.899Q18.073-38.104 18.274-38.236Q18.476-38.367 18.695-38.367Q18.985-38.367 19.214-38.232Q19.443-38.097 19.443-37.827Q19.443-37.708 19.390-37.604Q19.337-37.499 19.240-37.436Q19.142-37.373 19.023-37.373Q18.907-37.373 18.825-37.446Q18.743-37.520 18.743-37.639Q18.743-37.780 18.833-37.894Q18.924-38.009 19.057-38.039Q18.903-38.145 18.681-38.145Q18.527-38.145 18.397-38.051Q18.267-37.957 18.179-37.821Q18.090-37.684 18.042-37.520L17.727-36.262Q17.666-35.978 17.666-35.862Q17.666-35.671 17.777-35.553Q17.888-35.435 18.079-35.435Q18.254-35.435 18.413-35.510Q18.572-35.585 18.702-35.715Q18.831-35.845 18.920-36.002Q19.009-36.159 19.043-36.310Q19.067-36.371 19.122-36.371L19.231-36.371Q19.265-36.371 19.288-36.346Q19.310-36.320 19.310-36.289Q19.310-36.276 19.303-36.262Q19.235-35.982 19.050-35.742Q18.866-35.503 18.606-35.358Q18.346-35.213 18.062-35.213Q17.796-35.213 17.567-35.332Q17.338-35.452 17.225-35.681Q17.095-35.483 16.892-35.348Q16.688-35.213 16.459-35.213Q16.179-35.213 15.948-35.348Q15.718-35.483 15.718-35.749Q15.718-35.930 15.839-36.067Q15.960-36.204 16.138-36.204Q16.258-36.204 16.338-36.132Q16.418-36.060 16.418-35.941Q16.418-35.801 16.331-35.686Q16.244-35.572 16.104-35.541M20.499-34.468Q20.499-34.659 20.616-34.799Q20.732-34.939 20.920-34.939Q21.039-34.939 21.123-34.864Q21.207-34.789 21.207-34.673Q21.207-34.519 21.101-34.403Q20.995-34.286 20.841-34.266Q21.002-34.078 21.347-34.078Q21.836-34.078 22.229-34.594Q22.372-34.785 22.461-35.001Q22.550-35.216 22.622-35.513Q22.287-35.213 21.887-35.213Q21.439-35.213 21.162-35.437Q20.886-35.660 20.886-36.101Q20.886-36.412 20.993-36.732Q21.101-37.052 21.313-37.571Q21.388-37.773 21.388-37.913Q21.388-38.012 21.349-38.079Q21.309-38.145 21.221-38.145Q20.940-38.145 20.751-37.874Q20.561-37.602 20.472-37.270Q20.462-37.205 20.400-37.205L20.291-37.205Q20.260-37.205 20.236-37.236Q20.212-37.267 20.212-37.291L20.212-37.318Q20.281-37.578 20.421-37.815Q20.561-38.053 20.771-38.210Q20.981-38.367 21.234-38.367Q21.415-38.367 21.571-38.296Q21.726-38.224 21.824-38.089Q21.921-37.954 21.921-37.773Q21.921-37.656 21.873-37.520Q21.658-36.990 21.545-36.648Q21.432-36.306 21.432-35.995Q21.432-35.753 21.547-35.594Q21.661-35.435 21.901-35.435Q22.383-35.435 22.748-36.030L23.251-38.039Q23.282-38.152 23.374-38.226Q23.466-38.299 23.579-38.299Q23.681-38.299 23.753-38.236Q23.825-38.173 23.825-38.073Q23.825-38.050 23.823-38.036Q23.822-38.022 23.818-38.005L23.131-35.254Q23.036-34.871 22.760-34.548Q22.485-34.225 22.106-34.039Q21.726-33.852 21.333-33.852Q21.015-33.852 20.757-34.010Q20.499-34.167 20.499-34.468",[553],[536,705,706],{"transform":687},[549,707],{"d":708,"fill":538,"stroke":538,"className":709,"style":554},"M25.240-36.183Q25.240-35.859 25.428-35.647Q25.616-35.435 25.934-35.435Q26.385-35.435 26.795-35.601Q27.205-35.766 27.472-36.101Q27.489-36.129 27.537-36.129Q27.585-36.129 27.631-36.079Q27.677-36.030 27.677-35.982Q27.677-35.951 27.656-35.924Q27.366-35.558 26.904-35.385Q26.443-35.213 25.920-35.213Q25.568-35.213 25.271-35.366Q24.973-35.520 24.802-35.801Q24.631-36.081 24.631-36.436Q24.631-36.812 24.804-37.164Q24.977-37.516 25.277-37.790Q25.578-38.063 25.935-38.215Q26.293-38.367 26.669-38.367Q26.870-38.367 27.086-38.308Q27.301-38.248 27.443-38.113Q27.585-37.978 27.585-37.766Q27.585-37.578 27.470-37.438Q27.356-37.298 27.164-37.298Q27.048-37.298 26.966-37.371Q26.884-37.445 26.884-37.564Q26.884-37.711 26.983-37.824Q27.082-37.937 27.229-37.968Q27.041-38.145 26.655-38.145Q26.320-38.145 26.055-37.959Q25.790-37.773 25.609-37.475Q25.428-37.178 25.334-36.831Q25.240-36.484 25.240-36.183",[553],[536,711,713,716,719],{"fill":712,"stroke":712,"style":612},"var(--tk-warn)",[549,714],{"fill":542,"d":715},"M156.328-35.281h50.86",[549,717],{"stroke":542,"d":718},"m210.388-35.281-5.12-2.56 1.92 2.56-1.92 2.56",[536,720,721,728,734],{"fill":712,"stroke":542,"fontFamily":543,"fontSize":544},[536,722,724],{"transform":723},"translate(189.184 -3.933)",[549,725],{"d":726,"fill":712,"stroke":712,"className":727,"style":554},"M-22.035-36.115L-22.035-37.619Q-22.035-37.889-22.143-37.950Q-22.251-38.012-22.562-38.012L-22.562-38.292L-21.454-38.367L-21.454-36.135L-21.454-36.115Q-21.454-35.835-21.403-35.691Q-21.352-35.548-21.210-35.491Q-21.068-35.435-20.781-35.435Q-20.528-35.435-20.323-35.575Q-20.118-35.715-20.002-35.941Q-19.885-36.166-19.885-36.416L-19.885-37.619Q-19.885-37.889-19.993-37.950Q-20.101-38.012-20.412-38.012L-20.412-38.292L-19.304-38.367L-19.304-35.954Q-19.304-35.763-19.251-35.681Q-19.198-35.599-19.098-35.580Q-18.997-35.561-18.781-35.561L-18.781-35.281L-19.858-35.213L-19.858-35.777Q-19.967-35.595-20.113-35.472Q-20.258-35.349-20.444-35.281Q-20.631-35.213-20.832-35.213Q-22.035-35.213-22.035-36.115M-16.512-35.281L-18.146-35.281L-18.146-35.561Q-17.917-35.561-17.768-35.595Q-17.619-35.630-17.619-35.770L-17.619-37.619Q-17.619-37.889-17.727-37.950Q-17.835-38.012-18.146-38.012L-18.146-38.292L-17.086-38.367L-17.086-37.718Q-16.915-38.026-16.611-38.197Q-16.307-38.367-15.962-38.367Q-15.456-38.367-15.172-38.144Q-14.888-37.920-14.888-37.424L-14.888-35.770Q-14.888-35.633-14.740-35.597Q-14.591-35.561-14.365-35.561L-14.365-35.281L-15.996-35.281L-15.996-35.561Q-15.767-35.561-15.618-35.595Q-15.469-35.630-15.469-35.770L-15.469-37.410Q-15.469-37.745-15.589-37.945Q-15.709-38.145-16.023-38.145Q-16.293-38.145-16.527-38.009Q-16.761-37.872-16.900-37.638Q-17.038-37.404-17.038-37.130L-17.038-35.770Q-17.038-35.633-16.888-35.597Q-16.737-35.561-16.512-35.561L-16.512-35.281M-11.894-36.535L-13.952-36.535L-13.952-37.038L-11.894-37.038L-11.894-36.535M-11.091-36.792Q-11.091-37.120-10.956-37.421Q-10.821-37.721-10.585-37.942Q-10.349-38.162-10.045-38.282Q-9.741-38.402-9.416-38.402Q-8.910-38.402-8.562-38.299Q-8.213-38.197-8.213-37.821Q-8.213-37.674-8.310-37.573Q-8.408-37.472-8.555-37.472Q-8.709-37.472-8.808-37.571Q-8.907-37.670-8.907-37.821Q-8.907-38.009-8.767-38.101Q-8.968-38.152-9.409-38.152Q-9.765-38.152-9.994-37.956Q-10.223-37.759-10.324-37.450Q-10.424-37.140-10.424-36.792Q-10.424-36.443-10.298-36.137Q-10.172-35.831-9.917-35.647Q-9.662-35.462-9.307-35.462Q-9.085-35.462-8.900-35.546Q-8.716-35.630-8.580-35.785Q-8.445-35.941-8.387-36.149Q-8.374-36.204-8.319-36.204L-8.206-36.204Q-8.175-36.204-8.153-36.180Q-8.131-36.156-8.131-36.122L-8.131-36.101Q-8.216-35.814-8.404-35.616Q-8.592-35.418-8.857-35.315Q-9.122-35.213-9.416-35.213Q-9.847-35.213-10.235-35.419Q-10.623-35.626-10.857-35.989Q-11.091-36.351-11.091-36.792",[553],[536,729,730],{"transform":723},[549,731],{"d":732,"fill":712,"stroke":712,"className":733,"style":554},"M-6.060-35.281L-7.694-35.281L-7.694-35.561Q-7.465-35.561-7.316-35.595Q-7.167-35.630-7.167-35.770L-7.167-39.389Q-7.167-39.659-7.275-39.721Q-7.383-39.782-7.694-39.782L-7.694-40.063L-6.614-40.138L-6.614-37.752Q-6.508-37.937-6.330-38.079Q-6.152-38.220-5.944-38.294Q-5.735-38.367-5.510-38.367Q-5.004-38.367-4.720-38.144Q-4.436-37.920-4.436-37.424L-4.436-35.770Q-4.436-35.633-4.288-35.597Q-4.139-35.561-3.913-35.561L-3.913-35.281L-5.544-35.281L-5.544-35.561Q-5.315-35.561-5.166-35.595Q-5.017-35.630-5.017-35.770L-5.017-37.410Q-5.017-37.745-5.137-37.945Q-5.257-38.145-5.571-38.145Q-5.841-38.145-6.075-38.009Q-6.309-37.872-6.448-37.638Q-6.586-37.404-6.586-37.130L-6.586-35.770Q-6.586-35.633-6.436-35.597Q-6.285-35.561-6.060-35.561L-6.060-35.281M-3.367-36.764Q-3.367-37.106-3.232-37.405Q-3.097-37.704-2.857-37.928Q-2.618-38.152-2.300-38.277Q-1.982-38.402-1.651-38.402Q-1.206-38.402-0.806-38.186Q-0.407-37.971-0.172-37.593Q0.062-37.216 0.062-36.764Q0.062-36.423-0.080-36.139Q-0.222-35.855-0.466-35.648Q-0.711-35.442-1.020-35.327Q-1.329-35.213-1.651-35.213Q-2.081-35.213-2.483-35.414Q-2.885-35.616-3.126-35.968Q-3.367-36.320-3.367-36.764M-1.651-35.462Q-1.049-35.462-0.825-35.840Q-0.601-36.218-0.601-36.850Q-0.601-37.462-0.836-37.821Q-1.070-38.179-1.651-38.179Q-2.703-38.179-2.703-36.850Q-2.703-36.218-2.478-35.840Q-2.252-35.462-1.651-35.462",[553],[536,735,736],{"transform":723},[549,737],{"d":738,"fill":712,"stroke":712,"className":739,"style":554},"M0.835-36.764Q0.835-37.106 0.970-37.405Q1.105-37.704 1.345-37.928Q1.584-38.152 1.902-38.277Q2.220-38.402 2.551-38.402Q2.996-38.402 3.395-38.186Q3.795-37.971 4.030-37.593Q4.264-37.216 4.264-36.764Q4.264-36.423 4.122-36.139Q3.980-35.855 3.736-35.648Q3.491-35.442 3.182-35.327Q2.873-35.213 2.551-35.213Q2.121-35.213 1.719-35.414Q1.317-35.616 1.076-35.968Q0.835-36.320 0.835-36.764M2.551-35.462Q3.153-35.462 3.377-35.840Q3.601-36.218 3.601-36.850Q3.601-37.462 3.366-37.821Q3.132-38.179 2.551-38.179Q1.499-38.179 1.499-36.850Q1.499-36.218 1.724-35.840Q1.950-35.462 2.551-35.462M4.858-35.288L4.858-36.351Q4.858-36.375 4.886-36.402Q4.913-36.429 4.937-36.429L5.046-36.429Q5.111-36.429 5.125-36.371Q5.221-35.937 5.467-35.686Q5.713-35.435 6.126-35.435Q6.468-35.435 6.721-35.568Q6.974-35.701 6.974-36.009Q6.974-36.166 6.880-36.281Q6.786-36.395 6.648-36.464Q6.509-36.532 6.342-36.570L5.761-36.669Q5.405-36.737 5.132-36.958Q4.858-37.178 4.858-37.520Q4.858-37.769 4.969-37.944Q5.081-38.118 5.267-38.217Q5.453-38.316 5.668-38.359Q5.884-38.402 6.126-38.402Q6.540-38.402 6.820-38.220L7.036-38.395Q7.046-38.398 7.053-38.400Q7.060-38.402 7.070-38.402L7.121-38.402Q7.148-38.402 7.172-38.378Q7.196-38.354 7.196-38.326L7.196-37.479Q7.196-37.458 7.172-37.431Q7.148-37.404 7.121-37.404L7.008-37.404Q6.981-37.404 6.955-37.429Q6.930-37.455 6.930-37.479Q6.930-37.715 6.824-37.879Q6.718-38.043 6.535-38.125Q6.352-38.207 6.120-38.207Q5.791-38.207 5.535-38.104Q5.279-38.002 5.279-37.725Q5.279-37.530 5.462-37.421Q5.645-37.311 5.874-37.270L6.448-37.164Q6.694-37.116 6.907-36.988Q7.121-36.860 7.258-36.657Q7.395-36.453 7.395-36.204Q7.395-35.691 7.029-35.452Q6.663-35.213 6.126-35.213Q5.631-35.213 5.299-35.507L5.033-35.233Q5.012-35.213 4.985-35.213L4.937-35.213Q4.913-35.213 4.886-35.240Q4.858-35.267 4.858-35.288M7.982-36.816Q7.982-37.137 8.107-37.426Q8.232-37.715 8.458-37.938Q8.683-38.162 8.979-38.282Q9.274-38.402 9.592-38.402Q9.920-38.402 10.182-38.302Q10.443-38.203 10.619-38.021Q10.795-37.838 10.889-37.580Q10.983-37.322 10.983-36.990Q10.983-36.898 10.901-36.877L8.645-36.877L8.645-36.816Q8.645-36.228 8.929-35.845Q9.213-35.462 9.780-35.462Q10.102-35.462 10.370-35.655Q10.638-35.848 10.727-36.163Q10.734-36.204 10.809-36.218L10.901-36.218Q10.983-36.194 10.983-36.122Q10.983-36.115 10.977-36.088Q10.864-35.691 10.493-35.452Q10.122-35.213 9.698-35.213Q9.261-35.213 8.861-35.421Q8.461-35.630 8.222-35.997Q7.982-36.364 7.982-36.816M8.652-37.086L10.467-37.086Q10.467-37.363 10.370-37.615Q10.272-37.868 10.074-38.024Q9.876-38.179 9.592-38.179Q9.315-38.179 9.102-38.021Q8.888-37.862 8.770-37.607Q8.652-37.352 8.652-37.086",[553],[536,741,743],{"transform":742},"translate(249.362 -24.6)",[549,744],{"d":745,"fill":538,"stroke":538,"className":746,"style":554},"M-22.551-36.009Q-22.551-36.341-22.328-36.568Q-22.104-36.795-21.760-36.923Q-21.417-37.052-21.044-37.104Q-20.672-37.157-20.367-37.157L-20.367-37.410Q-20.367-37.615-20.475-37.795Q-20.583-37.974-20.764-38.077Q-20.945-38.179-21.153-38.179Q-21.560-38.179-21.796-38.087Q-21.707-38.050-21.661-37.966Q-21.615-37.882-21.615-37.780Q-21.615-37.684-21.661-37.605Q-21.707-37.527-21.788-37.482Q-21.868-37.438-21.957-37.438Q-22.107-37.438-22.208-37.535Q-22.309-37.633-22.309-37.780Q-22.309-38.402-21.153-38.402Q-20.942-38.402-20.692-38.338Q-20.443-38.275-20.241-38.156Q-20.039-38.036-19.913-37.851Q-19.786-37.667-19.786-37.424L-19.786-35.848Q-19.786-35.732-19.725-35.636Q-19.663-35.541-19.550-35.541Q-19.441-35.541-19.376-35.635Q-19.311-35.729-19.311-35.848L-19.311-36.296L-19.045-36.296L-19.045-35.848Q-19.045-35.578-19.272-35.413Q-19.499-35.247-19.779-35.247Q-19.988-35.247-20.125-35.401Q-20.261-35.554-20.285-35.770Q-20.432-35.503-20.714-35.358Q-20.996-35.213-21.321-35.213Q-21.598-35.213-21.882-35.288Q-22.165-35.363-22.358-35.542Q-22.551-35.722-22.551-36.009M-21.936-36.009Q-21.936-35.835-21.835-35.705Q-21.735-35.575-21.579-35.505Q-21.424-35.435-21.259-35.435Q-21.041-35.435-20.832-35.532Q-20.624-35.630-20.496-35.811Q-20.367-35.992-20.367-36.218L-20.367-36.946Q-20.692-36.946-21.058-36.855Q-21.424-36.764-21.680-36.552Q-21.936-36.341-21.936-36.009M-16.830-35.281L-18.563-35.281L-18.563-35.561Q-18.337-35.561-18.188-35.595Q-18.040-35.630-18.040-35.770L-18.040-38.019L-18.628-38.019L-18.628-38.299L-18.040-38.299L-18.040-39.116Q-18.040-39.434-17.862-39.682Q-17.684-39.929-17.394-40.070Q-17.103-40.210-16.792-40.210Q-16.536-40.210-16.332-40.068Q-16.129-39.926-16.129-39.683Q-16.129-39.547-16.228-39.448Q-16.327-39.348-16.464-39.348Q-16.601-39.348-16.700-39.448Q-16.799-39.547-16.799-39.683Q-16.799-39.864-16.659-39.957Q-16.737-39.984-16.837-39.984Q-17.045-39.984-17.199-39.851Q-17.353-39.718-17.433-39.514Q-17.513-39.311-17.513-39.102L-17.513-38.299L-16.625-38.299L-16.625-38.019L-17.486-38.019L-17.486-35.770Q-17.486-35.561-16.830-35.561L-16.830-35.281M-15.623-36.122L-15.623-38.019L-16.262-38.019L-16.262-38.241Q-15.945-38.241-15.727-38.451Q-15.510-38.661-15.410-38.971Q-15.309-39.280-15.309-39.588L-15.042-39.588L-15.042-38.299L-13.966-38.299L-13.966-38.019L-15.042-38.019L-15.042-36.135Q-15.042-35.859-14.938-35.660Q-14.834-35.462-14.574-35.462Q-14.417-35.462-14.311-35.566Q-14.205-35.671-14.155-35.824Q-14.106-35.978-14.106-36.135L-14.106-36.549L-13.839-36.549L-13.839-36.122Q-13.839-35.896-13.938-35.686Q-14.037-35.476-14.222-35.344Q-14.406-35.213-14.635-35.213Q-15.073-35.213-15.348-35.450Q-15.623-35.688-15.623-36.122M-13.070-36.816Q-13.070-37.137-12.945-37.426Q-12.820-37.715-12.595-37.938Q-12.369-38.162-12.074-38.282Q-11.778-38.402-11.460-38.402Q-11.132-38.402-10.871-38.302Q-10.609-38.203-10.433-38.021Q-10.257-37.838-10.163-37.580Q-10.069-37.322-10.069-36.990Q-10.069-36.898-10.151-36.877L-12.407-36.877L-12.407-36.816Q-12.407-36.228-12.123-35.845Q-11.840-35.462-11.272-35.462Q-10.951-35.462-10.683-35.655Q-10.414-35.848-10.325-36.163Q-10.319-36.204-10.243-36.218L-10.151-36.218Q-10.069-36.194-10.069-36.122Q-10.069-36.115-10.076-36.088Q-10.189-35.691-10.559-35.452Q-10.930-35.213-11.354-35.213Q-11.792-35.213-12.192-35.421Q-12.591-35.630-12.831-35.997Q-13.070-36.364-13.070-36.816M-12.400-37.086L-10.585-37.086Q-10.585-37.363-10.683-37.615Q-10.780-37.868-10.978-38.024Q-11.176-38.179-11.460-38.179Q-11.737-38.179-11.951-38.021Q-12.164-37.862-12.282-37.607Q-12.400-37.352-12.400-37.086M-7.731-35.281L-9.467-35.281L-9.467-35.561Q-9.238-35.561-9.090-35.595Q-8.941-35.630-8.941-35.770L-8.941-37.619Q-8.941-37.889-9.049-37.950Q-9.156-38.012-9.467-38.012L-9.467-38.292L-8.439-38.367L-8.439-37.660Q-8.309-37.968-8.066-38.167Q-7.823-38.367-7.506-38.367Q-7.287-38.367-7.116-38.243Q-6.945-38.118-6.945-37.906Q-6.945-37.769-7.044-37.670Q-7.143-37.571-7.277-37.571Q-7.413-37.571-7.512-37.670Q-7.611-37.769-7.611-37.906Q-7.611-38.046-7.512-38.145Q-7.803-38.145-8.003-37.949Q-8.203-37.752-8.295-37.458Q-8.387-37.164-8.387-36.884L-8.387-35.770Q-8.387-35.561-7.731-35.561",[553],[549,748],{"fill":542,"d":749},"M206.12-25.323h19.917V-45.24H206.12Z",[536,751,753],{"transform":752},"translate(236.381 1.937)",[549,754],{"d":569,"fill":538,"stroke":538,"className":755,"style":571},[553],[549,757],{"fill":542,"d":758},"M226.037-25.323h19.917V-45.24h-19.917Z",[536,760,762],{"transform":761},"translate(256.48 1.062)",[549,763],{"d":580,"fill":538,"stroke":538,"className":764,"style":571},[553],[536,766,768,771],{"style":767},"stroke-dasharray:3.0,3.0",[549,769],{"fill":542,"d":770},"M245.954-25.323h19.917V-45.24h-19.917Z",[536,772,774],{"transform":773},"translate(275.24 2.25)",[549,775],{"d":776,"fill":712,"stroke":712,"className":777,"style":571},"M-21.566-35.479Q-21.566-35.562-21.509-35.615L-19.602-37.531L-21.509-39.447Q-21.566-39.487-21.566-39.583Q-21.566-39.658-21.505-39.715Q-21.443-39.772-21.368-39.772Q-21.285-39.772-21.232-39.719L-19.334-37.799L-17.435-39.719Q-17.382-39.772-17.290-39.772Q-17.216-39.772-17.158-39.715Q-17.101-39.658-17.101-39.583Q-17.101-39.487-17.154-39.447L-19.061-37.531L-17.154-35.615Q-17.101-35.562-17.101-35.479Q-17.101-35.395-17.158-35.338Q-17.216-35.281-17.290-35.281Q-17.387-35.281-17.426-35.334L-19.334-37.254L-21.232-35.343Q-21.280-35.281-21.368-35.281Q-21.443-35.281-21.505-35.338Q-21.566-35.395-21.566-35.479",[553],[536,779,780,786,791,796],{"stroke":542,"fontSize":544},[536,781,783],{"transform":782},"translate(226.694 30.203)",[549,784],{"d":595,"fill":538,"stroke":538,"className":785,"style":554},[553],[536,787,788],{"transform":782},[549,789],{"d":601,"fill":538,"stroke":538,"className":790,"style":554},[553],[536,792,793],{"transform":782},[549,794],{"d":607,"fill":538,"stroke":538,"className":795,"style":554},[553],[536,797,798],{"transform":782},[549,799],{"d":800,"fill":538,"stroke":538,"className":801,"style":554},"M23.261-36.009Q23.261-36.341 23.484-36.568Q23.708-36.795 24.052-36.923Q24.395-37.052 24.768-37.104Q25.140-37.157 25.445-37.157L25.445-37.410Q25.445-37.615 25.337-37.795Q25.229-37.974 25.048-38.077Q24.867-38.179 24.659-38.179Q24.252-38.179 24.016-38.087Q24.105-38.050 24.151-37.966Q24.197-37.882 24.197-37.780Q24.197-37.684 24.151-37.605Q24.105-37.527 24.024-37.482Q23.944-37.438 23.855-37.438Q23.705-37.438 23.604-37.535Q23.503-37.633 23.503-37.780Q23.503-38.402 24.659-38.402Q24.870-38.402 25.120-38.338Q25.369-38.275 25.571-38.156Q25.773-38.036 25.899-37.851Q26.026-37.667 26.026-37.424L26.026-35.848Q26.026-35.732 26.087-35.636Q26.149-35.541 26.262-35.541Q26.371-35.541 26.436-35.635Q26.501-35.729 26.501-35.848L26.501-36.296L26.767-36.296L26.767-35.848Q26.767-35.578 26.540-35.413Q26.313-35.247 26.033-35.247Q25.824-35.247 25.687-35.401Q25.551-35.554 25.527-35.770Q25.380-35.503 25.098-35.358Q24.816-35.213 24.491-35.213Q24.214-35.213 23.930-35.288Q23.647-35.363 23.454-35.542Q23.261-35.722 23.261-36.009M23.876-36.009Q23.876-35.835 23.977-35.705Q24.077-35.575 24.233-35.505Q24.388-35.435 24.553-35.435Q24.771-35.435 24.980-35.532Q25.188-35.630 25.316-35.811Q25.445-35.992 25.445-36.218L25.445-36.946Q25.120-36.946 24.754-36.855Q24.388-36.764 24.132-36.552Q23.876-36.341 23.876-36.009M27.143-34.748Q27.143-34.994 27.340-35.178Q27.536-35.363 27.793-35.442Q27.656-35.554 27.584-35.715Q27.513-35.876 27.513-36.057Q27.513-36.378 27.724-36.624Q27.389-36.922 27.389-37.332Q27.389-37.793 27.779-38.080Q28.169-38.367 28.647-38.367Q29.119-38.367 29.454-38.121Q29.628-38.275 29.838-38.357Q30.049-38.439 30.278-38.439Q30.442-38.439 30.563-38.332Q30.684-38.224 30.684-38.060Q30.684-37.964 30.613-37.892Q30.541-37.821 30.449-37.821Q30.349-37.821 30.279-37.894Q30.209-37.968 30.209-38.067Q30.209-38.121 30.223-38.152L30.230-38.166Q30.237-38.186 30.245-38.197Q30.254-38.207 30.257-38.214Q29.902-38.214 29.615-37.991Q29.902-37.698 29.902-37.332Q29.902-37.017 29.717-36.785Q29.533-36.552 29.244-36.424Q28.955-36.296 28.647-36.296Q28.446-36.296 28.254-36.346Q28.063-36.395 27.885-36.505Q27.793-36.378 27.793-36.235Q27.793-36.053 27.921-35.918Q28.049-35.783 28.234-35.783L28.866-35.783Q29.314-35.783 29.683-35.712Q30.052-35.640 30.312-35.411Q30.572-35.182 30.572-34.748Q30.572-34.427 30.276-34.225Q29.980-34.023 29.577-33.934Q29.174-33.845 28.859-33.845Q28.541-33.845 28.138-33.934Q27.735-34.023 27.439-34.225Q27.143-34.427 27.143-34.748M27.598-34.748Q27.598-34.519 27.817-34.370Q28.035-34.221 28.328-34.153Q28.620-34.085 28.859-34.085Q29.023-34.085 29.232-34.121Q29.440-34.156 29.647-34.237Q29.854-34.317 29.985-34.445Q30.117-34.573 30.117-34.748Q30.117-35.100 29.736-35.194Q29.355-35.288 28.852-35.288L28.234-35.288Q27.994-35.288 27.796-35.137Q27.598-34.987 27.598-34.748M28.647-36.535Q29.314-36.535 29.314-37.332Q29.314-38.132 28.647-38.132Q27.977-38.132 27.977-37.332Q27.977-36.535 28.647-36.535M31.224-36.009Q31.224-36.341 31.448-36.568Q31.672-36.795 32.016-36.923Q32.359-37.052 32.732-37.104Q33.104-37.157 33.409-37.157L33.409-37.410Q33.409-37.615 33.301-37.795Q33.193-37.974 33.012-38.077Q32.831-38.179 32.622-38.179Q32.216-38.179 31.980-38.087Q32.069-38.050 32.115-37.966Q32.161-37.882 32.161-37.780Q32.161-37.684 32.115-37.605Q32.069-37.527 31.988-37.482Q31.908-37.438 31.819-37.438Q31.669-37.438 31.568-37.535Q31.467-37.633 31.467-37.780Q31.467-38.402 32.622-38.402Q32.834-38.402 33.084-38.338Q33.333-38.275 33.535-38.156Q33.737-38.036 33.863-37.851Q33.990-37.667 33.990-37.424L33.990-35.848Q33.990-35.732 34.051-35.636Q34.113-35.541 34.225-35.541Q34.335-35.541 34.400-35.635Q34.465-35.729 34.465-35.848L34.465-36.296L34.731-36.296L34.731-35.848Q34.731-35.578 34.504-35.413Q34.277-35.247 33.996-35.247Q33.788-35.247 33.651-35.401Q33.514-35.554 33.491-35.770Q33.344-35.503 33.062-35.358Q32.780-35.213 32.455-35.213Q32.178-35.213 31.894-35.288Q31.611-35.363 31.418-35.542Q31.224-35.722 31.224-36.009M31.840-36.009Q31.840-35.835 31.940-35.705Q32.041-35.575 32.197-35.505Q32.352-35.435 32.516-35.435Q32.735-35.435 32.944-35.532Q33.152-35.630 33.280-35.811Q33.409-35.992 33.409-36.218L33.409-36.946Q33.084-36.946 32.718-36.855Q32.352-36.764 32.096-36.552Q31.840-36.341 31.840-36.009M36.765-35.281L35.213-35.281L35.213-35.561Q35.439-35.561 35.587-35.595Q35.736-35.630 35.736-35.770L35.736-37.619Q35.736-37.807 35.688-37.891Q35.640-37.974 35.543-37.993Q35.446-38.012 35.234-38.012L35.234-38.292L36.290-38.367L36.290-35.770Q36.290-35.630 36.421-35.595Q36.553-35.561 36.765-35.561L36.765-35.281M35.493-39.588Q35.493-39.759 35.617-39.878Q35.740-39.998 35.910-39.998Q36.078-39.998 36.201-39.878Q36.324-39.759 36.324-39.588Q36.324-39.413 36.201-39.290Q36.078-39.167 35.910-39.167Q35.740-39.167 35.617-39.290Q35.493-39.413 35.493-39.588M39.093-35.281L37.459-35.281L37.459-35.561Q37.688-35.561 37.836-35.595Q37.985-35.630 37.985-35.770L37.985-37.619Q37.985-37.889 37.878-37.950Q37.770-38.012 37.459-38.012L37.459-38.292L38.518-38.367L38.518-37.718Q38.689-38.026 38.993-38.197Q39.298-38.367 39.643-38.367Q40.149-38.367 40.432-38.144Q40.716-37.920 40.716-37.424L40.716-35.770Q40.716-35.633 40.865-35.597Q41.013-35.561 41.239-35.561L41.239-35.281L39.609-35.281L39.609-35.561Q39.838-35.561 39.986-35.595Q40.135-35.630 40.135-35.770L40.135-37.410Q40.135-37.745 40.015-37.945Q39.896-38.145 39.581-38.145Q39.311-38.145 39.077-38.009Q38.843-37.872 38.705-37.638Q38.566-37.404 38.566-37.130L38.566-35.770Q38.566-35.633 38.717-35.597Q38.867-35.561 39.093-35.561",[553],[536,803,804,811,817,823],{"stroke":542,"fontFamily":543,"fontSize":544},[536,805,807],{"transform":806},"translate(318.662 14.153)",[549,808],{"d":809,"fill":538,"stroke":538,"className":810,"style":554},"M-20.928-59.281L-22.562-59.281L-22.562-59.561Q-22.333-59.561-22.184-59.595Q-22.035-59.630-22.035-59.770L-22.035-61.619Q-22.035-61.889-22.143-61.950Q-22.251-62.012-22.562-62.012L-22.562-62.292L-21.502-62.367L-21.502-61.718Q-21.331-62.026-21.027-62.197Q-20.723-62.367-20.378-62.367Q-19.872-62.367-19.588-62.144Q-19.304-61.920-19.304-61.424L-19.304-59.770Q-19.304-59.633-19.156-59.597Q-19.007-59.561-18.781-59.561L-18.781-59.281L-20.412-59.281L-20.412-59.561Q-20.183-59.561-20.034-59.595Q-19.885-59.630-19.885-59.770L-19.885-61.410Q-19.885-61.745-20.005-61.945Q-20.125-62.145-20.439-62.145Q-20.709-62.145-20.943-62.009Q-21.177-61.872-21.316-61.638Q-21.454-61.404-21.454-61.130L-21.454-59.770Q-21.454-59.633-21.304-59.597Q-21.153-59.561-20.928-59.561L-20.928-59.281M-18.235-60.816Q-18.235-61.137-18.110-61.426Q-17.985-61.715-17.759-61.938Q-17.534-62.162-17.238-62.282Q-16.943-62.402-16.625-62.402Q-16.297-62.402-16.035-62.302Q-15.774-62.203-15.598-62.021Q-15.422-61.838-15.328-61.580Q-15.234-61.322-15.234-60.990Q-15.234-60.898-15.316-60.877L-17.571-60.877L-17.571-60.816Q-17.571-60.228-17.288-59.845Q-17.004-59.462-16.437-59.462Q-16.115-59.462-15.847-59.655Q-15.579-59.848-15.490-60.163Q-15.483-60.204-15.408-60.218L-15.316-60.218Q-15.234-60.194-15.234-60.122Q-15.234-60.115-15.240-60.088Q-15.353-59.691-15.724-59.452Q-16.095-59.213-16.519-59.213Q-16.956-59.213-17.356-59.421Q-17.756-59.630-17.995-59.997Q-18.235-60.364-18.235-60.816M-17.565-61.086L-15.750-61.086Q-15.750-61.363-15.847-61.615Q-15.945-61.868-16.143-62.024Q-16.341-62.179-16.625-62.179Q-16.902-62.179-17.115-62.021Q-17.329-61.862-17.447-61.607Q-17.565-61.352-17.565-61.086M-13.463-59.281L-14.786-59.281L-14.786-59.561Q-14.225-59.561-13.846-59.961L-13.132-60.758L-14.044-61.807Q-14.181-61.954-14.330-61.986Q-14.478-62.019-14.745-62.019L-14.745-62.299L-13.244-62.299L-13.244-62.019Q-13.436-62.019-13.436-61.885Q-13.436-61.855-13.405-61.807L-12.810-61.123L-12.369-61.619Q-12.257-61.749-12.257-61.865Q-12.257-61.927-12.294-61.973Q-12.332-62.019-12.390-62.019L-12.390-62.299L-11.074-62.299L-11.074-62.019Q-11.634-62.019-12.014-61.619L-12.636-60.918L-11.641-59.770Q-11.542-59.671-11.441-59.626Q-11.341-59.582-11.229-59.572Q-11.118-59.561-10.941-59.561L-10.941-59.281L-12.434-59.281L-12.434-59.561Q-12.369-59.561-12.309-59.595Q-12.250-59.630-12.250-59.695Q-12.250-59.742-12.280-59.770L-12.957-60.556L-13.490-59.961Q-13.603-59.831-13.603-59.715Q-13.603-59.650-13.562-59.606Q-13.521-59.561-13.463-59.561L-13.463-59.281M-9.919-60.122L-9.919-62.019L-10.558-62.019L-10.558-62.241Q-10.240-62.241-10.023-62.451Q-9.806-62.661-9.705-62.971Q-9.604-63.280-9.604-63.588L-9.338-63.588L-9.338-62.299L-8.261-62.299L-8.261-62.019L-9.338-62.019L-9.338-60.135Q-9.338-59.859-9.233-59.660Q-9.129-59.462-8.869-59.462Q-8.712-59.462-8.606-59.566Q-8.500-59.671-8.451-59.824Q-8.401-59.978-8.401-60.135L-8.401-60.549L-8.134-60.549L-8.134-60.122Q-8.134-59.896-8.234-59.686Q-8.333-59.476-8.517-59.344Q-8.702-59.213-8.931-59.213Q-9.368-59.213-9.643-59.450Q-9.919-59.688-9.919-60.122",[553],[536,812,813],{"transform":806},[549,814],{"d":815,"fill":538,"stroke":538,"className":816,"style":554},"M-22.610-51.288L-22.610-52.351Q-22.610-52.375-22.582-52.402Q-22.555-52.429-22.531-52.429L-22.422-52.429Q-22.357-52.429-22.343-52.371Q-22.247-51.937-22.001-51.686Q-21.755-51.435-21.341-51.435Q-21-51.435-20.747-51.568Q-20.494-51.701-20.494-52.009Q-20.494-52.166-20.588-52.281Q-20.682-52.395-20.820-52.464Q-20.959-52.532-21.126-52.570L-21.707-52.669Q-22.063-52.737-22.336-52.958Q-22.610-53.178-22.610-53.520Q-22.610-53.769-22.498-53.944Q-22.387-54.118-22.201-54.217Q-22.015-54.316-21.799-54.359Q-21.584-54.402-21.341-54.402Q-20.928-54.402-20.648-54.220L-20.432-54.395Q-20.422-54.398-20.415-54.400Q-20.408-54.402-20.398-54.402L-20.347-54.402Q-20.320-54.402-20.296-54.378Q-20.272-54.354-20.272-54.326L-20.272-53.479Q-20.272-53.458-20.296-53.431Q-20.320-53.404-20.347-53.404L-20.460-53.404Q-20.487-53.404-20.513-53.429Q-20.538-53.455-20.538-53.479Q-20.538-53.715-20.644-53.879Q-20.750-54.043-20.933-54.125Q-21.116-54.207-21.348-54.207Q-21.676-54.207-21.933-54.104Q-22.189-54.002-22.189-53.725Q-22.189-53.530-22.006-53.421Q-21.823-53.311-21.594-53.270L-21.020-53.164Q-20.774-53.116-20.560-52.988Q-20.347-52.860-20.210-52.657Q-20.073-52.453-20.073-52.204Q-20.073-51.691-20.439-51.452Q-20.805-51.213-21.341-51.213Q-21.837-51.213-22.169-51.507L-22.435-51.233Q-22.456-51.213-22.483-51.213L-22.531-51.213Q-22.555-51.213-22.582-51.240Q-22.610-51.267-22.610-51.288M-17.828-51.281L-19.380-51.281L-19.380-51.561Q-19.154-51.561-19.005-51.595Q-18.857-51.630-18.857-51.770L-18.857-53.619Q-18.857-53.807-18.904-53.891Q-18.952-53.974-19.050-53.993Q-19.147-54.012-19.359-54.012L-19.359-54.292L-18.303-54.367L-18.303-51.770Q-18.303-51.630-18.171-51.595Q-18.040-51.561-17.828-51.561L-17.828-51.281M-19.099-55.588Q-19.099-55.759-18.976-55.878Q-18.853-55.998-18.682-55.998Q-18.515-55.998-18.392-55.878Q-18.269-55.759-18.269-55.588Q-18.269-55.413-18.392-55.290Q-18.515-55.167-18.682-55.167Q-18.853-55.167-18.976-55.290Q-19.099-55.413-19.099-55.588M-16.375-51.281L-16.642-51.281L-16.642-55.389Q-16.642-55.659-16.749-55.721Q-16.857-55.782-17.168-55.782L-17.168-56.063L-16.088-56.138L-16.088-53.968Q-15.880-54.159-15.594-54.263Q-15.309-54.367-15.011-54.367Q-14.694-54.367-14.396-54.246Q-14.099-54.125-13.877-53.909Q-13.654-53.694-13.528-53.409Q-13.402-53.123-13.402-52.792Q-13.402-52.347-13.641-51.983Q-13.880-51.619-14.273-51.416Q-14.666-51.213-15.111-51.213Q-15.305-51.213-15.495-51.269Q-15.685-51.325-15.845-51.430Q-16.006-51.534-16.146-51.695L-16.375-51.281M-16.061-53.626L-16.061-52.009Q-15.924-51.749-15.683-51.592Q-15.442-51.435-15.165-51.435Q-14.871-51.435-14.659-51.542Q-14.447-51.650-14.314-51.842Q-14.181-52.033-14.123-52.272Q-14.065-52.511-14.065-52.792Q-14.065-53.151-14.159-53.455Q-14.253-53.759-14.480-53.952Q-14.707-54.145-15.073-54.145Q-15.374-54.145-15.640-54.009Q-15.907-53.872-16.061-53.626M-11.098-51.281L-12.701-51.281L-12.701-51.561Q-12.475-51.561-12.327-51.595Q-12.178-51.630-12.178-51.770L-12.178-55.389Q-12.178-55.659-12.286-55.721Q-12.393-55.782-12.701-55.782L-12.701-56.063L-11.624-56.138L-11.624-51.770Q-11.624-51.633-11.474-51.597Q-11.323-51.561-11.098-51.561L-11.098-51.281M-8.886-51.281L-10.438-51.281L-10.438-51.561Q-10.213-51.561-10.064-51.595Q-9.915-51.630-9.915-51.770L-9.915-53.619Q-9.915-53.807-9.963-53.891Q-10.011-53.974-10.108-53.993Q-10.206-54.012-10.418-54.012L-10.418-54.292L-9.361-54.367L-9.361-51.770Q-9.361-51.630-9.230-51.595Q-9.098-51.561-8.886-51.561L-8.886-51.281M-10.158-55.588Q-10.158-55.759-10.035-55.878Q-9.912-55.998-9.741-55.998Q-9.573-55.998-9.450-55.878Q-9.327-55.759-9.327-55.588Q-9.327-55.413-9.450-55.290Q-9.573-55.167-9.741-55.167Q-9.912-55.167-10.035-55.290Q-10.158-55.413-10.158-55.588M-6.559-51.281L-8.193-51.281L-8.193-51.561Q-7.964-51.561-7.815-51.595Q-7.666-51.630-7.666-51.770L-7.666-53.619Q-7.666-53.889-7.774-53.950Q-7.882-54.012-8.193-54.012L-8.193-54.292L-7.133-54.367L-7.133-53.718Q-6.962-54.026-6.658-54.197Q-6.354-54.367-6.008-54.367Q-5.503-54.367-5.219-54.144Q-4.935-53.920-4.935-53.424L-4.935-51.770Q-4.935-51.633-4.787-51.597Q-4.638-51.561-4.412-51.561L-4.412-51.281L-6.043-51.281L-6.043-51.561Q-5.814-51.561-5.665-51.595Q-5.516-51.630-5.516-51.770L-5.516-53.410Q-5.516-53.745-5.636-53.945Q-5.756-54.145-6.070-54.145Q-6.340-54.145-6.574-54.009Q-6.808-53.872-6.947-53.638Q-7.085-53.404-7.085-53.130L-7.085-51.770Q-7.085-51.633-6.935-51.597Q-6.784-51.561-6.559-51.561L-6.559-51.281M-3.865-50.748Q-3.865-50.994-3.669-51.178Q-3.472-51.363-3.216-51.442Q-3.353-51.554-3.424-51.715Q-3.496-51.876-3.496-52.057Q-3.496-52.378-3.284-52.624Q-3.619-52.922-3.619-53.332Q-3.619-53.793-3.230-54.080Q-2.840-54.367-2.361-54.367Q-1.890-54.367-1.555-54.121Q-1.381-54.275-1.170-54.357Q-0.960-54.439-0.731-54.439Q-0.567-54.439-0.446-54.332Q-0.324-54.224-0.324-54.060Q-0.324-53.964-0.396-53.892Q-0.468-53.821-0.560-53.821Q-0.659-53.821-0.729-53.894Q-0.799-53.968-0.799-54.067Q-0.799-54.121-0.786-54.152L-0.779-54.166Q-0.772-54.186-0.764-54.197Q-0.755-54.207-0.752-54.214Q-1.107-54.214-1.394-53.991Q-1.107-53.698-1.107-53.332Q-1.107-53.017-1.292-52.785Q-1.476-52.552-1.765-52.424Q-2.054-52.296-2.361-52.296Q-2.563-52.296-2.755-52.346Q-2.946-52.395-3.124-52.505Q-3.216-52.378-3.216-52.235Q-3.216-52.053-3.088-51.918Q-2.960-51.783-2.775-51.783L-2.143-51.783Q-1.695-51.783-1.326-51.712Q-0.957-51.640-0.697-51.411Q-0.437-51.182-0.437-50.748Q-0.437-50.427-0.733-50.225Q-1.028-50.023-1.432-49.934Q-1.835-49.845-2.150-49.845Q-2.467-49.845-2.871-49.934Q-3.274-50.023-3.570-50.225Q-3.865-50.427-3.865-50.748M-3.411-50.748Q-3.411-50.519-3.192-50.370Q-2.973-50.221-2.681-50.153Q-2.389-50.085-2.150-50.085Q-1.986-50.085-1.777-50.121Q-1.569-50.156-1.362-50.237Q-1.155-50.317-1.023-50.445Q-0.892-50.573-0.892-50.748Q-0.892-51.100-1.273-51.194Q-1.654-51.288-2.156-51.288L-2.775-51.288Q-3.014-51.288-3.213-51.137Q-3.411-50.987-3.411-50.748M-2.361-52.535Q-1.695-52.535-1.695-53.332Q-1.695-54.132-2.361-54.132Q-3.031-54.132-3.031-53.332Q-3.031-52.535-2.361-52.535",[553],[536,818,819],{"transform":806},[549,820],{"d":821,"fill":538,"stroke":538,"className":822,"style":554},"M-22.610-43.288L-22.610-44.351Q-22.610-44.375-22.582-44.402Q-22.555-44.429-22.531-44.429L-22.422-44.429Q-22.357-44.429-22.343-44.371Q-22.247-43.937-22.001-43.686Q-21.755-43.435-21.341-43.435Q-21-43.435-20.747-43.568Q-20.494-43.701-20.494-44.009Q-20.494-44.166-20.588-44.281Q-20.682-44.395-20.820-44.464Q-20.959-44.532-21.126-44.570L-21.707-44.669Q-22.063-44.737-22.336-44.958Q-22.610-45.178-22.610-45.520Q-22.610-45.769-22.498-45.944Q-22.387-46.118-22.201-46.217Q-22.015-46.316-21.799-46.359Q-21.584-46.402-21.341-46.402Q-20.928-46.402-20.648-46.220L-20.432-46.395Q-20.422-46.398-20.415-46.400Q-20.408-46.402-20.398-46.402L-20.347-46.402Q-20.320-46.402-20.296-46.378Q-20.272-46.354-20.272-46.326L-20.272-45.479Q-20.272-45.458-20.296-45.431Q-20.320-45.404-20.347-45.404L-20.460-45.404Q-20.487-45.404-20.513-45.429Q-20.538-45.455-20.538-45.479Q-20.538-45.715-20.644-45.879Q-20.750-46.043-20.933-46.125Q-21.116-46.207-21.348-46.207Q-21.676-46.207-21.933-46.104Q-22.189-46.002-22.189-45.725Q-22.189-45.530-22.006-45.421Q-21.823-45.311-21.594-45.270L-21.020-45.164Q-20.774-45.116-20.560-44.988Q-20.347-44.860-20.210-44.657Q-20.073-44.453-20.073-44.204Q-20.073-43.691-20.439-43.452Q-20.805-43.213-21.341-43.213Q-21.837-43.213-22.169-43.507L-22.435-43.233Q-22.456-43.213-22.483-43.213L-22.531-43.213Q-22.555-43.213-22.582-43.240Q-22.610-43.267-22.610-43.288M-18.918-44.122L-18.918-46.019L-19.557-46.019L-19.557-46.241Q-19.239-46.241-19.022-46.451Q-18.805-46.661-18.705-46.971Q-18.604-47.280-18.604-47.588L-18.337-47.588L-18.337-46.299L-17.260-46.299L-17.260-46.019L-18.337-46.019L-18.337-44.135Q-18.337-43.859-18.233-43.660Q-18.129-43.462-17.869-43.462Q-17.712-43.462-17.606-43.566Q-17.500-43.671-17.450-43.824Q-17.401-43.978-17.401-44.135L-17.401-44.549L-17.134-44.549L-17.134-44.122Q-17.134-43.896-17.233-43.686Q-17.332-43.476-17.517-43.344Q-17.701-43.213-17.930-43.213Q-18.368-43.213-18.643-43.450Q-18.918-43.688-18.918-44.122M-16.266-44.009Q-16.266-44.341-16.042-44.568Q-15.818-44.795-15.475-44.923Q-15.131-45.052-14.758-45.104Q-14.386-45.157-14.082-45.157L-14.082-45.410Q-14.082-45.615-14.189-45.795Q-14.297-45.974-14.478-46.077Q-14.659-46.179-14.868-46.179Q-15.275-46.179-15.510-46.087Q-15.422-46.050-15.375-45.966Q-15.329-45.882-15.329-45.780Q-15.329-45.684-15.375-45.605Q-15.422-45.527-15.502-45.482Q-15.582-45.438-15.671-45.438Q-15.821-45.438-15.922-45.535Q-16.023-45.633-16.023-45.780Q-16.023-46.402-14.868-46.402Q-14.656-46.402-14.406-46.338Q-14.157-46.275-13.955-46.156Q-13.754-46.036-13.627-45.851Q-13.501-45.667-13.501-45.424L-13.501-43.848Q-13.501-43.732-13.439-43.636Q-13.378-43.541-13.265-43.541Q-13.155-43.541-13.091-43.635Q-13.026-43.729-13.026-43.848L-13.026-44.296L-12.759-44.296L-12.759-43.848Q-12.759-43.578-12.986-43.413Q-13.214-43.247-13.494-43.247Q-13.702-43.247-13.839-43.401Q-13.976-43.554-14-43.770Q-14.147-43.503-14.429-43.358Q-14.711-43.213-15.035-43.213Q-15.312-43.213-15.596-43.288Q-15.880-43.363-16.073-43.542Q-16.266-43.722-16.266-44.009M-15.651-44.009Q-15.651-43.835-15.550-43.705Q-15.449-43.575-15.293-43.505Q-15.138-43.435-14.974-43.435Q-14.755-43.435-14.547-43.532Q-14.338-43.630-14.210-43.811Q-14.082-43.992-14.082-44.218L-14.082-44.946Q-14.406-44.946-14.772-44.855Q-15.138-44.764-15.394-44.552Q-15.651-44.341-15.651-44.009M-10.592-43.281L-12.328-43.281L-12.328-43.561Q-12.099-43.561-11.951-43.595Q-11.802-43.630-11.802-43.770L-11.802-45.619Q-11.802-45.889-11.910-45.950Q-12.017-46.012-12.328-46.012L-12.328-46.292L-11.299-46.367L-11.299-45.660Q-11.170-45.968-10.927-46.167Q-10.684-46.367-10.366-46.367Q-10.148-46.367-9.977-46.243Q-9.806-46.118-9.806-45.906Q-9.806-45.769-9.905-45.670Q-10.004-45.571-10.137-45.571Q-10.274-45.571-10.373-45.670Q-10.472-45.769-10.472-45.906Q-10.472-46.046-10.373-46.145Q-10.664-46.145-10.864-45.949Q-11.064-45.752-11.156-45.458Q-11.248-45.164-11.248-44.884L-11.248-43.770Q-11.248-43.561-10.592-43.561L-10.592-43.281M-8.695-44.122L-8.695-46.019L-9.334-46.019L-9.334-46.241Q-9.016-46.241-8.799-46.451Q-8.582-46.661-8.481-46.971Q-8.381-47.280-8.381-47.588L-8.114-47.588L-8.114-46.299L-7.037-46.299L-7.037-46.019L-8.114-46.019L-8.114-44.135Q-8.114-43.859-8.010-43.660Q-7.905-43.462-7.646-43.462Q-7.488-43.462-7.382-43.566Q-7.277-43.671-7.227-43.824Q-7.177-43.978-7.177-44.135L-7.177-44.549L-6.911-44.549L-6.911-44.122Q-6.911-43.896-7.010-43.686Q-7.109-43.476-7.294-43.344Q-7.478-43.213-7.707-43.213Q-8.145-43.213-8.420-43.450Q-8.695-43.688-8.695-44.122M-6.101-43.288L-6.101-44.351Q-6.101-44.375-6.073-44.402Q-6.046-44.429-6.022-44.429L-5.913-44.429Q-5.848-44.429-5.834-44.371Q-5.738-43.937-5.492-43.686Q-5.246-43.435-4.833-43.435Q-4.491-43.435-4.238-43.568Q-3.985-43.701-3.985-44.009Q-3.985-44.166-4.079-44.281Q-4.173-44.395-4.311-44.464Q-4.450-44.532-4.617-44.570L-5.198-44.669Q-5.554-44.737-5.827-44.958Q-6.101-45.178-6.101-45.520Q-6.101-45.769-5.990-45.944Q-5.879-46.118-5.692-46.217Q-5.506-46.316-5.291-46.359Q-5.075-46.402-4.833-46.402Q-4.419-46.402-4.139-46.220L-3.924-46.395Q-3.913-46.398-3.906-46.400Q-3.900-46.402-3.889-46.402L-3.838-46.402Q-3.811-46.402-3.787-46.378Q-3.763-46.354-3.763-46.326L-3.763-45.479Q-3.763-45.458-3.787-45.431Q-3.811-45.404-3.838-45.404L-3.951-45.404Q-3.978-45.404-4.004-45.429Q-4.029-45.455-4.029-45.479Q-4.029-45.715-4.135-45.879Q-4.241-46.043-4.424-46.125Q-4.607-46.207-4.840-46.207Q-5.168-46.207-5.424-46.104Q-5.680-46.002-5.680-45.725Q-5.680-45.530-5.497-45.421Q-5.315-45.311-5.086-45.270L-4.511-45.164Q-4.265-45.116-4.052-44.988Q-3.838-44.860-3.701-44.657Q-3.565-44.453-3.565-44.204Q-3.565-43.691-3.930-43.452Q-4.296-43.213-4.833-43.213Q-5.328-43.213-5.660-43.507L-5.926-43.233Q-5.947-43.213-5.974-43.213L-6.022-43.213Q-6.046-43.213-6.073-43.240Q-6.101-43.267-6.101-43.288",[553],[536,824,825],{"transform":806},[549,826],{"d":827,"fill":538,"stroke":538,"className":828,"style":554},"M-22.610-36.792Q-22.610-37.120-22.475-37.421Q-22.340-37.721-22.104-37.942Q-21.868-38.162-21.564-38.282Q-21.259-38.402-20.935-38.402Q-20.429-38.402-20.080-38.299Q-19.732-38.197-19.732-37.821Q-19.732-37.674-19.829-37.573Q-19.926-37.472-20.073-37.472Q-20.227-37.472-20.326-37.571Q-20.425-37.670-20.425-37.821Q-20.425-38.009-20.285-38.101Q-20.487-38.152-20.928-38.152Q-21.283-38.152-21.512-37.956Q-21.741-37.759-21.842-37.450Q-21.943-37.140-21.943-36.792Q-21.943-36.443-21.817-36.137Q-21.690-35.831-21.435-35.647Q-21.181-35.462-20.825-35.462Q-20.603-35.462-20.419-35.546Q-20.234-35.630-20.099-35.785Q-19.964-35.941-19.906-36.149Q-19.892-36.204-19.838-36.204L-19.725-36.204Q-19.694-36.204-19.672-36.180Q-19.650-36.156-19.650-36.122L-19.650-36.101Q-19.735-35.814-19.923-35.616Q-20.111-35.418-20.376-35.315Q-20.641-35.213-20.935-35.213Q-21.365-35.213-21.753-35.419Q-22.141-35.626-22.375-35.989Q-22.610-36.351-22.610-36.792M-17.394-35.281L-18.997-35.281L-18.997-35.561Q-18.771-35.561-18.622-35.595Q-18.474-35.630-18.474-35.770L-18.474-39.389Q-18.474-39.659-18.581-39.721Q-18.689-39.782-18.997-39.782L-18.997-40.063L-17.920-40.138L-17.920-35.770Q-17.920-35.633-17.770-35.597Q-17.619-35.561-17.394-35.561L-17.394-35.281M-16.840-36.816Q-16.840-37.137-16.715-37.426Q-16.591-37.715-16.365-37.938Q-16.139-38.162-15.844-38.282Q-15.548-38.402-15.230-38.402Q-14.902-38.402-14.641-38.302Q-14.379-38.203-14.203-38.021Q-14.027-37.838-13.933-37.580Q-13.839-37.322-13.839-36.990Q-13.839-36.898-13.921-36.877L-16.177-36.877L-16.177-36.816Q-16.177-36.228-15.893-35.845Q-15.610-35.462-15.042-35.462Q-14.721-35.462-14.453-35.655Q-14.184-35.848-14.095-36.163Q-14.089-36.204-14.013-36.218L-13.921-36.218Q-13.839-36.194-13.839-36.122Q-13.839-36.115-13.846-36.088Q-13.959-35.691-14.330-35.452Q-14.700-35.213-15.124-35.213Q-15.562-35.213-15.962-35.421Q-16.361-35.630-16.601-35.997Q-16.840-36.364-16.840-36.816M-16.170-37.086L-14.355-37.086Q-14.355-37.363-14.453-37.615Q-14.550-37.868-14.748-38.024Q-14.946-38.179-15.230-38.179Q-15.507-38.179-15.721-38.021Q-15.934-37.862-16.052-37.607Q-16.170-37.352-16.170-37.086M-13.193-36.009Q-13.193-36.341-12.969-36.568Q-12.745-36.795-12.402-36.923Q-12.058-37.052-11.686-37.104Q-11.313-37.157-11.009-37.157L-11.009-37.410Q-11.009-37.615-11.117-37.795Q-11.224-37.974-11.405-38.077Q-11.587-38.179-11.795-38.179Q-12.202-38.179-12.438-38.087Q-12.349-38.050-12.303-37.966Q-12.257-37.882-12.257-37.780Q-12.257-37.684-12.303-37.605Q-12.349-37.527-12.429-37.482Q-12.509-37.438-12.598-37.438Q-12.749-37.438-12.850-37.535Q-12.950-37.633-12.950-37.780Q-12.950-38.402-11.795-38.402Q-11.583-38.402-11.334-38.338Q-11.084-38.275-10.882-38.156Q-10.681-38.036-10.554-37.851Q-10.428-37.667-10.428-37.424L-10.428-35.848Q-10.428-35.732-10.366-35.636Q-10.305-35.541-10.192-35.541Q-10.083-35.541-10.018-35.635Q-9.953-35.729-9.953-35.848L-9.953-36.296L-9.686-36.296L-9.686-35.848Q-9.686-35.578-9.914-35.413Q-10.141-35.247-10.421-35.247Q-10.630-35.247-10.766-35.401Q-10.903-35.554-10.927-35.770Q-11.074-35.503-11.356-35.358Q-11.638-35.213-11.963-35.213Q-12.239-35.213-12.523-35.288Q-12.807-35.363-13-35.542Q-13.193-35.722-13.193-36.009M-12.578-36.009Q-12.578-35.835-12.477-35.705Q-12.376-35.575-12.221-35.505Q-12.065-35.435-11.901-35.435Q-11.682-35.435-11.474-35.532Q-11.265-35.630-11.137-35.811Q-11.009-35.992-11.009-36.218L-11.009-36.946Q-11.334-36.946-11.699-36.855Q-12.065-36.764-12.321-36.552Q-12.578-36.341-12.578-36.009M-7.588-35.281L-9.221-35.281L-9.221-35.561Q-8.992-35.561-8.844-35.595Q-8.695-35.630-8.695-35.770L-8.695-37.619Q-8.695-37.889-8.803-37.950Q-8.910-38.012-9.221-38.012L-9.221-38.292L-8.162-38.367L-8.162-37.718Q-7.991-38.026-7.687-38.197Q-7.382-38.367-7.037-38.367Q-6.531-38.367-6.248-38.144Q-5.964-37.920-5.964-37.424L-5.964-35.770Q-5.964-35.633-5.815-35.597Q-5.667-35.561-5.441-35.561L-5.441-35.281L-7.071-35.281L-7.071-35.561Q-6.842-35.561-6.694-35.595Q-6.545-35.630-6.545-35.770L-6.545-37.410Q-6.545-37.745-6.665-37.945Q-6.784-38.145-7.099-38.145Q-7.369-38.145-7.603-38.009Q-7.837-37.872-7.976-37.638Q-8.114-37.404-8.114-37.130L-8.114-35.770Q-8.114-35.633-7.964-35.597Q-7.813-35.561-7.588-35.561",[553],[830,831,834,835,860],"figcaption",{"className":832},[833],"tikz-cap","One mutable buffer across a node: \\textbf{choose} pushes ",[836,837,840],"span",{"className":838},[839],"katex",[836,841,845],{"className":842,"ariaHidden":844},[843],"katex-html","true",[836,846,849,854],{"className":847},[848],"base",[836,850],{"className":851,"style":853},[852],"strut","height:0.4306em;",[836,855,859],{"className":856},[857,858],"mord","mathnormal","c",", \\textbf{explore} recurses, \\textbf{un-choose} pops — restoring the buffer exactly so the next sibling starts clean",[862,863,867],"pre",{"className":864,"code":865,"language":866,"meta":376,"style":376},"language-algorithm shiki shiki-themes Vesper Light - Orange Boost (Quick Open Adjusted) vesper","caption: $\\textsc{Backtrack}(partial)$ — generic DFS over the state-space tree\nif $\\textsc{IsComplete}(partial)$ then\n  record a copy of $partial$\n  return\nfor each $c \\in \\textsc{ValidChoices}(partial)$ do\n  if $\\textsc{Prune}(partial, c)$ then\n    continue \u002F\u002F prune\n  $\\textsc{Apply}(partial, c)$ \u002F\u002F choose\n  $\\textsc{Backtrack}(partial)$ \u002F\u002F explore\n  $\\textsc{Undo}(partial, c)$ \u002F\u002F un-choose\n","algorithm",[483,868,869,875,880,885,890,895,900,905,910,915],{"__ignoreMap":376},[836,870,872],{"class":871,"line":6},"line",[836,873,874],{},"caption: $\\textsc{Backtrack}(partial)$ — generic DFS over the state-space tree\n",[836,876,877],{"class":871,"line":18},[836,878,879],{},"if $\\textsc{IsComplete}(partial)$ then\n",[836,881,882],{"class":871,"line":24},[836,883,884],{},"  record a copy of $partial$\n",[836,886,887],{"class":871,"line":73},[836,888,889],{},"  return\n",[836,891,892],{"class":871,"line":102},[836,893,894],{},"for each $c \\in \\textsc{ValidChoices}(partial)$ do\n",[836,896,897],{"class":871,"line":108},[836,898,899],{},"  if $\\textsc{Prune}(partial, c)$ then\n",[836,901,902],{"class":871,"line":116},[836,903,904],{},"    continue \u002F\u002F prune\n",[836,906,907],{"class":871,"line":196},[836,908,909],{},"  $\\textsc{Apply}(partial, c)$ \u002F\u002F choose\n",[836,911,912],{"class":871,"line":202},[836,913,914],{},"  $\\textsc{Backtrack}(partial)$ \u002F\u002F explore\n",[836,916,917],{"class":871,"line":283},[836,918,919],{},"  $\\textsc{Undo}(partial, c)$ \u002F\u002F un-choose\n",[381,921,922,923,949,950,949,973,996],{},"Everything in this lesson is a specialization of this skeleton: the four\nprimitives ",[836,924,926],{"className":925},[839],[836,927,929],{"className":928,"ariaHidden":844},[843],[836,930,932,936],{"className":931},[848],[836,933],{"className":934,"style":935},[852],"height:0.8889em;vertical-align:-0.1944em;",[836,937,941],{"className":938},[939,940],"enclosing","textsc",[836,942,945],{"className":943},[857,944],"text",[836,946,948],{"className":947},[857],"IsComplete",", ",[836,951,953],{"className":952},[839],[836,954,956],{"className":955,"ariaHidden":844},[843],[836,957,959,963],{"className":958},[848],[836,960],{"className":961,"style":962},[852],"height:0.6944em;",[836,964,966],{"className":965},[939,940],[836,967,969],{"className":968},[857,944],[836,970,972],{"className":971},[857],"ValidChoices",[836,974,976],{"className":975},[839],[836,977,979],{"className":978,"ariaHidden":844},[843],[836,980,982,986],{"className":981},[848],[836,983],{"className":984,"style":985},[852],"height:0.6833em;",[836,987,989],{"className":988},[939,940],[836,990,992],{"className":991},[857,944],[836,993,995],{"className":994},[857],"Prune",", and\nthe choose\u002Fundo pair are all we ever change.",[432,998,1000,1001],{"id":999},"subsets-the-power-set-in-2n","Subsets: the power set in ",[836,1002,1004],{"className":1003},[839],[836,1005,1007],{"className":1006,"ariaHidden":844},[843],[836,1008,1010,1014],{"className":1009},[848],[836,1011],{"className":1012,"style":1013},[852],"height:0.6644em;",[836,1015,1017,1020],{"className":1016},[857],[836,1018,470],{"className":1019},[857],[836,1021,1024],{"className":1022},[1023],"msupsub",[836,1025,1028],{"className":1026},[1027],"vlist-t",[836,1029,1032],{"className":1030},[1031],"vlist-r",[836,1033,1036],{"className":1034,"style":1013},[1035],"vlist",[836,1037,1039,1044],{"style":1038},"top:-3.063em;margin-right:0.05em;",[836,1040],{"className":1041,"style":1043},[1042],"pstrut","height:2.7em;",[836,1045,1051],{"className":1046},[1047,1048,1049,1050],"sizing","reset-size6","size3","mtight",[836,1052,1054],{"className":1053},[857,858,1050],"n",[381,1056,1057,1058,1061,1062,1208,1209,1212,1213,1216,1217,1232,1233,1274,1275,1316,1317,1320],{},"The cleanest decision tree is the ",[394,1059,1060],{},"power set"," of ",[836,1063,1065],{"className":1064},[839],[836,1066,1068],{"className":1067,"ariaHidden":844},[843],[836,1069,1071,1075,1080,1127,1132,1137,1142,1145,1148,1151,1203],{"className":1070},[848],[836,1072],{"className":1073,"style":1074},[852],"height:1em;vertical-align:-0.25em;",[836,1076,1079],{"className":1077},[1078],"mopen","{",[836,1081,1083,1086],{"className":1082},[857],[836,1084,384],{"className":1085},[857,858],[836,1087,1089],{"className":1088},[1023],[836,1090,1093,1118],{"className":1091},[1027,1092],"vlist-t2",[836,1094,1096,1113],{"className":1095},[1031],[836,1097,1100],{"className":1098,"style":1099},[1035],"height:0.3011em;",[836,1101,1103,1106],{"style":1102},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[836,1104],{"className":1105,"style":1043},[1042],[836,1107,1109],{"className":1108},[1047,1048,1049,1050],[836,1110,1112],{"className":1111},[857,1050],"0",[836,1114,1117],{"className":1115},[1116],"vlist-s","​",[836,1119,1121],{"className":1120},[1031],[836,1122,1125],{"className":1123,"style":1124},[1035],"height:0.15em;",[836,1126],{},[836,1128,1131],{"className":1129},[1130],"mpunct",",",[836,1133],{"className":1134,"style":1136},[1135],"mspace","margin-right:0.1667em;",[836,1138,1141],{"className":1139},[1140],"minner","…",[836,1143],{"className":1144,"style":1136},[1135],[836,1146,1131],{"className":1147},[1130],[836,1149],{"className":1150,"style":1136},[1135],[836,1152,1154,1157],{"className":1153},[857],[836,1155,384],{"className":1156},[857,858],[836,1158,1160],{"className":1159},[1023],[836,1161,1163,1194],{"className":1162},[1027,1092],[836,1164,1166,1191],{"className":1165},[1031],[836,1167,1169],{"className":1168,"style":1099},[1035],[836,1170,1171,1174],{"style":1102},[836,1172],{"className":1173,"style":1043},[1042],[836,1175,1177],{"className":1176},[1047,1048,1049,1050],[836,1178,1180,1183,1188],{"className":1179},[857,1050],[836,1181,1054],{"className":1182},[857,858,1050],[836,1184,1187],{"className":1185},[1186,1050],"mbin","−",[836,1189,414],{"className":1190},[857,1050],[836,1192,1117],{"className":1193},[1116],[836,1195,1197],{"className":1196},[1031],[836,1198,1201],{"className":1199,"style":1200},[1035],"height:0.2083em;",[836,1202],{},[836,1204,1207],{"className":1205},[1206],"mclose","}",".\nEach element faces one binary decision, ",[389,1210,1211],{},"in"," the subset or ",[389,1214,1215],{},"out",", so the tree\nis a perfect binary tree of depth ",[836,1218,1220],{"className":1219},[839],[836,1221,1223],{"className":1222,"ariaHidden":844},[843],[836,1224,1226,1229],{"className":1225},[848],[836,1227],{"className":1228,"style":853},[852],[836,1230,1054],{"className":1231},[857,858],", and its ",[836,1234,1236],{"className":1235},[839],[836,1237,1239],{"className":1238,"ariaHidden":844},[843],[836,1240,1242,1245],{"className":1241},[848],[836,1243],{"className":1244,"style":1013},[852],[836,1246,1248,1251],{"className":1247},[857],[836,1249,470],{"className":1250},[857],[836,1252,1254],{"className":1253},[1023],[836,1255,1257],{"className":1256},[1027],[836,1258,1260],{"className":1259},[1031],[836,1261,1263],{"className":1262,"style":1013},[1035],[836,1264,1265,1268],{"style":1038},[836,1266],{"className":1267,"style":1043},[1042],[836,1269,1271],{"className":1270},[1047,1048,1049,1050],[836,1272,1054],{"className":1273},[857,858,1050]," leaves are exactly the ",[836,1276,1278],{"className":1277},[839],[836,1279,1281],{"className":1280,"ariaHidden":844},[843],[836,1282,1284,1287],{"className":1283},[848],[836,1285],{"className":1286,"style":1013},[852],[836,1288,1290,1293],{"className":1289},[857],[836,1291,470],{"className":1292},[857],[836,1294,1296],{"className":1295},[1023],[836,1297,1299],{"className":1298},[1027],[836,1300,1302],{"className":1301},[1031],[836,1303,1305],{"className":1304,"style":1013},[1035],[836,1306,1307,1310],{"style":1038},[836,1308],{"className":1309,"style":1043},[1042],[836,1311,1313],{"className":1312},[1047,1048,1049,1050],[836,1314,1054],{"className":1315},[857,858,1050],"\nsubsets. This is the ",[394,1318,1319],{},"include–exclude"," recursion:",[862,1322,1324],{"className":864,"code":1323,"language":866,"meta":376,"style":376},"caption: $\\textsc{Subsets}(a, i, partial)$ — include\u002Fexclude each element\nif $i = n$ then\n  record a copy of $partial$\n  return\n$\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F exclude $a_i$\n$partial.\\text{push}(a_i)$ \u002F\u002F include $a_i$\n$\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F explore\n$partial.\\text{pop}()$ \u002F\u002F un-choose\n",[483,1325,1326,1331,1336,1340,1344,1349,1354,1359],{"__ignoreMap":376},[836,1327,1328],{"class":871,"line":6},[836,1329,1330],{},"caption: $\\textsc{Subsets}(a, i, partial)$ — include\u002Fexclude each element\n",[836,1332,1333],{"class":871,"line":18},[836,1334,1335],{},"if $i = n$ then\n",[836,1337,1338],{"class":871,"line":24},[836,1339,884],{},[836,1341,1342],{"class":871,"line":73},[836,1343,889],{},[836,1345,1346],{"class":871,"line":102},[836,1347,1348],{},"$\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F exclude $a_i$\n",[836,1350,1351],{"class":871,"line":108},[836,1352,1353],{},"$partial.\\text{push}(a_i)$ \u002F\u002F include $a_i$\n",[836,1355,1356],{"class":871,"line":116},[836,1357,1358],{},"$\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F explore\n",[836,1360,1361],{"class":871,"line":196},[836,1362,1363],{},"$partial.\\text{pop}()$ \u002F\u002F un-choose\n",[523,1365,1367,1801],{"className":1366},[526,527],[529,1368,1372],{"xmlns":531,"width":1369,"height":1370,"viewBox":1371},"278.698","190.408","-75 -75 209.024 142.806",[536,1373,1374,1377,1384,1387,1393,1396,1402,1405,1412,1415,1436,1439,1454,1457,1479,1482,1501,1504,1535,1538,1545,1559,1583],{"stroke":538,"style":539},[549,1375],{"fill":542,"d":1376},"M39.672-62.112c0-5.5-4.459-9.958-9.959-9.958s-9.958 4.458-9.958 9.958 4.458 9.959 9.958 9.959 9.959-4.459 9.959-9.959Zm-9.959 0",[536,1378,1380],{"transform":1379},"translate(-3.5 2.25)",[549,1381],{"d":1382,"fill":538,"stroke":538,"className":1383,"style":571},"M30.218-62.275Q30.218-62.354 30.262-62.389L31.106-63.127Q30.570-63.839 30.570-64.740Q30.570-65.280 30.772-65.757Q30.974-66.234 31.348-66.608Q31.721-66.981 32.198-67.183Q32.675-67.385 33.215-67.385Q33.563-67.385 33.892-67.295Q34.222-67.205 34.523-67.032Q34.824-66.858 35.079-66.612L35.887-67.324Q35.962-67.385 36.024-67.385Q36.094-67.385 36.149-67.331Q36.204-67.276 36.204-67.205Q36.204-67.117 36.155-67.078L35.312-66.344Q35.861-65.623 35.861-64.740Q35.861-64.024 35.505-63.413Q35.149-62.802 34.536-62.444Q33.923-62.086 33.215-62.086Q32.692-62.086 32.200-62.292Q31.708-62.499 31.343-62.859L30.530-62.147Q30.456-62.086 30.399-62.086Q30.319-62.086 30.269-62.145Q30.218-62.204 30.218-62.275M35.039-66.098L31.611-63.101Q31.827-62.894 32.084-62.749Q32.341-62.604 32.631-62.529Q32.921-62.455 33.215-62.455Q33.826-62.455 34.354-62.762Q34.881-63.070 35.191-63.595Q35.501-64.120 35.501-64.740Q35.501-65.113 35.382-65.461Q35.263-65.808 35.039-66.098M31.379-63.373L34.806-66.370Q34.494-66.678 34.070-66.852Q33.646-67.025 33.215-67.025Q32.596-67.025 32.068-66.715Q31.541-66.405 31.234-65.880Q30.926-65.355 30.926-64.740Q30.926-63.958 31.379-63.373",[553],[549,1385],{"fill":542,"d":1386},"M-8.698-25.123c0-5.5-4.458-9.958-9.958-9.958s-9.959 4.458-9.959 9.958 4.459 9.958 9.959 9.958 9.958-4.458 9.958-9.958Zm-9.958 0",[536,1388,1390],{"transform":1389},"translate(-51.87 39.239)",[549,1391],{"d":1382,"fill":538,"stroke":538,"className":1392,"style":571},[553],[549,1394],{"fill":542,"d":1395},"m21.644-55.941-32.231 24.648M-32.883 11.866c0-5.5-4.458-9.959-9.958-9.959S-52.8 6.366-52.8 11.866s4.459 9.958 9.959 9.958 9.958-4.458 9.958-9.958Zm-9.958 0",[536,1397,1399],{"transform":1398},"translate(-76.054 76.227)",[549,1400],{"d":1382,"fill":538,"stroke":538,"className":1401,"style":571},[553],[549,1403],{"fill":542,"d":1404},"M-24.215-16.621-37.282 3.364",[536,1406,1408],{"transform":1407},"translate(-89.455 112.716)",[549,1409],{"d":1410,"fill":538,"stroke":538,"className":1411,"style":554},"M31.477-61.285L31.477-62.980Q31.477-63.230 31.318-63.406Q31.159-63.582 30.914-63.665Q30.670-63.749 30.434-63.749Q30.403-63.749 30.380-63.773Q30.356-63.797 30.356-63.828L30.356-63.896Q30.356-63.927 30.380-63.951Q30.403-63.975 30.434-63.975Q30.831-63.975 31.154-64.176Q31.477-64.378 31.477-64.744L31.477-66.439Q31.477-66.699 31.625-66.883Q31.774-67.068 32.010-67.172Q32.246-67.277 32.500-67.319Q32.755-67.362 33.011-67.362L33.080-67.362Q33.107-67.362 33.133-67.336Q33.158-67.311 33.158-67.283L33.158-67.215Q33.158-67.184 33.134-67.160Q33.110-67.136 33.080-67.136Q32.840-67.136 32.603-67.063Q32.365-66.989 32.205-66.825Q32.044-66.661 32.044-66.425L32.044-64.730Q32.044-64.501 31.924-64.325Q31.805-64.149 31.612-64.036Q31.419-63.924 31.196-63.862Q31.419-63.800 31.612-63.688Q31.805-63.575 31.924-63.399Q32.044-63.223 32.044-62.994L32.044-61.299Q32.044-61.063 32.205-60.899Q32.365-60.735 32.603-60.661Q32.840-60.588 33.080-60.588Q33.110-60.588 33.134-60.564Q33.158-60.540 33.158-60.509L33.158-60.441Q33.158-60.413 33.133-60.388Q33.107-60.362 33.080-60.362L33.011-60.362Q32.762-60.362 32.500-60.406Q32.239-60.451 32.005-60.553Q31.771-60.656 31.624-60.839Q31.477-61.022 31.477-61.285M34.450-60.441L34.450-60.509Q34.450-60.540 34.474-60.564Q34.498-60.588 34.529-60.588Q34.768-60.588 35.007-60.659Q35.247-60.731 35.409-60.893Q35.571-61.056 35.571-61.299L35.571-62.994Q35.571-63.336 35.817-63.553Q36.064-63.770 36.419-63.862Q36.197-63.924 36.004-64.036Q35.811-64.149 35.691-64.325Q35.571-64.501 35.571-64.730L35.571-66.425Q35.571-66.668 35.409-66.831Q35.247-66.993 35.007-67.065Q34.768-67.136 34.529-67.136Q34.498-67.136 34.474-67.160Q34.450-67.184 34.450-67.215L34.450-67.283Q34.450-67.311 34.476-67.336Q34.502-67.362 34.529-67.362L34.597-67.362Q34.932-67.362 35.288-67.282Q35.643-67.201 35.891-66.993Q36.139-66.784 36.139-66.439L36.139-64.744Q36.139-64.378 36.460-64.176Q36.781-63.975 37.174-63.975Q37.205-63.975 37.229-63.951Q37.253-63.927 37.253-63.896L37.253-63.828Q37.253-63.797 37.229-63.773Q37.205-63.749 37.174-63.749Q36.942-63.749 36.699-63.665Q36.457-63.582 36.298-63.406Q36.139-63.230 36.139-62.980L36.139-61.285Q36.139-60.940 35.891-60.731Q35.643-60.523 35.288-60.442Q34.932-60.362 34.597-60.362L34.529-60.362Q34.502-60.362 34.476-60.388Q34.450-60.413 34.450-60.441",[553],[549,1413],{"fill":542,"d":1414},"m-46.164 21.465-6.158 17.79",[536,1416,1417,1424,1430],{"stroke":542,"fontSize":544},[536,1418,1420],{"transform":1419},"translate(-65.841 112.716)",[549,1421],{"d":1422,"fill":538,"stroke":538,"className":1423,"style":554},"M31.477-61.285L31.477-62.980Q31.477-63.230 31.318-63.406Q31.159-63.582 30.914-63.665Q30.670-63.749 30.434-63.749Q30.403-63.749 30.380-63.773Q30.356-63.797 30.356-63.828L30.356-63.896Q30.356-63.927 30.380-63.951Q30.403-63.975 30.434-63.975Q30.831-63.975 31.154-64.176Q31.477-64.378 31.477-64.744L31.477-66.439Q31.477-66.699 31.625-66.883Q31.774-67.068 32.010-67.172Q32.246-67.277 32.500-67.319Q32.755-67.362 33.011-67.362L33.080-67.362Q33.107-67.362 33.133-67.336Q33.158-67.311 33.158-67.283L33.158-67.215Q33.158-67.184 33.134-67.160Q33.110-67.136 33.080-67.136Q32.840-67.136 32.603-67.063Q32.365-66.989 32.205-66.825Q32.044-66.661 32.044-66.425L32.044-64.730Q32.044-64.501 31.924-64.325Q31.805-64.149 31.612-64.036Q31.419-63.924 31.196-63.862Q31.419-63.800 31.612-63.688Q31.805-63.575 31.924-63.399Q32.044-63.223 32.044-62.994L32.044-61.299Q32.044-61.063 32.205-60.899Q32.365-60.735 32.603-60.661Q32.840-60.588 33.080-60.588Q33.110-60.588 33.134-60.564Q33.158-60.540 33.158-60.509L33.158-60.441Q33.158-60.413 33.133-60.388Q33.107-60.362 33.080-60.362L33.011-60.362Q32.762-60.362 32.500-60.406Q32.239-60.451 32.005-60.553Q31.771-60.656 31.624-60.839Q31.477-61.022 31.477-61.285",[553],[536,1425,1426],{"transform":1419},[549,1427],{"d":1428,"fill":538,"stroke":538,"className":1429,"style":554},"M34.607-62.659Q34.727-62.502 34.918-62.403Q35.110-62.303 35.325-62.264Q35.540-62.225 35.763-62.225Q36.060-62.225 36.255-62.380Q36.450-62.536 36.540-62.790Q36.631-63.045 36.631-63.329Q36.631-63.623 36.539-63.874Q36.446-64.125 36.248-64.281Q36.050-64.436 35.756-64.436L35.240-64.436Q35.212-64.436 35.187-64.462Q35.161-64.487 35.161-64.511L35.161-64.583Q35.161-64.614 35.187-64.636Q35.212-64.658 35.240-64.658L35.681-64.689Q36.043-64.689 36.263-65.046Q36.484-65.404 36.484-65.793Q36.484-66.121 36.289-66.325Q36.094-66.528 35.763-66.528Q35.476-66.528 35.223-66.444Q34.970-66.361 34.806-66.173Q34.953-66.173 35.053-66.058Q35.154-65.944 35.154-65.793Q35.154-65.643 35.048-65.533Q34.942-65.424 34.785-65.424Q34.624-65.424 34.515-65.533Q34.406-65.643 34.406-65.793Q34.406-66.118 34.614-66.337Q34.823-66.555 35.139-66.658Q35.455-66.760 35.763-66.760Q36.081-66.760 36.409-66.656Q36.737-66.552 36.964-66.330Q37.191-66.108 37.191-65.793Q37.191-65.359 36.904-65.034Q36.617-64.710 36.183-64.563Q36.494-64.498 36.774-64.332Q37.055-64.166 37.232-63.908Q37.410-63.650 37.410-63.329Q37.410-62.919 37.166-62.609Q36.921-62.300 36.540-62.136Q36.159-61.972 35.763-61.972Q35.394-61.972 35.036-62.085Q34.679-62.197 34.435-62.447Q34.190-62.696 34.190-63.066Q34.190-63.237 34.307-63.349Q34.423-63.462 34.594-63.462Q34.703-63.462 34.794-63.411Q34.884-63.360 34.939-63.267Q34.994-63.175 34.994-63.066Q34.994-62.898 34.881-62.779Q34.768-62.659 34.607-62.659",[553],[536,1431,1432],{"transform":1419},[549,1433],{"d":1434,"fill":538,"stroke":538,"className":1435,"style":554},"M38.440-60.441L38.440-60.509Q38.440-60.540 38.464-60.564Q38.487-60.588 38.518-60.588Q38.757-60.588 38.997-60.659Q39.236-60.731 39.398-60.893Q39.561-61.056 39.561-61.299L39.561-62.994Q39.561-63.336 39.807-63.553Q40.053-63.770 40.408-63.862Q40.186-63.924 39.993-64.036Q39.800-64.149 39.680-64.325Q39.561-64.501 39.561-64.730L39.561-66.425Q39.561-66.668 39.398-66.831Q39.236-66.993 38.997-67.065Q38.757-67.136 38.518-67.136Q38.487-67.136 38.464-67.160Q38.440-67.184 38.440-67.215L38.440-67.283Q38.440-67.311 38.465-67.336Q38.491-67.362 38.518-67.362L38.587-67.362Q38.922-67.362 39.277-67.282Q39.632-67.201 39.880-66.993Q40.128-66.784 40.128-66.439L40.128-64.744Q40.128-64.378 40.449-64.176Q40.771-63.975 41.164-63.975Q41.194-63.975 41.218-63.951Q41.242-63.927 41.242-63.896L41.242-63.828Q41.242-63.797 41.218-63.773Q41.194-63.749 41.164-63.749Q40.931-63.749 40.689-63.665Q40.446-63.582 40.287-63.406Q40.128-63.230 40.128-62.980L40.128-61.285Q40.128-60.940 39.880-60.731Q39.632-60.523 39.277-60.442Q38.922-60.362 38.587-60.362L38.518-60.362Q38.491-60.362 38.465-60.388Q38.440-60.413 38.440-60.441",[553],[549,1437],{"fill":542,"d":1438},"m-39.518 21.465 6.158 17.79",[536,1440,1441,1448],{"stroke":542,"fontSize":544},[536,1442,1444],{"transform":1443},"translate(-75.739 57.322)",[549,1445],{"d":1446,"fill":538,"stroke":538,"className":1447,"style":554},"M35.042-63.688L30.629-63.688Q30.561-63.698 30.515-63.744Q30.468-63.790 30.468-63.862Q30.468-64.006 30.629-64.029L35.042-64.029Q35.202-64.006 35.202-63.862Q35.202-63.790 35.156-63.744Q35.110-63.698 35.042-63.688",[553],[536,1449,1450],{"transform":1443},[549,1451],{"d":1452,"fill":538,"stroke":538,"className":1453,"style":554},"M39.289-62.112L36.404-62.112L36.404-62.314Q36.404-62.344 36.431-62.372L37.679-63.589Q37.751-63.664 37.793-63.706Q37.836-63.749 37.915-63.828Q38.328-64.241 38.559-64.599Q38.790-64.956 38.790-65.380Q38.790-65.612 38.711-65.815Q38.632-66.019 38.491-66.169Q38.349-66.320 38.154-66.400Q37.959-66.480 37.727-66.480Q37.416-66.480 37.158-66.321Q36.900-66.162 36.770-65.885L36.790-65.885Q36.958-65.885 37.065-65.774Q37.173-65.663 37.173-65.499Q37.173-65.342 37.064-65.229Q36.954-65.116 36.790-65.116Q36.630-65.116 36.517-65.229Q36.404-65.342 36.404-65.499Q36.404-65.875 36.612-66.162Q36.821-66.449 37.156-66.605Q37.491-66.760 37.846-66.760Q38.270-66.760 38.650-66.602Q39.029-66.443 39.263-66.126Q39.497-65.810 39.497-65.380Q39.497-65.069 39.357-64.800Q39.217-64.532 39.012-64.327Q38.807-64.122 38.444-63.840Q38.082-63.558 37.973-63.462L37.118-62.734L37.761-62.734Q38.024-62.734 38.313-62.736Q38.602-62.737 38.820-62.746Q39.039-62.755 39.056-62.772Q39.118-62.837 39.155-63.004Q39.193-63.172 39.231-63.414L39.497-63.414",[553],[549,1455],{"fill":542,"d":1456},"M15.487 11.866c0-5.5-4.459-9.959-9.959-9.959S-4.43 6.366-4.43 11.866s4.459 9.958 9.958 9.958 9.959-4.458 9.959-9.958Zm-9.959 0",[536,1458,1460,1467,1473],{"stroke":542,"fontSize":1459},"9",[536,1461,1463],{"transform":1462},"translate(-31.122 76.227)",[549,1464],{"d":1465,"fill":538,"stroke":538,"className":1466,"style":571},"M31.686-61.031L31.686-63.219Q31.686-63.685 31.306-63.960Q30.926-64.235 30.442-64.235Q30.416-64.235 30.383-64.259Q30.350-64.283 30.350-64.318L30.350-64.415Q30.350-64.445 30.385-64.472Q30.421-64.498 30.442-64.498Q30.926-64.498 31.306-64.766Q31.686-65.034 31.686-65.505L31.686-67.693Q31.686-68.111 31.978-68.374Q32.271-68.638 32.697-68.750Q33.123-68.862 33.519-68.862L33.602-68.862Q33.633-68.862 33.661-68.838Q33.690-68.814 33.690-68.783L33.690-68.682Q33.690-68.660 33.657-68.631Q33.624-68.603 33.602-68.603Q33.128-68.603 32.743-68.352Q32.359-68.102 32.359-67.658L32.359-65.469Q32.359-65.056 32.053-64.773Q31.748-64.489 31.295-64.362Q31.572-64.287 31.816-64.136Q32.060-63.984 32.209-63.760Q32.359-63.536 32.359-63.255L32.359-61.066Q32.359-60.763 32.543-60.550Q32.728-60.337 33.011-60.229Q33.295-60.121 33.602-60.121Q33.633-60.121 33.661-60.097Q33.690-60.073 33.690-60.042L33.690-59.941Q33.690-59.919 33.657-59.891Q33.624-59.862 33.602-59.862L33.519-59.862Q33.123-59.862 32.697-59.974Q32.271-60.086 31.978-60.350Q31.686-60.613 31.686-61.031",[553],[536,1468,1469],{"transform":1462},[549,1470],{"d":1471,"fill":538,"stroke":538,"className":1472,"style":571},"M38.245-62.112L34.795-62.112L34.795-62.345Q34.795-62.358 34.826-62.389L36.280-63.966Q36.746-64.463 36.999-64.768Q37.252-65.074 37.443-65.485Q37.634-65.896 37.634-66.335Q37.634-66.924 37.311-67.357Q36.988-67.790 36.408-67.790Q36.144-67.790 35.898-67.680Q35.652-67.570 35.476-67.383Q35.300-67.196 35.204-66.946L35.283-66.946Q35.485-66.946 35.628-66.810Q35.771-66.674 35.771-66.458Q35.771-66.252 35.628-66.113Q35.485-65.975 35.283-65.975Q35.081-65.975 34.938-66.118Q34.795-66.260 34.795-66.458Q34.795-66.920 35.032-67.293Q35.270-67.667 35.670-67.886Q36.069-68.106 36.518-68.106Q37.041-68.106 37.495-67.891Q37.950-67.675 38.223-67.276Q38.495-66.876 38.495-66.335Q38.495-65.940 38.324-65.586Q38.152-65.232 37.887-64.953Q37.621-64.674 37.170-64.289Q36.720-63.905 36.641-63.830L35.617-62.868L36.434-62.868Q37.085-62.868 37.522-62.879Q37.959-62.890 37.990-62.912Q38.060-62.995 38.115-63.235Q38.170-63.474 38.210-63.742L38.495-63.742",[553],[536,1474,1475],{"transform":1462},[549,1476],{"d":1477,"fill":538,"stroke":538,"className":1478,"style":571},"M39.600-59.941L39.600-60.042Q39.600-60.073 39.631-60.097Q39.662-60.121 39.692-60.121Q40-60.121 40.284-60.229Q40.567-60.337 40.752-60.550Q40.936-60.763 40.936-61.066L40.936-63.255Q40.936-63.545 41.086-63.767Q41.235-63.988 41.477-64.138Q41.718-64.287 41.995-64.362Q41.538-64.494 41.237-64.775Q40.936-65.056 40.936-65.469L40.936-67.658Q40.936-67.961 40.752-68.174Q40.567-68.387 40.284-68.495Q40-68.603 39.692-68.603Q39.675-68.603 39.638-68.631Q39.600-68.660 39.600-68.682L39.600-68.783Q39.600-68.814 39.631-68.838Q39.662-68.862 39.692-68.862L39.772-68.862Q40.171-68.862 40.598-68.750Q41.024-68.638 41.316-68.374Q41.609-68.111 41.609-67.693L41.609-65.505Q41.609-65.188 41.789-64.960Q41.969-64.731 42.259-64.615Q42.549-64.498 42.852-64.498Q42.879-64.498 42.909-64.472Q42.940-64.445 42.940-64.415L42.940-64.318Q42.940-64.283 42.911-64.259Q42.883-64.235 42.852-64.235Q42.369-64.235 41.989-63.960Q41.609-63.685 41.609-63.219L41.609-61.031Q41.609-60.613 41.316-60.350Q41.024-60.086 40.598-59.974Q40.171-59.862 39.772-59.862L39.692-59.862Q39.675-59.862 39.638-59.891Q39.600-59.919 39.600-59.941",[553],[549,1480],{"fill":542,"d":1481},"M-13.097-16.621-.03 3.364",[536,1483,1484,1490,1496],{"stroke":542,"fontSize":544},[536,1485,1487],{"transform":1486},"translate(-43.079 112.716)",[549,1488],{"d":1422,"fill":538,"stroke":538,"className":1489,"style":554},[553],[536,1491,1492],{"transform":1486},[549,1493],{"d":1494,"fill":538,"stroke":538,"className":1495,"style":554},"M37.137-62.112L34.252-62.112L34.252-62.314Q34.252-62.344 34.279-62.372L35.527-63.589Q35.599-63.664 35.641-63.706Q35.684-63.749 35.763-63.828Q36.176-64.241 36.407-64.599Q36.638-64.956 36.638-65.380Q36.638-65.612 36.559-65.815Q36.480-66.019 36.339-66.169Q36.197-66.320 36.002-66.400Q35.807-66.480 35.575-66.480Q35.264-66.480 35.006-66.321Q34.748-66.162 34.618-65.885L34.638-65.885Q34.806-65.885 34.913-65.774Q35.021-65.663 35.021-65.499Q35.021-65.342 34.912-65.229Q34.802-65.116 34.638-65.116Q34.478-65.116 34.365-65.229Q34.252-65.342 34.252-65.499Q34.252-65.875 34.460-66.162Q34.669-66.449 35.004-66.605Q35.339-66.760 35.694-66.760Q36.118-66.760 36.498-66.602Q36.877-66.443 37.111-66.126Q37.345-65.810 37.345-65.380Q37.345-65.069 37.205-64.800Q37.065-64.532 36.860-64.327Q36.655-64.122 36.292-63.840Q35.930-63.558 35.821-63.462L34.966-62.734L35.609-62.734Q35.872-62.734 36.161-62.736Q36.450-62.737 36.668-62.746Q36.887-62.755 36.904-62.772Q36.966-62.837 37.003-63.004Q37.041-63.172 37.079-63.414L37.345-63.414",[553],[536,1497,1498],{"transform":1486},[549,1499],{"d":1434,"fill":538,"stroke":538,"className":1500,"style":554},[553],[549,1502],{"fill":542,"d":1503},"m2.206 21.465-6.158 17.79",[536,1505,1506,1512,1517,1523,1529],{"stroke":542,"fontSize":544},[536,1507,1509],{"transform":1508},"translate(-21.335 112.716)",[549,1510],{"d":1422,"fill":538,"stroke":538,"className":1511,"style":554},[553],[536,1513,1514],{"transform":1508},[549,1515],{"d":1494,"fill":538,"stroke":538,"className":1516,"style":554},[553],[536,1518,1519],{"transform":1508},[549,1520],{"d":1521,"fill":538,"stroke":538,"className":1522,"style":554},"M38.665-60.882Q38.665-60.916 38.693-60.943Q38.959-61.165 39.109-61.492Q39.260-61.818 39.260-62.174L39.260-62.211Q39.157-62.112 38.986-62.112Q38.809-62.112 38.687-62.233Q38.566-62.355 38.566-62.532Q38.566-62.703 38.687-62.825Q38.809-62.946 38.986-62.946Q39.246-62.946 39.366-62.707Q39.485-62.467 39.485-62.174Q39.485-61.770 39.315-61.401Q39.144-61.032 38.846-60.776Q38.816-60.755 38.792-60.755Q38.747-60.755 38.706-60.796Q38.665-60.837 38.665-60.882",[553],[536,1524,1525],{"transform":1508},[549,1526],{"d":1527,"fill":538,"stroke":538,"className":1528,"style":554},"M42.333-62.659Q42.453-62.502 42.644-62.403Q42.836-62.303 43.051-62.264Q43.266-62.225 43.489-62.225Q43.786-62.225 43.981-62.380Q44.176-62.536 44.266-62.790Q44.357-63.045 44.357-63.329Q44.357-63.623 44.265-63.874Q44.172-64.125 43.974-64.281Q43.776-64.436 43.482-64.436L42.966-64.436Q42.938-64.436 42.913-64.462Q42.887-64.487 42.887-64.511L42.887-64.583Q42.887-64.614 42.913-64.636Q42.938-64.658 42.966-64.658L43.407-64.689Q43.769-64.689 43.989-65.046Q44.210-65.404 44.210-65.793Q44.210-66.121 44.015-66.325Q43.820-66.528 43.489-66.528Q43.202-66.528 42.949-66.444Q42.696-66.361 42.532-66.173Q42.679-66.173 42.779-66.058Q42.880-65.944 42.880-65.793Q42.880-65.643 42.774-65.533Q42.668-65.424 42.511-65.424Q42.350-65.424 42.241-65.533Q42.132-65.643 42.132-65.793Q42.132-66.118 42.340-66.337Q42.549-66.555 42.865-66.658Q43.181-66.760 43.489-66.760Q43.807-66.760 44.135-66.656Q44.463-66.552 44.690-66.330Q44.917-66.108 44.917-65.793Q44.917-65.359 44.630-65.034Q44.343-64.710 43.909-64.563Q44.220-64.498 44.500-64.332Q44.781-64.166 44.958-63.908Q45.136-63.650 45.136-63.329Q45.136-62.919 44.892-62.609Q44.647-62.300 44.266-62.136Q43.885-61.972 43.489-61.972Q43.120-61.972 42.762-62.085Q42.405-62.197 42.161-62.447Q41.916-62.696 41.916-63.066Q41.916-63.237 42.033-63.349Q42.149-63.462 42.320-63.462Q42.429-63.462 42.520-63.411Q42.610-63.360 42.665-63.267Q42.720-63.175 42.720-63.066Q42.720-62.898 42.607-62.779Q42.494-62.659 42.333-62.659",[553],[536,1530,1531],{"transform":1508},[549,1532],{"d":1533,"fill":538,"stroke":538,"className":1534,"style":554},"M46.167-60.441L46.167-60.509Q46.167-60.540 46.191-60.564Q46.214-60.588 46.245-60.588Q46.484-60.588 46.724-60.659Q46.963-60.731 47.125-60.893Q47.288-61.056 47.288-61.299L47.288-62.994Q47.288-63.336 47.534-63.553Q47.780-63.770 48.135-63.862Q47.913-63.924 47.720-64.036Q47.527-64.149 47.407-64.325Q47.288-64.501 47.288-64.730L47.288-66.425Q47.288-66.668 47.125-66.831Q46.963-66.993 46.724-67.065Q46.484-67.136 46.245-67.136Q46.214-67.136 46.191-67.160Q46.167-67.184 46.167-67.215L46.167-67.283Q46.167-67.311 46.192-67.336Q46.218-67.362 46.245-67.362L46.314-67.362Q46.649-67.362 47.004-67.282Q47.359-67.201 47.607-66.993Q47.855-66.784 47.855-66.439L47.855-64.744Q47.855-64.378 48.176-64.176Q48.498-63.975 48.891-63.975Q48.921-63.975 48.945-63.951Q48.969-63.927 48.969-63.896L48.969-63.828Q48.969-63.797 48.945-63.773Q48.921-63.749 48.891-63.749Q48.658-63.749 48.416-63.665Q48.173-63.582 48.014-63.406Q47.855-63.230 47.855-62.980L47.855-61.285Q47.855-60.940 47.607-60.731Q47.359-60.523 47.004-60.442Q46.649-60.362 46.314-60.362L46.245-60.362Q46.218-60.362 46.192-60.388Q46.167-60.413 46.167-60.441",[553],[549,1536],{"fill":542,"d":1537},"m8.851 21.465 5.546 16.02",[536,1539,1541],{"transform":1540},"translate(-31.181 57.322)",[549,1542],{"d":1543,"fill":538,"stroke":538,"className":1544,"style":554},"M32.611-61.432L32.611-63.688L30.362-63.688Q30.294-63.698 30.248-63.744Q30.202-63.790 30.202-63.862Q30.202-64.006 30.362-64.029L32.611-64.029L32.611-66.285Q32.622-66.354 32.668-66.400Q32.714-66.446 32.786-66.446Q32.929-66.446 32.953-66.285L32.953-64.029L35.195-64.029Q35.356-64.006 35.356-63.862Q35.356-63.790 35.310-63.744Q35.264-63.698 35.195-63.688L32.953-63.688L32.953-61.432Q32.929-61.271 32.786-61.271Q32.714-61.271 32.668-61.317Q32.622-61.363 32.611-61.432M39.177-62.112L36.293-62.112L36.293-62.314Q36.293-62.344 36.320-62.372L37.567-63.589Q37.639-63.664 37.682-63.706Q37.725-63.749 37.803-63.828Q38.217-64.241 38.448-64.599Q38.678-64.956 38.678-65.380Q38.678-65.612 38.600-65.815Q38.521-66.019 38.379-66.169Q38.237-66.320 38.043-66.400Q37.848-66.480 37.615-66.480Q37.304-66.480 37.046-66.321Q36.788-66.162 36.658-65.885L36.679-65.885Q36.846-65.885 36.954-65.774Q37.062-65.663 37.062-65.499Q37.062-65.342 36.952-65.229Q36.843-65.116 36.679-65.116Q36.518-65.116 36.405-65.229Q36.293-65.342 36.293-65.499Q36.293-65.875 36.501-66.162Q36.710-66.449 37.045-66.605Q37.380-66.760 37.735-66.760Q38.159-66.760 38.538-66.602Q38.918-66.443 39.152-66.126Q39.386-65.810 39.386-65.380Q39.386-65.069 39.246-64.800Q39.106-64.532 38.901-64.327Q38.695-64.122 38.333-63.840Q37.971-63.558 37.861-63.462L37.007-62.734L37.650-62.734Q37.913-62.734 38.202-62.736Q38.490-62.737 38.709-62.746Q38.928-62.755 38.945-62.772Q39.006-62.837 39.044-63.004Q39.082-63.172 39.119-63.414L39.386-63.414",[553],[536,1546,1547,1553],{"stroke":542,"fontSize":544},[536,1548,1550],{"transform":1549},"translate(-39.461 20.333)",[549,1551],{"d":1446,"fill":538,"stroke":538,"className":1552,"style":554},[553],[536,1554,1555],{"transform":1549},[549,1556],{"d":1557,"fill":538,"stroke":538,"className":1558,"style":554},"M39.289-62.112L36.759-62.112L36.759-62.392Q37.727-62.392 37.727-62.601L37.727-66.220Q37.334-66.032 36.712-66.032L36.712-66.313Q37.129-66.313 37.493-66.414Q37.857-66.514 38.113-66.760L38.239-66.760Q38.304-66.743 38.321-66.675L38.321-62.601Q38.321-62.392 39.289-62.392",[553],[536,1560,1561,1564],{"stroke":611},[549,1562],{"fill":542,"d":1563},"M88.041-25.123c0-5.5-4.458-9.958-9.958-9.958s-9.958 4.458-9.958 9.958 4.458 9.958 9.958 9.958 9.958-4.458 9.958-9.958Zm-9.958 0",[536,1565,1566,1572,1578],{"fill":611,"stroke":542,"fontSize":1459},[536,1567,1569],{"transform":1568},"translate(41.432 39.239)",[549,1570],{"d":1465,"fill":611,"stroke":611,"className":1571,"style":571},[553],[536,1573,1574],{"transform":1568},[549,1575],{"d":1576,"fill":611,"stroke":611,"className":1577,"style":571},"M38.245-62.112L35.213-62.112L35.213-62.428Q36.364-62.428 36.364-62.723L36.364-67.447Q35.876-67.214 35.155-67.214L35.155-67.530Q36.285-67.530 36.847-68.106L36.992-68.106Q37.027-68.106 37.060-68.073Q37.093-68.040 37.093-68.005L37.093-62.723Q37.093-62.428 38.245-62.428",[553],[536,1579,1580],{"transform":1568},[549,1581],{"d":1477,"fill":611,"stroke":611,"className":1582,"style":571},[553],[536,1584,1585,1588,1606,1609,1628,1631,1659,1662,1675,1678,1709,1712,1741,1744,1785,1788,1794],{"stroke":611},[549,1586],{"fill":542,"d":1587},"m37.782-55.941 32.232 24.648M63.857 11.866c0-5.5-4.459-9.959-9.959-9.959s-9.958 4.459-9.958 9.959 4.458 9.958 9.958 9.958 9.959-4.458 9.959-9.958Zm-9.959 0",[536,1589,1590,1596,1601],{"stroke":542,"fontSize":1459},[536,1591,1593],{"transform":1592},"translate(17.247 76.227)",[549,1594],{"d":1465,"fill":538,"stroke":538,"className":1595,"style":571},[553],[536,1597,1598],{"transform":1592},[549,1599],{"d":1576,"fill":538,"stroke":538,"className":1600,"style":571},[553],[536,1602,1603],{"transform":1592},[549,1604],{"d":1477,"fill":538,"stroke":538,"className":1605,"style":571},[553],[549,1607],{"fill":542,"d":1608},"M72.524-16.621 59.457 3.364",[536,1610,1611,1617,1623],{"stroke":542,"fontSize":544},[536,1612,1614],{"transform":1613},"translate(5.29 112.716)",[549,1615],{"d":1422,"fill":538,"stroke":538,"className":1616,"style":554},[553],[536,1618,1619],{"transform":1613},[549,1620],{"d":1621,"fill":538,"stroke":538,"className":1622,"style":554},"M37.137-62.112L34.607-62.112L34.607-62.392Q35.575-62.392 35.575-62.601L35.575-66.220Q35.182-66.032 34.560-66.032L34.560-66.313Q34.977-66.313 35.341-66.414Q35.705-66.514 35.961-66.760L36.087-66.760Q36.152-66.743 36.169-66.675L36.169-62.601Q36.169-62.392 37.137-62.392",[553],[536,1624,1625],{"transform":1613},[549,1626],{"d":1434,"fill":538,"stroke":538,"className":1627,"style":554},[553],[549,1629],{"fill":542,"d":1630},"m50.575 21.465-6.158 17.79",[536,1632,1633,1639,1644,1649,1654],{"stroke":542,"fontSize":544},[536,1634,1636],{"transform":1635},"translate(27.035 112.716)",[549,1637],{"d":1422,"fill":538,"stroke":538,"className":1638,"style":554},[553],[536,1640,1641],{"transform":1635},[549,1642],{"d":1621,"fill":538,"stroke":538,"className":1643,"style":554},[553],[536,1645,1646],{"transform":1635},[549,1647],{"d":1521,"fill":538,"stroke":538,"className":1648,"style":554},[553],[536,1650,1651],{"transform":1635},[549,1652],{"d":1527,"fill":538,"stroke":538,"className":1653,"style":554},[553],[536,1655,1656],{"transform":1635},[549,1657],{"d":1533,"fill":538,"stroke":538,"className":1658,"style":554},[553],[549,1660],{"fill":542,"d":1661},"m57.22 21.465 5.546 16.02",[536,1663,1664,1670],{"stroke":542,"fontSize":544},[536,1665,1667],{"transform":1666},"translate(21 57.322)",[549,1668],{"d":1446,"fill":538,"stroke":538,"className":1669,"style":554},[553],[536,1671,1672],{"transform":1666},[549,1673],{"d":1452,"fill":538,"stroke":538,"className":1674,"style":554},[553],[549,1676],{"fill":542,"d":1677},"M115.73 11.866c0-7.436-6.027-13.463-13.462-13.463S88.805 4.43 88.805 11.866s6.028 13.462 13.463 13.462 13.462-6.027 13.462-13.462Zm-13.462 0",[536,1679,1680,1686,1691,1697,1703],{"fill":611,"stroke":542,"fontSize":1459},[536,1681,1683],{"transform":1682},"translate(61.25 76.227)",[549,1684],{"d":1465,"fill":611,"stroke":611,"className":1685,"style":571},[553],[536,1687,1688],{"transform":1682},[549,1689],{"d":1576,"fill":611,"stroke":611,"className":1690,"style":571},[553],[536,1692,1693],{"transform":1682},[549,1694],{"d":1695,"fill":611,"stroke":611,"className":1696,"style":571},"M39.864-60.508Q39.864-60.548 39.899-60.583Q40.224-60.895 40.404-61.301Q40.585-61.708 40.585-62.156L40.585-62.239Q40.444-62.112 40.242-62.112Q40.097-62.112 39.983-62.178Q39.868-62.244 39.802-62.356Q39.736-62.468 39.736-62.617Q39.736-62.837 39.877-62.978Q40.018-63.118 40.242-63.118Q40.563-63.118 40.703-62.820Q40.844-62.521 40.844-62.156Q40.844-61.646 40.640-61.191Q40.435-60.737 40.070-60.385Q40.035-60.367 40.009-60.367Q39.952-60.367 39.908-60.411Q39.864-60.455 39.864-60.508",[553],[536,1698,1699],{"transform":1682},[549,1700],{"d":1701,"fill":611,"stroke":611,"className":1702,"style":571},"M46.981-62.112L43.531-62.112L43.531-62.345Q43.531-62.358 43.562-62.389L45.016-63.966Q45.482-64.463 45.735-64.768Q45.988-65.074 46.179-65.485Q46.370-65.896 46.370-66.335Q46.370-66.924 46.047-67.357Q45.724-67.790 45.144-67.790Q44.880-67.790 44.634-67.680Q44.388-67.570 44.212-67.383Q44.036-67.196 43.940-66.946L44.019-66.946Q44.221-66.946 44.364-66.810Q44.507-66.674 44.507-66.458Q44.507-66.252 44.364-66.113Q44.221-65.975 44.019-65.975Q43.817-65.975 43.674-66.118Q43.531-66.260 43.531-66.458Q43.531-66.920 43.768-67.293Q44.006-67.667 44.406-67.886Q44.805-68.106 45.254-68.106Q45.777-68.106 46.231-67.891Q46.686-67.675 46.959-67.276Q47.231-66.876 47.231-66.335Q47.231-65.940 47.060-65.586Q46.888-65.232 46.623-64.953Q46.357-64.674 45.906-64.289Q45.456-63.905 45.377-63.830L44.353-62.868L45.170-62.868Q45.821-62.868 46.258-62.879Q46.695-62.890 46.726-62.912Q46.796-62.995 46.851-63.235Q46.906-63.474 46.946-63.742L47.231-63.742",[553],[536,1704,1705],{"transform":1682},[549,1706],{"d":1707,"fill":611,"stroke":611,"className":1708,"style":571},"M48.336-59.941L48.336-60.042Q48.336-60.073 48.367-60.097Q48.398-60.121 48.428-60.121Q48.736-60.121 49.020-60.229Q49.303-60.337 49.488-60.550Q49.672-60.763 49.672-61.066L49.672-63.255Q49.672-63.545 49.822-63.767Q49.971-63.988 50.213-64.138Q50.454-64.287 50.731-64.362Q50.274-64.494 49.973-64.775Q49.672-65.056 49.672-65.469L49.672-67.658Q49.672-67.961 49.488-68.174Q49.303-68.387 49.020-68.495Q48.736-68.603 48.428-68.603Q48.411-68.603 48.374-68.631Q48.336-68.660 48.336-68.682L48.336-68.783Q48.336-68.814 48.367-68.838Q48.398-68.862 48.428-68.862L48.508-68.862Q48.907-68.862 49.334-68.750Q49.760-68.638 50.052-68.374Q50.345-68.111 50.345-67.693L50.345-65.505Q50.345-65.188 50.525-64.960Q50.705-64.731 50.995-64.615Q51.285-64.498 51.588-64.498Q51.615-64.498 51.645-64.472Q51.676-64.445 51.676-64.415L51.676-64.318Q51.676-64.283 51.647-64.259Q51.619-64.235 51.588-64.235Q51.105-64.235 50.725-63.960Q50.345-63.685 50.345-63.219L50.345-61.031Q50.345-60.613 50.052-60.350Q49.760-60.086 49.334-59.974Q48.907-59.862 48.508-59.862L48.428-59.862Q48.411-59.862 48.374-59.891Q48.336-59.919 48.336-59.941",[553],[549,1710],{"fill":542,"d":1711},"M83.642-16.621 94.792.43",[536,1713,1714,1720,1725,1730,1736],{"stroke":542,"fontSize":544},[536,1715,1717],{"transform":1716},"translate(49.797 112.716)",[549,1718],{"d":1422,"fill":538,"stroke":538,"className":1719,"style":554},[553],[536,1721,1722],{"transform":1716},[549,1723],{"d":1621,"fill":538,"stroke":538,"className":1724,"style":554},[553],[536,1726,1727],{"transform":1716},[549,1728],{"d":1521,"fill":538,"stroke":538,"className":1729,"style":554},[553],[536,1731,1732],{"transform":1716},[549,1733],{"d":1734,"fill":538,"stroke":538,"className":1735,"style":554},"M44.863-62.112L41.978-62.112L41.978-62.314Q41.978-62.344 42.005-62.372L43.253-63.589Q43.325-63.664 43.367-63.706Q43.410-63.749 43.489-63.828Q43.902-64.241 44.133-64.599Q44.364-64.956 44.364-65.380Q44.364-65.612 44.285-65.815Q44.206-66.019 44.065-66.169Q43.923-66.320 43.728-66.400Q43.533-66.480 43.301-66.480Q42.990-66.480 42.732-66.321Q42.474-66.162 42.344-65.885L42.364-65.885Q42.532-65.885 42.639-65.774Q42.747-65.663 42.747-65.499Q42.747-65.342 42.638-65.229Q42.528-65.116 42.364-65.116Q42.204-65.116 42.091-65.229Q41.978-65.342 41.978-65.499Q41.978-65.875 42.186-66.162Q42.395-66.449 42.730-66.605Q43.065-66.760 43.420-66.760Q43.844-66.760 44.224-66.602Q44.603-66.443 44.837-66.126Q45.071-65.810 45.071-65.380Q45.071-65.069 44.931-64.800Q44.791-64.532 44.586-64.327Q44.381-64.122 44.018-63.840Q43.656-63.558 43.547-63.462L42.692-62.734L43.335-62.734Q43.598-62.734 43.887-62.736Q44.176-62.737 44.394-62.746Q44.613-62.755 44.630-62.772Q44.692-62.837 44.729-63.004Q44.767-63.172 44.805-63.414L45.071-63.414",[553],[536,1737,1738],{"transform":1716},[549,1739],{"d":1533,"fill":538,"stroke":538,"className":1740,"style":554},[553],[549,1742],{"fill":542,"d":1743},"m97.8 24.776-4.4 12.709M130.554 48.854c0-8.55-6.932-15.482-15.482-15.482-8.551 0-15.483 6.931-15.483 15.482s6.932 15.482 15.483 15.482 15.482-6.931 15.482-15.482Zm-15.482 0",[536,1745,1746,1752,1757,1762,1767,1773,1779],{"fill":611,"stroke":542,"fontSize":544},[536,1747,1749],{"transform":1748},"translate(71.541 112.716)",[549,1750],{"d":1422,"fill":611,"stroke":611,"className":1751,"style":554},[553],[536,1753,1754],{"transform":1748},[549,1755],{"d":1621,"fill":611,"stroke":611,"className":1756,"style":554},[553],[536,1758,1759],{"transform":1748},[549,1760],{"d":1521,"fill":611,"stroke":611,"className":1761,"style":554},[553],[536,1763,1764],{"transform":1748},[549,1765],{"d":1734,"fill":611,"stroke":611,"className":1766,"style":554},[553],[536,1768,1769],{"transform":1748},[549,1770],{"d":1771,"fill":611,"stroke":611,"className":1772,"style":554},"M46.392-60.882Q46.392-60.916 46.420-60.943Q46.686-61.165 46.837-61.492Q46.987-61.818 46.987-62.174L46.987-62.211Q46.884-62.112 46.713-62.112Q46.536-62.112 46.414-62.233Q46.293-62.355 46.293-62.532Q46.293-62.703 46.414-62.825Q46.536-62.946 46.713-62.946Q46.973-62.946 47.093-62.707Q47.212-62.467 47.212-62.174Q47.212-61.770 47.042-61.401Q46.871-61.032 46.573-60.776Q46.543-60.755 46.519-60.755Q46.474-60.755 46.433-60.796Q46.392-60.837 46.392-60.882",[553],[536,1774,1775],{"transform":1748},[549,1776],{"d":1777,"fill":611,"stroke":611,"className":1778,"style":554},"M50.060-62.659Q50.180-62.502 50.371-62.403Q50.563-62.303 50.778-62.264Q50.993-62.225 51.216-62.225Q51.513-62.225 51.708-62.380Q51.903-62.536 51.993-62.790Q52.084-63.045 52.084-63.329Q52.084-63.623 51.992-63.874Q51.899-64.125 51.701-64.281Q51.503-64.436 51.209-64.436L50.693-64.436Q50.665-64.436 50.640-64.462Q50.614-64.487 50.614-64.511L50.614-64.583Q50.614-64.614 50.640-64.636Q50.665-64.658 50.693-64.658L51.134-64.689Q51.496-64.689 51.716-65.046Q51.937-65.404 51.937-65.793Q51.937-66.121 51.742-66.325Q51.547-66.528 51.216-66.528Q50.929-66.528 50.676-66.444Q50.423-66.361 50.259-66.173Q50.406-66.173 50.506-66.058Q50.607-65.944 50.607-65.793Q50.607-65.643 50.501-65.533Q50.395-65.424 50.238-65.424Q50.077-65.424 49.968-65.533Q49.859-65.643 49.859-65.793Q49.859-66.118 50.067-66.337Q50.276-66.555 50.592-66.658Q50.908-66.760 51.216-66.760Q51.534-66.760 51.862-66.656Q52.190-66.552 52.417-66.330Q52.644-66.108 52.644-65.793Q52.644-65.359 52.357-65.034Q52.070-64.710 51.636-64.563Q51.947-64.498 52.227-64.332Q52.508-64.166 52.685-63.908Q52.863-63.650 52.863-63.329Q52.863-62.919 52.619-62.609Q52.374-62.300 51.993-62.136Q51.612-61.972 51.216-61.972Q50.847-61.972 50.489-62.085Q50.132-62.197 49.888-62.447Q49.643-62.696 49.643-63.066Q49.643-63.237 49.760-63.349Q49.876-63.462 50.047-63.462Q50.156-63.462 50.247-63.411Q50.337-63.360 50.392-63.267Q50.447-63.175 50.447-63.066Q50.447-62.898 50.334-62.779Q50.221-62.659 50.060-62.659",[553],[536,1780,1781],{"transform":1748},[549,1782],{"d":1783,"fill":611,"stroke":611,"className":1784,"style":554},"M53.893-60.441L53.893-60.509Q53.893-60.540 53.917-60.564Q53.940-60.588 53.971-60.588Q54.210-60.588 54.450-60.659Q54.689-60.731 54.851-60.893Q55.014-61.056 55.014-61.299L55.014-62.994Q55.014-63.336 55.260-63.553Q55.506-63.770 55.861-63.862Q55.639-63.924 55.446-64.036Q55.253-64.149 55.133-64.325Q55.014-64.501 55.014-64.730L55.014-66.425Q55.014-66.668 54.851-66.831Q54.689-66.993 54.450-67.065Q54.210-67.136 53.971-67.136Q53.940-67.136 53.917-67.160Q53.893-67.184 53.893-67.215L53.893-67.283Q53.893-67.311 53.918-67.336Q53.944-67.362 53.971-67.362L54.040-67.362Q54.375-67.362 54.730-67.282Q55.085-67.201 55.333-66.993Q55.581-66.784 55.581-66.439L55.581-64.744Q55.581-64.378 55.902-64.176Q56.224-63.975 56.617-63.975Q56.647-63.975 56.671-63.951Q56.695-63.927 56.695-63.896L56.695-63.828Q56.695-63.797 56.671-63.773Q56.647-63.749 56.617-63.749Q56.384-63.749 56.142-63.665Q55.899-63.582 55.740-63.406Q55.581-63.230 55.581-62.980L55.581-61.285Q55.581-60.940 55.333-60.731Q55.085-60.523 54.730-60.442Q54.375-60.362 54.040-60.362L53.971-60.362Q53.944-60.362 53.918-60.388Q53.893-60.413 53.893-60.441",[553],[549,1786],{"fill":542,"d":1787},"m106.737 24.776 3.205 9.26",[536,1789,1791],{"transform":1790},"translate(64.6 55.855)",[549,1792],{"d":1543,"fill":538,"stroke":538,"className":1793,"style":554},[553],[536,1795,1797],{"transform":1796},"translate(29.28 20.333)",[549,1798],{"d":1799,"fill":538,"stroke":538,"className":1800,"style":554},"M32.611-61.432L32.611-63.688L30.362-63.688Q30.294-63.698 30.248-63.744Q30.202-63.790 30.202-63.862Q30.202-64.006 30.362-64.029L32.611-64.029L32.611-66.285Q32.622-66.354 32.668-66.400Q32.714-66.446 32.786-66.446Q32.929-66.446 32.953-66.285L32.953-64.029L35.195-64.029Q35.356-64.006 35.356-63.862Q35.356-63.790 35.310-63.744Q35.264-63.698 35.195-63.688L32.953-63.688L32.953-61.432Q32.929-61.271 32.786-61.271Q32.714-61.271 32.668-61.317Q32.622-61.363 32.611-61.432M39.177-62.112L36.648-62.112L36.648-62.392Q37.615-62.392 37.615-62.601L37.615-66.220Q37.222-66.032 36.600-66.032L36.600-66.313Q37.017-66.313 37.381-66.414Q37.745-66.514 38.002-66.760L38.128-66.760Q38.193-66.743 38.210-66.675L38.210-62.601Q38.210-62.392 39.177-62.392",[553],[830,1802,1804,1805],{"className":1803},[833],"DFS over the include\u002Fexclude choice tree for subsets of ",[836,1806,1808],{"className":1807},[839],[836,1809,1811],{"className":1810,"ariaHidden":844},[843],[836,1812,1814,1817,1820,1823,1826,1829,1832,1835,1838,1842],{"className":1813},[848],[836,1815],{"className":1816,"style":1074},[852],[836,1818,1079],{"className":1819},[1078],[836,1821,414],{"className":1822},[857],[836,1824,1131],{"className":1825},[1130],[836,1827],{"className":1828,"style":1136},[1135],[836,1830,470],{"className":1831},[857],[836,1833,1131],{"className":1834},[1130],[836,1836],{"className":1837,"style":1136},[1135],[836,1839,1841],{"className":1840},[857],"3",[836,1843,1207],{"className":1844},[1206],[381,1846,1847,1848,1851,1852,1855,1856,1976,1977,1980],{},"An equivalent and often handier formulation uses a ",[394,1849,1850],{},"start index"," so that ",[389,1853,1854],{},"every\nnode",", not only the leaves, is a valid subset. We loop over choices ",[836,1857,1859],{"className":1858},[839],[836,1860,1862],{"className":1861,"ariaHidden":844},[843],[836,1863,1865,1869,1911,1914,1917,1967,1970,1973],{"className":1864},[848],[836,1866],{"className":1867,"style":1868},[852],"height:0.6389em;vertical-align:-0.2083em;",[836,1870,1872,1875],{"className":1871},[857],[836,1873,384],{"className":1874},[857,858],[836,1876,1878],{"className":1877},[1023],[836,1879,1881,1903],{"className":1880},[1027,1092],[836,1882,1884,1900],{"className":1883},[1031],[836,1885,1888],{"className":1886,"style":1887},[1035],"height:0.3117em;",[836,1889,1890,1893],{"style":1102},[836,1891],{"className":1892,"style":1043},[1042],[836,1894,1896],{"className":1895},[1047,1048,1049,1050],[836,1897,1899],{"className":1898},[857,858,1050],"i",[836,1901,1117],{"className":1902},[1116],[836,1904,1906],{"className":1905},[1031],[836,1907,1909],{"className":1908,"style":1124},[1035],[836,1910],{},[836,1912,1131],{"className":1913},[1130],[836,1915],{"className":1916,"style":1136},[1135],[836,1918,1920,1923],{"className":1919},[857],[836,1921,384],{"className":1922},[857,858],[836,1924,1926],{"className":1925},[1023],[836,1927,1929,1959],{"className":1928},[1027,1092],[836,1930,1932,1956],{"className":1931},[1031],[836,1933,1935],{"className":1934,"style":1887},[1035],[836,1936,1937,1940],{"style":1102},[836,1938],{"className":1939,"style":1043},[1042],[836,1941,1943],{"className":1942},[1047,1048,1049,1050],[836,1944,1946,1949,1953],{"className":1945},[857,1050],[836,1947,1899],{"className":1948},[857,858,1050],[836,1950,1952],{"className":1951},[1186,1050],"+",[836,1954,414],{"className":1955},[857,1050],[836,1957,1117],{"className":1958},[1116],[836,1960,1962],{"className":1961},[1031],[836,1963,1965],{"className":1964,"style":1200},[1035],[836,1966],{},[836,1968,1131],{"className":1969},[1130],[836,1971],{"className":1972,"style":1136},[1135],[836,1974,1141],{"className":1975},[1140],", and each recursion only ever looks ",[389,1978,1979],{},"forward"," from the chosen index, which\nguarantees we generate each subset once, in lexicographic order of indices:",[862,1982,1984],{"className":864,"code":1983,"language":866,"meta":376,"style":376},"caption: $\\textsc{Subsets}(a, start, partial)$ — emit every node, advance start\nrecord a copy of $partial$ \u002F\u002F every node is a subset\nfor $i \\gets start$ to $n-1$ do\n  $partial.\\text{push}(a_i)$ \u002F\u002F choose $a_i$\n  $\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F forward only\n  $partial.\\text{pop}()$ \u002F\u002F un-choose\n",[483,1985,1986,1991,1996,2001,2006,2011],{"__ignoreMap":376},[836,1987,1988],{"class":871,"line":6},[836,1989,1990],{},"caption: $\\textsc{Subsets}(a, start, partial)$ — emit every node, advance start\n",[836,1992,1993],{"class":871,"line":18},[836,1994,1995],{},"record a copy of $partial$ \u002F\u002F every node is a subset\n",[836,1997,1998],{"class":871,"line":24},[836,1999,2000],{},"for $i \\gets start$ to $n-1$ do\n",[836,2002,2003],{"class":871,"line":73},[836,2004,2005],{},"  $partial.\\text{push}(a_i)$ \u002F\u002F choose $a_i$\n",[836,2007,2008],{"class":871,"line":102},[836,2009,2010],{},"  $\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F forward only\n",[836,2012,2013],{"class":871,"line":108},[836,2014,2015],{},"  $partial.\\text{pop}()$ \u002F\u002F un-choose\n",[381,2017,2018,2019,2055,2056,2086,2087,2102,2103,2118,2119,2102,2134,2149,2150,2153,2154,2208,2209,2233,2234,2304],{},"Advancing the start index to ",[836,2020,2022],{"className":2021},[839],[836,2023,2025,2045],{"className":2024,"ariaHidden":844},[843],[836,2026,2028,2032,2035,2039,2042],{"className":2027},[848],[836,2029],{"className":2030,"style":2031},[852],"height:0.7429em;vertical-align:-0.0833em;",[836,2033,1899],{"className":2034},[857,858],[836,2036],{"className":2037,"style":2038},[1135],"margin-right:0.2222em;",[836,2040,1952],{"className":2041},[1186],[836,2043],{"className":2044,"style":2038},[1135],[836,2046,2048,2052],{"className":2047},[848],[836,2049],{"className":2050,"style":2051},[852],"height:0.6444em;",[836,2053,414],{"className":2054},[857]," in the recursive call is what stops the same\nsubset ",[836,2057,2059],{"className":2058},[839],[836,2060,2062],{"className":2061,"ariaHidden":844},[843],[836,2063,2065,2068,2071,2074,2077,2080,2083],{"className":2064},[848],[836,2066],{"className":2067,"style":1074},[852],[836,2069,1079],{"className":2070},[1078],[836,2072,414],{"className":2073},[857],[836,2075,1131],{"className":2076},[1130],[836,2078],{"className":2079,"style":1136},[1135],[836,2081,470],{"className":2082},[857],[836,2084,1207],{"className":2085},[1206]," from being generated twice, once as ",[836,2088,2090],{"className":2089},[839],[836,2091,2093],{"className":2092,"ariaHidden":844},[843],[836,2094,2096,2099],{"className":2095},[848],[836,2097],{"className":2098,"style":2051},[852],[836,2100,414],{"className":2101},[857],"-then-",[836,2104,2106],{"className":2105},[839],[836,2107,2109],{"className":2108,"ariaHidden":844},[843],[836,2110,2112,2115],{"className":2111},[848],[836,2113],{"className":2114,"style":2051},[852],[836,2116,470],{"className":2117},[857]," and once as\n",[836,2120,2122],{"className":2121},[839],[836,2123,2125],{"className":2124,"ariaHidden":844},[843],[836,2126,2128,2131],{"className":2127},[848],[836,2129],{"className":2130,"style":2051},[852],[836,2132,470],{"className":2133},[857],[836,2135,2137],{"className":2136},[839],[836,2138,2140],{"className":2139,"ariaHidden":844},[843],[836,2141,2143,2146],{"className":2142},[848],[836,2144],{"className":2145,"style":2051},[852],[836,2147,414],{"className":2148},[857],": an element earlier in the array is never chosen ",[389,2151,2152],{},"after"," a later one. Both formulations do ",[836,2155,2157],{"className":2156},[839],[836,2158,2160],{"className":2159,"ariaHidden":844},[843],[836,2161,2163,2166,2171,2175,2204],{"className":2162},[848],[836,2164],{"className":2165,"style":1074},[852],[836,2167,2170],{"className":2168,"style":2169},[857,858],"margin-right:0.0278em;","O",[836,2172,2174],{"className":2173},[1078],"(",[836,2176,2178,2181],{"className":2177},[857],[836,2179,470],{"className":2180},[857],[836,2182,2184],{"className":2183},[1023],[836,2185,2187],{"className":2186},[1027],[836,2188,2190],{"className":2189},[1031],[836,2191,2193],{"className":2192,"style":1013},[1035],[836,2194,2195,2198],{"style":1038},[836,2196],{"className":2197,"style":1043},[1042],[836,2199,2201],{"className":2200},[1047,1048,1049,1050],[836,2202,1054],{"className":2203},[857,858,1050],[836,2205,2207],{"className":2206},[1206],")"," recursive calls\nand spend ",[836,2210,2212],{"className":2211},[839],[836,2213,2215],{"className":2214,"ariaHidden":844},[843],[836,2216,2218,2221,2224,2227,2230],{"className":2217},[848],[836,2219],{"className":2220,"style":1074},[852],[836,2222,2170],{"className":2223,"style":2169},[857,858],[836,2225,2174],{"className":2226},[1078],[836,2228,1054],{"className":2229},[857,858],[836,2231,2207],{"className":2232},[1206]," to copy each emitted subset, for ",[836,2235,2237],{"className":2236},[839],[836,2238,2240,2266],{"className":2239,"ariaHidden":844},[843],[836,2241,2243,2246,2250,2253,2256,2259,2263],{"className":2242},[848],[836,2244],{"className":2245,"style":1074},[852],[836,2247,2249],{"className":2248},[857],"Θ",[836,2251,2174],{"className":2252},[1078],[836,2254,1054],{"className":2255},[857,858],[836,2257],{"className":2258,"style":2038},[1135],[836,2260,2262],{"className":2261},[1186],"⋅",[836,2264],{"className":2265,"style":2038},[1135],[836,2267,2269,2272,2301],{"className":2268},[848],[836,2270],{"className":2271,"style":1074},[852],[836,2273,2275,2278],{"className":2274},[857],[836,2276,470],{"className":2277},[857],[836,2279,2281],{"className":2280},[1023],[836,2282,2284],{"className":2283},[1027],[836,2285,2287],{"className":2286},[1031],[836,2288,2290],{"className":2289,"style":1013},[1035],[836,2291,2292,2295],{"style":1038},[836,2293],{"className":2294,"style":1043},[1042],[836,2296,2298],{"className":2297},[1047,1048,1049,1050],[836,2299,1054],{"className":2300},[857,858,1050],[836,2302,2207],{"className":2303},[1206]," total,\nunavoidable, since the output itself has that size.",[432,2306,2308,2309,2328],{"id":2307},"permutations-n-orderings","Permutations: ",[836,2310,2312],{"className":2311},[839],[836,2313,2315],{"className":2314,"ariaHidden":844},[843],[836,2316,2318,2321,2324],{"className":2317},[848],[836,2319],{"className":2320,"style":962},[852],[836,2322,1054],{"className":2323},[857,858],[836,2325,2327],{"className":2326},[1206],"!"," orderings",[381,2330,2331,2332,2335,2336,2356,2357,2360,2361,2364,2365,2380,2381,2415,2416,2449,2450,2545],{},"A ",[394,2333,2334],{},"permutation"," uses every element, so completeness is ",[2337,2338,2339,2340,2355],"q",{},"all ",[836,2341,2343],{"className":2342},[839],[836,2344,2346],{"className":2345,"ariaHidden":844},[843],[836,2347,2349,2352],{"className":2348},[848],[836,2350],{"className":2351,"style":853},[852],[836,2353,1054],{"className":2354},[857,858]," chosen,"," and the\nvalid choices at each step are the elements ",[389,2358,2359],{},"not yet used",". We track membership\nwith a boolean ",[483,2362,2363],{},"used[]"," array; the branching factor shrinks from ",[836,2366,2368],{"className":2367},[839],[836,2369,2371],{"className":2370,"ariaHidden":844},[843],[836,2372,2374,2377],{"className":2373},[848],[836,2375],{"className":2376,"style":853},[852],[836,2378,1054],{"className":2379},[857,858]," at the root\nto ",[836,2382,2384],{"className":2383},[839],[836,2385,2387,2406],{"className":2386,"ariaHidden":844},[843],[836,2388,2390,2394,2397,2400,2403],{"className":2389},[848],[836,2391],{"className":2392,"style":2393},[852],"height:0.6667em;vertical-align:-0.0833em;",[836,2395,1054],{"className":2396},[857,858],[836,2398],{"className":2399,"style":2038},[1135],[836,2401,1187],{"className":2402},[1186],[836,2404],{"className":2405,"style":2038},[1135],[836,2407,2409,2412],{"className":2408},[848],[836,2410],{"className":2411,"style":2051},[852],[836,2413,414],{"className":2414},[857],", then ",[836,2417,2419],{"className":2418},[839],[836,2420,2422,2440],{"className":2421,"ariaHidden":844},[843],[836,2423,2425,2428,2431,2434,2437],{"className":2424},[848],[836,2426],{"className":2427,"style":2393},[852],[836,2429,1054],{"className":2430},[857,858],[836,2432],{"className":2433,"style":2038},[1135],[836,2435,1187],{"className":2436},[1186],[836,2438],{"className":2439,"style":2038},[1135],[836,2441,2443,2446],{"className":2442},[848],[836,2444],{"className":2445,"style":2051},[852],[836,2447,470],{"className":2448},[857],", giving exactly ",[836,2451,2453],{"className":2452},[839],[836,2454,2456,2475,2496,2533],{"className":2455,"ariaHidden":844},[843],[836,2457,2459,2463,2466,2469,2472],{"className":2458},[848],[836,2460],{"className":2461,"style":2462},[852],"height:0.4445em;",[836,2464,1054],{"className":2465},[857,858],[836,2467],{"className":2468,"style":2038},[1135],[836,2470,2262],{"className":2471},[1186],[836,2473],{"className":2474,"style":2038},[1135],[836,2476,2478,2481,2484,2487,2490,2493],{"className":2477},[848],[836,2479],{"className":2480,"style":1074},[852],[836,2482,2174],{"className":2483},[1078],[836,2485,1054],{"className":2486},[857,858],[836,2488],{"className":2489,"style":2038},[1135],[836,2491,1187],{"className":2492},[1186],[836,2494],{"className":2495,"style":2038},[1135],[836,2497,2499,2502,2505,2508,2511,2515,2518,2521,2525,2530],{"className":2498},[848],[836,2500],{"className":2501,"style":1074},[852],[836,2503,414],{"className":2504},[857],[836,2506,2207],{"className":2507},[1206],[836,2509],{"className":2510,"style":1136},[1135],[836,2512,2514],{"className":2513},[1140],"⋯",[836,2516],{"className":2517,"style":1136},[1135],[836,2519,414],{"className":2520},[857],[836,2522],{"className":2523,"style":2524},[1135],"margin-right:0.2778em;",[836,2526,2529],{"className":2527},[2528],"mrel","=",[836,2531],{"className":2532,"style":2524},[1135],[836,2534,2536,2539,2542],{"className":2535},[848],[836,2537],{"className":2538,"style":962},[852],[836,2540,1054],{"className":2541},[857,858],[836,2543,2327],{"className":2544},[1206]," leaves.",[862,2547,2549],{"className":864,"code":2548,"language":866,"meta":376,"style":376},"caption: $\\textsc{Permute}(a, used, partial)$ — pick an unused element each step\nif $|partial| = n$ then\n  record a copy of $partial$\n  return\nfor $i \\gets 0$ to $n-1$ do\n  if $used[i]$ then continue \u002F\u002F not a valid choice\n  $used[i] \\gets \\text{true}$; $partial.\\text{push}(a_i)$ \u002F\u002F choose\n  $\\textsc{Permute}(a, used, partial)$ \u002F\u002F explore\n  $partial.\\text{pop}()$; $used[i] \\gets \\text{false}$ \u002F\u002F un-choose\n",[483,2550,2551,2556,2561,2565,2569,2574,2579,2584,2589],{"__ignoreMap":376},[836,2552,2553],{"class":871,"line":6},[836,2554,2555],{},"caption: $\\textsc{Permute}(a, used, partial)$ — pick an unused element each step\n",[836,2557,2558],{"class":871,"line":18},[836,2559,2560],{},"if $|partial| = n$ then\n",[836,2562,2563],{"class":871,"line":24},[836,2564,884],{},[836,2566,2567],{"class":871,"line":73},[836,2568,889],{},[836,2570,2571],{"class":871,"line":102},[836,2572,2573],{},"for $i \\gets 0$ to $n-1$ do\n",[836,2575,2576],{"class":871,"line":108},[836,2577,2578],{},"  if $used[i]$ then continue \u002F\u002F not a valid choice\n",[836,2580,2581],{"class":871,"line":116},[836,2582,2583],{},"  $used[i] \\gets \\text{true}$; $partial.\\text{push}(a_i)$ \u002F\u002F choose\n",[836,2585,2586],{"class":871,"line":196},[836,2587,2588],{},"  $\\textsc{Permute}(a, used, partial)$ \u002F\u002F explore\n",[836,2590,2591],{"class":871,"line":202},[836,2592,2593],{},"  $partial.\\text{pop}()$; $used[i] \\gets \\text{false}$ \u002F\u002F un-choose\n",[381,2595,2596,2597,2600,2601,2645,2646,2661,2662,2708,2709,2712,2713,2756,2757,2775,2776,2791],{},"An alternative avoids the auxiliary array by ",[394,2598,2599],{},"swapping in place",": to permute\n",[836,2602,2604],{"className":2603},[839],[836,2605,2607],{"className":2606,"ariaHidden":844},[843],[836,2608,2610,2613,2616,2620,2625,2629,2632,2638,2641],{"className":2609},[848],[836,2611],{"className":2612,"style":1074},[852],[836,2614,384],{"className":2615},[857,858],[836,2617,2619],{"className":2618},[1078],"[",[836,2621,2624],{"className":2622,"style":2623},[857,858],"margin-right:0.0315em;","k",[836,2626,2628],{"className":2627},[857],"..",[836,2630,1054],{"className":2631},[857,858],[836,2633,2635],{"className":2634},[857],[836,2636,1187],{"className":2637},[857],[836,2639,414],{"className":2640},[857],[836,2642,2644],{"className":2643},[1206],"]",", swap each candidate into position ",[836,2647,2649],{"className":2648},[839],[836,2650,2652],{"className":2651,"ariaHidden":844},[843],[836,2653,2655,2658],{"className":2654},[848],[836,2656],{"className":2657,"style":962},[852],[836,2659,2624],{"className":2660,"style":2623},[857,858],", recurse on ",[836,2663,2665],{"className":2664},[839],[836,2666,2668],{"className":2667,"ariaHidden":844},[843],[836,2669,2671,2674,2677,2680,2683,2689,2693,2696,2702,2705],{"className":2670},[848],[836,2672],{"className":2673,"style":1074},[852],[836,2675,384],{"className":2676},[857,858],[836,2678,2619],{"className":2679},[1078],[836,2681,2624],{"className":2682,"style":2623},[857,858],[836,2684,2686],{"className":2685},[857],[836,2687,1952],{"className":2688},[857],[836,2690,2692],{"className":2691},[857],"1..",[836,2694,1054],{"className":2695},[857,858],[836,2697,2699],{"className":2698},[857],[836,2700,1187],{"className":2701},[857],[836,2703,414],{"className":2704},[857],[836,2706,2644],{"className":2707},[1206],",\nthen swap it back: the swap-back ",[389,2710,2711],{},"is"," the un-choose. Either way the work is\n",[836,2714,2716],{"className":2715},[839],[836,2717,2719,2743],{"className":2718,"ariaHidden":844},[843],[836,2720,2722,2725,2728,2731,2734,2737,2740],{"className":2721},[848],[836,2723],{"className":2724,"style":1074},[852],[836,2726,2249],{"className":2727},[857],[836,2729,2174],{"className":2730},[1078],[836,2732,1054],{"className":2733},[857,858],[836,2735],{"className":2736,"style":2038},[1135],[836,2738,2262],{"className":2739},[1186],[836,2741],{"className":2742,"style":2038},[1135],[836,2744,2746,2749,2752],{"className":2745},[848],[836,2747],{"className":2748,"style":1074},[852],[836,2750,1054],{"className":2751},[857,858],[836,2753,2755],{"className":2754},[1206],"!)",", dominated by emitting ",[836,2758,2760],{"className":2759},[839],[836,2761,2763],{"className":2762,"ariaHidden":844},[843],[836,2764,2766,2769,2772],{"className":2765},[848],[836,2767],{"className":2768,"style":962},[852],[836,2770,1054],{"className":2771},[857,858],[836,2773,2327],{"className":2774},[1206]," permutations of length ",[836,2777,2779],{"className":2778},[839],[836,2780,2782],{"className":2781,"ariaHidden":844},[843],[836,2783,2785,2788],{"className":2784},[848],[836,2786],{"className":2787,"style":853},[852],[836,2789,1054],{"className":2790},[857,858],".",[523,2793,2795,3071],{"className":2794},[526,527],[529,2796,2800],{"xmlns":531,"width":2797,"height":2798,"viewBox":2799},"332.299","179.250","-75 -75 249.224 134.437",[536,2801,2802,2805,2812,2815,2822,2825,2832,2835,2842,2845,2852,2859,2862,2869,2872,2879,2882,2888,2894,2901,2912,2988,2991,2997,3000,3006,3009,3016,3019,3025,3031,3034,3040,3043,3050,3053,3059,3065],{"stroke":538,"style":539},[549,2803],{"fill":542,"d":2804},"M56.943-63.534a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.535 0",[536,2806,2808],{"transform":2807},"translate(-1.285 2.024)",[549,2809],{"d":2810,"fill":538,"stroke":538,"className":2811,"style":571},"M49.181-65.784Q49.181-65.982 49.326-66.136Q49.471-66.289 49.687-66.289Q49.823-66.289 49.939-66.221Q50.056-66.153 50.124-66.037Q50.192-65.920 50.192-65.784Q50.192-65.582 50.041-65.430Q49.889-65.279 49.687-65.279Q49.480-65.279 49.331-65.432Q49.181-65.586 49.181-65.784",[553],[549,2813],{"fill":542,"d":2814},"M-28.415-26.546a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.536 0",[536,2816,2818],{"transform":2817},"translate(-87.67 39.889)",[549,2819],{"d":2820,"fill":538,"stroke":538,"className":2821,"style":571},"M52.315-63.534L49.283-63.534L49.283-63.850Q50.434-63.850 50.434-64.145L50.434-68.869Q49.946-68.636 49.225-68.636L49.225-68.952Q50.355-68.952 50.917-69.528L51.062-69.528Q51.097-69.528 51.130-69.495Q51.163-69.462 51.163-69.427L51.163-64.145Q51.163-63.850 52.315-63.850",[553],[549,2823],{"fill":542,"d":2824},"M40.393-60.061-28.936-30.02M-48.332 10.443a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.536 0",[536,2826,2828],{"transform":2827},"translate(-107.588 76.877)",[549,2829],{"d":2830,"fill":538,"stroke":538,"className":2831,"style":571},"M52.315-63.534L48.865-63.534L48.865-63.767Q48.865-63.780 48.896-63.811L50.350-65.388Q50.816-65.885 51.069-66.190Q51.322-66.496 51.513-66.907Q51.704-67.318 51.704-67.757Q51.704-68.346 51.381-68.779Q51.058-69.212 50.478-69.212Q50.214-69.212 49.968-69.102Q49.722-68.992 49.546-68.805Q49.370-68.618 49.274-68.368L49.353-68.368Q49.555-68.368 49.698-68.232Q49.841-68.096 49.841-67.880Q49.841-67.674 49.698-67.535Q49.555-67.397 49.353-67.397Q49.151-67.397 49.008-67.540Q48.865-67.682 48.865-67.880Q48.865-68.342 49.102-68.715Q49.340-69.089 49.740-69.308Q50.139-69.528 50.588-69.528Q51.111-69.528 51.565-69.313Q52.020-69.097 52.293-68.698Q52.565-68.298 52.565-67.757Q52.565-67.362 52.394-67.008Q52.222-66.654 51.957-66.375Q51.691-66.096 51.240-65.711Q50.790-65.327 50.711-65.252L49.687-64.290L50.504-64.290Q51.155-64.290 51.592-64.301Q52.029-64.312 52.060-64.334Q52.130-64.417 52.185-64.657Q52.240-64.896 52.280-65.164L52.565-65.164",[553],[549,2833],{"fill":542,"d":2834},"M-41.092-18.854-52.726 2.752",[536,2836,2838],{"transform":2837},"translate(-111.254 113.221)",[549,2839],{"d":2840,"fill":538,"stroke":538,"className":2841,"style":554},"M51.734-63.534L49.204-63.534L49.204-63.814Q50.172-63.814 50.172-64.023L50.172-67.642Q49.779-67.454 49.157-67.454L49.157-67.735Q49.574-67.735 49.938-67.836Q50.302-67.936 50.558-68.182L50.684-68.182Q50.749-68.165 50.766-68.097L50.766-64.023Q50.766-63.814 51.734-63.814L51.734-63.534M55.716-63.534L52.831-63.534L52.831-63.736Q52.831-63.766 52.858-63.794L54.106-65.011Q54.178-65.086 54.220-65.128Q54.263-65.171 54.342-65.250Q54.755-65.663 54.986-66.021Q55.217-66.378 55.217-66.802Q55.217-67.034 55.138-67.237Q55.059-67.441 54.918-67.591Q54.776-67.742 54.581-67.822Q54.386-67.902 54.154-67.902Q53.843-67.902 53.585-67.743Q53.326-67.584 53.197-67.307L53.217-67.307Q53.385-67.307 53.492-67.196Q53.600-67.085 53.600-66.921Q53.600-66.764 53.491-66.651Q53.381-66.538 53.217-66.538Q53.056-66.538 52.944-66.651Q52.831-66.764 52.831-66.921Q52.831-67.297 53.039-67.584Q53.248-67.871 53.583-68.027Q53.918-68.182 54.273-68.182Q54.697-68.182 55.076-68.024Q55.456-67.865 55.690-67.548Q55.924-67.232 55.924-66.802Q55.924-66.491 55.784-66.222Q55.644-65.954 55.439-65.749Q55.234-65.544 54.871-65.262Q54.509-64.980 54.400-64.884L53.545-64.156L54.188-64.156Q54.451-64.156 54.740-64.158Q55.029-64.159 55.247-64.168Q55.466-64.177 55.483-64.194Q55.545-64.259 55.582-64.426Q55.620-64.594 55.658-64.836L55.924-64.836L55.716-63.534M57.168-64.081Q57.288-63.924 57.479-63.825Q57.671-63.725 57.886-63.686Q58.101-63.647 58.324-63.647Q58.621-63.647 58.816-63.802Q59.011-63.958 59.101-64.212Q59.192-64.467 59.192-64.751Q59.192-65.045 59.099-65.296Q59.007-65.547 58.809-65.703Q58.611-65.858 58.317-65.858L57.801-65.858Q57.773-65.858 57.748-65.884Q57.722-65.909 57.722-65.933L57.722-66.005Q57.722-66.036 57.748-66.058Q57.773-66.080 57.801-66.080L58.241-66.111Q58.604-66.111 58.824-66.468Q59.045-66.826 59.045-67.215Q59.045-67.543 58.850-67.747Q58.655-67.950 58.324-67.950Q58.036-67.950 57.783-67.866Q57.531-67.783 57.366-67.595Q57.513-67.595 57.614-67.480Q57.715-67.366 57.715-67.215Q57.715-67.065 57.609-66.955Q57.503-66.846 57.346-66.846Q57.185-66.846 57.076-66.955Q56.967-67.065 56.967-67.215Q56.967-67.540 57.175-67.759Q57.384-67.977 57.700-68.080Q58.016-68.182 58.324-68.182Q58.641-68.182 58.970-68.078Q59.298-67.974 59.525-67.752Q59.752-67.530 59.752-67.215Q59.752-66.781 59.465-66.456Q59.178-66.132 58.744-65.985Q59.055-65.920 59.335-65.754Q59.616-65.588 59.793-65.330Q59.971-65.072 59.971-64.751Q59.971-64.341 59.727-64.031Q59.482-63.722 59.101-63.558Q58.720-63.394 58.324-63.394Q57.954-63.394 57.597-63.507Q57.240-63.619 56.996-63.869Q56.751-64.118 56.751-64.488Q56.751-64.659 56.867-64.771Q56.984-64.884 57.155-64.884Q57.264-64.884 57.355-64.833Q57.445-64.782 57.500-64.689Q57.554-64.597 57.554-64.488Q57.554-64.320 57.442-64.201Q57.329-64.081 57.168-64.081",[553],[549,2843],{"fill":542,"d":2844},"M-56.868 19.179v19.517",[536,2846,2848],{"transform":2847},"translate(-98.532 94.727)",[549,2849],{"d":2850,"fill":538,"stroke":538,"className":2851,"style":554},"M49.204-64.081Q49.324-63.924 49.515-63.825Q49.707-63.725 49.922-63.686Q50.137-63.647 50.360-63.647Q50.657-63.647 50.852-63.802Q51.047-63.958 51.137-64.212Q51.228-64.467 51.228-64.751Q51.228-65.045 51.136-65.296Q51.043-65.547 50.845-65.703Q50.647-65.858 50.353-65.858L49.837-65.858Q49.809-65.858 49.784-65.884Q49.758-65.909 49.758-65.933L49.758-66.005Q49.758-66.036 49.784-66.058Q49.809-66.080 49.837-66.080L50.278-66.111Q50.640-66.111 50.860-66.468Q51.081-66.826 51.081-67.215Q51.081-67.543 50.886-67.747Q50.691-67.950 50.360-67.950Q50.073-67.950 49.820-67.866Q49.567-67.783 49.403-67.595Q49.550-67.595 49.650-67.480Q49.751-67.366 49.751-67.215Q49.751-67.065 49.645-66.955Q49.539-66.846 49.382-66.846Q49.221-66.846 49.112-66.955Q49.003-67.065 49.003-67.215Q49.003-67.540 49.211-67.759Q49.420-67.977 49.736-68.080Q50.052-68.182 50.360-68.182Q50.678-68.182 51.006-68.078Q51.334-67.974 51.561-67.752Q51.788-67.530 51.788-67.215Q51.788-66.781 51.501-66.456Q51.214-66.132 50.780-65.985Q51.091-65.920 51.371-65.754Q51.652-65.588 51.829-65.330Q52.007-65.072 52.007-64.751Q52.007-64.341 51.763-64.031Q51.518-63.722 51.137-63.558Q50.756-63.394 50.360-63.394Q49.991-63.394 49.633-63.507Q49.276-63.619 49.032-63.869Q48.787-64.118 48.787-64.488Q48.787-64.659 48.904-64.771Q49.020-64.884 49.191-64.884Q49.300-64.884 49.391-64.833Q49.481-64.782 49.536-64.689Q49.591-64.597 49.591-64.488Q49.591-64.320 49.478-64.201Q49.365-64.081 49.204-64.081",[553],[536,2853,2855],{"transform":2854},"translate(-106.046 57.738)",[549,2856],{"d":2857,"fill":538,"stroke":538,"className":2858,"style":554},"M51.734-63.534L48.849-63.534L48.849-63.736Q48.849-63.766 48.876-63.794L50.124-65.011Q50.196-65.086 50.238-65.128Q50.281-65.171 50.360-65.250Q50.773-65.663 51.004-66.021Q51.235-66.378 51.235-66.802Q51.235-67.034 51.156-67.237Q51.077-67.441 50.936-67.591Q50.794-67.742 50.599-67.822Q50.404-67.902 50.172-67.902Q49.861-67.902 49.603-67.743Q49.345-67.584 49.215-67.307L49.235-67.307Q49.403-67.307 49.510-67.196Q49.618-67.085 49.618-66.921Q49.618-66.764 49.509-66.651Q49.399-66.538 49.235-66.538Q49.075-66.538 48.962-66.651Q48.849-66.764 48.849-66.921Q48.849-67.297 49.057-67.584Q49.266-67.871 49.601-68.027Q49.936-68.182 50.291-68.182Q50.715-68.182 51.095-68.024Q51.474-67.865 51.708-67.548Q51.942-67.232 51.942-66.802Q51.942-66.491 51.802-66.222Q51.662-65.954 51.457-65.749Q51.252-65.544 50.889-65.262Q50.527-64.980 50.418-64.884L49.563-64.156L50.206-64.156Q50.469-64.156 50.758-64.158Q51.047-64.159 51.265-64.168Q51.484-64.177 51.501-64.194Q51.563-64.259 51.600-64.426Q51.638-64.594 51.676-64.836L51.942-64.836",[553],[549,2860],{"fill":542,"d":2861},"M-8.498 10.443a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.536 0",[536,2863,2865],{"transform":2864},"translate(-67.754 76.877)",[549,2866],{"d":2867,"fill":538,"stroke":538,"className":2868,"style":571},"M49.309-64.255L49.265-64.255Q49.467-63.938 49.854-63.780Q50.241-63.622 50.667-63.622Q51.203-63.622 51.442-64.057Q51.682-64.492 51.682-65.072Q51.682-65.652 51.436-66.092Q51.190-66.531 50.658-66.531L50.038-66.531Q50.012-66.531 49.979-66.560Q49.946-66.588 49.946-66.610L49.946-66.711Q49.946-66.742 49.975-66.766Q50.003-66.790 50.038-66.790L50.557-66.830Q51.023-66.830 51.269-67.302Q51.515-67.775 51.515-68.293Q51.515-68.720 51.302-68.994Q51.089-69.269 50.667-69.269Q50.324-69.269 49.999-69.139Q49.674-69.010 49.489-68.755L49.515-68.755Q49.718-68.755 49.854-68.614Q49.990-68.473 49.990-68.276Q49.990-68.078 49.856-67.944Q49.722-67.810 49.524-67.810Q49.322-67.810 49.184-67.944Q49.045-68.078 49.045-68.276Q49.045-68.865 49.548-69.196Q50.052-69.528 50.667-69.528Q51.045-69.528 51.447-69.388Q51.849-69.247 52.117-68.968Q52.385-68.689 52.385-68.293Q52.385-67.744 52.031-67.307Q51.678-66.869 51.137-66.685Q51.528-66.606 51.873-66.382Q52.218-66.158 52.429-65.817Q52.640-65.476 52.640-65.081Q52.640-64.699 52.477-64.376Q52.315-64.053 52.023-63.817Q51.730-63.582 51.383-63.459Q51.036-63.336 50.667-63.336Q50.219-63.336 49.788-63.497Q49.357-63.657 49.076-63.984Q48.795-64.312 48.795-64.769Q48.795-64.984 48.942-65.127Q49.089-65.270 49.309-65.270Q49.520-65.270 49.665-65.125Q49.810-64.980 49.810-64.769Q49.810-64.558 49.663-64.406Q49.515-64.255 49.309-64.255",[553],[549,2870],{"fill":542,"d":2871},"m-32.81-18.854 11.635 21.606",[536,2873,2875],{"transform":2874},"translate(-71.42 113.221)",[549,2876],{"d":2877,"fill":538,"stroke":538,"className":2878,"style":554},"M51.734-63.534L49.204-63.534L49.204-63.814Q50.172-63.814 50.172-64.023L50.172-67.642Q49.779-67.454 49.157-67.454L49.157-67.735Q49.574-67.735 49.938-67.836Q50.302-67.936 50.558-68.182L50.684-68.182Q50.749-68.165 50.766-68.097L50.766-64.023Q50.766-63.814 51.734-63.814L51.734-63.534M53.186-64.081Q53.306-63.924 53.497-63.825Q53.689-63.725 53.904-63.686Q54.119-63.647 54.342-63.647Q54.639-63.647 54.834-63.802Q55.029-63.958 55.119-64.212Q55.210-64.467 55.210-64.751Q55.210-65.045 55.117-65.296Q55.025-65.547 54.827-65.703Q54.629-65.858 54.335-65.858L53.819-65.858Q53.791-65.858 53.766-65.884Q53.740-65.909 53.740-65.933L53.740-66.005Q53.740-66.036 53.766-66.058Q53.791-66.080 53.819-66.080L54.260-66.111Q54.622-66.111 54.842-66.468Q55.063-66.826 55.063-67.215Q55.063-67.543 54.868-67.747Q54.673-67.950 54.342-67.950Q54.054-67.950 53.802-67.866Q53.549-67.783 53.385-67.595Q53.532-67.595 53.632-67.480Q53.733-67.366 53.733-67.215Q53.733-67.065 53.627-66.955Q53.521-66.846 53.364-66.846Q53.203-66.846 53.094-66.955Q52.985-67.065 52.985-67.215Q52.985-67.540 53.193-67.759Q53.402-67.977 53.718-68.080Q54.034-68.182 54.342-68.182Q54.659-68.182 54.988-68.078Q55.316-67.974 55.543-67.752Q55.770-67.530 55.770-67.215Q55.770-66.781 55.483-66.456Q55.196-66.132 54.762-65.985Q55.073-65.920 55.353-65.754Q55.634-65.588 55.811-65.330Q55.989-65.072 55.989-64.751Q55.989-64.341 55.745-64.031Q55.500-63.722 55.119-63.558Q54.738-63.394 54.342-63.394Q53.972-63.394 53.615-63.507Q53.258-63.619 53.014-63.869Q52.769-64.118 52.769-64.488Q52.769-64.659 52.886-64.771Q53.002-64.884 53.173-64.884Q53.282-64.884 53.373-64.833Q53.463-64.782 53.518-64.689Q53.573-64.597 53.573-64.488Q53.573-64.320 53.460-64.201Q53.347-64.081 53.186-64.081M59.698-63.534L56.813-63.534L56.813-63.736Q56.813-63.766 56.840-63.794L58.088-65.011Q58.159-65.086 58.202-65.128Q58.245-65.171 58.324-65.250Q58.737-65.663 58.968-66.021Q59.199-66.378 59.199-66.802Q59.199-67.034 59.120-67.237Q59.041-67.441 58.899-67.591Q58.758-67.742 58.563-67.822Q58.368-67.902 58.136-67.902Q57.825-67.902 57.566-67.743Q57.308-67.584 57.179-67.307L57.199-67.307Q57.366-67.307 57.474-67.196Q57.582-67.085 57.582-66.921Q57.582-66.764 57.472-66.651Q57.363-66.538 57.199-66.538Q57.038-66.538 56.926-66.651Q56.813-66.764 56.813-66.921Q56.813-67.297 57.021-67.584Q57.230-67.871 57.565-68.027Q57.900-68.182 58.255-68.182Q58.679-68.182 59.058-68.024Q59.438-67.865 59.672-67.548Q59.906-67.232 59.906-66.802Q59.906-66.491 59.766-66.222Q59.626-65.954 59.421-65.749Q59.216-65.544 58.853-65.262Q58.491-64.980 58.382-64.884L57.527-64.156L58.170-64.156Q58.433-64.156 58.722-64.158Q59.011-64.159 59.229-64.168Q59.448-64.177 59.465-64.194Q59.527-64.259 59.564-64.426Q59.602-64.594 59.639-64.836L59.906-64.836",[553],[549,2880],{"fill":542,"d":2881},"M-17.034 19.179v19.517",[536,2883,2885],{"transform":2884},"translate(-58.699 94.727)",[549,2886],{"d":2857,"fill":538,"stroke":538,"className":2887,"style":554},[553],[536,2889,2891],{"transform":2890},"translate(-68.657 57.738)",[549,2892],{"d":2850,"fill":538,"stroke":538,"className":2893,"style":554},[553],[536,2895,2897],{"transform":2896},"translate(-53.408 20.75)",[549,2898],{"d":2899,"fill":538,"stroke":538,"className":2900,"style":554},"M51.734-63.534L49.204-63.534L49.204-63.814Q50.172-63.814 50.172-64.023L50.172-67.642Q49.779-67.454 49.157-67.454L49.157-67.735Q49.574-67.735 49.938-67.836Q50.302-67.936 50.558-68.182L50.684-68.182Q50.749-68.165 50.766-68.097L50.766-64.023Q50.766-63.814 51.734-63.814",[553],[536,2902,2903,2906],{"stroke":611},[549,2904],{"fill":542,"d":2905},"M56.943-26.546a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.535 0",[536,2907,2909],{"transform":2908},"translate(-2.312 39.889)",[549,2910],{"d":2830,"fill":611,"stroke":611,"className":2911,"style":571},[553],[536,2913,2914,2917,2923,2926,2933,2936,2942,2948,2951,2957,2960,2967,2970,2976,2982],{"stroke":611},[549,2915],{"fill":542,"d":2916},"M48.408-54.798v19.517M37.027 10.443a8.536 8.536 0 1 0-17.072 0 8.536 8.536 0 0 0 17.072 0Zm-8.536 0",[536,2918,2920],{"transform":2919},"translate(-22.23 76.877)",[549,2921],{"d":2820,"fill":538,"stroke":538,"className":2922,"style":571},[553],[549,2924],{"fill":542,"d":2925},"M44.266-18.854 32.632 2.752",[536,2927,2929],{"transform":2928},"translate(-25.896 113.221)",[549,2930],{"d":2931,"fill":538,"stroke":538,"className":2932,"style":554},"M51.734-63.534L48.849-63.534L48.849-63.736Q48.849-63.766 48.876-63.794L50.124-65.011Q50.196-65.086 50.238-65.128Q50.281-65.171 50.360-65.250Q50.773-65.663 51.004-66.021Q51.235-66.378 51.235-66.802Q51.235-67.034 51.156-67.237Q51.077-67.441 50.936-67.591Q50.794-67.742 50.599-67.822Q50.404-67.902 50.172-67.902Q49.861-67.902 49.603-67.743Q49.345-67.584 49.215-67.307L49.235-67.307Q49.403-67.307 49.510-67.196Q49.618-67.085 49.618-66.921Q49.618-66.764 49.509-66.651Q49.399-66.538 49.235-66.538Q49.075-66.538 48.962-66.651Q48.849-66.764 48.849-66.921Q48.849-67.297 49.057-67.584Q49.266-67.871 49.601-68.027Q49.936-68.182 50.291-68.182Q50.715-68.182 51.095-68.024Q51.474-67.865 51.708-67.548Q51.942-67.232 51.942-66.802Q51.942-66.491 51.802-66.222Q51.662-65.954 51.457-65.749Q51.252-65.544 50.889-65.262Q50.527-64.980 50.418-64.884L49.563-64.156L50.206-64.156Q50.469-64.156 50.758-64.158Q51.047-64.159 51.265-64.168Q51.484-64.177 51.501-64.194Q51.563-64.259 51.600-64.426Q51.638-64.594 51.676-64.836L51.942-64.836L51.734-63.534M55.716-63.534L53.186-63.534L53.186-63.814Q54.154-63.814 54.154-64.023L54.154-67.642Q53.761-67.454 53.138-67.454L53.138-67.735Q53.555-67.735 53.919-67.836Q54.283-67.936 54.540-68.182L54.666-68.182Q54.731-68.165 54.748-68.097L54.748-64.023Q54.748-63.814 55.716-63.814L55.716-63.534M57.168-64.081Q57.288-63.924 57.479-63.825Q57.671-63.725 57.886-63.686Q58.101-63.647 58.324-63.647Q58.621-63.647 58.816-63.802Q59.011-63.958 59.101-64.212Q59.192-64.467 59.192-64.751Q59.192-65.045 59.099-65.296Q59.007-65.547 58.809-65.703Q58.611-65.858 58.317-65.858L57.801-65.858Q57.773-65.858 57.748-65.884Q57.722-65.909 57.722-65.933L57.722-66.005Q57.722-66.036 57.748-66.058Q57.773-66.080 57.801-66.080L58.241-66.111Q58.604-66.111 58.824-66.468Q59.045-66.826 59.045-67.215Q59.045-67.543 58.850-67.747Q58.655-67.950 58.324-67.950Q58.036-67.950 57.783-67.866Q57.531-67.783 57.366-67.595Q57.513-67.595 57.614-67.480Q57.715-67.366 57.715-67.215Q57.715-67.065 57.609-66.955Q57.503-66.846 57.346-66.846Q57.185-66.846 57.076-66.955Q56.967-67.065 56.967-67.215Q56.967-67.540 57.175-67.759Q57.384-67.977 57.700-68.080Q58.016-68.182 58.324-68.182Q58.641-68.182 58.970-68.078Q59.298-67.974 59.525-67.752Q59.752-67.530 59.752-67.215Q59.752-66.781 59.465-66.456Q59.178-66.132 58.744-65.985Q59.055-65.920 59.335-65.754Q59.616-65.588 59.793-65.330Q59.971-65.072 59.971-64.751Q59.971-64.341 59.727-64.031Q59.482-63.722 59.101-63.558Q58.720-63.394 58.324-63.394Q57.954-63.394 57.597-63.507Q57.240-63.619 56.996-63.869Q56.751-64.118 56.751-64.488Q56.751-64.659 56.867-64.771Q56.984-64.884 57.155-64.884Q57.264-64.884 57.355-64.833Q57.445-64.782 57.500-64.689Q57.554-64.597 57.554-64.488Q57.554-64.320 57.442-64.201Q57.329-64.081 57.168-64.081",[553],[549,2934],{"fill":542,"d":2935},"M28.49 19.179v19.517",[536,2937,2939],{"transform":2938},"translate(-30.646 94.727)",[549,2940],{"d":2850,"fill":538,"stroke":538,"className":2941,"style":554},[553],[536,2943,2945],{"transform":2944},"translate(-20.687 57.738)",[549,2946],{"d":2899,"fill":538,"stroke":538,"className":2947,"style":554},[553],[549,2949],{"fill":542,"d":2950},"M76.86 10.443a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.535 0",[536,2952,2954],{"transform":2953},"translate(17.604 76.877)",[549,2955],{"d":2867,"fill":611,"stroke":611,"className":2956,"style":571},[553],[549,2958],{"fill":542,"d":2959},"M52.549-18.854 64.183 2.752M76.86 47.432a8.536 8.536 0 1 0-17.071 0 8.536 8.536 0 0 0 17.071 0Zm-8.535 0",[536,2961,2963],{"transform":2962},"translate(13.938 113.221)",[549,2964],{"d":2965,"fill":611,"stroke":611,"className":2966,"style":554},"M51.734-63.534L48.849-63.534L48.849-63.736Q48.849-63.766 48.876-63.794L50.124-65.011Q50.196-65.086 50.238-65.128Q50.281-65.171 50.360-65.250Q50.773-65.663 51.004-66.021Q51.235-66.378 51.235-66.802Q51.235-67.034 51.156-67.237Q51.077-67.441 50.936-67.591Q50.794-67.742 50.599-67.822Q50.404-67.902 50.172-67.902Q49.861-67.902 49.603-67.743Q49.345-67.584 49.215-67.307L49.235-67.307Q49.403-67.307 49.510-67.196Q49.618-67.085 49.618-66.921Q49.618-66.764 49.509-66.651Q49.399-66.538 49.235-66.538Q49.075-66.538 48.962-66.651Q48.849-66.764 48.849-66.921Q48.849-67.297 49.057-67.584Q49.266-67.871 49.601-68.027Q49.936-68.182 50.291-68.182Q50.715-68.182 51.095-68.024Q51.474-67.865 51.708-67.548Q51.942-67.232 51.942-66.802Q51.942-66.491 51.802-66.222Q51.662-65.954 51.457-65.749Q51.252-65.544 50.889-65.262Q50.527-64.980 50.418-64.884L49.563-64.156L50.206-64.156Q50.469-64.156 50.758-64.158Q51.047-64.159 51.265-64.168Q51.484-64.177 51.501-64.194Q51.563-64.259 51.600-64.426Q51.638-64.594 51.676-64.836L51.942-64.836L51.734-63.534M53.186-64.081Q53.306-63.924 53.497-63.825Q53.689-63.725 53.904-63.686Q54.119-63.647 54.342-63.647Q54.639-63.647 54.834-63.802Q55.029-63.958 55.119-64.212Q55.210-64.467 55.210-64.751Q55.210-65.045 55.117-65.296Q55.025-65.547 54.827-65.703Q54.629-65.858 54.335-65.858L53.819-65.858Q53.791-65.858 53.766-65.884Q53.740-65.909 53.740-65.933L53.740-66.005Q53.740-66.036 53.766-66.058Q53.791-66.080 53.819-66.080L54.260-66.111Q54.622-66.111 54.842-66.468Q55.063-66.826 55.063-67.215Q55.063-67.543 54.868-67.747Q54.673-67.950 54.342-67.950Q54.054-67.950 53.802-67.866Q53.549-67.783 53.385-67.595Q53.532-67.595 53.632-67.480Q53.733-67.366 53.733-67.215Q53.733-67.065 53.627-66.955Q53.521-66.846 53.364-66.846Q53.203-66.846 53.094-66.955Q52.985-67.065 52.985-67.215Q52.985-67.540 53.193-67.759Q53.402-67.977 53.718-68.080Q54.034-68.182 54.342-68.182Q54.659-68.182 54.988-68.078Q55.316-67.974 55.543-67.752Q55.770-67.530 55.770-67.215Q55.770-66.781 55.483-66.456Q55.196-66.132 54.762-65.985Q55.073-65.920 55.353-65.754Q55.634-65.588 55.811-65.330Q55.989-65.072 55.989-64.751Q55.989-64.341 55.745-64.031Q55.500-63.722 55.119-63.558Q54.738-63.394 54.342-63.394Q53.972-63.394 53.615-63.507Q53.258-63.619 53.014-63.869Q52.769-64.118 52.769-64.488Q52.769-64.659 52.886-64.771Q53.002-64.884 53.173-64.884Q53.282-64.884 53.373-64.833Q53.463-64.782 53.518-64.689Q53.573-64.597 53.573-64.488Q53.573-64.320 53.460-64.201Q53.347-64.081 53.186-64.081M59.698-63.534L57.168-63.534L57.168-63.814Q58.136-63.814 58.136-64.023L58.136-67.642Q57.742-67.454 57.120-67.454L57.120-67.735Q57.537-67.735 57.901-67.836Q58.265-67.936 58.522-68.182L58.648-68.182Q58.713-68.165 58.730-68.097L58.730-64.023Q58.730-63.814 59.698-63.814",[553],[549,2968],{"fill":542,"d":2969},"M68.325 19.179v19.517",[536,2971,2973],{"transform":2972},"translate(26.66 94.727)",[549,2974],{"d":2899,"fill":538,"stroke":538,"className":2975,"style":554},[553],[536,2977,2979],{"transform":2978},"translate(16.701 57.738)",[549,2980],{"d":2850,"fill":538,"stroke":538,"className":2981,"style":554},[553],[536,2983,2985],{"transform":2984},"translate(-10.729 20.75)",[549,2986],{"d":2857,"fill":538,"stroke":538,"className":2987,"style":554},[553],[549,2989],{"fill":542,"d":2990},"M142.302-26.546a8.536 8.536 0 1 0-17.072 0 8.536 8.536 0 0 0 17.072 0Zm-8.536 0",[536,2992,2994],{"transform":2993},"translate(83.046 39.889)",[549,2995],{"d":2867,"fill":538,"stroke":538,"className":2996,"style":571},[553],[549,2998],{"fill":542,"d":2999},"M56.423-60.061 125.75-30.02M122.385 10.443a8.536 8.536 0 1 0-17.072 0 8.536 8.536 0 0 0 17.072 0Zm-8.536 0",[536,3001,3003],{"transform":3002},"translate(63.129 76.877)",[549,3004],{"d":2820,"fill":538,"stroke":538,"className":3005,"style":571},[553],[549,3007],{"fill":542,"d":3008},"M129.624-18.854 117.99 2.752",[536,3010,3012],{"transform":3011},"translate(59.462 113.221)",[549,3013],{"d":3014,"fill":538,"stroke":538,"className":3015,"style":554},"M49.204-64.081Q49.324-63.924 49.515-63.825Q49.707-63.725 49.922-63.686Q50.137-63.647 50.360-63.647Q50.657-63.647 50.852-63.802Q51.047-63.958 51.137-64.212Q51.228-64.467 51.228-64.751Q51.228-65.045 51.136-65.296Q51.043-65.547 50.845-65.703Q50.647-65.858 50.353-65.858L49.837-65.858Q49.809-65.858 49.784-65.884Q49.758-65.909 49.758-65.933L49.758-66.005Q49.758-66.036 49.784-66.058Q49.809-66.080 49.837-66.080L50.278-66.111Q50.640-66.111 50.860-66.468Q51.081-66.826 51.081-67.215Q51.081-67.543 50.886-67.747Q50.691-67.950 50.360-67.950Q50.073-67.950 49.820-67.866Q49.567-67.783 49.403-67.595Q49.550-67.595 49.650-67.480Q49.751-67.366 49.751-67.215Q49.751-67.065 49.645-66.955Q49.539-66.846 49.382-66.846Q49.221-66.846 49.112-66.955Q49.003-67.065 49.003-67.215Q49.003-67.540 49.211-67.759Q49.420-67.977 49.736-68.080Q50.052-68.182 50.360-68.182Q50.678-68.182 51.006-68.078Q51.334-67.974 51.561-67.752Q51.788-67.530 51.788-67.215Q51.788-66.781 51.501-66.456Q51.214-66.132 50.780-65.985Q51.091-65.920 51.371-65.754Q51.652-65.588 51.829-65.330Q52.007-65.072 52.007-64.751Q52.007-64.341 51.763-64.031Q51.518-63.722 51.137-63.558Q50.756-63.394 50.360-63.394Q49.991-63.394 49.633-63.507Q49.276-63.619 49.032-63.869Q48.787-64.118 48.787-64.488Q48.787-64.659 48.904-64.771Q49.020-64.884 49.191-64.884Q49.300-64.884 49.391-64.833Q49.481-64.782 49.536-64.689Q49.591-64.597 49.591-64.488Q49.591-64.320 49.478-64.201Q49.365-64.081 49.204-64.081M55.716-63.534L53.186-63.534L53.186-63.814Q54.154-63.814 54.154-64.023L54.154-67.642Q53.761-67.454 53.138-67.454L53.138-67.735Q53.555-67.735 53.919-67.836Q54.283-67.936 54.540-68.182L54.666-68.182Q54.731-68.165 54.748-68.097L54.748-64.023Q54.748-63.814 55.716-63.814L55.716-63.534M59.698-63.534L56.813-63.534L56.813-63.736Q56.813-63.766 56.840-63.794L58.088-65.011Q58.159-65.086 58.202-65.128Q58.245-65.171 58.324-65.250Q58.737-65.663 58.968-66.021Q59.199-66.378 59.199-66.802Q59.199-67.034 59.120-67.237Q59.041-67.441 58.899-67.591Q58.758-67.742 58.563-67.822Q58.368-67.902 58.136-67.902Q57.825-67.902 57.566-67.743Q57.308-67.584 57.179-67.307L57.199-67.307Q57.366-67.307 57.474-67.196Q57.582-67.085 57.582-66.921Q57.582-66.764 57.472-66.651Q57.363-66.538 57.199-66.538Q57.038-66.538 56.926-66.651Q56.813-66.764 56.813-66.921Q56.813-67.297 57.021-67.584Q57.230-67.871 57.565-68.027Q57.900-68.182 58.255-68.182Q58.679-68.182 59.058-68.024Q59.438-67.865 59.672-67.548Q59.906-67.232 59.906-66.802Q59.906-66.491 59.766-66.222Q59.626-65.954 59.421-65.749Q59.216-65.544 58.853-65.262Q58.491-64.980 58.382-64.884L57.527-64.156L58.170-64.156Q58.433-64.156 58.722-64.158Q59.011-64.159 59.229-64.168Q59.448-64.177 59.465-64.194Q59.527-64.259 59.564-64.426Q59.602-64.594 59.639-64.836L59.906-64.836",[553],[549,3017],{"fill":542,"d":3018},"M113.849 19.179v19.517",[536,3020,3022],{"transform":3021},"translate(54.713 94.727)",[549,3023],{"d":2857,"fill":538,"stroke":538,"className":3024,"style":554},[553],[536,3026,3028],{"transform":3027},"translate(64.671 57.738)",[549,3029],{"d":2899,"fill":538,"stroke":538,"className":3030,"style":554},[553],[549,3032],{"fill":542,"d":3033},"M162.219 10.443a8.536 8.536 0 1 0-17.072 0 8.536 8.536 0 0 0 17.072 0Zm-8.536 0",[536,3035,3037],{"transform":3036},"translate(102.963 76.877)",[549,3038],{"d":2830,"fill":538,"stroke":538,"className":3039,"style":571},[553],[549,3041],{"fill":542,"d":3042},"m137.907-18.854 11.634 21.606",[536,3044,3046],{"transform":3045},"translate(99.296 113.221)",[549,3047],{"d":3048,"fill":538,"stroke":538,"className":3049,"style":554},"M49.204-64.081Q49.324-63.924 49.515-63.825Q49.707-63.725 49.922-63.686Q50.137-63.647 50.360-63.647Q50.657-63.647 50.852-63.802Q51.047-63.958 51.137-64.212Q51.228-64.467 51.228-64.751Q51.228-65.045 51.136-65.296Q51.043-65.547 50.845-65.703Q50.647-65.858 50.353-65.858L49.837-65.858Q49.809-65.858 49.784-65.884Q49.758-65.909 49.758-65.933L49.758-66.005Q49.758-66.036 49.784-66.058Q49.809-66.080 49.837-66.080L50.278-66.111Q50.640-66.111 50.860-66.468Q51.081-66.826 51.081-67.215Q51.081-67.543 50.886-67.747Q50.691-67.950 50.360-67.950Q50.073-67.950 49.820-67.866Q49.567-67.783 49.403-67.595Q49.550-67.595 49.650-67.480Q49.751-67.366 49.751-67.215Q49.751-67.065 49.645-66.955Q49.539-66.846 49.382-66.846Q49.221-66.846 49.112-66.955Q49.003-67.065 49.003-67.215Q49.003-67.540 49.211-67.759Q49.420-67.977 49.736-68.080Q50.052-68.182 50.360-68.182Q50.678-68.182 51.006-68.078Q51.334-67.974 51.561-67.752Q51.788-67.530 51.788-67.215Q51.788-66.781 51.501-66.456Q51.214-66.132 50.780-65.985Q51.091-65.920 51.371-65.754Q51.652-65.588 51.829-65.330Q52.007-65.072 52.007-64.751Q52.007-64.341 51.763-64.031Q51.518-63.722 51.137-63.558Q50.756-63.394 50.360-63.394Q49.991-63.394 49.633-63.507Q49.276-63.619 49.032-63.869Q48.787-64.118 48.787-64.488Q48.787-64.659 48.904-64.771Q49.020-64.884 49.191-64.884Q49.300-64.884 49.391-64.833Q49.481-64.782 49.536-64.689Q49.591-64.597 49.591-64.488Q49.591-64.320 49.478-64.201Q49.365-64.081 49.204-64.081M55.716-63.534L52.831-63.534L52.831-63.736Q52.831-63.766 52.858-63.794L54.106-65.011Q54.178-65.086 54.220-65.128Q54.263-65.171 54.342-65.250Q54.755-65.663 54.986-66.021Q55.217-66.378 55.217-66.802Q55.217-67.034 55.138-67.237Q55.059-67.441 54.918-67.591Q54.776-67.742 54.581-67.822Q54.386-67.902 54.154-67.902Q53.843-67.902 53.585-67.743Q53.326-67.584 53.197-67.307L53.217-67.307Q53.385-67.307 53.492-67.196Q53.600-67.085 53.600-66.921Q53.600-66.764 53.491-66.651Q53.381-66.538 53.217-66.538Q53.056-66.538 52.944-66.651Q52.831-66.764 52.831-66.921Q52.831-67.297 53.039-67.584Q53.248-67.871 53.583-68.027Q53.918-68.182 54.273-68.182Q54.697-68.182 55.076-68.024Q55.456-67.865 55.690-67.548Q55.924-67.232 55.924-66.802Q55.924-66.491 55.784-66.222Q55.644-65.954 55.439-65.749Q55.234-65.544 54.871-65.262Q54.509-64.980 54.400-64.884L53.545-64.156L54.188-64.156Q54.451-64.156 54.740-64.158Q55.029-64.159 55.247-64.168Q55.466-64.177 55.483-64.194Q55.545-64.259 55.582-64.426Q55.620-64.594 55.658-64.836L55.924-64.836L55.716-63.534M59.698-63.534L57.168-63.534L57.168-63.814Q58.136-63.814 58.136-64.023L58.136-67.642Q57.742-67.454 57.120-67.454L57.120-67.735Q57.537-67.735 57.901-67.836Q58.265-67.936 58.522-68.182L58.648-68.182Q58.713-68.165 58.730-68.097L58.730-64.023Q58.730-63.814 59.698-63.814",[553],[549,3051],{"fill":542,"d":3052},"M153.683 19.179v19.517",[536,3054,3056],{"transform":3055},"translate(112.018 94.727)",[549,3057],{"d":2899,"fill":538,"stroke":538,"className":3058,"style":554},[553],[536,3060,3062],{"transform":3061},"translate(102.06 57.738)",[549,3063],{"d":2857,"fill":538,"stroke":538,"className":3064,"style":554},[553],[536,3066,3068],{"transform":3067},"translate(49.422 20.75)",[549,3069],{"d":2850,"fill":538,"stroke":538,"className":3070,"style":554},[553],[830,3072,3074,3075,3114,3115,3167,3168,3205],{"className":3073},[833],"Permutation state-space tree for ",[836,3076,3078],{"className":3077},[839],[836,3079,3081],{"className":3080,"ariaHidden":844},[843],[836,3082,3084,3087,3090,3093,3096,3099,3102,3105,3108,3111],{"className":3083},[848],[836,3085],{"className":3086,"style":1074},[852],[836,3088,1079],{"className":3089},[1078],[836,3091,414],{"className":3092},[857],[836,3094,1131],{"className":3095},[1130],[836,3097],{"className":3098,"style":1136},[1135],[836,3100,470],{"className":3101},[857],[836,3103,1131],{"className":3104},[1130],[836,3106],{"className":3107,"style":1136},[1135],[836,3109,1841],{"className":3110},[857],[836,3112,1207],{"className":3113},[1206]," — the branching shrinks ",[836,3116,3118],{"className":3117},[839],[836,3119,3121,3140,3158],{"className":3120,"ariaHidden":844},[843],[836,3122,3124,3127,3130,3133,3137],{"className":3123},[848],[836,3125],{"className":3126,"style":2051},[852],[836,3128,1841],{"className":3129},[857],[836,3131],{"className":3132,"style":2524},[1135],[836,3134,3136],{"className":3135},[2528],"→",[836,3138],{"className":3139,"style":2524},[1135],[836,3141,3143,3146,3149,3152,3155],{"className":3142},[848],[836,3144],{"className":3145,"style":2051},[852],[836,3147,470],{"className":3148},[857],[836,3150],{"className":3151,"style":2524},[1135],[836,3153,3136],{"className":3154},[2528],[836,3156],{"className":3157,"style":2524},[1135],[836,3159,3161,3164],{"className":3160},[848],[836,3162],{"className":3163,"style":2051},[852],[836,3165,414],{"className":3166},[857]," as elements are consumed, giving ",[836,3169,3171],{"className":3170},[839],[836,3172,3174,3195],{"className":3173,"ariaHidden":844},[843],[836,3175,3177,3180,3183,3186,3189,3192],{"className":3176},[848],[836,3178],{"className":3179,"style":962},[852],[836,3181,1841],{"className":3182},[857],[836,3184,2327],{"className":3185},[1206],[836,3187],{"className":3188,"style":2524},[1135],[836,3190,2529],{"className":3191},[2528],[836,3193],{"className":3194,"style":2524},[1135],[836,3196,3198,3201],{"className":3197},[848],[836,3199],{"className":3200,"style":2051},[852],[836,3202,3204],{"className":3203},[857],"6"," leaves",[381,3207,3208,3209,3278,3279,3295,3296,3311,3312,3327,3328,3343,3344,2791],{},"Each root-to-leaf path consumes every element exactly once; the accented path\n",[836,3210,3212],{"className":3211},[839],[836,3213,3215,3233,3251,3269],{"className":3214,"ariaHidden":844},[843],[836,3216,3218,3221,3224,3227,3230],{"className":3217},[848],[836,3219],{"className":3220,"style":2462},[852],[836,3222,2262],{"className":3223},[857],[836,3225],{"className":3226,"style":2524},[1135],[836,3228,3136],{"className":3229},[2528],[836,3231],{"className":3232,"style":2524},[1135],[836,3234,3236,3239,3242,3245,3248],{"className":3235},[848],[836,3237],{"className":3238,"style":2051},[852],[836,3240,470],{"className":3241},[857],[836,3243],{"className":3244,"style":2524},[1135],[836,3246,3136],{"className":3247},[2528],[836,3249],{"className":3250,"style":2524},[1135],[836,3252,3254,3257,3260,3263,3266],{"className":3253},[848],[836,3255],{"className":3256,"style":2051},[852],[836,3258,1841],{"className":3259},[857],[836,3261],{"className":3262,"style":2524},[1135],[836,3264,3136],{"className":3265},[2528],[836,3267],{"className":3268,"style":2524},[1135],[836,3270,3272,3275],{"className":3271},[848],[836,3273],{"className":3274,"style":2051},[852],[836,3276,414],{"className":3277},[857]," builds the permutation ",[836,3280,3282],{"className":3281},[839],[836,3283,3285],{"className":3284,"ariaHidden":844},[843],[836,3286,3288,3291],{"className":3287},[848],[836,3289],{"className":3290,"style":2051},[852],[836,3292,3294],{"className":3293},[857],"231",". The fan-out is ",[836,3297,3299],{"className":3298},[839],[836,3300,3302],{"className":3301,"ariaHidden":844},[843],[836,3303,3305,3308],{"className":3304},[848],[836,3306],{"className":3307,"style":2051},[852],[836,3309,1841],{"className":3310},[857]," at the\nroot, ",[836,3313,3315],{"className":3314},[839],[836,3316,3318],{"className":3317,"ariaHidden":844},[843],[836,3319,3321,3324],{"className":3320},[848],[836,3322],{"className":3323,"style":2051},[852],[836,3325,470],{"className":3326},[857]," at depth one, and ",[836,3329,3331],{"className":3330},[839],[836,3332,3334],{"className":3333,"ariaHidden":844},[843],[836,3335,3337,3340],{"className":3336},[848],[836,3338],{"className":3339,"style":2051},[852],[836,3341,414],{"className":3342},[857]," at depth two, so the leaf count is the falling\nproduct ",[836,3345,3347],{"className":3346},[839],[836,3348,3350,3368,3386,3404],{"className":3349,"ariaHidden":844},[843],[836,3351,3353,3356,3359,3362,3365],{"className":3352},[848],[836,3354],{"className":3355,"style":2051},[852],[836,3357,1841],{"className":3358},[857],[836,3360],{"className":3361,"style":2038},[1135],[836,3363,2262],{"className":3364},[1186],[836,3366],{"className":3367,"style":2038},[1135],[836,3369,3371,3374,3377,3380,3383],{"className":3370},[848],[836,3372],{"className":3373,"style":2051},[852],[836,3375,470],{"className":3376},[857],[836,3378],{"className":3379,"style":2038},[1135],[836,3381,2262],{"className":3382},[1186],[836,3384],{"className":3385,"style":2038},[1135],[836,3387,3389,3392,3395,3398,3401],{"className":3388},[848],[836,3390],{"className":3391,"style":2051},[852],[836,3393,414],{"className":3394},[857],[836,3396],{"className":3397,"style":2524},[1135],[836,3399,2529],{"className":3400},[2528],[836,3402],{"className":3403,"style":2524},[1135],[836,3405,3407,3410,3413],{"className":3406},[848],[836,3408],{"className":3409,"style":962},[852],[836,3411,1841],{"className":3412},[857],[836,3414,2327],{"className":3415},[1206],[432,3417,3419,3420,3508],{"id":3418},"combinations-kn-with-a-start-index","Combinations: ",[836,3421,3423],{"className":3422},[839],[836,3424,3426],{"className":3425,"ariaHidden":844},[843],[836,3427,3429,3433],{"className":3428},[848],[836,3430],{"className":3431,"style":3432},[852],"height:1.2em;vertical-align:-0.35em;",[836,3434,3436,3446,3502],{"className":3435},[857],[836,3437,3441],{"className":3438,"style":3440},[1078,3439],"delimcenter","top:0em;",[836,3442,2174],{"className":3443},[3444,3445],"delimsizing","size1",[836,3447,3450],{"className":3448},[3449],"mfrac",[836,3451,3453,3493],{"className":3452},[1027,1092],[836,3454,3456,3490],{"className":3455},[1031],[836,3457,3460,3475],{"className":3458,"style":3459},[1035],"height:0.7454em;",[836,3461,3463,3466],{"style":3462},"top:-2.355em;",[836,3464],{"className":3465,"style":1043},[1042],[836,3467,3469],{"className":3468},[1047,1048,1049,1050],[836,3470,3472],{"className":3471},[857,1050],[836,3473,2624],{"className":3474,"style":2623},[857,858,1050],[836,3476,3478,3481],{"style":3477},"top:-3.144em;",[836,3479],{"className":3480,"style":1043},[1042],[836,3482,3484],{"className":3483},[1047,1048,1049,1050],[836,3485,3487],{"className":3486},[857,1050],[836,3488,1054],{"className":3489},[857,858,1050],[836,3491,1117],{"className":3492},[1116],[836,3494,3496],{"className":3495},[1031],[836,3497,3500],{"className":3498,"style":3499},[1035],"height:0.345em;",[836,3501],{},[836,3503,3505],{"className":3504,"style":3440},[1206,3439],[836,3506,2207],{"className":3507},[3444,3445]," with a start index",[381,3510,2331,3511,3514,3515,3518,3519,3534,3535,3565,3566,3596,3597,3600,3601],{},[394,3512,3513],{},"combination"," is a subset of a ",[389,3516,3517],{},"fixed size"," ",[836,3520,3522],{"className":3521},[839],[836,3523,3525],{"className":3524,"ariaHidden":844},[843],[836,3526,3528,3531],{"className":3527},[848],[836,3529],{"className":3530,"style":962},[852],[836,3532,2624],{"className":3533,"style":2623},[857,858]," where order does not matter.\nWe want ",[836,3536,3538],{"className":3537},[839],[836,3539,3541],{"className":3540,"ariaHidden":844},[843],[836,3542,3544,3547,3550,3553,3556,3559,3562],{"className":3543},[848],[836,3545],{"className":3546,"style":1074},[852],[836,3548,1079],{"className":3549},[1078],[836,3551,414],{"className":3552},[857],[836,3554,1131],{"className":3555},[1130],[836,3557],{"className":3558,"style":1136},[1135],[836,3560,1841],{"className":3561},[857],[836,3563,1207],{"className":3564},[1206]," but not also ",[836,3567,3569],{"className":3568},[839],[836,3570,3572],{"className":3571,"ariaHidden":844},[843],[836,3573,3575,3578,3581,3584,3587,3590,3593],{"className":3574},[848],[836,3576],{"className":3577,"style":1074},[852],[836,3579,1079],{"className":3580},[1078],[836,3582,1841],{"className":3583},[857],[836,3585,1131],{"className":3586},[1130],[836,3588],{"className":3589,"style":1136},[1135],[836,3591,414],{"className":3592},[857],[836,3594,1207],{"className":3595},[1206],", so we reuse the ",[394,3598,3599],{},"start-index"," trick\nfrom subsets, which generates each combination exactly once by only ever choosing\nforward. Completeness is now ",[2337,3602,3603,3604,3619],{},"we have collected ",[836,3605,3607],{"className":3606},[839],[836,3608,3610],{"className":3609,"ariaHidden":844},[843],[836,3611,3613,3616],{"className":3612},[848],[836,3614],{"className":3615,"style":962},[852],[836,3617,2624],{"className":3618,"style":2623},[857,858]," elements.",[862,3621,3623],{"className":864,"code":3622,"language":866,"meta":376,"style":376},"caption: $\\textsc{Combine}(n, k, start, partial)$ — choose $k$ in increasing order\nif $|partial| = k$ then\n  record a copy of $partial$\n  return\nfor $i \\gets start$ to $n$ do\n  $partial.\\text{push}(i)$ \u002F\u002F choose $i$\n  $\\textsc{Combine}(n, k, i+1, partial)$ \u002F\u002F forward only\n  $partial.\\text{pop}()$ \u002F\u002F un-choose\n",[483,3624,3625,3630,3635,3639,3643,3648,3653,3658],{"__ignoreMap":376},[836,3626,3627],{"class":871,"line":6},[836,3628,3629],{},"caption: $\\textsc{Combine}(n, k, start, partial)$ — choose $k$ in increasing order\n",[836,3631,3632],{"class":871,"line":18},[836,3633,3634],{},"if $|partial| = k$ then\n",[836,3636,3637],{"class":871,"line":24},[836,3638,884],{},[836,3640,3641],{"class":871,"line":73},[836,3642,889],{},[836,3644,3645],{"class":871,"line":102},[836,3646,3647],{},"for $i \\gets start$ to $n$ do\n",[836,3649,3650],{"class":871,"line":108},[836,3651,3652],{},"  $partial.\\text{push}(i)$ \u002F\u002F choose $i$\n",[836,3654,3655],{"class":871,"line":116},[836,3656,3657],{},"  $\\textsc{Combine}(n, k, i+1, partial)$ \u002F\u002F forward only\n",[836,3659,3660],{"class":871,"line":196},[836,3661,2015],{},[381,3663,3664,3665,3680,3681,3759,3760,3763,3764,2791],{},"The start index does the combinatorial bookkeeping: because the chosen indices\nstrictly increase along any root-to-leaf path, each ",[836,3666,3668],{"className":3667},[839],[836,3669,3671],{"className":3670,"ariaHidden":844},[843],[836,3672,3674,3677],{"className":3673},[848],[836,3675],{"className":3676,"style":962},[852],[836,3678,2624],{"className":3679,"style":2623},[857,858],"-subset corresponds to\nexactly one path, and we enumerate all ",[836,3682,3684],{"className":3683},[839],[836,3685,3687],{"className":3686,"ariaHidden":844},[843],[836,3688,3690,3693],{"className":3689},[848],[836,3691],{"className":3692,"style":3432},[852],[836,3694,3696,3702,3753],{"className":3695},[857],[836,3697,3699],{"className":3698,"style":3440},[1078,3439],[836,3700,2174],{"className":3701},[3444,3445],[836,3703,3705],{"className":3704},[3449],[836,3706,3708,3745],{"className":3707},[1027,1092],[836,3709,3711,3742],{"className":3710},[1031],[836,3712,3714,3728],{"className":3713,"style":3459},[1035],[836,3715,3716,3719],{"style":3462},[836,3717],{"className":3718,"style":1043},[1042],[836,3720,3722],{"className":3721},[1047,1048,1049,1050],[836,3723,3725],{"className":3724},[857,1050],[836,3726,2624],{"className":3727,"style":2623},[857,858,1050],[836,3729,3730,3733],{"style":3477},[836,3731],{"className":3732,"style":1043},[1042],[836,3734,3736],{"className":3735},[1047,1048,1049,1050],[836,3737,3739],{"className":3738},[857,1050],[836,3740,1054],{"className":3741},[857,858,1050],[836,3743,1117],{"className":3744},[1116],[836,3746,3748],{"className":3747},[1031],[836,3749,3751],{"className":3750,"style":3499},[1035],[836,3752],{},[836,3754,3756],{"className":3755,"style":3440},[1206,3439],[836,3757,2207],{"className":3758},[3444,3445]," of them with no duplicates.\nThis is the ",[389,3761,3762],{},"same idea"," as the start-index subset enumerator: a combination is\nsimply a subset enumeration cut off at depth ",[836,3765,3767],{"className":3766},[839],[836,3768,3770],{"className":3769,"ariaHidden":844},[843],[836,3771,3773,3776],{"className":3772},[848],[836,3774],{"className":3775,"style":962},[852],[836,3777,2624],{"className":3778,"style":2623},[857,858],[432,3780,3782],{"id":3781},"handling-duplicates-skip-equal-siblings","Handling duplicates: skip equal siblings",[381,3784,3785,3786,3825,3826,3841,3842,3845,3846],{},"When the input multiset contains repeated values, say ",[836,3787,3789],{"className":3788},[839],[836,3790,3792],{"className":3791,"ariaHidden":844},[843],[836,3793,3795,3798,3801,3804,3807,3810,3813,3816,3819,3822],{"className":3794},[848],[836,3796],{"className":3797,"style":1074},[852],[836,3799,2619],{"className":3800},[1078],[836,3802,414],{"className":3803},[857],[836,3805,1131],{"className":3806},[1130],[836,3808],{"className":3809,"style":1136},[1135],[836,3811,470],{"className":3812},[857],[836,3814,1131],{"className":3815},[1130],[836,3817],{"className":3818,"style":1136},[1135],[836,3820,470],{"className":3821},[857],[836,3823,2644],{"className":3824},[1206],", the naive\nenumerator emits the same combination twice, because the two ",[836,3827,3829],{"className":3828},[839],[836,3830,3832],{"className":3831,"ariaHidden":844},[843],[836,3833,3835,3838],{"className":3834},[848],[836,3836],{"className":3837,"style":2051},[852],[836,3839,470],{"className":3840},[857],"s are\n",[389,3843,3844],{},"distinguishable by position but identical in value",". The standard fix is to\n",[394,3847,3848],{},"sort the array, then at each level skip a choice equal to\nthe one just tried at the same depth.",[473,3850,3851],{"type":475},[381,3852,3853,3856,3857,3872,3873,3876,3877],{},[394,3854,3855],{},"Remark (Deduplication rule)."," With ",[836,3858,3860],{"className":3859},[839],[836,3861,3863],{"className":3862,"ariaHidden":844},[843],[836,3864,3866,3869],{"className":3865},[848],[836,3867],{"className":3868,"style":853},[852],[836,3870,384],{"className":3871},[857,858]," sorted, inside the loop\n",[483,3874,3875],{},"for i = start to n-1",":\n",[836,3878,3880],{"className":3879},[839],[836,3881,3883,3911,3992],{"className":3882,"ariaHidden":844},[843],[836,3884,3886,3890,3898,3901,3904,3908],{"className":3885},[848],[836,3887],{"className":3888,"style":3889},[852],"height:0.7335em;vertical-align:-0.0391em;",[836,3891,3893],{"className":3892},[857,944],[836,3894,3897],{"className":3895},[857,3896],"textbf","if ",[836,3899,1899],{"className":3900},[857,858],[836,3902],{"className":3903,"style":2524},[1135],[836,3905,3907],{"className":3906},[2528],">",[836,3909],{"className":3910,"style":2524},[1135],[836,3912,3914,3918,3922,3926,3929,3933,3936,3943,3983,3986,3989],{"className":3913},[848],[836,3915],{"className":3916,"style":3917},[852],"height:0.8444em;vertical-align:-0.15em;",[836,3919,3921],{"className":3920},[857,858],"s",[836,3923,3925],{"className":3924},[857,858],"t",[836,3927,384],{"className":3928},[857,858],[836,3930,3932],{"className":3931,"style":2169},[857,858],"r",[836,3934,3925],{"className":3935},[857,858],[836,3937,3939],{"className":3938},[857,944],[836,3940,3942],{"className":3941},[857,3896]," and ",[836,3944,3946,3949],{"className":3945},[857],[836,3947,384],{"className":3948},[857,858],[836,3950,3952],{"className":3951},[1023],[836,3953,3955,3975],{"className":3954},[1027,1092],[836,3956,3958,3972],{"className":3957},[1031],[836,3959,3961],{"className":3960,"style":1887},[1035],[836,3962,3963,3966],{"style":1102},[836,3964],{"className":3965,"style":1043},[1042],[836,3967,3969],{"className":3968},[1047,1048,1049,1050],[836,3970,1899],{"className":3971},[857,858,1050],[836,3973,1117],{"className":3974},[1116],[836,3976,3978],{"className":3977},[1031],[836,3979,3981],{"className":3980,"style":1124},[1035],[836,3982],{},[836,3984],{"className":3985,"style":2524},[1135],[836,3987,2529],{"className":3988},[2528],[836,3990],{"className":3991,"style":2524},[1135],[836,3993,3995,3999,4048],{"className":3994},[848],[836,3996],{"className":3997,"style":3998},[852],"height:0.9028em;vertical-align:-0.2083em;",[836,4000,4002,4005],{"className":4001},[857],[836,4003,384],{"className":4004},[857,858],[836,4006,4008],{"className":4007},[1023],[836,4009,4011,4040],{"className":4010},[1027,1092],[836,4012,4014,4037],{"className":4013},[1031],[836,4015,4017],{"className":4016,"style":1887},[1035],[836,4018,4019,4022],{"style":1102},[836,4020],{"className":4021,"style":1043},[1042],[836,4023,4025],{"className":4024},[1047,1048,1049,1050],[836,4026,4028,4031,4034],{"className":4027},[857,1050],[836,4029,1899],{"className":4030},[857,858,1050],[836,4032,1187],{"className":4033},[1186,1050],[836,4035,414],{"className":4036},[857,1050],[836,4038,1117],{"className":4039},[1116],[836,4041,4043],{"className":4042},[1031],[836,4044,4046],{"className":4045,"style":1200},[1035],[836,4047],{},[836,4049,4051],{"className":4050},[857,944],[836,4052,4054],{"className":4053},[857,3896]," then continue.",[381,4056,4057,4058,4105,4106,4109,4110,4156,4157,4160,4161,4164,4165,4168,4169,4172,4173,4176,4177,4238,4239,4356,4357,4360,4361,4406],{},"The condition ",[836,4059,4061],{"className":4060},[839],[836,4062,4064,4083],{"className":4063,"ariaHidden":844},[843],[836,4065,4067,4071,4074,4077,4080],{"className":4066},[848],[836,4068],{"className":4069,"style":4070},[852],"height:0.6986em;vertical-align:-0.0391em;",[836,4072,1899],{"className":4073},[857,858],[836,4075],{"className":4076,"style":2524},[1135],[836,4078,3907],{"className":4079},[2528],[836,4081],{"className":4082,"style":2524},[1135],[836,4084,4086,4090,4093,4096,4099,4102],{"className":4085},[848],[836,4087],{"className":4088,"style":4089},[852],"height:0.6151em;",[836,4091,3921],{"className":4092},[857,858],[836,4094,3925],{"className":4095},[857,858],[836,4097,384],{"className":4098},[857,858],[836,4100,3932],{"className":4101,"style":2169},[857,858],[836,4103,3925],{"className":4104},[857,858]," carries the logic. The ",[389,4107,4108],{},"first"," occurrence of a value at\na given level (when ",[836,4111,4113],{"className":4112},[839],[836,4114,4116,4135],{"className":4115,"ariaHidden":844},[843],[836,4117,4119,4123,4126,4129,4132],{"className":4118},[848],[836,4120],{"className":4121,"style":4122},[852],"height:0.6595em;",[836,4124,1899],{"className":4125},[857,858],[836,4127],{"className":4128,"style":2524},[1135],[836,4130,2529],{"className":4131},[2528],[836,4133],{"className":4134,"style":2524},[1135],[836,4136,4138,4141,4144,4147,4150,4153],{"className":4137},[848],[836,4139],{"className":4140,"style":4089},[852],[836,4142,3921],{"className":4143},[857,858],[836,4145,3925],{"className":4146},[857,858],[836,4148,384],{"className":4149},[857,858],[836,4151,3932],{"className":4152,"style":2169},[857,858],[836,4154,3925],{"className":4155},[857,858],") is always allowed; we only skip ",[389,4158,4159],{},"subsequent","\nequal values ",[394,4162,4163],{},"at the same depth",". Why does this dedup correctly? Two sibling\nbranches that choose equal values would root ",[389,4166,4167],{},"identical subtrees",", the same set\nof completions, so keeping only the first sibling drops the duplicate subtrees\nwhile losing no distinct solution. Note we skip equal ",[389,4170,4171],{},"siblings",", not equal\n",[389,4174,4175],{},"ancestors",": choosing ",[836,4178,4180],{"className":4179},[839],[836,4181,4183],{"className":4182,"ariaHidden":844},[843],[836,4184,4186,4189],{"className":4185},[848],[836,4187],{"className":4188,"style":1868},[852],[836,4190,4192,4195],{"className":4191},[857],[836,4193,384],{"className":4194},[857,858],[836,4196,4198],{"className":4197},[1023],[836,4199,4201,4230],{"className":4200},[1027,1092],[836,4202,4204,4227],{"className":4203},[1031],[836,4205,4207],{"className":4206,"style":1887},[1035],[836,4208,4209,4212],{"style":1102},[836,4210],{"className":4211,"style":1043},[1042],[836,4213,4215],{"className":4214},[1047,1048,1049,1050],[836,4216,4218,4221,4224],{"className":4217},[857,1050],[836,4219,1899],{"className":4220},[857,858,1050],[836,4222,1187],{"className":4223},[1186,1050],[836,4225,414],{"className":4226},[857,1050],[836,4228,1117],{"className":4229},[1116],[836,4231,4233],{"className":4232},[1031],[836,4234,4236],{"className":4235,"style":1200},[1035],[836,4237],{}," then descending and choosing ",[836,4240,4242],{"className":4241},[839],[836,4243,4245,4301],{"className":4244,"ariaHidden":844},[843],[836,4246,4248,4252,4292,4295,4298],{"className":4247},[848],[836,4249],{"className":4250,"style":4251},[852],"height:0.5806em;vertical-align:-0.15em;",[836,4253,4255,4258],{"className":4254},[857],[836,4256,384],{"className":4257},[857,858],[836,4259,4261],{"className":4260},[1023],[836,4262,4264,4284],{"className":4263},[1027,1092],[836,4265,4267,4281],{"className":4266},[1031],[836,4268,4270],{"className":4269,"style":1887},[1035],[836,4271,4272,4275],{"style":1102},[836,4273],{"className":4274,"style":1043},[1042],[836,4276,4278],{"className":4277},[1047,1048,1049,1050],[836,4279,1899],{"className":4280},[857,858,1050],[836,4282,1117],{"className":4283},[1116],[836,4285,4287],{"className":4286},[1031],[836,4288,4290],{"className":4289,"style":1124},[1035],[836,4291],{},[836,4293],{"className":4294,"style":2524},[1135],[836,4296,2529],{"className":4297},[2528],[836,4299],{"className":4300,"style":2524},[1135],[836,4302,4304,4307],{"className":4303},[848],[836,4305],{"className":4306,"style":1868},[852],[836,4308,4310,4313],{"className":4309},[857],[836,4311,384],{"className":4312},[857,858],[836,4314,4316],{"className":4315},[1023],[836,4317,4319,4348],{"className":4318},[1027,1092],[836,4320,4322,4345],{"className":4321},[1031],[836,4323,4325],{"className":4324,"style":1887},[1035],[836,4326,4327,4330],{"style":1102},[836,4328],{"className":4329,"style":1043},[1042],[836,4331,4333],{"className":4332},[1047,1048,1049,1050],[836,4334,4336,4339,4342],{"className":4335},[857,1050],[836,4337,1899],{"className":4338},[857,858,1050],[836,4340,1187],{"className":4341},[1186,1050],[836,4343,414],{"className":4344},[857,1050],[836,4346,1117],{"className":4347},[1116],[836,4349,4351],{"className":4350},[1031],[836,4352,4354],{"className":4353,"style":1200},[1035],[836,4355],{}," is\nlegitimate (it uses ",[389,4358,4359],{},"both"," copies), and there ",[836,4362,4364],{"className":4363},[839],[836,4365,4367,4385],{"className":4366,"ariaHidden":844},[843],[836,4368,4370,4373,4376,4379,4382],{"className":4369},[848],[836,4371],{"className":4372,"style":4122},[852],[836,4374,1899],{"className":4375},[857,858],[836,4377],{"className":4378,"style":2524},[1135],[836,4380,2529],{"className":4381},[2528],[836,4383],{"className":4384,"style":2524},[1135],[836,4386,4388,4391,4394,4397,4400,4403],{"className":4387},[848],[836,4389],{"className":4390,"style":4089},[852],[836,4392,3921],{"className":4393},[857,858],[836,4395,3925],{"className":4396},[857,858],[836,4398,384],{"className":4399},[857,858],[836,4401,3932],{"className":4402,"style":2169},[857,858],[836,4404,3925],{"className":4405},[857,858]," so the guard does not\nfire.",[523,4408,4410,4794],{"className":4409},[526,527],[529,4411,4415],{"xmlns":531,"width":4412,"height":4413,"viewBox":4414},"307.617","137.519","-75 -75 230.713 103.139",[536,4416,4417,4420,4427,4430,4451,4454,4457,4460,4491,4494,4497,4519,4559,4586,4617,4620,4639,4642,4645,4648,4676,4679,4682,4700,4729,4758],{"stroke":538,"style":539},[549,4418],{"fill":542,"d":4419},"M60.136-72.07h-9.072a4 4 0 0 0-4 4v9.072a4 4 0 0 0 4 4h9.072a4 4 0 0 0 4-4v-9.072a4 4 0 0 0-4-4ZM47.064-54.998",[536,4421,4423],{"transform":4422},"translate(-4.625 2.25)",[549,4424],{"d":4425,"fill":538,"stroke":538,"className":4426,"style":571},"M57.573-62.453L57.573-64.641Q57.573-65.107 57.193-65.382Q56.813-65.657 56.329-65.657Q56.303-65.657 56.270-65.681Q56.237-65.705 56.237-65.740L56.237-65.837Q56.237-65.867 56.272-65.894Q56.308-65.920 56.329-65.920Q56.813-65.920 57.193-66.188Q57.573-66.456 57.573-66.927L57.573-69.115Q57.573-69.533 57.865-69.796Q58.158-70.060 58.584-70.172Q59.010-70.284 59.406-70.284L59.489-70.284Q59.520-70.284 59.548-70.260Q59.577-70.236 59.577-70.205L59.577-70.104Q59.577-70.082 59.544-70.053Q59.511-70.025 59.489-70.025Q59.015-70.025 58.630-69.774Q58.246-69.524 58.246-69.080L58.246-66.891Q58.246-66.478 57.940-66.195Q57.635-65.911 57.182-65.784Q57.459-65.709 57.703-65.558Q57.947-65.406 58.096-65.182Q58.246-64.958 58.246-64.677L58.246-62.488Q58.246-62.185 58.430-61.972Q58.615-61.759 58.898-61.651Q59.182-61.543 59.489-61.543Q59.520-61.543 59.548-61.519Q59.577-61.495 59.577-61.464L59.577-61.363Q59.577-61.341 59.544-61.313Q59.511-61.284 59.489-61.284L59.406-61.284Q59.010-61.284 58.584-61.396Q58.158-61.508 57.865-61.772Q57.573-62.035 57.573-62.453M60.856-61.363L60.856-61.464Q60.856-61.495 60.887-61.519Q60.917-61.543 60.948-61.543Q61.256-61.543 61.539-61.651Q61.823-61.759 62.007-61.972Q62.192-62.185 62.192-62.488L62.192-64.677Q62.192-64.967 62.341-65.189Q62.491-65.410 62.732-65.560Q62.974-65.709 63.251-65.784Q62.794-65.916 62.493-66.197Q62.192-66.478 62.192-66.891L62.192-69.080Q62.192-69.383 62.007-69.596Q61.823-69.809 61.539-69.917Q61.256-70.025 60.948-70.025Q60.931-70.025 60.893-70.053Q60.856-70.082 60.856-70.104L60.856-70.205Q60.856-70.236 60.887-70.260Q60.917-70.284 60.948-70.284L61.027-70.284Q61.427-70.284 61.853-70.172Q62.280-70.060 62.572-69.796Q62.864-69.533 62.864-69.115L62.864-66.927Q62.864-66.610 63.044-66.382Q63.225-66.153 63.515-66.037Q63.805-65.920 64.108-65.920Q64.134-65.920 64.165-65.894Q64.196-65.867 64.196-65.837L64.196-65.740Q64.196-65.705 64.167-65.681Q64.139-65.657 64.108-65.657Q63.624-65.657 63.244-65.382Q62.864-65.107 62.864-64.641L62.864-62.453Q62.864-62.035 62.572-61.772Q62.280-61.508 61.853-61.396Q61.427-61.284 61.027-61.284L60.948-61.284Q60.931-61.284 60.893-61.313Q60.856-61.341 60.856-61.363",[553],[549,4428],{"fill":542,"d":4429},"M-23.82-32.236h-11.876a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h11.875a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4Zm-15.876 17.071",[536,4431,4432,4439,4445],{"stroke":542,"fontSize":1459},[536,4433,4435],{"transform":4434},"translate(-92.296 42.084)",[549,4436],{"d":4437,"fill":538,"stroke":538,"className":4438,"style":571},"M57.573-62.453L57.573-64.641Q57.573-65.107 57.193-65.382Q56.813-65.657 56.329-65.657Q56.303-65.657 56.270-65.681Q56.237-65.705 56.237-65.740L56.237-65.837Q56.237-65.867 56.272-65.894Q56.308-65.920 56.329-65.920Q56.813-65.920 57.193-66.188Q57.573-66.456 57.573-66.927L57.573-69.115Q57.573-69.533 57.865-69.796Q58.158-70.060 58.584-70.172Q59.010-70.284 59.406-70.284L59.489-70.284Q59.520-70.284 59.548-70.260Q59.577-70.236 59.577-70.205L59.577-70.104Q59.577-70.082 59.544-70.053Q59.511-70.025 59.489-70.025Q59.015-70.025 58.630-69.774Q58.246-69.524 58.246-69.080L58.246-66.891Q58.246-66.478 57.940-66.195Q57.635-65.911 57.182-65.784Q57.459-65.709 57.703-65.558Q57.947-65.406 58.096-65.182Q58.246-64.958 58.246-64.677L58.246-62.488Q58.246-62.185 58.430-61.972Q58.615-61.759 58.898-61.651Q59.182-61.543 59.489-61.543Q59.520-61.543 59.548-61.519Q59.577-61.495 59.577-61.464L59.577-61.363Q59.577-61.341 59.544-61.313Q59.511-61.284 59.489-61.284L59.406-61.284Q59.010-61.284 58.584-61.396Q58.158-61.508 57.865-61.772Q57.573-62.035 57.573-62.453",[553],[536,4440,4441],{"transform":4434},[549,4442],{"d":4443,"fill":538,"stroke":538,"className":4444,"style":571},"M64.132-63.534L61.100-63.534L61.100-63.850Q62.251-63.850 62.251-64.145L62.251-68.869Q61.763-68.636 61.042-68.636L61.042-68.952Q62.172-68.952 62.734-69.528L62.879-69.528Q62.914-69.528 62.947-69.495Q62.980-69.462 62.980-69.427L62.980-64.145Q62.980-63.850 64.132-63.850",[553],[536,4446,4447],{"transform":4434},[549,4448],{"d":4449,"fill":538,"stroke":538,"className":4450,"style":571},"M65.487-61.363L65.487-61.464Q65.487-61.495 65.518-61.519Q65.549-61.543 65.579-61.543Q65.887-61.543 66.171-61.651Q66.454-61.759 66.639-61.972Q66.823-62.185 66.823-62.488L66.823-64.677Q66.823-64.967 66.973-65.189Q67.122-65.410 67.364-65.560Q67.605-65.709 67.882-65.784Q67.425-65.916 67.124-66.197Q66.823-66.478 66.823-66.891L66.823-69.080Q66.823-69.383 66.639-69.596Q66.454-69.809 66.171-69.917Q65.887-70.025 65.579-70.025Q65.562-70.025 65.525-70.053Q65.487-70.082 65.487-70.104L65.487-70.205Q65.487-70.236 65.518-70.260Q65.549-70.284 65.579-70.284L65.659-70.284Q66.058-70.284 66.485-70.172Q66.911-70.060 67.203-69.796Q67.496-69.533 67.496-69.115L67.496-66.927Q67.496-66.610 67.676-66.382Q67.856-66.153 68.146-66.037Q68.436-65.920 68.739-65.920Q68.766-65.920 68.796-65.894Q68.827-65.867 68.827-65.837L68.827-65.740Q68.827-65.705 68.798-65.681Q68.770-65.657 68.739-65.657Q68.256-65.657 67.876-65.382Q67.496-65.107 67.496-64.641L67.496-62.453Q67.496-62.035 67.203-61.772Q66.911-61.508 66.485-61.396Q66.058-61.284 65.659-61.284L65.579-61.284Q65.562-61.284 65.525-61.313Q65.487-61.341 65.487-61.363",[553],[549,4452],{"fill":542,"d":4453},"m46.864-59.458-64.673 30.186",[549,4455],{"stroke":542,"d":4456},"m-19.62-28.426 3.575.096-1.764-.942.411-1.957",[549,4458],{"fill":542,"d":4459},"M-40.792 7.598h-20.611a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h20.61a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4Zm-24.611 17.071",[536,4461,4462,4468,4473,4479,4485],{"stroke":542,"fontSize":1459},[536,4463,4465],{"transform":4464},"translate(-118.003 81.918)",[549,4466],{"d":4437,"fill":538,"stroke":538,"className":4467,"style":571},[553],[536,4469,4470],{"transform":4464},[549,4471],{"d":4443,"fill":538,"stroke":538,"className":4472,"style":571},[553],[536,4474,4475],{"transform":4464},[549,4476],{"d":4477,"fill":538,"stroke":538,"className":4478,"style":571},"M65.751-61.930Q65.751-61.970 65.786-62.005Q66.111-62.317 66.291-62.723Q66.472-63.130 66.472-63.578L66.472-63.661Q66.331-63.534 66.129-63.534Q65.984-63.534 65.870-63.600Q65.755-63.666 65.689-63.778Q65.623-63.890 65.623-64.039Q65.623-64.259 65.764-64.400Q65.905-64.540 66.129-64.540Q66.450-64.540 66.590-64.242Q66.731-63.943 66.731-63.578Q66.731-63.068 66.527-62.613Q66.322-62.159 65.957-61.807Q65.922-61.789 65.896-61.789Q65.839-61.789 65.795-61.833Q65.751-61.877 65.751-61.930",[553],[536,4480,4481],{"transform":4464},[549,4482],{"d":4483,"fill":538,"stroke":538,"className":4484,"style":571},"M72.868-63.534L69.418-63.534L69.418-63.767Q69.418-63.780 69.449-63.811L70.903-65.388Q71.369-65.885 71.622-66.190Q71.875-66.496 72.066-66.907Q72.257-67.318 72.257-67.757Q72.257-68.346 71.934-68.779Q71.611-69.212 71.031-69.212Q70.767-69.212 70.521-69.102Q70.275-68.992 70.099-68.805Q69.923-68.618 69.827-68.368L69.906-68.368Q70.108-68.368 70.251-68.232Q70.394-68.096 70.394-67.880Q70.394-67.674 70.251-67.535Q70.108-67.397 69.906-67.397Q69.704-67.397 69.561-67.540Q69.418-67.682 69.418-67.880Q69.418-68.342 69.655-68.715Q69.893-69.089 70.293-69.308Q70.692-69.528 71.141-69.528Q71.664-69.528 72.118-69.313Q72.573-69.097 72.846-68.698Q73.118-68.298 73.118-67.757Q73.118-67.362 72.947-67.008Q72.775-66.654 72.510-66.375Q72.244-66.096 71.793-65.711Q71.343-65.327 71.264-65.252L70.240-64.290L71.057-64.290Q71.708-64.290 72.145-64.301Q72.582-64.312 72.613-64.334Q72.683-64.417 72.738-64.657Q72.793-64.896 72.833-65.164L73.118-65.164",[553],[536,4486,4487],{"transform":4464},[549,4488],{"d":4489,"fill":538,"stroke":538,"className":4490,"style":571},"M74.223-61.363L74.223-61.464Q74.223-61.495 74.254-61.519Q74.285-61.543 74.315-61.543Q74.623-61.543 74.907-61.651Q75.190-61.759 75.375-61.972Q75.559-62.185 75.559-62.488L75.559-64.677Q75.559-64.967 75.709-65.189Q75.858-65.410 76.100-65.560Q76.341-65.709 76.618-65.784Q76.161-65.916 75.860-66.197Q75.559-66.478 75.559-66.891L75.559-69.080Q75.559-69.383 75.375-69.596Q75.190-69.809 74.907-69.917Q74.623-70.025 74.315-70.025Q74.298-70.025 74.261-70.053Q74.223-70.082 74.223-70.104L74.223-70.205Q74.223-70.236 74.254-70.260Q74.285-70.284 74.315-70.284L74.395-70.284Q74.794-70.284 75.221-70.172Q75.647-70.060 75.939-69.796Q76.232-69.533 76.232-69.115L76.232-66.927Q76.232-66.610 76.412-66.382Q76.592-66.153 76.882-66.037Q77.172-65.920 77.475-65.920Q77.502-65.920 77.532-65.894Q77.563-65.867 77.563-65.837L77.563-65.740Q77.563-65.705 77.534-65.681Q77.506-65.657 77.475-65.657Q76.992-65.657 76.612-65.382Q76.232-65.107 76.232-64.641L76.232-62.453Q76.232-62.035 75.939-61.772Q75.647-61.508 75.221-61.396Q74.794-61.284 74.395-61.284L74.315-61.284Q74.298-61.284 74.261-61.313Q74.223-61.341 74.223-61.363",[553],[549,4492],{"fill":542,"d":4493},"m-34.437-14.965-11.037 20.6",[549,4495],{"stroke":542,"d":4496},"m-46.419 7.398 2.922-2.065-1.977.302-.844-1.813",[536,4498,4500,4503],{"fill":4499},"var(--tk-bg)",[549,4501],{"stroke":542,"d":4502},"M-44.628-12.32H-53.7a4 4 0 0 0-4 4V.753a4 4 0 0 0 4 4h9.072a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4M-57.7 4.753",[536,4504,4505,4512],{"fill":538,"stroke":542},[536,4506,4508],{"transform":4507},"translate(-108.884 60.758)",[549,4509],{"d":4510,"fill":538,"stroke":538,"className":4511,"style":554},"M57.090-63.466Q56.766-63.466 56.521-63.623Q56.277-63.780 56.145-64.045Q56.014-64.310 56.014-64.635Q56.014-65.103 56.267-65.566Q56.519-66.029 56.943-66.325Q57.367-66.620 57.839-66.620Q58.054-66.620 58.240-66.516Q58.427-66.412 58.546-66.227Q58.570-66.340 58.664-66.414Q58.758-66.487 58.874-66.487Q58.977-66.487 59.045-66.426Q59.114-66.364 59.114-66.265Q59.114-66.207 59.107-66.180L58.625-64.262Q58.598-64.105 58.598-64.016Q58.598-63.889 58.649-63.789Q58.700-63.688 58.820-63.688Q59.042-63.688 59.155-63.941Q59.267-64.194 59.353-64.563Q59.377-64.624 59.428-64.624L59.541-64.624Q59.575-64.624 59.597-64.595Q59.620-64.566 59.620-64.542Q59.620-64.529 59.613-64.515Q59.350-63.466 58.806-63.466Q58.557-63.466 58.348-63.589Q58.140-63.712 58.071-63.941Q57.596-63.466 57.090-63.466M57.104-63.688Q57.377-63.688 57.629-63.872Q57.880-64.057 58.071-64.324L58.440-65.804Q58.403-65.964 58.322-66.101Q58.242-66.238 58.116-66.318Q57.989-66.398 57.825-66.398Q57.617-66.398 57.430-66.274Q57.244-66.149 57.106-65.957Q56.967-65.766 56.882-65.564Q56.769-65.270 56.685-64.925Q56.601-64.580 56.601-64.330Q56.601-64.074 56.730-63.881Q56.858-63.688 57.104-63.688",[553],[536,4513,4514],{"transform":4507},[549,4515],{"d":4516,"fill":538,"stroke":538,"className":4517,"style":4518},"M62.719-62.534L60.678-62.534L60.678-62.773Q61.459-62.773 61.459-62.893L61.459-65.439Q61.281-65.364 61.077-65.334Q60.873-65.305 60.644-65.305L60.644-65.544Q60.980-65.544 61.264-65.613Q61.547-65.681 61.757-65.864L61.862-65.864Q61.889-65.864 61.913-65.840Q61.938-65.815 61.938-65.788L61.938-62.893Q61.938-62.773 62.719-62.773",[553],"stroke-width:0.150",[536,4520,4521,4524],{"stroke":712,"style":767},[549,4522],{"fill":542,"d":4523},"M3.234 7.598h-23.305a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4H3.234a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4Zm-27.305 17.071",[536,4525,4526,4532,4537,4542,4547,4552],{"fill":712,"stroke":542},[536,4527,4529],{"transform":4528},"translate(-76.671 82.121)",[549,4530],{"d":4437,"fill":712,"stroke":712,"className":4531,"style":571},[553],[536,4533,4534],{"transform":4528},[549,4535],{"d":4443,"fill":712,"stroke":712,"className":4536,"style":571},[553],[536,4538,4539],{"transform":4528},[549,4540],{"d":4477,"fill":712,"stroke":712,"className":4541,"style":571},[553],[536,4543,4544],{"transform":4528},[549,4545],{"d":4483,"fill":712,"stroke":712,"className":4546,"style":571},[553],[536,4548,4549],{"transform":4528},[549,4550],{"d":4489,"fill":712,"stroke":712,"className":4551,"style":571},[553],[536,4553,4554],{"transform":4528},[549,4555],{"d":4556,"fill":712,"stroke":712,"className":4557,"style":4558},"M78.812-67.591L78.630-67.662Q78.577-67.682 78.577-67.741Q78.577-67.747 78.583-67.770L79.441-70.465Q79.477-70.580 79.569-70.646Q79.661-70.711 79.770-70.711Q79.919-70.711 80.035-70.610Q80.150-70.509 80.150-70.363Q80.150-70.278 80.112-70.202L78.926-67.632Q78.897-67.586 78.847-67.586Q78.841-67.586 78.812-67.591",[553],"stroke-width:0.180",[536,4560,4561,4564,4567],{"stroke":712,"style":767},[549,4562],{"fill":542,"d":4563},"m-25.08-14.965 11.038 20.6",[549,4565],{"stroke":542,"d":4566},"m-13.098 7.398-.1-3.576-.844 1.813-1.977-.302",[536,4568,4569,4572],{"fill":4499},[549,4570],{"stroke":542,"d":4571},"M-5.817-12.32h-9.072a4 4 0 0 0-4 4V.753a4 4 0 0 0 4 4h9.072a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4M-18.889 4.753",[536,4573,4574,4580],{"fill":538,"stroke":542},[536,4575,4577],{"transform":4576},"translate(-70.073 60.758)",[549,4578],{"d":4510,"fill":538,"stroke":538,"className":4579,"style":554},[553],[536,4581,4582],{"transform":4576},[549,4583],{"d":4584,"fill":538,"stroke":538,"className":4585,"style":4518},"M62.719-62.534L60.392-62.534L60.392-62.715Q60.395-62.727 60.414-62.754L61.454-63.630Q61.762-63.889 61.916-64.033Q62.069-64.177 62.199-64.394Q62.328-64.612 62.328-64.853Q62.328-65.095 62.201-65.271Q62.074-65.447 61.870-65.536Q61.667-65.625 61.427-65.625Q61.220-65.625 61.024-65.537Q60.829-65.449 60.724-65.283Q60.844-65.283 60.921-65.191Q60.998-65.100 60.998-64.985Q60.998-64.858 60.911-64.769Q60.824-64.680 60.697-64.680Q60.568-64.680 60.480-64.770Q60.392-64.861 60.392-64.985Q60.392-65.266 60.565-65.465Q60.739-65.664 61.010-65.764Q61.281-65.864 61.554-65.864Q61.879-65.864 62.184-65.757Q62.489-65.649 62.686-65.422Q62.882-65.195 62.882-64.858Q62.882-64.621 62.769-64.429Q62.655-64.236 62.495-64.098Q62.335-63.960 62.053-63.772Q61.771-63.584 61.693-63.525L61.027-63.034L61.483-63.034Q61.916-63.034 62.210-63.041Q62.504-63.047 62.519-63.059Q62.597-63.157 62.653-63.518L62.882-63.518",[553],[536,4587,4588,4591],{"fill":4499},[549,4589],{"stroke":542,"d":4590},"M9.422-52.478H-3.944a4 4 0 0 0-4 4v9.072a4 4 0 0 0 4 4H9.422a4 4 0 0 0 4-4v-9.072a4 4 0 0 0-4-4M-7.944-35.406",[536,4592,4593,4599,4605,4611],{"fill":538,"stroke":542},[536,4594,4596],{"transform":4595},"translate(-62.044 21.347)",[549,4597],{"d":4510,"fill":538,"stroke":538,"className":4598,"style":554},[553],[536,4600,4601],{"transform":4595},[549,4602],{"d":4603,"fill":538,"stroke":538,"className":4604,"style":4518},"M61.637-62.424Q60.919-62.424 60.622-62.898Q60.324-63.371 60.324-64.128Q60.324-64.892 60.620-65.378Q60.917-65.864 61.637-65.864Q62.360-65.864 62.657-65.378Q62.953-64.892 62.953-64.128Q62.953-63.774 62.891-63.474Q62.829-63.174 62.678-62.934Q62.528-62.695 62.271-62.560Q62.013-62.424 61.637-62.424M61.637-62.610Q62.001-62.610 62.177-62.860Q62.353-63.110 62.393-63.436Q62.433-63.762 62.433-64.209Q62.433-64.641 62.393-64.938Q62.353-65.234 62.178-65.456Q62.003-65.679 61.637-65.679Q61.273-65.679 61.099-65.456Q60.924-65.234 60.884-64.938Q60.844-64.641 60.844-64.209Q60.844-63.762 60.884-63.436Q60.924-63.110 61.100-62.860Q61.276-62.610 61.637-62.610",[553],[536,4606,4607],{"transform":4595},[549,4608],{"d":4609,"fill":538,"stroke":538,"className":4610,"style":554},"M69.322-64.341L64.489-64.341Q64.421-64.351 64.375-64.397Q64.329-64.443 64.329-64.515Q64.329-64.580 64.375-64.626Q64.421-64.672 64.489-64.682L69.322-64.682Q69.391-64.672 69.437-64.626Q69.483-64.580 69.483-64.515Q69.483-64.443 69.437-64.397Q69.391-64.351 69.322-64.341M69.322-65.879L64.489-65.879Q64.421-65.889 64.375-65.935Q64.329-65.981 64.329-66.053Q64.329-66.197 64.489-66.221L69.322-66.221Q69.483-66.197 69.483-66.053Q69.483-65.981 69.437-65.935Q69.391-65.889 69.322-65.879",[553],[536,4612,4613],{"transform":4595},[549,4614],{"d":4615,"fill":538,"stroke":538,"className":4616,"style":554},"M73.305-63.534L70.775-63.534L70.775-63.814Q71.743-63.814 71.743-64.023L71.743-67.642Q71.350-67.454 70.728-67.454L70.728-67.735Q71.145-67.735 71.509-67.836Q71.873-67.936 72.129-68.182L72.255-68.182Q72.320-68.165 72.337-68.097L72.337-64.023Q72.337-63.814 73.305-63.814",[553],[549,4618],{"fill":542,"d":4619},"M61.537-32.236H49.662a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h11.875a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4ZM45.662-15.165",[536,4621,4622,4628,4634],{"stroke":542,"fontSize":1459},[536,4623,4625],{"transform":4624},"translate(-6.937 42.084)",[549,4626],{"d":4437,"fill":538,"stroke":538,"className":4627,"style":571},[553],[536,4629,4630],{"transform":4624},[549,4631],{"d":4632,"fill":538,"stroke":538,"className":4633,"style":571},"M64.132-63.534L60.682-63.534L60.682-63.767Q60.682-63.780 60.713-63.811L62.167-65.388Q62.633-65.885 62.886-66.190Q63.139-66.496 63.330-66.907Q63.521-67.318 63.521-67.757Q63.521-68.346 63.198-68.779Q62.875-69.212 62.295-69.212Q62.031-69.212 61.785-69.102Q61.539-68.992 61.363-68.805Q61.187-68.618 61.091-68.368L61.170-68.368Q61.372-68.368 61.515-68.232Q61.658-68.096 61.658-67.880Q61.658-67.674 61.515-67.535Q61.372-67.397 61.170-67.397Q60.968-67.397 60.825-67.540Q60.682-67.682 60.682-67.880Q60.682-68.342 60.919-68.715Q61.157-69.089 61.557-69.308Q61.956-69.528 62.405-69.528Q62.928-69.528 63.382-69.313Q63.837-69.097 64.110-68.698Q64.382-68.298 64.382-67.757Q64.382-67.362 64.211-67.008Q64.039-66.654 63.774-66.375Q63.508-66.096 63.057-65.711Q62.607-65.327 62.528-65.252L61.504-64.290L62.321-64.290Q62.972-64.290 63.409-64.301Q63.846-64.312 63.877-64.334Q63.947-64.417 64.002-64.657Q64.057-64.896 64.097-65.164L64.382-65.164",[553],[536,4635,4636],{"transform":4624},[549,4637],{"d":4449,"fill":538,"stroke":538,"className":4638,"style":571},[553],[549,4640],{"fill":542,"d":4641},"M55.6-54.798v20.362",[549,4643],{"stroke":542,"d":4644},"m55.6-32.436 1.6-3.2-1.6 1.2-1.6-1.2",[549,4646],{"fill":542,"d":4647},"M65.905 7.598h-20.61a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h20.61a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4Zm-24.61 17.071",[536,4649,4650,4656,4661,4666,4671],{"stroke":542,"fontSize":1459},[536,4651,4653],{"transform":4652},"translate(-11.305 81.918)",[549,4654],{"d":4437,"fill":538,"stroke":538,"className":4655,"style":571},[553],[536,4657,4658],{"transform":4652},[549,4659],{"d":4632,"fill":538,"stroke":538,"className":4660,"style":571},[553],[536,4662,4663],{"transform":4652},[549,4664],{"d":4477,"fill":538,"stroke":538,"className":4665,"style":571},[553],[536,4667,4668],{"transform":4652},[549,4669],{"d":4483,"fill":538,"stroke":538,"className":4670,"style":571},[553],[536,4672,4673],{"transform":4652},[549,4674],{"d":4489,"fill":538,"stroke":538,"className":4675,"style":571},[553],[549,4677],{"fill":542,"d":4678},"M55.6-14.965V5.398",[549,4680],{"stroke":542,"d":4681},"m55.6 7.398 1.6-3.2-1.6 1.2-1.6-1.2",[536,4683,4684,4687],{"fill":4499},[549,4685],{"stroke":542,"d":4686},"M68.872-12.32H59.8a4 4 0 0 0-4 4V.753a4 4 0 0 0 4 4h9.072a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4M55.8 4.753",[536,4688,4689,4695],{"fill":538,"stroke":542},[536,4690,4692],{"transform":4691},"translate(4.616 60.758)",[549,4693],{"d":4510,"fill":538,"stroke":538,"className":4694,"style":554},[553],[536,4696,4697],{"transform":4691},[549,4698],{"d":4584,"fill":538,"stroke":538,"className":4699,"style":4518},[553],[536,4701,4702,4705],{"fill":4499},[549,4703],{"stroke":542,"d":4704},"M51.4-52.153H38.034a4 4 0 0 0-4 4v9.072a4 4 0 0 0 4 4H51.4a4 4 0 0 0 4-4v-9.072a4 4 0 0 0-4-4M34.034-35.081",[536,4706,4707,4713,4718,4723],{"fill":538,"stroke":542},[536,4708,4710],{"transform":4709},"translate(-20.065 21.672)",[549,4711],{"d":4510,"fill":538,"stroke":538,"className":4712,"style":554},[553],[536,4714,4715],{"transform":4709},[549,4716],{"d":4516,"fill":538,"stroke":538,"className":4717,"style":4518},[553],[536,4719,4720],{"transform":4709},[549,4721],{"d":4609,"fill":538,"stroke":538,"className":4722,"style":554},[553],[536,4724,4725],{"transform":4709},[549,4726],{"d":4727,"fill":538,"stroke":538,"className":4728,"style":554},"M73.305-63.534L70.420-63.534L70.420-63.736Q70.420-63.766 70.447-63.794L71.695-65.011Q71.767-65.086 71.809-65.128Q71.852-65.171 71.931-65.250Q72.344-65.663 72.575-66.021Q72.806-66.378 72.806-66.802Q72.806-67.034 72.727-67.237Q72.648-67.441 72.507-67.591Q72.365-67.742 72.170-67.822Q71.975-67.902 71.743-67.902Q71.432-67.902 71.174-67.743Q70.916-67.584 70.786-67.307L70.806-67.307Q70.974-67.307 71.081-67.196Q71.189-67.085 71.189-66.921Q71.189-66.764 71.080-66.651Q70.970-66.538 70.806-66.538Q70.646-66.538 70.533-66.651Q70.420-66.764 70.420-66.921Q70.420-67.297 70.628-67.584Q70.837-67.871 71.172-68.027Q71.507-68.182 71.862-68.182Q72.286-68.182 72.666-68.024Q73.045-67.865 73.279-67.548Q73.513-67.232 73.513-66.802Q73.513-66.491 73.373-66.222Q73.233-65.954 73.028-65.749Q72.823-65.544 72.460-65.262Q72.098-64.980 71.989-64.884L71.134-64.156L71.777-64.156Q72.040-64.156 72.329-64.158Q72.618-64.159 72.836-64.168Q73.055-64.177 73.072-64.194Q73.134-64.259 73.171-64.426Q73.209-64.594 73.247-64.836L73.513-64.836",[553],[536,4730,4731,4734],{"stroke":712,"style":767},[549,4732],{"fill":542,"d":4733},"M148.243-32.236h-14.57a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h14.57a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4Zm-18.57 17.071",[536,4735,4736,4742,4747,4752],{"fill":712,"stroke":542},[536,4737,4739],{"transform":4738},"translate(77.074 42.287)",[549,4740],{"d":4437,"fill":712,"stroke":712,"className":4741,"style":571},[553],[536,4743,4744],{"transform":4738},[549,4745],{"d":4632,"fill":712,"stroke":712,"className":4746,"style":571},[553],[536,4748,4749],{"transform":4738},[549,4750],{"d":4449,"fill":712,"stroke":712,"className":4751,"style":571},[553],[536,4753,4754],{"transform":4738},[549,4755],{"d":4756,"fill":712,"stroke":712,"className":4757,"style":4558},"M70.076-67.591L69.894-67.662Q69.841-67.682 69.841-67.741Q69.841-67.747 69.847-67.770L70.705-70.465Q70.741-70.580 70.833-70.646Q70.925-70.711 71.034-70.711Q71.183-70.711 71.299-70.610Q71.414-70.509 71.414-70.363Q71.414-70.278 71.376-70.202L70.190-67.632Q70.161-67.586 70.111-67.586Q70.105-67.586 70.076-67.591",[553],[536,4759,4760,4763,4766],{"stroke":712,"style":767},[549,4761],{"fill":542,"d":4762},"M64.336-59.458 127.66-29.9",[549,4764],{"stroke":542,"d":4765},"m129.474-29.054-2.223-2.804.41 1.958-1.764.942",[536,4767,4768,4771],{"fill":4499},[549,4769],{"stroke":542,"d":4770},"M114.47-52.792h-13.365a4 4 0 0 0-4 4v9.072a4 4 0 0 0 4 4h13.365a4 4 0 0 0 4-4v-9.072a4 4 0 0 0-4-4M97.105-35.72",[536,4772,4773,4779,4784,4789],{"fill":538,"stroke":542},[536,4774,4776],{"transform":4775},"translate(43.005 21.034)",[549,4777],{"d":4510,"fill":538,"stroke":538,"className":4778,"style":554},[553],[536,4780,4781],{"transform":4775},[549,4782],{"d":4584,"fill":538,"stroke":538,"className":4783,"style":4518},[553],[536,4785,4786],{"transform":4775},[549,4787],{"d":4609,"fill":538,"stroke":538,"className":4788,"style":554},[553],[536,4790,4791],{"transform":4775},[549,4792],{"d":4727,"fill":538,"stroke":538,"className":4793,"style":554},[553],[830,4795,4797,4798,4837,4838,4998,4999,5029],{"className":4796},[833],"Sorted ",[836,4799,4801],{"className":4800},[839],[836,4802,4804],{"className":4803,"ariaHidden":844},[843],[836,4805,4807,4810,4813,4816,4819,4822,4825,4828,4831,4834],{"className":4806},[848],[836,4808],{"className":4809,"style":1074},[852],[836,4811,2619],{"className":4812},[1078],[836,4814,414],{"className":4815},[857],[836,4817,1131],{"className":4818},[1130],[836,4820],{"className":4821,"style":1136},[1135],[836,4823,470],{"className":4824},[857],[836,4826,1131],{"className":4827},[1130],[836,4829],{"className":4830,"style":1136},[1135],[836,4832,470],{"className":4833},[857],[836,4835,2644],{"className":4836},[1206],": the second equal sibling at a level (",[836,4839,4841],{"className":4840},[839],[836,4842,4844,4862,4943],{"className":4843,"ariaHidden":844},[843],[836,4845,4847,4850,4853,4856,4859],{"className":4846},[848],[836,4848],{"className":4849,"style":4070},[852],[836,4851,1899],{"className":4852},[857,858],[836,4854],{"className":4855,"style":2524},[1135],[836,4857,3907],{"className":4858},[2528],[836,4860],{"className":4861,"style":2524},[1135],[836,4863,4865,4869,4872,4875,4878,4881,4884,4887,4891,4894,4934,4937,4940],{"className":4864},[848],[836,4866],{"className":4867,"style":4868},[852],"height:0.8095em;vertical-align:-0.1944em;",[836,4870,3921],{"className":4871},[857,858],[836,4873,3925],{"className":4874},[857,858],[836,4876,384],{"className":4877},[857,858],[836,4879,3932],{"className":4880,"style":2169},[857,858],[836,4882,3925],{"className":4883},[857,858],[836,4885,1131],{"className":4886},[1130],[836,4888,4890],{"className":4889},[1135]," ",[836,4892],{"className":4893,"style":1136},[1135],[836,4895,4897,4900],{"className":4896},[857],[836,4898,384],{"className":4899},[857,858],[836,4901,4903],{"className":4902},[1023],[836,4904,4906,4926],{"className":4905},[1027,1092],[836,4907,4909,4923],{"className":4908},[1031],[836,4910,4912],{"className":4911,"style":1887},[1035],[836,4913,4914,4917],{"style":1102},[836,4915],{"className":4916,"style":1043},[1042],[836,4918,4920],{"className":4919},[1047,1048,1049,1050],[836,4921,1899],{"className":4922},[857,858,1050],[836,4924,1117],{"className":4925},[1116],[836,4927,4929],{"className":4928},[1031],[836,4930,4932],{"className":4931,"style":1124},[1035],[836,4933],{},[836,4935],{"className":4936,"style":2524},[1135],[836,4938,2529],{"className":4939},[2528],[836,4941],{"className":4942,"style":2524},[1135],[836,4944,4946,4949],{"className":4945},[848],[836,4947],{"className":4948,"style":1868},[852],[836,4950,4952,4955],{"className":4951},[857],[836,4953,384],{"className":4954},[857,858],[836,4956,4958],{"className":4957},[1023],[836,4959,4961,4990],{"className":4960},[1027,1092],[836,4962,4964,4987],{"className":4963},[1031],[836,4965,4967],{"className":4966,"style":1887},[1035],[836,4968,4969,4972],{"style":1102},[836,4970],{"className":4971,"style":1043},[1042],[836,4973,4975],{"className":4974},[1047,1048,1049,1050],[836,4976,4978,4981,4984],{"className":4977},[857,1050],[836,4979,1899],{"className":4980},[857,858,1050],[836,4982,1187],{"className":4983},[1186,1050],[836,4985,414],{"className":4986},[857,1050],[836,4988,1117],{"className":4989},[1116],[836,4991,4993],{"className":4992},[1031],[836,4994,4996],{"className":4995,"style":1200},[1035],[836,4997],{},") is skipped, dropping a duplicate subtree (dashed, red); ancestor reuse ",[836,5000,5002],{"className":5001},[839],[836,5003,5005],{"className":5004,"ariaHidden":844},[843],[836,5006,5008,5011,5014,5017,5020,5023,5026],{"className":5007},[848],[836,5009],{"className":5010,"style":1074},[852],[836,5012,1079],{"className":5013},[1078],[836,5015,470],{"className":5016},[857],[836,5018,1131],{"className":5019},[1130],[836,5021],{"className":5022,"style":1136},[1135],[836,5024,470],{"className":5025},[857],[836,5027,1207],{"className":5028},[1206]," survives",[381,5031,5032,5033,5095,5096,5157,5158,5203,5204,5225,5226,5288,5289,5310,5311,489,5341,5344,5345,5390,5391,5406],{},"At the root, ",[836,5034,5036],{"className":5035},[839],[836,5037,5039],{"className":5038,"ariaHidden":844},[843],[836,5040,5042,5046,5086,5092],{"className":5041},[848],[836,5043],{"className":5044,"style":5045},[852],"height:0.7944em;vertical-align:-0.15em;",[836,5047,5049,5052],{"className":5048},[857],[836,5050,384],{"className":5051},[857,858],[836,5053,5055],{"className":5054},[1023],[836,5056,5058,5078],{"className":5057},[1027,1092],[836,5059,5061,5075],{"className":5060},[1031],[836,5062,5064],{"className":5063,"style":1099},[1035],[836,5065,5066,5069],{"style":1102},[836,5067],{"className":5068,"style":1043},[1042],[836,5070,5072],{"className":5071},[1047,1048,1049,1050],[836,5073,470],{"className":5074},[857,1050],[836,5076,1117],{"className":5077},[1116],[836,5079,5081],{"className":5080},[1031],[836,5082,5084],{"className":5083,"style":1124},[1035],[836,5085],{},[836,5087,5089],{"className":5088},[857],[836,5090,2529],{"className":5091},[2528],[836,5093,470],{"className":5094},[857]," repeats sibling ",[836,5097,5099],{"className":5098},[839],[836,5100,5102],{"className":5101,"ariaHidden":844},[843],[836,5103,5105,5108,5148,5154],{"className":5104},[848],[836,5106],{"className":5107,"style":5045},[852],[836,5109,5111,5114],{"className":5110},[857],[836,5112,384],{"className":5113},[857,858],[836,5115,5117],{"className":5116},[1023],[836,5118,5120,5140],{"className":5119},[1027,1092],[836,5121,5123,5137],{"className":5122},[1031],[836,5124,5126],{"className":5125,"style":1099},[1035],[836,5127,5128,5131],{"style":1102},[836,5129],{"className":5130,"style":1043},[1042],[836,5132,5134],{"className":5133},[1047,1048,1049,1050],[836,5135,414],{"className":5136},[857,1050],[836,5138,1117],{"className":5139},[1116],[836,5141,5143],{"className":5142},[1031],[836,5144,5146],{"className":5145,"style":1124},[1035],[836,5147],{},[836,5149,5151],{"className":5150},[857],[836,5152,2529],{"className":5153},[2528],[836,5155,470],{"className":5156},[857]," (here ",[836,5159,5161],{"className":5160},[839],[836,5162,5164,5182],{"className":5163,"ariaHidden":844},[843],[836,5165,5167,5170,5173,5176,5179],{"className":5166},[848],[836,5168],{"className":5169,"style":4070},[852],[836,5171,1899],{"className":5172},[857,858],[836,5174],{"className":5175,"style":2524},[1135],[836,5177,3907],{"className":5178},[2528],[836,5180],{"className":5181,"style":2524},[1135],[836,5183,5185,5188,5191,5194,5197,5200],{"className":5184},[848],[836,5186],{"className":5187,"style":4089},[852],[836,5189,3921],{"className":5190},[857,858],[836,5192,3925],{"className":5193},[857,858],[836,5195,384],{"className":5196},[857,858],[836,5198,3932],{"className":5199,"style":2169},[857,858],[836,5201,3925],{"className":5202},[857,858],"), so its whole\nsubtree is pruned as a duplicate. Inside the ",[836,5205,5207],{"className":5206},[839],[836,5208,5210],{"className":5209,"ariaHidden":844},[843],[836,5211,5213,5216,5219,5222],{"className":5212},[848],[836,5214],{"className":5215,"style":1074},[852],[836,5217,1079],{"className":5218},[1078],[836,5220,414],{"className":5221},[857],[836,5223,1207],{"className":5224},[1206]," branch the same guard fires,\nkilling ",[836,5227,5229],{"className":5228},[839],[836,5230,5232],{"className":5231,"ariaHidden":844},[843],[836,5233,5235,5239,5242,5245,5248,5251,5254],{"className":5234},[848],[836,5236],{"className":5237,"style":5238},[852],"height:1.0019em;vertical-align:-0.25em;",[836,5240,1079],{"className":5241},[1078],[836,5243,414],{"className":5244},[857],[836,5246,1131],{"className":5247},[1130],[836,5249],{"className":5250,"style":1136},[1135],[836,5252,470],{"className":5253},[857],[836,5255,5257,5260],{"className":5256},[1206],[836,5258,1207],{"className":5259},[1206],[836,5261,5263],{"className":5262},[1023],[836,5264,5266],{"className":5265},[1027],[836,5267,5269],{"className":5268},[1031],[836,5270,5273],{"className":5271,"style":5272},[1035],"height:0.7519em;",[836,5274,5275,5278],{"style":1038},[836,5276],{"className":5277,"style":1043},[1042],[836,5279,5281],{"className":5280},[1047,1048,1049,1050],[836,5282,5284],{"className":5283},[857,1050],[836,5285,5287],{"className":5286},[857,1050],"′",". But descending from ",[836,5290,5292],{"className":5291},[839],[836,5293,5295],{"className":5294,"ariaHidden":844},[843],[836,5296,5298,5301,5304,5307],{"className":5297},[848],[836,5299],{"className":5300,"style":1074},[852],[836,5302,1079],{"className":5303},[1078],[836,5305,470],{"className":5306},[857],[836,5308,1207],{"className":5309},[1206]," to ",[836,5312,5314],{"className":5313},[839],[836,5315,5317],{"className":5316,"ariaHidden":844},[843],[836,5318,5320,5323,5326,5329,5332,5335,5338],{"className":5319},[848],[836,5321],{"className":5322,"style":1074},[852],[836,5324,1079],{"className":5325},[1078],[836,5327,470],{"className":5328},[857],[836,5330,1131],{"className":5331},[1130],[836,5333],{"className":5334,"style":1136},[1135],[836,5336,470],{"className":5337},[857],[836,5339,1207],{"className":5340},[1206],[389,5342,5343],{},"ancestor"," reuse,\nnot a sibling repeat — there ",[836,5346,5348],{"className":5347},[839],[836,5349,5351,5369],{"className":5350,"ariaHidden":844},[843],[836,5352,5354,5357,5360,5363,5366],{"className":5353},[848],[836,5355],{"className":5356,"style":4122},[852],[836,5358,1899],{"className":5359},[857,858],[836,5361],{"className":5362,"style":2524},[1135],[836,5364,2529],{"className":5365},[2528],[836,5367],{"className":5368,"style":2524},[1135],[836,5370,5372,5375,5378,5381,5384,5387],{"className":5371},[848],[836,5373],{"className":5374,"style":4089},[852],[836,5376,3921],{"className":5377},[857,858],[836,5379,3925],{"className":5380},[857,858],[836,5382,384],{"className":5383},[857,858],[836,5385,3932],{"className":5386,"style":2169},[857,858],[836,5388,3925],{"className":5389},[857,858],", the guard stays silent, and both copies of\n",[836,5392,5394],{"className":5393},[839],[836,5395,5397],{"className":5396,"ariaHidden":844},[843],[836,5398,5400,5403],{"className":5399},[848],[836,5401],{"className":5402,"style":2051},[852],[836,5404,470],{"className":5405},[857]," are legitimately used.",[381,5408,5409,5410,5413,5414,5466,5467,5470,5471,5474,5475,5478,5479,5482,5483,5486],{},"This same machinery distinguishes two classic problems. In ",[394,5411,5412],{},"Combination Sum",",\neach number may be reused unboundedly, so after choosing ",[836,5415,5417],{"className":5416},[839],[836,5418,5420],{"className":5419,"ariaHidden":844},[843],[836,5421,5423,5426],{"className":5422},[848],[836,5424],{"className":5425,"style":4251},[852],[836,5427,5429,5432],{"className":5428},[857],[836,5430,384],{"className":5431},[857,858],[836,5433,5435],{"className":5434},[1023],[836,5436,5438,5458],{"className":5437},[1027,1092],[836,5439,5441,5455],{"className":5440},[1031],[836,5442,5444],{"className":5443,"style":1887},[1035],[836,5445,5446,5449],{"style":1102},[836,5447],{"className":5448,"style":1043},[1042],[836,5450,5452],{"className":5451},[1047,1048,1049,1050],[836,5453,1899],{"className":5454},[857,858,1050],[836,5456,1117],{"className":5457},[1116],[836,5459,5461],{"className":5460},[1031],[836,5462,5464],{"className":5463,"style":1124},[1035],[836,5465],{}," we recurse with\n",[483,5468,5469],{},"start = i"," (do ",[394,5472,5473],{},"not"," advance); staying on the same element keeps it available.\nIn ",[394,5476,5477],{},"Combination Sum II",", each input number may be used at most once ",[389,5480,5481],{},"and","\nduplicates exist, so we recurse with ",[483,5484,5485],{},"start = i+1"," (advance) and apply the\nequal-sibling skip above to avoid duplicate combinations.",[523,5488,5490,5893],{"className":5489},[526,527],[529,5491,5495],{"xmlns":531,"width":5492,"height":5493,"viewBox":5494},"453.164","161.645","-75 -75 339.873 121.234",[536,5496,5497,5552,5555,5562,5565,5572,5575,5582,5585,5592,5601,5609,5644,5701,5754,5757,5763,5766,5772,5775,5781,5784,5790,5799,5807,5849],{"stroke":538,"style":539},[536,5498,5499],{"fill":611,"stroke":611},[536,5500,5502,5510,5516,5522,5528,5534,5540,5546],{"fill":611,"stroke":542,"fontSize":5501},"8",[536,5503,5505],{"transform":5504},"translate(10.444 -32.788)",[549,5506],{"d":5507,"fill":611,"stroke":611,"className":5508,"style":5509},"M-37.750-28.168L-39.730-28.168L-39.730-28.465Q-39.461-28.465-39.293-28.510Q-39.125-28.555-39.125-28.727L-39.125-30.863Q-39.125-31.078-39.187-31.174Q-39.250-31.270-39.367-31.291Q-39.484-31.313-39.730-31.313L-39.730-31.609L-38.562-31.695L-38.562-30.910Q-38.484-31.121-38.332-31.307Q-38.180-31.492-37.980-31.594Q-37.781-31.695-37.555-31.695Q-37.309-31.695-37.117-31.551Q-36.926-31.406-36.926-31.176Q-36.926-31.020-37.031-30.910Q-37.137-30.801-37.293-30.801Q-37.449-30.801-37.559-30.910Q-37.668-31.020-37.668-31.176Q-37.668-31.336-37.562-31.441Q-37.887-31.441-38.101-31.213Q-38.316-30.984-38.412-30.645Q-38.508-30.305-38.508-30L-38.508-28.727Q-38.508-28.559-38.281-28.512Q-38.055-28.465-37.750-28.465L-37.750-28.168M-36.445-29.922Q-36.445-30.402-36.213-30.818Q-35.980-31.234-35.570-31.484Q-35.160-31.734-34.684-31.734Q-33.953-31.734-33.555-31.293Q-33.156-30.852-33.156-30.121Q-33.156-30.016-33.250-29.992L-35.699-29.992L-35.699-29.922Q-35.699-29.512-35.578-29.156Q-35.457-28.801-35.185-28.584Q-34.914-28.367-34.484-28.367Q-34.121-28.367-33.824-28.596Q-33.527-28.824-33.426-29.176Q-33.418-29.223-33.332-29.238L-33.250-29.238Q-33.156-29.211-33.156-29.129Q-33.156-29.121-33.164-29.090Q-33.226-28.863-33.365-28.680Q-33.504-28.496-33.695-28.363Q-33.887-28.230-34.105-28.160Q-34.324-28.090-34.562-28.090Q-34.934-28.090-35.271-28.227Q-35.609-28.363-35.877-28.615Q-36.144-28.867-36.295-29.207Q-36.445-29.547-36.445-29.922M-35.691-30.230L-33.730-30.230Q-33.730-30.535-33.832-30.826Q-33.934-31.117-34.150-31.299Q-34.367-31.480-34.684-31.480Q-34.984-31.480-35.215-31.293Q-35.445-31.105-35.568-30.814Q-35.691-30.523-35.691-30.230M-31.984-29.121L-31.984-30.863Q-31.984-31.078-32.047-31.174Q-32.109-31.270-32.228-31.291Q-32.348-31.313-32.594-31.313L-32.594-31.609L-31.348-31.695L-31.348-29.145L-31.348-29.121Q-31.348-28.809-31.293-28.647Q-31.238-28.484-31.088-28.414Q-30.937-28.344-30.617-28.344Q-30.187-28.344-29.914-28.682Q-29.641-29.020-29.641-29.465L-29.641-30.863Q-29.641-31.078-29.703-31.174Q-29.766-31.270-29.885-31.291Q-30.004-31.313-30.250-31.313L-30.250-31.609L-29.004-31.695L-29.004-28.910Q-29.004-28.699-28.941-28.604Q-28.879-28.508-28.760-28.486Q-28.641-28.465-28.394-28.465L-28.394-28.168L-29.617-28.090L-29.617-28.711Q-29.785-28.422-30.066-28.256Q-30.348-28.090-30.668-28.090Q-31.984-28.090-31.984-29.121M-27.906-28.176L-27.906-29.398Q-27.906-29.426-27.875-29.457Q-27.844-29.488-27.820-29.488L-27.715-29.488Q-27.644-29.488-27.629-29.426Q-27.566-29.105-27.428-28.865Q-27.289-28.625-27.057-28.484Q-26.824-28.344-26.516-28.344Q-26.277-28.344-26.068-28.404Q-25.859-28.465-25.723-28.613Q-25.586-28.762-25.586-29.008Q-25.586-29.262-25.797-29.428Q-26.008-29.594-26.277-29.648L-26.898-29.762Q-27.305-29.840-27.605-30.096Q-27.906-30.352-27.906-30.727Q-27.906-31.094-27.705-31.316Q-27.504-31.539-27.180-31.637Q-26.855-31.734-26.516-31.734Q-26.051-31.734-25.754-31.527L-25.531-31.711Q-25.508-31.734-25.476-31.734L-25.426-31.734Q-25.394-31.734-25.367-31.707Q-25.340-31.680-25.340-31.648L-25.340-30.664Q-25.340-30.633-25.365-30.604Q-25.391-30.574-25.426-30.574L-25.531-30.574Q-25.566-30.574-25.594-30.602Q-25.621-30.629-25.621-30.664Q-25.621-31.063-25.873-31.283Q-26.125-31.504-26.523-31.504Q-26.879-31.504-27.162-31.381Q-27.445-31.258-27.445-30.953Q-27.445-30.734-27.244-30.602Q-27.043-30.469-26.797-30.426L-26.172-30.313Q-25.742-30.223-25.434-29.926Q-25.125-29.629-25.125-29.215Q-25.125-28.645-25.523-28.367Q-25.922-28.090-26.516-28.090Q-27.066-28.090-27.418-28.426L-27.715-28.113Q-27.738-28.090-27.773-28.090L-27.820-28.090Q-27.844-28.090-27.875-28.121Q-27.906-28.152-27.906-28.176M-24.598-29.922Q-24.598-30.402-24.365-30.818Q-24.133-31.234-23.723-31.484Q-23.312-31.734-22.836-31.734Q-22.105-31.734-21.707-31.293Q-21.309-30.852-21.309-30.121Q-21.309-30.016-21.402-29.992L-23.851-29.992L-23.851-29.922Q-23.851-29.512-23.730-29.156Q-23.609-28.801-23.338-28.584Q-23.066-28.367-22.637-28.367Q-22.273-28.367-21.976-28.596Q-21.680-28.824-21.578-29.176Q-21.570-29.223-21.484-29.238L-21.402-29.238Q-21.309-29.211-21.309-29.129Q-21.309-29.121-21.316-29.090Q-21.379-28.863-21.517-28.680Q-21.656-28.496-21.848-28.363Q-22.039-28.230-22.258-28.160Q-22.476-28.090-22.715-28.090Q-23.086-28.090-23.424-28.227Q-23.762-28.363-24.029-28.615Q-24.297-28.867-24.447-29.207Q-24.598-29.547-24.598-29.922M-23.844-30.230L-21.883-30.230Q-21.883-30.535-21.984-30.826Q-22.086-31.117-22.303-31.299Q-22.519-31.480-22.836-31.480Q-23.137-31.480-23.367-31.293Q-23.598-31.105-23.721-30.814Q-23.844-30.523-23.844-30.230",[553],"stroke-width:0.240",[536,5511,5512],{"transform":5504},[549,5513],{"d":5514,"fill":611,"stroke":611,"className":5515,"style":5509},"M-17.883-29Q-17.883-29.484-17.481-29.779Q-17.078-30.074-16.528-30.193Q-15.977-30.313-15.485-30.313L-15.485-30.602Q-15.485-30.828-15.600-31.035Q-15.715-31.242-15.912-31.361Q-16.110-31.480-16.340-31.480Q-16.766-31.480-17.051-31.375Q-16.981-31.348-16.934-31.293Q-16.887-31.238-16.862-31.168Q-16.836-31.098-16.836-31.023Q-16.836-30.918-16.887-30.826Q-16.938-30.734-17.030-30.684Q-17.121-30.633-17.227-30.633Q-17.332-30.633-17.424-30.684Q-17.516-30.734-17.567-30.826Q-17.617-30.918-17.617-31.023Q-17.617-31.441-17.229-31.588Q-16.840-31.734-16.340-31.734Q-16.008-31.734-15.655-31.604Q-15.301-31.473-15.073-31.219Q-14.844-30.965-14.844-30.617L-14.844-28.816Q-14.844-28.684-14.772-28.574Q-14.699-28.465-14.571-28.465Q-14.446-28.465-14.377-28.570Q-14.309-28.676-14.309-28.816L-14.309-29.328L-14.028-29.328L-14.028-28.816Q-14.028-28.613-14.145-28.455Q-14.262-28.297-14.444-28.213Q-14.625-28.129-14.828-28.129Q-15.059-28.129-15.211-28.301Q-15.364-28.473-15.395-28.703Q-15.555-28.422-15.864-28.256Q-16.172-28.090-16.524-28.090Q-17.035-28.090-17.459-28.313Q-17.883-28.535-17.883-29M-17.196-29Q-17.196-28.715-16.969-28.529Q-16.742-28.344-16.449-28.344Q-16.203-28.344-15.979-28.461Q-15.754-28.578-15.619-28.781Q-15.485-28.984-15.485-29.238L-15.485-30.070Q-15.750-30.070-16.035-30.016Q-16.321-29.961-16.592-29.832Q-16.864-29.703-17.030-29.496Q-17.196-29.289-17.196-29M-11.821-28.168L-13.653-28.168L-13.653-28.465Q-13.379-28.465-13.211-28.512Q-13.043-28.559-13.043-28.727L-13.043-32.887Q-13.043-33.102-13.106-33.197Q-13.168-33.293-13.287-33.314Q-13.407-33.336-13.653-33.336L-13.653-33.633L-12.430-33.719L-12.430-28.727Q-12.430-28.559-12.262-28.512Q-12.094-28.465-11.821-28.465L-11.821-28.168M-9.461-28.168L-11.293-28.168L-11.293-28.465Q-11.020-28.465-10.852-28.512Q-10.684-28.559-10.684-28.727L-10.684-32.887Q-10.684-33.102-10.746-33.197Q-10.809-33.293-10.928-33.314Q-11.047-33.336-11.293-33.336L-11.293-33.633L-10.071-33.719L-10.071-28.727Q-10.071-28.559-9.903-28.512Q-9.735-28.465-9.461-28.465L-9.461-28.168M-9.016-29.863Q-9.016-30.367-8.760-30.799Q-8.504-31.230-8.069-31.482Q-7.633-31.734-7.133-31.734Q-6.746-31.734-6.405-31.590Q-6.063-31.445-5.801-31.184Q-5.539-30.922-5.397-30.586Q-5.254-30.250-5.254-29.863Q-5.254-29.371-5.518-28.961Q-5.782-28.551-6.211-28.320Q-6.641-28.090-7.133-28.090Q-7.625-28.090-8.059-28.322Q-8.492-28.555-8.754-28.963Q-9.016-29.371-9.016-29.863M-7.133-28.367Q-6.676-28.367-6.424-28.590Q-6.172-28.813-6.084-29.164Q-5.996-29.516-5.996-29.961Q-5.996-30.391-6.090-30.729Q-6.184-31.066-6.438-31.273Q-6.692-31.480-7.133-31.480Q-7.782-31.480-8.026-31.064Q-8.270-30.648-8.270-29.961Q-8.270-29.516-8.182-29.164Q-8.094-28.813-7.842-28.590Q-7.590-28.367-7.133-28.367",[553],[536,5517,5518],{"transform":5504},[549,5519],{"d":5520,"fill":611,"stroke":611,"className":5521,"style":5509},"M-3.409-28.199L-4.479-31.055Q-4.545-31.234-4.676-31.277Q-4.807-31.320-5.065-31.320L-5.065-31.617L-3.385-31.617L-3.385-31.320Q-3.835-31.320-3.835-31.121Q-3.831-31.105-3.829-31.088Q-3.827-31.070-3.827-31.055L-3.034-28.961L-2.323-30.871Q-2.358-30.965-2.358-31.010Q-2.358-31.055-2.393-31.055Q-2.460-31.234-2.590-31.277Q-2.721-31.320-2.975-31.320L-2.975-31.617L-1.385-31.617L-1.385-31.320Q-1.835-31.320-1.835-31.121Q-1.831-31.102-1.829-31.084Q-1.827-31.066-1.827-31.055L-0.995-28.840L-0.241-30.840Q-0.217-30.898-0.217-30.969Q-0.217-31.129-0.354-31.225Q-0.491-31.320-0.659-31.320L-0.659-31.617L0.728-31.617L0.728-31.320Q0.494-31.320 0.316-31.193Q0.138-31.066 0.056-30.840L-0.928-28.199Q-0.983-28.090-1.096-28.090L-1.155-28.090Q-1.268-28.090-1.311-28.199L-2.170-30.473L-3.026-28.199Q-3.065-28.090-3.186-28.090L-3.241-28.090Q-3.354-28.090-3.409-28.199",[553],[536,5523,5524],{"transform":5504},[549,5525],{"d":5526,"fill":611,"stroke":611,"className":5527,"style":5509},"M0.908-29.922Q0.908-30.402 1.141-30.818Q1.373-31.234 1.783-31.484Q2.193-31.734 2.670-31.734Q3.400-31.734 3.799-31.293Q4.197-30.852 4.197-30.121Q4.197-30.016 4.104-29.992L1.654-29.992L1.654-29.922Q1.654-29.512 1.775-29.156Q1.897-28.801 2.168-28.584Q2.440-28.367 2.869-28.367Q3.232-28.367 3.529-28.596Q3.826-28.824 3.928-29.176Q3.936-29.223 4.022-29.238L4.104-29.238Q4.197-29.211 4.197-29.129Q4.197-29.121 4.190-29.090Q4.127-28.863 3.988-28.680Q3.850-28.496 3.658-28.363Q3.467-28.230 3.248-28.160Q3.029-28.090 2.791-28.090Q2.420-28.090 2.082-28.227Q1.744-28.363 1.477-28.615Q1.209-28.867 1.059-29.207Q0.908-29.547 0.908-29.922M1.662-30.230L3.623-30.230Q3.623-30.535 3.522-30.826Q3.420-31.117 3.203-31.299Q2.986-31.480 2.670-31.480Q2.369-31.480 2.139-31.293Q1.908-31.105 1.785-30.814Q1.662-30.523 1.662-30.230M6.502-28.090Q6.022-28.090 5.613-28.334Q5.205-28.578 4.967-28.992Q4.729-29.406 4.729-29.895Q4.729-30.387 4.986-30.803Q5.244-31.219 5.676-31.457Q6.107-31.695 6.600-31.695Q7.221-31.695 7.670-31.258L7.670-32.887Q7.670-33.102 7.607-33.197Q7.545-33.293 7.428-33.314Q7.311-33.336 7.065-33.336L7.065-33.633L8.287-33.719L8.287-28.910Q8.287-28.699 8.350-28.604Q8.412-28.508 8.529-28.486Q8.647-28.465 8.897-28.465L8.897-28.168L7.647-28.090L7.647-28.574Q7.182-28.090 6.502-28.090M6.568-28.344Q6.908-28.344 7.201-28.535Q7.494-28.727 7.647-29.023L7.647-30.855Q7.498-31.129 7.236-31.285Q6.975-31.441 6.662-31.441Q6.037-31.441 5.754-30.994Q5.471-30.547 5.471-29.887Q5.471-29.242 5.723-28.793Q5.975-28.344 6.568-28.344M9.885-28.633Q9.885-28.816 10.022-28.953Q10.158-29.090 10.350-29.090Q10.541-29.090 10.674-28.957Q10.807-28.824 10.807-28.633Q10.807-28.434 10.674-28.301Q10.541-28.168 10.350-28.168Q10.158-28.168 10.022-28.305Q9.885-28.441 9.885-28.633M9.885-31.160Q9.885-31.344 10.022-31.480Q10.158-31.617 10.350-31.617Q10.541-31.617 10.674-31.484Q10.807-31.352 10.807-31.160Q10.807-30.961 10.674-30.828Q10.541-30.695 10.350-30.695Q10.158-30.695 10.022-30.832Q9.885-30.969 9.885-31.160",[553],[536,5529,5530],{"transform":5504},[549,5531],{"d":5532,"fill":611,"stroke":611,"className":5533,"style":5509},"M16.102-28.648Q16.317-28.344 16.981-28.344Q17.411-28.344 17.768-28.545Q18.125-28.746 18.125-29.145Q18.125-29.348 17.965-29.471Q17.805-29.594 17.598-29.633L17.133-29.719Q16.817-29.789 16.602-29.996Q16.387-30.203 16.387-30.512Q16.387-30.875 16.592-31.147Q16.797-31.418 17.127-31.557Q17.457-31.695 17.813-31.695Q18.200-31.695 18.510-31.527Q18.821-31.359 18.821-31.008Q18.821-30.816 18.715-30.676Q18.610-30.535 18.422-30.535Q18.313-30.535 18.231-30.607Q18.149-30.680 18.149-30.793Q18.149-30.938 18.246-31.047Q18.344-31.156 18.485-31.176Q18.395-31.320 18.204-31.381Q18.012-31.441 17.797-31.441Q17.465-31.441 17.192-31.270Q16.918-31.098 16.918-30.785Q16.918-30.629 17.030-30.535Q17.141-30.441 17.317-30.398L17.774-30.313Q18.149-30.242 18.401-30.010Q18.653-29.777 18.653-29.414Q18.653-29.141 18.508-28.873Q18.364-28.605 18.125-28.426Q17.649-28.090 16.965-28.090Q16.688-28.090 16.407-28.162Q16.125-28.234 15.934-28.408Q15.743-28.582 15.743-28.863Q15.743-29.086 15.871-29.250Q16-29.414 16.219-29.414Q16.364-29.414 16.452-29.332Q16.539-29.250 16.539-29.113Q16.539-28.934 16.409-28.791Q16.278-28.648 16.102-28.648M19.789-28.840Q19.789-28.949 19.813-29.055L20.383-31.320L19.536-31.320Q19.430-31.348 19.430-31.449L19.454-31.551Q19.473-31.602 19.551-31.617L20.454-31.617L20.774-32.879Q20.801-33.008 20.907-33.088Q21.012-33.168 21.141-33.168Q21.250-33.168 21.329-33.094Q21.407-33.020 21.407-32.910Q21.407-32.863 21.399-32.840L21.094-31.617L21.942-31.617Q22.039-31.586 22.039-31.496L22.016-31.391Q22.008-31.340 21.926-31.320L21.024-31.320L20.438-29Q20.399-28.754 20.399-28.703Q20.399-28.344 20.645-28.344Q21.008-28.344 21.286-28.660Q21.563-28.977 21.711-29.367Q21.743-29.414 21.789-29.414L21.895-29.414Q21.934-29.414 21.957-29.385Q21.981-29.355 21.981-29.320Q21.981-29.305 21.973-29.289Q21.789-28.805 21.436-28.447Q21.082-28.090 20.629-28.090Q20.286-28.090 20.038-28.297Q19.789-28.504 19.789-28.840M23.805-28.090Q23.450-28.090 23.180-28.270Q22.911-28.449 22.770-28.744Q22.629-29.039 22.629-29.398Q22.629-29.785 22.791-30.199Q22.954-30.613 23.237-30.951Q23.520-31.289 23.889-31.492Q24.258-31.695 24.661-31.695Q25.153-31.695 25.430-31.246Q25.461-31.379 25.565-31.461Q25.668-31.543 25.797-31.543Q25.911-31.543 25.991-31.473Q26.071-31.402 26.071-31.289Q26.071-31.262 26.055-31.199L25.500-29Q25.461-28.754 25.461-28.703Q25.461-28.344 25.707-28.344Q25.852-28.344 25.954-28.451Q26.055-28.559 26.120-28.713Q26.184-28.867 26.233-29.057Q26.282-29.246 26.301-29.344Q26.329-29.414 26.391-29.414L26.493-29.414Q26.532-29.414 26.557-29.381Q26.582-29.348 26.582-29.320Q26.582-29.305 26.575-29.289Q26.461-28.797 26.262-28.443Q26.063-28.090 25.692-28.090Q25.411-28.090 25.184-28.232Q24.957-28.375 24.875-28.633Q24.653-28.391 24.379-28.240Q24.106-28.090 23.805-28.090M23.821-28.344Q24.032-28.344 24.241-28.457Q24.450-28.570 24.620-28.744Q24.789-28.918 24.918-29.113Q24.907-29.098 24.897-29.084Q24.887-29.070 24.875-29.055L25.309-30.777Q25.270-30.957 25.184-31.107Q25.098-31.258 24.961-31.350Q24.825-31.441 24.645-31.441Q24.309-31.441 24.038-31.160Q23.766-30.879 23.606-30.504Q23.481-30.184 23.383-29.764Q23.286-29.344 23.286-29.063Q23.286-28.773 23.418-28.559Q23.551-28.344 23.821-28.344M27.508-28.344Q27.512-28.363 27.514-28.377Q27.516-28.391 27.516-28.414L28.110-30.785Q28.149-30.941 28.149-31.078Q28.149-31.227 28.096-31.334Q28.043-31.441 27.911-31.441Q27.731-31.441 27.612-31.272Q27.493-31.102 27.436-30.916Q27.379-30.730 27.309-30.441Q27.297-30.367 27.227-30.367L27.125-30.367Q27.090-30.367 27.063-30.402Q27.036-30.438 27.036-30.465L27.036-30.496Q27.121-30.828 27.215-31.070Q27.309-31.313 27.485-31.504Q27.661-31.695 27.926-31.695Q28.211-31.695 28.444-31.547Q28.676-31.398 28.743-31.145Q28.950-31.398 29.219-31.547Q29.489-31.695 29.805-31.695Q29.985-31.695 30.141-31.623Q30.297-31.551 30.391-31.414Q30.485-31.277 30.485-31.098Q30.485-30.883 30.352-30.725Q30.219-30.566 30.012-30.566Q29.879-30.566 29.786-30.650Q29.692-30.734 29.692-30.871Q29.692-31.047 29.813-31.180Q29.934-31.313 30.102-31.336Q29.969-31.441 29.789-31.441Q29.442-31.441 29.172-31.205Q28.903-30.969 28.707-30.609L28.149-28.375Q28.118-28.250 28.012-28.170Q27.907-28.090 27.782-28.090Q27.672-28.090 27.590-28.160Q27.508-28.230 27.508-28.344",[553],[536,5535,5536],{"transform":5504},[549,5537],{"d":5538,"fill":611,"stroke":611,"className":5539,"style":5509},"M31.447-28.840Q31.447-28.949 31.470-29.055L32.041-31.320L31.193-31.320Q31.087-31.348 31.087-31.449L31.111-31.551Q31.130-31.602 31.209-31.617L32.111-31.617L32.431-32.879Q32.459-33.008 32.564-33.088Q32.669-33.168 32.798-33.168Q32.908-33.168 32.986-33.094Q33.064-33.020 33.064-32.910Q33.064-32.863 33.056-32.840L32.751-31.617L33.599-31.617Q33.697-31.586 33.697-31.496L33.673-31.391Q33.666-31.340 33.584-31.320L32.681-31.320L32.095-29Q32.056-28.754 32.056-28.703Q32.056-28.344 32.302-28.344Q32.666-28.344 32.943-28.660Q33.220-28.977 33.369-29.367Q33.400-29.414 33.447-29.414L33.552-29.414Q33.591-29.414 33.615-29.385Q33.638-29.355 33.638-29.320Q33.638-29.305 33.630-29.289Q33.447-28.805 33.093-28.447Q32.740-28.090 32.287-28.090Q31.943-28.090 31.695-28.297Q31.447-28.504 31.447-28.840",[553],[536,5541,5542],{"transform":5504},[549,5543],{"d":5544,"fill":611,"stroke":611,"className":5545,"style":5509},"M38.615-28.160Q38.560-28.477 38.402-28.789Q38.244-29.102 38.014-29.354Q37.783-29.605 37.490-29.787Q37.197-29.969 36.869-30.063Q36.799-30.086 36.799-30.168Q36.799-30.250 36.869-30.273Q37.197-30.371 37.490-30.553Q37.783-30.734 38.017-30.992Q38.252-31.250 38.406-31.551Q38.560-31.852 38.615-32.176Q38.635-32.262 38.717-32.281L38.885-32.281Q38.982-32.254 38.982-32.152Q38.885-31.625 38.584-31.152Q38.283-30.680 37.830-30.352L44.181-30.352Q44.256-30.352 44.303-30.299Q44.349-30.246 44.349-30.168Q44.349-30.094 44.299-30.039Q44.248-29.984 44.181-29.984L37.830-29.984Q38.127-29.770 38.359-29.492Q38.592-29.215 38.750-28.883Q38.908-28.551 38.982-28.184Q38.982-28.082 38.885-28.055L38.717-28.055Q38.635-28.074 38.615-28.160",[553],[536,5547,5548],{"transform":5504},[549,5549],{"d":5550,"fill":611,"stroke":611,"className":5551,"style":5509},"M47.876-28.770Q47.876-28.902 47.930-29.055L48.602-30.785Q48.692-31.008 48.692-31.191Q48.692-31.441 48.516-31.441Q48.211-31.441 48.001-31.133Q47.790-30.824 47.684-30.441Q47.672-30.367 47.602-30.367L47.501-30.367Q47.465-30.367 47.438-30.402Q47.411-30.438 47.411-30.465L47.411-30.496Q47.532-30.961 47.827-31.328Q48.122-31.695 48.532-31.695Q48.739-31.695 48.909-31.613Q49.079-31.531 49.182-31.377Q49.286-31.223 49.286-31.016Q49.286-30.895 49.227-30.727L48.555-29Q48.469-28.766 48.469-28.594Q48.469-28.344 48.645-28.344Q48.958-28.344 49.172-28.662Q49.387-28.980 49.469-29.344Q49.497-29.414 49.555-29.414L49.661-29.414Q49.700-29.414 49.723-29.385Q49.747-29.355 49.747-29.320Q49.747-29.305 49.739-29.289Q49.661-28.988 49.514-28.721Q49.368-28.453 49.143-28.272Q48.918-28.090 48.629-28.090Q48.313-28.090 48.094-28.277Q47.876-28.465 47.876-28.770M48.797-33.008Q48.797-33.188 48.944-33.326Q49.090-33.465 49.266-33.465Q49.403-33.465 49.495-33.377Q49.586-33.289 49.586-33.152Q49.586-32.977 49.442-32.836Q49.297-32.695 49.126-32.695Q48.993-32.695 48.895-32.787Q48.797-32.879 48.797-33.008",[553],[549,5553],{"fill":542,"d":5554},"M-48.532-19.632h17.072v-17.072h-17.072Z",[536,5556,5558],{"transform":5557},"translate(-2.45 1.937)",[549,5559],{"d":5560,"fill":538,"stroke":538,"className":5561,"style":571},"M-38.374-28.067Q-38.770-28.067-39.056-28.271Q-39.341-28.476-39.488-28.810Q-39.636-29.144-39.636-29.535Q-39.636-29.970-39.462-30.431Q-39.288-30.893-38.976-31.284Q-38.664-31.675-38.254-31.910Q-37.843-32.145-37.403-32.145Q-37.135-32.145-36.918-32.007Q-36.700-31.868-36.568-31.622Q-36.529-31.772-36.421-31.868Q-36.313-31.965-36.173-31.965Q-36.050-31.965-35.966-31.892Q-35.883-31.820-35.883-31.697Q-35.883-31.644-35.892-31.613L-36.511-29.122Q-36.568-28.924-36.568-28.726Q-36.568-28.331-36.305-28.331Q-36.019-28.331-35.885-28.654Q-35.751-28.977-35.632-29.482Q-35.623-29.513-35.599-29.537Q-35.575-29.561-35.540-29.561L-35.434-29.561Q-35.386-29.561-35.364-29.528Q-35.342-29.495-35.342-29.447Q-35.456-29.016-35.547-28.763Q-35.637-28.511-35.830-28.289Q-36.023-28.067-36.322-28.067Q-36.630-28.067-36.878-28.238Q-37.126-28.410-37.197-28.700Q-37.452-28.414-37.748-28.241Q-38.045-28.067-38.374-28.067M-38.357-28.331Q-38.027-28.331-37.717-28.572Q-37.408-28.814-37.197-29.130Q-37.188-29.139-37.188-29.157L-36.691-31.121Q-36.748-31.438-36.940-31.662Q-37.131-31.886-37.421-31.886Q-37.790-31.886-38.089-31.567Q-38.388-31.249-38.555-30.840Q-38.691-30.493-38.816-29.983Q-38.941-29.473-38.941-29.148Q-38.941-28.823-38.803-28.577Q-38.664-28.331-38.357-28.331",[553],[549,5563],{"fill":542,"d":5564},"M-28.615-19.632h17.072v-17.072h-17.072Z",[536,5566,5568],{"transform":5567},"translate(17.935 3.125)",[549,5569],{"d":5570,"fill":538,"stroke":538,"className":5571,"style":571},"M-38.374-28.067Q-38.950-28.067-39.271-28.498Q-39.592-28.928-39.592-29.508Q-39.592-29.913-39.508-30.141L-38.629-33.639Q-38.594-33.789-38.594-33.863Q-38.594-34-39.161-34Q-39.258-34-39.258-34.118Q-39.258-34.175-39.227-34.246Q-39.196-34.316-39.130-34.316L-37.909-34.413Q-37.856-34.413-37.823-34.384Q-37.790-34.355-37.790-34.307L-37.790-34.272L-38.449-31.662Q-37.926-32.145-37.403-32.145Q-37.017-32.145-36.726-31.941Q-36.436-31.736-36.289-31.402Q-36.142-31.068-36.142-30.677Q-36.142-30.093-36.445-29.484Q-36.748-28.876-37.269-28.471Q-37.790-28.067-38.374-28.067M-38.357-28.331Q-37.988-28.331-37.684-28.654Q-37.381-28.977-37.223-29.372Q-37.078-29.728-36.957-30.236Q-36.836-30.743-36.836-31.064Q-36.836-31.389-36.981-31.637Q-37.126-31.886-37.421-31.886Q-38.023-31.886-38.594-31.086L-38.836-30.093Q-38.981-29.469-38.981-29.205Q-38.981-28.862-38.829-28.596Q-38.678-28.331-38.357-28.331",[553],[549,5573],{"fill":542,"d":5574},"M-8.698-19.632H8.373v-17.072H-8.698Z",[536,5576,5578],{"transform":5577},"translate(37.831 1.937)",[549,5579],{"d":5580,"fill":538,"stroke":538,"className":5581,"style":571},"M-38.906-29.275Q-38.906-28.880-38.693-28.605Q-38.480-28.331-38.098-28.331Q-37.553-28.331-37.047-28.566Q-36.542-28.801-36.225-29.223Q-36.204-29.258-36.142-29.258Q-36.085-29.258-36.039-29.207Q-35.993-29.157-35.993-29.104Q-35.993-29.069-36.019-29.043Q-36.366-28.568-36.929-28.317Q-37.491-28.067-38.115-28.067Q-38.546-28.067-38.895-28.269Q-39.245-28.471-39.436-28.827Q-39.627-29.183-39.627-29.609Q-39.627-30.071-39.425-30.528Q-39.223-30.985-38.867-31.354Q-38.511-31.723-38.067-31.934Q-37.623-32.145-37.153-32.145Q-36.885-32.145-36.636-32.064Q-36.388-31.982-36.221-31.804Q-36.054-31.626-36.054-31.363Q-36.054-31.126-36.204-30.948Q-36.353-30.770-36.586-30.770Q-36.726-30.770-36.832-30.864Q-36.937-30.959-36.937-31.104Q-36.937-31.306-36.790-31.460Q-36.643-31.613-36.441-31.613Q-36.546-31.754-36.751-31.820Q-36.955-31.886-37.162-31.886Q-37.698-31.886-38.095-31.457Q-38.493-31.029-38.700-30.409Q-38.906-29.790-38.906-29.275",[553],[549,5583],{"fill":542,"d":5584},"M11.22-19.632h17.07v-17.072H11.22Z",[536,5586,5588],{"transform":5587},"translate(57.355 3.125)",[549,5589],{"d":5590,"fill":538,"stroke":538,"className":5591,"style":571},"M-38.374-28.067Q-38.770-28.067-39.056-28.271Q-39.341-28.476-39.488-28.810Q-39.636-29.144-39.636-29.535Q-39.636-29.970-39.462-30.431Q-39.288-30.893-38.976-31.284Q-38.664-31.675-38.254-31.910Q-37.843-32.145-37.403-32.145Q-37.135-32.145-36.918-32.007Q-36.700-31.868-36.568-31.622L-36.063-33.639Q-36.028-33.789-36.028-33.863Q-36.028-34-36.595-34Q-36.691-34-36.691-34.118Q-36.691-34.175-36.661-34.246Q-36.630-34.316-36.568-34.316L-35.342-34.413Q-35.289-34.413-35.259-34.384Q-35.228-34.355-35.228-34.307L-35.228-34.272L-36.511-29.122Q-36.511-29.064-36.540-28.933Q-36.568-28.801-36.568-28.726Q-36.568-28.331-36.305-28.331Q-36.019-28.331-35.885-28.654Q-35.751-28.977-35.632-29.482Q-35.623-29.513-35.599-29.537Q-35.575-29.561-35.540-29.561L-35.434-29.561Q-35.386-29.561-35.364-29.528Q-35.342-29.495-35.342-29.447Q-35.456-29.016-35.547-28.763Q-35.637-28.511-35.830-28.289Q-36.023-28.067-36.322-28.067Q-36.630-28.067-36.878-28.238Q-37.126-28.410-37.197-28.700Q-37.452-28.414-37.748-28.241Q-38.045-28.067-38.374-28.067M-38.357-28.331Q-38.027-28.331-37.717-28.572Q-37.408-28.814-37.197-29.130Q-37.188-29.139-37.188-29.166L-36.691-31.121Q-36.748-31.438-36.940-31.662Q-37.131-31.886-37.421-31.886Q-37.790-31.886-38.089-31.567Q-38.388-31.249-38.555-30.840Q-38.691-30.493-38.816-29.983Q-38.941-29.473-38.941-29.148Q-38.941-28.823-38.803-28.577Q-38.664-28.331-38.357-28.331",[553],[536,5593,5594,5596],{"stroke":611,"style":612},[549,5595],{"fill":542,"d":5574},[536,5597,5598],{"transform":5577},[549,5599],{"d":5580,"fill":538,"stroke":538,"className":5600,"style":571},[553],[536,5602,5603,5606],{"fill":611,"stroke":611},[549,5604],{"fill":542,"d":5605},"M-7.276-15.365c-15.648 18.495 7.114 19.917 7.114 2",[549,5607],{"stroke":542,"d":5608},"m-.162-15.365-1.6 3.2 1.6-1.2 1.6 1.2",[536,5610,5611],{"fill":611,"stroke":611},[536,5612,5613,5620,5626,5632,5638],{"fill":611,"stroke":542,"fontSize":544},[536,5614,5616],{"transform":5615},"translate(53.447 32.191)",[549,5617],{"d":5618,"fill":611,"stroke":611,"className":5619,"style":554},"M-38-28.168L-39.634-28.168L-39.634-28.448Q-39.405-28.448-39.256-28.482Q-39.107-28.517-39.107-28.657L-39.107-30.506Q-39.107-30.776-39.215-30.837Q-39.323-30.899-39.634-30.899L-39.634-31.179L-38.574-31.254L-38.574-30.605Q-38.403-30.913-38.099-31.084Q-37.795-31.254-37.450-31.254Q-36.944-31.254-36.660-31.031Q-36.376-30.807-36.376-30.311L-36.376-28.657Q-36.376-28.520-36.228-28.484Q-36.079-28.448-35.853-28.448L-35.853-28.168L-37.484-28.168L-37.484-28.448Q-37.255-28.448-37.106-28.482Q-36.957-28.517-36.957-28.657L-36.957-30.297Q-36.957-30.632-37.077-30.832Q-37.197-31.032-37.511-31.032Q-37.781-31.032-38.015-30.896Q-38.249-30.759-38.388-30.525Q-38.526-30.291-38.526-30.017L-38.526-28.657Q-38.526-28.520-38.376-28.484Q-38.225-28.448-38-28.448L-38-28.168M-35.307-29.703Q-35.307-30.024-35.182-30.313Q-35.057-30.602-34.831-30.825Q-34.606-31.049-34.310-31.169Q-34.015-31.289-33.697-31.289Q-33.369-31.289-33.107-31.189Q-32.846-31.090-32.670-30.908Q-32.494-30.725-32.400-30.467Q-32.306-30.209-32.306-29.877Q-32.306-29.785-32.388-29.764L-34.643-29.764L-34.643-29.703Q-34.643-29.115-34.360-28.732Q-34.076-28.349-33.509-28.349Q-33.187-28.349-32.919-28.542Q-32.651-28.735-32.562-29.050Q-32.555-29.091-32.480-29.105L-32.388-29.105Q-32.306-29.081-32.306-29.009Q-32.306-29.002-32.312-28.975Q-32.425-28.578-32.796-28.339Q-33.167-28.100-33.591-28.100Q-34.028-28.100-34.428-28.308Q-34.828-28.517-35.067-28.884Q-35.307-29.251-35.307-29.703M-34.637-29.973L-32.822-29.973Q-32.822-30.250-32.919-30.502Q-33.017-30.755-33.215-30.911Q-33.413-31.066-33.697-31.066Q-33.974-31.066-34.187-30.908Q-34.401-30.749-34.519-30.494Q-34.637-30.239-34.637-29.973M-30.535-28.168L-31.858-28.168L-31.858-28.448Q-31.297-28.448-30.918-28.848L-30.204-29.645L-31.116-30.694Q-31.253-30.841-31.402-30.873Q-31.550-30.906-31.817-30.906L-31.817-31.186L-30.316-31.186L-30.316-30.906Q-30.508-30.906-30.508-30.772Q-30.508-30.742-30.477-30.694L-29.882-30.010L-29.441-30.506Q-29.329-30.636-29.329-30.752Q-29.329-30.814-29.366-30.860Q-29.404-30.906-29.462-30.906L-29.462-31.186L-28.146-31.186L-28.146-30.906Q-28.706-30.906-29.086-30.506L-29.708-29.805L-28.713-28.657Q-28.614-28.558-28.513-28.513Q-28.413-28.469-28.301-28.459Q-28.190-28.448-28.013-28.448L-28.013-28.168L-29.506-28.168L-29.506-28.448Q-29.441-28.448-29.381-28.482Q-29.322-28.517-29.322-28.582Q-29.322-28.629-29.352-28.657L-30.029-29.443L-30.562-28.848Q-30.675-28.718-30.675-28.602Q-30.675-28.537-30.634-28.493Q-30.593-28.448-30.535-28.448L-30.535-28.168M-26.991-29.009L-26.991-30.906L-27.630-30.906L-27.630-31.128Q-27.312-31.128-27.095-31.338Q-26.878-31.548-26.777-31.858Q-26.676-32.167-26.676-32.475L-26.410-32.475L-26.410-31.186L-25.333-31.186L-25.333-30.906L-26.410-30.906L-26.410-29.022Q-26.410-28.746-26.305-28.547Q-26.201-28.349-25.941-28.349Q-25.784-28.349-25.678-28.453Q-25.572-28.558-25.523-28.711Q-25.473-28.865-25.473-29.022L-25.473-29.436L-25.206-29.436L-25.206-29.009Q-25.206-28.783-25.306-28.573Q-25.405-28.363-25.589-28.231Q-25.774-28.100-26.003-28.100Q-26.440-28.100-26.715-28.337Q-26.991-28.575-26.991-29.009",[553],[536,5621,5622],{"transform":5615},[549,5623],{"d":5624,"fill":611,"stroke":611,"className":5625,"style":554},"M-21.169-28.588Q-20.978-28.322-20.373-28.322Q-20.144-28.322-19.899-28.392Q-19.655-28.462-19.493-28.617Q-19.330-28.773-19.330-29.016Q-19.330-29.190-19.481-29.298Q-19.631-29.405-19.826-29.443L-20.280-29.525Q-20.550-29.580-20.738-29.768Q-20.926-29.956-20.926-30.212Q-20.926-30.537-20.740-30.774Q-20.554-31.012-20.256-31.133Q-19.959-31.254-19.638-31.254Q-19.433-31.254-19.217-31.195Q-19.002-31.135-18.860-31Q-18.718-30.865-18.718-30.653Q-18.718-30.485-18.812-30.359Q-18.906-30.232-19.070-30.232Q-19.170-30.232-19.243-30.297Q-19.316-30.362-19.316-30.465Q-19.316-30.585-19.233-30.682Q-19.149-30.779-19.036-30.800Q-19.193-31.032-19.651-31.032Q-19.949-31.032-20.198-30.889Q-20.448-30.745-20.448-30.465Q-20.448-30.209-20.086-30.126L-19.624-30.044Q-19.310-29.983-19.081-29.774Q-18.852-29.566-18.852-29.258Q-18.852-28.995-19.007-28.744Q-19.163-28.493-19.399-28.342Q-19.792-28.100-20.379-28.100Q-20.807-28.100-21.157-28.255Q-21.507-28.411-21.507-28.776Q-21.507-28.971-21.391-29.115Q-21.275-29.258-21.080-29.258Q-20.961-29.258-20.880-29.187Q-20.800-29.115-20.800-28.995Q-20.800-28.838-20.906-28.722Q-21.012-28.605-21.169-28.588M-17.587-28.756Q-17.587-28.858-17.563-28.944L-17.074-30.906L-17.857-30.906Q-17.949-30.930-17.949-31.019L-17.922-31.128Q-17.905-31.172-17.836-31.186L-17.006-31.186L-16.726-32.283Q-16.695-32.396-16.603-32.470Q-16.510-32.543-16.394-32.543Q-16.302-32.543-16.230-32.480Q-16.158-32.417-16.158-32.317Q-16.158-32.270-16.165-32.249L-16.432-31.186L-15.652-31.186Q-15.570-31.159-15.570-31.080L-15.598-30.967Q-15.605-30.923-15.673-30.906L-16.500-30.906L-17.006-28.896Q-17.033-28.739-17.033-28.650Q-17.033-28.523-16.980-28.423Q-16.927-28.322-16.808-28.322Q-16.500-28.322-16.245-28.588Q-15.991-28.855-15.857-29.190Q-15.823-29.258-15.779-29.258L-15.666-29.258Q-15.632-29.258-15.611-29.233Q-15.591-29.207-15.591-29.176Q-15.591-29.163-15.598-29.149Q-15.707-28.876-15.883-28.638Q-16.059-28.400-16.304-28.250Q-16.548-28.100-16.821-28.100Q-17.129-28.100-17.358-28.279Q-17.587-28.459-17.587-28.756M-13.721-28.100Q-14.046-28.100-14.290-28.257Q-14.535-28.414-14.666-28.679Q-14.798-28.944-14.798-29.269Q-14.798-29.737-14.545-30.200Q-14.292-30.663-13.868-30.959Q-13.444-31.254-12.973-31.254Q-12.757-31.254-12.571-31.150Q-12.385-31.046-12.265-30.861Q-12.241-30.974-12.147-31.048Q-12.053-31.121-11.937-31.121Q-11.835-31.121-11.766-31.060Q-11.698-30.998-11.698-30.899Q-11.698-30.841-11.705-30.814L-12.187-28.896Q-12.214-28.739-12.214-28.650Q-12.214-28.523-12.163-28.423Q-12.111-28.322-11.992-28.322Q-11.770-28.322-11.657-28.575Q-11.544-28.828-11.459-29.197Q-11.435-29.258-11.383-29.258L-11.271-29.258Q-11.236-29.258-11.214-29.229Q-11.192-29.200-11.192-29.176Q-11.192-29.163-11.199-29.149Q-11.462-28.100-12.005-28.100Q-12.255-28.100-12.463-28.223Q-12.672-28.346-12.740-28.575Q-13.215-28.100-13.721-28.100M-13.708-28.322Q-13.434-28.322-13.183-28.506Q-12.932-28.691-12.740-28.958L-12.371-30.438Q-12.409-30.598-12.489-30.735Q-12.569-30.872-12.696-30.952Q-12.822-31.032-12.986-31.032Q-13.195-31.032-13.381-30.908Q-13.567-30.783-13.706-30.591Q-13.844-30.400-13.930-30.198Q-14.043-29.904-14.126-29.559Q-14.210-29.214-14.210-28.964Q-14.210-28.708-14.082-28.515Q-13.954-28.322-13.708-28.322M-10.095-28.322Q-10.095-28.370-10.088-28.394L-9.575-30.458Q-9.541-30.585-9.541-30.701Q-9.541-30.841-9.594-30.937Q-9.647-31.032-9.770-31.032Q-9.992-31.032-10.093-30.805Q-10.194-30.578-10.303-30.157Q-10.314-30.092-10.375-30.092L-10.484-30.092Q-10.515-30.092-10.539-30.123Q-10.563-30.154-10.563-30.178L-10.563-30.205Q-10.450-30.639-10.269-30.947Q-10.088-31.254-9.756-31.254Q-9.500-31.254-9.288-31.126Q-9.076-30.998-9.015-30.772Q-8.605-31.254-8.037-31.254Q-7.750-31.254-7.524-31.118Q-7.299-30.981-7.299-30.714Q-7.299-30.526-7.419-30.393Q-7.538-30.260-7.719-30.260Q-7.836-30.260-7.918-30.333Q-8-30.407-8-30.526Q-8-30.667-7.909-30.781Q-7.818-30.896-7.685-30.926Q-7.836-31.032-8.051-31.032Q-8.646-31.032-9.042-30.273L-9.527-28.356Q-9.551-28.250-9.645-28.175Q-9.739-28.100-9.856-28.100Q-9.955-28.100-10.025-28.161Q-10.095-28.223-10.095-28.322",[553],[536,5627,5628],{"transform":5615},[549,5629],{"d":5630,"fill":611,"stroke":611,"className":5631,"style":554},"M-6.299-28.756Q-6.299-28.858-6.275-28.944L-5.787-30.906L-6.569-30.906Q-6.662-30.930-6.662-31.019L-6.634-31.128Q-6.617-31.172-6.549-31.186L-5.718-31.186L-5.438-32.283Q-5.407-32.396-5.315-32.470Q-5.223-32.543-5.107-32.543Q-5.014-32.543-4.942-32.480Q-4.871-32.417-4.871-32.317Q-4.871-32.270-4.878-32.249L-5.144-31.186L-4.365-31.186Q-4.283-31.159-4.283-31.080L-4.310-30.967Q-4.317-30.923-4.385-30.906L-5.213-30.906L-5.718-28.896Q-5.746-28.739-5.746-28.650Q-5.746-28.523-5.693-28.423Q-5.640-28.322-5.520-28.322Q-5.213-28.322-4.958-28.588Q-4.703-28.855-4.570-29.190Q-4.536-29.258-4.491-29.258L-4.379-29.258Q-4.344-29.258-4.324-29.233Q-4.303-29.207-4.303-29.176Q-4.303-29.163-4.310-29.149Q-4.420-28.876-4.596-28.638Q-4.772-28.400-5.016-28.250Q-5.260-28.100-5.534-28.100Q-5.841-28.100-6.070-28.279Q-6.299-28.459-6.299-28.756",[553],[536,5633,5634],{"transform":5615},[549,5635],{"d":5636,"fill":611,"stroke":611,"className":5637,"style":554},"M3.837-28.975L-0.996-28.975Q-1.064-28.985-1.110-29.031Q-1.156-29.077-1.156-29.149Q-1.156-29.214-1.110-29.260Q-1.064-29.306-0.996-29.316L3.837-29.316Q3.906-29.306 3.952-29.260Q3.998-29.214 3.998-29.149Q3.998-29.077 3.952-29.031Q3.906-28.985 3.837-28.975M3.837-30.513L-0.996-30.513Q-1.064-30.523-1.110-30.569Q-1.156-30.615-1.156-30.687Q-1.156-30.831-0.996-30.855L3.837-30.855Q3.998-30.831 3.998-30.687Q3.998-30.615 3.952-30.569Q3.906-30.523 3.837-30.513",[553],[536,5639,5640],{"transform":5615},[549,5641],{"d":5642,"fill":611,"stroke":611,"className":5643,"style":554},"M7.539-28.694Q7.539-28.841 7.590-28.944L8.178-30.458Q8.253-30.660 8.253-30.800Q8.253-31.032 8.093-31.032Q7.812-31.032 7.623-30.761Q7.433-30.489 7.344-30.157Q7.334-30.092 7.272-30.092L7.163-30.092Q7.132-30.092 7.108-30.123Q7.084-30.154 7.084-30.178L7.084-30.205Q7.153-30.465 7.293-30.702Q7.433-30.940 7.643-31.097Q7.853-31.254 8.106-31.254Q8.288-31.254 8.441-31.183Q8.595-31.111 8.691-30.974Q8.787-30.837 8.787-30.660Q8.787-30.513 8.735-30.407L8.147-28.896Q8.072-28.729 8.072-28.554Q8.072-28.322 8.233-28.322Q8.510-28.322 8.703-28.599Q8.896-28.876 8.975-29.197Q8.999-29.258 9.053-29.258L9.163-29.258Q9.197-29.258 9.219-29.233Q9.241-29.207 9.241-29.176Q9.241-29.163 9.234-29.149Q9.173-28.899 9.033-28.658Q8.893-28.418 8.682-28.259Q8.472-28.100 8.219-28.100Q7.942-28.100 7.741-28.262Q7.539-28.424 7.539-28.694M8.353-32.410Q8.353-32.564 8.481-32.687Q8.609-32.810 8.766-32.810Q8.879-32.810 8.963-32.729Q9.046-32.649 9.046-32.529Q9.046-32.372 8.918-32.251Q8.790-32.129 8.633-32.129Q8.520-32.129 8.436-32.210Q8.353-32.290 8.353-32.410",[553],[536,5645,5646,5653,5659,5665,5671,5677,5683,5689,5695],{"stroke":542,"fontSize":544},[536,5647,5649],{"transform":5648},"translate(5.705 51.466)",[549,5650],{"d":5651,"fill":538,"stroke":538,"className":5652,"style":554},"M-38.967-29.070Q-38.967-28.746-38.779-28.534Q-38.591-28.322-38.273-28.322Q-37.822-28.322-37.412-28.488Q-37.002-28.653-36.735-28.988Q-36.718-29.016-36.670-29.016Q-36.622-29.016-36.576-28.966Q-36.530-28.917-36.530-28.869Q-36.530-28.838-36.551-28.811Q-36.841-28.445-37.303-28.272Q-37.764-28.100-38.287-28.100Q-38.639-28.100-38.936-28.253Q-39.234-28.407-39.405-28.688Q-39.576-28.968-39.576-29.323Q-39.576-29.699-39.403-30.051Q-39.230-30.403-38.930-30.677Q-38.629-30.950-38.272-31.102Q-37.914-31.254-37.538-31.254Q-37.337-31.254-37.121-31.195Q-36.906-31.135-36.764-31Q-36.622-30.865-36.622-30.653Q-36.622-30.465-36.737-30.325Q-36.851-30.185-37.043-30.185Q-37.159-30.185-37.241-30.258Q-37.323-30.332-37.323-30.451Q-37.323-30.598-37.224-30.711Q-37.125-30.824-36.978-30.855Q-37.166-31.032-37.552-31.032Q-37.887-31.032-38.152-30.846Q-38.417-30.660-38.598-30.362Q-38.779-30.065-38.873-29.718Q-38.967-29.371-38.967-29.070",[553],[536,5654,5655],{"transform":5648},[549,5656],{"d":5657,"fill":538,"stroke":538,"className":5658,"style":554},"M-33.414-28.175L-33.414-29.238Q-33.414-29.262-33.386-29.289Q-33.359-29.316-33.335-29.316L-33.226-29.316Q-33.161-29.316-33.147-29.258Q-33.051-28.824-32.805-28.573Q-32.559-28.322-32.145-28.322Q-31.804-28.322-31.551-28.455Q-31.298-28.588-31.298-28.896Q-31.298-29.053-31.392-29.168Q-31.486-29.282-31.624-29.351Q-31.763-29.419-31.930-29.457L-32.511-29.556Q-32.867-29.624-33.140-29.845Q-33.414-30.065-33.414-30.407Q-33.414-30.656-33.302-30.831Q-33.191-31.005-33.005-31.104Q-32.819-31.203-32.603-31.246Q-32.388-31.289-32.145-31.289Q-31.732-31.289-31.452-31.107L-31.236-31.282Q-31.226-31.285-31.219-31.287Q-31.212-31.289-31.202-31.289L-31.151-31.289Q-31.124-31.289-31.100-31.265Q-31.076-31.241-31.076-31.213L-31.076-30.366Q-31.076-30.345-31.100-30.318Q-31.124-30.291-31.151-30.291L-31.264-30.291Q-31.291-30.291-31.317-30.316Q-31.342-30.342-31.342-30.366Q-31.342-30.602-31.448-30.766Q-31.554-30.930-31.737-31.012Q-31.920-31.094-32.152-31.094Q-32.480-31.094-32.737-30.991Q-32.993-30.889-32.993-30.612Q-32.993-30.417-32.810-30.308Q-32.627-30.198-32.398-30.157L-31.824-30.051Q-31.578-30.003-31.364-29.875Q-31.151-29.747-31.014-29.544Q-30.877-29.340-30.877-29.091Q-30.877-28.578-31.243-28.339Q-31.609-28.100-32.145-28.100Q-32.641-28.100-32.973-28.394L-33.239-28.120Q-33.260-28.100-33.287-28.100L-33.335-28.100Q-33.359-28.100-33.386-28.127Q-33.414-28.154-33.414-28.175M-29.722-29.009L-29.722-30.906L-30.361-30.906L-30.361-31.128Q-30.043-31.128-29.826-31.338Q-29.609-31.548-29.509-31.858Q-29.408-32.167-29.408-32.475L-29.141-32.475L-29.141-31.186L-28.064-31.186L-28.064-30.906L-29.141-30.906L-29.141-29.022Q-29.141-28.746-29.037-28.547Q-28.933-28.349-28.673-28.349Q-28.516-28.349-28.410-28.453Q-28.304-28.558-28.254-28.711Q-28.205-28.865-28.205-29.022L-28.205-29.436L-27.938-29.436L-27.938-29.009Q-27.938-28.783-28.037-28.573Q-28.136-28.363-28.321-28.231Q-28.505-28.100-28.734-28.100Q-29.172-28.100-29.447-28.337Q-29.722-28.575-29.722-29.009M-27.070-28.896Q-27.070-29.228-26.846-29.455Q-26.622-29.682-26.279-29.810Q-25.935-29.939-25.562-29.991Q-25.190-30.044-24.886-30.044L-24.886-30.297Q-24.886-30.502-24.993-30.682Q-25.101-30.861-25.282-30.964Q-25.463-31.066-25.672-31.066Q-26.079-31.066-26.314-30.974Q-26.226-30.937-26.179-30.853Q-26.133-30.769-26.133-30.667Q-26.133-30.571-26.179-30.492Q-26.226-30.414-26.306-30.369Q-26.386-30.325-26.475-30.325Q-26.625-30.325-26.726-30.422Q-26.827-30.520-26.827-30.667Q-26.827-31.289-25.672-31.289Q-25.460-31.289-25.210-31.225Q-24.961-31.162-24.759-31.043Q-24.558-30.923-24.431-30.738Q-24.305-30.554-24.305-30.311L-24.305-28.735Q-24.305-28.619-24.243-28.523Q-24.182-28.428-24.069-28.428Q-23.959-28.428-23.895-28.522Q-23.830-28.616-23.830-28.735L-23.830-29.183L-23.563-29.183L-23.563-28.735Q-23.563-28.465-23.790-28.300Q-24.018-28.134-24.298-28.134Q-24.506-28.134-24.643-28.288Q-24.780-28.441-24.804-28.657Q-24.951-28.390-25.233-28.245Q-25.515-28.100-25.839-28.100Q-26.116-28.100-26.400-28.175Q-26.684-28.250-26.877-28.429Q-27.070-28.609-27.070-28.896M-26.455-28.896Q-26.455-28.722-26.354-28.592Q-26.253-28.462-26.097-28.392Q-25.942-28.322-25.778-28.322Q-25.559-28.322-25.351-28.419Q-25.142-28.517-25.014-28.698Q-24.886-28.879-24.886-29.105L-24.886-29.833Q-25.210-29.833-25.576-29.742Q-25.942-29.651-26.198-29.439Q-26.455-29.228-26.455-28.896",[553],[536,5660,5661],{"transform":5648},[549,5662],{"d":5663,"fill":538,"stroke":538,"className":5664,"style":554},"M-23.015-27.033Q-22.885-26.965-22.748-26.965Q-22.577-26.965-22.427-27.054Q-22.276-27.143-22.165-27.288Q-22.054-27.433-21.976-27.601L-21.712-28.168L-22.881-30.694Q-22.956-30.841-23.086-30.873Q-23.216-30.906-23.449-30.906L-23.449-31.186L-21.928-31.186L-21.928-30.906Q-22.276-30.906-22.276-30.759Q-22.273-30.738-22.271-30.721Q-22.269-30.704-22.269-30.694L-21.412-28.835L-20.639-30.506Q-20.605-30.574-20.605-30.653Q-20.605-30.766-20.689-30.836Q-20.772-30.906-20.885-30.906L-20.885-31.186L-19.689-31.186L-19.689-30.906Q-19.908-30.906-20.080-30.802Q-20.253-30.697-20.345-30.506L-21.682-27.601Q-21.852-27.231-22.122-26.985Q-22.393-26.739-22.748-26.739Q-23.018-26.739-23.237-26.905Q-23.456-27.071-23.456-27.334Q-23.456-27.471-23.363-27.560Q-23.271-27.648-23.131-27.648Q-22.994-27.648-22.905-27.560Q-22.816-27.471-22.816-27.334Q-22.816-27.231-22.869-27.153Q-22.922-27.074-23.015-27.033M-19.149-28.175L-19.149-29.238Q-19.149-29.262-19.122-29.289Q-19.094-29.316-19.070-29.316L-18.961-29.316Q-18.896-29.316-18.882-29.258Q-18.787-28.824-18.540-28.573Q-18.294-28.322-17.881-28.322Q-17.539-28.322-17.286-28.455Q-17.033-28.588-17.033-28.896Q-17.033-29.053-17.127-29.168Q-17.221-29.282-17.360-29.351Q-17.498-29.419-17.665-29.457L-18.247-29.556Q-18.602-29.624-18.875-29.845Q-19.149-30.065-19.149-30.407Q-19.149-30.656-19.038-30.831Q-18.927-31.005-18.740-31.104Q-18.554-31.203-18.339-31.246Q-18.123-31.289-17.881-31.289Q-17.467-31.289-17.187-31.107L-16.972-31.282Q-16.961-31.285-16.955-31.287Q-16.948-31.289-16.937-31.289L-16.886-31.289Q-16.859-31.289-16.835-31.265Q-16.811-31.241-16.811-31.213L-16.811-30.366Q-16.811-30.345-16.835-30.318Q-16.859-30.291-16.886-30.291L-16.999-30.291Q-17.026-30.291-17.052-30.316Q-17.078-30.342-17.078-30.366Q-17.078-30.602-17.184-30.766Q-17.289-30.930-17.472-31.012Q-17.655-31.094-17.888-31.094Q-18.216-31.094-18.472-30.991Q-18.728-30.889-18.728-30.612Q-18.728-30.417-18.546-30.308Q-18.363-30.198-18.134-30.157L-17.560-30.051Q-17.313-30.003-17.100-29.875Q-16.886-29.747-16.749-29.544Q-16.613-29.340-16.613-29.091Q-16.613-28.578-16.978-28.339Q-17.344-28.100-17.881-28.100Q-18.376-28.100-18.708-28.394L-18.975-28.120Q-18.995-28.100-19.022-28.100L-19.070-28.100Q-19.094-28.100-19.122-28.127Q-19.149-28.154-19.149-28.175",[553],[536,5666,5667],{"transform":5648},[549,5668],{"d":5669,"fill":538,"stroke":538,"className":5670,"style":554},"M-11.669-28.168L-13.221-28.168L-13.221-28.448Q-12.995-28.448-12.846-28.482Q-12.698-28.517-12.698-28.657L-12.698-30.506Q-12.698-30.694-12.746-30.778Q-12.793-30.861-12.891-30.880Q-12.988-30.899-13.200-30.899L-13.200-31.179L-12.144-31.254L-12.144-28.657Q-12.144-28.517-12.012-28.482Q-11.881-28.448-11.669-28.448L-11.669-28.168M-12.940-32.475Q-12.940-32.646-12.817-32.765Q-12.694-32.885-12.523-32.885Q-12.356-32.885-12.233-32.765Q-12.110-32.646-12.110-32.475Q-12.110-32.300-12.233-32.177Q-12.356-32.054-12.523-32.054Q-12.694-32.054-12.817-32.177Q-12.940-32.300-12.940-32.475M-9.341-28.168L-10.975-28.168L-10.975-28.448Q-10.746-28.448-10.597-28.482Q-10.449-28.517-10.449-28.657L-10.449-30.506Q-10.449-30.776-10.556-30.837Q-10.664-30.899-10.975-30.899L-10.975-31.179L-9.915-31.254L-9.915-30.605Q-9.745-30.913-9.440-31.084Q-9.136-31.254-8.791-31.254Q-8.285-31.254-8.001-31.031Q-7.718-30.807-7.718-30.311L-7.718-28.657Q-7.718-28.520-7.569-28.484Q-7.420-28.448-7.195-28.448L-7.195-28.168L-8.825-28.168L-8.825-28.448Q-8.596-28.448-8.447-28.482Q-8.299-28.517-8.299-28.657L-8.299-30.297Q-8.299-30.632-8.418-30.832Q-8.538-31.032-8.852-31.032Q-9.122-31.032-9.357-30.896Q-9.591-30.759-9.729-30.525Q-9.868-30.291-9.868-30.017L-9.868-28.657Q-9.868-28.520-9.717-28.484Q-9.567-28.448-9.341-28.448",[553],[536,5672,5673],{"transform":5648},[549,5674],{"d":5675,"fill":538,"stroke":538,"className":5676,"style":554},"M-2.161-28.168L-3.897-28.168L-3.897-28.448Q-3.668-28.448-3.519-28.482Q-3.371-28.517-3.371-28.657L-3.371-30.506Q-3.371-30.776-3.478-30.837Q-3.586-30.899-3.897-30.899L-3.897-31.179L-2.868-31.254L-2.868-30.547Q-2.738-30.855-2.496-31.054Q-2.253-31.254-1.935-31.254Q-1.716-31.254-1.545-31.130Q-1.374-31.005-1.374-30.793Q-1.374-30.656-1.474-30.557Q-1.573-30.458-1.706-30.458Q-1.843-30.458-1.942-30.557Q-2.041-30.656-2.041-30.793Q-2.041-30.933-1.942-31.032Q-2.232-31.032-2.432-30.836Q-2.632-30.639-2.725-30.345Q-2.817-30.051-2.817-29.771L-2.817-28.657Q-2.817-28.448-2.161-28.448L-2.161-28.168M-0.732-28.896Q-0.732-29.228-0.508-29.455Q-0.284-29.682 0.059-29.810Q0.403-29.939 0.775-29.991Q1.148-30.044 1.452-30.044L1.452-30.297Q1.452-30.502 1.345-30.682Q1.237-30.861 1.056-30.964Q0.875-31.066 0.666-31.066Q0.259-31.066 0.024-30.974Q0.112-30.937 0.159-30.853Q0.205-30.769 0.205-30.667Q0.205-30.571 0.159-30.492Q0.112-30.414 0.032-30.369Q-0.048-30.325-0.137-30.325Q-0.287-30.325-0.388-30.422Q-0.489-30.520-0.489-30.667Q-0.489-31.289 0.666-31.289Q0.878-31.289 1.128-31.225Q1.377-31.162 1.579-31.043Q1.780-30.923 1.907-30.738Q2.033-30.554 2.033-30.311L2.033-28.735Q2.033-28.619 2.095-28.523Q2.156-28.428 2.269-28.428Q2.379-28.428 2.443-28.522Q2.508-28.616 2.508-28.735L2.508-29.183L2.775-29.183L2.775-28.735Q2.775-28.465 2.548-28.300Q2.320-28.134 2.040-28.134Q1.832-28.134 1.695-28.288Q1.558-28.441 1.534-28.657Q1.387-28.390 1.105-28.245Q0.823-28.100 0.499-28.100Q0.222-28.100-0.062-28.175Q-0.346-28.250-0.539-28.429Q-0.732-28.609-0.732-28.896M-0.117-28.896Q-0.117-28.722-0.016-28.592Q0.085-28.462 0.241-28.392Q0.396-28.322 0.560-28.322Q0.779-28.322 0.987-28.419Q1.196-28.517 1.324-28.698Q1.452-28.879 1.452-29.105L1.452-29.833Q1.128-29.833 0.762-29.742Q0.396-29.651 0.140-29.439Q-0.117-29.228-0.117-28.896M4.874-28.168L3.240-28.168L3.240-28.448Q3.469-28.448 3.618-28.482Q3.766-28.517 3.766-28.657L3.766-30.506Q3.766-30.776 3.659-30.837Q3.551-30.899 3.240-30.899L3.240-31.179L4.299-31.254L4.299-30.605Q4.470-30.913 4.775-31.084Q5.079-31.254 5.424-31.254Q5.930-31.254 6.213-31.031Q6.497-30.807 6.497-30.311L6.497-28.657Q6.497-28.520 6.646-28.484Q6.795-28.448 7.020-28.448L7.020-28.168L5.390-28.168L5.390-28.448Q5.619-28.448 5.767-28.482Q5.916-28.517 5.916-28.657L5.916-30.297Q5.916-30.632 5.796-30.832Q5.677-31.032 5.362-31.032Q5.092-31.032 4.858-30.896Q4.624-30.759 4.486-30.525Q4.347-30.291 4.347-30.017L4.347-28.657Q4.347-28.520 4.498-28.484Q4.648-28.448 4.874-28.448L4.874-28.168M7.567-27.635Q7.567-27.881 7.764-28.065Q7.960-28.250 8.216-28.329Q8.080-28.441 8.008-28.602Q7.936-28.763 7.936-28.944Q7.936-29.265 8.148-29.511Q7.813-29.809 7.813-30.219Q7.813-30.680 8.203-30.967Q8.592-31.254 9.071-31.254Q9.543-31.254 9.878-31.008Q10.052-31.162 10.262-31.244Q10.472-31.326 10.701-31.326Q10.865-31.326 10.987-31.219Q11.108-31.111 11.108-30.947Q11.108-30.851 11.036-30.779Q10.964-30.708 10.872-30.708Q10.773-30.708 10.703-30.781Q10.633-30.855 10.633-30.954Q10.633-31.008 10.647-31.039L10.653-31.053Q10.660-31.073 10.669-31.084Q10.677-31.094 10.681-31.101Q10.325-31.101 10.038-30.878Q10.325-30.585 10.325-30.219Q10.325-29.904 10.141-29.672Q9.956-29.439 9.667-29.311Q9.379-29.183 9.071-29.183Q8.869-29.183 8.678-29.233Q8.486-29.282 8.309-29.392Q8.216-29.265 8.216-29.122Q8.216-28.940 8.345-28.805Q8.473-28.670 8.657-28.670L9.290-28.670Q9.737-28.670 10.107-28.599Q10.476-28.527 10.735-28.298Q10.995-28.069 10.995-27.635Q10.995-27.314 10.700-27.112Q10.404-26.910 10.001-26.821Q9.597-26.732 9.283-26.732Q8.965-26.732 8.562-26.821Q8.158-26.910 7.863-27.112Q7.567-27.314 7.567-27.635M8.022-27.635Q8.022-27.406 8.240-27.257Q8.459-27.108 8.751-27.040Q9.044-26.972 9.283-26.972Q9.447-26.972 9.655-27.008Q9.864-27.043 10.071-27.124Q10.277-27.204 10.409-27.332Q10.541-27.460 10.541-27.635Q10.541-27.987 10.160-28.081Q9.778-28.175 9.276-28.175L8.657-28.175Q8.418-28.175 8.220-28.024Q8.022-27.874 8.022-27.635M9.071-29.422Q9.737-29.422 9.737-30.219Q9.737-31.019 9.071-31.019Q8.401-31.019 8.401-30.219Q8.401-29.422 9.071-29.422M11.549-29.703Q11.549-30.024 11.674-30.313Q11.798-30.602 12.024-30.825Q12.250-31.049 12.545-31.169Q12.841-31.289 13.159-31.289Q13.487-31.289 13.748-31.189Q14.010-31.090 14.186-30.908Q14.362-30.725 14.456-30.467Q14.550-30.209 14.550-29.877Q14.550-29.785 14.468-29.764L12.212-29.764L12.212-29.703Q12.212-29.115 12.496-28.732Q12.779-28.349 13.347-28.349Q13.668-28.349 13.936-28.542Q14.205-28.735 14.294-29.050Q14.300-29.091 14.376-29.105L14.468-29.105Q14.550-29.081 14.550-29.009Q14.550-29.002 14.543-28.975Q14.430-28.578 14.059-28.339Q13.689-28.100 13.265-28.100Q12.827-28.100 12.427-28.308Q12.027-28.517 11.788-28.884Q11.549-29.251 11.549-29.703M12.219-29.973L14.034-29.973Q14.034-30.250 13.936-30.502Q13.839-30.755 13.641-30.911Q13.442-31.066 13.159-31.066Q12.882-31.066 12.668-30.908Q12.455-30.749 12.337-30.494Q12.219-30.239 12.219-29.973",[553],[536,5678,5679],{"transform":5648},[549,5680],{"d":5681,"fill":538,"stroke":538,"className":5682,"style":554},"M19.737-29.422L17.679-29.422L17.679-29.925L19.737-29.925",[553],[536,5684,5685],{"transform":5648},[549,5686],{"d":5687,"fill":538,"stroke":538,"className":5688,"style":554},"M23.242-29.679Q23.242-30.007 23.377-30.308Q23.512-30.608 23.748-30.829Q23.984-31.049 24.288-31.169Q24.593-31.289 24.917-31.289Q25.423-31.289 25.772-31.186Q26.120-31.084 26.120-30.708Q26.120-30.561 26.023-30.460Q25.926-30.359 25.779-30.359Q25.625-30.359 25.526-30.458Q25.427-30.557 25.427-30.708Q25.427-30.896 25.567-30.988Q25.365-31.039 24.924-31.039Q24.569-31.039 24.340-30.843Q24.111-30.646 24.010-30.337Q23.909-30.027 23.909-29.679Q23.909-29.330 24.035-29.024Q24.162-28.718 24.417-28.534Q24.671-28.349 25.027-28.349Q25.249-28.349 25.433-28.433Q25.618-28.517 25.753-28.672Q25.888-28.828 25.946-29.036Q25.960-29.091 26.014-29.091L26.127-29.091Q26.158-29.091 26.180-29.067Q26.202-29.043 26.202-29.009L26.202-28.988Q26.117-28.701 25.929-28.503Q25.741-28.305 25.476-28.202Q25.211-28.100 24.917-28.100Q24.487-28.100 24.099-28.306Q23.711-28.513 23.477-28.876Q23.242-29.238 23.242-29.679M26.848-28.896Q26.848-29.228 27.072-29.455Q27.296-29.682 27.640-29.810Q27.983-29.939 28.356-29.991Q28.728-30.044 29.032-30.044L29.032-30.297Q29.032-30.502 28.925-30.682Q28.817-30.861 28.636-30.964Q28.455-31.066 28.246-31.066Q27.840-31.066 27.604-30.974Q27.693-30.937 27.739-30.853Q27.785-30.769 27.785-30.667Q27.785-30.571 27.739-30.492Q27.693-30.414 27.612-30.369Q27.532-30.325 27.443-30.325Q27.293-30.325 27.192-30.422Q27.091-30.520 27.091-30.667Q27.091-31.289 28.246-31.289Q28.458-31.289 28.708-31.225Q28.957-31.162 29.159-31.043Q29.361-30.923 29.487-30.738Q29.614-30.554 29.614-30.311L29.614-28.735Q29.614-28.619 29.675-28.523Q29.737-28.428 29.849-28.428Q29.959-28.428 30.024-28.522Q30.089-28.616 30.089-28.735L30.089-29.183L30.355-29.183L30.355-28.735Q30.355-28.465 30.128-28.300Q29.901-28.134 29.620-28.134Q29.412-28.134 29.275-28.288Q29.138-28.441 29.115-28.657Q28.968-28.390 28.686-28.245Q28.404-28.100 28.079-28.100Q27.802-28.100 27.518-28.175Q27.235-28.250 27.042-28.429Q26.848-28.609 26.848-28.896M27.464-28.896Q27.464-28.722 27.564-28.592Q27.665-28.462 27.821-28.392Q27.976-28.322 28.140-28.322Q28.359-28.322 28.568-28.419Q28.776-28.517 28.904-28.698Q29.032-28.879 29.032-29.105L29.032-29.833Q28.708-29.833 28.342-29.742Q27.976-29.651 27.720-29.439Q27.464-29.228 27.464-28.896M32.454-28.168L30.820-28.168L30.820-28.448Q31.049-28.448 31.198-28.482Q31.346-28.517 31.346-28.657L31.346-30.506Q31.346-30.776 31.239-30.837Q31.131-30.899 30.820-30.899L30.820-31.179L31.880-31.254L31.880-30.605Q32.051-30.913 32.355-31.084Q32.659-31.254 33.004-31.254Q33.510-31.254 33.794-31.031Q34.077-30.807 34.077-30.311L34.077-28.657Q34.077-28.520 34.226-28.484Q34.375-28.448 34.600-28.448L34.600-28.168L32.970-28.168L32.970-28.448Q33.199-28.448 33.348-28.482Q33.496-28.517 33.496-28.657L33.496-30.297Q33.496-30.632 33.377-30.832Q33.257-31.032 32.943-31.032Q32.673-31.032 32.438-30.896Q32.204-30.759 32.066-30.525Q31.928-30.291 31.928-30.017L31.928-28.657Q31.928-28.520 32.078-28.484Q32.228-28.448 32.454-28.448",[553],[536,5690,5691],{"transform":5648},[549,5692],{"d":5693,"fill":538,"stroke":538,"className":5694,"style":554},"M39.645-28.168L37.909-28.168L37.909-28.448Q38.138-28.448 38.287-28.482Q38.435-28.517 38.435-28.657L38.435-30.506Q38.435-30.776 38.328-30.837Q38.220-30.899 37.909-30.899L37.909-31.179L38.938-31.254L38.938-30.547Q39.068-30.855 39.310-31.054Q39.553-31.254 39.871-31.254Q40.090-31.254 40.261-31.130Q40.432-31.005 40.432-30.793Q40.432-30.656 40.332-30.557Q40.233-30.458 40.100-30.458Q39.963-30.458 39.864-30.557Q39.765-30.656 39.765-30.793Q39.765-30.933 39.864-31.032Q39.574-31.032 39.374-30.836Q39.174-30.639 39.081-30.345Q38.989-30.051 38.989-29.771L38.989-28.657Q38.989-28.448 39.645-28.448L39.645-28.168M40.975-29.703Q40.975-30.024 41.100-30.313Q41.225-30.602 41.450-30.825Q41.676-31.049 41.971-31.169Q42.267-31.289 42.585-31.289Q42.913-31.289 43.175-31.189Q43.436-31.090 43.612-30.908Q43.788-30.725 43.882-30.467Q43.976-30.209 43.976-29.877Q43.976-29.785 43.894-29.764L41.638-29.764L41.638-29.703Q41.638-29.115 41.922-28.732Q42.206-28.349 42.773-28.349Q43.094-28.349 43.362-28.542Q43.631-28.735 43.720-29.050Q43.727-29.091 43.802-29.105L43.894-29.105Q43.976-29.081 43.976-29.009Q43.976-29.002 43.969-28.975Q43.856-28.578 43.486-28.339Q43.115-28.100 42.691-28.100Q42.253-28.100 41.853-28.308Q41.454-28.517 41.214-28.884Q40.975-29.251 40.975-29.703M41.645-29.973L43.460-29.973Q43.460-30.250 43.362-30.502Q43.265-30.755 43.067-30.911Q42.869-31.066 42.585-31.066Q42.308-31.066 42.094-30.908Q41.881-30.749 41.763-30.494Q41.645-30.239 41.645-29.973M46.208-26.811L44.578-26.811L44.578-27.091Q44.807-27.091 44.955-27.126Q45.104-27.160 45.104-27.300L45.104-30.646Q45.104-30.817 44.967-30.858Q44.831-30.899 44.578-30.899L44.578-31.179L45.658-31.254L45.658-30.848Q45.880-31.049 46.167-31.152Q46.454-31.254 46.762-31.254Q47.189-31.254 47.553-31.041Q47.917-30.827 48.131-30.463Q48.344-30.099 48.344-29.679Q48.344-29.234 48.105-28.870Q47.866-28.506 47.473-28.303Q47.080-28.100 46.635-28.100Q46.369-28.100 46.121-28.200Q45.873-28.301 45.685-28.482L45.685-27.300Q45.685-27.163 45.834-27.127Q45.982-27.091 46.208-27.091L46.208-26.811M45.685-30.499L45.685-28.889Q45.818-28.636 46.061-28.479Q46.304-28.322 46.581-28.322Q46.909-28.322 47.162-28.523Q47.414-28.725 47.548-29.043Q47.681-29.361 47.681-29.679Q47.681-29.908 47.616-30.137Q47.551-30.366 47.423-30.564Q47.295-30.762 47.100-30.882Q46.905-31.001 46.673-31.001Q46.379-31.001 46.111-30.872Q45.842-30.742 45.685-30.499",[553],[536,5696,5697],{"transform":5648},[549,5698],{"d":5699,"fill":538,"stroke":538,"className":5700,"style":554},"M49.166-29.703Q49.166-30.024 49.291-30.313Q49.416-30.602 49.642-30.825Q49.867-31.049 50.163-31.169Q50.458-31.289 50.776-31.289Q51.104-31.289 51.366-31.189Q51.627-31.090 51.803-30.908Q51.979-30.725 52.073-30.467Q52.167-30.209 52.167-29.877Q52.167-29.785 52.085-29.764L49.830-29.764L49.830-29.703Q49.830-29.115 50.113-28.732Q50.397-28.349 50.964-28.349Q51.286-28.349 51.554-28.542Q51.822-28.735 51.911-29.050Q51.918-29.091 51.993-29.105L52.085-29.105Q52.167-29.081 52.167-29.009Q52.167-29.002 52.161-28.975Q52.048-28.578 51.677-28.339Q51.306-28.100 50.882-28.100Q50.445-28.100 50.045-28.308Q49.645-28.517 49.406-28.884Q49.166-29.251 49.166-29.703M49.836-29.973L51.651-29.973Q51.651-30.250 51.554-30.502Q51.456-30.755 51.258-30.911Q51.060-31.066 50.776-31.066Q50.499-31.066 50.286-30.908Q50.072-30.749 49.954-30.494Q49.836-30.239 49.836-29.973M52.813-28.896Q52.813-29.228 53.037-29.455Q53.261-29.682 53.605-29.810Q53.948-29.939 54.321-29.991Q54.693-30.044 54.997-30.044L54.997-30.297Q54.997-30.502 54.890-30.682Q54.782-30.861 54.601-30.964Q54.420-31.066 54.211-31.066Q53.805-31.066 53.569-30.974Q53.658-30.937 53.704-30.853Q53.750-30.769 53.750-30.667Q53.750-30.571 53.704-30.492Q53.658-30.414 53.577-30.369Q53.497-30.325 53.408-30.325Q53.258-30.325 53.157-30.422Q53.056-30.520 53.056-30.667Q53.056-31.289 54.211-31.289Q54.423-31.289 54.673-31.225Q54.922-31.162 55.124-31.043Q55.326-30.923 55.452-30.738Q55.579-30.554 55.579-30.311L55.579-28.735Q55.579-28.619 55.640-28.523Q55.702-28.428 55.814-28.428Q55.924-28.428 55.989-28.522Q56.054-28.616 56.054-28.735L56.054-29.183L56.320-29.183L56.320-28.735Q56.320-28.465 56.093-28.300Q55.866-28.134 55.585-28.134Q55.377-28.134 55.240-28.288Q55.103-28.441 55.080-28.657Q54.933-28.390 54.651-28.245Q54.369-28.100 54.044-28.100Q53.767-28.100 53.483-28.175Q53.200-28.250 53.007-28.429Q52.813-28.609 52.813-28.896M53.429-28.896Q53.429-28.722 53.529-28.592Q53.630-28.462 53.786-28.392Q53.941-28.322 54.105-28.322Q54.324-28.322 54.533-28.419Q54.741-28.517 54.869-28.698Q54.997-28.879 54.997-29.105L54.997-29.833Q54.673-29.833 54.307-29.742Q53.941-29.651 53.685-29.439Q53.429-29.228 53.429-28.896M57.264-29.009L57.264-30.906L56.624-30.906L56.624-31.128Q56.942-31.128 57.159-31.338Q57.376-31.548 57.477-31.858Q57.578-32.167 57.578-32.475L57.845-32.475L57.845-31.186L58.921-31.186L58.921-30.906L57.845-30.906L57.845-29.022Q57.845-28.746 57.949-28.547Q58.053-28.349 58.313-28.349Q58.470-28.349 58.576-28.453Q58.682-28.558 58.732-28.711Q58.781-28.865 58.781-29.022L58.781-29.436L59.048-29.436L59.048-29.009Q59.048-28.783 58.949-28.573Q58.850-28.363 58.665-28.231Q58.480-28.100 58.251-28.100Q57.814-28.100 57.539-28.337Q57.264-28.575 57.264-29.009",[553],[536,5702,5703],{"fill":611,"stroke":611},[536,5704,5705,5712,5718,5724,5730,5736,5742,5748],{"fill":611,"stroke":542,"fontSize":5501},[536,5706,5708],{"transform":5707},"translate(176.17 -33.338)",[549,5709],{"d":5710,"fill":611,"stroke":611,"className":5711,"style":5509},"M-39.074-29.121L-39.074-30.863Q-39.074-31.078-39.137-31.174Q-39.199-31.270-39.318-31.291Q-39.437-31.313-39.684-31.313L-39.684-31.609L-38.437-31.695L-38.437-29.145L-38.437-29.121Q-38.437-28.809-38.383-28.647Q-38.328-28.484-38.178-28.414Q-38.027-28.344-37.707-28.344Q-37.277-28.344-37.004-28.682Q-36.730-29.020-36.730-29.465L-36.730-30.863Q-36.730-31.078-36.793-31.174Q-36.855-31.270-36.975-31.291Q-37.094-31.313-37.340-31.313L-37.340-31.609L-36.094-31.695L-36.094-28.910Q-36.094-28.699-36.031-28.604Q-35.969-28.508-35.850-28.486Q-35.730-28.465-35.484-28.465L-35.484-28.168L-36.707-28.090L-36.707-28.711Q-36.875-28.422-37.156-28.256Q-37.437-28.090-37.758-28.090Q-39.074-28.090-39.074-29.121M-34.996-28.176L-34.996-29.398Q-34.996-29.426-34.965-29.457Q-34.934-29.488-34.910-29.488L-34.805-29.488Q-34.734-29.488-34.719-29.426Q-34.656-29.105-34.517-28.865Q-34.379-28.625-34.146-28.484Q-33.914-28.344-33.605-28.344Q-33.367-28.344-33.158-28.404Q-32.949-28.465-32.812-28.613Q-32.676-28.762-32.676-29.008Q-32.676-29.262-32.887-29.428Q-33.098-29.594-33.367-29.648L-33.988-29.762Q-34.394-29.840-34.695-30.096Q-34.996-30.352-34.996-30.727Q-34.996-31.094-34.795-31.316Q-34.594-31.539-34.269-31.637Q-33.945-31.734-33.605-31.734Q-33.141-31.734-32.844-31.527L-32.621-31.711Q-32.598-31.734-32.566-31.734L-32.516-31.734Q-32.484-31.734-32.457-31.707Q-32.430-31.680-32.430-31.648L-32.430-30.664Q-32.430-30.633-32.455-30.604Q-32.480-30.574-32.516-30.574L-32.621-30.574Q-32.656-30.574-32.684-30.602Q-32.711-30.629-32.711-30.664Q-32.711-31.063-32.963-31.283Q-33.215-31.504-33.613-31.504Q-33.969-31.504-34.252-31.381Q-34.535-31.258-34.535-30.953Q-34.535-30.734-34.334-30.602Q-34.133-30.469-33.887-30.426L-33.262-30.313Q-32.832-30.223-32.523-29.926Q-32.215-29.629-32.215-29.215Q-32.215-28.645-32.613-28.367Q-33.012-28.090-33.605-28.090Q-34.156-28.090-34.508-28.426L-34.805-28.113Q-34.828-28.090-34.863-28.090L-34.910-28.090Q-34.934-28.090-34.965-28.121Q-34.996-28.152-34.996-28.176M-31.687-29.922Q-31.687-30.402-31.455-30.818Q-31.223-31.234-30.812-31.484Q-30.402-31.734-29.926-31.734Q-29.195-31.734-28.797-31.293Q-28.398-30.852-28.398-30.121Q-28.398-30.016-28.492-29.992L-30.941-29.992L-30.941-29.922Q-30.941-29.512-30.820-29.156Q-30.699-28.801-30.428-28.584Q-30.156-28.367-29.726-28.367Q-29.363-28.367-29.066-28.596Q-28.769-28.824-28.668-29.176Q-28.660-29.223-28.574-29.238L-28.492-29.238Q-28.398-29.211-28.398-29.129Q-28.398-29.121-28.406-29.090Q-28.469-28.863-28.607-28.680Q-28.746-28.496-28.937-28.363Q-29.129-28.230-29.348-28.160Q-29.566-28.090-29.805-28.090Q-30.176-28.090-30.514-28.227Q-30.851-28.363-31.119-28.615Q-31.387-28.867-31.537-29.207Q-31.687-29.547-31.687-29.922M-30.934-30.230L-28.973-30.230Q-28.973-30.535-29.074-30.826Q-29.176-31.117-29.392-31.299Q-29.609-31.480-29.926-31.480Q-30.226-31.480-30.457-31.293Q-30.687-31.105-30.810-30.814Q-30.934-30.523-30.934-30.230",[553],[536,5713,5714],{"transform":5707},[549,5715],{"d":5716,"fill":611,"stroke":611,"className":5717,"style":5509},"M-25.072-29.863Q-25.072-30.367-24.816-30.799Q-24.560-31.230-24.124-31.482Q-23.689-31.734-23.189-31.734Q-22.802-31.734-22.460-31.590Q-22.119-31.445-21.857-31.184Q-21.595-30.922-21.453-30.586Q-21.310-30.250-21.310-29.863Q-21.310-29.371-21.574-28.961Q-21.837-28.551-22.267-28.320Q-22.697-28.090-23.189-28.090Q-23.681-28.090-24.115-28.322Q-24.548-28.555-24.810-28.963Q-25.072-29.371-25.072-29.863M-23.189-28.367Q-22.732-28.367-22.480-28.590Q-22.228-28.813-22.140-29.164Q-22.052-29.516-22.052-29.961Q-22.052-30.391-22.146-30.729Q-22.240-31.066-22.494-31.273Q-22.747-31.480-23.189-31.480Q-23.837-31.480-24.081-31.064Q-24.326-30.648-24.326-29.961Q-24.326-29.516-24.238-29.164Q-24.150-28.813-23.898-28.590Q-23.646-28.367-23.189-28.367M-18.896-28.168L-20.751-28.168L-20.751-28.465Q-20.478-28.465-20.310-28.512Q-20.142-28.559-20.142-28.727L-20.142-30.863Q-20.142-31.078-20.205-31.174Q-20.267-31.270-20.386-31.291Q-20.505-31.313-20.751-31.313L-20.751-31.609L-19.560-31.695L-19.560-30.961Q-19.447-31.176-19.253-31.344Q-19.060-31.512-18.822-31.604Q-18.583-31.695-18.330-31.695Q-17.162-31.695-17.162-30.617L-17.162-28.727Q-17.162-28.559-16.992-28.512Q-16.822-28.465-16.552-28.465L-16.552-28.168L-18.408-28.168L-18.408-28.465Q-18.134-28.465-17.966-28.512Q-17.798-28.559-17.798-28.727L-17.798-30.602Q-17.798-30.984-17.919-31.213Q-18.040-31.441-18.392-31.441Q-18.705-31.441-18.958-31.279Q-19.212-31.117-19.359-30.848Q-19.505-30.578-19.505-30.281L-19.505-28.727Q-19.505-28.559-19.335-28.512Q-19.165-28.465-18.896-28.465L-18.896-28.168M-16.064-29.895Q-16.064-30.391-15.814-30.816Q-15.564-31.242-15.144-31.488Q-14.724-31.734-14.224-31.734Q-13.685-31.734-13.294-31.609Q-12.904-31.484-12.904-31.070Q-12.904-30.965-12.955-30.873Q-13.005-30.781-13.097-30.730Q-13.189-30.680-13.298-30.680Q-13.404-30.680-13.496-30.730Q-13.587-30.781-13.638-30.873Q-13.689-30.965-13.689-31.070Q-13.689-31.293-13.521-31.398Q-13.744-31.457-14.216-31.457Q-14.513-31.457-14.728-31.318Q-14.943-31.180-15.074-30.949Q-15.205-30.719-15.263-30.449Q-15.322-30.180-15.322-29.895Q-15.322-29.500-15.189-29.150Q-15.056-28.801-14.785-28.584Q-14.513-28.367-14.115-28.367Q-13.740-28.367-13.464-28.584Q-13.189-28.801-13.087-29.160Q-13.072-29.223-13.009-29.223L-12.904-29.223Q-12.869-29.223-12.843-29.195Q-12.818-29.168-12.818-29.129L-12.818-29.105Q-12.951-28.625-13.335-28.357Q-13.720-28.090-14.224-28.090Q-14.587-28.090-14.921-28.227Q-15.255-28.363-15.515-28.613Q-15.775-28.863-15.919-29.199Q-16.064-29.535-16.064-29.895M-12.330-29.922Q-12.330-30.402-12.097-30.818Q-11.865-31.234-11.455-31.484Q-11.044-31.734-10.568-31.734Q-9.837-31.734-9.439-31.293Q-9.040-30.852-9.040-30.121Q-9.040-30.016-9.134-29.992L-11.583-29.992L-11.583-29.922Q-11.583-29.512-11.462-29.156Q-11.341-28.801-11.070-28.584Q-10.798-28.367-10.369-28.367Q-10.005-28.367-9.708-28.596Q-9.412-28.824-9.310-29.176Q-9.302-29.223-9.216-29.238L-9.134-29.238Q-9.040-29.211-9.040-29.129Q-9.040-29.121-9.048-29.090Q-9.111-28.863-9.249-28.680Q-9.388-28.496-9.580-28.363Q-9.771-28.230-9.990-28.160Q-10.208-28.090-10.447-28.090Q-10.818-28.090-11.156-28.227Q-11.494-28.363-11.761-28.615Q-12.029-28.867-12.179-29.207Q-12.330-29.547-12.330-29.922M-11.576-30.230L-9.615-30.230Q-9.615-30.535-9.716-30.826Q-9.818-31.117-10.035-31.299Q-10.251-31.480-10.568-31.480Q-10.869-31.480-11.099-31.293Q-11.330-31.105-11.453-30.814Q-11.576-30.523-11.576-30.230M-8.072-28.633Q-8.072-28.816-7.935-28.953Q-7.798-29.090-7.607-29.090Q-7.415-29.090-7.283-28.957Q-7.150-28.824-7.150-28.633Q-7.150-28.434-7.283-28.301Q-7.415-28.168-7.607-28.168Q-7.798-28.168-7.935-28.305Q-8.072-28.441-8.072-28.633M-8.072-31.160Q-8.072-31.344-7.935-31.480Q-7.798-31.617-7.607-31.617Q-7.415-31.617-7.283-31.484Q-7.150-31.352-7.150-31.160Q-7.150-30.961-7.283-30.828Q-7.415-30.695-7.607-30.695Q-7.798-30.695-7.935-30.832Q-8.072-30.969-8.072-31.160",[553],[536,5719,5720],{"transform":5707},[549,5721],{"d":5722,"fill":611,"stroke":611,"className":5723,"style":5509},"M-1.850-28.648Q-1.635-28.344-0.971-28.344Q-0.541-28.344-0.184-28.545Q0.173-28.746 0.173-29.145Q0.173-29.348 0.013-29.471Q-0.147-29.594-0.354-29.633L-0.819-29.719Q-1.135-29.789-1.350-29.996Q-1.565-30.203-1.565-30.512Q-1.565-30.875-1.360-31.147Q-1.155-31.418-0.825-31.557Q-0.495-31.695-0.139-31.695Q0.248-31.695 0.558-31.527Q0.869-31.359 0.869-31.008Q0.869-30.816 0.763-30.676Q0.658-30.535 0.470-30.535Q0.361-30.535 0.279-30.607Q0.197-30.680 0.197-30.793Q0.197-30.938 0.295-31.047Q0.392-31.156 0.533-31.176Q0.443-31.320 0.252-31.381Q0.060-31.441-0.155-31.441Q-0.487-31.441-0.760-31.270Q-1.034-31.098-1.034-30.785Q-1.034-30.629-0.922-30.535Q-0.811-30.441-0.635-30.398L-0.178-30.313Q0.197-30.242 0.449-30.010Q0.701-29.777 0.701-29.414Q0.701-29.141 0.556-28.873Q0.412-28.605 0.173-28.426Q-0.303-28.090-0.987-28.090Q-1.264-28.090-1.545-28.162Q-1.827-28.234-2.018-28.408Q-2.209-28.582-2.209-28.863Q-2.209-29.086-2.080-29.250Q-1.952-29.414-1.733-29.414Q-1.588-29.414-1.500-29.332Q-1.413-29.250-1.413-29.113Q-1.413-28.934-1.543-28.791Q-1.674-28.648-1.850-28.648M1.837-28.840Q1.837-28.949 1.861-29.055L2.431-31.320L1.584-31.320Q1.478-31.348 1.478-31.449L1.502-31.551Q1.521-31.602 1.599-31.617L2.502-31.617L2.822-32.879Q2.849-33.008 2.955-33.088Q3.060-33.168 3.189-33.168Q3.298-33.168 3.377-33.094Q3.455-33.020 3.455-32.910Q3.455-32.863 3.447-32.840L3.142-31.617L3.990-31.617Q4.087-31.586 4.087-31.496L4.064-31.391Q4.056-31.340 3.974-31.320L3.072-31.320L2.486-29Q2.447-28.754 2.447-28.703Q2.447-28.344 2.693-28.344Q3.056-28.344 3.334-28.660Q3.611-28.977 3.759-29.367Q3.791-29.414 3.837-29.414L3.943-29.414Q3.982-29.414 4.005-29.385Q4.029-29.355 4.029-29.320Q4.029-29.305 4.021-29.289Q3.837-28.805 3.484-28.447Q3.130-28.090 2.677-28.090Q2.334-28.090 2.086-28.297Q1.837-28.504 1.837-28.840M5.853-28.090Q5.498-28.090 5.228-28.270Q4.959-28.449 4.818-28.744Q4.677-29.039 4.677-29.398Q4.677-29.785 4.839-30.199Q5.002-30.613 5.285-30.951Q5.568-31.289 5.937-31.492Q6.306-31.695 6.709-31.695Q7.201-31.695 7.478-31.246Q7.509-31.379 7.613-31.461Q7.716-31.543 7.845-31.543Q7.959-31.543 8.039-31.473Q8.119-31.402 8.119-31.289Q8.119-31.262 8.103-31.199L7.548-29Q7.509-28.754 7.509-28.703Q7.509-28.344 7.755-28.344Q7.900-28.344 8.002-28.451Q8.103-28.559 8.168-28.713Q8.232-28.867 8.281-29.057Q8.330-29.246 8.349-29.344Q8.377-29.414 8.439-29.414L8.541-29.414Q8.580-29.414 8.605-29.381Q8.630-29.348 8.630-29.320Q8.630-29.305 8.623-29.289Q8.509-28.797 8.310-28.443Q8.111-28.090 7.740-28.090Q7.459-28.090 7.232-28.232Q7.005-28.375 6.923-28.633Q6.701-28.391 6.427-28.240Q6.154-28.090 5.853-28.090M5.869-28.344Q6.080-28.344 6.289-28.457Q6.498-28.570 6.668-28.744Q6.837-28.918 6.966-29.113Q6.955-29.098 6.945-29.084Q6.935-29.070 6.923-29.055L7.357-30.777Q7.318-30.957 7.232-31.107Q7.146-31.258 7.009-31.350Q6.873-31.441 6.693-31.441Q6.357-31.441 6.086-31.160Q5.814-30.879 5.654-30.504Q5.529-30.184 5.431-29.764Q5.334-29.344 5.334-29.063Q5.334-28.773 5.466-28.559Q5.599-28.344 5.869-28.344M9.556-28.344Q9.560-28.363 9.562-28.377Q9.564-28.391 9.564-28.414L10.158-30.785Q10.197-30.941 10.197-31.078Q10.197-31.227 10.144-31.334Q10.091-31.441 9.959-31.441Q9.779-31.441 9.660-31.272Q9.541-31.102 9.484-30.916Q9.427-30.730 9.357-30.441Q9.345-30.367 9.275-30.367L9.173-30.367Q9.138-30.367 9.111-30.402Q9.084-30.438 9.084-30.465L9.084-30.496Q9.169-30.828 9.263-31.070Q9.357-31.313 9.533-31.504Q9.709-31.695 9.974-31.695Q10.259-31.695 10.492-31.547Q10.724-31.398 10.791-31.145Q10.998-31.398 11.267-31.547Q11.537-31.695 11.853-31.695Q12.033-31.695 12.189-31.623Q12.345-31.551 12.439-31.414Q12.533-31.277 12.533-31.098Q12.533-30.883 12.400-30.725Q12.267-30.566 12.060-30.566Q11.927-30.566 11.834-30.650Q11.740-30.734 11.740-30.871Q11.740-31.047 11.861-31.180Q11.982-31.313 12.150-31.336Q12.017-31.441 11.837-31.441Q11.490-31.441 11.220-31.205Q10.951-30.969 10.755-30.609L10.197-28.375Q10.166-28.250 10.060-28.170Q9.955-28.090 9.830-28.090Q9.720-28.090 9.638-28.160Q9.556-28.230 9.556-28.344",[553],[536,5725,5726],{"transform":5707},[549,5727],{"d":5728,"fill":611,"stroke":611,"className":5729,"style":5509},"M13.495-28.840Q13.495-28.949 13.518-29.055L14.089-31.320L13.241-31.320Q13.135-31.348 13.135-31.449L13.159-31.551Q13.178-31.602 13.257-31.617L14.159-31.617L14.479-32.879Q14.507-33.008 14.612-33.088Q14.717-33.168 14.846-33.168Q14.956-33.168 15.034-33.094Q15.112-33.020 15.112-32.910Q15.112-32.863 15.104-32.840L14.799-31.617L15.647-31.617Q15.745-31.586 15.745-31.496L15.721-31.391Q15.714-31.340 15.632-31.320L14.729-31.320L14.143-29Q14.104-28.754 14.104-28.703Q14.104-28.344 14.350-28.344Q14.714-28.344 14.991-28.660Q15.268-28.977 15.417-29.367Q15.448-29.414 15.495-29.414L15.600-29.414Q15.639-29.414 15.663-29.385Q15.686-29.355 15.686-29.320Q15.686-29.305 15.678-29.289Q15.495-28.805 15.141-28.447Q14.788-28.090 14.335-28.090Q13.991-28.090 13.743-28.297Q13.495-28.504 13.495-28.840",[553],[536,5731,5732],{"transform":5707},[549,5733],{"d":5734,"fill":611,"stroke":611,"className":5735,"style":5509},"M20.664-28.160Q20.609-28.477 20.451-28.789Q20.293-29.102 20.063-29.354Q19.832-29.605 19.539-29.787Q19.246-29.969 18.918-30.063Q18.848-30.086 18.848-30.168Q18.848-30.250 18.918-30.273Q19.246-30.371 19.539-30.553Q19.832-30.734 20.066-30.992Q20.301-31.250 20.455-31.551Q20.609-31.852 20.664-32.176Q20.684-32.262 20.766-32.281L20.934-32.281Q21.031-32.254 21.031-32.152Q20.934-31.625 20.633-31.152Q20.332-30.680 19.879-30.352L26.230-30.352Q26.305-30.352 26.352-30.299Q26.398-30.246 26.398-30.168Q26.398-30.094 26.348-30.039Q26.297-29.984 26.230-29.984L19.879-29.984Q20.176-29.770 20.408-29.492Q20.641-29.215 20.799-28.883Q20.957-28.551 21.031-28.184Q21.031-28.082 20.934-28.055L20.766-28.055Q20.684-28.074 20.664-28.160",[553],[536,5737,5738],{"transform":5707},[549,5739],{"d":5740,"fill":611,"stroke":611,"className":5741,"style":5509},"M29.924-28.770Q29.924-28.902 29.978-29.055L30.650-30.785Q30.740-31.008 30.740-31.191Q30.740-31.441 30.564-31.441Q30.259-31.441 30.049-31.133Q29.838-30.824 29.732-30.441Q29.720-30.367 29.650-30.367L29.549-30.367Q29.513-30.367 29.486-30.402Q29.459-30.438 29.459-30.465L29.459-30.496Q29.580-30.961 29.875-31.328Q30.170-31.695 30.580-31.695Q30.787-31.695 30.957-31.613Q31.127-31.531 31.230-31.377Q31.334-31.223 31.334-31.016Q31.334-30.895 31.275-30.727L30.603-29Q30.517-28.766 30.517-28.594Q30.517-28.344 30.693-28.344Q31.006-28.344 31.220-28.662Q31.435-28.980 31.517-29.344Q31.545-29.414 31.603-29.414L31.709-29.414Q31.748-29.414 31.771-29.385Q31.795-29.355 31.795-29.320Q31.795-29.305 31.787-29.289Q31.709-28.988 31.562-28.721Q31.416-28.453 31.191-28.272Q30.966-28.090 30.677-28.090Q30.361-28.090 30.142-28.277Q29.924-28.465 29.924-28.770M30.845-33.008Q30.845-33.188 30.992-33.326Q31.138-33.465 31.314-33.465Q31.451-33.465 31.543-33.377Q31.634-33.289 31.634-33.152Q31.634-32.977 31.490-32.836Q31.345-32.695 31.174-32.695Q31.041-32.695 30.943-32.787Q30.845-32.879 30.845-33.008",[553],[536,5743,5744],{"transform":5707},[549,5745],{"d":5746,"fill":611,"stroke":611,"className":5747,"style":5509},"M35.251-29.984L32.778-29.984Q32.700-29.996 32.651-30.045Q32.603-30.094 32.603-30.168Q32.603-30.242 32.651-30.291Q32.700-30.340 32.778-30.352L35.251-30.352L35.251-32.832Q35.278-33 35.435-33Q35.509-33 35.558-32.951Q35.607-32.902 35.618-32.832L35.618-30.352L38.091-30.352Q38.259-30.320 38.259-30.168Q38.259-30.016 38.091-29.984L35.618-29.984L35.618-27.504Q35.607-27.434 35.558-27.385Q35.509-27.336 35.435-27.336Q35.278-27.336 35.251-27.504",[553],[536,5749,5750],{"transform":5707},[549,5751],{"d":5752,"fill":611,"stroke":611,"className":5753,"style":5509},"M42.335-28.168L39.542-28.168L39.542-28.465Q40.604-28.465 40.604-28.727L40.604-32.895Q40.175-32.680 39.495-32.680L39.495-32.977Q40.514-32.977 41.030-33.488L41.175-33.488Q41.249-33.469 41.268-33.391L41.268-28.727Q41.268-28.465 42.335-28.465",[553],[549,5755],{"fill":542,"d":5756},"M113.649-19.632h17.071v-17.072H113.65Z",[536,5758,5760],{"transform":5759},"translate(159.73 1.937)",[549,5761],{"d":5560,"fill":538,"stroke":538,"className":5762,"style":571},[553],[549,5764],{"fill":542,"d":5765},"M133.566-19.632h17.071v-17.072h-17.071Z",[536,5767,5769],{"transform":5768},"translate(180.115 3.125)",[549,5770],{"d":5570,"fill":538,"stroke":538,"className":5771,"style":571},[553],[549,5773],{"fill":542,"d":5774},"M153.483-19.632h17.071v-17.072h-17.071Z",[536,5776,5778],{"transform":5777},"translate(200.012 1.937)",[549,5779],{"d":5580,"fill":538,"stroke":538,"className":5780,"style":571},[553],[549,5782],{"fill":542,"d":5783},"M173.4-19.632h17.071v-17.072H173.4Z",[536,5785,5787],{"transform":5786},"translate(219.535 3.125)",[549,5788],{"d":5590,"fill":538,"stroke":538,"className":5789,"style":571},[553],[536,5791,5792,5794],{"stroke":611,"style":612},[549,5793],{"fill":542,"d":5774},[536,5795,5796],{"transform":5777},[549,5797],{"d":5580,"fill":538,"stroke":538,"className":5798,"style":571},[553],[536,5800,5801,5804],{"fill":611,"stroke":611},[549,5802],{"fill":542,"d":5803},"m171.977-15.365 8.812 12.588",[549,5805],{"stroke":542,"d":5806},"m181.935-1.138-.524-3.54-.622 1.901-2-.065",[536,5808,5809],{"fill":611,"stroke":611},[536,5810,5811,5817,5822,5827,5832,5837,5843],{"fill":611,"stroke":542,"fontSize":544},[536,5812,5814],{"transform":5813},"translate(217.678 31.775)",[549,5815],{"d":5618,"fill":611,"stroke":611,"className":5816,"style":554},[553],[536,5818,5819],{"transform":5813},[549,5820],{"d":5624,"fill":611,"stroke":611,"className":5821,"style":554},[553],[536,5823,5824],{"transform":5813},[549,5825],{"d":5630,"fill":611,"stroke":611,"className":5826,"style":554},[553],[536,5828,5829],{"transform":5813},[549,5830],{"d":5636,"fill":611,"stroke":611,"className":5831,"style":554},[553],[536,5833,5834],{"transform":5813},[549,5835],{"d":5642,"fill":611,"stroke":611,"className":5836,"style":554},[553],[536,5838,5839],{"transform":5813},[549,5840],{"d":5841,"fill":611,"stroke":611,"className":5842,"style":554},"M12.498-27.488L12.498-29.744L10.249-29.744Q10.181-29.754 10.135-29.800Q10.089-29.846 10.089-29.918Q10.089-30.062 10.249-30.085L12.498-30.085L12.498-32.341Q12.509-32.410 12.555-32.456Q12.601-32.502 12.673-32.502Q12.816-32.502 12.840-32.341L12.840-30.085L15.082-30.085Q15.243-30.062 15.243-29.918Q15.243-29.846 15.197-29.800Q15.151-29.754 15.082-29.744L12.840-29.744L12.840-27.488Q12.816-27.327 12.673-27.327Q12.601-27.327 12.555-27.373Q12.509-27.419 12.498-27.488",[553],[536,5844,5845],{"transform":5813},[549,5846],{"d":5847,"fill":611,"stroke":611,"className":5848,"style":554},"M19.065-28.168L16.535-28.168L16.535-28.448Q17.503-28.448 17.503-28.657L17.503-32.276Q17.110-32.088 16.488-32.088L16.488-32.369Q16.905-32.369 17.269-32.470Q17.633-32.570 17.889-32.816L18.015-32.816Q18.080-32.799 18.097-32.731L18.097-28.657Q18.097-28.448 19.065-28.448",[553],[536,5850,5851,5857,5863,5869,5875,5881,5887],{"stroke":542,"fontSize":544},[536,5852,5854],{"transform":5853},"translate(163.74 50.8)",[549,5855],{"d":5651,"fill":538,"stroke":538,"className":5856,"style":554},[553],[536,5858,5859],{"transform":5853},[549,5860],{"d":5861,"fill":538,"stroke":538,"className":5862,"style":554},"M-33.455-29.703Q-33.455-30.024-33.330-30.313Q-33.205-30.602-32.979-30.825Q-32.754-31.049-32.458-31.169Q-32.163-31.289-31.845-31.289Q-31.517-31.289-31.255-31.189Q-30.994-31.090-30.818-30.908Q-30.642-30.725-30.548-30.467Q-30.454-30.209-30.454-29.877Q-30.454-29.785-30.536-29.764L-32.791-29.764L-32.791-29.703Q-32.791-29.115-32.508-28.732Q-32.224-28.349-31.657-28.349Q-31.335-28.349-31.067-28.542Q-30.799-28.735-30.710-29.050Q-30.703-29.091-30.628-29.105L-30.536-29.105Q-30.454-29.081-30.454-29.009Q-30.454-29.002-30.460-28.975Q-30.573-28.578-30.944-28.339Q-31.315-28.100-31.739-28.100Q-32.176-28.100-32.576-28.308Q-32.976-28.517-33.215-28.884Q-33.455-29.251-33.455-29.703M-32.785-29.973L-30.970-29.973Q-30.970-30.250-31.067-30.502Q-31.165-30.755-31.363-30.911Q-31.561-31.066-31.845-31.066Q-32.122-31.066-32.335-30.908Q-32.549-30.749-32.667-30.494Q-32.785-30.239-32.785-29.973M-28.683-28.168L-30.006-28.168L-30.006-28.448Q-29.445-28.448-29.066-28.848L-28.352-29.645L-29.264-30.694Q-29.401-30.841-29.550-30.873Q-29.698-30.906-29.965-30.906L-29.965-31.186L-28.464-31.186L-28.464-30.906Q-28.656-30.906-28.656-30.772Q-28.656-30.742-28.625-30.694L-28.030-30.010L-27.589-30.506Q-27.477-30.636-27.477-30.752Q-27.477-30.814-27.514-30.860Q-27.552-30.906-27.610-30.906L-27.610-31.186L-26.294-31.186L-26.294-30.906Q-26.854-30.906-27.234-30.506L-27.856-29.805L-26.861-28.657Q-26.762-28.558-26.661-28.513Q-26.561-28.469-26.449-28.459Q-26.338-28.448-26.161-28.448L-26.161-28.168L-27.654-28.168L-27.654-28.448Q-27.589-28.448-27.530-28.482Q-27.470-28.517-27.470-28.582Q-27.470-28.629-27.500-28.657L-28.177-29.443L-28.710-28.848Q-28.823-28.718-28.823-28.602Q-28.823-28.537-28.782-28.493Q-28.741-28.448-28.683-28.448L-28.683-28.168M-25.665-29.679Q-25.665-30.007-25.530-30.308Q-25.395-30.608-25.159-30.829Q-24.923-31.049-24.619-31.169Q-24.315-31.289-23.990-31.289Q-23.484-31.289-23.136-31.186Q-22.787-31.084-22.787-30.708Q-22.787-30.561-22.884-30.460Q-22.982-30.359-23.129-30.359Q-23.283-30.359-23.382-30.458Q-23.481-30.557-23.481-30.708Q-23.481-30.896-23.341-30.988Q-23.542-31.039-23.983-31.039Q-24.339-31.039-24.568-30.843Q-24.797-30.646-24.898-30.337Q-24.999-30.027-24.999-29.679Q-24.999-29.330-24.872-29.024Q-24.746-28.718-24.491-28.534Q-24.236-28.349-23.881-28.349Q-23.659-28.349-23.474-28.433Q-23.290-28.517-23.155-28.672Q-23.020-28.828-22.961-29.036Q-22.948-29.091-22.893-29.091L-22.780-29.091Q-22.749-29.091-22.727-29.067Q-22.705-29.043-22.705-29.009L-22.705-28.988Q-22.791-28.701-22.978-28.503Q-23.166-28.305-23.431-28.202Q-23.696-28.100-23.990-28.100Q-24.421-28.100-24.809-28.306Q-25.197-28.513-25.431-28.876Q-25.665-29.238-25.665-29.679M-20.449-28.168L-22.052-28.168L-22.052-28.448Q-21.827-28.448-21.678-28.482Q-21.529-28.517-21.529-28.657L-21.529-32.276Q-21.529-32.546-21.637-32.608Q-21.745-32.669-22.052-32.669L-22.052-32.950L-20.976-33.025L-20.976-28.657Q-20.976-28.520-20.825-28.484Q-20.675-28.448-20.449-28.448L-20.449-28.168M-19.280-29.002L-19.280-30.506Q-19.280-30.776-19.388-30.837Q-19.496-30.899-19.807-30.899L-19.807-31.179L-18.699-31.254L-18.699-29.022L-18.699-29.002Q-18.699-28.722-18.648-28.578Q-18.597-28.435-18.455-28.378Q-18.313-28.322-18.026-28.322Q-17.773-28.322-17.568-28.462Q-17.363-28.602-17.247-28.828Q-17.130-29.053-17.130-29.303L-17.130-30.506Q-17.130-30.776-17.238-30.837Q-17.346-30.899-17.657-30.899L-17.657-31.179L-16.549-31.254L-16.549-28.841Q-16.549-28.650-16.496-28.568Q-16.443-28.486-16.343-28.467Q-16.242-28.448-16.026-28.448L-16.026-28.168L-17.103-28.100L-17.103-28.664Q-17.212-28.482-17.358-28.359Q-17.503-28.236-17.689-28.168Q-17.875-28.100-18.077-28.100Q-19.280-28.100-19.280-29.002M-15.438-29.679Q-15.438-30.017-15.298-30.308Q-15.158-30.598-14.914-30.812Q-14.669-31.025-14.365-31.140Q-14.061-31.254-13.736-31.254Q-13.466-31.254-13.203-31.155Q-12.940-31.056-12.749-30.878L-12.749-32.276Q-12.749-32.546-12.856-32.608Q-12.964-32.669-13.275-32.669L-13.275-32.950L-12.198-33.025L-12.198-28.841Q-12.198-28.653-12.144-28.570Q-12.089-28.486-11.988-28.467Q-11.887-28.448-11.672-28.448L-11.672-28.168L-12.779-28.100L-12.779-28.517Q-13.196-28.100-13.822-28.100Q-14.252-28.100-14.625-28.312Q-14.998-28.523-15.218-28.884Q-15.438-29.245-15.438-29.679M-13.764-28.322Q-13.555-28.322-13.369-28.394Q-13.183-28.465-13.029-28.602Q-12.875-28.739-12.779-28.917L-12.779-30.526Q-12.865-30.673-13.010-30.793Q-13.155-30.913-13.324-30.972Q-13.494-31.032-13.675-31.032Q-14.235-31.032-14.504-30.643Q-14.772-30.253-14.772-29.672Q-14.772-29.101-14.538-28.711Q-14.304-28.322-13.764-28.322M-11.063-29.703Q-11.063-30.024-10.939-30.313Q-10.814-30.602-10.588-30.825Q-10.363-31.049-10.067-31.169Q-9.771-31.289-9.454-31.289Q-9.125-31.289-8.864-31.189Q-8.603-31.090-8.426-30.908Q-8.250-30.725-8.156-30.467Q-8.062-30.209-8.062-29.877Q-8.062-29.785-8.145-29.764L-10.400-29.764L-10.400-29.703Q-10.400-29.115-10.117-28.732Q-9.833-28.349-9.266-28.349Q-8.944-28.349-8.676-28.542Q-8.408-28.735-8.319-29.050Q-8.312-29.091-8.237-29.105L-8.145-29.105Q-8.062-29.081-8.062-29.009Q-8.062-29.002-8.069-28.975Q-8.182-28.578-8.553-28.339Q-8.924-28.100-9.348-28.100Q-9.785-28.100-10.185-28.308Q-10.585-28.517-10.824-28.884Q-11.063-29.251-11.063-29.703M-10.394-29.973L-8.579-29.973Q-8.579-30.250-8.676-30.502Q-8.773-30.755-8.972-30.911Q-9.170-31.066-9.454-31.066Q-9.730-31.066-9.944-30.908Q-10.158-30.749-10.276-30.494Q-10.394-30.239-10.394-29.973M-7.475-29.679Q-7.475-30.017-7.334-30.308Q-7.194-30.598-6.950-30.812Q-6.706-31.025-6.401-31.140Q-6.097-31.254-5.772-31.254Q-5.502-31.254-5.239-31.155Q-4.976-31.056-4.785-30.878L-4.785-32.276Q-4.785-32.546-4.892-32.608Q-5-32.669-5.311-32.669L-5.311-32.950L-4.234-33.025L-4.234-28.841Q-4.234-28.653-4.180-28.570Q-4.125-28.486-4.024-28.467Q-3.923-28.448-3.708-28.448L-3.708-28.168L-4.815-28.100L-4.815-28.517Q-5.232-28.100-5.858-28.100Q-6.289-28.100-6.661-28.312Q-7.034-28.523-7.254-28.884Q-7.475-29.245-7.475-29.679M-5.800-28.322Q-5.591-28.322-5.405-28.394Q-5.219-28.465-5.065-28.602Q-4.911-28.739-4.815-28.917L-4.815-30.526Q-4.901-30.673-5.046-30.793Q-5.191-30.913-5.361-30.972Q-5.530-31.032-5.711-31.032Q-6.271-31.032-6.540-30.643Q-6.808-30.253-6.808-29.672Q-6.808-29.101-6.574-28.711Q-6.340-28.322-5.800-28.322",[553],[536,5864,5865],{"transform":5853},[549,5866],{"d":5867,"fill":538,"stroke":538,"className":5868,"style":554},"M1.547-29.422L-0.511-29.422L-0.511-29.925L1.547-29.925",[553],[536,5870,5871],{"transform":5853},[549,5872],{"d":5873,"fill":538,"stroke":538,"className":5874,"style":554},"M5.627-29.002L5.627-30.506Q5.627-30.776 5.519-30.837Q5.411-30.899 5.100-30.899L5.100-31.179L6.208-31.254L6.208-29.022L6.208-29.002Q6.208-28.722 6.259-28.578Q6.310-28.435 6.452-28.378Q6.594-28.322 6.881-28.322Q7.134-28.322 7.339-28.462Q7.544-28.602 7.660-28.828Q7.777-29.053 7.777-29.303L7.777-30.506Q7.777-30.776 7.669-30.837Q7.561-30.899 7.250-30.899L7.250-31.179L8.358-31.254L8.358-28.841Q8.358-28.650 8.411-28.568Q8.464-28.486 8.564-28.467Q8.665-28.448 8.881-28.448L8.881-28.168L7.804-28.100L7.804-28.664Q7.695-28.482 7.549-28.359Q7.404-28.236 7.218-28.168Q7.031-28.100 6.830-28.100Q5.627-28.100 5.627-29.002M9.468-28.175L9.468-29.238Q9.468-29.262 9.496-29.289Q9.523-29.316 9.547-29.316L9.656-29.316Q9.721-29.316 9.735-29.258Q9.831-28.824 10.077-28.573Q10.323-28.322 10.737-28.322Q11.078-28.322 11.331-28.455Q11.584-28.588 11.584-28.896Q11.584-29.053 11.490-29.168Q11.396-29.282 11.258-29.351Q11.119-29.419 10.952-29.457L10.371-29.556Q10.015-29.624 9.742-29.845Q9.468-30.065 9.468-30.407Q9.468-30.656 9.580-30.831Q9.691-31.005 9.877-31.104Q10.063-31.203 10.279-31.246Q10.494-31.289 10.737-31.289Q11.150-31.289 11.430-31.107L11.646-31.282Q11.656-31.285 11.663-31.287Q11.670-31.289 11.680-31.289L11.731-31.289Q11.759-31.289 11.782-31.265Q11.806-31.241 11.806-31.213L11.806-30.366Q11.806-30.345 11.782-30.318Q11.759-30.291 11.731-30.291L11.618-30.291Q11.591-30.291 11.565-30.316Q11.540-30.342 11.540-30.366Q11.540-30.602 11.434-30.766Q11.328-30.930 11.145-31.012Q10.962-31.094 10.730-31.094Q10.402-31.094 10.145-30.991Q9.889-30.889 9.889-30.612Q9.889-30.417 10.072-30.308Q10.255-30.198 10.484-30.157L11.058-30.051Q11.304-30.003 11.518-29.875Q11.731-29.747 11.868-29.544Q12.005-29.340 12.005-29.091Q12.005-28.578 11.639-28.339Q11.273-28.100 10.737-28.100Q10.241-28.100 9.909-28.394L9.643-28.120Q9.622-28.100 9.595-28.100L9.547-28.100Q9.523-28.100 9.496-28.127Q9.468-28.154 9.468-28.175M12.592-29.703Q12.592-30.024 12.717-30.313Q12.842-30.602 13.068-30.825Q13.293-31.049 13.589-31.169Q13.884-31.289 14.202-31.289Q14.530-31.289 14.792-31.189Q15.053-31.090 15.229-30.908Q15.405-30.725 15.499-30.467Q15.593-30.209 15.593-29.877Q15.593-29.785 15.511-29.764L13.256-29.764L13.256-29.703Q13.256-29.115 13.539-28.732Q13.823-28.349 14.390-28.349Q14.712-28.349 14.980-28.542Q15.248-28.735 15.337-29.050Q15.344-29.091 15.419-29.105L15.511-29.105Q15.593-29.081 15.593-29.009Q15.593-29.002 15.587-28.975Q15.474-28.578 15.103-28.339Q14.732-28.100 14.308-28.100Q13.871-28.100 13.471-28.308Q13.071-28.517 12.832-28.884Q12.592-29.251 12.592-29.703M13.262-29.973L15.077-29.973Q15.077-30.250 14.980-30.502Q14.883-30.755 14.684-30.911Q14.486-31.066 14.202-31.066Q13.925-31.066 13.712-30.908Q13.498-30.749 13.380-30.494Q13.262-30.239 13.262-29.973M16.181-29.679Q16.181-30.017 16.321-30.308Q16.462-30.598 16.706-30.812Q16.950-31.025 17.255-31.140Q17.559-31.254 17.884-31.254Q18.154-31.254 18.417-31.155Q18.680-31.056 18.871-30.878L18.871-32.276Q18.871-32.546 18.764-32.608Q18.656-32.669 18.345-32.669L18.345-32.950L19.422-33.025L19.422-28.841Q19.422-28.653 19.476-28.570Q19.531-28.486 19.632-28.467Q19.733-28.448 19.948-28.448L19.948-28.168L18.841-28.100L18.841-28.517Q18.424-28.100 17.798-28.100Q17.367-28.100 16.995-28.312Q16.622-28.523 16.402-28.884Q16.181-29.245 16.181-29.679M17.856-28.322Q18.065-28.322 18.251-28.394Q18.437-28.465 18.591-28.602Q18.745-28.739 18.841-28.917L18.841-30.526Q18.755-30.673 18.610-30.793Q18.465-30.913 18.295-30.972Q18.126-31.032 17.945-31.032Q17.384-31.032 17.116-30.643Q16.848-30.253 16.848-29.672Q16.848-29.101 17.082-28.711Q17.316-28.322 17.856-28.322",[553],[536,5876,5877],{"transform":5853},[549,5878],{"d":5879,"fill":538,"stroke":538,"className":5880,"style":554},"M23.362-28.896Q23.362-29.228 23.585-29.455Q23.809-29.682 24.153-29.810Q24.496-29.939 24.869-29.991Q25.241-30.044 25.546-30.044L25.546-30.297Q25.546-30.502 25.438-30.682Q25.330-30.861 25.149-30.964Q24.968-31.066 24.760-31.066Q24.353-31.066 24.117-30.974Q24.206-30.937 24.252-30.853Q24.298-30.769 24.298-30.667Q24.298-30.571 24.252-30.492Q24.206-30.414 24.125-30.369Q24.045-30.325 23.956-30.325Q23.806-30.325 23.705-30.422Q23.604-30.520 23.604-30.667Q23.604-31.289 24.760-31.289Q24.971-31.289 25.221-31.225Q25.470-31.162 25.672-31.043Q25.874-30.923 26-30.738Q26.127-30.554 26.127-30.311L26.127-28.735Q26.127-28.619 26.188-28.523Q26.250-28.428 26.363-28.428Q26.472-28.428 26.537-28.522Q26.602-28.616 26.602-28.735L26.602-29.183L26.868-29.183L26.868-28.735Q26.868-28.465 26.641-28.300Q26.414-28.134 26.134-28.134Q25.925-28.134 25.788-28.288Q25.652-28.441 25.628-28.657Q25.481-28.390 25.199-28.245Q24.917-28.100 24.592-28.100Q24.315-28.100 24.031-28.175Q23.748-28.250 23.555-28.429Q23.362-28.609 23.362-28.896M23.977-28.896Q23.977-28.722 24.078-28.592Q24.178-28.462 24.334-28.392Q24.489-28.322 24.654-28.322Q24.872-28.322 25.081-28.419Q25.289-28.517 25.417-28.698Q25.546-28.879 25.546-29.105L25.546-29.833Q25.221-29.833 24.855-29.742Q24.489-29.651 24.233-29.439Q23.977-29.228 23.977-28.896M27.812-29.009L27.812-30.906L27.173-30.906L27.173-31.128Q27.490-31.128 27.708-31.338Q27.925-31.548 28.025-31.858Q28.126-32.167 28.126-32.475L28.393-32.475L28.393-31.186L29.469-31.186L29.469-30.906L28.393-30.906L28.393-29.022Q28.393-28.746 28.497-28.547Q28.601-28.349 28.861-28.349Q29.018-28.349 29.124-28.453Q29.230-28.558 29.280-28.711Q29.329-28.865 29.329-29.022L29.329-29.436L29.596-29.436L29.596-29.009Q29.596-28.783 29.497-28.573Q29.398-28.363 29.213-28.231Q29.029-28.100 28.800-28.100Q28.362-28.100 28.087-28.337Q27.812-28.575 27.812-29.009",[553],[536,5882,5883],{"transform":5853},[549,5884],{"d":5885,"fill":538,"stroke":538,"className":5886,"style":554},"M34.791-28.168L33.157-28.168L33.157-28.448Q33.386-28.448 33.535-28.482Q33.684-28.517 33.684-28.657L33.684-30.506Q33.684-30.776 33.576-30.837Q33.468-30.899 33.157-30.899L33.157-31.179L34.217-31.254L34.217-30.605Q34.388-30.913 34.692-31.084Q34.996-31.254 35.341-31.254Q35.741-31.254 36.018-31.114Q36.295-30.974 36.380-30.626Q36.548-30.919 36.847-31.087Q37.146-31.254 37.491-31.254Q37.997-31.254 38.281-31.031Q38.565-30.807 38.565-30.311L38.565-28.657Q38.565-28.520 38.713-28.484Q38.862-28.448 39.087-28.448L39.087-28.168L37.457-28.168L37.457-28.448Q37.683-28.448 37.833-28.484Q37.983-28.520 37.983-28.657L37.983-30.297Q37.983-30.632 37.864-30.832Q37.744-31.032 37.430-31.032Q37.160-31.032 36.926-30.896Q36.691-30.759 36.553-30.525Q36.415-30.291 36.415-30.017L36.415-28.657Q36.415-28.520 36.563-28.484Q36.712-28.448 36.938-28.448L36.938-28.168L35.307-28.168L35.307-28.448Q35.536-28.448 35.685-28.482Q35.834-28.517 35.834-28.657L35.834-30.297Q35.834-30.632 35.714-30.832Q35.594-31.032 35.280-31.032Q35.010-31.032 34.776-30.896Q34.542-30.759 34.403-30.525Q34.265-30.291 34.265-30.017L34.265-28.657Q34.265-28.520 34.415-28.484Q34.566-28.448 34.791-28.448L34.791-28.168M39.634-29.651Q39.634-29.993 39.769-30.292Q39.904-30.591 40.144-30.815Q40.383-31.039 40.701-31.164Q41.019-31.289 41.350-31.289Q41.795-31.289 42.194-31.073Q42.594-30.858 42.828-30.480Q43.063-30.103 43.063-29.651Q43.063-29.310 42.921-29.026Q42.779-28.742 42.535-28.535Q42.290-28.329 41.981-28.214Q41.671-28.100 41.350-28.100Q40.920-28.100 40.518-28.301Q40.116-28.503 39.875-28.855Q39.634-29.207 39.634-29.651M41.350-28.349Q41.952-28.349 42.176-28.727Q42.399-29.105 42.399-29.737Q42.399-30.349 42.165-30.708Q41.931-31.066 41.350-31.066Q40.297-31.066 40.297-29.737Q40.297-29.105 40.523-28.727Q40.749-28.349 41.350-28.349M43.657-28.175L43.657-29.238Q43.657-29.262 43.685-29.289Q43.712-29.316 43.736-29.316L43.845-29.316Q43.910-29.316 43.924-29.258Q44.020-28.824 44.266-28.573Q44.512-28.322 44.925-28.322Q45.267-28.322 45.520-28.455Q45.773-28.588 45.773-28.896Q45.773-29.053 45.679-29.168Q45.585-29.282 45.447-29.351Q45.308-29.419 45.141-29.457L44.560-29.556Q44.204-29.624 43.931-29.845Q43.657-30.065 43.657-30.407Q43.657-30.656 43.768-30.831Q43.879-31.005 44.066-31.104Q44.252-31.203 44.467-31.246Q44.683-31.289 44.925-31.289Q45.339-31.289 45.619-31.107L45.835-31.282Q45.845-31.285 45.852-31.287Q45.858-31.289 45.869-31.289L45.920-31.289Q45.947-31.289 45.971-31.265Q45.995-31.241 45.995-31.213L45.995-30.366Q45.995-30.345 45.971-30.318Q45.947-30.291 45.920-30.291L45.807-30.291Q45.780-30.291 45.754-30.316Q45.729-30.342 45.729-30.366Q45.729-30.602 45.623-30.766Q45.517-30.930 45.334-31.012Q45.151-31.094 44.919-31.094Q44.590-31.094 44.334-30.991Q44.078-30.889 44.078-30.612Q44.078-30.417 44.261-30.308Q44.443-30.198 44.672-30.157L45.247-30.051Q45.493-30.003 45.706-29.875Q45.920-29.747 46.057-29.544Q46.193-29.340 46.193-29.091Q46.193-28.578 45.828-28.339Q45.462-28.100 44.925-28.100Q44.430-28.100 44.098-28.394L43.832-28.120Q43.811-28.100 43.784-28.100L43.736-28.100Q43.712-28.100 43.685-28.127Q43.657-28.154 43.657-28.175M47.349-29.009L47.349-30.906L46.710-30.906L46.710-31.128Q47.027-31.128 47.244-31.338Q47.462-31.548 47.562-31.858Q47.663-32.167 47.663-32.475L47.930-32.475L47.930-31.186L49.006-31.186L49.006-30.906L47.930-30.906L47.930-29.022Q47.930-28.746 48.034-28.547Q48.138-28.349 48.398-28.349Q48.555-28.349 48.661-28.453Q48.767-28.558 48.817-28.711Q48.866-28.865 48.866-29.022L48.866-29.436L49.133-29.436L49.133-29.009Q49.133-28.783 49.034-28.573Q48.935-28.363 48.750-28.231Q48.566-28.100 48.337-28.100Q47.899-28.100 47.624-28.337Q47.349-28.575 47.349-29.009",[553],[536,5888,5889],{"transform":5853},[549,5890],{"d":5891,"fill":538,"stroke":538,"className":5892,"style":554},"M52.611-29.651Q52.611-29.993 52.746-30.292Q52.881-30.591 53.121-30.815Q53.360-31.039 53.678-31.164Q53.996-31.289 54.327-31.289Q54.772-31.289 55.171-31.073Q55.571-30.858 55.806-30.480Q56.040-30.103 56.040-29.651Q56.040-29.310 55.898-29.026Q55.756-28.742 55.512-28.535Q55.267-28.329 54.958-28.214Q54.649-28.100 54.327-28.100Q53.897-28.100 53.495-28.301Q53.093-28.503 52.852-28.855Q52.611-29.207 52.611-29.651M54.327-28.349Q54.929-28.349 55.153-28.727Q55.377-29.105 55.377-29.737Q55.377-30.349 55.142-30.708Q54.908-31.066 54.327-31.066Q53.275-31.066 53.275-29.737Q53.275-29.105 53.500-28.727Q53.726-28.349 54.327-28.349M58.316-28.168L56.682-28.168L56.682-28.448Q56.911-28.448 57.060-28.482Q57.209-28.517 57.209-28.657L57.209-30.506Q57.209-30.776 57.101-30.837Q56.993-30.899 56.682-30.899L56.682-31.179L57.742-31.254L57.742-30.605Q57.913-30.913 58.217-31.084Q58.521-31.254 58.866-31.254Q59.372-31.254 59.656-31.031Q59.940-30.807 59.940-30.311L59.940-28.657Q59.940-28.520 60.088-28.484Q60.237-28.448 60.463-28.448L60.463-28.168L58.832-28.168L58.832-28.448Q59.061-28.448 59.210-28.482Q59.359-28.517 59.359-28.657L59.359-30.297Q59.359-30.632 59.239-30.832Q59.119-31.032 58.805-31.032Q58.535-31.032 58.301-30.896Q58.067-30.759 57.928-30.525Q57.790-30.291 57.790-30.017L57.790-28.657Q57.790-28.520 57.940-28.484Q58.090-28.448 58.316-28.448L58.316-28.168M61.050-29.679Q61.050-30.007 61.185-30.308Q61.320-30.608 61.556-30.829Q61.792-31.049 62.096-31.169Q62.401-31.289 62.725-31.289Q63.231-31.289 63.580-31.186Q63.928-31.084 63.928-30.708Q63.928-30.561 63.831-30.460Q63.734-30.359 63.587-30.359Q63.433-30.359 63.334-30.458Q63.234-30.557 63.234-30.708Q63.234-30.896 63.375-30.988Q63.173-31.039 62.732-31.039Q62.377-31.039 62.148-30.843Q61.919-30.646 61.818-30.337Q61.717-30.027 61.717-29.679Q61.717-29.330 61.843-29.024Q61.970-28.718 62.224-28.534Q62.479-28.349 62.835-28.349Q63.057-28.349 63.241-28.433Q63.426-28.517 63.561-28.672Q63.696-28.828 63.754-29.036Q63.768-29.091 63.822-29.091L63.935-29.091Q63.966-29.091 63.988-29.067Q64.010-29.043 64.010-29.009L64.010-28.988Q63.925-28.701 63.737-28.503Q63.549-28.305 63.284-28.202Q63.019-28.100 62.725-28.100Q62.295-28.100 61.907-28.306Q61.519-28.513 61.285-28.876Q61.050-29.238 61.050-29.679M64.557-29.703Q64.557-30.024 64.682-30.313Q64.807-30.602 65.032-30.825Q65.258-31.049 65.554-31.169Q65.849-31.289 66.167-31.289Q66.495-31.289 66.757-31.189Q67.018-31.090 67.194-30.908Q67.370-30.725 67.464-30.467Q67.558-30.209 67.558-29.877Q67.558-29.785 67.476-29.764L65.220-29.764L65.220-29.703Q65.220-29.115 65.504-28.732Q65.788-28.349 66.355-28.349Q66.676-28.349 66.945-28.542Q67.213-28.735 67.302-29.050Q67.309-29.091 67.384-29.105L67.476-29.105Q67.558-29.081 67.558-29.009Q67.558-29.002 67.551-28.975Q67.439-28.578 67.068-28.339Q66.697-28.100 66.273-28.100Q65.836-28.100 65.436-28.308Q65.036-28.517 64.796-28.884Q64.557-29.251 64.557-29.703M65.227-29.973L67.042-29.973Q67.042-30.250 66.945-30.502Q66.847-30.755 66.649-30.911Q66.451-31.066 66.167-31.066Q65.890-31.066 65.677-30.908Q65.463-30.749 65.345-30.494Q65.227-30.239 65.227-29.973",[553],[830,5894,5896,5897,5933,5934,5979],{"className":5895},[833],"The one-line difference: reuse-allowed recurses with ",[836,5898,5900],{"className":5899},[839],[836,5901,5903],{"className":5902,"ariaHidden":844},[843],[836,5904,5906,5909,5912,5915,5918,5921,5924,5930],{"className":5905},[848],[836,5907],{"className":5908,"style":4122},[852],[836,5910,3921],{"className":5911},[857,858],[836,5913,3925],{"className":5914},[857,858],[836,5916,384],{"className":5917},[857,858],[836,5919,3932],{"className":5920,"style":2169},[857,858],[836,5922,3925],{"className":5923},[857,858],[836,5925,5927],{"className":5926},[857],[836,5928,2529],{"className":5929},[2528],[836,5931,1899],{"className":5932},[857,858]," (stay), use-once recurses with ",[836,5935,5937],{"className":5936},[839],[836,5938,5940],{"className":5939,"ariaHidden":844},[843],[836,5941,5943,5946,5949,5952,5955,5958,5961,5967,5970,5976],{"className":5942},[848],[836,5944],{"className":5945,"style":2031},[852],[836,5947,3921],{"className":5948},[857,858],[836,5950,3925],{"className":5951},[857,858],[836,5953,384],{"className":5954},[857,858],[836,5956,3932],{"className":5957,"style":2169},[857,858],[836,5959,3925],{"className":5960},[857,858],[836,5962,5964],{"className":5963},[857],[836,5965,2529],{"className":5966},[2528],[836,5968,1899],{"className":5969},[857,858],[836,5971,5973],{"className":5972},[857],[836,5974,1952],{"className":5975},[857],[836,5977,414],{"className":5978},[857]," (advance)",[432,5981,5983],{"id":5982},"pruning-kill-infeasible-subtrees-early","Pruning: kill infeasible subtrees early",[381,5985,5986,5987,5990,5991,5994,5995,5998],{},"Everything so far enumerates ",[389,5988,5989],{},"all"," of a space. Backtracking earns its keep when\nthe problem constrains the answer, because then we can ",[394,5992,5993],{},"prune",": refuse to\ndescend into a subtree the moment we can prove it contains no solution. Pruning\nprunes ",[389,5996,5997],{},"whole subtrees",", so a single early cut can save exponentially many leaves.",[381,6000,6001,6002,6004,6005,6022,6023,6025,6026,6041,6042,6094],{},"Take ",[394,6003,5412],{}," with a target ",[836,6006,6008],{"className":6007},[839],[836,6009,6011],{"className":6010,"ariaHidden":844},[843],[836,6012,6014,6017],{"className":6013},[848],[836,6015],{"className":6016,"style":985},[852],[836,6018,6021],{"className":6019,"style":6020},[857,858],"margin-right:0.1389em;","T"," over sorted positive numbers. Two\nprunes apply at the point we consider extending ",[483,6024,485],{}," (current sum ",[836,6027,6029],{"className":6028},[839],[836,6030,6032],{"className":6031,"ariaHidden":844},[843],[836,6033,6035,6038],{"className":6034},[848],[836,6036],{"className":6037,"style":853},[852],[836,6039,3921],{"className":6040},[857,858],") by\n",[836,6043,6045],{"className":6044},[839],[836,6046,6048],{"className":6047,"ariaHidden":844},[843],[836,6049,6051,6054],{"className":6050},[848],[836,6052],{"className":6053,"style":4251},[852],[836,6055,6057,6060],{"className":6056},[857],[836,6058,384],{"className":6059},[857,858],[836,6061,6063],{"className":6062},[1023],[836,6064,6066,6086],{"className":6065},[1027,1092],[836,6067,6069,6083],{"className":6068},[1031],[836,6070,6072],{"className":6071,"style":1887},[1035],[836,6073,6074,6077],{"style":1102},[836,6075],{"className":6076,"style":1043},[1042],[836,6078,6080],{"className":6079},[1047,1048,1049,1050],[836,6081,1899],{"className":6082},[857,858,1050],[836,6084,1117],{"className":6085},[1116],[836,6087,6089],{"className":6088},[1031],[836,6090,6092],{"className":6091,"style":1124},[1035],[836,6093],{},":",[6096,6097,6098,6318],"ul",{},[6099,6100,6101,6104,6105,6194,6195,3518,6198,6310,6311,6314,6315,2791],"li",{},[394,6102,6103],{},"Over-target cut."," If ",[836,6106,6108],{"className":6107},[839],[836,6109,6111,6129,6185],{"className":6110,"ariaHidden":844},[843],[836,6112,6114,6117,6120,6123,6126],{"className":6113},[848],[836,6115],{"className":6116,"style":2393},[852],[836,6118,3921],{"className":6119},[857,858],[836,6121],{"className":6122,"style":2038},[1135],[836,6124,1952],{"className":6125},[1186],[836,6127],{"className":6128,"style":2038},[1135],[836,6130,6132,6136,6176,6179,6182],{"className":6131},[848],[836,6133],{"className":6134,"style":6135},[852],"height:0.6891em;vertical-align:-0.15em;",[836,6137,6139,6142],{"className":6138},[857],[836,6140,384],{"className":6141},[857,858],[836,6143,6145],{"className":6144},[1023],[836,6146,6148,6168],{"className":6147},[1027,1092],[836,6149,6151,6165],{"className":6150},[1031],[836,6152,6154],{"className":6153,"style":1887},[1035],[836,6155,6156,6159],{"style":1102},[836,6157],{"className":6158,"style":1043},[1042],[836,6160,6162],{"className":6161},[1047,1048,1049,1050],[836,6163,1899],{"className":6164},[857,858,1050],[836,6166,1117],{"className":6167},[1116],[836,6169,6171],{"className":6170},[1031],[836,6172,6174],{"className":6173,"style":1124},[1035],[836,6175],{},[836,6177],{"className":6178,"style":2524},[1135],[836,6180,3907],{"className":6181},[2528],[836,6183],{"className":6184,"style":2524},[1135],[836,6186,6188,6191],{"className":6187},[848],[836,6189],{"className":6190,"style":985},[852],[836,6192,6021],{"className":6193,"style":6020},[857,858],", this choice overshoots; and since the\narray is sorted ascending, ",[389,6196,6197],{},"every later",[836,6199,6201],{"className":6200},[839],[836,6202,6204,6264],{"className":6203,"ariaHidden":844},[843],[836,6205,6207,6211,6254,6257,6261],{"className":6206},[848],[836,6208],{"className":6209,"style":6210},[852],"height:0.9221em;vertical-align:-0.2861em;",[836,6212,6214,6217],{"className":6213},[857],[836,6215,384],{"className":6216},[857,858],[836,6218,6220],{"className":6219},[1023],[836,6221,6223,6245],{"className":6222},[1027,1092],[836,6224,6226,6242],{"className":6225},[1031],[836,6227,6229],{"className":6228,"style":1887},[1035],[836,6230,6231,6234],{"style":1102},[836,6232],{"className":6233,"style":1043},[1042],[836,6235,6237],{"className":6236},[1047,1048,1049,1050],[836,6238,6241],{"className":6239,"style":6240},[857,858,1050],"margin-right:0.0572em;","j",[836,6243,1117],{"className":6244},[1116],[836,6246,6248],{"className":6247},[1031],[836,6249,6252],{"className":6250,"style":6251},[1035],"height:0.2861em;",[836,6253],{},[836,6255],{"className":6256,"style":2524},[1135],[836,6258,6260],{"className":6259},[2528],"≥",[836,6262],{"className":6263,"style":2524},[1135],[836,6265,6267,6270],{"className":6266},[848],[836,6268],{"className":6269,"style":4251},[852],[836,6271,6273,6276],{"className":6272},[857],[836,6274,384],{"className":6275},[857,858],[836,6277,6279],{"className":6278},[1023],[836,6280,6282,6302],{"className":6281},[1027,1092],[836,6283,6285,6299],{"className":6284},[1031],[836,6286,6288],{"className":6287,"style":1887},[1035],[836,6289,6290,6293],{"style":1102},[836,6291],{"className":6292,"style":1043},[1042],[836,6294,6296],{"className":6295},[1047,1048,1049,1050],[836,6297,1899],{"className":6298},[857,858,1050],[836,6300,1117],{"className":6301},[1116],[836,6303,6305],{"className":6304},[1031],[836,6306,6308],{"className":6307,"style":1124},[1035],[836,6309],{}," overshoots too, so we\n",[483,6312,6313],{},"break"," out of the entire loop, not merely ",[483,6316,6317],{},"continue",[6099,6319,6320,6323,6324,6339],{},[394,6321,6322],{},"Reachability cut"," (a general lower-bound prune). If even the smallest\nremaining additions cannot reach ",[836,6325,6327],{"className":6326},[839],[836,6328,6330],{"className":6329,"ariaHidden":844},[843],[836,6331,6333,6336],{"className":6332},[848],[836,6334],{"className":6335,"style":985},[852],[836,6337,6021],{"className":6338,"style":6020},[857,858],", abandon the branch.",[523,6341,6343,6656],{"className":6342},[526,527],[529,6344,6348],{"xmlns":531,"width":6345,"height":6346,"viewBox":6347},"323.211","141.313","-75 -75 242.408 105.985",[536,6349,6350,6376,6400,6502,6505,6524,6527,6530,6559,6573,6579,6582,6601,6604,6607,6636,6650],{"stroke":538,"style":539},[536,6351,6352,6355],{"stroke":611},[549,6353],{"fill":542,"d":6354},"M68.297-72.07H49.03a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4h19.267a4 4 0 0 0 4-4V-68.07a4 4 0 0 0-4-4ZM45.03-52.153",[536,6356,6357,6364,6370],{"fill":611,"stroke":542,"fontSize":1459},[536,6358,6360],{"transform":6359},"translate(-10.634 2.9)",[549,6361],{"d":6362,"fill":611,"stroke":611,"className":6363,"style":571},"M59.498-62.661Q59.718-62.275 60.474-62.275Q60.772-62.275 61.067-62.376Q61.361-62.477 61.555-62.690Q61.748-62.903 61.748-63.211Q61.748-63.439 61.570-63.586Q61.392-63.734 61.146-63.786L60.636-63.883Q60.421-63.923 60.245-64.046Q60.069-64.169 59.964-64.355Q59.858-64.542 59.858-64.758Q59.858-65.157 60.082-65.463Q60.307-65.768 60.665-65.929Q61.023-66.089 61.427-66.089Q61.691-66.089 61.939-66.010Q62.187-65.931 62.357-65.751Q62.526-65.570 62.526-65.307Q62.526-65.100 62.405-64.942Q62.284-64.784 62.073-64.784Q61.950-64.784 61.864-64.865Q61.779-64.946 61.779-65.065Q61.779-65.228 61.902-65.362Q62.025-65.496 62.183-65.496Q62.095-65.676 61.878-65.753Q61.660-65.830 61.410-65.830Q61.168-65.830 60.942-65.742Q60.715-65.654 60.570-65.485Q60.425-65.316 60.425-65.065Q60.425-64.889 60.557-64.771Q60.689-64.652 60.887-64.604L61.392-64.507Q61.779-64.428 62.047-64.158Q62.315-63.887 62.315-63.505Q62.315-63.175 62.126-62.855Q61.937-62.534 61.660-62.336Q61.159-62.011 60.465-62.011Q60.153-62.011 59.852-62.097Q59.551-62.182 59.346-62.380Q59.142-62.578 59.142-62.885Q59.142-63.136 59.285-63.320Q59.428-63.505 59.669-63.505Q59.823-63.505 59.922-63.413Q60.021-63.320 60.021-63.175Q60.021-62.965 59.869-62.813Q59.718-62.661 59.498-62.661",[553],[536,6365,6366],{"transform":6359},[549,6367],{"d":6368,"fill":611,"stroke":611,"className":6369,"style":571},"M72.042-63.255L66.236-63.255Q66.157-63.268 66.107-63.318Q66.056-63.369 66.056-63.444Q66.056-63.593 66.236-63.641L72.042-63.641Q72.213-63.589 72.213-63.444Q72.213-63.290 72.042-63.255M72.042-65.083L66.236-65.083Q66.056-65.113 66.056-65.272Q66.056-65.421 66.236-65.469L72.042-65.469Q72.213-65.417 72.213-65.272Q72.213-65.118 72.042-65.083",[553],[536,6371,6372],{"transform":6359},[549,6373],{"d":6374,"fill":611,"stroke":611,"className":6375,"style":571},"M77.617-61.914Q76.492-61.914 76.078-62.811Q75.665-63.707 75.665-64.982Q75.665-65.755 75.815-66.454Q75.964-67.153 76.399-67.629Q76.834-68.106 77.617-68.106Q78.394-68.106 78.829-67.627Q79.264-67.148 79.414-66.452Q79.563-65.755 79.563-64.982Q79.563-63.703 79.150-62.809Q78.737-61.914 77.617-61.914M77.617-62.174Q78.135-62.174 78.386-62.685Q78.636-63.197 78.693-63.808Q78.750-64.419 78.750-65.127Q78.750-65.812 78.693-66.372Q78.636-66.933 78.383-67.390Q78.131-67.847 77.617-67.847Q77.212-67.847 76.975-67.570Q76.738-67.293 76.630-66.852Q76.522-66.410 76.498-66.017Q76.474-65.623 76.474-65.127Q76.474-64.621 76.498-64.193Q76.522-63.764 76.630-63.281Q76.738-62.798 76.977-62.486Q77.217-62.174 77.617-62.174",[553],[536,6377,6378,6381],{"stroke":611},[549,6379],{"fill":542,"d":6380},"M-17.061-32.236H-36.33a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4h19.268a4 4 0 0 0 4-4v-11.917a4 4 0 0 0-4-4ZM-40.33-12.32",[536,6382,6383,6389,6394],{"fill":611,"stroke":542,"fontSize":1459},[536,6384,6386],{"transform":6385},"translate(-95.992 42.734)",[549,6387],{"d":6362,"fill":611,"stroke":611,"className":6388,"style":571},[553],[536,6390,6391],{"transform":6385},[549,6392],{"d":6368,"fill":611,"stroke":611,"className":6393,"style":571},[553],[536,6395,6396],{"transform":6385},[549,6397],{"d":6398,"fill":611,"stroke":611,"className":6399,"style":571},"M79.212-62.112L75.762-62.112L75.762-62.345Q75.762-62.358 75.793-62.389L77.247-63.966Q77.713-64.463 77.966-64.768Q78.219-65.074 78.410-65.485Q78.601-65.896 78.601-66.335Q78.601-66.924 78.278-67.357Q77.955-67.790 77.375-67.790Q77.111-67.790 76.865-67.680Q76.619-67.570 76.443-67.383Q76.267-67.196 76.171-66.946L76.250-66.946Q76.452-66.946 76.595-66.810Q76.738-66.674 76.738-66.458Q76.738-66.252 76.595-66.113Q76.452-65.975 76.250-65.975Q76.048-65.975 75.905-66.118Q75.762-66.260 75.762-66.458Q75.762-66.920 75.999-67.293Q76.237-67.667 76.637-67.886Q77.036-68.106 77.485-68.106Q78.008-68.106 78.462-67.891Q78.917-67.675 79.190-67.276Q79.462-66.876 79.462-66.335Q79.462-65.940 79.291-65.586Q79.119-65.232 78.854-64.953Q78.588-64.674 78.137-64.289Q77.687-63.905 77.608-63.830L76.584-62.868L77.401-62.868Q78.052-62.868 78.489-62.879Q78.926-62.890 78.957-62.912Q79.027-62.995 79.082-63.235Q79.137-63.474 79.177-63.742L79.462-63.742",[553],[536,6401,6402,6405,6408,6439,6454,6457,6482,6485,6488,6495],{"stroke":611},[549,6403],{"fill":542,"d":6404},"m44.83-55.657-55.88 26.084",[549,6406],{"stroke":542,"d":6407},"m-12.861-28.727 3.576.097-1.764-.943.41-1.957",[536,6409,6410,6413],{"stroke":712,"style":767},[549,6411],{"fill":542,"d":6412},"M-37.511 7.598h-23.892a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4h23.892a4 4 0 0 0 4-4V11.598a4 4 0 0 0-4-4Zm-27.892 19.917",[536,6414,6415,6421,6427,6433],{"fill":712,"stroke":542,"fontSize":1459},[536,6416,6418],{"transform":6417},"translate(-121.067 82.151)",[549,6419],{"d":6362,"fill":712,"stroke":712,"className":6420,"style":571},[553],[536,6422,6423],{"transform":6417},[549,6424],{"d":6425,"fill":712,"stroke":712,"className":6426,"style":571},"M69.472-63.255L63.666-63.255Q63.587-63.268 63.537-63.318Q63.486-63.369 63.486-63.444Q63.486-63.593 63.666-63.641L69.472-63.641Q69.643-63.589 69.643-63.444Q69.643-63.290 69.472-63.255M69.472-65.083L63.666-65.083Q63.486-65.113 63.486-65.272Q63.486-65.421 63.666-65.469L69.472-65.469Q69.643-65.417 69.643-65.272Q69.643-65.118 69.472-65.083",[553],[536,6428,6429],{"transform":6417},[549,6430],{"d":6431,"fill":712,"stroke":712,"className":6432,"style":571},"M72.479-61.914Q71.745-61.914 71.314-62.395Q70.883-62.877 70.719-63.569Q70.554-64.261 70.554-65.008Q70.554-65.737 70.846-66.460Q71.138-67.183 71.692-67.645Q72.246-68.106 72.993-68.106Q73.489-68.106 73.825-67.840Q74.162-67.574 74.162-67.091Q74.162-66.911 74.034-66.783Q73.907-66.656 73.731-66.656Q73.551-66.656 73.421-66.781Q73.292-66.906 73.292-67.091Q73.292-67.205 73.349-67.309Q73.406-67.412 73.507-67.471Q73.608-67.530 73.731-67.530Q73.735-67.530 73.740-67.528Q73.744-67.526 73.749-67.522Q73.634-67.689 73.426-67.768Q73.217-67.847 72.993-67.847Q72.549-67.847 72.191-67.546Q71.833-67.245 71.644-66.792Q71.411-66.186 71.411-65.153Q71.582-65.518 71.883-65.746Q72.184-65.975 72.571-65.975Q72.975-65.975 73.320-65.808Q73.665-65.641 73.902-65.360Q74.140-65.078 74.269-64.716Q74.399-64.353 74.399-63.949Q74.399-63.404 74.155-62.938Q73.911-62.472 73.472-62.193Q73.032-61.914 72.479-61.914M72.479-62.200Q72.940-62.200 73.175-62.457Q73.410-62.714 73.476-63.088Q73.542-63.461 73.542-63.931L73.542-63.966Q73.542-64.454 73.485-64.819Q73.428-65.184 73.199-65.447Q72.971-65.711 72.527-65.711Q72.158-65.711 71.907-65.467Q71.657-65.223 71.542-64.859Q71.428-64.494 71.428-64.147Q71.428-64.028 71.437-63.966Q71.437-63.949 71.435-63.938Q71.433-63.927 71.428-63.914Q71.428-63.263 71.666-62.732Q71.903-62.200 72.479-62.200",[553],[536,6434,6435],{"transform":6417},[549,6436],{"d":6437,"fill":712,"stroke":712,"className":6438,"style":571},"M78.719-62.310Q78.719-62.393 78.776-62.446L80.683-64.362L78.776-66.278Q78.719-66.318 78.719-66.414Q78.719-66.489 78.780-66.546Q78.842-66.603 78.917-66.603Q79-66.603 79.053-66.550L80.951-64.630L82.850-66.550Q82.903-66.603 82.995-66.603Q83.069-66.603 83.127-66.546Q83.184-66.489 83.184-66.414Q83.184-66.318 83.131-66.278L81.224-64.362L83.131-62.446Q83.184-62.393 83.184-62.310Q83.184-62.226 83.127-62.169Q83.069-62.112 82.995-62.112Q82.898-62.112 82.859-62.165L80.951-64.085L79.053-62.174Q79.005-62.112 78.917-62.112Q78.842-62.112 78.780-62.169Q78.719-62.226 78.719-62.310",[553],[536,6440,6441,6444,6447],{"stroke":712,"style":767},[549,6442],{"fill":542,"d":6443},"M-32.499-12.12-42.661 5.662",[549,6445],{"stroke":542,"d":6446},"m-43.653 7.398 2.976-1.984-1.984.247-.794-1.835",[536,6448,6450],{"transform":6449},"translate(-111.96 61.59)",[549,6451],{"d":6452,"fill":538,"stroke":538,"className":6453,"style":554},"M61.561-61.432L61.561-63.688L59.312-63.688Q59.244-63.698 59.198-63.744Q59.152-63.790 59.152-63.862Q59.152-64.006 59.312-64.029L61.561-64.029L61.561-66.285Q61.572-66.354 61.618-66.400Q61.664-66.446 61.736-66.446Q61.879-66.446 61.903-66.285L61.903-64.029L64.145-64.029Q64.306-64.006 64.306-63.862Q64.306-63.790 64.260-63.744Q64.214-63.698 64.145-63.688L61.903-63.688L61.903-61.432Q61.879-61.271 61.736-61.271Q61.664-61.271 61.618-61.317Q61.572-61.363 61.561-61.432M67.119-63.260L65.075-63.260L65.075-63.541L67.406-66.713Q67.440-66.760 67.505-66.760L67.642-66.760Q67.686-66.760 67.714-66.733Q67.741-66.706 67.741-66.661L67.741-63.541L68.503-63.541L68.503-63.260L67.741-63.260L67.741-62.601Q67.741-62.392 68.496-62.392L68.496-62.112L66.364-62.112L66.364-62.392Q67.119-62.392 67.119-62.601L67.119-63.260M67.167-65.985L65.376-63.541L67.167-63.541",[553],[549,6455],{"fill":542,"d":6456},"M10.84 7.598h-29.545a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4H10.84a4 4 0 0 0 4-4V11.598a4 4 0 0 0-4-4Zm-33.545 19.917",[536,6458,6459,6465,6470,6476],{"fill":611,"stroke":542,"fontSize":1459},[536,6460,6462],{"transform":6461},"translate(-78.368 81.918)",[549,6463],{"d":6362,"fill":611,"stroke":611,"className":6464,"style":571},[553],[536,6466,6467],{"transform":6461},[549,6468],{"d":6368,"fill":611,"stroke":611,"className":6469,"style":571},[553],[536,6471,6472],{"transform":6461},[549,6473],{"d":6474,"fill":611,"stroke":611,"className":6475,"style":571},"M76.131-63.118Q76.272-62.705 76.632-62.453Q76.993-62.200 77.428-62.200Q77.880-62.200 78.146-62.453Q78.412-62.705 78.515-63.090Q78.618-63.474 78.618-63.931Q78.618-65.632 77.709-65.632Q77.388-65.632 77.159-65.538Q76.931-65.443 76.801-65.324Q76.672-65.206 76.560-65.067Q76.448-64.929 76.412-64.920L76.329-64.920Q76.285-64.920 76.254-64.951Q76.223-64.982 76.223-65.030L76.223-68.027Q76.223-68.058 76.259-68.082Q76.294-68.106 76.320-68.106L76.360-68.106Q76.993-67.816 77.665-67.816Q78.337-67.816 78.979-68.106L79.005-68.106Q79.036-68.106 79.069-68.084Q79.102-68.062 79.102-68.027L79.102-67.926Q79.102-67.922 79.093-67.904Q79.084-67.886 79.084-67.882Q78.768-67.487 78.298-67.265Q77.827-67.043 77.331-67.043Q76.922-67.043 76.540-67.153L76.540-65.434Q76.997-65.891 77.709-65.891Q78.219-65.891 78.618-65.610Q79.018-65.329 79.240-64.874Q79.462-64.419 79.462-63.914Q79.462-63.364 79.183-62.905Q78.904-62.446 78.438-62.180Q77.972-61.914 77.428-61.914Q76.988-61.914 76.604-62.141Q76.219-62.367 75.991-62.747Q75.762-63.127 75.762-63.571Q75.762-63.764 75.894-63.896Q76.026-64.028 76.223-64.028Q76.355-64.028 76.459-63.969Q76.562-63.909 76.621-63.806Q76.680-63.703 76.680-63.571Q76.680-63.373 76.553-63.241Q76.426-63.110 76.223-63.110Q76.162-63.110 76.131-63.118",[553],[536,6477,6478],{"transform":6461},[549,6479],{"d":6480,"fill":611,"stroke":611,"className":6481,"style":571},"M85.739-59.921L83.902-63.855L83.348-63.450Q83.322-63.433 83.291-63.433Q83.247-63.433 83.203-63.477Q83.159-63.521 83.159-63.569Q83.159-63.626 83.203-63.657L84.293-64.461Q84.311-64.479 84.346-64.479Q84.407-64.479 84.451-64.404L86.108-60.857L90.032-68.781Q90.076-68.869 90.204-68.869Q90.278-68.869 90.335-68.812Q90.393-68.754 90.393-68.680Q90.393-68.627 90.384-68.609L86.090-59.948Q86.038-59.860 85.945-59.860L85.840-59.860Q85.778-59.860 85.739-59.921",[553],[549,6483],{"fill":542,"d":6484},"M-20.891-12.12-10.73 5.662",[549,6486],{"stroke":542,"d":6487},"m-9.737 7.398-.198-3.572-.794 1.835-1.984-.248",[536,6489,6491],{"transform":6490},"translate(-68.881 61.59)",[549,6492],{"d":6493,"fill":538,"stroke":538,"className":6494,"style":554},"M61.561-61.432L61.561-63.688L59.312-63.688Q59.244-63.698 59.198-63.744Q59.152-63.790 59.152-63.862Q59.152-64.006 59.312-64.029L61.561-64.029L61.561-66.285Q61.572-66.354 61.618-66.400Q61.664-66.446 61.736-66.446Q61.879-66.446 61.903-66.285L61.903-64.029L64.145-64.029Q64.306-64.006 64.306-63.862Q64.306-63.790 64.260-63.744Q64.214-63.698 64.145-63.688L61.903-63.688L61.903-61.432Q61.879-61.271 61.736-61.271Q61.664-61.271 61.618-61.317Q61.572-61.363 61.561-61.432M65.598-62.659Q65.718-62.502 65.909-62.403Q66.100-62.303 66.316-62.264Q66.531-62.225 66.753-62.225Q67.051-62.225 67.246-62.380Q67.440-62.536 67.531-62.790Q67.621-63.045 67.621-63.329Q67.621-63.623 67.529-63.874Q67.437-64.125 67.239-64.281Q67.040-64.436 66.746-64.436L66.230-64.436Q66.203-64.436 66.177-64.462Q66.152-64.487 66.152-64.511L66.152-64.583Q66.152-64.614 66.177-64.636Q66.203-64.658 66.230-64.658L66.671-64.689Q67.034-64.689 67.254-65.046Q67.475-65.404 67.475-65.793Q67.475-66.121 67.280-66.325Q67.085-66.528 66.753-66.528Q66.466-66.528 66.213-66.444Q65.960-66.361 65.796-66.173Q65.943-66.173 66.044-66.058Q66.145-65.944 66.145-65.793Q66.145-65.643 66.039-65.533Q65.933-65.424 65.776-65.424Q65.615-65.424 65.506-65.533Q65.396-65.643 65.396-65.793Q65.396-66.118 65.605-66.337Q65.813-66.555 66.130-66.658Q66.446-66.760 66.753-66.760Q67.071-66.760 67.399-66.656Q67.727-66.552 67.955-66.330Q68.182-66.108 68.182-65.793Q68.182-65.359 67.895-65.034Q67.608-64.710 67.174-64.563Q67.485-64.498 67.765-64.332Q68.045-64.166 68.223-63.908Q68.401-63.650 68.401-63.329Q68.401-62.919 68.156-62.609Q67.912-62.300 67.531-62.136Q67.150-61.972 66.753-61.972Q66.384-61.972 66.027-62.085Q65.670-62.197 65.425-62.447Q65.181-62.696 65.181-63.066Q65.181-63.237 65.297-63.349Q65.413-63.462 65.584-63.462Q65.694-63.462 65.784-63.411Q65.875-63.360 65.930-63.267Q65.984-63.175 65.984-63.066Q65.984-62.898 65.871-62.779Q65.759-62.659 65.598-62.659",[553],[536,6496,6498],{"transform":6497},"translate(-57.9 21.759)",[549,6499],{"d":6500,"fill":538,"stroke":538,"className":6501,"style":554},"M61.561-61.432L61.561-63.688L59.312-63.688Q59.244-63.698 59.198-63.744Q59.152-63.790 59.152-63.862Q59.152-64.006 59.312-64.029L61.561-64.029L61.561-66.285Q61.572-66.354 61.618-66.400Q61.664-66.446 61.736-66.446Q61.879-66.446 61.903-66.285L61.903-64.029L64.145-64.029Q64.306-64.006 64.306-63.862Q64.306-63.790 64.260-63.744Q64.214-63.698 64.145-63.688L61.903-63.688L61.903-61.432Q61.879-61.271 61.736-61.271Q61.664-61.271 61.618-61.317Q61.572-61.363 61.561-61.432M68.127-62.112L65.243-62.112L65.243-62.314Q65.243-62.344 65.270-62.372L66.517-63.589Q66.589-63.664 66.632-63.706Q66.675-63.749 66.753-63.828Q67.167-64.241 67.398-64.599Q67.628-64.956 67.628-65.380Q67.628-65.612 67.550-65.815Q67.471-66.019 67.329-66.169Q67.187-66.320 66.993-66.400Q66.798-66.480 66.565-66.480Q66.254-66.480 65.996-66.321Q65.738-66.162 65.608-65.885L65.629-65.885Q65.796-65.885 65.904-65.774Q66.012-65.663 66.012-65.499Q66.012-65.342 65.902-65.229Q65.793-65.116 65.629-65.116Q65.468-65.116 65.355-65.229Q65.243-65.342 65.243-65.499Q65.243-65.875 65.451-66.162Q65.660-66.449 65.995-66.605Q66.330-66.760 66.685-66.760Q67.109-66.760 67.488-66.602Q67.868-66.443 68.102-66.126Q68.336-65.810 68.336-65.380Q68.336-65.069 68.196-64.800Q68.056-64.532 67.850-64.327Q67.645-64.122 67.283-63.840Q66.921-63.558 66.811-63.462L65.957-62.734L66.600-62.734Q66.863-62.734 67.152-62.736Q67.440-62.737 67.659-62.746Q67.878-62.755 67.895-62.772Q67.956-62.837 67.994-63.004Q68.032-63.172 68.069-63.414L68.336-63.414",[553],[549,6503],{"fill":542,"d":6504},"M68.297-32.236H49.03a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4h19.267a4 4 0 0 0 4-4v-11.917a4 4 0 0 0-4-4ZM45.03-12.32",[536,6506,6507,6513,6518],{"stroke":542,"fontSize":1459},[536,6508,6510],{"transform":6509},"translate(-10.634 42.734)",[549,6511],{"d":6362,"fill":538,"stroke":538,"className":6512,"style":571},[553],[536,6514,6515],{"transform":6509},[549,6516],{"d":6368,"fill":538,"stroke":538,"className":6517,"style":571},[553],[536,6519,6520],{"transform":6509},[549,6521],{"d":6522,"fill":538,"stroke":538,"className":6523,"style":571},"M76.206-62.833L76.162-62.833Q76.364-62.516 76.751-62.358Q77.138-62.200 77.564-62.200Q78.100-62.200 78.339-62.635Q78.579-63.070 78.579-63.650Q78.579-64.230 78.333-64.670Q78.087-65.109 77.555-65.109L76.935-65.109Q76.909-65.109 76.876-65.138Q76.843-65.166 76.843-65.188L76.843-65.289Q76.843-65.320 76.872-65.344Q76.900-65.368 76.935-65.368L77.454-65.408Q77.920-65.408 78.166-65.880Q78.412-66.353 78.412-66.871Q78.412-67.298 78.199-67.572Q77.986-67.847 77.564-67.847Q77.221-67.847 76.896-67.717Q76.571-67.588 76.386-67.333L76.412-67.333Q76.615-67.333 76.751-67.192Q76.887-67.051 76.887-66.854Q76.887-66.656 76.753-66.522Q76.619-66.388 76.421-66.388Q76.219-66.388 76.081-66.522Q75.942-66.656 75.942-66.854Q75.942-67.443 76.445-67.774Q76.949-68.106 77.564-68.106Q77.942-68.106 78.344-67.966Q78.746-67.825 79.014-67.546Q79.282-67.267 79.282-66.871Q79.282-66.322 78.928-65.885Q78.575-65.447 78.034-65.263Q78.425-65.184 78.770-64.960Q79.115-64.736 79.326-64.395Q79.537-64.054 79.537-63.659Q79.537-63.277 79.374-62.954Q79.212-62.631 78.920-62.395Q78.627-62.160 78.280-62.037Q77.933-61.914 77.564-61.914Q77.116-61.914 76.685-62.075Q76.254-62.235 75.973-62.562Q75.692-62.890 75.692-63.347Q75.692-63.562 75.839-63.705Q75.986-63.848 76.206-63.848Q76.417-63.848 76.562-63.703Q76.707-63.558 76.707-63.347Q76.707-63.136 76.560-62.984Q76.412-62.833 76.206-62.833",[553],[549,6525],{"fill":542,"d":6526},"M58.663-51.953v17.517",[549,6528],{"stroke":542,"d":6529},"m58.663-32.436 1.6-3.2-1.6 1.2-1.6-1.2",[536,6531,6532,6535],{"stroke":712,"style":767},[549,6533],{"fill":542,"d":6534},"M70.61 7.598H46.716a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4H70.61a4 4 0 0 0 4-4V11.598a4 4 0 0 0-4-4ZM42.716 27.515",[536,6536,6537,6543,6548,6554],{"fill":712,"stroke":542,"fontSize":1459},[536,6538,6540],{"transform":6539},"translate(-12.946 82.151)",[549,6541],{"d":6362,"fill":712,"stroke":712,"className":6542,"style":571},[553],[536,6544,6545],{"transform":6539},[549,6546],{"d":6425,"fill":712,"stroke":712,"className":6547,"style":571},[553],[536,6549,6550],{"transform":6539},[549,6551],{"d":6552,"fill":712,"stroke":712,"className":6553,"style":571},"M71.789-62.354Q71.789-62.991 71.945-63.637Q72.101-64.283 72.393-64.889Q72.685-65.496 73.094-66.045L73.911-67.153L72.883-67.153Q71.239-67.153 71.191-67.109Q71.085-66.981 70.967-66.278L70.681-66.278L70.976-68.194L71.266-68.194L71.266-68.168Q71.266-68.005 71.830-67.957Q72.395-67.908 72.940-67.908L74.658-67.908L74.658-67.702Q74.658-67.684 74.656-67.675Q74.654-67.667 74.649-67.658L73.362-65.909Q73.111-65.557 72.964-65.131Q72.817-64.705 72.751-64.241Q72.685-63.778 72.672-63.367Q72.659-62.956 72.659-62.354Q72.659-62.174 72.533-62.044Q72.408-61.914 72.228-61.914Q72.109-61.914 72.006-61.971Q71.903-62.029 71.846-62.132Q71.789-62.235 71.789-62.354",[553],[536,6555,6556],{"transform":6539},[549,6557],{"d":6437,"fill":712,"stroke":712,"className":6558,"style":571},[553],[536,6560,6561,6564,6567],{"stroke":712,"style":767},[549,6562],{"fill":542,"d":6563},"M58.663-12.12V5.399",[549,6565],{"stroke":542,"d":6566},"m58.663 7.398 1.6-3.2-1.6 1.2-1.6-1.2",[536,6568,6570],{"transform":6569},"translate(5.096 61.59)",[549,6571],{"d":6452,"fill":538,"stroke":538,"className":6572,"style":554},[553],[536,6574,6576],{"transform":6575},"translate(5.096 21.756)",[549,6577],{"d":6493,"fill":538,"stroke":538,"className":6578,"style":554},[553],[549,6580],{"fill":542,"d":6581},"M151.086-32.236h-14.129a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4h14.129a4 4 0 0 0 4-4v-11.917a4 4 0 0 0-4-4ZM132.957-12.32",[536,6583,6584,6590,6595],{"stroke":542,"fontSize":1459},[536,6585,6587],{"transform":6586},"translate(77.294 42.734)",[549,6588],{"d":6362,"fill":538,"stroke":538,"className":6589,"style":571},[553],[536,6591,6592],{"transform":6586},[549,6593],{"d":6425,"fill":538,"stroke":538,"className":6594,"style":571},[553],[536,6596,6597],{"transform":6586},[549,6598],{"d":6599,"fill":538,"stroke":538,"className":6600,"style":571},"M72.865-63.589L70.426-63.589L70.426-63.905L73.252-68.053Q73.296-68.106 73.362-68.106L73.516-68.106Q73.555-68.106 73.588-68.073Q73.621-68.040 73.621-67.996L73.621-63.905L74.522-63.905L74.522-63.589L73.621-63.589L73.621-62.723Q73.621-62.428 74.522-62.428L74.522-62.112L71.969-62.112L71.969-62.428Q72.329-62.428 72.597-62.483Q72.865-62.538 72.865-62.723L72.865-63.589M72.922-67.078L70.760-63.905L72.922-63.905",[553],[549,6602],{"fill":542,"d":6603},"m72.497-55.659 58.448 27.284",[549,6605],{"stroke":542,"d":6606},"m132.757-27.529-2.223-2.803.411 1.957-1.764.942",[536,6608,6609,6612],{"stroke":712,"style":767},[549,6610],{"fill":542,"d":6611},"M155.968 7.598h-23.893a4 4 0 0 0-4 4v11.917a4 4 0 0 0 4 4h23.893a4 4 0 0 0 4-4V11.598a4 4 0 0 0-4-4Zm-27.893 19.917",[536,6613,6614,6620,6625,6631],{"fill":712,"stroke":542,"fontSize":1459},[536,6615,6617],{"transform":6616},"translate(72.412 82.151)",[549,6618],{"d":6362,"fill":712,"stroke":712,"className":6619,"style":571},[553],[536,6621,6622],{"transform":6616},[549,6623],{"d":6425,"fill":712,"stroke":712,"className":6624,"style":571},[553],[536,6626,6627],{"transform":6616},[549,6628],{"d":6629,"fill":712,"stroke":712,"className":6630,"style":571},"M70.554-63.479Q70.554-64.037 70.914-64.450Q71.274-64.863 71.850-65.135L71.481-65.368Q71.178-65.570 70.991-65.900Q70.804-66.230 70.804-66.586Q70.804-67.240 71.310-67.673Q71.815-68.106 72.479-68.106Q72.878-68.106 73.263-67.946Q73.647-67.785 73.896-67.480Q74.144-67.174 74.144-66.757Q74.144-65.926 73.076-65.368L73.630-65.021Q73.977-64.793 74.188-64.424Q74.399-64.054 74.399-63.641Q74.399-63.263 74.241-62.945Q74.083-62.626 73.806-62.393Q73.529-62.160 73.186-62.037Q72.843-61.914 72.479-61.914Q72.013-61.914 71.567-62.101Q71.121-62.288 70.837-62.642Q70.554-62.995 70.554-63.479M71.077-63.479Q71.077-62.934 71.496-62.567Q71.916-62.200 72.479-62.200Q72.808-62.200 73.133-62.332Q73.459-62.464 73.667-62.718Q73.876-62.973 73.876-63.316Q73.876-63.580 73.740-63.804Q73.604-64.028 73.371-64.182L72.127-64.964Q71.666-64.727 71.371-64.340Q71.077-63.953 71.077-63.479M71.688-66.234L72.804-65.531Q73.028-65.654 73.232-65.843Q73.437-66.032 73.557-66.265Q73.678-66.498 73.678-66.757Q73.678-67.065 73.507-67.315Q73.335-67.566 73.059-67.706Q72.782-67.847 72.470-67.847Q72.021-67.847 71.648-67.601Q71.274-67.355 71.274-66.928Q71.274-66.524 71.688-66.234",[553],[536,6632,6633],{"transform":6616},[549,6634],{"d":6437,"fill":712,"stroke":712,"className":6635,"style":571},[553],[536,6637,6638,6641,6644],{"stroke":712,"style":767},[549,6639],{"fill":542,"d":6640},"M144.021-12.12V5.399",[549,6642],{"stroke":542,"d":6643},"m144.021 7.398 1.6-3.2-1.6 1.2-1.6-1.2",[536,6645,6647],{"transform":6646},"translate(90.454 61.59)",[549,6648],{"d":6452,"fill":538,"stroke":538,"className":6649,"style":554},[553],[536,6651,6653],{"transform":6652},"translate(49.06 22.357)",[549,6654],{"d":6452,"fill":538,"stroke":538,"className":6655,"style":554},[553],[830,6657,6659,6660,6694,6695,2207],{"className":6658},[833],"Pruning kills infeasible subtrees early (target ",[836,6661,6663],{"className":6662},[839],[836,6664,6666,6684],{"className":6665,"ariaHidden":844},[843],[836,6667,6669,6672,6675,6678,6681],{"className":6668},[848],[836,6670],{"className":6671,"style":985},[852],[836,6673,6021],{"className":6674,"style":6020},[857,858],[836,6676],{"className":6677,"style":2524},[1135],[836,6679,2529],{"className":6680},[2528],[836,6682],{"className":6683,"style":2524},[1135],[836,6685,6687,6690],{"className":6686},[848],[836,6688],{"className":6689,"style":2051},[852],[836,6691,6693],{"className":6692},[857],"5",", choices ",[836,6696,6698],{"className":6697},[839],[836,6699,6701],{"className":6700,"ariaHidden":844},[843],[836,6702,6704,6707,6710,6713,6716,6719,6722,6725,6728,6732],{"className":6703},[848],[836,6705],{"className":6706,"style":1074},[852],[836,6708,1079],{"className":6709},[1078],[836,6711,470],{"className":6712},[857],[836,6714,1131],{"className":6715},[1130],[836,6717],{"className":6718,"style":1136},[1135],[836,6720,1841],{"className":6721},[857],[836,6723,1131],{"className":6724},[1130],[836,6726],{"className":6727,"style":1136},[1135],[836,6729,6731],{"className":6730},[857],"4",[836,6733,1207],{"className":6734},[1206],[381,6736,6737,6738,6772,6773,6789,6790,6841,6842,6872,6873,6876,6877,6880,6881,6884],{},"Each branch reaching ",[836,6739,6741],{"className":6740},[839],[836,6742,6744,6763],{"className":6743,"ariaHidden":844},[843],[836,6745,6747,6751,6754,6757,6760],{"className":6746},[848],[836,6748],{"className":6749,"style":6750},[852],"height:0.5782em;vertical-align:-0.0391em;",[836,6752,3921],{"className":6753},[857,858],[836,6755],{"className":6756,"style":2524},[1135],[836,6758,3907],{"className":6759},[2528],[836,6761],{"className":6762,"style":2524},[1135],[836,6764,6766,6769],{"className":6765},[848],[836,6767],{"className":6768,"style":2051},[852],[836,6770,6693],{"className":6771},[857]," (the dashed ",[836,6774,6776],{"className":6775},[839],[836,6777,6779],{"className":6778,"ariaHidden":844},[843],[836,6780,6782,6785],{"className":6781},[848],[836,6783],{"className":6784,"style":2393},[852],[836,6786,6788],{"className":6787},[857],"×"," nodes) is dropped without\ndescending further; the blue path ",[836,6791,6793],{"className":6792},[839],[836,6794,6796,6814,6832],{"className":6795,"ariaHidden":844},[843],[836,6797,6799,6802,6805,6808,6811],{"className":6798},[848],[836,6800],{"className":6801,"style":2051},[852],[836,6803,1112],{"className":6804},[857],[836,6806],{"className":6807,"style":2524},[1135],[836,6809,3136],{"className":6810},[2528],[836,6812],{"className":6813,"style":2524},[1135],[836,6815,6817,6820,6823,6826,6829],{"className":6816},[848],[836,6818],{"className":6819,"style":2051},[852],[836,6821,470],{"className":6822},[857],[836,6824],{"className":6825,"style":2524},[1135],[836,6827,3136],{"className":6828},[2528],[836,6830],{"className":6831,"style":2524},[1135],[836,6833,6835,6838],{"className":6834},[848],[836,6836],{"className":6837,"style":2051},[852],[836,6839,6693],{"className":6840},[857]," is the live solution\n",[836,6843,6845],{"className":6844},[839],[836,6846,6848],{"className":6847,"ariaHidden":844},[843],[836,6849,6851,6854,6857,6860,6863,6866,6869],{"className":6850},[848],[836,6852],{"className":6853,"style":1074},[852],[836,6855,1079],{"className":6856},[1078],[836,6858,470],{"className":6859},[857],[836,6861,1131],{"className":6862},[1130],[836,6864],{"className":6865,"style":1136},[1135],[836,6867,1841],{"className":6868},[857],[836,6870,1207],{"className":6871},[1206],". Pruning does the heavy lifting: a search that ",[389,6874,6875],{},"looks"," exponential can\nrun in milliseconds when the prune severs the bulk of the tree, while a poorly\npruned search of the ",[389,6878,6879],{},"same"," size is hopeless. This is why Skiena frames practical\ncombinatorial search as ",[2337,6882,6883],{},"the art of pruning.",[406,6885,6886],{},[384,6887,470],{"href":467,"ariaDescribedBy":6888,"dataFootnoteRef":376,"id":6889},[412],"user-content-fnref-skiena-bt-2",[432,6891,6893],{"id":6892},"complexity-the-size-of-the-explored-tree","Complexity: the size of the explored tree",[381,6895,6896,6897,6900,6901,6904,6905,6908,6909,6977,6978,7020,7021,7111,7112,7166,7167,7221],{},"There is no single formula for ",[2337,6898,6899],{},"backtracking complexity","; the running time is\nsimply ",[394,6902,6903],{},"the size of the state-space tree we actually explore",", times the work\nper node. For a ",[389,6906,6907],{},"full"," enumeration this is the output size: ",[836,6910,6912],{"className":6911},[839],[836,6913,6915,6939],{"className":6914,"ariaHidden":844},[843],[836,6916,6918,6921,6924,6927,6930,6933,6936],{"className":6917},[848],[836,6919],{"className":6920,"style":1074},[852],[836,6922,2249],{"className":6923},[857],[836,6925,2174],{"className":6926},[1078],[836,6928,1054],{"className":6929},[857,858],[836,6931],{"className":6932,"style":2038},[1135],[836,6934,2262],{"className":6935},[1186],[836,6937],{"className":6938,"style":2038},[1135],[836,6940,6942,6945,6974],{"className":6941},[848],[836,6943],{"className":6944,"style":1074},[852],[836,6946,6948,6951],{"className":6947},[857],[836,6949,470],{"className":6950},[857],[836,6952,6954],{"className":6953},[1023],[836,6955,6957],{"className":6956},[1027],[836,6958,6960],{"className":6959},[1031],[836,6961,6963],{"className":6962,"style":1013},[1035],[836,6964,6965,6968],{"style":1038},[836,6966],{"className":6967,"style":1043},[1042],[836,6969,6971],{"className":6970},[1047,1048,1049,1050],[836,6972,1054],{"className":6973},[857,858,1050],[836,6975,2207],{"className":6976},[1206],"\nfor subsets, ",[836,6979,6981],{"className":6980},[839],[836,6982,6984,7008],{"className":6983,"ariaHidden":844},[843],[836,6985,6987,6990,6993,6996,6999,7002,7005],{"className":6986},[848],[836,6988],{"className":6989,"style":1074},[852],[836,6991,2249],{"className":6992},[857],[836,6994,2174],{"className":6995},[1078],[836,6997,1054],{"className":6998},[857,858],[836,7000],{"className":7001,"style":2038},[1135],[836,7003,2262],{"className":7004},[1186],[836,7006],{"className":7007,"style":2038},[1135],[836,7009,7011,7014,7017],{"className":7010},[848],[836,7012],{"className":7013,"style":1074},[852],[836,7015,1054],{"className":7016},[857,858],[836,7018,2755],{"className":7019},[1206]," for permutations, ",[836,7022,7024],{"className":7023},[839],[836,7025,7027],{"className":7026,"ariaHidden":844},[843],[836,7028,7030,7033,7036,7039,7042,7108],{"className":7029},[848],[836,7031],{"className":7032,"style":3432},[852],[836,7034,2249],{"className":7035},[857],[836,7037,2174],{"className":7038},[1078],[836,7040,2624],{"className":7041,"style":2623},[857,858],[836,7043,7045,7051,7102],{"className":7044},[857],[836,7046,7048],{"className":7047,"style":3440},[1078,3439],[836,7049,2174],{"className":7050},[3444,3445],[836,7052,7054],{"className":7053},[3449],[836,7055,7057,7094],{"className":7056},[1027,1092],[836,7058,7060,7091],{"className":7059},[1031],[836,7061,7063,7077],{"className":7062,"style":3459},[1035],[836,7064,7065,7068],{"style":3462},[836,7066],{"className":7067,"style":1043},[1042],[836,7069,7071],{"className":7070},[1047,1048,1049,1050],[836,7072,7074],{"className":7073},[857,1050],[836,7075,2624],{"className":7076,"style":2623},[857,858,1050],[836,7078,7079,7082],{"style":3477},[836,7080],{"className":7081,"style":1043},[1042],[836,7083,7085],{"className":7084},[1047,1048,1049,1050],[836,7086,7088],{"className":7087},[857,1050],[836,7089,1054],{"className":7090},[857,858,1050],[836,7092,1117],{"className":7093},[1116],[836,7095,7097],{"className":7096},[1031],[836,7098,7100],{"className":7099,"style":3499},[1035],[836,7101],{},[836,7103,7105],{"className":7104,"style":3440},[1206,3439],[836,7106,2207],{"className":7107},[3444,3445],[836,7109,2207],{"className":7110},[1206]," for\ncombinations. More generally the cost is ",[836,7113,7115],{"className":7114},[839],[836,7116,7118,7150],{"className":7117,"ariaHidden":844},[843],[836,7119,7121,7124,7127,7130,7134,7141,7144,7147],{"className":7120},[848],[836,7122],{"className":7123,"style":1074},[852],[836,7125,2170],{"className":7126,"style":2169},[857,858],[836,7128,2174],{"className":7129},[1078],[836,7131,7133],{"className":7132},[857],"#",[836,7135,7137],{"className":7136},[857,944],[836,7138,7140],{"className":7139},[857],"nodes visited",[836,7142],{"className":7143,"style":2038},[1135],[836,7145,6788],{"className":7146},[1186],[836,7148],{"className":7149,"style":2038},[1135],[836,7151,7153,7156,7163],{"className":7152},[848],[836,7154],{"className":7155,"style":1074},[852],[836,7157,7159],{"className":7158},[857,944],[836,7160,7162],{"className":7161},[857],"cost per node",[836,7164,2207],{"className":7165},[1206],", and for problems whose answers we emit, it is bounded below by\n",[836,7168,7170],{"className":7169},[839],[836,7171,7173,7205],{"className":7172,"ariaHidden":844},[843],[836,7174,7176,7179,7183,7186,7189,7196,7199,7202],{"className":7175},[848],[836,7177],{"className":7178,"style":1074},[852],[836,7180,7182],{"className":7181},[857],"Ω",[836,7184,2174],{"className":7185},[1078],[836,7187,7133],{"className":7188},[857],[836,7190,7192],{"className":7191},[857,944],[836,7193,7195],{"className":7194},[857],"solutions",[836,7197],{"className":7198,"style":2038},[1135],[836,7200,6788],{"className":7201},[1186],[836,7203],{"className":7204,"style":2038},[1135],[836,7206,7208,7211,7218],{"className":7207},[848],[836,7209],{"className":7210,"style":1074},[852],[836,7212,7214],{"className":7213},[857,944],[836,7215,7217],{"className":7216},[857],"size of each",[836,7219,2207],{"className":7220},[1206],": we cannot beat the cost\nof writing the output.",[473,7223,7224],{"type":475},[381,7225,7226,7229,7230,7233,7234,7249,7250,7291,7292],{},[394,7227,7228],{},"Remark (The exponential-but-fast distinction)."," Backtracking is ",[394,7231,7232],{},"exponential in the\nworst case"," — adversarial inputs force exploration of nearly the whole tree.\nBut on typical inputs, pruning collapses the explored tree to a thin sliver of\nits worst-case size, which is exactly why backtracking solves ",[836,7235,7237],{"className":7236},[839],[836,7238,7240],{"className":7239,"ariaHidden":844},[843],[836,7241,7243,7246],{"className":7242},[848],[836,7244],{"className":7245,"style":853},[852],[836,7247,1054],{"className":7248},[857,858],"-queens,\nSudoku, and SAT instances far larger than ",[836,7251,7253],{"className":7252},[839],[836,7254,7256],{"className":7255,"ariaHidden":844},[843],[836,7257,7259,7262],{"className":7258},[848],[836,7260],{"className":7261,"style":1013},[852],[836,7263,7265,7268],{"className":7264},[857],[836,7266,470],{"className":7267},[857],[836,7269,7271],{"className":7270},[1023],[836,7272,7274],{"className":7273},[1027],[836,7275,7277],{"className":7276},[1031],[836,7278,7280],{"className":7279,"style":1013},[1035],[836,7281,7282,7285],{"style":1038},[836,7283],{"className":7284,"style":1043},[1042],[836,7286,7288],{"className":7287},[1047,1048,1049,1050],[836,7289,1054],{"className":7290},[857,858,1050]," counting would suggest.",[406,7293,7294],{},[384,7295,1841],{"href":7296,"ariaDescribedBy":7297,"dataFootnoteRef":376,"id":7298},"#user-content-fn-clrs-exhaustive",[412],"user-content-fnref-clrs-exhaustive",[381,7300,7301,7302,7323],{},"The lever is always the same: a tighter ",[836,7303,7305],{"className":7304},[839],[836,7306,7308],{"className":7307,"ariaHidden":844},[843],[836,7309,7311,7314],{"className":7310},[848],[836,7312],{"className":7313,"style":985},[852],[836,7315,7317],{"className":7316},[939,940],[836,7318,7320],{"className":7319},[857,944],[836,7321,995],{"className":7322},[857]," predicate cuts subtrees\nnearer the root, and the savings compound exponentially with the depth of the cut.",[432,7325,7327],{"id":7326},"takeaways","Takeaways",[6096,7329,7330,7343,7350,7508,7525,7531],{},[6099,7331,7332,7334,7335,7338,7339,7342],{},[394,7333,294],{}," is depth-first search of a ",[394,7336,7337],{},"state-space tree",": build a\npartial solution incrementally, and ",[394,7340,7341],{},"abandon"," any branch that cannot reach a\nvalid complete solution.",[6099,7344,7345,7346,7349],{},"The universal template is ",[394,7347,7348],{},"choose \u002F explore \u002F un-choose",": a single mutable\nbuffer suffices because the undo step restores it before each sibling is tried.",[6099,7351,7352,7355,7356,7397,7398,7400,7401,7355,7404,7422,7423,7425,7426,7355,7429,7507],{},[394,7353,7354],{},"Subsets"," (",[836,7357,7359],{"className":7358},[839],[836,7360,7362],{"className":7361,"ariaHidden":844},[843],[836,7363,7365,7368],{"className":7364},[848],[836,7366],{"className":7367,"style":1013},[852],[836,7369,7371,7374],{"className":7370},[857],[836,7372,470],{"className":7373},[857],[836,7375,7377],{"className":7376},[1023],[836,7378,7380],{"className":7379},[1027],[836,7381,7383],{"className":7382},[1031],[836,7384,7386],{"className":7385,"style":1013},[1035],[836,7387,7388,7391],{"style":1038},[836,7389],{"className":7390,"style":1043},[1042],[836,7392,7394],{"className":7393},[1047,1048,1049,1050],[836,7395,1054],{"className":7396},[857,858,1050],") come from an include\u002Fexclude binary recursion or a\nforward-only ",[394,7399,1850],{},"; ",[394,7402,7403],{},"permutations",[836,7405,7407],{"className":7406},[839],[836,7408,7410],{"className":7409,"ariaHidden":844},[843],[836,7411,7413,7416,7419],{"className":7412},[848],[836,7414],{"className":7415,"style":962},[852],[836,7417,1054],{"className":7418},[857,858],[836,7420,2327],{"className":7421},[1206],") from a ",[483,7424,2363],{}," array or\nin-place swapping; ",[394,7427,7428],{},"combinations",[836,7430,7432],{"className":7431},[839],[836,7433,7435],{"className":7434,"ariaHidden":844},[843],[836,7436,7438,7441],{"className":7437},[848],[836,7439],{"className":7440,"style":3432},[852],[836,7442,7444,7450,7501],{"className":7443},[857],[836,7445,7447],{"className":7446,"style":3440},[1078,3439],[836,7448,2174],{"className":7449},[3444,3445],[836,7451,7453],{"className":7452},[3449],[836,7454,7456,7493],{"className":7455},[1027,1092],[836,7457,7459,7490],{"className":7458},[1031],[836,7460,7462,7476],{"className":7461,"style":3459},[1035],[836,7463,7464,7467],{"style":3462},[836,7465],{"className":7466,"style":1043},[1042],[836,7468,7470],{"className":7469},[1047,1048,1049,1050],[836,7471,7473],{"className":7472},[857,1050],[836,7474,2624],{"className":7475,"style":2623},[857,858,1050],[836,7477,7478,7481],{"style":3477},[836,7479],{"className":7480,"style":1043},[1042],[836,7482,7484],{"className":7483},[1047,1048,1049,1050],[836,7485,7487],{"className":7486},[857,1050],[836,7488,1054],{"className":7489},[857,858,1050],[836,7491,1117],{"className":7492},[1116],[836,7494,7496],{"className":7495},[1031],[836,7497,7499],{"className":7498,"style":3499},[1035],[836,7500],{},[836,7502,7504],{"className":7503,"style":3440},[1206,3439],[836,7505,2207],{"className":7506},[3444,3445],") from a start index that\nforces increasing choices so each set is generated once.",[6099,7509,7510,7513,7514,7517,7518,7521,7522,7524],{},[394,7511,7512],{},"Duplicates"," are handled by sorting and skipping equal siblings at the same\ndepth (",[483,7515,7516],{},"if i > start and a[i] == a[i-1] continue","), which drops identical\nsubtrees without losing distinct solutions; ",[394,7519,7520],{},"reuse-allowed"," variants keep\n",[483,7523,5469],{}," instead of advancing.",[6099,7526,7527,7530],{},[394,7528,7529],{},"Pruning",", cutting infeasible or non-improving subtrees early (sum exceeds\ntarget, bound can't beat the best), is what separates exponential-but-fast from\nhopeless; one early cut saves an exponential subtree.",[6099,7532,7533,7534,7537],{},"Running time is the ",[394,7535,7536],{},"size of the explored tree"," times per-node work:\nexponential in the worst case, but tamed to practicality by good pruning on\ntypical inputs.",[7539,7540,7543,7548],"section",{"className":7541,"dataFootnotes":376},[7542],"footnotes",[432,7544,7547],{"className":7545,"id":412},[7546],"sr-only","Footnotes",[7549,7550,7551,7565,7584],"ol",{},[6099,7552,7554,7557,7558],{"id":7553},"user-content-fn-erickson-bt",[394,7555,7556],{},"Erickson",", Ch. — Backtracking: incrementally constructing a solution and abandoning partial candidates that cannot be completed. ",[384,7559,7564],{"href":7560,"ariaLabel":7561,"className":7562,"dataFootnoteBackref":376},"#user-content-fnref-erickson-bt","Back to reference 1",[7563],"data-footnote-backref","↩",[6099,7566,7568,7571,7572,3518,7577],{"id":7567},"user-content-fn-skiena-bt",[394,7569,7570],{},"Skiena",", §7 — Combinatorial Search and Heuristic Methods: the state-space search tree and pruning as the core of efficient exhaustive search. ",[384,7573,7564],{"href":7574,"ariaLabel":7575,"className":7576,"dataFootnoteBackref":376},"#user-content-fnref-skiena-bt","Back to reference 2",[7563],[384,7578,7564,7582],{"href":7579,"ariaLabel":7580,"className":7581,"dataFootnoteBackref":376},"#user-content-fnref-skiena-bt-2","Back to reference 2-2",[7563],[406,7583,470],{},[6099,7585,7587,7590,7591],{"id":7586},"user-content-fn-clrs-exhaustive",[394,7588,7589],{},"CLRS",", Ch. — Exhaustive Search: backtracking explores only feasible extensions, exponential in the worst case but far smaller in practice. ",[384,7592,7564],{"href":7593,"ariaLabel":7594,"className":7595,"dataFootnoteBackref":376},"#user-content-fnref-clrs-exhaustive","Back to reference 3",[7563],[7597,7598,7599],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark-mode .shiki span {color: var(--shiki-dark-mode);background: var(--shiki-dark-mode-bg);font-style: var(--shiki-dark-mode-font-style);font-weight: var(--shiki-dark-mode-font-weight);text-decoration: var(--shiki-dark-mode-text-decoration);}html.dark-mode .shiki span {color: var(--shiki-dark-mode);background: var(--shiki-dark-mode-bg);font-style: var(--shiki-dark-mode-font-style);font-weight: var(--shiki-dark-mode-font-weight);text-decoration: var(--shiki-dark-mode-text-decoration);}",{"title":376,"searchDepth":18,"depth":18,"links":7601},[7602,7603,7605,7607,7609,7610,7611,7612,7613],{"id":434,"depth":18,"text":435},{"id":999,"depth":18,"text":7604},"Subsets: the power set in 2n",{"id":2307,"depth":18,"text":7606},"Permutations: n! orderings",{"id":3418,"depth":18,"text":7608},"Combinations: (kn​) with a start index",{"id":3781,"depth":18,"text":3782},{"id":5982,"depth":18,"text":5983},{"id":6892,"depth":18,"text":6893},{"id":7326,"depth":18,"text":7327},{"id":412,"depth":18,"text":7547},"Dynamic programming, which closed the previous module, works when a problem has\noverlapping subproblems we can tabulate. But a great many problems ask us\ninstead to enumerate or search a combinatorial space: list every subset,\nevery permutation, every way to place eight queens, every assignment satisfying a\nformula. These spaces are exponential, so we cannot afford to materialize them,\nyet we can walk them cleverly. Backtracking is the disciplined depth-first\nwalk of such a space: it builds a candidate solution one decision at a time and,\ncrucially, abandons a partial candidate the instant it proves it cannot be\nextended to a valid complete one.1 This act of abandonment, the\nbacktrack, is what separates a directed search from blind brute force.","md",{"moduleNumber":202,"lessonNumber":6,"order":7617},901,true,[7620,7623,7625,7627,7629],{"title":7354,"slug":7621,"difficulty":7622},"subsets","Medium",{"title":7624,"slug":7403,"difficulty":7622},"Permutations",{"title":7626,"slug":7428,"difficulty":7622},"Combinations",{"title":5412,"slug":7628,"difficulty":7622},"combination-sum",{"title":7630,"slug":7631,"difficulty":7622},"Generate Parentheses","generate-parentheses","---\ntitle: \"Backtracking: Subsets, Permutations & Combinations\"\nmodule: Backtracking & Search\nmoduleNumber: 9\nlessonNumber: 1\norder: 901\nsummary: >-\n  Backtracking builds a solution one choice at a time and abandons a partial\n  solution the moment it cannot be completed, exploring a state-space tree by\n  depth-first search. We meet the universal choose\u002Fexplore\u002Fun-choose template,\n  derive the canonical enumerations — subsets ($2^n$), permutations ($n!$), and\n  combinations ($\\binom{n}{k}$) — handle duplicate elements by skipping equal\n  siblings, and see how pruning turns an exponential search into a tractable one.\ntopics: [Backtracking]\nsources:\n  - book: Skiena\n    ref: \"§7 — Combinatorial Search and Heuristic Methods\"\n  - book: Erickson\n    ref: \"Ch. — Backtracking\"\n  - book: CLRS\n    ref: \"Ch. — Exhaustive Search\"\npractice:\n  - title: 'Subsets'\n    slug: subsets\n    difficulty: Medium\n  - title: 'Permutations'\n    slug: permutations\n    difficulty: Medium\n  - title: 'Combinations'\n    slug: combinations\n    difficulty: Medium\n  - title: 'Combination Sum'\n    slug: combination-sum\n    difficulty: Medium\n  - title: 'Generate Parentheses'\n    slug: generate-parentheses\n    difficulty: Medium\n---\n\n[Dynamic programming](\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples), which closed the previous module, works when a problem has\n_overlapping subproblems_ we can tabulate. But a great many problems ask us\ninstead to **enumerate or search a combinatorial space**: list every subset,\nevery permutation, every way to place eight queens, every assignment satisfying a\nformula. These spaces are exponential, so we cannot afford to materialize them,\nyet we can walk them cleverly. **Backtracking** is the disciplined depth-first\nwalk of such a space: it builds a candidate solution one decision at a time and,\ncrucially, **abandons** a partial candidate the instant it proves it cannot be\nextended to a valid complete one.[^erickson-bt] This act of abandonment, the\n_backtrack_, is what separates a directed search from blind brute force.\n\nThis lesson opens the module by establishing the paradigm and instantiating it on\nthe three enumerations every later technique builds on (subsets, permutations,\nand combinations) together with the two ideas that make backtracking _fast_ in\npractice: deduplication of equal choices and **pruning** of infeasible subtrees.\n\n## The paradigm: choose, explore, un-choose\n\nThink of a solution as a sequence of decisions. At each step we have a **partial\nsolution** and a set of **valid choices** to extend it. We pick one choice,\nrecurse to extend further, and then **undo** that\nchoice before trying the next one. The recursion thus traverses a **state-space\ntree** (also called a _decision tree_ or _choice tree_): the root is the empty\npartial solution, each edge is one choice, each node is the partial solution\naccumulated so far, and the leaves are complete candidates.[^skiena-bt] The walk\nis depth-first.\n\n> **Remark (The backtracking template).** To enumerate solutions, maintain a mutable\n> `partial`. At each node: if `partial` is _complete_, record it; otherwise, for\n> each _valid_ next choice — **choose** it (push onto `partial`), **explore**\n> (recurse), then **un-choose** it (pop), restoring `partial` exactly as it was.\n> Abandon a branch early whenever `partial` can no longer reach a valid solution.\n\nThe un-choose step is what lets a single mutable buffer serve the entire tree: by\nthe time control returns from a child, the buffer is byte-for-byte what it was\nbefore we descended, so the next sibling starts from a clean slate.\n\n$$\n% caption: One mutable buffer across a node: \\textbf{choose} pushes $c$, \\textbf{explore}\n%          recurses, \\textbf{un-choose} pops — restoring the buffer exactly so the next\n%          sibling starts clean\n\\begin{tikzpicture}[\n  >=stealth, font=\\small,\n  slot\u002F.style={draw, minimum size=7mm, inner sep=1pt, font=\\small},\n  newslot\u002F.style={draw=acc, very thick, minimum size=7mm, inner sep=1pt, font=\\small},\n  stage\u002F.style={draw=none, font=\\scriptsize, align=center},\n  reslot\u002F.style={draw, dashed, minimum size=7mm, inner sep=1pt, font=\\small}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\useasboundingbox (-1.5,1.3) rectangle (12.6,-2.0);\n  % stage 1: before\n  \\node[stage] at (0.7,0.95) {before};\n  \\node[slot] at (0,0) {$x$};\n  \\node[slot] at (0.7,0) {$y$};\n  \\node[slot, fill=black!6] at (1.4,0) {};\n  \\node[stage] at (0.7,-1.0) {partial $= xy$};\n  % arrow: choose\n  \\draw[->, acc, very thick] (2.1,0) -- node[above, draw=none, font=\\scriptsize, acc] {choose $c$} (4.0,0);\n  % stage 2: after push\n  \\node[stage] at (4.95,0.95) {explore};\n  \\node[slot] at (4.2,0) {$x$};\n  \\node[slot] at (4.9,0) {$y$};\n  \\node[newslot] at (5.6,0) {$c$};\n  \\node[stage] at (4.9,-1.0) {recurse on $xyc$};\n  % arrow: un-choose\n  \\draw[->, red!75!black, very thick] (6.3,0) -- node[above, draw=none, font=\\scriptsize, text=red!75!black] {un-choose} (8.2,0);\n  % stage 3: after pop (restored)\n  \\node[stage] at (9.05,0.95) {after};\n  \\node[slot] at (8.4,0) {$x$};\n  \\node[slot] at (9.1,0) {$y$};\n  \\node[reslot, text=red!75!black] at (9.8,0) {$\\times$};\n  \\node[stage] at (9.1,-1.0) {partial $= xy$ again};\n  % note\n  \\node[draw=none, font=\\scriptsize, align=left] at (11.6,0) {next\\\\ sibling\\\\ starts\\\\ clean};\n\\end{tikzpicture}\n$$\n\n```algorithm\ncaption: $\\textsc{Backtrack}(partial)$ — generic DFS over the state-space tree\nif $\\textsc{IsComplete}(partial)$ then\n  record a copy of $partial$\n  return\nfor each $c \\in \\textsc{ValidChoices}(partial)$ do\n  if $\\textsc{Prune}(partial, c)$ then\n    continue \u002F\u002F prune\n  $\\textsc{Apply}(partial, c)$ \u002F\u002F choose\n  $\\textsc{Backtrack}(partial)$ \u002F\u002F explore\n  $\\textsc{Undo}(partial, c)$ \u002F\u002F un-choose\n```\n\nEverything in this lesson is a specialization of this skeleton: the four\nprimitives $\\textsc{IsComplete}$, $\\textsc{ValidChoices}$, $\\textsc{Prune}$, and\nthe choose\u002Fundo pair are all we ever change.\n\n## Subsets: the power set in $2^n$\n\nThe cleanest decision tree is the **power set** of $\\{a_0, \\dots, a_{n-1}\\}$.\nEach element faces one binary decision, _in_ the subset or _out_, so the tree\nis a perfect binary tree of depth $n$, and its $2^n$ leaves are exactly the $2^n$\nsubsets. This is the **include–exclude** recursion:\n\n```algorithm\ncaption: $\\textsc{Subsets}(a, i, partial)$ — include\u002Fexclude each element\nif $i = n$ then\n  record a copy of $partial$\n  return\n$\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F exclude $a_i$\n$partial.\\text{push}(a_i)$ \u002F\u002F include $a_i$\n$\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F explore\n$partial.\\text{pop}()$ \u002F\u002F un-choose\n```\n\n$$\n% caption: DFS over the include\u002Fexclude choice tree for subsets of $\\{1,2,3\\}$\n\\begin{tikzpicture}[\n  every node\u002F.style={draw, circle, minimum size=7mm, inner sep=1pt, font=\\small},\n  level distance=13mm,\n  level 1\u002F.style={sibling distance=34mm},\n  level 2\u002F.style={sibling distance=17mm},\n  level 3\u002F.style={sibling distance=9mm},\n  edgelbl\u002F.style={draw=none, font=\\scriptsize, fill=none},\n  leaf\u002F.style={draw=none, font=\\scriptsize}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node {$\\varnothing$}\n    child {node {$\\varnothing$}\n      child {node {$\\varnothing$}\n        child {node[leaf] {$\\{\\}$}}\n        child {node[leaf] {$\\{3\\}$}}\n        edge from parent node[edgelbl, left] {$-2$}}\n      child {node {$\\{2\\}$}\n        child {node[leaf] {$\\{2\\}$}}\n        child {node[leaf] {$\\{2,3\\}$}}\n        edge from parent node[edgelbl, right] {$+2$}}\n      edge from parent node[edgelbl, left] {$-1$}}\n    child {node[draw=acc, text=acc] {$\\{1\\}$}\n      child {node {$\\{1\\}$}\n        child {node[leaf] {$\\{1\\}$}}\n        child {node[leaf] {$\\{1,3\\}$}}\n        edge from parent node[edgelbl, left] {$-2$}}\n      child {node[draw=acc, text=acc] {$\\{1,2\\}$}\n        child {node[leaf] {$\\{1,2\\}$}}\n        child {node[leaf, draw=acc, text=acc] {$\\{1,2,3\\}$}}\n        edge from parent[draw=acc] node[edgelbl, right] {$+2$}}\n      edge from parent[draw=acc] node[edgelbl, right] {$+1$}};\n\\end{tikzpicture}\n$$\n\nAn equivalent and often handier formulation uses a **start index** so that _every\nnode_, not only the leaves, is a valid subset. We loop over choices $a_i, a_{i+1},\n\\dots$, and each recursion only ever looks _forward_ from the chosen index, which\nguarantees we generate each subset once, in lexicographic order of indices:\n\n```algorithm\ncaption: $\\textsc{Subsets}(a, start, partial)$ — emit every node, advance start\nrecord a copy of $partial$ \u002F\u002F every node is a subset\nfor $i \\gets start$ to $n-1$ do\n  $partial.\\text{push}(a_i)$ \u002F\u002F choose $a_i$\n  $\\textsc{Subsets}(a, i+1, partial)$ \u002F\u002F forward only\n  $partial.\\text{pop}()$ \u002F\u002F un-choose\n```\n\nAdvancing the start index to $i+1$ in the recursive call is what stops the same\nsubset $\\{1,2\\}$ from being generated twice, once as $1$-then-$2$ and once as\n$2$-then-$1$: an element earlier in the array is never chosen _after_ a later one. Both formulations do $O(2^n)$ recursive calls\nand spend $O(n)$ to copy each emitted subset, for $\\Theta(n \\cdot 2^n)$ total,\nunavoidable, since the output itself has that size.\n\n## Permutations: $n!$ orderings\n\nA **permutation** uses every element, so completeness is \"all $n$ chosen,\" and the\nvalid choices at each step are the elements _not yet used_. We track membership\nwith a boolean `used[]` array; the branching factor shrinks from $n$ at the root\nto $n-1$, then $n-2$, giving exactly $n \\cdot (n-1) \\cdots 1 = n!$ leaves.\n\n```algorithm\ncaption: $\\textsc{Permute}(a, used, partial)$ — pick an unused element each step\nif $|partial| = n$ then\n  record a copy of $partial$\n  return\nfor $i \\gets 0$ to $n-1$ do\n  if $used[i]$ then continue \u002F\u002F not a valid choice\n  $used[i] \\gets \\text{true}$; $partial.\\text{push}(a_i)$ \u002F\u002F choose\n  $\\textsc{Permute}(a, used, partial)$ \u002F\u002F explore\n  $partial.\\text{pop}()$; $used[i] \\gets \\text{false}$ \u002F\u002F un-choose\n```\n\nAn alternative avoids the auxiliary array by **swapping in place**: to permute\n$a[k..n{-}1]$, swap each candidate into position $k$, recurse on $a[k{+}1..n{-}1]$,\nthen swap it back: the swap-back _is_ the un-choose. Either way the work is\n$\\Theta(n \\cdot n!)$, dominated by emitting $n!$ permutations of length $n$.\n\n$$\n% caption: Permutation state-space tree for $\\{1,2,3\\}$ — the branching shrinks\n%          $3\\to2\\to1$ as elements are consumed, giving $3!=6$ leaves\n\\begin{tikzpicture}[\n  every node\u002F.style={draw, circle, minimum size=6mm, inner sep=1pt, font=\\small},\n  level distance=13mm,\n  level 1\u002F.style={sibling distance=30mm},\n  level 2\u002F.style={sibling distance=14mm},\n  level 3\u002F.style={sibling distance=10mm},\n  edgelbl\u002F.style={draw=none, font=\\scriptsize, fill=none},\n  leaf\u002F.style={draw=none, font=\\scriptsize}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node {$\\cdot$}\n    child {node {$1$}\n      child {node {$2$}\n        child {node[leaf] {$123$} edge from parent node[edgelbl,right]{$3$}}\n        edge from parent node[edgelbl,left]{$2$}}\n      child {node {$3$}\n        child {node[leaf] {$132$} edge from parent node[edgelbl,right]{$2$}}\n        edge from parent node[edgelbl,right]{$3$}}\n      edge from parent node[edgelbl,left]{$1$}}\n    child {node[draw=acc,text=acc] {$2$}\n      child {node {$1$}\n        child {node[leaf] {$213$} edge from parent node[edgelbl,left]{$3$}}\n        edge from parent node[edgelbl,left]{$1$}}\n      child {node[draw=acc,text=acc] {$3$}\n        child {node[leaf,draw=acc,text=acc] {$231$} edge from parent[draw=acc] node[edgelbl,right]{$1$}}\n        edge from parent[draw=acc] node[edgelbl,right]{$3$}}\n      edge from parent[draw=acc] node[edgelbl,left]{$2$}}\n    child {node {$3$}\n      child {node {$1$}\n        child {node[leaf] {$312$} edge from parent node[edgelbl,left]{$2$}}\n        edge from parent node[edgelbl,left]{$1$}}\n      child {node {$2$}\n        child {node[leaf] {$321$} edge from parent node[edgelbl,right]{$1$}}\n        edge from parent node[edgelbl,right]{$2$}}\n      edge from parent node[edgelbl,right]{$3$}};\n\\end{tikzpicture}\n$$\n\nEach root-to-leaf path consumes every element exactly once; the accented path\n$\\cdot \\to 2 \\to 3 \\to 1$ builds the permutation $231$. The fan-out is $3$ at the\nroot, $2$ at depth one, and $1$ at depth two, so the leaf count is the falling\nproduct $3 \\cdot 2 \\cdot 1 = 3!$.\n\n## Combinations: $\\binom{n}{k}$ with a start index\n\nA **combination** is a subset of a _fixed size_ $k$ where order does not matter.\nWe want $\\{1,3\\}$ but not also $\\{3,1\\}$, so we reuse the **start-index** trick\nfrom subsets, which generates each combination exactly once by only ever choosing\nforward. Completeness is now \"we have collected $k$ elements.\"\n\n```algorithm\ncaption: $\\textsc{Combine}(n, k, start, partial)$ — choose $k$ in increasing order\nif $|partial| = k$ then\n  record a copy of $partial$\n  return\nfor $i \\gets start$ to $n$ do\n  $partial.\\text{push}(i)$ \u002F\u002F choose $i$\n  $\\textsc{Combine}(n, k, i+1, partial)$ \u002F\u002F forward only\n  $partial.\\text{pop}()$ \u002F\u002F un-choose\n```\n\nThe start index does the combinatorial bookkeeping: because the chosen indices\nstrictly increase along any root-to-leaf path, each $k$-subset corresponds to\nexactly one path, and we enumerate all $\\binom{n}{k}$ of them with no duplicates.\nThis is the _same idea_ as the start-index subset enumerator: a combination is\nsimply a subset enumeration cut off at depth $k$.\n\n## Handling duplicates: skip equal siblings\n\nWhen the input multiset contains repeated values, say $[1,2,2]$, the naive\nenumerator emits the same combination twice, because the two $2$s are\n_distinguishable by position but identical in value_. The standard fix is to\n**sort the array, then at each level skip a choice equal to\nthe one just tried at the same depth.**\n\n> **Remark (Deduplication rule).** With $a$ sorted, inside the loop\n> `for i = start to n-1`:\n> $$\\textbf{if } i > start \\textbf{ and } a_i = a_{i-1} \\textbf{ then continue.}$$\n\nThe condition $i > start$ carries the logic. The _first_ occurrence of a value at\na given level (when $i = start$) is always allowed; we only skip _subsequent_\nequal values **at the same depth**. Why does this dedup correctly? Two sibling\nbranches that choose equal values would root _identical subtrees_, the same set\nof completions, so keeping only the first sibling drops the duplicate subtrees\nwhile losing no distinct solution. Note we skip equal _siblings_, not equal\n_ancestors_: choosing $a_{i-1}$ then descending and choosing $a_i = a_{i-1}$ is\nlegitimate (it uses _both_ copies), and there $i = start$ so the guard does not\nfire.\n\n$$\n% caption: Sorted $[1,2,2]$: the second equal sibling at a level ($i>start,\\ a_i=a_{i-1}$)\n%          is skipped, dropping a duplicate subtree (dashed, red); ancestor reuse\n%          $\\{2,2\\}$ survives\n\\begin{tikzpicture}[\n  every node\u002F.style={draw, rounded corners, minimum size=6mm, inner sep=3pt, font=\\small},\n  level distance=14mm,\n  level 1\u002F.style={sibling distance=30mm},\n  level 2\u002F.style={sibling distance=15mm},\n  edgelbl\u002F.style={draw=none, font=\\scriptsize, fill=white, inner sep=1.5pt},\n  skip\u002F.style={draw=red!70, dashed, text=red!70},\n  edge from parent\u002F.style={draw, ->, >=stealth}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node {$\\{\\}$}\n    child {node {$\\{1\\}$}\n      child {node {$\\{1,2\\}$} edge from parent node[edgelbl,left]{$a_1$}}\n      child {node[skip] {$\\{1,2\\}'$} edge from parent[draw=red!70,dashed] node[edgelbl,right]{$a_2$}}\n      edge from parent node[edgelbl,left]{$a_0{=}1$}}\n    child {node {$\\{2\\}$}\n      child {node {$\\{2,2\\}$} edge from parent node[edgelbl,right]{$a_2$}}\n      edge from parent node[edgelbl,left]{$a_1{=}2$}}\n    child {node[skip] {$\\{2\\}'$}\n      edge from parent[draw=red!70,dashed] node[edgelbl,right]{$a_2{=}2$}};\n\\end{tikzpicture}\n$$\n\nAt the root, $a_2{=}2$ repeats sibling $a_1{=}2$ (here $i>start$), so its whole\nsubtree is pruned as a duplicate. Inside the $\\{1\\}$ branch the same guard fires,\nkilling $\\{1,2\\}'$. But descending from $\\{2\\}$ to $\\{2,2\\}$ is _ancestor_ reuse,\nnot a sibling repeat — there $i=start$, the guard stays silent, and both copies of\n$2$ are legitimately used.\n\nThis same machinery distinguishes two classic problems. In **Combination Sum**,\neach number may be reused unboundedly, so after choosing $a_i$ we recurse with\n`start = i` (do **not** advance); staying on the same element keeps it available.\nIn **Combination Sum II**, each input number may be used at most once _and_\nduplicates exist, so we recurse with `start = i+1` (advance) and apply the\nequal-sibling skip above to avoid duplicate combinations.\n\n$$\n% caption: The one-line difference: reuse-allowed recurses with $start{=}i$ (stay),\n%          use-once recurses with $start{=}i{+}1$ (advance)\n\\begin{tikzpicture}[\n  >=stealth, font=\\small,\n  arr\u002F.style={draw, minimum size=6mm, inner sep=1pt, font=\\small},\n  pick\u002F.style={draw=acc, very thick, minimum size=6mm, inner sep=1pt, font=\\small},\n  ttl\u002F.style={draw=none, font=\\footnotesize, acc},\n  lbl\u002F.style={draw=none, font=\\scriptsize}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\useasboundingbox (-0.9,1.55) rectangle (10.6,-2.5);\n  % ---- left: reuse allowed, start = i ----\n  \\node[ttl] at (1.95,1.25) {reuse allowed: $start \\gets i$};\n  \\foreach \\v\u002F\\x in {a\u002F0, b\u002F0.7, c\u002F1.4, d\u002F2.1} \\node[arr] at (\\x,0) {$\\v$};\n  \\node[pick] at (1.4,0) {$c$};\n  % stay-pointer: next call may pick c again (loop back to same cell)\n  \\draw[->, acc] (1.15,-0.45) .. controls (0.6,-1.1) and (1.4,-1.15) .. (1.4,-0.45);\n  \\node[lbl, acc] at (2.75,-1.05) {next $start = i$};\n  \\node[lbl] at (1.95,-1.75) {$c$ stays in range \\-- can repeat};\n  % ---- right: use once, start = i+1 ----\n  \\node[ttl] at (7.65,1.25) {use once: $start \\gets i{+}1$};\n  \\foreach \\v\u002F\\x in {a\u002F5.7, b\u002F6.4, c\u002F7.1, d\u002F7.8} \\node[arr] at (\\x,0) {$\\v$};\n  \\node[pick] at (7.1,0) {$c$};\n  % advance-pointer: next call starts after c\n  \\draw[->, acc] (7.45,-0.45) -- (7.8,-0.95);\n  \\node[lbl, acc] at (8.7,-1.05) {next $start = i{+}1$};\n  \\node[lbl] at (7.65,-1.7) {$c$ excluded \\-- used at most once};\n\\end{tikzpicture}\n$$\n\n## Pruning: kill infeasible subtrees early\n\nEverything so far enumerates _all_ of a space. Backtracking earns its keep when\nthe problem constrains the answer, because then we can **prune**: refuse to\ndescend into a subtree the moment we can prove it contains no solution. Pruning\nprunes _whole subtrees_, so a single early cut can save exponentially many leaves.\n\nTake **Combination Sum** with a target $T$ over sorted positive numbers. Two\nprunes apply at the point we consider extending `partial` (current sum $s$) by\n$a_i$:\n\n- **Over-target cut.** If $s + a_i > T$, this choice overshoots; and since the\n  array is sorted ascending, _every later_ $a_j \\ge a_i$ overshoots too, so we\n  `break` out of the entire loop, not merely `continue`.\n- **Reachability cut** (a general lower-bound prune). If even the smallest\n  remaining additions cannot reach $T$, abandon the branch.\n\n$$\n% caption: Pruning kills infeasible subtrees early (target $T=5$, choices $\\{2,3,4\\}$)\n\\begin{tikzpicture}[\n  every node\u002F.style={draw, rounded corners, minimum size=7mm, inner sep=3pt, font=\\small},\n  level distance=14mm,\n  level 1\u002F.style={sibling distance=30mm},\n  level 2\u002F.style={sibling distance=16mm},\n  edgelbl\u002F.style={draw=none, font=\\scriptsize},\n  dead\u002F.style={draw=red!75!black, dashed, text=red!75!black},\n  edge from parent\u002F.style={draw, ->, >=stealth}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[draw=acc, text=acc] {$s=0$}\n    child {node[draw=acc, text=acc] {$s=2$}\n      child {node[dead] {$s{=}6\\;\\times$}\n        edge from parent[draw=red!75!black, dashed] node[edgelbl, left] {$+4$}}\n      child {node[draw=acc, text=acc] {$s=5\\;\\surd$}\n        edge from parent[draw=acc] node[edgelbl, right] {$+3$}}\n      edge from parent[draw=acc] node[edgelbl, left] {$+2$}}\n    child {node {$s=3$}\n      child {node[dead] {$s{=}7\\;\\times$}\n        edge from parent[draw=red!75!black, dashed] node[edgelbl, right] {$+4$}}\n      edge from parent node[edgelbl, right] {$+3$}}\n    child {node {$s{=}4$}\n      child {node[dead] {$s{=}8\\;\\times$}\n        edge from parent[draw=red!75!black, dashed] node[edgelbl, right] {$+4$}}\n      edge from parent node[edgelbl, right] {$+4$}};\n\\end{tikzpicture}\n$$\n\nEach branch reaching $s > 5$ (the dashed $\\times$ nodes) is dropped without\ndescending further; the blue path $0 \\to 2 \\to 5$ is the live solution\n$\\{2,3\\}$. Pruning does the heavy lifting: a search that _looks_ exponential can\nrun in milliseconds when the prune severs the bulk of the tree, while a poorly\npruned search of the _same_ size is hopeless. This is why Skiena frames practical\ncombinatorial search as \"the art of pruning.\"[^skiena-bt]\n\n## Complexity: the size of the explored tree\n\nThere is no single formula for \"backtracking complexity\"; the running time is\nsimply **the size of the state-space tree we actually explore**, times the work\nper node. For a _full_ enumeration this is the output size: $\\Theta(n \\cdot 2^n)$\nfor subsets, $\\Theta(n \\cdot n!)$ for permutations, $\\Theta(k \\binom{n}{k})$ for\ncombinations. More generally the cost is $O(\\#\\text{nodes visited} \\times \\text{cost\nper node})$, and for problems whose answers we emit, it is bounded below by\n$\\Omega(\\#\\text{solutions} \\times \\text{size of each})$: we cannot beat the cost\nof writing the output.\n\n> **Remark (The exponential-but-fast distinction).** Backtracking is **exponential in the\n> worst case** — adversarial inputs force exploration of nearly the whole tree.\n> But on typical inputs, pruning collapses the explored tree to a thin sliver of\n> its worst-case size, which is exactly why backtracking solves $n$-queens,\n> Sudoku, and SAT instances far larger than $2^n$ counting would suggest.[^clrs-exhaustive]\n\nThe lever is always the same: a tighter $\\textsc{Prune}$ predicate cuts subtrees\nnearer the root, and the savings compound exponentially with the depth of the cut.\n\n## Takeaways\n\n- **Backtracking** is depth-first search of a **state-space tree**: build a\n  partial solution incrementally, and **abandon** any branch that cannot reach a\n  valid complete solution.\n- The universal template is **choose \u002F explore \u002F un-choose**: a single mutable\n  buffer suffices because the undo step restores it before each sibling is tried.\n- **Subsets** ($2^n$) come from an include\u002Fexclude binary recursion or a\n  forward-only **start index**; **permutations** ($n!$) from a `used[]` array or\n  in-place swapping; **combinations** ($\\binom{n}{k}$) from a start index that\n  forces increasing choices so each set is generated once.\n- **Duplicates** are handled by sorting and skipping equal siblings at the same\n  depth (`if i > start and a[i] == a[i-1] continue`), which drops identical\n  subtrees without losing distinct solutions; **reuse-allowed** variants keep\n  `start = i` instead of advancing.\n- **Pruning**, cutting infeasible or non-improving subtrees early (sum exceeds\n  target, bound can't beat the best), is what separates exponential-but-fast from\n  hopeless; one early cut saves an exponential subtree.\n- Running time is the **size of the explored tree** times per-node work:\n  exponential in the worst case, but tamed to practicality by good pruning on\n  typical inputs.\n\n[^erickson-bt]: **Erickson**, Ch. — Backtracking: incrementally constructing a solution and abandoning partial candidates that cannot be completed.\n[^skiena-bt]: **Skiena**, §7 — Combinatorial Search and Heuristic Methods: the state-space search tree and pruning as the core of efficient exhaustive search.\n[^clrs-exhaustive]: **CLRS**, Ch. — Exhaustive Search: backtracking explores only feasible extensions, exponential in the worst case but far smaller in practice.\n",{"text":7634,"minutes":7635,"time":7636,"words":7637},"9 min read",8.99,539400,1798,{"title":291,"description":7614},[7640,7642,7644],{"book":7570,"ref":7641},"§7 — Combinatorial Search and Heuristic Methods",{"book":7556,"ref":7643},"Ch. — Backtracking",{"book":7589,"ref":7645},"Ch. — Exhaustive Search","available","01.algorithms\u002F09.backtracking\u002F01.backtracking-fundamentals",[294],"hOjHRfxb5K2PpU7Dduh7fpGl6Z0WNJWl3YbZwDnq9Ks",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":7651,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":7652,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":7653,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":7654,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":7655,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":7656,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":7657,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":7658,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":7659,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":7660,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":7661,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":7662,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":7663,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":7664,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":7665,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":7666,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":7667,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":7668,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":7669,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":7670,"\u002Falgorithms\u002Fsequences\u002Ftries":7671,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":7672,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":7673,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":7674,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":7675,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":7676,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":7677,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":7678,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":7679,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":7680,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":7681,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":7682,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":7683,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":7684,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":7685,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":7686,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":7687,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":7688,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":7689,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":7690,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":7691,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":7692,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":7693,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":7694,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":7637,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":7695,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":7696,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":7667,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":7697,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":7698,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":7699,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":7700,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":7683,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":7701,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":7702,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":7663,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":7703,"\u002Falgorithms":7704,"\u002Ftheory-of-computation":7705,"\u002Fcomputer-architecture":7705,"\u002Fphysical-computing":7705,"\u002Fdatabases":7705,"\u002Fdeep-learning":7705},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,1694,1762,1534,1595,1262,1495,1630,2306,2142,107,0,{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":7707,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":7708,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":7709,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":7710,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":7711,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":7712,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":7713,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":7714,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":7715,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":7716,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":7717,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":7718,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":7719,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":7720,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":7721,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":7722,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":7723,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":7724,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":7725,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":7726,"\u002Falgorithms\u002Fsequences\u002Ftries":7727,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":7728,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":7729,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":7730,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":7731,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":7732,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":7733,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":7734,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":7735,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":7736,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":7737,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":7738,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":7739,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":7740,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":7741,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":7742,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":7743,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":7744,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":7745,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":7746,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":7747,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":7748,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":7749,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":7750,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":7751,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":7752,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":7753,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":7754,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":7755,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":7756,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":7757,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":7758,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":7759,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":7760,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":7761,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":7762,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":7763,"\u002Falgorithms":7764,"\u002Ftheory-of-computation":7767,"\u002Fcomputer-architecture":7770,"\u002Fphysical-computing":7773,"\u002Fdatabases":7776,"\u002Fdeep-learning":7779},{"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":7765,"title":7766,"module":376,"summary":376},"\u002Falgorithms","Algorithms",{"path":7768,"title":7769,"module":376,"summary":376},"\u002Ftheory-of-computation","Theory of Computation",{"path":7771,"title":7772,"module":376,"summary":376},"\u002Fcomputer-architecture","Computer Architecture",{"path":7774,"title":7775,"module":376,"summary":376},"\u002Fphysical-computing","Physical Computing",{"path":7777,"title":7778,"module":376,"summary":376},"\u002Fdatabases","Databases",{"path":7780,"title":7781,"module":376,"summary":376},"\u002Fdeep-learning","Deep Learning",1781560527047]