[{"data":1,"prerenderedAt":8623},["ShallowReactive",2],{"nav:algorithms":3,"lesson:\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":374,"ref-card-index":8492,"course-wordcounts":8567},[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":61,"blurb":376,"body":377,"description":8458,"extension":8459,"meta":8460,"module":51,"navigation":8462,"path":62,"practice":8463,"rawbody":8476,"readingTime":8477,"seo":8482,"sources":8483,"status":8488,"stem":8489,"summary":64,"topics":8490,"__hash__":8491},"course\u002F01.algorithms\u002F03.sorting\u002F02.sorting-lower-bounds.md","",{"type":378,"value":379,"toc":8448},"minimark",[380,559,564,781,852,856,887,1360,1383,1542,1875,2804,2808,2811,2872,2903,2966,3083,3146,3241,3313,3862,3969,4043,4411,4414,4758,4942,4983,5600,5785,6239,6297,6773,7048,7052,7102,7199,7202,7319,7678,7736,7740,8205],[381,382,383,387,388,391,392,395,396,456,457,461,462,493,494,498,499,502,503,543,544,554,555,558],"p",{},[384,385,386],"a",{"href":34},"Mergesort",",\n",[384,389,390],{"href":56},"heapsort",", and (in expectation)\n",[384,393,394],{"href":40},"quicksort"," all run in\n",[397,398,401],"span",{"className":399},[400],"katex",[397,402,406],{"className":403,"ariaHidden":405},[404],"katex-html","true",[397,407,410,415,420,425,430,435,445,448,451],{"className":408},[409],"base",[397,411],{"className":412,"style":414},[413],"strut","height:1em;vertical-align:-0.25em;",[397,416,419],{"className":417},[418],"mord","Θ",[397,421,424],{"className":422},[423],"mopen","(",[397,426,429],{"className":427},[418,428],"mathnormal","n",[397,431],{"className":432,"style":434},[433],"mspace","margin-right:0.1667em;",[397,436,439],{"className":437},[438],"mop",[397,440,444],{"className":441,"style":443},[418,442],"mathrm","margin-right:0.0139em;","log",[397,446],{"className":447,"style":434},[433],[397,449,429],{"className":450},[418,428],[397,452,455],{"className":453},[454],"mclose",")",". Insertion sort and the rest do worse. None does ",[458,459,460],"em",{},"better",". It\nis natural to ask whether some cleverer algorithm could break the\n",[397,463,465],{"className":464},[400],[397,466,468],{"className":467,"ariaHidden":405},[404],[397,469,471,475,478,481,487,490],{"className":470},[409],[397,472],{"className":473,"style":474},[413],"height:0.8889em;vertical-align:-0.1944em;",[397,476,429],{"className":477},[418,428],[397,479],{"className":480,"style":434},[433],[397,482,484],{"className":483},[438],[397,485,444],{"className":486,"style":443},[418,442],[397,488],{"className":489,"style":434},[433],[397,491,429],{"className":492},[418,428]," barrier. The striking answer is ",[495,496,497],"strong",{},"no",", not if it learns about\nthe input only by comparing elements. This lesson proves a matching lower bound:\nany ",[495,500,501],{},"comparison sort"," needs ",[397,504,506],{"className":505},[400],[397,507,509],{"className":508,"ariaHidden":405},[404],[397,510,512,515,519,522,525,528,534,537,540],{"className":511},[409],[397,513],{"className":514,"style":414},[413],[397,516,518],{"className":517},[418],"Ω",[397,520,424],{"className":521},[423],[397,523,429],{"className":524},[418,428],[397,526],{"className":527,"style":434},[433],[397,529,531],{"className":530},[438],[397,532,444],{"className":533,"style":443},[418,442],[397,535],{"className":536,"style":434},[433],[397,538,429],{"className":539},[418,428],[397,541,455],{"className":542},[454]," comparisons in the worst case.",[545,546,547],"sup",{},[384,548,553],{"href":549,"ariaDescribedBy":550,"dataFootnoteRef":376,"id":552},"#user-content-fn-clrs-lb",[551],"footnote-label","user-content-fnref-clrs-lb","1","\nThis is one of the rare cases where we can prove a problem ",[458,556,557],{},"hard",", pinning its\ncomplexity from both sides.",[560,561,563],"h2",{"id":562},"the-comparison-model","The comparison model",[381,565,566,567,569,570,707,708,725,726,725,743,725,759,776,777,780],{},"A ",[495,568,501],{}," determines the sorted order using only comparisons between\npairs of input elements. The only questions it may ask are of the form ",[571,572,573,574,706],"q",{},"is ",[397,575,577],{"className":576},[400],[397,578,580,656],{"className":579,"ariaHidden":405},[404],[397,581,583,587,644,648,653],{"className":582},[409],[397,584],{"className":585,"style":586},[413],"height:0.786em;vertical-align:-0.15em;",[397,588,590,593],{"className":589},[418],[397,591,384],{"className":592},[418,428],[397,594,597],{"className":595},[596],"msupsub",[397,598,602,635],{"className":599},[600,601],"vlist-t","vlist-t2",[397,603,606,630],{"className":604},[605],"vlist-r",[397,607,611],{"className":608,"style":610},[609],"vlist","height:0.3117em;",[397,612,614,619],{"style":613},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[397,615],{"className":616,"style":618},[617],"pstrut","height:2.7em;",[397,620,626],{"className":621},[622,623,624,625],"sizing","reset-size6","size3","mtight",[397,627,629],{"className":628},[418,428,625],"i",[397,631,634],{"className":632},[633],"vlist-s","​",[397,636,638],{"className":637},[605],[397,639,642],{"className":640,"style":641},[609],"height:0.15em;",[397,643],{},[397,645],{"className":646,"style":647},[433],"margin-right:0.2778em;",[397,649,652],{"className":650},[651],"mrel","≤",[397,654],{"className":655,"style":647},[433],[397,657,659,663],{"className":658},[409],[397,660],{"className":661,"style":662},[413],"height:0.7167em;vertical-align:-0.2861em;",[397,664,666,669],{"className":665},[418],[397,667,384],{"className":668},[418,428],[397,670,672],{"className":671},[596],[397,673,675,697],{"className":674},[600,601],[397,676,678,694],{"className":677},[605],[397,679,681],{"className":680,"style":610},[609],[397,682,683,686],{"style":613},[397,684],{"className":685,"style":618},[617],[397,687,689],{"className":688},[622,623,624,625],[397,690,693],{"className":691,"style":692},[418,428,625],"margin-right:0.0572em;","j",[397,695,634],{"className":696},[633],[397,698,700],{"className":699},[605],[397,701,704],{"className":702,"style":703},[609],"height:0.2861em;",[397,705],{},"?"," (or ",[397,709,711],{"className":710},[400],[397,712,714],{"className":713,"ariaHidden":405},[404],[397,715,717,721],{"className":716},[409],[397,718],{"className":719,"style":720},[413],"height:0.5782em;vertical-align:-0.0391em;",[397,722,724],{"className":723},[651],"\u003C",", ",[397,727,729],{"className":728},[400],[397,730,732],{"className":731,"ariaHidden":405},[404],[397,733,735,739],{"className":734},[409],[397,736],{"className":737,"style":738},[413],"height:0.7719em;vertical-align:-0.136em;",[397,740,742],{"className":741},[651],"≥",[397,744,746],{"className":745},[400],[397,747,749],{"className":748,"ariaHidden":405},[404],[397,750,752,755],{"className":751},[409],[397,753],{"className":754,"style":720},[413],[397,756,758],{"className":757},[651],">",[397,760,762],{"className":761},[400],[397,763,765],{"className":764,"ariaHidden":405},[404],[397,766,768,772],{"className":767},[409],[397,769],{"className":770,"style":771},[413],"height:0.3669em;",[397,773,775],{"className":774},[651],"=","). It never inspects the elements'\n",[458,778,779],{},"values","; it cannot read a digit, hash a key, or use one as an array index. All\nof insertion, merge, quick, and heap sort live in this model, and so does almost\nevery general-purpose sort.",[381,782,783,784,787,788,851],{},"This restriction is exactly what makes a lower bound possible. Because the only\ninformation the algorithm extracts is the ",[458,785,786],{},"outcomes of comparisons",", we can\naccount for everything it could possibly learn by counting those outcomes. The\nelements' actual values are irrelevant beyond their relative order, so we may\nassume without loss of generality that the input is some permutation of the\ndistinct values ",[397,789,791],{"className":790},[400],[397,792,794],{"className":793,"ariaHidden":405},[404],[397,795,797,800],{"className":796},[409],[397,798],{"className":799,"style":414},[413],[397,801,804,810,813,818,821,825,828,831,835,838,841,844,847],{"className":802},[803],"minner",[397,805,809],{"className":806,"style":808},[423,807],"delimcenter","top:0em;","{",[397,811,553],{"className":812},[418],[397,814,817],{"className":815},[816],"mpunct",",",[397,819],{"className":820,"style":434},[433],[397,822,824],{"className":823},[418],"2",[397,826,817],{"className":827},[816],[397,829],{"className":830,"style":434},[433],[397,832,834],{"className":833},[803],"…",[397,836],{"className":837,"style":434},[433],[397,839,817],{"className":840},[816],[397,842],{"className":843,"style":434},[433],[397,845,429],{"className":846},[418,428],[397,848,850],{"className":849,"style":808},[454,807],"}",".",[560,853,855],{"id":854},"a-sort-is-a-decision-tree","A sort is a decision tree",[381,857,858,859,875,876,879,880],{},"Fix the number of elements ",[397,860,862],{"className":861},[400],[397,863,865],{"className":864,"ariaHidden":405},[404],[397,866,868,872],{"className":867},[409],[397,869],{"className":870,"style":871},[413],"height:0.4306em;",[397,873,429],{"className":874},[418,428]," and fix a comparison sort. We can model its entire\nbehavior as a ",[495,877,878],{},"decision tree",": a binary tree whose internal nodes are\ncomparisons and whose leaves are answers.",[545,881,882],{},[384,883,824],{"href":884,"ariaDescribedBy":885,"dataFootnoteRef":376,"id":886},"#user-content-fn-erickson-dt",[551],"user-content-fnref-erickson-dt",[888,889,890,1044,1268],"ul",{},[891,892,893,894,897,898,934,935],"li",{},"Each ",[495,895,896],{},"internal node"," is labeled ",[397,899,901],{"className":900},[400],[397,902,904,924],{"className":903,"ariaHidden":405},[404],[397,905,907,911,914,917,921],{"className":906},[409],[397,908],{"className":909,"style":910},[413],"height:0.6595em;",[397,912,629],{"className":913},[418,428],[397,915],{"className":916,"style":647},[433],[397,918,920],{"className":919},[651],":",[397,922],{"className":923,"style":647},[433],[397,925,927,931],{"className":926},[409],[397,928],{"className":929,"style":930},[413],"height:0.854em;vertical-align:-0.1944em;",[397,932,693],{"className":933,"style":692},[418,428],", meaning ",[571,936,937,938,991,992,851],{},"compare ",[397,939,941],{"className":940},[400],[397,942,944],{"className":943,"ariaHidden":405},[404],[397,945,947,951],{"className":946},[409],[397,948],{"className":949,"style":950},[413],"height:0.5806em;vertical-align:-0.15em;",[397,952,954,957],{"className":953},[418],[397,955,384],{"className":956},[418,428],[397,958,960],{"className":959},[596],[397,961,963,983],{"className":962},[600,601],[397,964,966,980],{"className":965},[605],[397,967,969],{"className":968,"style":610},[609],[397,970,971,974],{"style":613},[397,972],{"className":973,"style":618},[617],[397,975,977],{"className":976},[622,623,624,625],[397,978,629],{"className":979},[418,428,625],[397,981,634],{"className":982},[633],[397,984,986],{"className":985},[605],[397,987,989],{"className":988,"style":641},[609],[397,990],{}," with ",[397,993,995],{"className":994},[400],[397,996,998],{"className":997,"ariaHidden":405},[404],[397,999,1001,1004],{"className":1000},[409],[397,1002],{"className":1003,"style":662},[413],[397,1005,1007,1010],{"className":1006},[418],[397,1008,384],{"className":1009},[418,428],[397,1011,1013],{"className":1012},[596],[397,1014,1016,1036],{"className":1015},[600,601],[397,1017,1019,1033],{"className":1018},[605],[397,1020,1022],{"className":1021,"style":610},[609],[397,1023,1024,1027],{"style":613},[397,1025],{"className":1026,"style":618},[617],[397,1028,1030],{"className":1029},[622,623,624,625],[397,1031,693],{"className":1032,"style":692},[418,428,625],[397,1034,634],{"className":1035},[633],[397,1037,1039],{"className":1038},[605],[397,1040,1042],{"className":1041,"style":703},[609],[397,1043],{},[891,1045,1046,1047,1050,1051,1158,1159,1267],{},"Its two ",[495,1048,1049],{},"outgoing edges"," are the two outcomes, ",[397,1052,1054],{"className":1053},[400],[397,1055,1057,1112],{"className":1056,"ariaHidden":405},[404],[397,1058,1060,1063,1103,1106,1109],{"className":1059},[409],[397,1061],{"className":1062,"style":586},[413],[397,1064,1066,1069],{"className":1065},[418],[397,1067,384],{"className":1068},[418,428],[397,1070,1072],{"className":1071},[596],[397,1073,1075,1095],{"className":1074},[600,601],[397,1076,1078,1092],{"className":1077},[605],[397,1079,1081],{"className":1080,"style":610},[609],[397,1082,1083,1086],{"style":613},[397,1084],{"className":1085,"style":618},[617],[397,1087,1089],{"className":1088},[622,623,624,625],[397,1090,629],{"className":1091},[418,428,625],[397,1093,634],{"className":1094},[633],[397,1096,1098],{"className":1097},[605],[397,1099,1101],{"className":1100,"style":641},[609],[397,1102],{},[397,1104],{"className":1105,"style":647},[433],[397,1107,652],{"className":1108},[651],[397,1110],{"className":1111,"style":647},[433],[397,1113,1115,1118],{"className":1114},[409],[397,1116],{"className":1117,"style":662},[413],[397,1119,1121,1124],{"className":1120},[418],[397,1122,384],{"className":1123},[418,428],[397,1125,1127],{"className":1126},[596],[397,1128,1130,1150],{"className":1129},[600,601],[397,1131,1133,1147],{"className":1132},[605],[397,1134,1136],{"className":1135,"style":610},[609],[397,1137,1138,1141],{"style":613},[397,1139],{"className":1140,"style":618},[617],[397,1142,1144],{"className":1143},[622,623,624,625],[397,1145,693],{"className":1146,"style":692},[418,428,625],[397,1148,634],{"className":1149},[633],[397,1151,1153],{"className":1152},[605],[397,1154,1156],{"className":1155,"style":703},[609],[397,1157],{}," and\n",[397,1160,1162],{"className":1161},[400],[397,1163,1165,1221],{"className":1164,"ariaHidden":405},[404],[397,1166,1168,1172,1212,1215,1218],{"className":1167},[409],[397,1169],{"className":1170,"style":1171},[413],"height:0.6891em;vertical-align:-0.15em;",[397,1173,1175,1178],{"className":1174},[418],[397,1176,384],{"className":1177},[418,428],[397,1179,1181],{"className":1180},[596],[397,1182,1184,1204],{"className":1183},[600,601],[397,1185,1187,1201],{"className":1186},[605],[397,1188,1190],{"className":1189,"style":610},[609],[397,1191,1192,1195],{"style":613},[397,1193],{"className":1194,"style":618},[617],[397,1196,1198],{"className":1197},[622,623,624,625],[397,1199,629],{"className":1200},[418,428,625],[397,1202,634],{"className":1203},[633],[397,1205,1207],{"className":1206},[605],[397,1208,1210],{"className":1209,"style":641},[609],[397,1211],{},[397,1213],{"className":1214,"style":647},[433],[397,1216,758],{"className":1217},[651],[397,1219],{"className":1220,"style":647},[433],[397,1222,1224,1227],{"className":1223},[409],[397,1225],{"className":1226,"style":662},[413],[397,1228,1230,1233],{"className":1229},[418],[397,1231,384],{"className":1232},[418,428],[397,1234,1236],{"className":1235},[596],[397,1237,1239,1259],{"className":1238},[600,601],[397,1240,1242,1256],{"className":1241},[605],[397,1243,1245],{"className":1244,"style":610},[609],[397,1246,1247,1250],{"style":613},[397,1248],{"className":1249,"style":618},[617],[397,1251,1253],{"className":1252},[622,623,624,625],[397,1254,693],{"className":1255,"style":692},[418,428,625],[397,1257,634],{"className":1258},[633],[397,1260,1262],{"className":1261},[605],[397,1263,1265],{"className":1264,"style":703},[609],[397,1266],{},". The algorithm follows the edge matching the actual data.",[891,1269,893,1270,1273,1274,1359],{},[495,1271,1272],{},"leaf"," is labeled with a permutation\n",[397,1275,1277],{"className":1276},[400],[397,1278,1280],{"className":1279,"ariaHidden":405},[404],[397,1281,1283,1286],{"className":1282},[409],[397,1284],{"className":1285,"style":414},[413],[397,1287,1289,1293,1298,1301,1304,1307,1310,1313,1316,1319,1322,1325,1328,1331,1334,1337,1340,1343,1346,1349,1352,1355],{"className":1288},[803],[397,1290,1292],{"className":1291,"style":808},[423,807],"⟨",[397,1294,1297],{"className":1295,"style":1296},[418,428],"margin-right:0.0359em;","π",[397,1299,424],{"className":1300},[423],[397,1302,553],{"className":1303},[418],[397,1305,455],{"className":1306},[454],[397,1308,817],{"className":1309},[816],[397,1311],{"className":1312,"style":434},[433],[397,1314,1297],{"className":1315,"style":1296},[418,428],[397,1317,424],{"className":1318},[423],[397,1320,824],{"className":1321},[418],[397,1323,455],{"className":1324},[454],[397,1326,817],{"className":1327},[816],[397,1329],{"className":1330,"style":434},[433],[397,1332,834],{"className":1333},[803],[397,1335],{"className":1336,"style":434},[433],[397,1338,817],{"className":1339},[816],[397,1341],{"className":1342,"style":434},[433],[397,1344,1297],{"className":1345,"style":1296},[418,428],[397,1347,424],{"className":1348},[423],[397,1350,429],{"className":1351},[418,428],[397,1353,455],{"className":1354},[454],[397,1356,1358],{"className":1357,"style":808},[454,807],"⟩",", the sorted order the algorithm\ndeclares once it reaches that leaf.",[381,1361,1362,1363,1378,1379,1382],{},"Running the algorithm on a particular input traces a single root-to-leaf path:\nat each node the data picks the branch, and the leaf reached announces the\nordering. The structure of the tree depends only on ",[397,1364,1366],{"className":1365},[400],[397,1367,1369],{"className":1368,"ariaHidden":405},[404],[397,1370,1372,1375],{"className":1371},[409],[397,1373],{"className":1374,"style":871},[413],[397,1376,429],{"className":1377},[418,428],", not on the input; the\ninput merely chooses ",[458,1380,1381],{},"which path"," through the fixed tree gets walked.",[381,1384,1385,1386,1541],{},"Here is the decision tree for sorting three elements ",[397,1387,1389],{"className":1388},[400],[397,1390,1392],{"className":1391,"ariaHidden":405},[404],[397,1393,1395,1398],{"className":1394},[409],[397,1396],{"className":1397,"style":414},[413],[397,1399,1401,1404,1445,1448,1451,1491,1494,1497,1538],{"className":1400},[803],[397,1402,1292],{"className":1403,"style":808},[423,807],[397,1405,1407,1410],{"className":1406},[418],[397,1408,384],{"className":1409},[418,428],[397,1411,1413],{"className":1412},[596],[397,1414,1416,1437],{"className":1415},[600,601],[397,1417,1419,1434],{"className":1418},[605],[397,1420,1423],{"className":1421,"style":1422},[609],"height:0.3011em;",[397,1424,1425,1428],{"style":613},[397,1426],{"className":1427,"style":618},[617],[397,1429,1431],{"className":1430},[622,623,624,625],[397,1432,553],{"className":1433},[418,625],[397,1435,634],{"className":1436},[633],[397,1438,1440],{"className":1439},[605],[397,1441,1443],{"className":1442,"style":641},[609],[397,1444],{},[397,1446,817],{"className":1447},[816],[397,1449],{"className":1450,"style":434},[433],[397,1452,1454,1457],{"className":1453},[418],[397,1455,384],{"className":1456},[418,428],[397,1458,1460],{"className":1459},[596],[397,1461,1463,1483],{"className":1462},[600,601],[397,1464,1466,1480],{"className":1465},[605],[397,1467,1469],{"className":1468,"style":1422},[609],[397,1470,1471,1474],{"style":613},[397,1472],{"className":1473,"style":618},[617],[397,1475,1477],{"className":1476},[622,623,624,625],[397,1478,824],{"className":1479},[418,625],[397,1481,634],{"className":1482},[633],[397,1484,1486],{"className":1485},[605],[397,1487,1489],{"className":1488,"style":641},[609],[397,1490],{},[397,1492,817],{"className":1493},[816],[397,1495],{"className":1496,"style":434},[433],[397,1498,1500,1503],{"className":1499},[418],[397,1501,384],{"className":1502},[418,428],[397,1504,1506],{"className":1505},[596],[397,1507,1509,1530],{"className":1508},[600,601],[397,1510,1512,1527],{"className":1511},[605],[397,1513,1515],{"className":1514,"style":1422},[609],[397,1516,1517,1520],{"style":613},[397,1518],{"className":1519,"style":618},[617],[397,1521,1523],{"className":1522},[622,623,624,625],[397,1524,1526],{"className":1525},[418,625],"3",[397,1528,634],{"className":1529},[633],[397,1531,1533],{"className":1532},[605],[397,1534,1536],{"className":1535,"style":641},[609],[397,1537],{},[397,1539,1358],{"className":1540,"style":808},[454,807],";\neach leaf names the order from smallest to largest.",[1543,1544,1548,1869],"figure",{"className":1545},[1546,1547],"tikz-figure","tikz-diagram-rendered",[1549,1550,1555],"svg",{"xmlns":1551,"width":1552,"height":1553,"viewBox":1554},"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg","299.576","183.876","-75 -75 224.682 137.907",[1556,1557,1560,1565,1590,1593,1613,1616,1624,1627,1641,1644,1662,1665,1672,1675,1686,1689,1696,1699,1711,1722,1733,1736,1754,1757,1775,1778,1785,1788,1799,1802,1809,1812,1823,1834,1837,1844,1847,1858],"g",{"stroke":1558,"style":1559},"currentColor","stroke-miterlimit:10;stroke-width:.4",[1561,1562],"path",{"fill":1563,"d":1564},"none","M50.743-60.064c0-6.631-5.375-12.006-12.006-12.006-6.63 0-12.005 5.375-12.005 12.006 0 6.63 5.375 12.005 12.005 12.005s12.006-5.375 12.006-12.005Zm-12.006 0",[1556,1566,1569,1578,1584],{"stroke":1563,"fontFamily":1567,"fontSize":1568},"cmr9","9",[1556,1570,1572],{"transform":1571},"translate(-6.937 2.9)",[1561,1573],{"d":1574,"fill":1558,"stroke":1558,"className":1575,"style":1577},"M42.644-60.064L39.612-60.064L39.612-60.380Q40.763-60.380 40.763-60.675L40.763-65.399Q40.275-65.166 39.554-65.166L39.554-65.482Q40.684-65.482 41.246-66.058L41.391-66.058Q41.426-66.058 41.459-66.025Q41.492-65.992 41.492-65.957L41.492-60.675Q41.492-60.380 42.644-60.380",[1576],"tikz-text","stroke-width:0.270",[1556,1579,1580],{"transform":1571},[1561,1581],{"d":1582,"fill":1558,"stroke":1558,"className":1583,"style":1577},"M45.163-60.569Q45.163-60.697 45.232-60.813Q45.300-60.930 45.416-61Q45.533-61.070 45.669-61.070Q45.871-61.070 46.023-60.923Q46.174-60.776 46.174-60.569Q46.174-60.363 46.025-60.213Q45.875-60.064 45.669-60.064Q45.458-60.064 45.311-60.216Q45.163-60.367 45.163-60.569M45.163-63.439Q45.163-63.637 45.308-63.791Q45.453-63.944 45.669-63.944Q45.805-63.944 45.921-63.876Q46.038-63.808 46.106-63.692Q46.174-63.575 46.174-63.439Q46.174-63.237 46.023-63.085Q45.871-62.934 45.669-62.934Q45.462-62.934 45.313-63.087Q45.163-63.241 45.163-63.439",[1576],[1556,1585,1586],{"transform":1571},[1561,1587],{"d":1588,"fill":1558,"stroke":1558,"className":1589,"style":1577},"M51.894-60.064L48.444-60.064L48.444-60.297Q48.444-60.310 48.475-60.341L49.929-61.918Q50.395-62.415 50.648-62.720Q50.901-63.026 51.092-63.437Q51.283-63.848 51.283-64.287Q51.283-64.876 50.960-65.309Q50.637-65.742 50.057-65.742Q49.793-65.742 49.547-65.632Q49.301-65.522 49.125-65.335Q48.949-65.148 48.853-64.898L48.932-64.898Q49.134-64.898 49.277-64.762Q49.420-64.626 49.420-64.410Q49.420-64.204 49.277-64.065Q49.134-63.927 48.932-63.927Q48.730-63.927 48.587-64.070Q48.444-64.212 48.444-64.410Q48.444-64.872 48.681-65.245Q48.919-65.619 49.319-65.838Q49.718-66.058 50.167-66.058Q50.690-66.058 51.144-65.843Q51.599-65.627 51.872-65.228Q52.144-64.828 52.144-64.287Q52.144-63.892 51.973-63.538Q51.801-63.184 51.536-62.905Q51.270-62.626 50.819-62.241Q50.369-61.857 50.290-61.782L49.266-60.820L50.083-60.820Q50.734-60.820 51.171-60.831Q51.608-60.842 51.639-60.864Q51.709-60.947 51.764-61.187Q51.819-61.426 51.859-61.694L52.144-61.694",[1576],[1561,1591],{"fill":1563,"d":1592},"M-14.698-23.076c0-6.63-5.375-12.005-12.006-12.005-6.63 0-12.005 5.375-12.005 12.005s5.375 12.006 12.005 12.006 12.006-5.375 12.006-12.006Zm-12.006 0",[1556,1594,1595,1602,1607],{"stroke":1563,"fontFamily":1567,"fontSize":1568},[1556,1596,1598],{"transform":1597},"translate(-72.379 39.889)",[1561,1599],{"d":1600,"fill":1558,"stroke":1558,"className":1601,"style":1577},"M42.644-60.064L39.194-60.064L39.194-60.297Q39.194-60.310 39.225-60.341L40.679-61.918Q41.145-62.415 41.398-62.720Q41.651-63.026 41.842-63.437Q42.033-63.848 42.033-64.287Q42.033-64.876 41.710-65.309Q41.387-65.742 40.807-65.742Q40.543-65.742 40.297-65.632Q40.051-65.522 39.875-65.335Q39.699-65.148 39.603-64.898L39.682-64.898Q39.884-64.898 40.027-64.762Q40.170-64.626 40.170-64.410Q40.170-64.204 40.027-64.065Q39.884-63.927 39.682-63.927Q39.480-63.927 39.337-64.070Q39.194-64.212 39.194-64.410Q39.194-64.872 39.431-65.245Q39.669-65.619 40.069-65.838Q40.468-66.058 40.917-66.058Q41.440-66.058 41.894-65.843Q42.349-65.627 42.622-65.228Q42.894-64.828 42.894-64.287Q42.894-63.892 42.723-63.538Q42.551-63.184 42.286-62.905Q42.020-62.626 41.569-62.241Q41.119-61.857 41.040-61.782L40.016-60.820L40.833-60.820Q41.484-60.820 41.921-60.831Q42.358-60.842 42.389-60.864Q42.459-60.947 42.514-61.187Q42.569-61.426 42.609-61.694L42.894-61.694",[1576],[1556,1603,1604],{"transform":1597},[1561,1605],{"d":1582,"fill":1558,"stroke":1558,"className":1606,"style":1577},[1576],[1556,1608,1609],{"transform":1597},[1561,1610],{"d":1611,"fill":1558,"stroke":1558,"className":1612,"style":1577},"M48.888-60.785L48.844-60.785Q49.046-60.468 49.433-60.310Q49.820-60.152 50.246-60.152Q50.782-60.152 51.021-60.587Q51.261-61.022 51.261-61.602Q51.261-62.182 51.015-62.622Q50.769-63.061 50.237-63.061L49.617-63.061Q49.591-63.061 49.558-63.090Q49.525-63.118 49.525-63.140L49.525-63.241Q49.525-63.272 49.554-63.296Q49.582-63.320 49.617-63.320L50.136-63.360Q50.602-63.360 50.848-63.832Q51.094-64.305 51.094-64.823Q51.094-65.250 50.881-65.524Q50.668-65.799 50.246-65.799Q49.903-65.799 49.578-65.669Q49.253-65.540 49.068-65.285L49.094-65.285Q49.297-65.285 49.433-65.144Q49.569-65.003 49.569-64.806Q49.569-64.608 49.435-64.474Q49.301-64.340 49.103-64.340Q48.901-64.340 48.763-64.474Q48.624-64.608 48.624-64.806Q48.624-65.395 49.127-65.726Q49.631-66.058 50.246-66.058Q50.624-66.058 51.026-65.918Q51.428-65.777 51.696-65.498Q51.964-65.219 51.964-64.823Q51.964-64.274 51.610-63.837Q51.257-63.399 50.716-63.215Q51.107-63.136 51.452-62.912Q51.797-62.688 52.008-62.347Q52.219-62.006 52.219-61.611Q52.219-61.229 52.056-60.906Q51.894-60.583 51.602-60.347Q51.309-60.112 50.962-59.989Q50.615-59.866 50.246-59.866Q49.798-59.866 49.367-60.027Q48.936-60.187 48.655-60.514Q48.374-60.842 48.374-61.299Q48.374-61.514 48.521-61.657Q48.668-61.800 48.888-61.800Q49.099-61.800 49.244-61.655Q49.389-61.510 49.389-61.299Q49.389-61.088 49.242-60.936Q49.094-60.785 48.888-60.785",[1576],[1561,1614],{"fill":1563,"d":1615},"m28.112-54.059-44.19 24.978M-54.112 5.377h-10.625a4 4 0 0 0-4 4v9.072a4 4 0 0 0 4 4h10.625a4 4 0 0 0 4-4V9.377a4 4 0 0 0-4-4Zm-14.625 17.072",[1556,1617,1619],{"transform":1618},"translate(-104.141 76.233)",[1561,1620],{"d":1621,"fill":1558,"stroke":1558,"className":1622,"style":1623},"M42.063-60.064L39.533-60.064L39.533-60.344Q40.501-60.344 40.501-60.553L40.501-64.172Q40.108-63.984 39.486-63.984L39.486-64.265Q39.903-64.265 40.267-64.366Q40.631-64.466 40.887-64.712L41.013-64.712Q41.078-64.695 41.095-64.627L41.095-60.553Q41.095-60.344 42.063-60.344L42.063-60.064M46.045-60.064L43.160-60.064L43.160-60.266Q43.160-60.296 43.187-60.324L44.435-61.541Q44.507-61.616 44.549-61.658Q44.592-61.701 44.671-61.780Q45.084-62.193 45.315-62.551Q45.546-62.908 45.546-63.332Q45.546-63.564 45.467-63.767Q45.388-63.971 45.247-64.121Q45.105-64.272 44.910-64.352Q44.715-64.432 44.483-64.432Q44.172-64.432 43.914-64.273Q43.655-64.114 43.526-63.837L43.546-63.837Q43.714-63.837 43.821-63.726Q43.929-63.615 43.929-63.451Q43.929-63.294 43.820-63.181Q43.710-63.068 43.546-63.068Q43.385-63.068 43.273-63.181Q43.160-63.294 43.160-63.451Q43.160-63.827 43.368-64.114Q43.577-64.401 43.912-64.557Q44.247-64.712 44.602-64.712Q45.026-64.712 45.405-64.554Q45.785-64.395 46.019-64.078Q46.253-63.762 46.253-63.332Q46.253-63.021 46.113-62.752Q45.973-62.484 45.768-62.279Q45.563-62.074 45.200-61.792Q44.838-61.510 44.729-61.414L43.874-60.686L44.517-60.686Q44.780-60.686 45.069-60.688Q45.358-60.689 45.576-60.698Q45.795-60.707 45.812-60.724Q45.874-60.789 45.911-60.956Q45.949-61.124 45.987-61.366L46.253-61.366L46.045-60.064M47.497-60.611Q47.617-60.454 47.808-60.355Q48-60.255 48.215-60.216Q48.430-60.177 48.653-60.177Q48.950-60.177 49.145-60.332Q49.340-60.488 49.430-60.742Q49.521-60.997 49.521-61.281Q49.521-61.575 49.428-61.826Q49.336-62.077 49.138-62.233Q48.940-62.388 48.646-62.388L48.130-62.388Q48.102-62.388 48.077-62.414Q48.051-62.439 48.051-62.463L48.051-62.535Q48.051-62.566 48.077-62.588Q48.102-62.610 48.130-62.610L48.570-62.641Q48.933-62.641 49.153-62.998Q49.374-63.356 49.374-63.745Q49.374-64.073 49.179-64.277Q48.984-64.480 48.653-64.480Q48.365-64.480 48.112-64.396Q47.860-64.313 47.695-64.125Q47.842-64.125 47.943-64.010Q48.044-63.896 48.044-63.745Q48.044-63.595 47.938-63.485Q47.832-63.376 47.675-63.376Q47.514-63.376 47.405-63.485Q47.296-63.595 47.296-63.745Q47.296-64.070 47.504-64.289Q47.713-64.507 48.029-64.610Q48.345-64.712 48.653-64.712Q48.970-64.712 49.299-64.608Q49.627-64.504 49.854-64.282Q50.081-64.060 50.081-63.745Q50.081-63.311 49.794-62.986Q49.507-62.662 49.073-62.515Q49.384-62.450 49.664-62.284Q49.945-62.118 50.122-61.860Q50.300-61.602 50.300-61.281Q50.300-60.871 50.056-60.561Q49.811-60.252 49.430-60.088Q49.049-59.924 48.653-59.924Q48.283-59.924 47.926-60.037Q47.569-60.149 47.325-60.399Q47.080-60.648 47.080-61.018Q47.080-61.189 47.196-61.301Q47.313-61.414 47.484-61.414Q47.593-61.414 47.684-61.363Q47.774-61.312 47.829-61.219Q47.883-61.127 47.883-61.018Q47.883-60.850 47.771-60.731Q47.658-60.611 47.497-60.611",[1576],"stroke-width:0.210",[1561,1625],{"fill":1563,"d":1626},"m-34.791-13.935-16.91 19.112",[1556,1628,1630,1633],{"fill":1629},"var(--tk-bg)",[1561,1631],{"stroke":1563,"d":1632},"M-54.224.98h10.778V-9.738h-10.778Z",[1556,1634,1636],{"transform":1635},"translate(-91.461 58.185)",[1561,1637],{"d":1638,"fill":1558,"stroke":1558,"className":1639,"style":1640},"M45.495-58.692L39.758-58.692Q39.675-58.692 39.621-58.755Q39.567-58.819 39.567-58.892Q39.567-58.975 39.621-59.034Q39.675-59.092 39.758-59.092L45.495-59.092Q45.573-59.092 45.624-59.034Q45.675-58.975 45.675-58.892Q45.675-58.819 45.624-58.755Q45.573-58.692 45.495-58.692M45.407-60.655L39.665-63.365Q39.567-63.394 39.567-63.536Q39.567-63.663 39.699-63.716L45.407-66.412Q45.426-66.426 45.475-66.426Q45.558-66.426 45.617-66.368Q45.675-66.309 45.675-66.226Q45.675-66.094 45.558-66.045L40.236-63.536L45.588-61.006Q45.675-60.958 45.675-60.835Q45.675-60.748 45.617-60.691Q45.558-60.635 45.475-60.635Q45.426-60.635 45.407-60.655",[1576],"stroke-width:0.300",[1561,1642],{"fill":1563,"d":1643},"M18.022 13.913c0-6.63-5.375-12.006-12.005-12.006S-5.99 7.282-5.99 13.913c0 6.63 5.375 12.005 12.006 12.005 6.63 0 12.005-5.375 12.005-12.005Zm-12.005 0",[1556,1645,1646,1652,1657],{"stroke":1563,"fontFamily":1567,"fontSize":1568},[1556,1647,1649],{"transform":1648},"translate(-39.658 76.877)",[1561,1650],{"d":1574,"fill":1558,"stroke":1558,"className":1651,"style":1577},[1576],[1556,1653,1654],{"transform":1648},[1561,1655],{"d":1582,"fill":1558,"stroke":1558,"className":1656,"style":1577},[1576],[1556,1658,1659],{"transform":1648},[1561,1660],{"d":1611,"fill":1558,"stroke":1558,"className":1661,"style":1577},[1576],[1561,1663],{"fill":1563,"d":1664},"M-18.617-13.934-2.07 4.77M-10.01 42.366h-10.625a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h10.624a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4Zm-14.625 17.071",[1556,1666,1668],{"transform":1667},"translate(-60.04 113.221)",[1561,1669],{"d":1670,"fill":1558,"stroke":1558,"className":1671,"style":1623},"M42.063-60.064L39.533-60.064L39.533-60.344Q40.501-60.344 40.501-60.553L40.501-64.172Q40.108-63.984 39.486-63.984L39.486-64.265Q39.903-64.265 40.267-64.366Q40.631-64.466 40.887-64.712L41.013-64.712Q41.078-64.695 41.095-64.627L41.095-60.553Q41.095-60.344 42.063-60.344L42.063-60.064M43.515-60.611Q43.635-60.454 43.826-60.355Q44.018-60.255 44.233-60.216Q44.448-60.177 44.671-60.177Q44.968-60.177 45.163-60.332Q45.358-60.488 45.448-60.742Q45.539-60.997 45.539-61.281Q45.539-61.575 45.446-61.826Q45.354-62.077 45.156-62.233Q44.958-62.388 44.664-62.388L44.148-62.388Q44.120-62.388 44.095-62.414Q44.069-62.439 44.069-62.463L44.069-62.535Q44.069-62.566 44.095-62.588Q44.120-62.610 44.148-62.610L44.589-62.641Q44.951-62.641 45.171-62.998Q45.392-63.356 45.392-63.745Q45.392-64.073 45.197-64.277Q45.002-64.480 44.671-64.480Q44.383-64.480 44.131-64.396Q43.878-64.313 43.714-64.125Q43.861-64.125 43.961-64.010Q44.062-63.896 44.062-63.745Q44.062-63.595 43.956-63.485Q43.850-63.376 43.693-63.376Q43.532-63.376 43.423-63.485Q43.314-63.595 43.314-63.745Q43.314-64.070 43.522-64.289Q43.731-64.507 44.047-64.610Q44.363-64.712 44.671-64.712Q44.988-64.712 45.317-64.608Q45.645-64.504 45.872-64.282Q46.099-64.060 46.099-63.745Q46.099-63.311 45.812-62.986Q45.525-62.662 45.091-62.515Q45.402-62.450 45.682-62.284Q45.963-62.118 46.140-61.860Q46.318-61.602 46.318-61.281Q46.318-60.871 46.074-60.561Q45.829-60.252 45.448-60.088Q45.067-59.924 44.671-59.924Q44.301-59.924 43.944-60.037Q43.587-60.149 43.343-60.399Q43.098-60.648 43.098-61.018Q43.098-61.189 43.215-61.301Q43.331-61.414 43.502-61.414Q43.611-61.414 43.702-61.363Q43.792-61.312 43.847-61.219Q43.902-61.127 43.902-61.018Q43.902-60.850 43.789-60.731Q43.676-60.611 43.515-60.611M50.027-60.064L47.142-60.064L47.142-60.266Q47.142-60.296 47.169-60.324L48.417-61.541Q48.488-61.616 48.531-61.658Q48.574-61.701 48.653-61.780Q49.066-62.193 49.297-62.551Q49.528-62.908 49.528-63.332Q49.528-63.564 49.449-63.767Q49.370-63.971 49.228-64.121Q49.087-64.272 48.892-64.352Q48.697-64.432 48.465-64.432Q48.154-64.432 47.895-64.273Q47.637-64.114 47.508-63.837L47.528-63.837Q47.695-63.837 47.803-63.726Q47.911-63.615 47.911-63.451Q47.911-63.294 47.801-63.181Q47.692-63.068 47.528-63.068Q47.367-63.068 47.255-63.181Q47.142-63.294 47.142-63.451Q47.142-63.827 47.350-64.114Q47.559-64.401 47.894-64.557Q48.229-64.712 48.584-64.712Q49.008-64.712 49.387-64.554Q49.767-64.395 50.001-64.078Q50.235-63.762 50.235-63.332Q50.235-63.021 50.095-62.752Q49.955-62.484 49.750-62.279Q49.545-62.074 49.182-61.792Q48.820-61.510 48.711-61.414L47.856-60.686L48.499-60.686Q48.762-60.686 49.051-60.688Q49.340-60.689 49.558-60.698Q49.777-60.707 49.794-60.724Q49.856-60.789 49.893-60.956Q49.931-61.124 49.968-61.366L50.235-61.366",[1576],[1561,1673],{"fill":1563,"d":1674},"m-.083 24.485-10.202 17.68",[1556,1676,1677,1680],{"fill":1629},[1561,1678],{"stroke":1563,"d":1679},"M-16.162 38.685h10.778v-10.72h-10.778Z",[1556,1681,1683],{"transform":1682},"translate(-53.4 95.89)",[1561,1684],{"d":1638,"fill":1558,"stroke":1558,"className":1685,"style":1640},[1576],[1561,1687],{"fill":1563,"d":1688},"M32.669 42.366H22.044a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4H32.67a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4ZM18.044 59.437",[1556,1690,1692],{"transform":1691},"translate(-17.36 113.221)",[1561,1693],{"d":1694,"fill":1558,"stroke":1558,"className":1695,"style":1623},"M39.533-60.611Q39.653-60.454 39.844-60.355Q40.036-60.255 40.251-60.216Q40.466-60.177 40.689-60.177Q40.986-60.177 41.181-60.332Q41.376-60.488 41.466-60.742Q41.557-60.997 41.557-61.281Q41.557-61.575 41.465-61.826Q41.372-62.077 41.174-62.233Q40.976-62.388 40.682-62.388L40.166-62.388Q40.138-62.388 40.113-62.414Q40.087-62.439 40.087-62.463L40.087-62.535Q40.087-62.566 40.113-62.588Q40.138-62.610 40.166-62.610L40.607-62.641Q40.969-62.641 41.189-62.998Q41.410-63.356 41.410-63.745Q41.410-64.073 41.215-64.277Q41.020-64.480 40.689-64.480Q40.402-64.480 40.149-64.396Q39.896-64.313 39.732-64.125Q39.879-64.125 39.979-64.010Q40.080-63.896 40.080-63.745Q40.080-63.595 39.974-63.485Q39.868-63.376 39.711-63.376Q39.550-63.376 39.441-63.485Q39.332-63.595 39.332-63.745Q39.332-64.070 39.540-64.289Q39.749-64.507 40.065-64.610Q40.381-64.712 40.689-64.712Q41.007-64.712 41.335-64.608Q41.663-64.504 41.890-64.282Q42.117-64.060 42.117-63.745Q42.117-63.311 41.830-62.986Q41.543-62.662 41.109-62.515Q41.420-62.450 41.700-62.284Q41.981-62.118 42.158-61.860Q42.336-61.602 42.336-61.281Q42.336-60.871 42.092-60.561Q41.847-60.252 41.466-60.088Q41.085-59.924 40.689-59.924Q40.320-59.924 39.962-60.037Q39.605-60.149 39.361-60.399Q39.116-60.648 39.116-61.018Q39.116-61.189 39.233-61.301Q39.349-61.414 39.520-61.414Q39.629-61.414 39.720-61.363Q39.810-61.312 39.865-61.219Q39.920-61.127 39.920-61.018Q39.920-60.850 39.807-60.731Q39.694-60.611 39.533-60.611M46.045-60.064L43.515-60.064L43.515-60.344Q44.483-60.344 44.483-60.553L44.483-64.172Q44.090-63.984 43.467-63.984L43.467-64.265Q43.884-64.265 44.248-64.366Q44.612-64.466 44.869-64.712L44.995-64.712Q45.060-64.695 45.077-64.627L45.077-60.553Q45.077-60.344 46.045-60.344L46.045-60.064M50.027-60.064L47.142-60.064L47.142-60.266Q47.142-60.296 47.169-60.324L48.417-61.541Q48.488-61.616 48.531-61.658Q48.574-61.701 48.653-61.780Q49.066-62.193 49.297-62.551Q49.528-62.908 49.528-63.332Q49.528-63.564 49.449-63.767Q49.370-63.971 49.228-64.121Q49.087-64.272 48.892-64.352Q48.697-64.432 48.465-64.432Q48.154-64.432 47.895-64.273Q47.637-64.114 47.508-63.837L47.528-63.837Q47.695-63.837 47.803-63.726Q47.911-63.615 47.911-63.451Q47.911-63.294 47.801-63.181Q47.692-63.068 47.528-63.068Q47.367-63.068 47.255-63.181Q47.142-63.294 47.142-63.451Q47.142-63.827 47.350-64.114Q47.559-64.401 47.894-64.557Q48.229-64.712 48.584-64.712Q49.008-64.712 49.387-64.554Q49.767-64.395 50.001-64.078Q50.235-63.762 50.235-63.332Q50.235-63.021 50.095-62.752Q49.955-62.484 49.750-62.279Q49.545-62.074 49.182-61.792Q48.820-61.510 48.711-61.414L47.856-60.686L48.499-60.686Q48.762-60.686 49.051-60.688Q49.340-60.689 49.558-60.698Q49.777-60.707 49.794-60.724Q49.856-60.789 49.893-60.956Q49.931-61.124 49.968-61.366L50.235-61.366",[1576],[1561,1697],{"fill":1563,"d":1698},"m12.117 24.485 10.202 17.68",[1556,1700,1701,1704],{"fill":1629},[1561,1702],{"stroke":1563,"d":1703},"M17.418 37.716h10.778v-8.782H17.418Z",[1556,1705,1707],{"transform":1706},"translate(-19.82 95.89)",[1561,1708],{"d":1709,"fill":1558,"stroke":1558,"className":1710,"style":1640},"M39.567-59.864Q39.567-59.991 39.699-60.054L45.007-62.564L39.665-65.093Q39.567-65.123 39.567-65.264Q39.567-65.333 39.623-65.398Q39.679-65.464 39.767-65.464Q39.787-65.464 39.845-65.445L45.588-62.735Q45.675-62.691 45.675-62.564Q45.675-62.432 45.558-62.383L39.845-59.683Q39.787-59.664 39.767-59.664Q39.679-59.664 39.623-59.730Q39.567-59.795 39.567-59.864",[1576],[1556,1712,1713,1716],{"fill":1629},[1561,1714],{"stroke":1563,"d":1715},"M-10.144-.19H.634v-8.783h-10.778Z",[1556,1717,1719],{"transform":1718},"translate(-47.381 57.983)",[1561,1720],{"d":1709,"fill":1558,"stroke":1558,"className":1721,"style":1640},[1576],[1556,1723,1724,1727],{"fill":1629},[1561,1725],{"stroke":1563,"d":1726},"M-4.961-36.21H5.817v-10.72H-4.961Z",[1556,1728,1730],{"transform":1729},"translate(-42.198 20.994)",[1561,1731],{"d":1638,"fill":1558,"stroke":1558,"className":1732,"style":1640},[1576],[1561,1734],{"fill":1563,"d":1735},"M116.184-23.076c0-6.63-5.375-12.005-12.005-12.005s-12.006 5.375-12.006 12.005S97.548-11.07 104.18-11.07c6.63 0 12.005-5.375 12.005-12.006Zm-12.005 0",[1556,1737,1738,1744,1749],{"stroke":1563,"fontFamily":1567,"fontSize":1568},[1556,1739,1741],{"transform":1740},"translate(58.504 39.889)",[1561,1742],{"d":1600,"fill":1558,"stroke":1558,"className":1743,"style":1577},[1576],[1556,1745,1746],{"transform":1740},[1561,1747],{"d":1582,"fill":1558,"stroke":1558,"className":1748,"style":1577},[1576],[1556,1750,1751],{"transform":1740},[1561,1752],{"d":1611,"fill":1558,"stroke":1558,"className":1753,"style":1577},[1576],[1561,1755],{"fill":1563,"d":1756},"m49.363-54.059 44.19 24.978M83.464 13.913c0-6.63-5.375-12.006-12.006-12.006-6.63 0-12.005 5.375-12.005 12.006 0 6.63 5.375 12.005 12.005 12.005s12.006-5.375 12.006-12.005Zm-12.006 0",[1556,1758,1759,1765,1770],{"stroke":1563,"fontFamily":1567,"fontSize":1568},[1556,1760,1762],{"transform":1761},"translate(25.783 76.877)",[1561,1763],{"d":1574,"fill":1558,"stroke":1558,"className":1764,"style":1577},[1576],[1556,1766,1767],{"transform":1761},[1561,1768],{"d":1582,"fill":1558,"stroke":1558,"className":1769,"style":1577},[1576],[1556,1771,1772],{"transform":1761},[1561,1773],{"d":1611,"fill":1558,"stroke":1558,"className":1774,"style":1577},[1576],[1561,1776],{"fill":1563,"d":1777},"M96.092-13.934 79.545 4.77M55.43 42.366H44.807a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4h10.625a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4ZM40.807 59.437",[1556,1779,1781],{"transform":1780},"translate(5.402 113.221)",[1561,1782],{"d":1783,"fill":1558,"stroke":1558,"className":1784,"style":1623},"M42.063-60.064L39.178-60.064L39.178-60.266Q39.178-60.296 39.205-60.324L40.453-61.541Q40.525-61.616 40.567-61.658Q40.610-61.701 40.689-61.780Q41.102-62.193 41.333-62.551Q41.564-62.908 41.564-63.332Q41.564-63.564 41.485-63.767Q41.406-63.971 41.265-64.121Q41.123-64.272 40.928-64.352Q40.733-64.432 40.501-64.432Q40.190-64.432 39.932-64.273Q39.674-64.114 39.544-63.837L39.564-63.837Q39.732-63.837 39.839-63.726Q39.947-63.615 39.947-63.451Q39.947-63.294 39.838-63.181Q39.728-63.068 39.564-63.068Q39.404-63.068 39.291-63.181Q39.178-63.294 39.178-63.451Q39.178-63.827 39.386-64.114Q39.595-64.401 39.930-64.557Q40.265-64.712 40.620-64.712Q41.044-64.712 41.424-64.554Q41.803-64.395 42.037-64.078Q42.271-63.762 42.271-63.332Q42.271-63.021 42.131-62.752Q41.991-62.484 41.786-62.279Q41.581-62.074 41.218-61.792Q40.856-61.510 40.747-61.414L39.892-60.686L40.535-60.686Q40.798-60.686 41.087-60.688Q41.376-60.689 41.594-60.698Q41.813-60.707 41.830-60.724Q41.892-60.789 41.929-60.956Q41.967-61.124 42.005-61.366L42.271-61.366L42.063-60.064M46.045-60.064L43.515-60.064L43.515-60.344Q44.483-60.344 44.483-60.553L44.483-64.172Q44.090-63.984 43.467-63.984L43.467-64.265Q43.884-64.265 44.248-64.366Q44.612-64.466 44.869-64.712L44.995-64.712Q45.060-64.695 45.077-64.627L45.077-60.553Q45.077-60.344 46.045-60.344L46.045-60.064M47.497-60.611Q47.617-60.454 47.808-60.355Q48-60.255 48.215-60.216Q48.430-60.177 48.653-60.177Q48.950-60.177 49.145-60.332Q49.340-60.488 49.430-60.742Q49.521-60.997 49.521-61.281Q49.521-61.575 49.428-61.826Q49.336-62.077 49.138-62.233Q48.940-62.388 48.646-62.388L48.130-62.388Q48.102-62.388 48.077-62.414Q48.051-62.439 48.051-62.463L48.051-62.535Q48.051-62.566 48.077-62.588Q48.102-62.610 48.130-62.610L48.570-62.641Q48.933-62.641 49.153-62.998Q49.374-63.356 49.374-63.745Q49.374-64.073 49.179-64.277Q48.984-64.480 48.653-64.480Q48.365-64.480 48.112-64.396Q47.860-64.313 47.695-64.125Q47.842-64.125 47.943-64.010Q48.044-63.896 48.044-63.745Q48.044-63.595 47.938-63.485Q47.832-63.376 47.675-63.376Q47.514-63.376 47.405-63.485Q47.296-63.595 47.296-63.745Q47.296-64.070 47.504-64.289Q47.713-64.507 48.029-64.610Q48.345-64.712 48.653-64.712Q48.970-64.712 49.299-64.608Q49.627-64.504 49.854-64.282Q50.081-64.060 50.081-63.745Q50.081-63.311 49.794-62.986Q49.507-62.662 49.073-62.515Q49.384-62.450 49.664-62.284Q49.945-62.118 50.122-61.860Q50.300-61.602 50.300-61.281Q50.300-60.871 50.056-60.561Q49.811-60.252 49.430-60.088Q49.049-59.924 48.653-59.924Q48.283-59.924 47.926-60.037Q47.569-60.149 47.325-60.399Q47.080-60.648 47.080-61.018Q47.080-61.189 47.196-61.301Q47.313-61.414 47.484-61.414Q47.593-61.414 47.684-61.363Q47.774-61.312 47.829-61.219Q47.883-61.127 47.883-61.018Q47.883-60.850 47.771-60.731Q47.658-60.611 47.497-60.611",[1576],[1561,1786],{"fill":1563,"d":1787},"m65.358 24.485-10.202 17.68",[1556,1789,1790,1793],{"fill":1629},[1561,1791],{"stroke":1563,"d":1792},"M49.28 38.685h10.777v-10.72H49.28Z",[1556,1794,1796],{"transform":1795},"translate(12.042 95.89)",[1561,1797],{"d":1638,"fill":1558,"stroke":1558,"className":1798,"style":1640},[1576],[1561,1800],{"fill":1563,"d":1801},"M98.11 42.366H87.486a4 4 0 0 0-4 4v9.071a4 4 0 0 0 4 4H98.11a4 4 0 0 0 4-4v-9.071a4 4 0 0 0-4-4ZM83.486 59.437",[1556,1803,1805],{"transform":1804},"translate(48.081 113.221)",[1561,1806],{"d":1807,"fill":1558,"stroke":1558,"className":1808,"style":1623},"M42.063-60.064L39.178-60.064L39.178-60.266Q39.178-60.296 39.205-60.324L40.453-61.541Q40.525-61.616 40.567-61.658Q40.610-61.701 40.689-61.780Q41.102-62.193 41.333-62.551Q41.564-62.908 41.564-63.332Q41.564-63.564 41.485-63.767Q41.406-63.971 41.265-64.121Q41.123-64.272 40.928-64.352Q40.733-64.432 40.501-64.432Q40.190-64.432 39.932-64.273Q39.674-64.114 39.544-63.837L39.564-63.837Q39.732-63.837 39.839-63.726Q39.947-63.615 39.947-63.451Q39.947-63.294 39.838-63.181Q39.728-63.068 39.564-63.068Q39.404-63.068 39.291-63.181Q39.178-63.294 39.178-63.451Q39.178-63.827 39.386-64.114Q39.595-64.401 39.930-64.557Q40.265-64.712 40.620-64.712Q41.044-64.712 41.424-64.554Q41.803-64.395 42.037-64.078Q42.271-63.762 42.271-63.332Q42.271-63.021 42.131-62.752Q41.991-62.484 41.786-62.279Q41.581-62.074 41.218-61.792Q40.856-61.510 40.747-61.414L39.892-60.686L40.535-60.686Q40.798-60.686 41.087-60.688Q41.376-60.689 41.594-60.698Q41.813-60.707 41.830-60.724Q41.892-60.789 41.929-60.956Q41.967-61.124 42.005-61.366L42.271-61.366L42.063-60.064M43.515-60.611Q43.635-60.454 43.826-60.355Q44.018-60.255 44.233-60.216Q44.448-60.177 44.671-60.177Q44.968-60.177 45.163-60.332Q45.358-60.488 45.448-60.742Q45.539-60.997 45.539-61.281Q45.539-61.575 45.446-61.826Q45.354-62.077 45.156-62.233Q44.958-62.388 44.664-62.388L44.148-62.388Q44.120-62.388 44.095-62.414Q44.069-62.439 44.069-62.463L44.069-62.535Q44.069-62.566 44.095-62.588Q44.120-62.610 44.148-62.610L44.589-62.641Q44.951-62.641 45.171-62.998Q45.392-63.356 45.392-63.745Q45.392-64.073 45.197-64.277Q45.002-64.480 44.671-64.480Q44.383-64.480 44.131-64.396Q43.878-64.313 43.714-64.125Q43.861-64.125 43.961-64.010Q44.062-63.896 44.062-63.745Q44.062-63.595 43.956-63.485Q43.850-63.376 43.693-63.376Q43.532-63.376 43.423-63.485Q43.314-63.595 43.314-63.745Q43.314-64.070 43.522-64.289Q43.731-64.507 44.047-64.610Q44.363-64.712 44.671-64.712Q44.988-64.712 45.317-64.608Q45.645-64.504 45.872-64.282Q46.099-64.060 46.099-63.745Q46.099-63.311 45.812-62.986Q45.525-62.662 45.091-62.515Q45.402-62.450 45.682-62.284Q45.963-62.118 46.140-61.860Q46.318-61.602 46.318-61.281Q46.318-60.871 46.074-60.561Q45.829-60.252 45.448-60.088Q45.067-59.924 44.671-59.924Q44.301-59.924 43.944-60.037Q43.587-60.149 43.343-60.399Q43.098-60.648 43.098-61.018Q43.098-61.189 43.215-61.301Q43.331-61.414 43.502-61.414Q43.611-61.414 43.702-61.363Q43.792-61.312 43.847-61.219Q43.902-61.127 43.902-61.018Q43.902-60.850 43.789-60.731Q43.676-60.611 43.515-60.611M50.027-60.064L47.497-60.064L47.497-60.344Q48.465-60.344 48.465-60.553L48.465-64.172Q48.071-63.984 47.449-63.984L47.449-64.265Q47.866-64.265 48.230-64.366Q48.594-64.466 48.851-64.712L48.977-64.712Q49.042-64.695 49.059-64.627L49.059-60.553Q49.059-60.344 50.027-60.344",[1576],[1561,1810],{"fill":1563,"d":1811},"m77.558 24.485 10.202 17.68",[1556,1813,1814,1817],{"fill":1629},[1561,1815],{"stroke":1563,"d":1816},"M82.86 37.716h10.777v-8.782H82.859Z",[1556,1818,1820],{"transform":1819},"translate(45.622 95.89)",[1561,1821],{"d":1709,"fill":1558,"stroke":1558,"className":1822,"style":1640},[1576],[1556,1824,1825,1828],{"fill":1629},[1561,1826],{"stroke":1563,"d":1827},"M76.84.778h10.778v-10.72H76.841Z",[1556,1829,1831],{"transform":1830},"translate(39.603 57.983)",[1561,1832],{"d":1638,"fill":1558,"stroke":1558,"className":1833,"style":1640},[1576],[1561,1835],{"fill":1563,"d":1836},"M142.212 5.377h-10.625a4 4 0 0 0-4 4v9.072a4 4 0 0 0 4 4h10.625a4 4 0 0 0 4-4V9.377a4 4 0 0 0-4-4Zm-14.625 17.072",[1556,1838,1840],{"transform":1839},"translate(92.183 76.233)",[1561,1841],{"d":1842,"fill":1558,"stroke":1558,"className":1843,"style":1623},"M39.533-60.611Q39.653-60.454 39.844-60.355Q40.036-60.255 40.251-60.216Q40.466-60.177 40.689-60.177Q40.986-60.177 41.181-60.332Q41.376-60.488 41.466-60.742Q41.557-60.997 41.557-61.281Q41.557-61.575 41.465-61.826Q41.372-62.077 41.174-62.233Q40.976-62.388 40.682-62.388L40.166-62.388Q40.138-62.388 40.113-62.414Q40.087-62.439 40.087-62.463L40.087-62.535Q40.087-62.566 40.113-62.588Q40.138-62.610 40.166-62.610L40.607-62.641Q40.969-62.641 41.189-62.998Q41.410-63.356 41.410-63.745Q41.410-64.073 41.215-64.277Q41.020-64.480 40.689-64.480Q40.402-64.480 40.149-64.396Q39.896-64.313 39.732-64.125Q39.879-64.125 39.979-64.010Q40.080-63.896 40.080-63.745Q40.080-63.595 39.974-63.485Q39.868-63.376 39.711-63.376Q39.550-63.376 39.441-63.485Q39.332-63.595 39.332-63.745Q39.332-64.070 39.540-64.289Q39.749-64.507 40.065-64.610Q40.381-64.712 40.689-64.712Q41.007-64.712 41.335-64.608Q41.663-64.504 41.890-64.282Q42.117-64.060 42.117-63.745Q42.117-63.311 41.830-62.986Q41.543-62.662 41.109-62.515Q41.420-62.450 41.700-62.284Q41.981-62.118 42.158-61.860Q42.336-61.602 42.336-61.281Q42.336-60.871 42.092-60.561Q41.847-60.252 41.466-60.088Q41.085-59.924 40.689-59.924Q40.320-59.924 39.962-60.037Q39.605-60.149 39.361-60.399Q39.116-60.648 39.116-61.018Q39.116-61.189 39.233-61.301Q39.349-61.414 39.520-61.414Q39.629-61.414 39.720-61.363Q39.810-61.312 39.865-61.219Q39.920-61.127 39.920-61.018Q39.920-60.850 39.807-60.731Q39.694-60.611 39.533-60.611M46.045-60.064L43.160-60.064L43.160-60.266Q43.160-60.296 43.187-60.324L44.435-61.541Q44.507-61.616 44.549-61.658Q44.592-61.701 44.671-61.780Q45.084-62.193 45.315-62.551Q45.546-62.908 45.546-63.332Q45.546-63.564 45.467-63.767Q45.388-63.971 45.247-64.121Q45.105-64.272 44.910-64.352Q44.715-64.432 44.483-64.432Q44.172-64.432 43.914-64.273Q43.655-64.114 43.526-63.837L43.546-63.837Q43.714-63.837 43.821-63.726Q43.929-63.615 43.929-63.451Q43.929-63.294 43.820-63.181Q43.710-63.068 43.546-63.068Q43.385-63.068 43.273-63.181Q43.160-63.294 43.160-63.451Q43.160-63.827 43.368-64.114Q43.577-64.401 43.912-64.557Q44.247-64.712 44.602-64.712Q45.026-64.712 45.405-64.554Q45.785-64.395 46.019-64.078Q46.253-63.762 46.253-63.332Q46.253-63.021 46.113-62.752Q45.973-62.484 45.768-62.279Q45.563-62.074 45.200-61.792Q44.838-61.510 44.729-61.414L43.874-60.686L44.517-60.686Q44.780-60.686 45.069-60.688Q45.358-60.689 45.576-60.698Q45.795-60.707 45.812-60.724Q45.874-60.789 45.911-60.956Q45.949-61.124 45.987-61.366L46.253-61.366L46.045-60.064M50.027-60.064L47.497-60.064L47.497-60.344Q48.465-60.344 48.465-60.553L48.465-64.172Q48.071-63.984 47.449-63.984L47.449-64.265Q47.866-64.265 48.230-64.366Q48.594-64.466 48.851-64.712L48.977-64.712Q49.042-64.695 49.059-64.627L49.059-60.553Q49.059-60.344 50.027-60.344",[1576],[1561,1845],{"fill":1563,"d":1846},"m112.266-13.935 16.91 19.112",[1556,1848,1849,1852],{"fill":1629},[1561,1850],{"stroke":1563,"d":1851},"M120.92.012h10.778V-8.77h-10.777Z",[1556,1853,1855],{"transform":1854},"translate(83.683 58.185)",[1561,1856],{"d":1709,"fill":1558,"stroke":1558,"className":1857,"style":1640},[1576],[1556,1859,1860,1863],{"fill":1629},[1561,1861],{"stroke":1563,"d":1862},"M71.658-37.18h10.778v-8.781H71.658Z",[1556,1864,1866],{"transform":1865},"translate(34.42 20.994)",[1561,1867],{"d":1709,"fill":1558,"stroke":1558,"className":1868,"style":1640},[1576],[1870,1871,1874],"figcaption",{"className":1872},[1873],"tikz-cap","Decision tree for comparison sorting three elements, with permutation leaves.",[381,1876,1877,1878,2077,2078,2185,2186,2220,2221,2255,2256,2363,2364,2397,2398,2413,2414,2521,2522,2555,2556,2571,2572,934,2588,2750,2751,2803],{},"Trace the input ",[397,1879,1881],{"className":1880},[400],[397,1882,1884,2040],{"className":1883,"ariaHidden":405},[404],[397,1885,1887,1890,2031,2034,2037],{"className":1886},[409],[397,1888],{"className":1889,"style":414},[413],[397,1891,1893,1896,1936,1939,1942,1982,1985,1988,2028],{"className":1892},[803],[397,1894,1292],{"className":1895,"style":808},[423,807],[397,1897,1899,1902],{"className":1898},[418],[397,1900,384],{"className":1901},[418,428],[397,1903,1905],{"className":1904},[596],[397,1906,1908,1928],{"className":1907},[600,601],[397,1909,1911,1925],{"className":1910},[605],[397,1912,1914],{"className":1913,"style":1422},[609],[397,1915,1916,1919],{"style":613},[397,1917],{"className":1918,"style":618},[617],[397,1920,1922],{"className":1921},[622,623,624,625],[397,1923,553],{"className":1924},[418,625],[397,1926,634],{"className":1927},[633],[397,1929,1931],{"className":1930},[605],[397,1932,1934],{"className":1933,"style":641},[609],[397,1935],{},[397,1937,817],{"className":1938},[816],[397,1940],{"className":1941,"style":434},[433],[397,1943,1945,1948],{"className":1944},[418],[397,1946,384],{"className":1947},[418,428],[397,1949,1951],{"className":1950},[596],[397,1952,1954,1974],{"className":1953},[600,601],[397,1955,1957,1971],{"className":1956},[605],[397,1958,1960],{"className":1959,"style":1422},[609],[397,1961,1962,1965],{"style":613},[397,1963],{"className":1964,"style":618},[617],[397,1966,1968],{"className":1967},[622,623,624,625],[397,1969,824],{"className":1970},[418,625],[397,1972,634],{"className":1973},[633],[397,1975,1977],{"className":1976},[605],[397,1978,1980],{"className":1979,"style":641},[609],[397,1981],{},[397,1983,817],{"className":1984},[816],[397,1986],{"className":1987,"style":434},[433],[397,1989,1991,1994],{"className":1990},[418],[397,1992,384],{"className":1993},[418,428],[397,1995,1997],{"className":1996},[596],[397,1998,2000,2020],{"className":1999},[600,601],[397,2001,2003,2017],{"className":2002},[605],[397,2004,2006],{"className":2005,"style":1422},[609],[397,2007,2008,2011],{"style":613},[397,2009],{"className":2010,"style":618},[617],[397,2012,2014],{"className":2013},[622,623,624,625],[397,2015,1526],{"className":2016},[418,625],[397,2018,634],{"className":2019},[633],[397,2021,2023],{"className":2022},[605],[397,2024,2026],{"className":2025,"style":641},[609],[397,2027],{},[397,2029,1358],{"className":2030,"style":808},[454,807],[397,2032],{"className":2033,"style":647},[433],[397,2035,775],{"className":2036},[651],[397,2038],{"className":2039,"style":647},[433],[397,2041,2043,2046],{"className":2042},[409],[397,2044],{"className":2045,"style":414},[413],[397,2047,2049,2052,2056,2059,2062,2065,2068,2071,2074],{"className":2048},[803],[397,2050,1292],{"className":2051,"style":808},[423,807],[397,2053,2055],{"className":2054},[418],"6",[397,2057,817],{"className":2058},[816],[397,2060],{"className":2061,"style":434},[433],[397,2063,824],{"className":2064},[418],[397,2066,817],{"className":2067},[816],[397,2069],{"className":2070,"style":434},[433],[397,2072,1568],{"className":2073},[418],[397,2075,1358],{"className":2076,"style":808},[454,807],". At the root we ask\n",[397,2079,2081],{"className":2080},[400],[397,2082,2084,2139],{"className":2083,"ariaHidden":405},[404],[397,2085,2087,2090,2130,2133,2136],{"className":2086},[409],[397,2088],{"className":2089,"style":950},[413],[397,2091,2093,2096],{"className":2092},[418],[397,2094,384],{"className":2095},[418,428],[397,2097,2099],{"className":2098},[596],[397,2100,2102,2122],{"className":2101},[600,601],[397,2103,2105,2119],{"className":2104},[605],[397,2106,2108],{"className":2107,"style":1422},[609],[397,2109,2110,2113],{"style":613},[397,2111],{"className":2112,"style":618},[617],[397,2114,2116],{"className":2115},[622,623,624,625],[397,2117,553],{"className":2118},[418,625],[397,2120,634],{"className":2121},[633],[397,2123,2125],{"className":2124},[605],[397,2126,2128],{"className":2127,"style":641},[609],[397,2129],{},[397,2131],{"className":2132,"style":647},[433],[397,2134,920],{"className":2135},[651],[397,2137],{"className":2138,"style":647},[433],[397,2140,2142,2145],{"className":2141},[409],[397,2143],{"className":2144,"style":950},[413],[397,2146,2148,2151],{"className":2147},[418],[397,2149,384],{"className":2150},[418,428],[397,2152,2154],{"className":2153},[596],[397,2155,2157,2177],{"className":2156},[600,601],[397,2158,2160,2174],{"className":2159},[605],[397,2161,2163],{"className":2162,"style":1422},[609],[397,2164,2165,2168],{"style":613},[397,2166],{"className":2167,"style":618},[617],[397,2169,2171],{"className":2170},[622,623,624,625],[397,2172,824],{"className":2173},[418,625],[397,2175,634],{"className":2176},[633],[397,2178,2180],{"className":2179},[605],[397,2181,2183],{"className":2182,"style":641},[609],[397,2184],{},", that is ",[397,2187,2189],{"className":2188},[400],[397,2190,2192,2211],{"className":2191,"ariaHidden":405},[404],[397,2193,2195,2199,2202,2205,2208],{"className":2194},[409],[397,2196],{"className":2197,"style":2198},[413],"height:0.6444em;",[397,2200,2055],{"className":2201},[418],[397,2203],{"className":2204,"style":647},[433],[397,2206,920],{"className":2207},[651],[397,2209],{"className":2210,"style":647},[433],[397,2212,2214,2217],{"className":2213},[409],[397,2215],{"className":2216,"style":2198},[413],[397,2218,824],{"className":2219},[418],"; since ",[397,2222,2224],{"className":2223},[400],[397,2225,2227,2246],{"className":2226,"ariaHidden":405},[404],[397,2228,2230,2234,2237,2240,2243],{"className":2229},[409],[397,2231],{"className":2232,"style":2233},[413],"height:0.6835em;vertical-align:-0.0391em;",[397,2235,2055],{"className":2236},[418],[397,2238],{"className":2239,"style":647},[433],[397,2241,758],{"className":2242},[651],[397,2244],{"className":2245,"style":647},[433],[397,2247,2249,2252],{"className":2248},[409],[397,2250],{"className":2251,"style":2198},[413],[397,2253,824],{"className":2254},[418]," we branch right. Next ",[397,2257,2259],{"className":2258},[400],[397,2260,2262,2317],{"className":2261,"ariaHidden":405},[404],[397,2263,2265,2268,2308,2311,2314],{"className":2264},[409],[397,2266],{"className":2267,"style":950},[413],[397,2269,2271,2274],{"className":2270},[418],[397,2272,384],{"className":2273},[418,428],[397,2275,2277],{"className":2276},[596],[397,2278,2280,2300],{"className":2279},[600,601],[397,2281,2283,2297],{"className":2282},[605],[397,2284,2286],{"className":2285,"style":1422},[609],[397,2287,2288,2291],{"style":613},[397,2289],{"className":2290,"style":618},[617],[397,2292,2294],{"className":2293},[622,623,624,625],[397,2295,824],{"className":2296},[418,625],[397,2298,634],{"className":2299},[633],[397,2301,2303],{"className":2302},[605],[397,2304,2306],{"className":2305,"style":641},[609],[397,2307],{},[397,2309],{"className":2310,"style":647},[433],[397,2312,920],{"className":2313},[651],[397,2315],{"className":2316,"style":647},[433],[397,2318,2320,2323],{"className":2319},[409],[397,2321],{"className":2322,"style":950},[413],[397,2324,2326,2329],{"className":2325},[418],[397,2327,384],{"className":2328},[418,428],[397,2330,2332],{"className":2331},[596],[397,2333,2335,2355],{"className":2334},[600,601],[397,2336,2338,2352],{"className":2337},[605],[397,2339,2341],{"className":2340,"style":1422},[609],[397,2342,2343,2346],{"style":613},[397,2344],{"className":2345,"style":618},[617],[397,2347,2349],{"className":2348},[622,623,624,625],[397,2350,1526],{"className":2351},[418,625],[397,2353,634],{"className":2354},[633],[397,2356,2358],{"className":2357},[605],[397,2359,2361],{"className":2360,"style":641},[609],[397,2362],{},",\ni.e. ",[397,2365,2367],{"className":2366},[400],[397,2368,2370,2388],{"className":2369,"ariaHidden":405},[404],[397,2371,2373,2376,2379,2382,2385],{"className":2372},[409],[397,2374],{"className":2375,"style":2198},[413],[397,2377,824],{"className":2378},[418],[397,2380],{"className":2381,"style":647},[433],[397,2383,920],{"className":2384},[651],[397,2386],{"className":2387,"style":647},[433],[397,2389,2391,2394],{"className":2390},[409],[397,2392],{"className":2393,"style":2198},[413],[397,2395,1568],{"className":2396},[418],", so ",[397,2399,2401],{"className":2400},[400],[397,2402,2404],{"className":2403,"ariaHidden":405},[404],[397,2405,2407,2410],{"className":2406},[409],[397,2408],{"className":2409,"style":738},[413],[397,2411,652],{"className":2412},[651]," sends us left. Finally ",[397,2415,2417],{"className":2416},[400],[397,2418,2420,2475],{"className":2419,"ariaHidden":405},[404],[397,2421,2423,2426,2466,2469,2472],{"className":2422},[409],[397,2424],{"className":2425,"style":950},[413],[397,2427,2429,2432],{"className":2428},[418],[397,2430,384],{"className":2431},[418,428],[397,2433,2435],{"className":2434},[596],[397,2436,2438,2458],{"className":2437},[600,601],[397,2439,2441,2455],{"className":2440},[605],[397,2442,2444],{"className":2443,"style":1422},[609],[397,2445,2446,2449],{"style":613},[397,2447],{"className":2448,"style":618},[617],[397,2450,2452],{"className":2451},[622,623,624,625],[397,2453,553],{"className":2454},[418,625],[397,2456,634],{"className":2457},[633],[397,2459,2461],{"className":2460},[605],[397,2462,2464],{"className":2463,"style":641},[609],[397,2465],{},[397,2467],{"className":2468,"style":647},[433],[397,2470,920],{"className":2471},[651],[397,2473],{"className":2474,"style":647},[433],[397,2476,2478,2481],{"className":2477},[409],[397,2479],{"className":2480,"style":950},[413],[397,2482,2484,2487],{"className":2483},[418],[397,2485,384],{"className":2486},[418,428],[397,2488,2490],{"className":2489},[596],[397,2491,2493,2513],{"className":2492},[600,601],[397,2494,2496,2510],{"className":2495},[605],[397,2497,2499],{"className":2498,"style":1422},[609],[397,2500,2501,2504],{"style":613},[397,2502],{"className":2503,"style":618},[617],[397,2505,2507],{"className":2506},[622,623,624,625],[397,2508,1526],{"className":2509},[418,625],[397,2511,634],{"className":2512},[633],[397,2514,2516],{"className":2515},[605],[397,2517,2519],{"className":2518,"style":641},[609],[397,2520],{},", i.e. ",[397,2523,2525],{"className":2524},[400],[397,2526,2528,2546],{"className":2527,"ariaHidden":405},[404],[397,2529,2531,2534,2537,2540,2543],{"className":2530},[409],[397,2532],{"className":2533,"style":2198},[413],[397,2535,2055],{"className":2536},[418],[397,2538],{"className":2539,"style":647},[433],[397,2541,920],{"className":2542},[651],[397,2544],{"className":2545,"style":647},[433],[397,2547,2549,2552],{"className":2548},[409],[397,2550],{"className":2551,"style":2198},[413],[397,2553,1568],{"className":2554},[418],", again\n",[397,2557,2559],{"className":2558},[400],[397,2560,2562],{"className":2561,"ariaHidden":405},[404],[397,2563,2565,2568],{"className":2564},[409],[397,2566],{"className":2567,"style":738},[413],[397,2569,652],{"className":2570},[651],", landing at the leaf ",[397,2573,2575],{"className":2574},[400],[397,2576,2578],{"className":2577,"ariaHidden":405},[404],[397,2579,2581,2584],{"className":2580},[409],[397,2582],{"className":2583,"style":2198},[413],[397,2585,2587],{"className":2586},[418],"213",[397,2589,2591],{"className":2590},[400],[397,2592,2594,2649,2704],{"className":2593,"ariaHidden":405},[404],[397,2595,2597,2600,2640,2643,2646],{"className":2596},[409],[397,2598],{"className":2599,"style":586},[413],[397,2601,2603,2606],{"className":2602},[418],[397,2604,384],{"className":2605},[418,428],[397,2607,2609],{"className":2608},[596],[397,2610,2612,2632],{"className":2611},[600,601],[397,2613,2615,2629],{"className":2614},[605],[397,2616,2618],{"className":2617,"style":1422},[609],[397,2619,2620,2623],{"style":613},[397,2621],{"className":2622,"style":618},[617],[397,2624,2626],{"className":2625},[622,623,624,625],[397,2627,824],{"className":2628},[418,625],[397,2630,634],{"className":2631},[633],[397,2633,2635],{"className":2634},[605],[397,2636,2638],{"className":2637,"style":641},[609],[397,2639],{},[397,2641],{"className":2642,"style":647},[433],[397,2644,652],{"className":2645},[651],[397,2647],{"className":2648,"style":647},[433],[397,2650,2652,2655,2695,2698,2701],{"className":2651},[409],[397,2653],{"className":2654,"style":586},[413],[397,2656,2658,2661],{"className":2657},[418],[397,2659,384],{"className":2660},[418,428],[397,2662,2664],{"className":2663},[596],[397,2665,2667,2687],{"className":2666},[600,601],[397,2668,2670,2684],{"className":2669},[605],[397,2671,2673],{"className":2672,"style":1422},[609],[397,2674,2675,2678],{"style":613},[397,2676],{"className":2677,"style":618},[617],[397,2679,2681],{"className":2680},[622,623,624,625],[397,2682,553],{"className":2683},[418,625],[397,2685,634],{"className":2686},[633],[397,2688,2690],{"className":2689},[605],[397,2691,2693],{"className":2692,"style":641},[609],[397,2694],{},[397,2696],{"className":2697,"style":647},[433],[397,2699,652],{"className":2700},[651],[397,2702],{"className":2703,"style":647},[433],[397,2705,2707,2710],{"className":2706},[409],[397,2708],{"className":2709,"style":950},[413],[397,2711,2713,2716],{"className":2712},[418],[397,2714,384],{"className":2715},[418,428],[397,2717,2719],{"className":2718},[596],[397,2720,2722,2742],{"className":2721},[600,601],[397,2723,2725,2739],{"className":2724},[605],[397,2726,2728],{"className":2727,"style":1422},[609],[397,2729,2730,2733],{"style":613},[397,2731],{"className":2732,"style":618},[617],[397,2734,2736],{"className":2735},[622,623,624,625],[397,2737,1526],{"className":2738},[418,625],[397,2740,634],{"className":2741},[633],[397,2743,2745],{"className":2744},[605],[397,2746,2748],{"className":2747,"style":641},[609],[397,2749],{},", which reads off\nas ",[397,2752,2754],{"className":2753},[400],[397,2755,2757,2776,2794],{"className":2756,"ariaHidden":405},[404],[397,2758,2760,2764,2767,2770,2773],{"className":2759},[409],[397,2761],{"className":2762,"style":2763},[413],"height:0.7804em;vertical-align:-0.136em;",[397,2765,824],{"className":2766},[418],[397,2768],{"className":2769,"style":647},[433],[397,2771,652],{"className":2772},[651],[397,2774],{"className":2775,"style":647},[433],[397,2777,2779,2782,2785,2788,2791],{"className":2778},[409],[397,2780],{"className":2781,"style":2763},[413],[397,2783,2055],{"className":2784},[418],[397,2786],{"className":2787,"style":647},[433],[397,2789,652],{"className":2790},[651],[397,2792],{"className":2793,"style":647},[433],[397,2795,2797,2800],{"className":2796},[409],[397,2798],{"className":2799,"style":2198},[413],[397,2801,1568],{"className":2802},[418],". Correct.",[560,2805,2807],{"id":2806},"counting-leaves-and-bounding-height","Counting leaves and bounding height",[381,2809,2810],{},"Two observations turn this picture into a theorem.",[381,2812,2813,2816,2817,2837,2838,2841,2842,2864,2865],{},[495,2814,2815],{},"Every permutation needs its own leaf."," A correct sort must, for each of the\n",[397,2818,2820],{"className":2819},[400],[397,2821,2823],{"className":2822,"ariaHidden":405},[404],[397,2824,2826,2830,2833],{"className":2825},[409],[397,2827],{"className":2828,"style":2829},[413],"height:0.6944em;",[397,2831,429],{"className":2832},[418,428],[397,2834,2836],{"className":2835},[454],"!"," possible input orderings, output a ",[458,2839,2840],{},"different"," permutation to put it in\norder. If two distinct input orderings led to the same leaf, that leaf's single\nfixed output would be wrong for at least one of them. Hence the tree must have\n",[495,2843,2844,2845,2863],{},"at least ",[397,2846,2848],{"className":2847},[400],[397,2849,2851],{"className":2850,"ariaHidden":405},[404],[397,2852,2854,2857,2860],{"className":2853},[409],[397,2855],{"className":2856,"style":2829},[413],[397,2858,429],{"className":2859},[418,428],[397,2861,2836],{"className":2862},[454]," reachable leaves",", one per permutation it might be asked to\nproduce.",[545,2866,2867],{},[384,2868,1526],{"href":2869,"ariaDescribedBy":2870,"dataFootnoteRef":376,"id":2871},"#user-content-fn-clrs-leaves",[551],"user-content-fnref-clrs-leaves",[381,2873,2874,2877,2878,2881,2882,2885,2886,2902],{},[495,2875,2876],{},"Height equals worst-case comparisons."," The number of comparisons the\nalgorithm makes on a given input is the length of the root-to-leaf path it\nwalks. The ",[458,2879,2880],{},"worst-case"," number of comparisons is therefore the ",[495,2883,2884],{},"height"," ",[397,2887,2889],{"className":2888},[400],[397,2890,2892],{"className":2891,"ariaHidden":405},[404],[397,2893,2895,2898],{"className":2894},[409],[397,2896],{"className":2897,"style":2829},[413],[397,2899,2901],{"className":2900},[418,428],"h"," of\nthe tree — the longest such path.",[381,2904,2905,2906,2921,2922,2965],{},"Now we connect the two. A binary tree of height ",[397,2907,2909],{"className":2908},[400],[397,2910,2912],{"className":2911,"ariaHidden":405},[404],[397,2913,2915,2918],{"className":2914},[409],[397,2916],{"className":2917,"style":2829},[413],[397,2919,2901],{"className":2920},[418,428]," has at most ",[397,2923,2925],{"className":2924},[400],[397,2926,2928],{"className":2927,"ariaHidden":405},[404],[397,2929,2931,2935],{"className":2930},[409],[397,2932],{"className":2933,"style":2934},[413],"height:0.8491em;",[397,2936,2938,2941],{"className":2937},[418],[397,2939,824],{"className":2940},[418],[397,2942,2944],{"className":2943},[596],[397,2945,2947],{"className":2946},[600],[397,2948,2950],{"className":2949},[605],[397,2951,2953],{"className":2952,"style":2934},[609],[397,2954,2956,2959],{"style":2955},"top:-3.063em;margin-right:0.05em;",[397,2957],{"className":2958,"style":618},[617],[397,2960,2962],{"className":2961},[622,623,624,625],[397,2963,2901],{"className":2964},[418,428,625]," leaves (the\ncount at most doubles each level). Combining with the leaf count above,",[397,2967,2970],{"className":2968},[2969],"katex-display",[397,2971,2973],{"className":2972},[400],[397,2974,2976,3004,3039],{"className":2975,"ariaHidden":405},[404],[397,2977,2979,2983,2986,2989,2992,2995,2998,3001],{"className":2978},[409],[397,2980],{"className":2981,"style":2982},[413],"height:0.8304em;vertical-align:-0.136em;",[397,2984,429],{"className":2985},[418,428],[397,2987,2836],{"className":2988},[454],[397,2990],{"className":2991,"style":647},[433],[397,2993],{"className":2994,"style":647},[433],[397,2996,652],{"className":2997},[651],[397,2999],{"className":3000,"style":647},[433],[397,3002],{"className":3003,"style":647},[433],[397,3005,3007,3010,3013,3021,3024,3027,3030,3033,3036],{"className":3006},[409],[397,3008],{"className":3009,"style":414},[413],[397,3011,424],{"className":3012},[423],[397,3014,3017],{"className":3015},[418,3016],"text",[397,3018,3020],{"className":3019},[418],"number of leaves",[397,3022,455],{"className":3023},[454],[397,3025],{"className":3026,"style":647},[433],[397,3028],{"className":3029,"style":647},[433],[397,3031,652],{"className":3032},[651],[397,3034],{"className":3035,"style":647},[433],[397,3037],{"className":3038,"style":647},[433],[397,3040,3042,3046,3080],{"className":3041},[409],[397,3043],{"className":3044,"style":3045},[413],"height:1.0935em;vertical-align:-0.1944em;",[397,3047,3049,3052],{"className":3048},[418],[397,3050,824],{"className":3051},[418],[397,3053,3055],{"className":3054},[596],[397,3056,3058],{"className":3057},[600],[397,3059,3061],{"className":3060},[605],[397,3062,3065],{"className":3063,"style":3064},[609],"height:0.8991em;",[397,3066,3068,3071],{"style":3067},"top:-3.113em;margin-right:0.05em;",[397,3069],{"className":3070,"style":618},[617],[397,3072,3074],{"className":3073},[622,623,624,625],[397,3075,3077],{"className":3076},[418,625],[397,3078,2901],{"className":3079},[418,428,625],[397,3081,817],{"className":3082},[816],[381,3084,3085,3086,3145],{},"and taking ",[397,3087,3089],{"className":3088},[400],[397,3090,3092],{"className":3091,"ariaHidden":405},[404],[397,3093,3095,3099],{"className":3094},[409],[397,3096],{"className":3097,"style":3098},[413],"height:0.9386em;vertical-align:-0.2441em;",[397,3100,3102,3108],{"className":3101},[438],[397,3103,3105],{"className":3104},[438],[397,3106,444],{"className":3107,"style":443},[418,442],[397,3109,3111],{"className":3110},[596],[397,3112,3114,3136],{"className":3113},[600,601],[397,3115,3117,3133],{"className":3116},[605],[397,3118,3121],{"className":3119,"style":3120},[609],"height:0.207em;",[397,3122,3124,3127],{"style":3123},"top:-2.4559em;margin-right:0.05em;",[397,3125],{"className":3126,"style":618},[617],[397,3128,3130],{"className":3129},[622,623,624,625],[397,3131,824],{"className":3132},[418,625],[397,3134,634],{"className":3135},[633],[397,3137,3139],{"className":3138},[605],[397,3140,3143],{"className":3141,"style":3142},[609],"height:0.2441em;",[397,3144],{}," of both ends gives the key inequality",[397,3147,3149],{"className":3148},[2969],[397,3150,3152],{"className":3151},[400],[397,3153,3155,3179],{"className":3154,"ariaHidden":405},[404],[397,3156,3158,3161,3164,3167,3170,3173,3176],{"className":3157},[409],[397,3159],{"className":3160,"style":2982},[413],[397,3162,2901],{"className":3163},[418,428],[397,3165],{"className":3166,"style":647},[433],[397,3168],{"className":3169,"style":647},[433],[397,3171,742],{"className":3172},[651],[397,3174],{"className":3175,"style":647},[433],[397,3177],{"className":3178,"style":647},[433],[397,3180,3182,3185,3228,3231,3234,3238],{"className":3181},[409],[397,3183],{"className":3184,"style":414},[413],[397,3186,3188,3194],{"className":3187},[438],[397,3189,3191],{"className":3190},[438],[397,3192,444],{"className":3193,"style":443},[418,442],[397,3195,3197],{"className":3196},[596],[397,3198,3200,3220],{"className":3199},[600,601],[397,3201,3203,3217],{"className":3202},[605],[397,3204,3206],{"className":3205,"style":3120},[609],[397,3207,3208,3211],{"style":3123},[397,3209],{"className":3210,"style":618},[617],[397,3212,3214],{"className":3213},[622,623,624,625],[397,3215,824],{"className":3216},[418,625],[397,3218,634],{"className":3219},[633],[397,3221,3223],{"className":3222},[605],[397,3224,3226],{"className":3225,"style":3142},[609],[397,3227],{},[397,3229,424],{"className":3230},[423],[397,3232,429],{"className":3233},[418,428],[397,3235,3237],{"className":3236},[454],"!)",[397,3239,851],{"className":3240},[418],[381,3242,3243,3244,3247,3248,3312],{},"So ",[458,3245,3246],{},"every"," comparison sort, whatever its strategy, must make at least\n",[397,3249,3251],{"className":3250},[400],[397,3252,3254],{"className":3253,"ariaHidden":405},[404],[397,3255,3257,3260,3303,3306,3309],{"className":3256},[409],[397,3258],{"className":3259,"style":414},[413],[397,3261,3263,3269],{"className":3262},[438],[397,3264,3266],{"className":3265},[438],[397,3267,444],{"className":3268,"style":443},[418,442],[397,3270,3272],{"className":3271},[596],[397,3273,3275,3295],{"className":3274},[600,601],[397,3276,3278,3292],{"className":3277},[605],[397,3279,3281],{"className":3280,"style":3120},[609],[397,3282,3283,3286],{"style":3123},[397,3284],{"className":3285,"style":618},[617],[397,3287,3289],{"className":3288},[622,623,624,625],[397,3290,824],{"className":3291},[418,625],[397,3293,634],{"className":3294},[633],[397,3296,3298],{"className":3297},[605],[397,3299,3301],{"className":3300,"style":3142},[609],[397,3302],{},[397,3304,424],{"className":3305},[423],[397,3307,429],{"className":3308},[418,428],[397,3310,3237],{"className":3311},[454]," comparisons on its worst input. It remains to see how large that is.",[1543,3314,3316,3635],{"className":3315},[1546,1547],[1549,3317,3321],{"xmlns":1551,"width":3318,"height":3319,"viewBox":3320},"317.348","178.076","-75 -75 238.011 133.557",[1556,3322,3323,3326,3332,3337,3340,3345,3350,3353,3358,3363,3366,3371,3376,3379,3407,3432,3457,3497],{"stroke":1558,"style":1559},[1561,3324],{"fill":1563,"d":3325},"M31.64-64.957a7.113 7.113 0 1 0-14.227 0 7.113 7.113 0 0 0 14.227 0ZM-13.885-36.504a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0ZM77.164-36.504a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0ZM-36.647-8.051a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0ZM8.877-8.051a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0ZM54.402-8.051a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0ZM99.926-8.051a7.113 7.113 0 1 0-14.226 0 7.113 7.113 0 0 0 14.226 0ZM18.325-61.081-14.797-40.38M30.728-61.081 63.849-40.38M-25.566-30.794l-13.626 17.032M-16.43-30.794l13.626 17.032M65.483-30.794 51.857-13.762M74.62-30.794l13.625 17.032",[1556,3327,3329],{"fill":3328},"var(--tk-soft-accent)",[1561,3330],{"d":3331},"M-57.986 26.092h11.38V14.71h-11.38Z",[1556,3333,3334],{"fill":3328},[1561,3335],{"d":3336},"M-40.915 26.092h11.381V14.71h-11.38Z",[1561,3338],{"fill":1563,"d":3339},"M-43.76-8.051-52.296 20.4M-43.76-8.051l8.536 28.452",[1556,3341,3342],{"fill":3328},[1561,3343],{"d":3344},"M-12.462 26.092h11.38V14.71h-11.38Z",[1556,3346,3347],{"fill":3328},[1561,3348],{"d":3349},"M4.61 26.092h11.38V14.71H4.61Z",[1561,3351],{"fill":1563,"d":3352},"M1.764-8.051-6.772 20.4M1.764-8.051 10.3 20.4",[1556,3354,3355],{"fill":3328},[1561,3356],{"d":3357},"M33.062 26.092h11.381V14.71h-11.38Z",[1556,3359,3360],{"fill":3328},[1561,3361],{"d":3362},"M50.134 26.092h11.381V14.71H50.134Z",[1561,3364],{"fill":1563,"d":3365},"M47.289-8.051 38.753 20.4M47.289-8.051 55.825 20.4",[1556,3367,3368],{"fill":3328},[1561,3369],{"d":3370},"M78.586 26.092h11.381V14.71h-11.38Z",[1556,3372,3373],{"fill":3328},[1561,3374],{"d":3375},"M95.658 26.092h11.381V14.71H95.66Z",[1561,3377],{"fill":1563,"d":3378},"M92.813-8.051 84.277 20.4M92.813-8.051l8.536 28.452",[1556,3380,3381,3388,3395,3401],{"stroke":1563},[1556,3382,3384],{"transform":3383},"translate(91.737 3.12)",[1561,3385],{"d":3386,"fill":1558,"stroke":1558,"className":3387,"style":1623},"M27.852-64.957L24.967-64.957L24.967-65.159Q24.967-65.189 24.994-65.217L26.242-66.434Q26.314-66.509 26.356-66.551Q26.399-66.594 26.478-66.673Q26.891-67.086 27.122-67.444Q27.353-67.801 27.353-68.225Q27.353-68.457 27.274-68.660Q27.195-68.864 27.054-69.014Q26.912-69.165 26.717-69.245Q26.522-69.325 26.290-69.325Q25.979-69.325 25.721-69.166Q25.463-69.007 25.333-68.730L25.353-68.730Q25.521-68.730 25.628-68.619Q25.736-68.508 25.736-68.344Q25.736-68.187 25.627-68.074Q25.517-67.961 25.353-67.961Q25.193-67.961 25.080-68.074Q24.967-68.187 24.967-68.344Q24.967-68.720 25.175-69.007Q25.384-69.294 25.719-69.450Q26.054-69.605 26.409-69.605Q26.833-69.605 27.213-69.447Q27.592-69.288 27.826-68.971Q28.060-68.655 28.060-68.225Q28.060-67.914 27.920-67.645Q27.780-67.377 27.575-67.172Q27.370-66.967 27.007-66.685Q26.645-66.403 26.536-66.307L25.681-65.579L26.324-65.579Q26.587-65.579 26.876-65.581Q27.165-65.582 27.383-65.591Q27.602-65.600 27.619-65.617Q27.681-65.682 27.718-65.849Q27.756-66.017 27.794-66.259L28.060-66.259",[1576],[1556,3389,3390],{"transform":3383},[1561,3391],{"d":3392,"fill":1558,"stroke":1558,"className":3393,"style":3394},"M30.211-67.865Q29.493-67.865 29.196-68.339Q28.898-68.812 28.898-69.569Q28.898-70.333 29.194-70.819Q29.491-71.305 30.211-71.305Q30.934-71.305 31.231-70.819Q31.527-70.333 31.527-69.569Q31.527-69.215 31.465-68.915Q31.403-68.615 31.252-68.375Q31.102-68.136 30.845-68.001Q30.587-67.865 30.211-67.865M30.211-68.051Q30.575-68.051 30.751-68.301Q30.927-68.551 30.967-68.877Q31.007-69.203 31.007-69.650Q31.007-70.082 30.967-70.379Q30.927-70.675 30.752-70.897Q30.577-71.120 30.211-71.120Q29.847-71.120 29.673-70.897Q29.498-70.675 29.458-70.379Q29.418-70.082 29.418-69.650Q29.418-69.203 29.458-68.877Q29.498-68.551 29.674-68.301Q29.850-68.051 30.211-68.051",[1576],"stroke-width:0.150",[1556,3396,3397],{"transform":3383},[1561,3398],{"d":3399,"fill":1558,"stroke":1558,"className":3400,"style":1623},"M40.174-65.764L35.341-65.764Q35.273-65.774 35.227-65.820Q35.181-65.866 35.181-65.938Q35.181-66.003 35.227-66.049Q35.273-66.095 35.341-66.105L40.174-66.105Q40.243-66.095 40.289-66.049Q40.335-66.003 40.335-65.938Q40.335-65.866 40.289-65.820Q40.243-65.774 40.174-65.764M40.174-67.302L35.341-67.302Q35.273-67.312 35.227-67.358Q35.181-67.404 35.181-67.476Q35.181-67.620 35.341-67.644L40.174-67.644Q40.335-67.620 40.335-67.476Q40.335-67.404 40.289-67.358Q40.243-67.312 40.174-67.302",[1576],[1556,3402,3403],{"transform":3383},[1561,3404],{"d":3405,"fill":1558,"stroke":1558,"className":3406,"style":1623},"M46.433-64.957L43.903-64.957L43.903-65.237Q44.871-65.237 44.871-65.446L44.871-69.065Q44.478-68.877 43.856-68.877L43.856-69.158Q44.273-69.158 44.637-69.259Q45.001-69.359 45.257-69.605L45.383-69.605Q45.448-69.588 45.465-69.520L45.465-65.446Q45.465-65.237 46.433-65.237",[1576],[1556,3408,3409,3415,3421,3426],{"stroke":1563},[1556,3410,3412],{"transform":3411},"translate(91.737 31.573)",[1561,3413],{"d":3386,"fill":1558,"stroke":1558,"className":3414,"style":1623},[1576],[1556,3416,3417],{"transform":3411},[1561,3418],{"d":3419,"fill":1558,"stroke":1558,"className":3420,"style":3394},"M31.293-67.975L29.252-67.975L29.252-68.214Q30.033-68.214 30.033-68.334L30.033-70.880Q29.855-70.805 29.651-70.775Q29.447-70.746 29.218-70.746L29.218-70.985Q29.554-70.985 29.838-71.054Q30.121-71.122 30.331-71.305L30.436-71.305Q30.463-71.305 30.487-71.281Q30.512-71.256 30.512-71.229L30.512-68.334Q30.512-68.214 31.293-68.214",[1576],[1556,3422,3423],{"transform":3411},[1561,3424],{"d":3399,"fill":1558,"stroke":1558,"className":3425,"style":1623},[1576],[1556,3427,3428],{"transform":3411},[1561,3429],{"d":3430,"fill":1558,"stroke":1558,"className":3431,"style":1623},"M46.433-64.957L43.548-64.957L43.548-65.159Q43.548-65.189 43.575-65.217L44.823-66.434Q44.895-66.509 44.937-66.551Q44.980-66.594 45.059-66.673Q45.472-67.086 45.703-67.444Q45.934-67.801 45.934-68.225Q45.934-68.457 45.855-68.660Q45.776-68.864 45.635-69.014Q45.493-69.165 45.298-69.245Q45.103-69.325 44.871-69.325Q44.560-69.325 44.302-69.166Q44.044-69.007 43.914-68.730L43.934-68.730Q44.102-68.730 44.209-68.619Q44.317-68.508 44.317-68.344Q44.317-68.187 44.208-68.074Q44.098-67.961 43.934-67.961Q43.774-67.961 43.661-68.074Q43.548-68.187 43.548-68.344Q43.548-68.720 43.756-69.007Q43.965-69.294 44.300-69.450Q44.635-69.605 44.990-69.605Q45.414-69.605 45.794-69.447Q46.173-69.288 46.407-68.971Q46.641-68.655 46.641-68.225Q46.641-67.914 46.501-67.645Q46.361-67.377 46.156-67.172Q45.951-66.967 45.588-66.685Q45.226-66.403 45.117-66.307L44.262-65.579L44.905-65.579Q45.168-65.579 45.457-65.581Q45.746-65.582 45.964-65.591Q46.183-65.600 46.200-65.617Q46.262-65.682 46.299-65.849Q46.337-66.017 46.375-66.259L46.641-66.259",[1576],[1556,3433,3434,3440,3446,3451],{"stroke":1563},[1556,3435,3437],{"transform":3436},"translate(91.737 60.025)",[1561,3438],{"d":3386,"fill":1558,"stroke":1558,"className":3439,"style":1623},[1576],[1556,3441,3442],{"transform":3436},[1561,3443],{"d":3444,"fill":1558,"stroke":1558,"className":3445,"style":3394},"M31.293-67.975L28.966-67.975L28.966-68.156Q28.969-68.168 28.988-68.195L30.028-69.071Q30.336-69.330 30.490-69.474Q30.643-69.618 30.773-69.835Q30.902-70.053 30.902-70.294Q30.902-70.536 30.775-70.712Q30.648-70.888 30.444-70.977Q30.241-71.066 30.001-71.066Q29.794-71.066 29.598-70.978Q29.403-70.890 29.298-70.724Q29.418-70.724 29.495-70.632Q29.572-70.541 29.572-70.426Q29.572-70.299 29.485-70.210Q29.398-70.121 29.271-70.121Q29.142-70.121 29.054-70.211Q28.966-70.302 28.966-70.426Q28.966-70.707 29.139-70.906Q29.313-71.105 29.584-71.205Q29.855-71.305 30.128-71.305Q30.453-71.305 30.758-71.198Q31.063-71.090 31.260-70.863Q31.456-70.636 31.456-70.299Q31.456-70.062 31.343-69.870Q31.229-69.677 31.069-69.539Q30.909-69.401 30.627-69.213Q30.345-69.025 30.267-68.966L29.601-68.475L30.057-68.475Q30.490-68.475 30.784-68.482Q31.078-68.488 31.093-68.500Q31.171-68.598 31.227-68.959L31.456-68.959",[1576],[1556,3447,3448],{"transform":3436},[1561,3449],{"d":3399,"fill":1558,"stroke":1558,"className":3450,"style":1623},[1576],[1556,3452,3453],{"transform":3436},[1561,3454],{"d":3455,"fill":1558,"stroke":1558,"className":3456,"style":1623},"M45.424-66.105L43.380-66.105L43.380-66.386L45.711-69.558Q45.746-69.605 45.811-69.605L45.947-69.605Q45.992-69.605 46.019-69.578Q46.046-69.551 46.046-69.506L46.046-66.386L46.809-66.386L46.809-66.105L46.046-66.105L46.046-65.446Q46.046-65.237 46.802-65.237L46.802-64.957L44.669-64.957L44.669-65.237Q45.424-65.237 45.424-65.446L45.424-66.105M45.472-68.830L43.681-66.386L45.472-66.386",[1576],[1556,3458,3460,3467,3473,3479,3485,3491],{"fill":3459,"stroke":1563},"var(--tk-accent)",[1556,3461,3463],{"transform":3462},"translate(91.737 87.954)",[1561,3464],{"d":3465,"fill":3459,"stroke":3459,"className":3466,"style":1623},"M29.855-63.648L25.442-63.648Q25.374-63.658 25.328-63.704Q25.281-63.750 25.281-63.822Q25.281-63.966 25.442-63.990L29.855-63.990Q30.015-63.966 30.015-63.822Q30.015-63.750 29.969-63.704Q29.923-63.658 29.855-63.648M29.762-65.210L25.374-67.322Q25.281-67.356 25.281-67.469Q25.281-67.579 25.374-67.623L29.762-69.732Q29.793-69.752 29.844-69.752Q29.913-69.752 29.964-69.701Q30.015-69.650 30.015-69.585Q30.015-69.479 29.930-69.431L25.849-67.469L29.930-65.511Q30.015-65.463 30.015-65.364Q30.015-65.292 29.964-65.241Q29.913-65.189 29.844-65.189Q29.793-65.189 29.762-65.210",[1576],[1556,3468,3469],{"transform":3462},[1561,3470],{"d":3471,"fill":3459,"stroke":3459,"className":3472,"style":1623},"M36.379-64.957L33.494-64.957L33.494-65.159Q33.494-65.189 33.521-65.217L34.769-66.434Q34.841-66.509 34.883-66.551Q34.926-66.594 35.005-66.673Q35.418-67.086 35.649-67.444Q35.880-67.801 35.880-68.225Q35.880-68.457 35.801-68.660Q35.722-68.864 35.581-69.014Q35.439-69.165 35.244-69.245Q35.049-69.325 34.817-69.325Q34.506-69.325 34.248-69.166Q33.990-69.007 33.860-68.730L33.880-68.730Q34.048-68.730 34.155-68.619Q34.263-68.508 34.263-68.344Q34.263-68.187 34.154-68.074Q34.044-67.961 33.880-67.961Q33.720-67.961 33.607-68.074Q33.494-68.187 33.494-68.344Q33.494-68.720 33.702-69.007Q33.911-69.294 34.246-69.450Q34.581-69.605 34.936-69.605Q35.360-69.605 35.740-69.447Q36.119-69.288 36.353-68.971Q36.587-68.655 36.587-68.225Q36.587-67.914 36.447-67.645Q36.307-67.377 36.102-67.172Q35.897-66.967 35.534-66.685Q35.172-66.403 35.063-66.307L34.208-65.579L34.851-65.579Q35.114-65.579 35.403-65.581Q35.692-65.582 35.910-65.591Q36.129-65.600 36.146-65.617Q36.208-65.682 36.245-65.849Q36.283-66.017 36.321-66.259L36.587-66.259",[1576],[1556,3474,3475],{"transform":3462},[1561,3476],{"d":3477,"fill":3459,"stroke":3459,"className":3478,"style":3394},"M37.649-68.104Q37.649-68.126 37.659-68.156L38.360-70.975Q38.379-71.044 38.379-71.085Q38.379-71.149 38.030-71.149Q38.003-71.149 37.979-71.178Q37.955-71.207 37.955-71.234Q37.955-71.371 38.050-71.391L38.819-71.444L38.838-71.444Q38.909-71.422 38.909-71.366L38.909-71.344L38.504-69.730Q38.692-69.943 38.923-70.064Q39.153-70.184 39.414-70.184Q39.563-70.184 39.703-70.152Q39.842-70.119 39.945-70.050Q40.049-69.982 40.112-69.866Q40.174-69.750 40.174-69.584Q40.174-69.472 40.143-69.341Q40.113-69.210 40.053-69.037Q39.993-68.864 39.936-68.721Q39.878-68.578 39.839-68.485Q39.793-68.388 39.793-68.285Q39.793-68.104 39.935-68.104Q40.079-68.104 40.196-68.201Q40.313-68.297 40.392-68.438Q40.472-68.578 40.508-68.720Q40.516-68.754 40.564-68.766L40.669-68.766Q40.733-68.744 40.733-68.695Q40.733-68.690 40.728-68.666Q40.682-68.480 40.566-68.308Q40.450-68.136 40.281-68.027Q40.113-67.919 39.920-67.919Q39.703-67.919 39.530-68.036Q39.358-68.153 39.358-68.361Q39.358-68.456 39.400-68.539Q39.422-68.593 39.488-68.756Q39.554-68.920 39.613-69.097Q39.673-69.274 39.704-69.404Q39.734-69.535 39.734-69.650Q39.734-69.813 39.648-69.906Q39.561-69.999 39.400-69.999Q38.794-69.999 38.365-69.159L38.103-68.124Q38.077-68.038 38.007-67.979Q37.937-67.919 37.845-67.919Q37.767-67.919 37.708-67.971Q37.649-68.024 37.649-68.104",[1576],[1556,3480,3481],{"transform":3462},[1561,3482],{"d":3483,"fill":3459,"stroke":3459,"className":3484,"style":1623},"M46.353-64.957L44.750-64.957L44.750-65.237Q44.976-65.237 45.125-65.271Q45.273-65.306 45.273-65.446L45.273-69.065Q45.273-69.335 45.166-69.397Q45.058-69.458 44.750-69.458L44.750-69.739L45.827-69.814L45.827-65.446Q45.827-65.309 45.977-65.273Q46.128-65.237 46.353-65.237L46.353-64.957M46.907-66.492Q46.907-66.813 47.032-67.102Q47.157-67.391 47.382-67.614Q47.608-67.838 47.903-67.958Q48.199-68.078 48.517-68.078Q48.845-68.078 49.107-67.978Q49.368-67.879 49.544-67.697Q49.720-67.514 49.814-67.256Q49.908-66.998 49.908-66.666Q49.908-66.574 49.826-66.553L47.570-66.553L47.570-66.492Q47.570-65.904 47.854-65.521Q48.138-65.138 48.705-65.138Q49.026-65.138 49.295-65.331Q49.563-65.524 49.652-65.839Q49.659-65.880 49.734-65.894L49.826-65.894Q49.908-65.870 49.908-65.798Q49.908-65.791 49.901-65.764Q49.788-65.367 49.418-65.128Q49.047-64.889 48.623-64.889Q48.185-64.889 47.786-65.097Q47.386-65.306 47.146-65.673Q46.907-66.040 46.907-66.492M47.577-66.762L49.392-66.762Q49.392-67.039 49.295-67.291Q49.197-67.544 48.999-67.700Q48.801-67.855 48.517-67.855Q48.240-67.855 48.027-67.697Q47.813-67.538 47.695-67.283Q47.577-67.028 47.577-66.762M50.554-65.685Q50.554-66.017 50.778-66.244Q51.002-66.471 51.345-66.599Q51.689-66.728 52.061-66.780Q52.434-66.833 52.738-66.833L52.738-67.086Q52.738-67.291 52.631-67.471Q52.523-67.650 52.342-67.753Q52.161-67.855 51.952-67.855Q51.545-67.855 51.309-67.763Q51.398-67.726 51.444-67.642Q51.491-67.558 51.491-67.456Q51.491-67.360 51.444-67.281Q51.398-67.203 51.318-67.158Q51.238-67.114 51.149-67.114Q50.998-67.114 50.898-67.211Q50.797-67.309 50.797-67.456Q50.797-68.078 51.952-68.078Q52.164-68.078 52.413-68.014Q52.663-67.951 52.865-67.832Q53.066-67.712 53.193-67.527Q53.319-67.343 53.319-67.100L53.319-65.524Q53.319-65.408 53.381-65.312Q53.442-65.217 53.555-65.217Q53.664-65.217 53.729-65.311Q53.794-65.405 53.794-65.524L53.794-65.972L54.061-65.972L54.061-65.524Q54.061-65.254 53.834-65.089Q53.606-64.923 53.326-64.923Q53.118-64.923 52.981-65.077Q52.844-65.230 52.820-65.446Q52.673-65.179 52.391-65.034Q52.109-64.889 51.785-64.889Q51.508-64.889 51.224-64.964Q50.940-65.039 50.747-65.218Q50.554-65.398 50.554-65.685M51.169-65.685Q51.169-65.511 51.270-65.381Q51.371-65.251 51.527-65.181Q51.682-65.111 51.846-65.111Q52.065-65.111 52.273-65.208Q52.482-65.306 52.610-65.487Q52.738-65.668 52.738-65.894L52.738-66.622Q52.413-66.622 52.048-66.531Q51.682-66.440 51.426-66.228Q51.169-66.017 51.169-65.685",[1576],[1556,3486,3487],{"transform":3462},[1561,3488],{"d":3489,"fill":3459,"stroke":3459,"className":3490,"style":1623},"M55.865-64.984L54.737-67.483Q54.665-67.630 54.535-67.662Q54.405-67.695 54.176-67.695L54.176-67.975L55.690-67.975L55.690-67.695Q55.338-67.695 55.338-67.548Q55.338-67.503 55.349-67.483L56.213-65.565L56.993-67.295Q57.027-67.363 57.027-67.442Q57.027-67.555 56.943-67.625Q56.859-67.695 56.740-67.695L56.740-67.975L57.936-67.975L57.936-67.695Q57.717-67.695 57.546-67.592Q57.376-67.490 57.287-67.295L56.251-64.984Q56.203-64.889 56.097-64.889L56.019-64.889Q55.913-64.889 55.865-64.984",[1576],[1556,3492,3493],{"transform":3462},[1561,3494],{"d":3495,"fill":3459,"stroke":3459,"className":3496,"style":1623},"M58.220-66.492Q58.220-66.813 58.345-67.102Q58.470-67.391 58.696-67.614Q58.921-67.838 59.217-67.958Q59.512-68.078 59.830-68.078Q60.158-68.078 60.420-67.978Q60.681-67.879 60.857-67.697Q61.033-67.514 61.127-67.256Q61.221-66.998 61.221-66.666Q61.221-66.574 61.139-66.553L58.884-66.553L58.884-66.492Q58.884-65.904 59.167-65.521Q59.451-65.138 60.018-65.138Q60.340-65.138 60.608-65.331Q60.876-65.524 60.965-65.839Q60.972-65.880 61.047-65.894L61.139-65.894Q61.221-65.870 61.221-65.798Q61.221-65.791 61.215-65.764Q61.102-65.367 60.731-65.128Q60.360-64.889 59.936-64.889Q59.499-64.889 59.099-65.097Q58.699-65.306 58.460-65.673Q58.220-66.040 58.220-66.492M58.890-66.762L60.705-66.762Q60.705-67.039 60.608-67.291Q60.510-67.544 60.312-67.700Q60.114-67.855 59.830-67.855Q59.553-67.855 59.340-67.697Q59.126-67.538 59.008-67.283Q58.890-67.028 58.890-66.762M61.809-64.964L61.809-66.027Q61.809-66.051 61.837-66.078Q61.864-66.105 61.888-66.105L61.997-66.105Q62.062-66.105 62.076-66.047Q62.172-65.613 62.418-65.362Q62.664-65.111 63.077-65.111Q63.419-65.111 63.672-65.244Q63.925-65.377 63.925-65.685Q63.925-65.842 63.831-65.957Q63.737-66.071 63.599-66.140Q63.460-66.208 63.293-66.246L62.712-66.345Q62.356-66.413 62.083-66.634Q61.809-66.854 61.809-67.196Q61.809-67.445 61.920-67.620Q62.031-67.794 62.218-67.893Q62.404-67.992 62.619-68.035Q62.835-68.078 63.077-68.078Q63.491-68.078 63.771-67.896L63.987-68.071Q63.997-68.074 64.004-68.076Q64.010-68.078 64.021-68.078L64.072-68.078Q64.099-68.078 64.123-68.054Q64.147-68.030 64.147-68.002L64.147-67.155Q64.147-67.134 64.123-67.107Q64.099-67.080 64.072-67.080L63.959-67.080Q63.932-67.080 63.906-67.105Q63.881-67.131 63.881-67.155Q63.881-67.391 63.775-67.555Q63.669-67.719 63.486-67.801Q63.303-67.883 63.071-67.883Q62.742-67.883 62.486-67.780Q62.230-67.678 62.230-67.401Q62.230-67.206 62.413-67.097Q62.595-66.987 62.824-66.946L63.399-66.840Q63.645-66.792 63.858-66.664Q64.072-66.536 64.209-66.333Q64.345-66.129 64.345-65.880Q64.345-65.367 63.980-65.128Q63.614-64.889 63.077-64.889Q62.582-64.889 62.250-65.183L61.984-64.909Q61.963-64.889 61.936-64.889L61.888-64.889Q61.864-64.889 61.837-64.916Q61.809-64.943 61.809-64.964",[1576],[1556,3498,3500,3508,3514,3520,3526,3532,3538,3544,3550,3556,3562,3569,3575,3581,3587,3593,3599,3605,3611,3617,3623,3629],{"fill":3499,"stroke":1563},"var(--tk-warn)",[1556,3501,3503],{"transform":3502},"translate(-86.797 114.855)",[1561,3504],{"d":3505,"fill":3499,"stroke":3499,"className":3506,"style":3507},"M26.624-64.957L24.792-64.957L24.792-65.254Q25.061-65.254 25.229-65.299Q25.397-65.344 25.397-65.516L25.397-68.109L24.756-68.109L24.756-68.406L25.397-68.406L25.397-69.340Q25.397-69.754 25.702-70.035Q26.006-70.316 26.446-70.453Q26.885-70.590 27.296-70.590Q27.741-70.590 28.014-70.461L28.366-70.508L28.366-65.516Q28.366-65.348 28.534-65.301Q28.702-65.254 28.975-65.254L28.975-64.957L27.143-64.957L27.143-65.254Q27.413-65.254 27.581-65.299Q27.749-65.344 27.749-65.516L27.749-68.109L26.014-68.109L26.014-65.516Q26.014-65.348 26.182-65.301Q26.350-65.254 26.624-65.254L26.624-64.957M25.991-69.324L25.991-68.406L27.749-68.406L27.749-69.668Q27.573-69.766 27.573-69.996Q27.573-70.191 27.710-70.293Q27.510-70.332 27.213-70.332Q26.921-70.332 26.635-70.209Q26.350-70.086 26.171-69.855Q25.991-69.625 25.991-69.324M29.483-66.652Q29.483-67.156 29.739-67.588Q29.995-68.019 30.430-68.271Q30.866-68.523 31.366-68.523Q31.753-68.523 32.094-68.379Q32.436-68.234 32.698-67.973Q32.960-67.711 33.102-67.375Q33.245-67.039 33.245-66.652Q33.245-66.160 32.981-65.750Q32.717-65.340 32.288-65.109Q31.858-64.879 31.366-64.879Q30.874-64.879 30.440-65.111Q30.006-65.344 29.745-65.752Q29.483-66.160 29.483-66.652M31.366-65.156Q31.823-65.156 32.075-65.379Q32.327-65.602 32.415-65.953Q32.503-66.305 32.503-66.750Q32.503-67.180 32.409-67.518Q32.315-67.855 32.061-68.062Q31.807-68.269 31.366-68.269Q30.717-68.269 30.473-67.853Q30.229-67.437 30.229-66.750Q30.229-66.305 30.317-65.953Q30.405-65.602 30.657-65.379Q30.909-65.156 31.366-65.156",[1576],"stroke-width:0.240",[1556,3509,3510],{"transform":3502},[1561,3511],{"d":3512,"fill":3499,"stroke":3499,"className":3513,"style":3507},"M33.973-66.652Q33.973-67.156 34.229-67.588Q34.485-68.019 34.921-68.271Q35.356-68.523 35.856-68.523Q36.243-68.523 36.585-68.379Q36.926-68.234 37.188-67.973Q37.450-67.711 37.592-67.375Q37.735-67.039 37.735-66.652Q37.735-66.160 37.471-65.750Q37.208-65.340 36.778-65.109Q36.348-64.879 35.856-64.879Q35.364-64.879 34.930-65.111Q34.497-65.344 34.235-65.752Q33.973-66.160 33.973-66.652M35.856-65.156Q36.313-65.156 36.565-65.379Q36.817-65.602 36.905-65.953Q36.993-66.305 36.993-66.750Q36.993-67.180 36.899-67.518Q36.805-67.855 36.551-68.062Q36.297-68.269 35.856-68.269Q35.208-68.269 34.964-67.853Q34.719-67.437 34.719-66.750Q34.719-66.305 34.807-65.953Q34.895-65.602 35.147-65.379Q35.399-65.156 35.856-65.156M40.227-64.957L38.247-64.957L38.247-65.254Q38.516-65.254 38.684-65.299Q38.852-65.344 38.852-65.516L38.852-67.652Q38.852-67.867 38.790-67.963Q38.727-68.059 38.610-68.080Q38.493-68.102 38.247-68.102L38.247-68.398L39.415-68.484L39.415-67.699Q39.493-67.910 39.645-68.096Q39.797-68.281 39.997-68.383Q40.196-68.484 40.422-68.484Q40.669-68.484 40.860-68.340Q41.051-68.195 41.051-67.965Q41.051-67.809 40.946-67.699Q40.840-67.590 40.684-67.590Q40.528-67.590 40.419-67.699Q40.309-67.809 40.309-67.965Q40.309-68.125 40.415-68.230Q40.090-68.230 39.876-68.002Q39.661-67.773 39.565-67.434Q39.469-67.094 39.469-66.789L39.469-65.516Q39.469-65.348 39.696-65.301Q39.922-65.254 40.227-65.254L40.227-64.957M42.012-65.422Q42.012-65.605 42.149-65.742Q42.286-65.879 42.477-65.879Q42.669-65.879 42.801-65.746Q42.934-65.613 42.934-65.422Q42.934-65.223 42.801-65.090Q42.669-64.957 42.477-64.957Q42.286-64.957 42.149-65.094Q42.012-65.230 42.012-65.422M42.012-67.949Q42.012-68.133 42.149-68.269Q42.286-68.406 42.477-68.406Q42.669-68.406 42.801-68.273Q42.934-68.141 42.934-67.949Q42.934-67.750 42.801-67.617Q42.669-67.484 42.477-67.484Q42.286-67.484 42.149-67.621Q42.012-67.758 42.012-67.949",[1576],[1556,3515,3516],{"transform":3502},[1561,3517],{"d":3518,"fill":3499,"stroke":3499,"className":3519,"style":3507},"M53.155-63.598L48.323-63.598Q48.248-63.609 48.198-63.658Q48.147-63.707 48.147-63.781Q48.147-63.934 48.323-63.965L53.155-63.965Q53.323-63.937 53.323-63.781Q53.323-63.625 53.155-63.598M48.147-65.469Q48.147-65.574 48.260-65.637L52.717-67.797L48.252-69.965Q48.147-70.004 48.147-70.125Q48.147-70.203 48.200-70.256Q48.252-70.309 48.331-70.309Q48.350-70.309 48.413-70.293L53.229-67.965Q53.323-67.910 53.323-67.797Q53.323-67.691 53.221-67.629L48.413-65.301Q48.350-65.285 48.331-65.285Q48.252-65.285 48.200-65.338Q48.147-65.391 48.147-65.469",[1576],[1556,3521,3522],{"transform":3502},[1561,3523],{"d":3524,"fill":3499,"stroke":3499,"className":3525,"style":3507},"M57.104-65.133Q57.108-65.152 57.110-65.166Q57.112-65.180 57.112-65.203L57.706-67.574Q57.745-67.730 57.745-67.867Q57.745-68.016 57.692-68.123Q57.639-68.230 57.507-68.230Q57.327-68.230 57.208-68.061Q57.089-67.891 57.032-67.705Q56.975-67.519 56.905-67.230Q56.893-67.156 56.823-67.156L56.721-67.156Q56.686-67.156 56.659-67.191Q56.632-67.227 56.632-67.254L56.632-67.285Q56.718-67.617 56.811-67.859Q56.905-68.102 57.081-68.293Q57.257-68.484 57.522-68.484Q57.721-68.484 57.915-68.402Q58.108-68.320 58.235-68.166Q58.362-68.012 58.362-67.805Q58.612-68.121 58.938-68.303Q59.264-68.484 59.639-68.484Q60.089-68.484 60.372-68.258Q60.655-68.031 60.655-67.598Q60.655-67.258 60.522-66.857Q60.389-66.457 60.136-65.789Q60.042-65.566 60.042-65.383Q60.042-65.133 60.218-65.133Q60.526-65.133 60.747-65.455Q60.968-65.777 61.050-66.133Q61.077-66.203 61.136-66.203L61.241-66.203Q61.280-66.203 61.305-66.170Q61.331-66.137 61.331-66.109Q61.331-66.094 61.319-66.078Q61.206-65.625 60.911-65.252Q60.616-64.879 60.202-64.879Q59.893-64.879 59.675-65.066Q59.456-65.254 59.456-65.559Q59.456-65.727 59.514-65.844Q59.757-66.488 59.899-66.930Q60.042-67.371 60.042-67.699Q60.042-67.930 59.944-68.080Q59.846-68.230 59.624-68.230Q58.800-68.230 58.241-67.156L57.745-65.164Q57.714-65.039 57.608-64.959Q57.503-64.879 57.378-64.879Q57.268-64.879 57.186-64.949Q57.104-65.019 57.104-65.133",[1576],[1556,3527,3528],{"transform":3502},[1561,3529],{"d":3530,"fill":3499,"stroke":3499,"className":3531,"style":3507},"M62.285-65.422Q62.285-65.605 62.421-65.742Q62.558-65.879 62.750-65.879Q62.941-65.879 63.074-65.746Q63.207-65.613 63.207-65.422Q63.207-65.223 63.074-65.090Q62.941-64.957 62.750-64.957Q62.558-64.957 62.421-65.094Q62.285-65.230 62.285-65.422M62.605-66.598L62.285-70.215L62.285-70.254Q62.285-70.375 62.349-70.471Q62.414-70.566 62.523-70.621Q62.632-70.676 62.750-70.676Q62.929-70.676 63.068-70.557Q63.207-70.437 63.207-70.254L63.207-70.215L62.886-66.598Q62.886-66.562 62.855-66.535Q62.824-66.508 62.796-66.508L62.695-66.508Q62.664-66.508 62.634-66.533Q62.605-66.559 62.605-66.598",[1576],[1556,3533,3534],{"transform":3502},[1561,3535],{"d":3536,"fill":3499,"stroke":3499,"className":3537,"style":3507},"M68.913-64.957L67.081-64.957L67.081-65.254Q67.355-65.254 67.523-65.301Q67.691-65.348 67.691-65.516L67.691-69.676Q67.691-69.891 67.628-69.986Q67.566-70.082 67.447-70.103Q67.327-70.125 67.081-70.125L67.081-70.422L68.304-70.508L68.304-65.516Q68.304-65.348 68.472-65.301Q68.640-65.254 68.913-65.254L68.913-64.957M69.359-66.711Q69.359-67.191 69.591-67.607Q69.823-68.023 70.234-68.273Q70.644-68.523 71.120-68.523Q71.851-68.523 72.249-68.082Q72.648-67.641 72.648-66.910Q72.648-66.805 72.554-66.781L70.105-66.781L70.105-66.711Q70.105-66.301 70.226-65.945Q70.347-65.590 70.618-65.373Q70.890-65.156 71.320-65.156Q71.683-65.156 71.980-65.385Q72.277-65.613 72.378-65.965Q72.386-66.012 72.472-66.027L72.554-66.027Q72.648-66 72.648-65.918Q72.648-65.910 72.640-65.879Q72.577-65.652 72.439-65.469Q72.300-65.285 72.109-65.152Q71.917-65.019 71.698-64.949Q71.480-64.879 71.241-64.879Q70.870-64.879 70.532-65.016Q70.195-65.152 69.927-65.404Q69.659-65.656 69.509-65.996Q69.359-66.336 69.359-66.711M70.113-67.019L72.073-67.019Q72.073-67.324 71.972-67.615Q71.870-67.906 71.654-68.088Q71.437-68.269 71.120-68.269Q70.820-68.269 70.589-68.082Q70.359-67.894 70.236-67.603Q70.113-67.312 70.113-67.019M73.234-65.789Q73.234-66.273 73.636-66.568Q74.038-66.863 74.589-66.982Q75.140-67.102 75.632-67.102L75.632-67.391Q75.632-67.617 75.517-67.824Q75.402-68.031 75.204-68.150Q75.007-68.269 74.777-68.269Q74.351-68.269 74.066-68.164Q74.136-68.137 74.183-68.082Q74.230-68.027 74.255-67.957Q74.281-67.887 74.281-67.812Q74.281-67.707 74.230-67.615Q74.179-67.523 74.087-67.473Q73.995-67.422 73.890-67.422Q73.784-67.422 73.693-67.473Q73.601-67.523 73.550-67.615Q73.499-67.707 73.499-67.812Q73.499-68.230 73.888-68.377Q74.277-68.523 74.777-68.523Q75.109-68.523 75.462-68.393Q75.816-68.262 76.044-68.008Q76.273-67.754 76.273-67.406L76.273-65.605Q76.273-65.473 76.345-65.363Q76.417-65.254 76.546-65.254Q76.671-65.254 76.740-65.359Q76.808-65.465 76.808-65.605L76.808-66.117L77.089-66.117L77.089-65.605Q77.089-65.402 76.972-65.244Q76.855-65.086 76.673-65.002Q76.491-64.918 76.288-64.918Q76.058-64.918 75.906-65.090Q75.753-65.262 75.722-65.492Q75.562-65.211 75.253-65.045Q74.945-64.879 74.593-64.879Q74.081-64.879 73.657-65.102Q73.234-65.324 73.234-65.789M73.921-65.789Q73.921-65.504 74.148-65.318Q74.374-65.133 74.667-65.133Q74.913-65.133 75.138-65.250Q75.363-65.367 75.497-65.570Q75.632-65.773 75.632-66.027L75.632-66.859Q75.366-66.859 75.081-66.805Q74.796-66.750 74.525-66.621Q74.253-66.492 74.087-66.285Q73.921-66.078 73.921-65.789",[1576],[1556,3539,3540],{"transform":3502},[1561,3541],{"d":3542,"fill":3499,"stroke":3499,"className":3543,"style":3507},"M78.953-64.988L77.730-67.844Q77.648-68.019 77.504-68.064Q77.359-68.109 77.090-68.109L77.090-68.406L78.801-68.406L78.801-68.109Q78.379-68.109 78.379-67.926Q78.379-67.891 78.394-67.844L79.340-65.652L80.180-67.629Q80.219-67.707 80.219-67.797Q80.219-67.937 80.113-68.023Q80.008-68.109 79.867-68.109L79.867-68.406L81.219-68.406L81.219-68.109Q80.695-68.109 80.480-67.629L79.355-64.988Q79.293-64.879 79.187-64.879L79.121-64.879Q79.008-64.879 78.953-64.988",[1576],[1556,3545,3546],{"transform":3502},[1561,3547],{"d":3548,"fill":3499,"stroke":3499,"className":3549,"style":3507},"M81.402-66.711Q81.402-67.191 81.635-67.607Q81.867-68.023 82.277-68.273Q82.687-68.523 83.164-68.523Q83.894-68.523 84.293-68.082Q84.691-67.641 84.691-66.910Q84.691-66.805 84.598-66.781L82.148-66.781L82.148-66.711Q82.148-66.301 82.269-65.945Q82.391-65.590 82.662-65.373Q82.934-65.156 83.363-65.156Q83.727-65.156 84.023-65.385Q84.320-65.613 84.422-65.965Q84.430-66.012 84.516-66.027L84.598-66.027Q84.691-66 84.691-65.918Q84.691-65.910 84.684-65.879Q84.621-65.652 84.482-65.469Q84.344-65.285 84.152-65.152Q83.961-65.019 83.742-64.949Q83.523-64.879 83.285-64.879Q82.914-64.879 82.576-65.016Q82.238-65.152 81.971-65.404Q81.703-65.656 81.553-65.996Q81.402-66.336 81.402-66.711M82.156-67.019L84.117-67.019Q84.117-67.324 84.016-67.615Q83.914-67.906 83.697-68.088Q83.480-68.269 83.164-68.269Q82.863-68.269 82.633-68.082Q82.402-67.894 82.279-67.603Q82.156-67.312 82.156-67.019M85.223-64.965L85.223-66.187Q85.223-66.215 85.254-66.246Q85.285-66.277 85.309-66.277L85.414-66.277Q85.484-66.277 85.500-66.215Q85.562-65.894 85.701-65.654Q85.840-65.414 86.072-65.273Q86.305-65.133 86.613-65.133Q86.852-65.133 87.060-65.193Q87.269-65.254 87.406-65.402Q87.543-65.551 87.543-65.797Q87.543-66.051 87.332-66.217Q87.121-66.383 86.852-66.437L86.230-66.551Q85.824-66.629 85.523-66.885Q85.223-67.141 85.223-67.516Q85.223-67.883 85.424-68.105Q85.625-68.328 85.949-68.426Q86.273-68.523 86.613-68.523Q87.078-68.523 87.375-68.316L87.598-68.500Q87.621-68.523 87.652-68.523L87.703-68.523Q87.734-68.523 87.762-68.496Q87.789-68.469 87.789-68.437L87.789-67.453Q87.789-67.422 87.764-67.393Q87.738-67.363 87.703-67.363L87.598-67.363Q87.562-67.363 87.535-67.391Q87.508-67.418 87.508-67.453Q87.508-67.852 87.256-68.072Q87.004-68.293 86.605-68.293Q86.250-68.293 85.967-68.170Q85.684-68.047 85.684-67.742Q85.684-67.523 85.885-67.391Q86.086-67.258 86.332-67.215L86.957-67.102Q87.387-67.012 87.695-66.715Q88.004-66.418 88.004-66.004Q88.004-65.434 87.605-65.156Q87.207-64.879 86.613-64.879Q86.062-64.879 85.711-65.215L85.414-64.902Q85.391-64.879 85.355-64.879L85.309-64.879Q85.285-64.879 85.254-64.910Q85.223-64.941 85.223-64.965",[1576],[1556,3551,3552],{"transform":3502},[1561,3553],{"d":3554,"fill":3499,"stroke":3499,"className":3555,"style":3507},"M99.169-65.934L94.137-65.934Q94.059-65.941 94.010-65.990Q93.962-66.039 93.962-66.117Q93.962-66.187 94.009-66.238Q94.055-66.289 94.137-66.301L99.567-66.301Q99.817-66.500 100.098-66.668Q100.380-66.836 100.673-66.957Q100.071-67.211 99.567-67.621L94.137-67.621Q94.059-67.629 94.010-67.678Q93.962-67.727 93.962-67.805Q93.962-67.875 94.009-67.926Q94.055-67.977 94.137-67.988L99.169-67.988Q98.700-68.469 98.391-69.094Q98.384-69.125 98.384-69.133Q98.384-69.219 98.481-69.246L98.649-69.246Q98.712-69.234 98.747-69.180Q99.009-68.648 99.417-68.219Q99.825-67.789 100.346-67.496Q100.868-67.203 101.450-67.062Q101.512-67.051 101.512-66.957Q101.512-66.863 101.450-66.852Q100.868-66.711 100.346-66.418Q99.825-66.125 99.417-65.695Q99.009-65.266 98.747-64.734Q98.712-64.680 98.649-64.668L98.481-64.668Q98.384-64.695 98.384-64.781Q98.384-64.789 98.391-64.820Q98.696-65.437 99.169-65.934",[1576],[1556,3557,3558],{"transform":3502},[1561,3559],{"d":3560,"fill":3499,"stroke":3499,"className":3561,"style":3507},"M110.297-64.957L107.137-64.957L107.137-65.164Q107.137-65.191 107.160-65.223L108.512-66.621Q108.891-67.008 109.139-67.297Q109.387-67.586 109.561-67.943Q109.734-68.301 109.734-68.691Q109.734-69.039 109.602-69.332Q109.469-69.625 109.215-69.803Q108.961-69.980 108.606-69.980Q108.246-69.980 107.955-69.785Q107.664-69.590 107.520-69.262L107.574-69.262Q107.758-69.262 107.883-69.141Q108.008-69.019 108.008-68.828Q108.008-68.648 107.883-68.519Q107.758-68.391 107.574-68.391Q107.395-68.391 107.266-68.519Q107.137-68.648 107.137-68.828Q107.137-69.230 107.357-69.566Q107.578-69.902 107.943-70.090Q108.309-70.277 108.711-70.277Q109.191-70.277 109.607-70.090Q110.023-69.902 110.275-69.541Q110.527-69.180 110.527-68.691Q110.527-68.332 110.373-68.029Q110.219-67.727 109.967-67.467Q109.715-67.207 109.365-66.922Q109.016-66.637 108.848-66.484L107.918-65.644L108.633-65.644Q110.008-65.644 110.047-65.684Q110.117-65.762 110.160-65.947Q110.203-66.133 110.246-66.422L110.527-66.422",[1576],[1556,3563,3564],{"transform":3502},[1561,3565],{"d":3566,"fill":3499,"stroke":3499,"className":3567,"style":3568},"M111.500-67.929Q111.500-67.965 111.506-67.991L112.358-71.386Q112.382-71.489 112.388-71.542Q112.388-71.621 111.998-71.621Q111.963-71.621 111.940-71.655Q111.916-71.688 111.916-71.723Q111.940-71.814 111.951-71.842Q111.963-71.870 112.016-71.879L112.892-71.943L112.918-71.943Q112.988-71.917 112.988-71.841L112.508-69.922Q112.710-70.150 112.969-70.288Q113.229-70.426 113.510-70.426Q113.747-70.426 113.938-70.355Q114.128-70.285 114.242-70.127Q114.357-69.968 114.357-69.731Q114.357-69.494 114.248-69.172Q114.140-68.849 113.961-68.392Q113.908-68.275 113.908-68.140Q113.908-67.935 114.052-67.935Q114.219-67.935 114.357-68.051Q114.494-68.167 114.588-68.344Q114.682-68.521 114.717-68.674Q114.726-68.718 114.784-68.729L114.878-68.729Q114.957-68.703 114.957-68.644Q114.957-68.638 114.951-68.609Q114.866-68.263 114.617-67.992Q114.368-67.721 114.040-67.721Q113.788-67.721 113.602-67.861Q113.416-68 113.416-68.243Q113.416-68.354 113.463-68.457Q113.636-68.896 113.747-69.233Q113.858-69.570 113.858-69.807Q113.858-69.992 113.771-70.100Q113.683-70.209 113.498-70.209Q113.117-70.209 112.833-69.945Q112.549-69.681 112.347-69.280L112.016-67.965Q111.989-67.862 111.910-67.792Q111.831-67.721 111.723-67.721Q111.632-67.721 111.566-67.780Q111.500-67.839 111.500-67.929",[1576],"stroke-width:0.180",[1556,3570,3571],{"transform":3502},[1561,3572],{"d":3573,"fill":3499,"stroke":3499,"className":3574,"style":3507},"M123.896-63.598L119.064-63.598Q118.990-63.609 118.939-63.658Q118.888-63.707 118.888-63.781Q118.888-63.934 119.064-63.965L123.896-63.965Q124.064-63.937 124.064-63.781Q124.064-63.625 123.896-63.598M118.888-65.469Q118.888-65.574 119.001-65.637L123.458-67.797L118.993-69.965Q118.888-70.004 118.888-70.125Q118.888-70.203 118.941-70.256Q118.993-70.309 119.072-70.309Q119.091-70.309 119.154-70.293L123.970-67.965Q124.064-67.910 124.064-67.797Q124.064-67.691 123.962-67.629L119.154-65.301Q119.091-65.285 119.072-65.285Q118.993-65.285 118.941-65.338Q118.888-65.391 118.888-65.469",[1576],[1556,3576,3577],{"transform":3502},[1561,3578],{"d":3579,"fill":3499,"stroke":3499,"className":3580,"style":3507},"M127.844-65.133Q127.848-65.152 127.850-65.166Q127.852-65.180 127.852-65.203L128.446-67.574Q128.485-67.730 128.485-67.867Q128.485-68.016 128.432-68.123Q128.379-68.230 128.247-68.230Q128.067-68.230 127.948-68.061Q127.829-67.891 127.772-67.705Q127.715-67.519 127.645-67.230Q127.633-67.156 127.563-67.156L127.462-67.156Q127.426-67.156 127.399-67.191Q127.372-67.227 127.372-67.254L127.372-67.285Q127.458-67.617 127.551-67.859Q127.645-68.102 127.821-68.293Q127.997-68.484 128.262-68.484Q128.462-68.484 128.655-68.402Q128.848-68.320 128.975-68.166Q129.102-68.012 129.102-67.805Q129.352-68.121 129.678-68.303Q130.004-68.484 130.379-68.484Q130.829-68.484 131.112-68.258Q131.395-68.031 131.395-67.598Q131.395-67.258 131.262-66.857Q131.129-66.457 130.876-65.789Q130.782-65.566 130.782-65.383Q130.782-65.133 130.958-65.133Q131.266-65.133 131.487-65.455Q131.708-65.777 131.790-66.133Q131.817-66.203 131.876-66.203L131.981-66.203Q132.020-66.203 132.045-66.170Q132.071-66.137 132.071-66.109Q132.071-66.094 132.059-66.078Q131.946-65.625 131.651-65.252Q131.356-64.879 130.942-64.879Q130.633-64.879 130.415-65.066Q130.196-65.254 130.196-65.559Q130.196-65.727 130.254-65.844Q130.497-66.488 130.639-66.930Q130.782-67.371 130.782-67.699Q130.782-67.930 130.684-68.080Q130.587-68.230 130.364-68.230Q129.540-68.230 128.981-67.156L128.485-65.164Q128.454-65.039 128.348-64.959Q128.243-64.879 128.118-64.879Q128.008-64.879 127.926-64.949Q127.844-65.019 127.844-65.133",[1576],[1556,3582,3583],{"transform":3502},[1561,3584],{"d":3585,"fill":3499,"stroke":3499,"className":3586,"style":3507},"M133.026-65.422Q133.026-65.605 133.162-65.742Q133.299-65.879 133.491-65.879Q133.682-65.879 133.815-65.746Q133.948-65.613 133.948-65.422Q133.948-65.223 133.815-65.090Q133.682-64.957 133.491-64.957Q133.299-64.957 133.162-65.094Q133.026-65.230 133.026-65.422M133.346-66.598L133.026-70.215L133.026-70.254Q133.026-70.375 133.090-70.471Q133.155-70.566 133.264-70.621Q133.373-70.676 133.491-70.676Q133.670-70.676 133.809-70.557Q133.948-70.437 133.948-70.254L133.948-70.215L133.627-66.598Q133.627-66.562 133.596-66.535Q133.565-66.508 133.537-66.508L133.436-66.508Q133.405-66.508 133.375-66.533Q133.346-66.559 133.346-66.598",[1576],[1556,3588,3589],{"transform":3502},[1561,3590],{"d":3591,"fill":3499,"stroke":3499,"className":3592,"style":3507},"M145.070-65.934L140.038-65.934Q139.960-65.941 139.911-65.990Q139.863-66.039 139.863-66.117Q139.863-66.187 139.910-66.238Q139.956-66.289 140.038-66.301L145.468-66.301Q145.718-66.500 145.999-66.668Q146.281-66.836 146.574-66.957Q145.972-67.211 145.468-67.621L140.038-67.621Q139.960-67.629 139.911-67.678Q139.863-67.727 139.863-67.805Q139.863-67.875 139.910-67.926Q139.956-67.977 140.038-67.988L145.070-67.988Q144.601-68.469 144.292-69.094Q144.285-69.125 144.285-69.133Q144.285-69.219 144.382-69.246L144.550-69.246Q144.613-69.234 144.648-69.180Q144.910-68.648 145.318-68.219Q145.726-67.789 146.247-67.496Q146.769-67.203 147.351-67.062Q147.413-67.051 147.413-66.957Q147.413-66.863 147.351-66.852Q146.769-66.711 146.247-66.418Q145.726-66.125 145.318-65.695Q144.910-65.266 144.648-64.734Q144.613-64.680 144.550-64.668L144.382-64.668Q144.285-64.695 144.285-64.781Q144.285-64.789 144.292-64.820Q144.597-65.437 145.070-65.934",[1576],[1556,3594,3595],{"transform":3502},[1561,3596],{"d":3597,"fill":3499,"stroke":3499,"className":3598,"style":3507},"M153.053-65.133Q153.057-65.152 153.059-65.166Q153.061-65.180 153.061-65.203L154.214-69.805Q154.253-69.992 154.253-70.019Q154.253-70.125 153.757-70.125Q153.659-70.156 153.659-70.254L153.682-70.355Q153.690-70.402 153.772-70.422L154.878-70.508Q154.928-70.508 154.962-70.478Q154.995-70.449 154.995-70.391L154.374-67.887Q154.616-68.164 154.926-68.324Q155.237-68.484 155.589-68.484Q156.042-68.484 156.323-68.258Q156.604-68.031 156.604-67.598Q156.604-67.258 156.471-66.857Q156.339-66.457 156.085-65.789Q155.987-65.574 155.987-65.383Q155.987-65.133 156.163-65.133Q156.471-65.133 156.690-65.449Q156.909-65.766 156.995-66.133Q157.022-66.203 157.085-66.203L157.186-66.203Q157.225-66.203 157.251-66.174Q157.276-66.144 157.276-66.109Q157.276-66.094 157.268-66.078Q157.194-65.789 157.044-65.518Q156.893-65.246 156.663-65.062Q156.432-64.879 156.147-64.879Q155.842-64.879 155.624-65.066Q155.405-65.254 155.405-65.559Q155.405-65.723 155.460-65.844Q155.702-66.488 155.844-66.930Q155.987-67.371 155.987-67.699Q155.987-67.934 155.891-68.082Q155.796-68.230 155.573-68.230Q154.745-68.230 154.186-67.156L153.682-65.148Q153.651-65.027 153.553-64.953Q153.456-64.879 153.331-64.879Q153.217-64.879 153.135-64.949Q153.053-65.019 153.053-65.133",[1576],[1556,3600,3601],{"transform":3502},[1561,3602],{"d":3603,"fill":3499,"stroke":3499,"className":3604,"style":3507},"M165.591-63.598L160.759-63.598Q160.685-63.609 160.634-63.658Q160.583-63.707 160.583-63.781Q160.583-63.934 160.759-63.965L165.591-63.965Q165.759-63.937 165.759-63.781Q165.759-63.625 165.591-63.598M160.583-65.469Q160.583-65.574 160.696-65.637L165.153-67.797L160.688-69.965Q160.583-70.004 160.583-70.125Q160.583-70.203 160.636-70.256Q160.688-70.309 160.767-70.309Q160.786-70.309 160.849-70.293L165.665-67.965Q165.759-67.910 165.759-67.797Q165.759-67.691 165.657-67.629L160.849-65.301Q160.786-65.285 160.767-65.285Q160.688-65.285 160.636-65.338Q160.583-65.391 160.583-65.469",[1576],[1556,3606,3607],{"transform":3502},[1561,3608],{"d":3609,"fill":3499,"stroke":3499,"className":3610,"style":3507},"M170.996-64.957L169.164-64.957L169.164-65.254Q169.438-65.254 169.606-65.301Q169.774-65.348 169.774-65.516L169.774-69.676Q169.774-69.891 169.711-69.986Q169.649-70.082 169.530-70.103Q169.410-70.125 169.164-70.125L169.164-70.422L170.387-70.508L170.387-65.516Q170.387-65.348 170.555-65.301Q170.723-65.254 170.996-65.254L170.996-64.957M171.442-66.652Q171.442-67.156 171.698-67.588Q171.953-68.019 172.389-68.271Q172.824-68.523 173.324-68.523Q173.711-68.523 174.053-68.379Q174.395-68.234 174.656-67.973Q174.918-67.711 175.061-67.375Q175.203-67.039 175.203-66.652Q175.203-66.160 174.940-65.750Q174.676-65.340 174.246-65.109Q173.817-64.879 173.324-64.879Q172.832-64.879 172.399-65.111Q171.965-65.344 171.703-65.752Q171.442-66.160 171.442-66.652M173.324-65.156Q173.781-65.156 174.033-65.379Q174.285-65.602 174.373-65.953Q174.461-66.305 174.461-66.750Q174.461-67.180 174.367-67.518Q174.274-67.855 174.020-68.062Q173.766-68.269 173.324-68.269Q172.676-68.269 172.432-67.853Q172.188-67.437 172.188-66.750Q172.188-66.305 172.276-65.953Q172.364-65.602 172.615-65.379Q172.867-65.156 173.324-65.156M175.688-64.348Q175.688-64.629 175.899-64.840Q176.110-65.051 176.395-65.141Q176.239-65.266 176.160-65.455Q176.082-65.644 176.082-65.844Q176.082-66.199 176.313-66.492Q175.946-66.832 175.946-67.301Q175.946-67.652 176.149-67.922Q176.352-68.191 176.672-68.338Q176.992-68.484 177.336-68.484Q177.856-68.484 178.227-68.203Q178.590-68.574 179.137-68.574Q179.317-68.574 179.444-68.447Q179.571-68.320 179.571-68.141Q179.571-68.035 179.492-67.957Q179.414-67.879 179.305-67.879Q179.196-67.879 179.119-67.955Q179.043-68.031 179.043-68.141Q179.043-68.242 179.082-68.293Q179.090-68.301 179.094-68.307Q179.098-68.312 179.098-68.316Q178.723-68.316 178.403-68.062Q178.723-67.723 178.723-67.301Q178.723-67.031 178.606-66.814Q178.489-66.598 178.283-66.439Q178.078-66.281 177.836-66.199Q177.594-66.117 177.336-66.117Q177.117-66.117 176.905-66.176Q176.692-66.234 176.496-66.355Q176.403-66.215 176.403-66.035Q176.403-65.828 176.539-65.676Q176.676-65.523 176.883-65.523L177.578-65.523Q178.067-65.523 178.479-65.439Q178.891-65.355 179.170-65.098Q179.449-64.840 179.449-64.348Q179.449-63.984 179.129-63.752Q178.809-63.519 178.367-63.418Q177.926-63.316 177.571-63.316Q177.215-63.316 176.772-63.418Q176.328-63.519 176.008-63.752Q175.688-63.984 175.688-64.348M176.192-64.348Q176.192-64.152 176.336-64.004Q176.481-63.855 176.694-63.766Q176.906-63.676 177.147-63.629Q177.387-63.582 177.571-63.582Q177.813-63.582 178.143-63.660Q178.473-63.738 178.709-63.912Q178.946-64.086 178.946-64.348Q178.946-64.754 178.535-64.863Q178.125-64.973 177.563-64.973L176.883-64.973Q176.614-64.973 176.403-64.795Q176.192-64.617 176.192-64.348M177.336-66.383Q178.059-66.383 178.059-67.301Q178.059-68.223 177.336-68.223Q176.610-68.223 176.610-67.301Q176.610-66.383 177.336-66.383",[1576],[1556,3612,3613],{"transform":3502},[1561,3614],{"d":3615,"fill":3499,"stroke":3499,"className":3616,"style":3568},"M182.864-62.901L180.254-62.901L180.254-63.086Q180.260-63.109 180.280-63.135L181.431-64.190Q181.771-64.501 181.951-64.687Q182.132-64.873 182.277-65.133Q182.422-65.394 182.422-65.690Q182.422-65.963 182.296-66.178Q182.170-66.393 181.950-66.513Q181.730-66.633 181.455-66.633Q181.279-66.633 181.109-66.576Q180.939-66.519 180.807-66.412Q180.676-66.305 180.596-66.147Q180.684-66.147 180.762-66.103Q180.840-66.059 180.884-65.983Q180.927-65.907 180.927-65.810Q180.927-65.670 180.831-65.573Q180.734-65.476 180.591-65.476Q180.453-65.476 180.353-65.576Q180.254-65.675 180.254-65.810Q180.254-66.135 180.444-66.383Q180.635-66.630 180.938-66.761Q181.241-66.891 181.557-66.891Q181.938-66.891 182.281-66.756Q182.624-66.622 182.838-66.349Q183.052-66.077 183.052-65.690Q183.052-65.415 182.927-65.188Q182.802-64.961 182.622-64.789Q182.442-64.618 182.117-64.378Q181.792-64.137 181.707-64.070L180.951-63.466L181.484-63.466Q181.973-63.466 182.304-63.474Q182.636-63.481 182.650-63.496Q182.709-63.566 182.741-63.701Q182.773-63.836 182.805-64.047L183.052-64.047",[1576],[1556,3618,3619],{"transform":3502},[1561,3620],{"d":3621,"fill":3499,"stroke":3499,"className":3622,"style":3507},"M186.607-62.965Q185.994-63.422 185.592-64.057Q185.189-64.691 184.994-65.437Q184.799-66.184 184.799-66.957Q184.799-67.730 184.994-68.477Q185.189-69.223 185.592-69.857Q185.994-70.492 186.607-70.949Q186.619-70.953 186.627-70.955Q186.635-70.957 186.646-70.957L186.724-70.957Q186.763-70.957 186.789-70.930Q186.814-70.902 186.814-70.859Q186.814-70.809 186.783-70.789Q186.275-70.336 185.953-69.713Q185.631-69.090 185.490-68.394Q185.349-67.699 185.349-66.957Q185.349-66.223 185.488-65.523Q185.627-64.824 185.951-64.199Q186.275-63.574 186.783-63.125Q186.814-63.105 186.814-63.055Q186.814-63.012 186.789-62.984Q186.763-62.957 186.724-62.957L186.646-62.957Q186.638-62.961 186.629-62.963Q186.619-62.965 186.607-62.965",[1576],[1556,3624,3625],{"transform":3502},[1561,3626],{"d":3627,"fill":3499,"stroke":3499,"className":3628,"style":3507},"M187.991-65.133Q187.995-65.152 187.997-65.166Q187.999-65.180 187.999-65.203L188.593-67.574Q188.632-67.730 188.632-67.867Q188.632-68.016 188.579-68.123Q188.526-68.230 188.394-68.230Q188.214-68.230 188.095-68.061Q187.976-67.891 187.919-67.705Q187.862-67.519 187.792-67.230Q187.780-67.156 187.710-67.156L187.608-67.156Q187.573-67.156 187.546-67.191Q187.519-67.227 187.519-67.254L187.519-67.285Q187.605-67.617 187.698-67.859Q187.792-68.102 187.968-68.293Q188.144-68.484 188.409-68.484Q188.608-68.484 188.802-68.402Q188.995-68.320 189.122-68.166Q189.249-68.012 189.249-67.805Q189.499-68.121 189.825-68.303Q190.151-68.484 190.526-68.484Q190.976-68.484 191.259-68.258Q191.542-68.031 191.542-67.598Q191.542-67.258 191.409-66.857Q191.276-66.457 191.023-65.789Q190.929-65.566 190.929-65.383Q190.929-65.133 191.105-65.133Q191.413-65.133 191.634-65.455Q191.855-65.777 191.937-66.133Q191.964-66.203 192.023-66.203L192.128-66.203Q192.167-66.203 192.192-66.170Q192.218-66.137 192.218-66.109Q192.218-66.094 192.206-66.078Q192.093-65.625 191.798-65.252Q191.503-64.879 191.089-64.879Q190.780-64.879 190.562-65.066Q190.343-65.254 190.343-65.559Q190.343-65.727 190.401-65.844Q190.644-66.488 190.786-66.930Q190.929-67.371 190.929-67.699Q190.929-67.930 190.831-68.080Q190.733-68.230 190.511-68.230Q189.687-68.230 189.128-67.156L188.632-65.164Q188.601-65.039 188.495-64.959Q188.390-64.879 188.265-64.879Q188.155-64.879 188.073-64.949Q187.991-65.019 187.991-65.133",[1576],[1556,3630,3631],{"transform":3502},[1561,3632],{"d":3633,"fill":3499,"stroke":3499,"className":3634,"style":3507},"M193.172-65.422Q193.172-65.605 193.308-65.742Q193.445-65.879 193.637-65.879Q193.828-65.879 193.961-65.746Q194.094-65.613 194.094-65.422Q194.094-65.223 193.961-65.090Q193.828-64.957 193.637-64.957Q193.445-64.957 193.308-65.094Q193.172-65.230 193.172-65.422M193.492-66.598L193.172-70.215L193.172-70.254Q193.172-70.375 193.236-70.471Q193.301-70.566 193.410-70.621Q193.519-70.676 193.637-70.676Q193.816-70.676 193.955-70.557Q194.094-70.437 194.094-70.254L194.094-70.215L193.773-66.598Q193.773-66.562 193.742-66.535Q193.711-66.508 193.683-66.508L193.582-66.508Q193.551-66.508 193.521-66.533Q193.492-66.559 193.492-66.598M195.453-62.957L195.371-62.957Q195.336-62.957 195.310-62.986Q195.285-63.016 195.285-63.055Q195.285-63.105 195.316-63.125Q195.703-63.461 195.986-63.910Q196.269-64.359 196.435-64.859Q196.601-65.359 196.676-65.877Q196.750-66.394 196.750-66.957Q196.750-67.527 196.676-68.043Q196.601-68.559 196.435-69.055Q196.269-69.551 195.990-69.998Q195.711-70.445 195.316-70.789Q195.285-70.809 195.285-70.859Q195.285-70.898 195.310-70.928Q195.336-70.957 195.371-70.957L195.453-70.957Q195.465-70.957 195.474-70.955Q195.484-70.953 195.492-70.949Q196.105-70.492 196.508-69.857Q196.910-69.223 197.105-68.477Q197.301-67.730 197.301-66.957Q197.301-66.184 197.105-65.437Q196.910-64.691 196.508-64.057Q196.105-63.422 195.492-62.965Q195.480-62.965 195.473-62.963Q195.465-62.961 195.453-62.957",[1576],[1870,3636,3638,3639,3654,3655,3696,3697,3715,3716,3779,3780,851],{"className":3637},[1873],"The squeeze. A height-",[397,3640,3642],{"className":3641},[400],[397,3643,3645],{"className":3644,"ariaHidden":405},[404],[397,3646,3648,3651],{"className":3647},[409],[397,3649],{"className":3650,"style":2829},[413],[397,3652,2901],{"className":3653},[418,428]," binary tree holds at most ",[397,3656,3658],{"className":3657},[400],[397,3659,3661],{"className":3660,"ariaHidden":405},[404],[397,3662,3664,3667],{"className":3663},[409],[397,3665],{"className":3666,"style":2934},[413],[397,3668,3670,3673],{"className":3669},[418],[397,3671,824],{"className":3672},[418],[397,3674,3676],{"className":3675},[596],[397,3677,3679],{"className":3678},[600],[397,3680,3682],{"className":3681},[605],[397,3683,3685],{"className":3684,"style":2934},[609],[397,3686,3687,3690],{"style":2955},[397,3688],{"className":3689,"style":618},[617],[397,3691,3693],{"className":3692},[622,623,624,625],[397,3694,2901],{"className":3695},[418,428,625]," leaves (capacity, doubling per level), while correctness demands at least ",[397,3698,3700],{"className":3699},[400],[397,3701,3703],{"className":3702,"ariaHidden":405},[404],[397,3704,3706,3709,3712],{"className":3705},[409],[397,3707],{"className":3708,"style":2829},[413],[397,3710,429],{"className":3711},[418,428],[397,3713,2836],{"className":3714},[454]," leaves (the floor). Forcing ",[397,3717,3719],{"className":3718},[400],[397,3720,3722,3767],{"className":3721,"ariaHidden":405},[404],[397,3723,3725,3729,3758,3761,3764],{"className":3724},[409],[397,3726],{"className":3727,"style":3728},[413],"height:0.9851em;vertical-align:-0.136em;",[397,3730,3732,3735],{"className":3731},[418],[397,3733,824],{"className":3734},[418],[397,3736,3738],{"className":3737},[596],[397,3739,3741],{"className":3740},[600],[397,3742,3744],{"className":3743},[605],[397,3745,3747],{"className":3746,"style":2934},[609],[397,3748,3749,3752],{"style":2955},[397,3750],{"className":3751,"style":618},[617],[397,3753,3755],{"className":3754},[622,623,624,625],[397,3756,2901],{"className":3757},[418,428,625],[397,3759],{"className":3760,"style":647},[433],[397,3762,742],{"className":3763},[651],[397,3765],{"className":3766,"style":647},[433],[397,3768,3770,3773,3776],{"className":3769},[409],[397,3771],{"className":3772,"style":2829},[413],[397,3774,429],{"className":3775},[418,428],[397,3777,2836],{"className":3778},[454]," gives ",[397,3781,3783],{"className":3782},[400],[397,3784,3786,3804],{"className":3785,"ariaHidden":405},[404],[397,3787,3789,3792,3795,3798,3801],{"className":3788},[409],[397,3790],{"className":3791,"style":2982},[413],[397,3793,2901],{"className":3794},[418,428],[397,3796],{"className":3797,"style":647},[433],[397,3799,742],{"className":3800},[651],[397,3802],{"className":3803,"style":647},[433],[397,3805,3807,3810,3853,3856,3859],{"className":3806},[409],[397,3808],{"className":3809,"style":414},[413],[397,3811,3813,3819],{"className":3812},[438],[397,3814,3816],{"className":3815},[438],[397,3817,444],{"className":3818,"style":443},[418,442],[397,3820,3822],{"className":3821},[596],[397,3823,3825,3845],{"className":3824},[600,601],[397,3826,3828,3842],{"className":3827},[605],[397,3829,3831],{"className":3830,"style":3120},[609],[397,3832,3833,3836],{"style":3123},[397,3834],{"className":3835,"style":618},[617],[397,3837,3839],{"className":3838},[622,623,624,625],[397,3840,824],{"className":3841},[418,625],[397,3843,634],{"className":3844},[633],[397,3846,3848],{"className":3847},[605],[397,3849,3851],{"className":3850,"style":3142},[609],[397,3852],{},[397,3854,424],{"className":3855},[423],[397,3857,429],{"className":3858},[418,428],[397,3860,3237],{"className":3861},[454],[560,3863,3865,3929,3930],{"id":3864},"log2n-is-ωnlogn",[397,3866,3868],{"className":3867},[400],[397,3869,3871],{"className":3870,"ariaHidden":405},[404],[397,3872,3874,3877,3920,3923,3926],{"className":3873},[409],[397,3875],{"className":3876,"style":414},[413],[397,3878,3880,3886],{"className":3879},[438],[397,3881,3883],{"className":3882},[438],[397,3884,444],{"className":3885,"style":443},[418,442],[397,3887,3889],{"className":3888},[596],[397,3890,3892,3912],{"className":3891},[600,601],[397,3893,3895,3909],{"className":3894},[605],[397,3896,3898],{"className":3897,"style":3120},[609],[397,3899,3900,3903],{"style":3123},[397,3901],{"className":3902,"style":618},[617],[397,3904,3906],{"className":3905},[622,623,624,625],[397,3907,824],{"className":3908},[418,625],[397,3910,634],{"className":3911},[633],[397,3913,3915],{"className":3914},[605],[397,3916,3918],{"className":3917,"style":3142},[609],[397,3919],{},[397,3921,424],{"className":3922},[423],[397,3924,429],{"className":3925},[418,428],[397,3927,3237],{"className":3928},[454]," is ",[397,3931,3933],{"className":3932},[400],[397,3934,3936],{"className":3935,"ariaHidden":405},[404],[397,3937,3939,3942,3945,3948,3951,3954,3960,3963,3966],{"className":3938},[409],[397,3940],{"className":3941,"style":414},[413],[397,3943,518],{"className":3944},[418],[397,3946,424],{"className":3947},[423],[397,3949,429],{"className":3950},[418,428],[397,3952],{"className":3953,"style":434},[433],[397,3955,3957],{"className":3956},[438],[397,3958,444],{"className":3959,"style":443},[418,442],[397,3961],{"className":3962,"style":434},[433],[397,3964,429],{"className":3965},[418,428],[397,3967,455],{"className":3968},[454],[381,3970,3971,3972,4036,4037,4042],{},"We need a lower bound on ",[397,3973,3975],{"className":3974},[400],[397,3976,3978],{"className":3977,"ariaHidden":405},[404],[397,3979,3981,3984,4027,4030,4033],{"className":3980},[409],[397,3982],{"className":3983,"style":414},[413],[397,3985,3987,3993],{"className":3986},[438],[397,3988,3990],{"className":3989},[438],[397,3991,444],{"className":3992,"style":443},[418,442],[397,3994,3996],{"className":3995},[596],[397,3997,3999,4019],{"className":3998},[600,601],[397,4000,4002,4016],{"className":4001},[605],[397,4003,4005],{"className":4004,"style":3120},[609],[397,4006,4007,4010],{"style":3123},[397,4008],{"className":4009,"style":618},[617],[397,4011,4013],{"className":4012},[622,623,624,625],[397,4014,824],{"className":4015},[418,625],[397,4017,634],{"className":4018},[633],[397,4020,4022],{"className":4021},[605],[397,4023,4025],{"className":4024,"style":3142},[609],[397,4026],{},[397,4028,424],{"className":4029},[423],[397,4031,429],{"className":4032},[418,428],[397,4034,3237],{"className":4035},[454],".\n",[384,4038,4039],{"href":17},[495,4040,4041],{},"Stirling's approximation"," gives\nthe sharp estimate",[397,4044,4046],{"className":4045},[2969],[397,4047,4049],{"className":4048},[400],[397,4050,4052,4073],{"className":4051,"ariaHidden":405},[404],[397,4053,4055,4058,4061,4064,4067,4070],{"className":4054},[409],[397,4056],{"className":4057,"style":2829},[413],[397,4059,429],{"className":4060},[418,428],[397,4062,2836],{"className":4063},[454],[397,4065],{"className":4066,"style":647},[433],[397,4068,775],{"className":4069},[651],[397,4071],{"className":4072,"style":647},[433],[397,4074,4076,4080,4148,4151,4271,4275,4278,4405,4408],{"className":4075},[409],[397,4077],{"className":4078,"style":4079},[413],"height:1.8903em;vertical-align:-0.686em;",[397,4081,4084],{"className":4082},[418,4083],"sqrt",[397,4085,4087,4139],{"className":4086},[600,601],[397,4088,4090,4136],{"className":4089},[605],[397,4091,4094,4116],{"className":4092,"style":4093},[609],"height:0.9561em;",[397,4095,4099,4103],{"className":4096,"style":4098},[4097],"svg-align","top:-3em;",[397,4100],{"className":4101,"style":4102},[617],"height:3em;",[397,4104,4107,4110,4113],{"className":4105,"style":4106},[418],"padding-left:0.833em;",[397,4108,824],{"className":4109},[418],[397,4111,1297],{"className":4112,"style":1296},[418,428],[397,4114,429],{"className":4115},[418,428],[397,4117,4119,4122],{"style":4118},"top:-2.9161em;",[397,4120],{"className":4121,"style":4102},[617],[397,4123,4127],{"className":4124,"style":4126},[4125],"hide-tail","min-width:0.853em;height:1.08em;",[1549,4128,4133],{"xmlns":1551,"width":4129,"height":4130,"viewBox":4131,"preserveAspectRatio":4132},"400em","1.08em","0 0 400000 1080","xMinYMin slice",[1561,4134],{"d":4135},"M95,702\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl0 -0\nc5.3,-9.3,12,-14,20,-14\nH400000v40H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM834 80h400000v40h-400000z",[397,4137,634],{"className":4138},[633],[397,4140,4142],{"className":4141},[605],[397,4143,4146],{"className":4144,"style":4145},[609],"height:0.0839em;",[397,4147],{},[397,4149],{"className":4150,"style":434},[433],[397,4152,4154,4243],{"className":4153},[803],[397,4155,4157,4165,4237],{"className":4156},[803],[397,4158,4160],{"className":4159,"style":808},[423,807],[397,4161,424],{"className":4162},[4163,4164],"delimsizing","size2",[397,4166,4168,4172,4234],{"className":4167},[418],[397,4169],{"className":4170},[423,4171],"nulldelimiter",[397,4173,4176],{"className":4174},[4175],"mfrac",[397,4177,4179,4225],{"className":4178},[600,601],[397,4180,4182,4222],{"className":4181},[605],[397,4183,4186,4199,4210],{"className":4184,"style":4185},[609],"height:1.1076em;",[397,4187,4189,4192],{"style":4188},"top:-2.314em;",[397,4190],{"className":4191,"style":4102},[617],[397,4193,4195],{"className":4194},[418],[397,4196,4198],{"className":4197},[418,428],"e",[397,4200,4202,4205],{"style":4201},"top:-3.23em;",[397,4203],{"className":4204,"style":4102},[617],[397,4206],{"className":4207,"style":4209},[4208],"frac-line","border-bottom-width:0.04em;",[397,4211,4213,4216],{"style":4212},"top:-3.677em;",[397,4214],{"className":4215,"style":4102},[617],[397,4217,4219],{"className":4218},[418],[397,4220,429],{"className":4221},[418,428],[397,4223,634],{"className":4224},[633],[397,4226,4228],{"className":4227},[605],[397,4229,4232],{"className":4230,"style":4231},[609],"height:0.686em;",[397,4233],{},[397,4235],{"className":4236},[454,4171],[397,4238,4240],{"className":4239,"style":808},[454,807],[397,4241,455],{"className":4242},[4163,4164],[397,4244,4246],{"className":4245},[596],[397,4247,4249],{"className":4248},[600],[397,4250,4252],{"className":4251},[605],[397,4253,4256],{"className":4254,"style":4255},[609],"height:1.2043em;",[397,4257,4259,4262],{"style":4258},"top:-3.6029em;margin-right:0.05em;",[397,4260],{"className":4261,"style":618},[617],[397,4263,4265],{"className":4264},[622,623,624,625],[397,4266,4268],{"className":4267},[418,625],[397,4269,429],{"className":4270},[418,428,625],[397,4272],{"className":4273,"style":4274},[433],"margin-right:-0.1667em;",[397,4276],{"className":4277,"style":434},[433],[397,4279,4281,4288,4291,4295,4300,4303,4306,4309,4312,4399],{"className":4280},[803],[397,4282,4284],{"className":4283,"style":808},[423,807],[397,4285,424],{"className":4286},[4163,4287],"size1",[397,4289,553],{"className":4290},[418],[397,4292],{"className":4293,"style":4294},[433],"margin-right:0.2222em;",[397,4296,4299],{"className":4297},[4298],"mbin","+",[397,4301],{"className":4302,"style":4294},[433],[397,4304,419],{"className":4305},[418],[397,4307],{"className":4308,"style":4274},[433],[397,4310],{"className":4311,"style":434},[433],[397,4313,4315,4321,4393],{"className":4314},[803],[397,4316,4318],{"className":4317,"style":808},[423,807],[397,4319,424],{"className":4320},[4163,4287],[397,4322,4324,4327,4390],{"className":4323},[418],[397,4325],{"className":4326},[423,4171],[397,4328,4330],{"className":4329},[4175],[397,4331,4333,4381],{"className":4332},[600,601],[397,4334,4336,4378],{"className":4335},[605],[397,4337,4340,4355,4363],{"className":4338,"style":4339},[609],"height:0.8451em;",[397,4341,4343,4346],{"style":4342},"top:-2.655em;",[397,4344],{"className":4345,"style":4102},[617],[397,4347,4349],{"className":4348},[622,623,624,625],[397,4350,4352],{"className":4351},[418,625],[397,4353,429],{"className":4354},[418,428,625],[397,4356,4357,4360],{"style":4201},[397,4358],{"className":4359,"style":4102},[617],[397,4361],{"className":4362,"style":4209},[4208],[397,4364,4366,4369],{"style":4365},"top:-3.394em;",[397,4367],{"className":4368,"style":4102},[617],[397,4370,4372],{"className":4371},[622,623,624,625],[397,4373,4375],{"className":4374},[418,625],[397,4376,553],{"className":4377},[418,625],[397,4379,634],{"className":4380},[633],[397,4382,4384],{"className":4383},[605],[397,4385,4388],{"className":4386,"style":4387},[609],"height:0.345em;",[397,4389],{},[397,4391],{"className":4392},[454,4171],[397,4394,4396],{"className":4395,"style":808},[454,807],[397,4397,455],{"className":4398},[4163,4287],[397,4400,4402],{"className":4401,"style":808},[454,807],[397,4403,455],{"className":4404},[4163,4287],[397,4406],{"className":4407,"style":434},[433],[397,4409,817],{"className":4410},[816],[381,4412,4413],{},"from which, taking logarithms,",[397,4415,4417],{"className":4416},[2969],[397,4418,4420],{"className":4419},[400],[397,4421,4423,4490,4561,4631,4667,4737],{"className":4422,"ariaHidden":405},[404],[397,4424,4426,4429,4472,4475,4478,4481,4484,4487],{"className":4425},[409],[397,4427],{"className":4428,"style":414},[413],[397,4430,4432,4438],{"className":4431},[438],[397,4433,4435],{"className":4434},[438],[397,4436,444],{"className":4437,"style":443},[418,442],[397,4439,4441],{"className":4440},[596],[397,4442,4444,4464],{"className":4443},[600,601],[397,4445,4447,4461],{"className":4446},[605],[397,4448,4450],{"className":4449,"style":3120},[609],[397,4451,4452,4455],{"style":3123},[397,4453],{"className":4454,"style":618},[617],[397,4456,4458],{"className":4457},[622,623,624,625],[397,4459,824],{"className":4460},[418,625],[397,4462,634],{"className":4463},[633],[397,4465,4467],{"className":4466},[605],[397,4468,4470],{"className":4469,"style":3142},[609],[397,4471],{},[397,4473,424],{"className":4474},[423],[397,4476,429],{"className":4477},[418,428],[397,4479,3237],{"className":4480},[454],[397,4482],{"className":4483,"style":647},[433],[397,4485,775],{"className":4486},[651],[397,4488],{"className":4489,"style":647},[433],[397,4491,4493,4496,4499,4502,4545,4548,4551,4554,4558],{"className":4492},[409],[397,4494],{"className":4495,"style":3098},[413],[397,4497,429],{"className":4498},[418,428],[397,4500],{"className":4501,"style":434},[433],[397,4503,4505,4511],{"className":4504},[438],[397,4506,4508],{"className":4507},[438],[397,4509,444],{"className":4510,"style":443},[418,442],[397,4512,4514],{"className":4513},[596],[397,4515,4517,4537],{"className":4516},[600,601],[397,4518,4520,4534],{"className":4519},[605],[397,4521,4523],{"className":4522,"style":3120},[609],[397,4524,4525,4528],{"style":3123},[397,4526],{"className":4527,"style":618},[617],[397,4529,4531],{"className":4530},[622,623,624,625],[397,4532,824],{"className":4533},[418,625],[397,4535,634],{"className":4536},[633],[397,4538,4540],{"className":4539},[605],[397,4541,4543],{"className":4542,"style":3142},[609],[397,4544],{},[397,4546],{"className":4547,"style":434},[433],[397,4549,429],{"className":4550},[418,428],[397,4552],{"className":4553,"style":4294},[433],[397,4555,4557],{"className":4556},[4298],"−",[397,4559],{"className":4560,"style":4294},[433],[397,4562,4564,4567,4570,4573,4616,4619,4622,4625,4628],{"className":4563},[409],[397,4565],{"className":4566,"style":3098},[413],[397,4568,429],{"className":4569},[418,428],[397,4571],{"className":4572,"style":434},[433],[397,4574,4576,4582],{"className":4575},[438],[397,4577,4579],{"className":4578},[438],[397,4580,444],{"className":4581,"style":443},[418,442],[397,4583,4585],{"className":4584},[596],[397,4586,4588,4608],{"className":4587},[600,601],[397,4589,4591,4605],{"className":4590},[605],[397,4592,4594],{"className":4593,"style":3120},[609],[397,4595,4596,4599],{"style":3123},[397,4597],{"className":4598,"style":618},[617],[397,4600,4602],{"className":4601},[622,623,624,625],[397,4603,824],{"className":4604},[418,625],[397,4606,634],{"className":4607},[633],[397,4609,4611],{"className":4610},[605],[397,4612,4614],{"className":4613,"style":3142},[609],[397,4615],{},[397,4617],{"className":4618,"style":434},[433],[397,4620,4198],{"className":4621},[418,428],[397,4623],{"className":4624,"style":4294},[433],[397,4626,4299],{"className":4627},[4298],[397,4629],{"className":4630,"style":4294},[433],[397,4632,4634,4637,4640,4643,4649,4652,4655,4658,4661,4664],{"className":4633},[409],[397,4635],{"className":4636,"style":414},[413],[397,4638,419],{"className":4639},[418],[397,4641,424],{"className":4642},[423],[397,4644,4646],{"className":4645},[438],[397,4647,444],{"className":4648,"style":443},[418,442],[397,4650],{"className":4651,"style":434},[433],[397,4653,429],{"className":4654},[418,428],[397,4656,455],{"className":4657},[454],[397,4659],{"className":4660,"style":647},[433],[397,4662,775],{"className":4663},[651],[397,4665],{"className":4666,"style":647},[433],[397,4668,4670,4673,4676,4679,4722,4725,4728,4731,4734],{"className":4669},[409],[397,4671],{"className":4672,"style":3098},[413],[397,4674,429],{"className":4675},[418,428],[397,4677],{"className":4678,"style":434},[433],[397,4680,4682,4688],{"className":4681},[438],[397,4683,4685],{"className":4684},[438],[397,4686,444],{"className":4687,"style":443},[418,442],[397,4689,4691],{"className":4690},[596],[397,4692,4694,4714],{"className":4693},[600,601],[397,4695,4697,4711],{"className":4696},[605],[397,4698,4700],{"className":4699,"style":3120},[609],[397,4701,4702,4705],{"style":3123},[397,4703],{"className":4704,"style":618},[617],[397,4706,4708],{"className":4707},[622,623,624,625],[397,4709,824],{"className":4710},[418,625],[397,4712,634],{"className":4713},[633],[397,4715,4717],{"className":4716},[605],[397,4718,4720],{"className":4719,"style":3142},[609],[397,4721],{},[397,4723],{"className":4724,"style":434},[433],[397,4726,429],{"className":4727},[418,428],[397,4729],{"className":4730,"style":4294},[433],[397,4732,4557],{"className":4733},[4298],[397,4735],{"className":4736,"style":4294},[433],[397,4738,4740,4743,4746,4749,4752,4755],{"className":4739},[409],[397,4741],{"className":4742,"style":414},[413],[397,4744,419],{"className":4745},[418],[397,4747,424],{"className":4748},[423],[397,4750,429],{"className":4751},[418,428],[397,4753,455],{"className":4754},[454],[397,4756,851],{"className":4757},[418],[381,4759,4760,4761,2397,4828,851,4934],{},"The leading term is ",[397,4762,4764],{"className":4763},[400],[397,4765,4767],{"className":4766,"ariaHidden":405},[404],[397,4768,4770,4773,4776,4779,4822,4825],{"className":4769},[409],[397,4771],{"className":4772,"style":3098},[413],[397,4774,429],{"className":4775},[418,428],[397,4777],{"className":4778,"style":434},[433],[397,4780,4782,4788],{"className":4781},[438],[397,4783,4785],{"className":4784},[438],[397,4786,444],{"className":4787,"style":443},[418,442],[397,4789,4791],{"className":4790},[596],[397,4792,4794,4814],{"className":4793},[600,601],[397,4795,4797,4811],{"className":4796},[605],[397,4798,4800],{"className":4799,"style":3120},[609],[397,4801,4802,4805],{"style":3123},[397,4803],{"className":4804,"style":618},[617],[397,4806,4808],{"className":4807},[622,623,624,625],[397,4809,824],{"className":4810},[418,625],[397,4812,634],{"className":4813},[633],[397,4815,4817],{"className":4816},[605],[397,4818,4820],{"className":4819,"style":3142},[609],[397,4821],{},[397,4823],{"className":4824,"style":434},[433],[397,4826,429],{"className":4827},[418,428],[397,4829,4831],{"className":4830},[400],[397,4832,4834,4901],{"className":4833,"ariaHidden":405},[404],[397,4835,4837,4840,4883,4886,4889,4892,4895,4898],{"className":4836},[409],[397,4838],{"className":4839,"style":414},[413],[397,4841,4843,4849],{"className":4842},[438],[397,4844,4846],{"className":4845},[438],[397,4847,444],{"className":4848,"style":443},[418,442],[397,4850,4852],{"className":4851},[596],[397,4853,4855,4875],{"className":4854},[600,601],[397,4856,4858,4872],{"className":4857},[605],[397,4859,4861],{"className":4860,"style":3120},[609],[397,4862,4863,4866],{"style":3123},[397,4864],{"className":4865,"style":618},[617],[397,4867,4869],{"className":4868},[622,623,624,625],[397,4870,824],{"className":4871},[418,625],[397,4873,634],{"className":4874},[633],[397,4876,4878],{"className":4877},[605],[397,4879,4881],{"className":4880,"style":3142},[609],[397,4882],{},[397,4884,424],{"className":4885},[423],[397,4887,429],{"className":4888},[418,428],[397,4890,3237],{"className":4891},[454],[397,4893],{"className":4894,"style":647},[433],[397,4896,775],{"className":4897},[651],[397,4899],{"className":4900,"style":647},[433],[397,4902,4904,4907,4910,4913,4916,4919,4925,4928,4931],{"className":4903},[409],[397,4905],{"className":4906,"style":414},[413],[397,4908,518],{"className":4909},[418],[397,4911,424],{"className":4912},[423],[397,4914,429],{"className":4915},[418,428],[397,4917],{"className":4918,"style":434},[433],[397,4920,4922],{"className":4921},[438],[397,4923,444],{"className":4924,"style":443},[418,442],[397,4926],{"className":4927,"style":434},[433],[397,4929,429],{"className":4930},[418,428],[397,4932,455],{"className":4933},[454],[545,4935,4936],{},[384,4937,4941],{"href":4938,"ariaDescribedBy":4939,"dataFootnoteRef":376,"id":4940},"#user-content-fn-clrs-stirling",[551],"user-content-fnref-clrs-stirling","4",[381,4943,4944,4945,4963,4964,920],{},"If Stirling seems like a heavy tool, an elementary argument reaches the same\nconclusion. Drop the smallest half of the factors in ",[397,4946,4948],{"className":4947},[400],[397,4949,4951],{"className":4950,"ariaHidden":405},[404],[397,4952,4954,4957,4960],{"className":4953},[409],[397,4955],{"className":4956,"style":2829},[413],[397,4958,429],{"className":4959},[418,428],[397,4961,2836],{"className":4962},[454]," and bound each survivor\nbelow by ",[397,4965,4967],{"className":4966},[400],[397,4968,4970],{"className":4969,"ariaHidden":405},[404],[397,4971,4973,4976,4979],{"className":4972},[409],[397,4974],{"className":4975,"style":414},[413],[397,4977,429],{"className":4978},[418,428],[397,4980,4982],{"className":4981},[418],"\u002F2",[397,4984,4986],{"className":4985},[2969],[397,4987,4989],{"className":4988},[400],[397,4990,4992,5019,5039,5060,5094,5118,5477],{"className":4991,"ariaHidden":405},[404],[397,4993,4995,4998,5001,5004,5007,5010,5013,5016],{"className":4994},[409],[397,4996],{"className":4997,"style":2829},[413],[397,4999,429],{"className":5000},[418,428],[397,5002,2836],{"className":5003},[454],[397,5005],{"className":5006,"style":647},[433],[397,5008],{"className":5009,"style":647},[433],[397,5011,775],{"className":5012},[651],[397,5014],{"className":5015,"style":647},[433],[397,5017],{"className":5018,"style":647},[433],[397,5020,5022,5026,5029,5032,5036],{"className":5021},[409],[397,5023],{"className":5024,"style":5025},[413],"height:0.4445em;",[397,5027,429],{"className":5028},[418,428],[397,5030],{"className":5031,"style":4294},[433],[397,5033,5035],{"className":5034},[4298],"⋅",[397,5037],{"className":5038,"style":4294},[433],[397,5040,5042,5045,5048,5051,5054,5057],{"className":5041},[409],[397,5043],{"className":5044,"style":414},[413],[397,5046,424],{"className":5047},[423],[397,5049,429],{"className":5050},[418,428],[397,5052],{"className":5053,"style":4294},[433],[397,5055,4557],{"className":5056},[4298],[397,5058],{"className":5059,"style":4294},[433],[397,5061,5063,5066,5069,5072,5075,5079,5082,5085,5088,5091],{"className":5062},[409],[397,5064],{"className":5065,"style":414},[413],[397,5067,553],{"className":5068},[418],[397,5070,455],{"className":5071},[454],[397,5073],{"className":5074,"style":434},[433],[397,5076,5078],{"className":5077},[803],"⋯",[397,5080],{"className":5081,"style":434},[433],[397,5083,824],{"className":5084},[418],[397,5086],{"className":5087,"style":4294},[433],[397,5089,5035],{"className":5090},[4298],[397,5092],{"className":5093,"style":4294},[433],[397,5095,5097,5100,5103,5106,5109,5112,5115],{"className":5096},[409],[397,5098],{"className":5099,"style":2763},[413],[397,5101,553],{"className":5102},[418],[397,5104],{"className":5105,"style":647},[433],[397,5107],{"className":5108,"style":647},[433],[397,5110,742],{"className":5111},[651],[397,5113],{"className":5114,"style":647},[433],[397,5116],{"className":5117,"style":647},[433],[397,5119,5121,5125,5462,5465,5468,5471,5474],{"className":5120},[409],[397,5122],{"className":5123,"style":5124},[413],"height:3.3416em;vertical-align:-2.234em;",[397,5126,5129],{"className":5127},[803,5128],"munder",[397,5130,5132,5453],{"className":5131},[600,601],[397,5133,5135,5450],{"className":5134},[605],[397,5136,5138,5164],{"className":5137,"style":4185},[609],[397,5139,5141,5145],{"style":5140},"top:-1.0486em;",[397,5142],{"className":5143,"style":5144},[617],"height:3.1076em;",[397,5146,5148],{"className":5147},[622,623,624,625],[397,5149,5151,5154,5157],{"className":5150},[418,625],[397,5152,429],{"className":5153},[418,428,625],[397,5155,4982],{"className":5156},[418,625],[397,5158,5160],{"className":5159},[418,3016,625],[397,5161,5163],{"className":5162},[418,625]," factors",[397,5165,5167,5170],{"style":5166},"top:-3.1076em;",[397,5168],{"className":5169,"style":5144},[617],[397,5171,5173],{"className":5172},[803,5128],[397,5174,5176,5441],{"className":5175},[600,601],[397,5177,5179,5438],{"className":5178},[605],[397,5180,5182,5226],{"className":5181,"style":4185},[609],[397,5183,5186,5189],{"className":5184,"style":5185},[4097],"top:-1.7736em;",[397,5187],{"className":5188,"style":5144},[617],[397,5190,5194,5206,5216],{"className":5191,"style":5193},[5192],"stretchy","height:0.548em;min-width:1.6em;",[397,5195,5199],{"className":5196,"style":5198},[5197],"brace-left","height:0.548em;",[1549,5200,5203],{"xmlns":1551,"width":4129,"height":5201,"viewBox":5202,"preserveAspectRatio":4132},"0.548em","0 0 400000 548",[1561,5204],{"d":5205},"M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z",[397,5207,5210],{"className":5208,"style":5198},[5209],"brace-center",[1549,5211,5213],{"xmlns":1551,"width":4129,"height":5201,"viewBox":5202,"preserveAspectRatio":5212},"xMidYMin slice",[1561,5214],{"d":5215},"M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z",[397,5217,5220],{"className":5218,"style":5198},[5219],"brace-right",[1549,5221,5223],{"xmlns":1551,"width":4129,"height":5201,"viewBox":5202,"preserveAspectRatio":5222},"xMaxYMin slice",[1561,5224],{"d":5225},"M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z",[397,5227,5228,5231],{"style":5166},[397,5229],{"className":5230,"style":5144},[617],[397,5232,5234,5296,5299,5302,5305,5367,5370,5373,5376],{"className":5233},[418],[397,5235,5237,5240,5293],{"className":5236},[418],[397,5238],{"className":5239},[423,4171],[397,5241,5243],{"className":5242},[4175],[397,5244,5246,5285],{"className":5245},[600,601],[397,5247,5249,5282],{"className":5248},[605],[397,5250,5252,5263,5271],{"className":5251,"style":4185},[609],[397,5253,5254,5257],{"style":4188},[397,5255],{"className":5256,"style":4102},[617],[397,5258,5260],{"className":5259},[418],[397,5261,824],{"className":5262},[418],[397,5264,5265,5268],{"style":4201},[397,5266],{"className":5267,"style":4102},[617],[397,5269],{"className":5270,"style":4209},[4208],[397,5272,5273,5276],{"style":4212},[397,5274],{"className":5275,"style":4102},[617],[397,5277,5279],{"className":5278},[418],[397,5280,429],{"className":5281},[418,428],[397,5283,634],{"className":5284},[633],[397,5286,5288],{"className":5287},[605],[397,5289,5291],{"className":5290,"style":4231},[609],[397,5292],{},[397,5294],{"className":5295},[454,4171],[397,5297],{"className":5298,"style":4294},[433],[397,5300,5035],{"className":5301},[4298],[397,5303],{"className":5304,"style":4294},[433],[397,5306,5308,5311,5364],{"className":5307},[418],[397,5309],{"className":5310},[423,4171],[397,5312,5314],{"className":5313},[4175],[397,5315,5317,5356],{"className":5316},[600,601],[397,5318,5320,5353],{"className":5319},[605],[397,5321,5323,5334,5342],{"className":5322,"style":4185},[609],[397,5324,5325,5328],{"style":4188},[397,5326],{"className":5327,"style":4102},[617],[397,5329,5331],{"className":5330},[418],[397,5332,824],{"className":5333},[418],[397,5335,5336,5339],{"style":4201},[397,5337],{"className":5338,"style":4102},[617],[397,5340],{"className":5341,"style":4209},[4208],[397,5343,5344,5347],{"style":4212},[397,5345],{"className":5346,"style":4102},[617],[397,5348,5350],{"className":5349},[418],[397,5351,429],{"className":5352},[418,428],[397,5354,634],{"className":5355},[633],[397,5357,5359],{"className":5358},[605],[397,5360,5362],{"className":5361,"style":4231},[609],[397,5363],{},[397,5365],{"className":5366},[454,4171],[397,5368],{"className":5369,"style":434},[433],[397,5371,5078],{"className":5372},[803],[397,5374],{"className":5375,"style":434},[433],[397,5377,5379,5382,5435],{"className":5378},[418],[397,5380],{"className":5381},[423,4171],[397,5383,5385],{"className":5384},[4175],[397,5386,5388,5427],{"className":5387},[600,601],[397,5389,5391,5424],{"className":5390},[605],[397,5392,5394,5405,5413],{"className":5393,"style":4185},[609],[397,5395,5396,5399],{"style":4188},[397,5397],{"className":5398,"style":4102},[617],[397,5400,5402],{"className":5401},[418],[397,5403,824],{"className":5404},[418],[397,5406,5407,5410],{"style":4201},[397,5408],{"className":5409,"style":4102},[617],[397,5411],{"className":5412,"style":4209},[4208],[397,5414,5415,5418],{"style":4212},[397,5416],{"className":5417,"style":4102},[617],[397,5419,5421],{"className":5420},[418],[397,5422,429],{"className":5423},[418,428],[397,5425,634],{"className":5426},[633],[397,5428,5430],{"className":5429},[605],[397,5431,5433],{"className":5432,"style":4231},[609],[397,5434],{},[397,5436],{"className":5437},[454,4171],[397,5439,634],{"className":5440},[633],[397,5442,5444],{"className":5443},[605],[397,5445,5448],{"className":5446,"style":5447},[609],"height:1.334em;",[397,5449],{},[397,5451,634],{"className":5452},[633],[397,5454,5456],{"className":5455},[605],[397,5457,5460],{"className":5458,"style":5459},[609],"height:2.234em;",[397,5461],{},[397,5463],{"className":5464,"style":647},[433],[397,5466],{"className":5467,"style":647},[433],[397,5469,775],{"className":5470},[651],[397,5472],{"className":5473,"style":647},[433],[397,5475],{"className":5476,"style":647},[433],[397,5478,5480,5484,5594,5597],{"className":5479},[409],[397,5481],{"className":5482,"style":5483},[413],"height:2.1139em;vertical-align:-0.686em;",[397,5485,5487,5564],{"className":5486},[803],[397,5488,5490,5496,5558],{"className":5489},[803],[397,5491,5493],{"className":5492,"style":808},[423,807],[397,5494,424],{"className":5495},[4163,4164],[397,5497,5499,5502,5555],{"className":5498},[418],[397,5500],{"className":5501},[423,4171],[397,5503,5505],{"className":5504},[4175],[397,5506,5508,5547],{"className":5507},[600,601],[397,5509,5511,5544],{"className":5510},[605],[397,5512,5514,5525,5533],{"className":5513,"style":4185},[609],[397,5515,5516,5519],{"style":4188},[397,5517],{"className":5518,"style":4102},[617],[397,5520,5522],{"className":5521},[418],[397,5523,824],{"className":5524},[418],[397,5526,5527,5530],{"style":4201},[397,5528],{"className":5529,"style":4102},[617],[397,5531],{"className":5532,"style":4209},[4208],[397,5534,5535,5538],{"style":4212},[397,5536],{"className":5537,"style":4102},[617],[397,5539,5541],{"className":5540},[418],[397,5542,429],{"className":5543},[418,428],[397,5545,634],{"className":5546},[633],[397,5548,5550],{"className":5549},[605],[397,5551,5553],{"className":5552,"style":4231},[609],[397,5554],{},[397,5556],{"className":5557},[454,4171],[397,5559,5561],{"className":5560,"style":808},[454,807],[397,5562,455],{"className":5563},[4163,4164],[397,5565,5567],{"className":5566},[596],[397,5568,5570],{"className":5569},[600],[397,5571,5573],{"className":5572},[605],[397,5574,5577],{"className":5575,"style":5576},[609],"height:1.4279em;",[397,5578,5579,5582],{"style":4258},[397,5580],{"className":5581,"style":618},[617],[397,5583,5585],{"className":5584},[622,623,624,625],[397,5586,5588,5591],{"className":5587},[418,625],[397,5589,429],{"className":5590},[418,428,625],[397,5592,4982],{"className":5593},[418,625],[397,5595],{"className":5596,"style":434},[433],[397,5598,851],{"className":5599},[418],[381,5601,5602,5603,5637,5638,5674,5675,5705,5706,851],{},"The picture for ",[397,5604,5606],{"className":5605},[400],[397,5607,5609,5627],{"className":5608,"ariaHidden":405},[404],[397,5610,5612,5615,5618,5621,5624],{"className":5611},[409],[397,5613],{"className":5614,"style":871},[413],[397,5616,429],{"className":5617},[418,428],[397,5619],{"className":5620,"style":647},[433],[397,5622,775],{"className":5623},[651],[397,5625],{"className":5626,"style":647},[433],[397,5628,5630,5633],{"className":5629},[409],[397,5631],{"className":5632,"style":2198},[413],[397,5634,5636],{"className":5635},[418],"8",": keep only the larger half of the factors (each at least\n",[397,5639,5641],{"className":5640},[400],[397,5642,5644,5665],{"className":5643,"ariaHidden":405},[404],[397,5645,5647,5650,5653,5656,5659,5662],{"className":5646},[409],[397,5648],{"className":5649,"style":414},[413],[397,5651,429],{"className":5652},[418,428],[397,5654,4982],{"className":5655},[418],[397,5657],{"className":5658,"style":647},[433],[397,5660,775],{"className":5661},[651],[397,5663],{"className":5664,"style":647},[433],[397,5666,5668,5671],{"className":5667},[409],[397,5669],{"className":5670,"style":2198},[413],[397,5672,4941],{"className":5673},[418],") and throw the rest away. Half the factors, each ",[397,5676,5678],{"className":5677},[400],[397,5679,5681,5693],{"className":5680,"ariaHidden":405},[404],[397,5682,5684,5687,5690],{"className":5683},[409],[397,5685],{"className":5686,"style":738},[413],[397,5688,742],{"className":5689},[651],[397,5691],{"className":5692,"style":647},[433],[397,5694,5696,5699,5702],{"className":5695},[409],[397,5697],{"className":5698,"style":414},[413],[397,5700,429],{"className":5701},[418,428],[397,5703,4982],{"className":5704},[418],", already force\n",[397,5707,5709],{"className":5708},[400],[397,5710,5712,5733],{"className":5711,"ariaHidden":405},[404],[397,5713,5715,5718,5721,5724,5727,5730],{"className":5714},[409],[397,5716],{"className":5717,"style":2982},[413],[397,5719,429],{"className":5720},[418,428],[397,5722,2836],{"className":5723},[454],[397,5725],{"className":5726,"style":647},[433],[397,5728,742],{"className":5729},[651],[397,5731],{"className":5732,"style":647},[433],[397,5734,5736,5740,5743,5746,5749],{"className":5735},[409],[397,5737],{"className":5738,"style":5739},[413],"height:1.138em;vertical-align:-0.25em;",[397,5741,424],{"className":5742},[423],[397,5744,429],{"className":5745},[418,428],[397,5747,4982],{"className":5748},[418],[397,5750,5752,5755],{"className":5751},[454],[397,5753,455],{"className":5754},[454],[397,5756,5758],{"className":5757},[596],[397,5759,5761],{"className":5760},[600],[397,5762,5764],{"className":5763},[605],[397,5765,5768],{"className":5766,"style":5767},[609],"height:0.888em;",[397,5769,5770,5773],{"style":2955},[397,5771],{"className":5772,"style":618},[617],[397,5774,5776],{"className":5775},[622,623,624,625],[397,5777,5779,5782],{"className":5778},[418,625],[397,5780,429],{"className":5781},[418,428,625],[397,5783,4982],{"className":5784},[418,625],[1543,5786,5788,6028],{"className":5787},[1546,1547],[1549,5789,5793],{"xmlns":1551,"width":5790,"height":5791,"viewBox":5792},"349.789","86.428","-75 -75 262.342 64.821",[1556,5794,5795,5807,5819,5831,5843,5857,5869,5881,5893,5897,5961,5964,5980],{"stroke":1558,"style":1559},[1556,5796,5797,5800],{"fill":3328},[1561,5798],{"d":5799},"M-54.095-32.512h19.917V-52.43h-19.917Z",[1556,5801,5803],{"transform":5802},"translate(-2.312 2.9)",[1561,5804],{"d":5805,"fill":1558,"stroke":1558,"className":5806,"style":1577},"M-43.750-43.838Q-43.750-44.396-43.390-44.809Q-43.030-45.222-42.454-45.494L-42.823-45.727Q-43.126-45.929-43.313-46.259Q-43.500-46.589-43.500-46.945Q-43.500-47.599-42.994-48.032Q-42.489-48.465-41.825-48.465Q-41.426-48.465-41.041-48.305Q-40.657-48.144-40.408-47.839Q-40.160-47.533-40.160-47.116Q-40.160-46.285-41.228-45.727L-40.674-45.380Q-40.327-45.152-40.116-44.783Q-39.905-44.413-39.905-44Q-39.905-43.622-40.063-43.304Q-40.221-42.985-40.498-42.752Q-40.775-42.519-41.118-42.396Q-41.461-42.273-41.825-42.273Q-42.291-42.273-42.737-42.460Q-43.183-42.647-43.467-43.001Q-43.750-43.354-43.750-43.838M-43.227-43.838Q-43.227-43.293-42.808-42.926Q-42.388-42.559-41.825-42.559Q-41.496-42.559-41.171-42.691Q-40.845-42.823-40.637-43.077Q-40.428-43.332-40.428-43.675Q-40.428-43.939-40.564-44.163Q-40.700-44.387-40.933-44.541L-42.177-45.323Q-42.638-45.086-42.933-44.699Q-43.227-44.312-43.227-43.838M-42.616-46.593L-41.500-45.890Q-41.276-46.013-41.072-46.202Q-40.867-46.391-40.747-46.624Q-40.626-46.857-40.626-47.116Q-40.626-47.424-40.797-47.674Q-40.969-47.925-41.245-48.065Q-41.522-48.206-41.834-48.206Q-42.283-48.206-42.656-47.960Q-43.030-47.714-43.030-47.287Q-43.030-46.883-42.616-46.593",[1576],[1556,5808,5809,5812],{"fill":3328},[1561,5810],{"d":5811},"M-31.333-32.512h19.917V-52.43h-19.917Z",[1556,5813,5815],{"transform":5814},"translate(20.45 2.9)",[1561,5816],{"d":5817,"fill":1558,"stroke":1558,"className":5818,"style":1577},"M-42.515-42.713Q-42.515-43.350-42.359-43.996Q-42.203-44.642-41.911-45.248Q-41.619-45.855-41.210-46.404L-40.393-47.512L-41.421-47.512Q-43.065-47.512-43.113-47.468Q-43.219-47.340-43.337-46.637L-43.623-46.637L-43.328-48.553L-43.038-48.553L-43.038-48.527Q-43.038-48.364-42.474-48.316Q-41.909-48.267-41.364-48.267L-39.646-48.267L-39.646-48.061Q-39.646-48.043-39.648-48.034Q-39.650-48.026-39.655-48.017L-40.942-46.268Q-41.193-45.916-41.340-45.490Q-41.487-45.064-41.553-44.600Q-41.619-44.137-41.632-43.726Q-41.645-43.315-41.645-42.713Q-41.645-42.533-41.771-42.403Q-41.896-42.273-42.076-42.273Q-42.195-42.273-42.298-42.330Q-42.401-42.388-42.458-42.491Q-42.515-42.594-42.515-42.713",[1576],[1556,5820,5821,5824],{"fill":3328},[1561,5822],{"d":5823},"M-8.57-32.512h19.916V-52.43H-8.57Z",[1556,5825,5827],{"transform":5826},"translate(43.212 2.9)",[1561,5828],{"d":5829,"fill":1558,"stroke":1558,"className":5830,"style":1577},"M-41.825-42.273Q-42.559-42.273-42.990-42.754Q-43.421-43.236-43.585-43.928Q-43.750-44.620-43.750-45.367Q-43.750-46.096-43.458-46.819Q-43.166-47.542-42.612-48.004Q-42.058-48.465-41.311-48.465Q-40.815-48.465-40.479-48.199Q-40.142-47.933-40.142-47.450Q-40.142-47.270-40.270-47.142Q-40.397-47.015-40.573-47.015Q-40.753-47.015-40.883-47.140Q-41.012-47.265-41.012-47.450Q-41.012-47.564-40.955-47.668Q-40.898-47.771-40.797-47.830Q-40.696-47.889-40.573-47.889Q-40.569-47.889-40.564-47.887Q-40.560-47.885-40.555-47.881Q-40.670-48.048-40.878-48.127Q-41.087-48.206-41.311-48.206Q-41.755-48.206-42.113-47.905Q-42.471-47.604-42.660-47.151Q-42.893-46.545-42.893-45.512Q-42.722-45.877-42.421-46.105Q-42.120-46.334-41.733-46.334Q-41.329-46.334-40.984-46.167Q-40.639-46-40.402-45.719Q-40.164-45.437-40.035-45.075Q-39.905-44.712-39.905-44.308Q-39.905-43.763-40.149-43.297Q-40.393-42.831-40.832-42.552Q-41.272-42.273-41.825-42.273M-41.825-42.559Q-41.364-42.559-41.129-42.816Q-40.894-43.073-40.828-43.447Q-40.762-43.820-40.762-44.290L-40.762-44.325Q-40.762-44.813-40.819-45.178Q-40.876-45.543-41.105-45.806Q-41.333-46.070-41.777-46.070Q-42.146-46.070-42.397-45.826Q-42.647-45.582-42.762-45.218Q-42.876-44.853-42.876-44.506Q-42.876-44.387-42.867-44.325Q-42.867-44.308-42.869-44.297Q-42.871-44.286-42.876-44.273Q-42.876-43.622-42.638-43.091Q-42.401-42.559-41.825-42.559",[1576],[1556,5832,5833,5836],{"fill":3328},[1561,5834],{"d":5835},"M14.192-32.512h19.916V-52.43H14.192Z",[1556,5837,5839],{"transform":5838},"translate(65.974 2.9)",[1561,5840],{"d":5841,"fill":1558,"stroke":1558,"className":5842,"style":1577},"M-43.311-43.477Q-43.170-43.064-42.810-42.812Q-42.450-42.559-42.014-42.559Q-41.562-42.559-41.296-42.812Q-41.030-43.064-40.927-43.449Q-40.824-43.833-40.824-44.290Q-40.824-45.991-41.733-45.991Q-42.054-45.991-42.283-45.897Q-42.511-45.802-42.641-45.683Q-42.770-45.565-42.882-45.426Q-42.994-45.288-43.030-45.279L-43.113-45.279Q-43.157-45.279-43.188-45.310Q-43.219-45.341-43.219-45.389L-43.219-48.386Q-43.219-48.417-43.183-48.441Q-43.148-48.465-43.122-48.465L-43.082-48.465Q-42.450-48.175-41.777-48.175Q-41.105-48.175-40.463-48.465L-40.437-48.465Q-40.406-48.465-40.373-48.443Q-40.340-48.421-40.340-48.386L-40.340-48.285Q-40.340-48.281-40.349-48.263Q-40.358-48.245-40.358-48.241Q-40.674-47.846-41.144-47.624Q-41.615-47.402-42.111-47.402Q-42.520-47.402-42.902-47.512L-42.902-45.793Q-42.445-46.250-41.733-46.250Q-41.223-46.250-40.824-45.969Q-40.424-45.688-40.202-45.233Q-39.980-44.778-39.980-44.273Q-39.980-43.723-40.259-43.264Q-40.538-42.805-41.004-42.539Q-41.470-42.273-42.014-42.273Q-42.454-42.273-42.838-42.500Q-43.223-42.726-43.451-43.106Q-43.680-43.486-43.680-43.930Q-43.680-44.123-43.548-44.255Q-43.416-44.387-43.219-44.387Q-43.087-44.387-42.983-44.328Q-42.880-44.268-42.821-44.165Q-42.762-44.062-42.762-43.930Q-42.762-43.732-42.889-43.600Q-43.016-43.469-43.219-43.469Q-43.280-43.469-43.311-43.477",[1576],[1556,5844,5846,5849],{"fill":5845},"var(--tk-soft-neutral)",[1561,5847],{"d":5848},"M36.954-32.512H56.87V-52.43H36.954Z",[1556,5850,5852],{"transform":5851},"translate(88.737 2.9)",[1561,5853],{"d":5854,"fill":5855,"stroke":5855,"className":5856,"style":1577},"M-41.439-43.948L-43.878-43.948L-43.878-44.264L-41.052-48.412Q-41.008-48.465-40.942-48.465L-40.788-48.465Q-40.749-48.465-40.716-48.432Q-40.683-48.399-40.683-48.355L-40.683-44.264L-39.782-44.264L-39.782-43.948L-40.683-43.948L-40.683-43.082Q-40.683-42.787-39.782-42.787L-39.782-42.471L-42.335-42.471L-42.335-42.787Q-41.975-42.787-41.707-42.842Q-41.439-42.897-41.439-43.082L-41.439-43.948M-41.382-47.437L-43.544-44.264L-41.382-44.264","var(--tk-line)",[1576],[1556,5858,5859,5862],{"fill":5845},[1561,5860],{"d":5861},"M59.716-32.512h19.917V-52.43H59.716Z",[1556,5863,5865],{"transform":5864},"translate(111.499 2.9)",[1561,5866],{"d":5867,"fill":5855,"stroke":5855,"className":5868,"style":1577},"M-43.236-43.192L-43.280-43.192Q-43.078-42.875-42.691-42.717Q-42.304-42.559-41.878-42.559Q-41.342-42.559-41.103-42.994Q-40.863-43.429-40.863-44.009Q-40.863-44.589-41.109-45.029Q-41.355-45.468-41.887-45.468L-42.507-45.468Q-42.533-45.468-42.566-45.497Q-42.599-45.525-42.599-45.547L-42.599-45.648Q-42.599-45.679-42.570-45.703Q-42.542-45.727-42.507-45.727L-41.988-45.767Q-41.522-45.767-41.276-46.239Q-41.030-46.712-41.030-47.230Q-41.030-47.657-41.243-47.931Q-41.456-48.206-41.878-48.206Q-42.221-48.206-42.546-48.076Q-42.871-47.947-43.056-47.692L-43.030-47.692Q-42.827-47.692-42.691-47.551Q-42.555-47.410-42.555-47.213Q-42.555-47.015-42.689-46.881Q-42.823-46.747-43.021-46.747Q-43.223-46.747-43.361-46.881Q-43.500-47.015-43.500-47.213Q-43.500-47.802-42.997-48.133Q-42.493-48.465-41.878-48.465Q-41.500-48.465-41.098-48.325Q-40.696-48.184-40.428-47.905Q-40.160-47.626-40.160-47.230Q-40.160-46.681-40.514-46.244Q-40.867-45.806-41.408-45.622Q-41.017-45.543-40.672-45.319Q-40.327-45.095-40.116-44.754Q-39.905-44.413-39.905-44.018Q-39.905-43.636-40.068-43.313Q-40.230-42.990-40.522-42.754Q-40.815-42.519-41.162-42.396Q-41.509-42.273-41.878-42.273Q-42.326-42.273-42.757-42.434Q-43.188-42.594-43.469-42.921Q-43.750-43.249-43.750-43.706Q-43.750-43.921-43.603-44.064Q-43.456-44.207-43.236-44.207Q-43.025-44.207-42.880-44.062Q-42.735-43.917-42.735-43.706Q-42.735-43.495-42.882-43.343Q-43.030-43.192-43.236-43.192",[1576],[1556,5870,5871,5874],{"fill":5845},[1561,5872],{"d":5873},"M82.478-32.512h19.917V-52.43H82.478Z",[1556,5875,5877],{"transform":5876},"translate(134.261 2.9)",[1561,5878],{"d":5879,"fill":5855,"stroke":5855,"className":5880,"style":1577},"M-40.230-42.471L-43.680-42.471L-43.680-42.704Q-43.680-42.717-43.649-42.748L-42.195-44.325Q-41.729-44.822-41.476-45.127Q-41.223-45.433-41.032-45.844Q-40.841-46.255-40.841-46.694Q-40.841-47.283-41.164-47.716Q-41.487-48.149-42.067-48.149Q-42.331-48.149-42.577-48.039Q-42.823-47.929-42.999-47.742Q-43.175-47.555-43.271-47.305L-43.192-47.305Q-42.990-47.305-42.847-47.169Q-42.704-47.033-42.704-46.817Q-42.704-46.611-42.847-46.472Q-42.990-46.334-43.192-46.334Q-43.394-46.334-43.537-46.477Q-43.680-46.619-43.680-46.817Q-43.680-47.279-43.443-47.652Q-43.205-48.026-42.805-48.245Q-42.406-48.465-41.957-48.465Q-41.434-48.465-40.980-48.250Q-40.525-48.034-40.252-47.635Q-39.980-47.235-39.980-46.694Q-39.980-46.299-40.151-45.945Q-40.323-45.591-40.588-45.312Q-40.854-45.033-41.305-44.648Q-41.755-44.264-41.834-44.189L-42.858-43.227L-42.041-43.227Q-41.390-43.227-40.953-43.238Q-40.516-43.249-40.485-43.271Q-40.415-43.354-40.360-43.594Q-40.305-43.833-40.265-44.101L-39.980-44.101",[1576],[1556,5882,5883,5886],{"fill":5845},[1561,5884],{"d":5885},"M105.24-32.512h19.918V-52.43H105.24Z",[1556,5887,5889],{"transform":5888},"translate(157.023 2.9)",[1561,5890],{"d":5891,"fill":5855,"stroke":5855,"className":5892,"style":1577},"M-40.230-42.471L-43.262-42.471L-43.262-42.787Q-42.111-42.787-42.111-43.082L-42.111-47.806Q-42.599-47.573-43.320-47.573L-43.320-47.889Q-42.190-47.889-41.628-48.465L-41.483-48.465Q-41.448-48.465-41.415-48.432Q-41.382-48.399-41.382-48.364L-41.382-43.082Q-41.382-42.787-40.230-42.787",[1576],[1561,5894],{"fill":1563,"stroke":3459,"d":5895,"style":5896},"M-54.095-56.697h88.203M-54.095-54.42v-2.277M34.108-54.42v-2.277","stroke-width:.8",[1556,5898,5900,5907,5913,5919,5925,5931,5937,5943,5949,5955],{"fill":3459,"stroke":1563,"fontSize":5899},"7",[1556,5901,5903],{"transform":5902},"translate(-18.134 -21.216)",[1561,5904],{"d":5905,"fill":3459,"stroke":3459,"className":5906,"style":1623},"M-42.226-42.471L-43.809-42.471L-43.809-42.751Q-43.580-42.751-43.431-42.785Q-43.283-42.820-43.283-42.960L-43.283-46.579Q-43.283-46.849-43.390-46.911Q-43.498-46.972-43.809-46.972L-43.809-47.253L-42.729-47.328L-42.729-44.040L-41.744-44.809Q-41.539-44.946-41.539-45.096Q-41.539-45.140-41.580-45.175Q-41.621-45.209-41.666-45.209L-41.666-45.489L-40.302-45.489L-40.302-45.209Q-40.791-45.209-41.310-44.809L-41.867-44.375L-40.890-43.151Q-40.688-42.905-40.555-42.828Q-40.422-42.751-40.135-42.751L-40.135-42.471L-41.567-42.471L-41.567-42.751Q-41.379-42.751-41.379-42.864Q-41.379-42.960-41.533-43.151L-42.267-44.060L-42.749-43.681L-42.749-42.960Q-42.749-42.823-42.601-42.787Q-42.452-42.751-42.226-42.751",[1576],[1556,5908,5909],{"transform":5902},[1561,5910],{"d":5911,"fill":3459,"stroke":3459,"className":5912,"style":1623},"M-39.878-44.006Q-39.878-44.327-39.753-44.616Q-39.628-44.905-39.402-45.128Q-39.177-45.352-38.881-45.472Q-38.586-45.592-38.268-45.592Q-37.940-45.592-37.678-45.492Q-37.417-45.393-37.241-45.211Q-37.065-45.028-36.971-44.770Q-36.877-44.512-36.877-44.180Q-36.877-44.088-36.959-44.067L-39.214-44.067L-39.214-44.006Q-39.214-43.418-38.931-43.035Q-38.647-42.652-38.080-42.652Q-37.758-42.652-37.490-42.845Q-37.222-43.038-37.133-43.353Q-37.126-43.394-37.051-43.408L-36.959-43.408Q-36.877-43.384-36.877-43.312Q-36.877-43.305-36.883-43.278Q-36.996-42.881-37.367-42.642Q-37.738-42.403-38.162-42.403Q-38.599-42.403-38.999-42.611Q-39.399-42.820-39.638-43.187Q-39.878-43.554-39.878-44.006M-39.208-44.276L-37.393-44.276Q-37.393-44.553-37.490-44.805Q-37.588-45.058-37.786-45.214Q-37.984-45.369-38.268-45.369Q-38.545-45.369-38.758-45.211Q-38.972-45.052-39.090-44.797Q-39.208-44.542-39.208-44.276M-34.645-41.114L-36.275-41.114L-36.275-41.394Q-36.046-41.394-35.897-41.429Q-35.749-41.463-35.749-41.603L-35.749-44.949Q-35.749-45.120-35.885-45.161Q-36.022-45.202-36.275-45.202L-36.275-45.482L-35.195-45.557L-35.195-45.151Q-34.973-45.352-34.686-45.455Q-34.399-45.557-34.091-45.557Q-33.664-45.557-33.300-45.344Q-32.936-45.130-32.722-44.766Q-32.508-44.402-32.508-43.982Q-32.508-43.537-32.748-43.173Q-32.987-42.809-33.380-42.606Q-33.773-42.403-34.217-42.403Q-34.484-42.403-34.732-42.503Q-34.980-42.604-35.168-42.785L-35.168-41.603Q-35.168-41.466-35.019-41.430Q-34.870-41.394-34.645-41.394L-34.645-41.114M-35.168-44.802L-35.168-43.192Q-35.034-42.939-34.792-42.782Q-34.549-42.625-34.272-42.625Q-33.944-42.625-33.691-42.826Q-33.438-43.028-33.305-43.346Q-33.172-43.664-33.172-43.982Q-33.172-44.211-33.236-44.440Q-33.301-44.669-33.430-44.867Q-33.558-45.065-33.753-45.185Q-33.947-45.304-34.180-45.304Q-34.474-45.304-34.742-45.175Q-35.010-45.045-35.168-44.802M-31.346-43.312L-31.346-45.209L-31.985-45.209L-31.985-45.431Q-31.668-45.431-31.451-45.641Q-31.234-45.851-31.133-46.161Q-31.032-46.470-31.032-46.778L-30.765-46.778L-30.765-45.489L-29.689-45.489L-29.689-45.209L-30.765-45.209L-30.765-43.325Q-30.765-43.049-30.661-42.850Q-30.557-42.652-30.297-42.652Q-30.140-42.652-30.034-42.756Q-29.928-42.861-29.878-43.014Q-29.829-43.168-29.829-43.325L-29.829-43.739L-29.562-43.739L-29.562-43.312Q-29.562-43.086-29.661-42.876Q-29.760-42.666-29.945-42.534Q-30.130-42.403-30.359-42.403Q-30.796-42.403-31.071-42.640Q-31.346-42.878-31.346-43.312M-28.352-42.891Q-28.352-43.059-28.229-43.182Q-28.106-43.305-27.932-43.305Q-27.764-43.305-27.641-43.182Q-27.518-43.059-27.518-42.891Q-27.518-42.717-27.641-42.594Q-27.764-42.471-27.932-42.471Q-28.106-42.471-28.229-42.594Q-28.352-42.717-28.352-42.891M-28.352-45.075Q-28.352-45.243-28.229-45.366Q-28.106-45.489-27.932-45.489Q-27.764-45.489-27.641-45.366Q-27.518-45.243-27.518-45.075Q-27.518-44.901-27.641-44.778Q-27.764-44.655-27.932-44.655Q-28.106-44.655-28.229-44.778Q-28.352-44.901-28.352-45.075",[1576],[1556,5914,5915],{"transform":5902},[1561,5916],{"d":5917,"fill":3459,"stroke":3459,"className":5918,"style":1623},"M-22.451-42.625Q-22.451-42.673-22.444-42.697L-21.932-44.761Q-21.898-44.888-21.898-45.004Q-21.898-45.144-21.951-45.240Q-22.004-45.335-22.127-45.335Q-22.349-45.335-22.450-45.108Q-22.550-44.881-22.660-44.460Q-22.670-44.395-22.732-44.395L-22.841-44.395Q-22.872-44.395-22.896-44.426Q-22.920-44.457-22.920-44.481L-22.920-44.508Q-22.807-44.942-22.626-45.250Q-22.444-45.557-22.113-45.557Q-21.928-45.557-21.749-45.482Q-21.569-45.407-21.457-45.267Q-21.344-45.127-21.344-44.935Q-21.197-45.120-21.016-45.260Q-20.835-45.400-20.621-45.479Q-20.407-45.557-20.175-45.557Q-19.765-45.557-19.508-45.361Q-19.252-45.164-19.252-44.768Q-19.252-44.484-19.380-44.086Q-19.508-43.688-19.707-43.199Q-19.782-43.004-19.782-42.857Q-19.782-42.625-19.614-42.625Q-19.338-42.625-19.144-42.902Q-18.951-43.179-18.873-43.500Q-18.849-43.561-18.797-43.561L-18.685-43.561Q-18.651-43.561-18.628-43.532Q-18.606-43.503-18.606-43.479Q-18.606-43.466-18.613-43.452Q-18.674-43.202-18.816-42.960Q-18.958-42.717-19.167-42.560Q-19.375-42.403-19.628-42.403Q-19.912-42.403-20.113-42.565Q-20.315-42.727-20.315-42.997Q-20.315-43.114-20.267-43.247Q-19.796-44.426-19.796-44.864Q-19.796-45.072-19.891-45.204Q-19.987-45.335-20.189-45.335Q-20.944-45.335-21.470-44.320L-21.884-42.659Q-21.908-42.553-22.002-42.478Q-22.096-42.403-22.212-42.403Q-22.311-42.403-22.381-42.464Q-22.451-42.526-22.451-42.625M-17.745-40.888Q-17.745-40.906-17.731-40.953L-15.079-47.615Q-15.024-47.721-14.918-47.721Q-14.850-47.721-14.800-47.671Q-14.751-47.622-14.751-47.554Q-14.751-47.530-14.752-47.518Q-14.754-47.506-14.757-47.489L-17.410-40.827Q-17.478-40.721-17.570-40.721Q-17.642-40.721-17.693-40.772Q-17.745-40.824-17.745-40.888",[1576],[1556,5920,5921],{"transform":5902},[1561,5922],{"d":5923,"fill":3459,"stroke":3459,"className":5924,"style":1623},"M-10.867-42.471L-13.752-42.471L-13.752-42.673Q-13.752-42.703-13.725-42.731L-12.477-43.948Q-12.405-44.023-12.363-44.065Q-12.320-44.108-12.241-44.187Q-11.828-44.600-11.597-44.958Q-11.366-45.315-11.366-45.739Q-11.366-45.971-11.445-46.174Q-11.524-46.378-11.665-46.528Q-11.807-46.679-12.002-46.759Q-12.197-46.839-12.429-46.839Q-12.740-46.839-12.998-46.680Q-13.256-46.521-13.386-46.244L-13.366-46.244Q-13.198-46.244-13.091-46.133Q-12.983-46.022-12.983-45.858Q-12.983-45.701-13.092-45.588Q-13.202-45.475-13.366-45.475Q-13.526-45.475-13.639-45.588Q-13.752-45.701-13.752-45.858Q-13.752-46.234-13.544-46.521Q-13.335-46.808-13-46.964Q-12.665-47.119-12.310-47.119Q-11.886-47.119-11.506-46.961Q-11.127-46.802-10.893-46.485Q-10.659-46.169-10.659-45.739Q-10.659-45.428-10.799-45.159Q-10.939-44.891-11.144-44.686Q-11.349-44.481-11.712-44.199Q-12.074-43.917-12.183-43.821L-13.038-43.093L-12.395-43.093Q-12.132-43.093-11.843-43.095Q-11.554-43.096-11.336-43.105Q-11.117-43.114-11.100-43.131Q-11.038-43.196-11.001-43.363Q-10.963-43.531-10.925-43.773L-10.659-43.773",[1576],[1556,5926,5927],{"transform":5902},[1561,5928],{"d":5929,"fill":3459,"stroke":3459,"className":5930,"style":1623},"M-5.401-42.471L-7.134-42.471L-7.134-42.751Q-6.908-42.751-6.759-42.785Q-6.611-42.820-6.611-42.960L-6.611-45.209L-7.199-45.209L-7.199-45.489L-6.611-45.489L-6.611-46.306Q-6.611-46.624-6.433-46.872Q-6.255-47.119-5.965-47.260Q-5.674-47.400-5.363-47.400Q-5.107-47.400-4.903-47.258Q-4.700-47.116-4.700-46.873Q-4.700-46.737-4.799-46.638Q-4.898-46.538-5.035-46.538Q-5.172-46.538-5.271-46.638Q-5.370-46.737-5.370-46.873Q-5.370-47.054-5.230-47.147Q-5.308-47.174-5.408-47.174Q-5.616-47.174-5.770-47.041Q-5.924-46.908-6.004-46.704Q-6.084-46.501-6.084-46.292L-6.084-45.489L-5.196-45.489L-5.196-45.209L-6.057-45.209L-6.057-42.960Q-6.057-42.751-5.401-42.751L-5.401-42.471M-4.662-43.199Q-4.662-43.531-4.439-43.758Q-4.215-43.985-3.871-44.113Q-3.528-44.242-3.155-44.294Q-2.783-44.347-2.478-44.347L-2.478-44.600Q-2.478-44.805-2.586-44.985Q-2.694-45.164-2.875-45.267Q-3.056-45.369-3.264-45.369Q-3.671-45.369-3.907-45.277Q-3.818-45.240-3.772-45.156Q-3.726-45.072-3.726-44.970Q-3.726-44.874-3.772-44.795Q-3.818-44.717-3.898-44.672Q-3.979-44.628-4.068-44.628Q-4.218-44.628-4.319-44.725Q-4.420-44.823-4.420-44.970Q-4.420-45.592-3.264-45.592Q-3.053-45.592-2.803-45.528Q-2.554-45.465-2.352-45.346Q-2.150-45.226-2.024-45.041Q-1.897-44.857-1.897-44.614L-1.897-43.038Q-1.897-42.922-1.836-42.826Q-1.774-42.731-1.661-42.731Q-1.552-42.731-1.487-42.825Q-1.422-42.919-1.422-43.038L-1.422-43.486L-1.156-43.486L-1.156-43.038Q-1.156-42.768-1.383-42.603Q-1.610-42.437-1.890-42.437Q-2.099-42.437-2.236-42.591Q-2.372-42.744-2.396-42.960Q-2.543-42.693-2.825-42.548Q-3.107-42.403-3.432-42.403Q-3.709-42.403-3.992-42.478Q-4.276-42.553-4.469-42.732Q-4.662-42.912-4.662-43.199M-4.047-43.199Q-4.047-43.025-3.946-42.895Q-3.846-42.765-3.690-42.695Q-3.534-42.625-3.370-42.625Q-3.152-42.625-2.943-42.722Q-2.735-42.820-2.607-43.001Q-2.478-43.182-2.478-43.408L-2.478-44.136Q-2.803-44.136-3.169-44.045Q-3.534-43.954-3.791-43.742Q-4.047-43.531-4.047-43.199M-0.739-43.982Q-0.739-44.310-0.604-44.611Q-0.469-44.911-0.233-45.132Q0.003-45.352 0.307-45.472Q0.612-45.592 0.936-45.592Q1.442-45.592 1.791-45.489Q2.139-45.387 2.139-45.011Q2.139-44.864 2.042-44.763Q1.945-44.662 1.798-44.662Q1.644-44.662 1.545-44.761Q1.445-44.860 1.445-45.011Q1.445-45.199 1.586-45.291Q1.384-45.342 0.943-45.342Q0.588-45.342 0.359-45.146Q0.130-44.949 0.029-44.640Q-0.072-44.330-0.072-43.982Q-0.072-43.633 0.054-43.327Q0.181-43.021 0.435-42.837Q0.690-42.652 1.046-42.652Q1.268-42.652 1.452-42.736Q1.637-42.820 1.772-42.975Q1.907-43.131 1.965-43.339Q1.979-43.394 2.033-43.394L2.146-43.394Q2.177-43.394 2.199-43.370Q2.221-43.346 2.221-43.312L2.221-43.291Q2.136-43.004 1.948-42.806Q1.760-42.608 1.495-42.505Q1.230-42.403 0.936-42.403Q0.506-42.403 0.118-42.609Q-0.270-42.816-0.504-43.179Q-0.739-43.541-0.739-43.982M3.336-43.312L3.336-45.209L2.696-45.209L2.696-45.431Q3.014-45.431 3.231-45.641Q3.448-45.851 3.549-46.161Q3.650-46.470 3.650-46.778L3.917-46.778L3.917-45.489L4.993-45.489L4.993-45.209L3.917-45.209L3.917-43.325Q3.917-43.049 4.021-42.850Q4.125-42.652 4.385-42.652Q4.542-42.652 4.648-42.756Q4.754-42.861 4.804-43.014Q4.853-43.168 4.853-43.325L4.853-43.739L5.120-43.739L5.120-43.312Q5.120-43.086 5.021-42.876Q4.922-42.666 4.737-42.534Q4.552-42.403 4.323-42.403Q3.886-42.403 3.611-42.640Q3.336-42.878 3.336-43.312M5.889-43.954Q5.889-44.296 6.024-44.595Q6.159-44.894 6.398-45.118Q6.637-45.342 6.955-45.467Q7.273-45.592 7.605-45.592Q8.049-45.592 8.449-45.376Q8.849-45.161 9.083-44.783Q9.317-44.406 9.317-43.954Q9.317-43.613 9.175-43.329Q9.033-43.045 8.789-42.838Q8.545-42.632 8.235-42.517Q7.926-42.403 7.605-42.403Q7.174-42.403 6.772-42.604Q6.371-42.806 6.130-43.158Q5.889-43.510 5.889-43.954M7.605-42.652Q8.206-42.652 8.430-43.030Q8.654-43.408 8.654-44.040Q8.654-44.652 8.420-45.011Q8.186-45.369 7.605-45.369Q6.552-45.369 6.552-44.040Q6.552-43.408 6.778-43.030Q7.003-42.652 7.605-42.652M11.662-42.471L9.925-42.471L9.925-42.751Q10.154-42.751 10.303-42.785Q10.452-42.820 10.452-42.960L10.452-44.809Q10.452-45.079 10.344-45.140Q10.237-45.202 9.925-45.202L9.925-45.482L10.954-45.557L10.954-44.850Q11.084-45.158 11.327-45.357Q11.570-45.557 11.887-45.557Q12.106-45.557 12.277-45.433Q12.448-45.308 12.448-45.096Q12.448-44.959 12.349-44.860Q12.250-44.761 12.116-44.761Q11.980-44.761 11.881-44.860Q11.781-44.959 11.781-45.096Q11.781-45.236 11.881-45.335Q11.590-45.335 11.390-45.139Q11.190-44.942 11.098-44.648Q11.006-44.354 11.006-44.074L11.006-42.960Q11.006-42.751 11.662-42.751L11.662-42.471M13.032-42.478L13.032-43.541Q13.032-43.565 13.060-43.592Q13.087-43.619 13.111-43.619L13.220-43.619Q13.285-43.619 13.299-43.561Q13.395-43.127 13.641-42.876Q13.887-42.625 14.300-42.625Q14.642-42.625 14.895-42.758Q15.148-42.891 15.148-43.199Q15.148-43.356 15.054-43.471Q14.960-43.585 14.822-43.654Q14.683-43.722 14.516-43.760L13.935-43.859Q13.579-43.927 13.306-44.148Q13.032-44.368 13.032-44.710Q13.032-44.959 13.143-45.134Q13.255-45.308 13.441-45.407Q13.627-45.506 13.842-45.549Q14.058-45.592 14.300-45.592Q14.714-45.592 14.994-45.410L15.210-45.585Q15.220-45.588 15.227-45.590Q15.234-45.592 15.244-45.592L15.295-45.592Q15.322-45.592 15.346-45.568Q15.370-45.544 15.370-45.516L15.370-44.669Q15.370-44.648 15.346-44.621Q15.322-44.594 15.295-44.594L15.182-44.594Q15.155-44.594 15.129-44.619Q15.104-44.645 15.104-44.669Q15.104-44.905 14.998-45.069Q14.892-45.233 14.709-45.315Q14.526-45.397 14.294-45.397Q13.966-45.397 13.709-45.294Q13.453-45.192 13.453-44.915Q13.453-44.720 13.636-44.611Q13.819-44.501 14.048-44.460L14.622-44.354Q14.868-44.306 15.081-44.178Q15.295-44.050 15.432-43.847Q15.569-43.643 15.569-43.394Q15.569-42.881 15.203-42.642Q14.837-42.403 14.300-42.403Q13.805-42.403 13.473-42.697L13.207-42.423Q13.186-42.403 13.159-42.403L13.111-42.403Q13.087-42.403 13.060-42.430Q13.032-42.457 13.032-42.478M16.696-41.241Q16.696-41.275 16.724-41.302Q16.994-41.531 17.143-41.854Q17.291-42.177 17.291-42.533L17.291-42.570Q17.182-42.471 17.018-42.471Q16.837-42.471 16.717-42.591Q16.597-42.710 16.597-42.891Q16.597-43.066 16.717-43.185Q16.837-43.305 17.018-43.305Q17.274-43.305 17.394-43.066Q17.513-42.826 17.513-42.533Q17.513-42.133 17.344-41.762Q17.175-41.391 16.878-41.135Q16.847-41.114 16.820-41.114Q16.779-41.114 16.737-41.155Q16.696-41.196 16.696-41.241",[1576],[1556,5932,5933],{"transform":5902},[1561,5934],{"d":5935,"fill":3459,"stroke":3459,"className":5936,"style":1623},"M21.144-44.006Q21.144-44.327 21.269-44.616Q21.394-44.905 21.620-45.128Q21.845-45.352 22.141-45.472Q22.436-45.592 22.754-45.592Q23.082-45.592 23.344-45.492Q23.605-45.393 23.781-45.211Q23.957-45.028 24.051-44.770Q24.145-44.512 24.145-44.180Q24.145-44.088 24.063-44.067L21.808-44.067L21.808-44.006Q21.808-43.418 22.091-43.035Q22.375-42.652 22.942-42.652Q23.264-42.652 23.532-42.845Q23.800-43.038 23.889-43.353Q23.896-43.394 23.971-43.408L24.063-43.408Q24.145-43.384 24.145-43.312Q24.145-43.305 24.139-43.278Q24.026-42.881 23.655-42.642Q23.284-42.403 22.860-42.403Q22.423-42.403 22.023-42.611Q21.623-42.820 21.384-43.187Q21.144-43.554 21.144-44.006M21.814-44.276L23.629-44.276Q23.629-44.553 23.532-44.805Q23.434-45.058 23.236-45.214Q23.038-45.369 22.754-45.369Q22.477-45.369 22.264-45.211Q22.050-45.052 21.932-44.797Q21.814-44.542 21.814-44.276M24.791-43.199Q24.791-43.531 25.015-43.758Q25.239-43.985 25.583-44.113Q25.926-44.242 26.299-44.294Q26.671-44.347 26.975-44.347L26.975-44.600Q26.975-44.805 26.868-44.985Q26.760-45.164 26.579-45.267Q26.398-45.369 26.189-45.369Q25.783-45.369 25.547-45.277Q25.636-45.240 25.682-45.156Q25.728-45.072 25.728-44.970Q25.728-44.874 25.682-44.795Q25.636-44.717 25.555-44.672Q25.475-44.628 25.386-44.628Q25.236-44.628 25.135-44.725Q25.034-44.823 25.034-44.970Q25.034-45.592 26.189-45.592Q26.401-45.592 26.651-45.528Q26.900-45.465 27.102-45.346Q27.304-45.226 27.430-45.041Q27.557-44.857 27.557-44.614L27.557-43.038Q27.557-42.922 27.618-42.826Q27.680-42.731 27.792-42.731Q27.902-42.731 27.967-42.825Q28.032-42.919 28.032-43.038L28.032-43.486L28.298-43.486L28.298-43.038Q28.298-42.768 28.071-42.603Q27.844-42.437 27.563-42.437Q27.355-42.437 27.218-42.591Q27.081-42.744 27.058-42.960Q26.911-42.693 26.629-42.548Q26.347-42.403 26.022-42.403Q25.745-42.403 25.461-42.478Q25.178-42.553 24.985-42.732Q24.791-42.912 24.791-43.199M25.407-43.199Q25.407-43.025 25.507-42.895Q25.608-42.765 25.764-42.695Q25.919-42.625 26.083-42.625Q26.302-42.625 26.511-42.722Q26.719-42.820 26.847-43.001Q26.975-43.182 26.975-43.408L26.975-44.136Q26.651-44.136 26.285-44.045Q25.919-43.954 25.663-43.742Q25.407-43.531 25.407-43.199M28.715-43.982Q28.715-44.310 28.850-44.611Q28.985-44.911 29.221-45.132Q29.457-45.352 29.761-45.472Q30.065-45.592 30.390-45.592Q30.896-45.592 31.245-45.489Q31.593-45.387 31.593-45.011Q31.593-44.864 31.496-44.763Q31.398-44.662 31.251-44.662Q31.098-44.662 30.998-44.761Q30.899-44.860 30.899-45.011Q30.899-45.199 31.039-45.291Q30.838-45.342 30.397-45.342Q30.041-45.342 29.812-45.146Q29.583-44.949 29.483-44.640Q29.382-44.330 29.382-43.982Q29.382-43.633 29.508-43.327Q29.635-43.021 29.889-42.837Q30.144-42.652 30.499-42.652Q30.722-42.652 30.906-42.736Q31.091-42.820 31.226-42.975Q31.361-43.131 31.419-43.339Q31.433-43.394 31.487-43.394L31.600-43.394Q31.631-43.394 31.653-43.370Q31.675-43.346 31.675-43.312L31.675-43.291Q31.590-43.004 31.402-42.806Q31.214-42.608 30.949-42.505Q30.684-42.403 30.390-42.403Q29.959-42.403 29.571-42.609Q29.183-42.816 28.949-43.179Q28.715-43.541 28.715-43.982",[1576],[1556,5938,5939],{"transform":5902},[1561,5940],{"d":5941,"fill":3459,"stroke":3459,"className":5942,"style":1623},"M33.749-42.471L32.115-42.471L32.115-42.751Q32.344-42.751 32.493-42.785Q32.642-42.820 32.642-42.960L32.642-46.579Q32.642-46.849 32.534-46.911Q32.426-46.972 32.115-46.972L32.115-47.253L33.195-47.328L33.195-44.942Q33.301-45.127 33.479-45.269Q33.657-45.410 33.865-45.484Q34.074-45.557 34.299-45.557Q34.805-45.557 35.089-45.334Q35.373-45.110 35.373-44.614L35.373-42.960Q35.373-42.823 35.521-42.787Q35.670-42.751 35.896-42.751L35.896-42.471L34.265-42.471L34.265-42.751Q34.494-42.751 34.643-42.785Q34.792-42.820 34.792-42.960L34.792-44.600Q34.792-44.935 34.672-45.135Q34.552-45.335 34.238-45.335Q33.968-45.335 33.734-45.199Q33.500-45.062 33.361-44.828Q33.223-44.594 33.223-44.320L33.223-42.960Q33.223-42.823 33.373-42.787Q33.524-42.751 33.749-42.751",[1576],[1556,5944,5945],{"transform":5902},[1561,5946],{"d":5947,"fill":3459,"stroke":3459,"className":5948,"style":1623},"M44.193-41.162L39.780-41.162Q39.712-41.172 39.666-41.218Q39.619-41.264 39.619-41.336Q39.619-41.480 39.780-41.504L44.193-41.504Q44.353-41.480 44.353-41.336Q44.353-41.264 44.307-41.218Q44.261-41.172 44.193-41.162M39.619-42.878Q39.619-42.980 39.712-43.025L43.786-44.983L39.712-46.945Q39.619-46.990 39.619-47.099Q39.619-47.164 39.671-47.215Q39.722-47.266 39.794-47.266Q39.838-47.266 39.879-47.246L44.268-45.137Q44.302-45.120 44.328-45.072Q44.353-45.024 44.353-44.983Q44.353-44.946 44.326-44.898Q44.299-44.850 44.268-44.836L39.879-42.724Q39.838-42.703 39.794-42.703Q39.722-42.703 39.671-42.755Q39.619-42.806 39.619-42.878",[1576],[1556,5950,5951],{"transform":5902},[1561,5952],{"d":5953,"fill":3459,"stroke":3459,"className":5954,"style":1623},"M48.173-42.625Q48.173-42.673 48.180-42.697L48.692-44.761Q48.726-44.888 48.726-45.004Q48.726-45.144 48.673-45.240Q48.620-45.335 48.497-45.335Q48.275-45.335 48.174-45.108Q48.074-44.881 47.964-44.460Q47.954-44.395 47.892-44.395L47.783-44.395Q47.752-44.395 47.728-44.426Q47.704-44.457 47.704-44.481L47.704-44.508Q47.817-44.942 47.998-45.250Q48.180-45.557 48.511-45.557Q48.696-45.557 48.875-45.482Q49.055-45.407 49.167-45.267Q49.280-45.127 49.280-44.935Q49.427-45.120 49.608-45.260Q49.789-45.400 50.003-45.479Q50.217-45.557 50.449-45.557Q50.859-45.557 51.116-45.361Q51.372-45.164 51.372-44.768Q51.372-44.484 51.244-44.086Q51.116-43.688 50.917-43.199Q50.842-43.004 50.842-42.857Q50.842-42.625 51.010-42.625Q51.286-42.625 51.480-42.902Q51.673-43.179 51.751-43.500Q51.775-43.561 51.827-43.561L51.939-43.561Q51.973-43.561 51.996-43.532Q52.018-43.503 52.018-43.479Q52.018-43.466 52.011-43.452Q51.950-43.202 51.808-42.960Q51.666-42.717 51.457-42.560Q51.249-42.403 50.996-42.403Q50.712-42.403 50.511-42.565Q50.309-42.727 50.309-42.997Q50.309-43.114 50.357-43.247Q50.828-44.426 50.828-44.864Q50.828-45.072 50.733-45.204Q50.637-45.335 50.435-45.335Q49.680-45.335 49.154-44.320L48.740-42.659Q48.716-42.553 48.622-42.478Q48.528-42.403 48.412-42.403Q48.313-42.403 48.243-42.464Q48.173-42.526 48.173-42.625M52.879-40.888Q52.879-40.906 52.893-40.953L55.545-47.615Q55.600-47.721 55.706-47.721Q55.774-47.721 55.824-47.671Q55.873-47.622 55.873-47.554Q55.873-47.530 55.872-47.518Q55.870-47.506 55.867-47.489L53.214-40.827Q53.146-40.721 53.054-40.721Q52.982-40.721 52.931-40.772Q52.879-40.824 52.879-40.888",[1576],[1556,5956,5957],{"transform":5902},[1561,5958],{"d":5959,"fill":3459,"stroke":3459,"className":5960,"style":1623},"M59.757-42.471L56.872-42.471L56.872-42.673Q56.872-42.703 56.899-42.731L58.147-43.948Q58.219-44.023 58.261-44.065Q58.304-44.108 58.383-44.187Q58.796-44.600 59.027-44.958Q59.258-45.315 59.258-45.739Q59.258-45.971 59.179-46.174Q59.100-46.378 58.959-46.528Q58.817-46.679 58.622-46.759Q58.427-46.839 58.195-46.839Q57.884-46.839 57.626-46.680Q57.368-46.521 57.238-46.244L57.258-46.244Q57.426-46.244 57.533-46.133Q57.641-46.022 57.641-45.858Q57.641-45.701 57.532-45.588Q57.422-45.475 57.258-45.475Q57.098-45.475 56.985-45.588Q56.872-45.701 56.872-45.858Q56.872-46.234 57.080-46.521Q57.289-46.808 57.624-46.964Q57.959-47.119 58.314-47.119Q58.738-47.119 59.118-46.961Q59.497-46.802 59.731-46.485Q59.965-46.169 59.965-45.739Q59.965-45.428 59.825-45.159Q59.685-44.891 59.480-44.686Q59.275-44.481 58.912-44.199Q58.550-43.917 58.441-43.821L57.586-43.093L58.229-43.093Q58.492-43.093 58.781-43.095Q59.070-43.096 59.288-43.105Q59.507-43.114 59.524-43.131Q59.586-43.196 59.623-43.363Q59.661-43.531 59.699-43.773L59.965-43.773",[1576],[1561,5962],{"fill":1563,"stroke":5855,"d":5963,"style":5896},"M36.954-28.244h88.203M36.954-30.52v2.276M125.157-30.52v2.276",[1556,5965,5967,5974],{"fill":5855,"stroke":1563,"fontFamily":5966,"fontSize":5899},"cmr7",[1556,5968,5970],{"transform":5969},"translate(110.918 24.328)",[1561,5971],{"d":5972,"fill":5855,"stroke":5855,"className":5973,"style":1623},"M-43.823-43.982Q-43.823-44.320-43.682-44.611Q-43.542-44.901-43.298-45.115Q-43.054-45.328-42.749-45.443Q-42.445-45.557-42.120-45.557Q-41.850-45.557-41.587-45.458Q-41.324-45.359-41.133-45.181L-41.133-46.579Q-41.133-46.849-41.240-46.911Q-41.348-46.972-41.659-46.972L-41.659-47.253L-40.582-47.328L-40.582-43.144Q-40.582-42.956-40.528-42.873Q-40.473-42.789-40.372-42.770Q-40.271-42.751-40.056-42.751L-40.056-42.471L-41.163-42.403L-41.163-42.820Q-41.580-42.403-42.206-42.403Q-42.637-42.403-43.009-42.615Q-43.382-42.826-43.602-43.187Q-43.823-43.548-43.823-43.982M-42.148-42.625Q-41.939-42.625-41.753-42.697Q-41.567-42.768-41.413-42.905Q-41.259-43.042-41.163-43.220L-41.163-44.829Q-41.249-44.976-41.394-45.096Q-41.539-45.216-41.709-45.275Q-41.878-45.335-42.059-45.335Q-42.619-45.335-42.888-44.946Q-43.156-44.556-43.156-43.975Q-43.156-43.404-42.922-43.014Q-42.688-42.625-42.148-42.625M-37.657-42.471L-39.393-42.471L-39.393-42.751Q-39.164-42.751-39.015-42.785Q-38.866-42.820-38.866-42.960L-38.866-44.809Q-38.866-45.079-38.974-45.140Q-39.082-45.202-39.393-45.202L-39.393-45.482L-38.364-45.557L-38.364-44.850Q-38.234-45.158-37.991-45.357Q-37.749-45.557-37.431-45.557Q-37.212-45.557-37.041-45.433Q-36.870-45.308-36.870-45.096Q-36.870-44.959-36.970-44.860Q-37.069-44.761-37.202-44.761Q-37.339-44.761-37.438-44.860Q-37.537-44.959-37.537-45.096Q-37.537-45.236-37.438-45.335Q-37.728-45.335-37.928-45.139Q-38.128-44.942-38.220-44.648Q-38.313-44.354-38.313-44.074L-38.313-42.960Q-38.313-42.751-37.657-42.751L-37.657-42.471M-36.327-43.954Q-36.327-44.296-36.192-44.595Q-36.057-44.894-35.818-45.118Q-35.578-45.342-35.261-45.467Q-34.943-45.592-34.611-45.592Q-34.167-45.592-33.767-45.376Q-33.367-45.161-33.133-44.783Q-32.899-44.406-32.899-43.954Q-32.899-43.613-33.041-43.329Q-33.182-43.045-33.427-42.838Q-33.671-42.632-33.981-42.517Q-34.290-42.403-34.611-42.403Q-35.042-42.403-35.443-42.604Q-35.845-42.806-36.086-43.158Q-36.327-43.510-36.327-43.954M-34.611-42.652Q-34.010-42.652-33.786-43.030Q-33.562-43.408-33.562-44.040Q-33.562-44.652-33.796-45.011Q-34.030-45.369-34.611-45.369Q-35.664-45.369-35.664-44.040Q-35.664-43.408-35.438-43.030Q-35.213-42.652-34.611-42.652M-30.660-41.114L-32.290-41.114L-32.290-41.394Q-32.061-41.394-31.913-41.429Q-31.764-41.463-31.764-41.603L-31.764-44.949Q-31.764-45.120-31.901-45.161Q-32.037-45.202-32.290-45.202L-32.290-45.482L-31.210-45.557L-31.210-45.151Q-30.988-45.352-30.701-45.455Q-30.414-45.557-30.106-45.557Q-29.679-45.557-29.315-45.344Q-28.951-45.130-28.737-44.766Q-28.524-44.402-28.524-43.982Q-28.524-43.537-28.763-43.173Q-29.002-42.809-29.395-42.606Q-29.788-42.403-30.233-42.403Q-30.499-42.403-30.747-42.503Q-30.995-42.604-31.183-42.785L-31.183-41.603Q-31.183-41.466-31.034-41.430Q-30.886-41.394-30.660-41.394L-30.660-41.114M-31.183-44.802L-31.183-43.192Q-31.050-42.939-30.807-42.782Q-30.564-42.625-30.287-42.625Q-29.959-42.625-29.706-42.826Q-29.453-43.028-29.320-43.346Q-29.187-43.664-29.187-43.982Q-29.187-44.211-29.252-44.440Q-29.317-44.669-29.445-44.867Q-29.573-45.065-29.768-45.185Q-29.963-45.304-30.195-45.304Q-30.489-45.304-30.757-45.175Q-31.026-45.045-31.183-44.802M-26.244-41.114L-27.874-41.114L-27.874-41.394Q-27.645-41.394-27.497-41.429Q-27.348-41.463-27.348-41.603L-27.348-44.949Q-27.348-45.120-27.485-45.161Q-27.621-45.202-27.874-45.202L-27.874-45.482L-26.794-45.557L-26.794-45.151Q-26.572-45.352-26.285-45.455Q-25.998-45.557-25.690-45.557Q-25.263-45.557-24.899-45.344Q-24.535-45.130-24.321-44.766Q-24.108-44.402-24.108-43.982Q-24.108-43.537-24.347-43.173Q-24.586-42.809-24.979-42.606Q-25.372-42.403-25.817-42.403Q-26.083-42.403-26.331-42.503Q-26.579-42.604-26.767-42.785L-26.767-41.603Q-26.767-41.466-26.618-41.430Q-26.470-41.394-26.244-41.394L-26.244-41.114M-26.767-44.802L-26.767-43.192Q-26.634-42.939-26.391-42.782Q-26.148-42.625-25.871-42.625Q-25.543-42.625-25.290-42.826Q-25.037-43.028-24.904-43.346Q-24.771-43.664-24.771-43.982Q-24.771-44.211-24.836-44.440Q-24.901-44.669-25.029-44.867Q-25.157-45.065-25.352-45.185Q-25.547-45.304-25.779-45.304Q-26.073-45.304-26.341-45.175Q-26.610-45.045-26.767-44.802",[1576],[1556,5975,5976],{"transform":5969},[1561,5977],{"d":5978,"fill":5855,"stroke":5855,"className":5979,"style":1623},"M-23.287-44.006Q-23.287-44.327-23.162-44.616Q-23.037-44.905-22.811-45.128Q-22.586-45.352-22.290-45.472Q-21.995-45.592-21.677-45.592Q-21.349-45.592-21.087-45.492Q-20.826-45.393-20.650-45.211Q-20.474-45.028-20.380-44.770Q-20.286-44.512-20.286-44.180Q-20.286-44.088-20.368-44.067L-22.623-44.067L-22.623-44.006Q-22.623-43.418-22.340-43.035Q-22.056-42.652-21.489-42.652Q-21.167-42.652-20.899-42.845Q-20.631-43.038-20.542-43.353Q-20.535-43.394-20.460-43.408L-20.368-43.408Q-20.286-43.384-20.286-43.312Q-20.286-43.305-20.292-43.278Q-20.405-42.881-20.776-42.642Q-21.147-42.403-21.571-42.403Q-22.008-42.403-22.408-42.611Q-22.808-42.820-23.047-43.187Q-23.287-43.554-23.287-44.006M-22.617-44.276L-20.802-44.276Q-20.802-44.553-20.899-44.805Q-20.997-45.058-21.195-45.214Q-21.393-45.369-21.677-45.369Q-21.954-45.369-22.167-45.211Q-22.381-45.052-22.499-44.797Q-22.617-44.542-22.617-44.276M-19.698-43.982Q-19.698-44.320-19.558-44.611Q-19.417-44.901-19.173-45.115Q-18.929-45.328-18.624-45.443Q-18.320-45.557-17.996-45.557Q-17.726-45.557-17.462-45.458Q-17.199-45.359-17.008-45.181L-17.008-46.579Q-17.008-46.849-17.115-46.911Q-17.223-46.972-17.534-46.972L-17.534-47.253L-16.457-47.328L-16.457-43.144Q-16.457-42.956-16.403-42.873Q-16.348-42.789-16.247-42.770Q-16.146-42.751-15.931-42.751L-15.931-42.471L-17.039-42.403L-17.039-42.820Q-17.456-42.403-18.081-42.403Q-18.512-42.403-18.884-42.615Q-19.257-42.826-19.477-43.187Q-19.698-43.548-19.698-43.982M-18.023-42.625Q-17.814-42.625-17.628-42.697Q-17.442-42.768-17.288-42.905Q-17.134-43.042-17.039-43.220L-17.039-44.829Q-17.124-44.976-17.269-45.096Q-17.414-45.216-17.584-45.275Q-17.753-45.335-17.934-45.335Q-18.495-45.335-18.763-44.946Q-19.031-44.556-19.031-43.975Q-19.031-43.404-18.797-43.014Q-18.563-42.625-18.023-42.625",[1576],[1556,5981,5982,5989,5995,6001,6004,6010,6016,6022],{"fill":3459,"stroke":1563},[1556,5983,5985],{"transform":5984},"translate(188.476 2.845)",[1561,5986],{"d":5987,"fill":3459,"stroke":3459,"className":5988,"style":3507},"M-38.418-41.112L-43.250-41.112Q-43.325-41.123-43.375-41.172Q-43.426-41.221-43.426-41.295Q-43.426-41.448-43.250-41.479L-38.418-41.479Q-38.250-41.451-38.250-41.295Q-38.250-41.139-38.418-41.112M-43.426-42.983Q-43.426-43.088-43.313-43.151L-38.856-45.311L-43.321-47.479Q-43.426-47.518-43.426-47.639Q-43.426-47.717-43.373-47.770Q-43.321-47.823-43.242-47.823Q-43.223-47.823-43.160-47.807L-38.344-45.479Q-38.250-45.424-38.250-45.311Q-38.250-45.205-38.352-45.143L-43.160-42.815Q-43.223-42.799-43.242-42.799Q-43.321-42.799-43.373-42.852Q-43.426-42.905-43.426-42.983",[1576],[1556,5990,5991],{"transform":5984},[1561,5992],{"d":5993,"fill":3459,"stroke":3459,"className":5994,"style":3507},"M-31.852-39.704Q-32.363-40.114-32.752-40.663Q-33.141-41.212-33.387-41.841Q-33.633-42.470-33.746-43.126Q-33.859-43.782-33.859-44.470Q-33.859-45.165-33.746-45.823Q-33.633-46.481-33.387-47.112Q-33.141-47.743-32.752-48.292Q-32.363-48.841-31.852-49.247Q-31.828-49.270-31.797-49.270L-31.691-49.270Q-31.656-49.270-31.631-49.243Q-31.605-49.216-31.605-49.177Q-31.605-49.134-31.629-49.110Q-32.070-48.677-32.379-48.140Q-32.687-47.602-32.873-47.003Q-33.059-46.403-33.139-45.763Q-33.219-45.122-33.219-44.470Q-33.219-43.821-33.137-43.182Q-33.055-42.544-32.873-41.952Q-32.691-41.360-32.383-40.823Q-32.074-40.286-31.629-39.841Q-31.605-39.813-31.605-39.774Q-31.605-39.735-31.629-39.708Q-31.652-39.681-31.691-39.681L-31.797-39.681Q-31.828-39.681-31.852-39.704",[1576],[1556,5996,5997],{"transform":5984},[1561,5998],{"d":5999,"fill":3459,"stroke":3459,"className":6000,"style":3568},"M-29.266-45.885Q-29.266-45.926-29.260-45.946L-28.821-47.692Q-28.798-47.777-28.798-47.883Q-28.798-48.003-28.849-48.086Q-28.900-48.170-29.008-48.170Q-29.196-48.170-29.301-47.947Q-29.407-47.724-29.474-47.434Q-29.483-47.390-29.548-47.379L-29.644-47.379Q-29.700-47.393-29.715-47.458Q-29.715-47.487-29.709-47.499Q-29.621-47.853-29.452-48.120Q-29.284-48.387-28.994-48.387Q-28.727-48.387-28.510-48.241Q-28.294-48.096-28.294-47.842Q-28.089-48.094-27.823-48.240Q-27.558-48.387-27.254-48.387Q-27.013-48.387-26.826-48.316Q-26.638-48.246-26.524-48.088Q-26.410-47.929-26.410-47.692Q-26.410-47.455-26.518-47.133Q-26.627-46.810-26.805-46.353Q-26.858-46.236-26.858-46.101Q-26.858-45.896-26.715-45.896Q-26.471-45.896-26.293-46.131Q-26.114-46.365-26.049-46.635Q-26.041-46.678-25.982-46.690L-25.888-46.690Q-25.809-46.664-25.809-46.605Q-25.809-46.599-25.815-46.570Q-25.900-46.224-26.149-45.953Q-26.398-45.682-26.726-45.682Q-26.978-45.682-27.164-45.822Q-27.350-45.961-27.350-46.204Q-27.350-46.315-27.303-46.418Q-27.131-46.857-27.019-47.194Q-26.908-47.531-26.908-47.768Q-26.908-47.953-26.996-48.061Q-27.084-48.170-27.268-48.170Q-27.948-48.170-28.420-47.241L-28.754-45.902Q-28.774-45.805-28.861-45.744Q-28.947-45.682-29.044-45.682Q-29.134-45.682-29.200-45.740Q-29.266-45.797-29.266-45.885",[1576],[1561,6002],{"d":6003},"M158.407-41.806h4.618v.36h-4.618z",[1556,6005,6006],{"transform":5984},[1561,6007],{"d":6008,"fill":3459,"stroke":3459,"className":6009,"style":3568},"M-26.552-39.333L-29.162-39.333L-29.162-39.518Q-29.156-39.541-29.136-39.567L-27.985-40.622Q-27.645-40.933-27.465-41.119Q-27.284-41.305-27.139-41.565Q-26.994-41.826-26.994-42.122Q-26.994-42.395-27.120-42.610Q-27.246-42.825-27.466-42.945Q-27.686-43.065-27.961-43.065Q-28.137-43.065-28.307-43.008Q-28.477-42.951-28.609-42.844Q-28.740-42.737-28.820-42.579Q-28.732-42.579-28.654-42.535Q-28.576-42.491-28.532-42.415Q-28.489-42.339-28.489-42.242Q-28.489-42.102-28.585-42.005Q-28.682-41.908-28.825-41.908Q-28.963-41.908-29.063-42.008Q-29.162-42.107-29.162-42.242Q-29.162-42.567-28.972-42.815Q-28.781-43.062-28.478-43.193Q-28.175-43.323-27.859-43.323Q-27.478-43.323-27.135-43.188Q-26.792-43.054-26.578-42.781Q-26.364-42.509-26.364-42.122Q-26.364-41.847-26.489-41.620Q-26.614-41.393-26.794-41.221Q-26.974-41.050-27.299-40.810Q-27.624-40.569-27.709-40.502L-28.465-39.898L-27.932-39.898Q-27.443-39.898-27.112-39.906Q-26.780-39.913-26.766-39.928Q-26.707-39.998-26.675-40.133Q-26.643-40.268-26.611-40.479L-26.364-40.479",[1576],[1556,6011,6012],{"transform":5984},[1561,6013],{"d":6014,"fill":3459,"stroke":3459,"className":6015,"style":3507},"M-23.731-39.681L-23.837-39.681Q-23.923-39.681-23.923-39.774Q-23.923-39.809-23.899-39.841Q-23.450-40.282-23.136-40.833Q-22.821-41.384-22.646-41.964Q-22.470-42.544-22.388-43.182Q-22.306-43.821-22.306-44.470Q-22.306-45.122-22.386-45.763Q-22.466-46.403-22.646-46.991Q-22.825-47.579-23.142-48.130Q-23.458-48.681-23.899-49.110Q-23.923-49.134-23.923-49.177Q-23.923-49.270-23.837-49.270L-23.731-49.270Q-23.700-49.270-23.677-49.247Q-23.157-48.841-22.769-48.292Q-22.380-47.743-22.136-47.116Q-21.892-46.489-21.778-45.827Q-21.665-45.165-21.665-44.470Q-21.665-43.544-21.874-42.669Q-22.083-41.794-22.534-41.024Q-22.985-40.255-23.677-39.704Q-23.700-39.681-23.731-39.681",[1576],[1556,6017,6018],{"transform":5984},[1561,6019],{"d":6020,"fill":3459,"stroke":3459,"className":6021,"style":3568},"M-19.552-46.942Q-19.552-46.983-19.546-47.003L-19.107-48.749Q-19.084-48.834-19.084-48.940Q-19.084-49.060-19.135-49.143Q-19.186-49.227-19.294-49.227Q-19.482-49.227-19.587-49.004Q-19.693-48.781-19.760-48.491Q-19.769-48.447-19.834-48.436L-19.930-48.436Q-19.986-48.450-20.001-48.515Q-20.001-48.544-19.995-48.556Q-19.907-48.910-19.738-49.177Q-19.570-49.444-19.280-49.444Q-19.013-49.444-18.796-49.298Q-18.580-49.153-18.580-48.899Q-18.375-49.151-18.109-49.297Q-17.844-49.444-17.540-49.444Q-17.299-49.444-17.112-49.373Q-16.924-49.303-16.810-49.145Q-16.696-48.986-16.696-48.749Q-16.696-48.512-16.804-48.190Q-16.913-47.867-17.091-47.410Q-17.144-47.293-17.144-47.158Q-17.144-46.953-17.001-46.953Q-16.757-46.953-16.579-47.188Q-16.400-47.422-16.335-47.692Q-16.327-47.736-16.268-47.747L-16.174-47.747Q-16.095-47.721-16.095-47.662Q-16.095-47.656-16.101-47.627Q-16.186-47.281-16.435-47.010Q-16.684-46.739-17.012-46.739Q-17.264-46.739-17.450-46.879Q-17.636-47.018-17.636-47.261Q-17.636-47.372-17.589-47.475Q-17.417-47.914-17.305-48.251Q-17.194-48.588-17.194-48.825Q-17.194-49.010-17.282-49.118Q-17.370-49.227-17.554-49.227Q-18.234-49.227-18.706-48.298L-19.040-46.959Q-19.060-46.862-19.147-46.801Q-19.233-46.739-19.330-46.739Q-19.420-46.739-19.486-46.797Q-19.552-46.854-19.552-46.942M-15.184-45.453Q-15.184-45.471-15.169-45.515L-12.770-51.201Q-12.720-51.298-12.626-51.298Q-12.559-51.298-12.515-51.251Q-12.471-51.204-12.471-51.143Q-12.471-51.116-12.483-51.081L-14.882-45.395Q-14.932-45.298-15.026-45.298Q-15.090-45.298-15.137-45.345Q-15.184-45.392-15.184-45.453",[1576],[1556,6023,6024],{"transform":5984},[1561,6025],{"d":6026,"fill":3459,"stroke":3459,"className":6027,"style":3568},"M-8.862-46.798L-11.472-46.798L-11.472-46.983Q-11.466-47.006-11.446-47.032L-10.295-48.087Q-9.955-48.398-9.775-48.584Q-9.594-48.770-9.449-49.030Q-9.304-49.291-9.304-49.587Q-9.304-49.860-9.430-50.075Q-9.556-50.290-9.776-50.410Q-9.996-50.530-10.271-50.530Q-10.447-50.530-10.617-50.473Q-10.787-50.416-10.919-50.309Q-11.050-50.202-11.130-50.044Q-11.042-50.044-10.964-50Q-10.886-49.956-10.842-49.880Q-10.799-49.804-10.799-49.707Q-10.799-49.567-10.895-49.470Q-10.992-49.373-11.135-49.373Q-11.273-49.373-11.373-49.473Q-11.472-49.572-11.472-49.707Q-11.472-50.032-11.282-50.280Q-11.091-50.527-10.788-50.658Q-10.485-50.788-10.169-50.788Q-9.788-50.788-9.445-50.653Q-9.102-50.519-8.888-50.246Q-8.674-49.974-8.674-49.587Q-8.674-49.312-8.799-49.085Q-8.924-48.858-9.104-48.686Q-9.284-48.515-9.609-48.275Q-9.934-48.034-10.019-47.967L-10.775-47.363L-10.242-47.363Q-9.753-47.363-9.422-47.371Q-9.091-47.378-9.076-47.393Q-9.017-47.463-8.985-47.598Q-8.953-47.733-8.921-47.944L-8.674-47.944",[1576],[1870,6029,6031,6032,6065,6066,6112,6113,6161,6162,851],{"className":6030},[1873],"The elementary bound for ",[397,6033,6035],{"className":6034},[400],[397,6036,6038,6056],{"className":6037,"ariaHidden":405},[404],[397,6039,6041,6044,6047,6050,6053],{"className":6040},[409],[397,6042],{"className":6043,"style":871},[413],[397,6045,429],{"className":6046},[418,428],[397,6048],{"className":6049,"style":647},[433],[397,6051,775],{"className":6052},[651],[397,6054],{"className":6055,"style":647},[433],[397,6057,6059,6062],{"className":6058},[409],[397,6060],{"className":6061,"style":2198},[413],[397,6063,5636],{"className":6064},[418],". Of the factors ",[397,6067,6069],{"className":6068},[400],[397,6070,6072],{"className":6071,"ariaHidden":405},[404],[397,6073,6075,6079,6082,6085,6088,6091,6094,6097,6100,6103,6106,6109],{"className":6074},[409],[397,6076],{"className":6077,"style":6078},[413],"height:0.8389em;vertical-align:-0.1944em;",[397,6080,5636],{"className":6081},[418],[397,6083,817],{"className":6084},[816],[397,6086],{"className":6087,"style":434},[433],[397,6089,5899],{"className":6090},[418],[397,6092,817],{"className":6093},[816],[397,6095],{"className":6096,"style":434},[433],[397,6098,834],{"className":6099},[803],[397,6101],{"className":6102,"style":434},[433],[397,6104,817],{"className":6105},[816],[397,6107],{"className":6108,"style":434},[433],[397,6110,553],{"className":6111},[418],", keep the larger half (top, each ",[397,6114,6116],{"className":6115},[400],[397,6117,6119,6131,6152],{"className":6118,"ariaHidden":405},[404],[397,6120,6122,6125,6128],{"className":6121},[409],[397,6123],{"className":6124,"style":738},[413],[397,6126,742],{"className":6127},[651],[397,6129],{"className":6130,"style":647},[433],[397,6132,6134,6137,6140,6143,6146,6149],{"className":6133},[409],[397,6135],{"className":6136,"style":414},[413],[397,6138,429],{"className":6139},[418,428],[397,6141,4982],{"className":6142},[418],[397,6144],{"className":6145,"style":647},[433],[397,6147,775],{"className":6148},[651],[397,6150],{"className":6151,"style":647},[433],[397,6153,6155,6158],{"className":6154},[409],[397,6156],{"className":6157,"style":2198},[413],[397,6159,4941],{"className":6160},[418],") and drop the smaller half (grey); the kept factors alone give ",[397,6163,6165],{"className":6164},[400],[397,6166,6168,6189],{"className":6167,"ariaHidden":405},[404],[397,6169,6171,6174,6177,6180,6183,6186],{"className":6170},[409],[397,6172],{"className":6173,"style":2982},[413],[397,6175,429],{"className":6176},[418,428],[397,6178,2836],{"className":6179},[454],[397,6181],{"className":6182,"style":647},[433],[397,6184,742],{"className":6185},[651],[397,6187],{"className":6188,"style":647},[433],[397,6190,6192,6195,6198,6201,6204],{"className":6191},[409],[397,6193],{"className":6194,"style":5739},[413],[397,6196,424],{"className":6197},[423],[397,6199,429],{"className":6200},[418,428],[397,6202,4982],{"className":6203},[418],[397,6205,6207,6210],{"className":6206},[454],[397,6208,455],{"className":6209},[454],[397,6211,6213],{"className":6212},[596],[397,6214,6216],{"className":6215},[600],[397,6217,6219],{"className":6218},[605],[397,6220,6222],{"className":6221,"style":5767},[609],[397,6223,6224,6227],{"style":2955},[397,6225],{"className":6226,"style":618},[617],[397,6228,6230],{"className":6229},[622,623,624,625],[397,6231,6233,6236],{"className":6232},[418,625],[397,6234,429],{"className":6235},[418,428,625],[397,6237,4982],{"className":6238},[418,625],[381,6240,6241,6242,817],{},"Taking ",[397,6243,6245],{"className":6244},[400],[397,6246,6248],{"className":6247,"ariaHidden":405},[404],[397,6249,6251,6254],{"className":6250},[409],[397,6252],{"className":6253,"style":3098},[413],[397,6255,6257,6263],{"className":6256},[438],[397,6258,6260],{"className":6259},[438],[397,6261,444],{"className":6262,"style":443},[418,442],[397,6264,6266],{"className":6265},[596],[397,6267,6269,6289],{"className":6268},[600,601],[397,6270,6272,6286],{"className":6271},[605],[397,6273,6275],{"className":6274,"style":3120},[609],[397,6276,6277,6280],{"style":3123},[397,6278],{"className":6279,"style":618},[617],[397,6281,6283],{"className":6282},[622,623,624,625],[397,6284,824],{"className":6285},[418,625],[397,6287,634],{"className":6288},[633],[397,6290,6292],{"className":6291},[605],[397,6293,6295],{"className":6294,"style":3142},[609],[397,6296],{},[397,6298,6300],{"className":6299},[2969],[397,6301,6303],{"className":6302},[400],[397,6304,6306,6379,6574,6706,6737],{"className":6305,"ariaHidden":405},[404],[397,6307,6309,6312,6355,6358,6361,6364,6367,6370,6373,6376],{"className":6308},[409],[397,6310],{"className":6311,"style":414},[413],[397,6313,6315,6321],{"className":6314},[438],[397,6316,6318],{"className":6317},[438],[397,6319,444],{"className":6320,"style":443},[418,442],[397,6322,6324],{"className":6323},[596],[397,6325,6327,6347],{"className":6326},[600,601],[397,6328,6330,6344],{"className":6329},[605],[397,6331,6333],{"className":6332,"style":3120},[609],[397,6334,6335,6338],{"style":3123},[397,6336],{"className":6337,"style":618},[617],[397,6339,6341],{"className":6340},[622,623,624,625],[397,6342,824],{"className":6343},[418,625],[397,6345,634],{"className":6346},[633],[397,6348,6350],{"className":6349},[605],[397,6351,6353],{"className":6352,"style":3142},[609],[397,6354],{},[397,6356,424],{"className":6357},[423],[397,6359,429],{"className":6360},[418,428],[397,6362,3237],{"className":6363},[454],[397,6365],{"className":6366,"style":647},[433],[397,6368],{"className":6369,"style":647},[433],[397,6371,742],{"className":6372},[651],[397,6374],{"className":6375,"style":647},[433],[397,6377],{"className":6378,"style":647},[433],[397,6380,6382,6386,6448,6451,6494,6497,6559,6562,6565,6568,6571],{"className":6381},[409],[397,6383],{"className":6384,"style":6385},[413],"height:1.7936em;vertical-align:-0.686em;",[397,6387,6389,6392,6445],{"className":6388},[418],[397,6390],{"className":6391},[423,4171],[397,6393,6395],{"className":6394},[4175],[397,6396,6398,6437],{"className":6397},[600,601],[397,6399,6401,6434],{"className":6400},[605],[397,6402,6404,6415,6423],{"className":6403,"style":4185},[609],[397,6405,6406,6409],{"style":4188},[397,6407],{"className":6408,"style":4102},[617],[397,6410,6412],{"className":6411},[418],[397,6413,824],{"className":6414},[418],[397,6416,6417,6420],{"style":4201},[397,6418],{"className":6419,"style":4102},[617],[397,6421],{"className":6422,"style":4209},[4208],[397,6424,6425,6428],{"style":4212},[397,6426],{"className":6427,"style":4102},[617],[397,6429,6431],{"className":6430},[418],[397,6432,429],{"className":6433},[418,428],[397,6435,634],{"className":6436},[633],[397,6438,6440],{"className":6439},[605],[397,6441,6443],{"className":6442,"style":4231},[609],[397,6444],{},[397,6446],{"className":6447},[454,4171],[397,6449],{"className":6450,"style":434},[433],[397,6452,6454,6460],{"className":6453},[438],[397,6455,6457],{"className":6456},[438],[397,6458,444],{"className":6459,"style":443},[418,442],[397,6461,6463],{"className":6462},[596],[397,6464,6466,6486],{"className":6465},[600,601],[397,6467,6469,6483],{"className":6468},[605],[397,6470,6472],{"className":6471,"style":3120},[609],[397,6473,6474,6477],{"style":3123},[397,6475],{"className":6476,"style":618},[617],[397,6478,6480],{"className":6479},[622,623,624,625],[397,6481,824],{"className":6482},[418,625],[397,6484,634],{"className":6485},[633],[397,6487,6489],{"className":6488},[605],[397,6490,6492],{"className":6491,"style":3142},[609],[397,6493],{},[397,6495],{"className":6496,"style":434},[433],[397,6498,6500,6503,6556],{"className":6499},[418],[397,6501],{"className":6502},[423,4171],[397,6504,6506],{"className":6505},[4175],[397,6507,6509,6548],{"className":6508},[600,601],[397,6510,6512,6545],{"className":6511},[605],[397,6513,6515,6526,6534],{"className":6514,"style":4185},[609],[397,6516,6517,6520],{"style":4188},[397,6518],{"className":6519,"style":4102},[617],[397,6521,6523],{"className":6522},[418],[397,6524,824],{"className":6525},[418],[397,6527,6528,6531],{"style":4201},[397,6529],{"className":6530,"style":4102},[617],[397,6532],{"className":6533,"style":4209},[4208],[397,6535,6536,6539],{"style":4212},[397,6537],{"className":6538,"style":4102},[617],[397,6540,6542],{"className":6541},[418],[397,6543,429],{"className":6544},[418,428],[397,6546,634],{"className":6547},[633],[397,6549,6551],{"className":6550},[605],[397,6552,6554],{"className":6553,"style":4231},[609],[397,6555],{},[397,6557],{"className":6558},[454,4171],[397,6560],{"className":6561,"style":647},[433],[397,6563],{"className":6564,"style":647},[433],[397,6566,775],{"className":6567},[651],[397,6569],{"className":6570,"style":647},[433],[397,6572],{"className":6573,"style":647},[433],[397,6575,6577,6580,6642,6648,6691,6694,6697,6700,6703],{"className":6576},[409],[397,6578],{"className":6579,"style":6385},[413],[397,6581,6583,6586,6639],{"className":6582},[418],[397,6584],{"className":6585},[423,4171],[397,6587,6589],{"className":6588},[4175],[397,6590,6592,6631],{"className":6591},[600,601],[397,6593,6595,6628],{"className":6594},[605],[397,6596,6598,6609,6617],{"className":6597,"style":4185},[609],[397,6599,6600,6603],{"style":4188},[397,6601],{"className":6602,"style":4102},[617],[397,6604,6606],{"className":6605},[418],[397,6607,824],{"className":6608},[418],[397,6610,6611,6614],{"style":4201},[397,6612],{"className":6613,"style":4102},[617],[397,6615],{"className":6616,"style":4209},[4208],[397,6618,6619,6622],{"style":4212},[397,6620],{"className":6621,"style":4102},[617],[397,6623,6625],{"className":6624},[418],[397,6626,429],{"className":6627},[418,428],[397,6629,634],{"className":6630},[633],[397,6632,6634],{"className":6633},[605],[397,6635,6637],{"className":6636,"style":4231},[609],[397,6638],{},[397,6640],{"className":6641},[454,4171],[397,6643,6645],{"className":6644},[423],[397,6646,424],{"className":6647},[4163,4287],[397,6649,6651,6657],{"className":6650},[438],[397,6652,6654],{"className":6653},[438],[397,6655,444],{"className":6656,"style":443},[418,442],[397,6658,6660],{"className":6659},[596],[397,6661,6663,6683],{"className":6662},[600,601],[397,6664,6666,6680],{"className":6665},[605],[397,6667,6669],{"className":6668,"style":3120},[609],[397,6670,6671,6674],{"style":3123},[397,6672],{"className":6673,"style":618},[617],[397,6675,6677],{"className":6676},[622,623,624,625],[397,6678,824],{"className":6679},[418,625],[397,6681,634],{"className":6682},[633],[397,6684,6686],{"className":6685},[605],[397,6687,6689],{"className":6688,"style":3142},[609],[397,6690],{},[397,6692],{"className":6693,"style":434},[433],[397,6695,429],{"className":6696},[418,428],[397,6698],{"className":6699,"style":4294},[433],[397,6701,4557],{"className":6702},[4298],[397,6704],{"className":6705,"style":4294},[433],[397,6707,6709,6713,6716,6722,6725,6728,6731,6734],{"className":6708},[409],[397,6710],{"className":6711,"style":6712},[413],"height:1.2em;vertical-align:-0.35em;",[397,6714,553],{"className":6715},[418],[397,6717,6719],{"className":6718},[454],[397,6720,455],{"className":6721},[4163,4287],[397,6723],{"className":6724,"style":647},[433],[397,6726],{"className":6727,"style":647},[433],[397,6729,775],{"className":6730},[651],[397,6732],{"className":6733,"style":647},[433],[397,6735],{"className":6736,"style":647},[433],[397,6738,6740,6743,6746,6749,6752,6755,6761,6764,6767,6770],{"className":6739},[409],[397,6741],{"className":6742,"style":414},[413],[397,6744,518],{"className":6745},[418],[397,6747,424],{"className":6748},[423],[397,6750,429],{"className":6751},[418,428],[397,6753],{"className":6754,"style":434},[433],[397,6756,6758],{"className":6757},[438],[397,6759,444],{"className":6760,"style":443},[418,442],[397,6762],{"className":6763,"style":434},[433],[397,6765,429],{"className":6766},[418,428],[397,6768,455],{"className":6769},[454],[397,6771,851],{"className":6772},[418],[381,6774,6775,6776,6900,6901,6940,6941,7047],{},"Either way the height satisfies ",[397,6777,6779],{"className":6778},[400],[397,6780,6782,6800,6867],{"className":6781,"ariaHidden":405},[404],[397,6783,6785,6788,6791,6794,6797],{"className":6784},[409],[397,6786],{"className":6787,"style":2982},[413],[397,6789,2901],{"className":6790},[418,428],[397,6792],{"className":6793,"style":647},[433],[397,6795,742],{"className":6796},[651],[397,6798],{"className":6799,"style":647},[433],[397,6801,6803,6806,6849,6852,6855,6858,6861,6864],{"className":6802},[409],[397,6804],{"className":6805,"style":414},[413],[397,6807,6809,6815],{"className":6808},[438],[397,6810,6812],{"className":6811},[438],[397,6813,444],{"className":6814,"style":443},[418,442],[397,6816,6818],{"className":6817},[596],[397,6819,6821,6841],{"className":6820},[600,601],[397,6822,6824,6838],{"className":6823},[605],[397,6825,6827],{"className":6826,"style":3120},[609],[397,6828,6829,6832],{"style":3123},[397,6830],{"className":6831,"style":618},[617],[397,6833,6835],{"className":6834},[622,623,624,625],[397,6836,824],{"className":6837},[418,625],[397,6839,634],{"className":6840},[633],[397,6842,6844],{"className":6843},[605],[397,6845,6847],{"className":6846,"style":3142},[609],[397,6848],{},[397,6850,424],{"className":6851},[423],[397,6853,429],{"className":6854},[418,428],[397,6856,3237],{"className":6857},[454],[397,6859],{"className":6860,"style":647},[433],[397,6862,775],{"className":6863},[651],[397,6865],{"className":6866,"style":647},[433],[397,6868,6870,6873,6876,6879,6882,6885,6891,6894,6897],{"className":6869},[409],[397,6871],{"className":6872,"style":414},[413],[397,6874,518],{"className":6875},[418],[397,6877,424],{"className":6878},[423],[397,6880,429],{"className":6881},[418,428],[397,6883],{"className":6884,"style":434},[433],[397,6886,6888],{"className":6887},[438],[397,6889,444],{"className":6890,"style":443},[418,442],[397,6892],{"className":6893,"style":434},[433],[397,6895,429],{"className":6896},[418,428],[397,6898,455],{"className":6899},[454],". (For\nintuition on tightness, mergesort's ",[397,6902,6904],{"className":6903},[400],[397,6905,6907],{"className":6906,"ariaHidden":405},[404],[397,6908,6910,6913,6916,6919,6922,6925,6931,6934,6937],{"className":6909},[409],[397,6911],{"className":6912,"style":414},[413],[397,6914,419],{"className":6915},[418],[397,6917,424],{"className":6918},[423],[397,6920,429],{"className":6921},[418,428],[397,6923],{"className":6924,"style":434},[433],[397,6926,6928],{"className":6927},[438],[397,6929,444],{"className":6930,"style":443},[418,442],[397,6932],{"className":6933,"style":434},[433],[397,6935,429],{"className":6936},[418,428],[397,6938,455],{"className":6939},[454]," shows the bound is achieved\nup to constants, so ",[397,6942,6944],{"className":6943},[400],[397,6945,6947,7014],{"className":6946,"ariaHidden":405},[404],[397,6948,6950,6953,6996,6999,7002,7005,7008,7011],{"className":6949},[409],[397,6951],{"className":6952,"style":414},[413],[397,6954,6956,6962],{"className":6955},[438],[397,6957,6959],{"className":6958},[438],[397,6960,444],{"className":6961,"style":443},[418,442],[397,6963,6965],{"className":6964},[596],[397,6966,6968,6988],{"className":6967},[600,601],[397,6969,6971,6985],{"className":6970},[605],[397,6972,6974],{"className":6973,"style":3120},[609],[397,6975,6976,6979],{"style":3123},[397,6977],{"className":6978,"style":618},[617],[397,6980,6982],{"className":6981},[622,623,624,625],[397,6983,824],{"className":6984},[418,625],[397,6986,634],{"className":6987},[633],[397,6989,6991],{"className":6990},[605],[397,6992,6994],{"className":6993,"style":3142},[609],[397,6995],{},[397,6997,424],{"className":6998},[423],[397,7000,429],{"className":7001},[418,428],[397,7003,3237],{"className":7004},[454],[397,7006],{"className":7007,"style":647},[433],[397,7009,775],{"className":7010},[651],[397,7012],{"className":7013,"style":647},[433],[397,7015,7017,7020,7023,7026,7029,7032,7038,7041,7044],{"className":7016},[409],[397,7018],{"className":7019,"style":414},[413],[397,7021,419],{"className":7022},[418],[397,7024,424],{"className":7025},[423],[397,7027,429],{"className":7028},[418,428],[397,7030],{"className":7031,"style":434},[433],[397,7033,7035],{"className":7034},[438],[397,7036,444],{"className":7037,"style":443},[418,442],[397,7039],{"className":7040,"style":434},[433],[397,7042,429],{"className":7043},[418,428],[397,7045,455],{"className":7046},[454]," exactly.)",[560,7049,7051],{"id":7050},"the-conclusion","The conclusion",[7053,7054,7056],"callout",{"type":7055},"theorem",[381,7057,7058,7061,7062,7101],{},[495,7059,7060],{},"Theorem."," Any comparison sort makes ",[397,7063,7065],{"className":7064},[400],[397,7066,7068],{"className":7067,"ariaHidden":405},[404],[397,7069,7071,7074,7077,7080,7083,7086,7092,7095,7098],{"className":7070},[409],[397,7072],{"className":7073,"style":414},[413],[397,7075,518],{"className":7076},[418],[397,7078,424],{"className":7079},[423],[397,7081,429],{"className":7082},[418,428],[397,7084],{"className":7085,"style":434},[433],[397,7087,7089],{"className":7088},[438],[397,7090,444],{"className":7091,"style":443},[418,442],[397,7093],{"className":7094,"style":434},[433],[397,7096,429],{"className":7097},[418,428],[397,7099,455],{"className":7100},[454]," comparisons in the\nworst case.",[381,7103,7104,7105,7108,7109,7124,7125,7165,7166,1158,7191,7194,7195,7198],{},"Because comparisons are a lower bound on ",[458,7106,7107],{},"total"," work, no comparison-based\nalgorithm can sort ",[397,7110,7112],{"className":7111},[400],[397,7113,7115],{"className":7114,"ariaHidden":405},[404],[397,7116,7118,7121],{"className":7117},[409],[397,7119],{"className":7120,"style":871},[413],[397,7122,429],{"className":7123},[418,428]," elements in worst-case time ",[397,7126,7128],{"className":7127},[400],[397,7129,7131],{"className":7130,"ariaHidden":405},[404],[397,7132,7134,7137,7141,7144,7147,7150,7156,7159,7162],{"className":7133},[409],[397,7135],{"className":7136,"style":414},[413],[397,7138,7140],{"className":7139},[418,428],"o",[397,7142,424],{"className":7143},[423],[397,7145,429],{"className":7146},[418,428],[397,7148],{"className":7149,"style":434},[433],[397,7151,7153],{"className":7152},[438],[397,7154,444],{"className":7155,"style":443},[418,442],[397,7157],{"className":7158,"style":434},[433],[397,7160,429],{"className":7161},[418,428],[397,7163,455],{"className":7164},[454],". ",[397,7167,7169],{"className":7168},[400],[397,7170,7172],{"className":7171,"ariaHidden":405},[404],[397,7173,7175,7179],{"className":7174},[409],[397,7176],{"className":7177,"style":7178},[413],"height:0.8778em;vertical-align:-0.1944em;",[397,7180,7184],{"className":7181},[7182,7183],"enclosing","textsc",[397,7185,7187],{"className":7186},[418,3016],[397,7188,7190],{"className":7189},[418],"Heapsort",[495,7192,7193],{},"mergesort"," are therefore ",[495,7196,7197],{},"asymptotically optimal",": they match the lower\nbound, and no comparison sort can beat them by more than a constant factor.",[381,7200,7201],{},"Two points are worth stressing about what this argument does and does not say.",[888,7203,7204],{},[891,7205,7206,7207,7210,7211,7229,7230,7299,7300,7318],{},"It is an ",[495,7208,7209],{},"information-theoretic"," bound. The algorithm must distinguish\n",[397,7212,7214],{"className":7213},[400],[397,7215,7217],{"className":7216,"ariaHidden":405},[404],[397,7218,7220,7223,7226],{"className":7219},[409],[397,7221],{"className":7222,"style":2829},[413],[397,7224,429],{"className":7225},[418,428],[397,7227,2836],{"className":7228},[454]," possible answers, and each comparison is a single yes\u002Fno question\nyielding one bit; ",[397,7231,7233],{"className":7232},[400],[397,7234,7236],{"className":7235,"ariaHidden":405},[404],[397,7237,7239,7242,7246,7289,7292,7295],{"className":7238},[409],[397,7240],{"className":7241,"style":414},[413],[397,7243,7245],{"className":7244},[423],"⌈",[397,7247,7249,7255],{"className":7248},[438],[397,7250,7252],{"className":7251},[438],[397,7253,444],{"className":7254,"style":443},[418,442],[397,7256,7258],{"className":7257},[596],[397,7259,7261,7281],{"className":7260},[600,601],[397,7262,7264,7278],{"className":7263},[605],[397,7265,7267],{"className":7266,"style":3120},[609],[397,7268,7269,7272],{"style":3123},[397,7270],{"className":7271,"style":618},[617],[397,7273,7275],{"className":7274},[622,623,624,625],[397,7276,824],{"className":7277},[418,625],[397,7279,634],{"className":7280},[633],[397,7282,7284],{"className":7283},[605],[397,7285,7287],{"className":7286,"style":3142},[609],[397,7288],{},[397,7290,424],{"className":7291},[423],[397,7293,429],{"className":7294},[418,428],[397,7296,7298],{"className":7297},[454],"!)⌉"," bits are needed to identify one\nanswer among ",[397,7301,7303],{"className":7302},[400],[397,7304,7306],{"className":7305,"ariaHidden":405},[404],[397,7307,7309,7312,7315],{"className":7308},[409],[397,7310],{"className":7311,"style":2829},[413],[397,7313,429],{"className":7314},[418,428],[397,7316,2836],{"className":7317},[454],". The lower bound counts questions, independent of any\ncleverness in choosing them.",[1543,7320,7322,7575],{"className":7321},[1546,1547],[1549,7323,7327],{"xmlns":1551,"width":7324,"height":7325,"viewBox":7326},"290.351","190.631","-75 -75 217.763 142.973",[1556,7328,7329,7367,7405,7439,7466,7478,7481,7485,7492,7495,7499,7505,7508,7511,7514,7518],{"stroke":1558,"style":1559},[1556,7330,7331,7334],{"fill":3328},[1561,7332],{"d":7333},"M75.86-72.07H-41.64a1 1 0 0 0-1 1v15.072a1 1 0 0 0 1 1H75.86a1 1 0 0 0 1-1V-71.07a1 1 0 0 0-1-1ZM-42.64-54.998",[1556,7335,7336,7343,7349,7355,7361],{"fill":1558,"stroke":1563,"fontSize":1568},[1556,7337,7339],{"transform":7338},"translate(-41.561 2.25)",[1561,7340],{"d":7341,"fill":1558,"stroke":1558,"className":7342,"style":1577},"M17.847-63.705Q17.847-63.758 17.856-63.793L18.524-66.461Q18.577-66.659 18.577-66.856Q18.577-67.252 18.313-67.252Q18.027-67.252 17.893-66.929Q17.759-66.606 17.641-66.100Q17.623-66.017 17.548-66.017L17.443-66.017Q17.395-66.017 17.373-66.056Q17.351-66.096 17.351-66.136Q17.513-66.755 17.713-67.133Q17.913-67.511 18.335-67.511Q18.555-67.511 18.759-67.417Q18.963-67.322 19.093-67.149Q19.223-66.975 19.223-66.755Q19.500-67.107 19.862-67.309Q20.225-67.511 20.638-67.511Q21.134-67.511 21.431-67.258Q21.728-67.006 21.728-66.522Q21.728-66.149 21.567-65.654Q21.407-65.160 21.152-64.488Q21.033-64.202 21.033-63.965Q21.033-63.697 21.222-63.697Q21.464-63.697 21.660-63.883Q21.855-64.070 21.976-64.336Q22.097-64.602 22.158-64.848Q22.167-64.879 22.191-64.903Q22.215-64.927 22.246-64.927L22.356-64.927Q22.400-64.927 22.422-64.894Q22.444-64.861 22.444-64.813Q22.312-64.281 21.994-63.857Q21.675-63.433 21.213-63.433Q20.884-63.433 20.649-63.646Q20.414-63.859 20.414-64.193Q20.414-64.373 20.475-64.523Q20.734-65.186 20.906-65.727Q21.077-66.267 21.077-66.659Q21.077-66.812 21.036-66.949Q20.994-67.085 20.893-67.168Q20.792-67.252 20.620-67.252Q20.124-67.252 19.755-66.940Q19.385-66.628 19.117-66.118L18.533-63.758Q18.502-63.622 18.386-63.527Q18.269-63.433 18.133-63.433Q18.014-63.433 17.931-63.508Q17.847-63.582 17.847-63.705",[1576],[1556,7344,7345],{"transform":7338},[1561,7346],{"d":7347,"fill":1558,"stroke":1558,"className":7348,"style":1577},"M23.462-64.039Q23.462-64.242 23.612-64.391Q23.761-64.540 23.968-64.540Q24.170-64.540 24.322-64.393Q24.473-64.246 24.473-64.039Q24.473-63.828 24.322-63.681Q24.170-63.534 23.968-63.534Q23.761-63.534 23.612-63.683Q23.462-63.833 23.462-64.039M23.823-65.345L23.462-69.458L23.462-69.519Q23.462-69.717 23.621-69.847Q23.779-69.976 23.968-69.976Q24.157-69.976 24.315-69.847Q24.473-69.717 24.473-69.519L24.473-69.458L24.113-65.345Q24.113-65.309 24.080-65.285Q24.047-65.261 24.021-65.261L23.915-65.261Q23.884-65.261 23.854-65.287Q23.823-65.314 23.823-65.345",[1576],[1556,7350,7351],{"transform":7338},[1561,7352],{"d":7353,"fill":1558,"stroke":1558,"className":7354,"style":1577},"M30.680-61.789L28.592-61.789L28.592-62.101Q28.904-62.101 29.096-62.152Q29.287-62.202 29.287-62.400L29.287-66.738Q29.287-66.979 29.113-67.039Q28.940-67.098 28.592-67.098L28.592-67.414L29.964-67.511L29.964-66.971Q30.223-67.239 30.557-67.375Q30.891-67.511 31.260-67.511Q31.660-67.511 32.016-67.344Q32.372-67.177 32.627-66.896Q32.882-66.615 33.024-66.250Q33.167-65.885 33.167-65.476Q33.167-64.914 32.890-64.448Q32.613-63.982 32.139-63.708Q31.664-63.433 31.115-63.433Q30.803-63.433 30.513-63.567Q30.223-63.701 29.990-63.947L29.990-62.400Q29.990-62.202 30.181-62.152Q30.372-62.101 30.680-62.101L30.680-61.789M29.990-66.557L29.990-64.426Q30.148-64.101 30.432-63.899Q30.715-63.697 31.058-63.697Q31.471-63.697 31.765-63.973Q32.060-64.250 32.207-64.668Q32.354-65.085 32.354-65.476Q32.354-65.854 32.220-66.263Q32.086-66.672 31.811-66.949Q31.537-67.225 31.159-67.225Q30.917-67.225 30.702-67.149Q30.487-67.072 30.295-66.911Q30.104-66.751 29.990-66.557",[1576],[1556,7356,7357],{"transform":7338},[1561,7358],{"d":7359,"fill":1558,"stroke":1558,"className":7360,"style":1577},"M33.997-65.441Q33.997-66.008 34.270-66.496Q34.542-66.984 35.012-67.276Q35.483-67.568 36.050-67.568Q36.471-67.568 36.847-67.399Q37.223-67.230 37.500-66.938Q37.777-66.645 37.935-66.250Q38.093-65.854 38.093-65.441Q38.093-64.892 37.814-64.430Q37.535-63.969 37.067-63.701Q36.599-63.433 36.050-63.433Q35.496-63.433 35.026-63.701Q34.555-63.969 34.276-64.430Q33.997-64.892 33.997-65.441M36.050-63.723Q36.546-63.723 36.823-63.984Q37.100-64.246 37.192-64.650Q37.284-65.055 37.284-65.551Q37.284-66.026 37.186-66.415Q37.087-66.804 36.814-67.054Q36.542-67.305 36.050-67.305Q35.338-67.305 35.074-66.810Q34.810-66.316 34.810-65.551Q34.810-64.751 35.065-64.237Q35.320-63.723 36.050-63.723M38.664-63.516L38.664-64.958Q38.664-64.989 38.693-65.013Q38.721-65.037 38.752-65.037L38.862-65.037Q38.897-65.037 38.919-65.015Q38.941-64.993 38.950-64.958Q39.209-63.697 40.176-63.697Q40.602-63.697 40.897-63.881Q41.191-64.066 41.191-64.470Q41.191-64.764 40.960-64.960Q40.730-65.156 40.418-65.217L39.816-65.336Q39.350-65.424 39.007-65.707Q38.664-65.991 38.664-66.430Q38.664-67.023 39.102-67.296Q39.539-67.568 40.176-67.568Q40.655-67.568 41.002-67.322L41.253-67.546Q41.310-67.568 41.310-67.568L41.363-67.568Q41.389-67.568 41.422-67.542Q41.455-67.515 41.455-67.485L41.455-66.325Q41.455-66.294 41.420-66.267Q41.384-66.241 41.363-66.241L41.253-66.241Q41.231-66.241 41.198-66.270Q41.165-66.298 41.165-66.325Q41.165-66.790 40.899-67.061Q40.633-67.331 40.167-67.331Q39.763-67.331 39.460-67.186Q39.156-67.041 39.156-66.685Q39.156-66.439 39.374-66.285Q39.592-66.131 39.868-66.074L40.497-65.947Q40.813-65.885 41.083-65.718Q41.354-65.551 41.521-65.285Q41.688-65.019 41.688-64.703Q41.688-64.061 41.261-63.747Q40.835-63.433 40.176-63.433Q39.904-63.433 39.638-63.527Q39.372-63.622 39.192-63.811L38.871-63.472Q38.853-63.433 38.805-63.433L38.752-63.433Q38.730-63.433 38.697-63.461Q38.664-63.490 38.664-63.516M42.307-63.516L42.307-64.958Q42.307-64.989 42.336-65.013Q42.364-65.037 42.395-65.037L42.505-65.037Q42.540-65.037 42.562-65.015Q42.584-64.993 42.593-64.958Q42.852-63.697 43.819-63.697Q44.245-63.697 44.540-63.881Q44.834-64.066 44.834-64.470Q44.834-64.764 44.603-64.960Q44.373-65.156 44.061-65.217L43.459-65.336Q42.993-65.424 42.650-65.707Q42.307-65.991 42.307-66.430Q42.307-67.023 42.745-67.296Q43.182-67.568 43.819-67.568Q44.298-67.568 44.645-67.322L44.896-67.546Q44.953-67.568 44.953-67.568L45.006-67.568Q45.032-67.568 45.065-67.542Q45.098-67.515 45.098-67.485L45.098-66.325Q45.098-66.294 45.063-66.267Q45.028-66.241 45.006-66.241L44.896-66.241Q44.874-66.241 44.841-66.270Q44.808-66.298 44.808-66.325Q44.808-66.790 44.542-67.061Q44.276-67.331 43.810-67.331Q43.406-67.331 43.103-67.186Q42.800-67.041 42.800-66.685Q42.800-66.439 43.017-66.285Q43.235-66.131 43.511-66.074L44.140-65.947Q44.456-65.885 44.727-65.718Q44.997-65.551 45.164-65.285Q45.331-65.019 45.331-64.703Q45.331-64.061 44.905-63.747Q44.478-63.433 43.819-63.433Q43.547-63.433 43.281-63.527Q43.015-63.622 42.835-63.811L42.514-63.472Q42.496-63.433 42.448-63.433L42.395-63.433Q42.373-63.433 42.340-63.461Q42.307-63.490 42.307-63.516M47.937-63.534L45.950-63.534L45.950-63.850Q46.258-63.850 46.449-63.903Q46.640-63.956 46.640-64.145L46.640-66.593Q46.640-66.839 46.574-66.944Q46.509-67.050 46.383-67.074Q46.258-67.098 45.986-67.098L45.986-67.414L47.317-67.511L47.317-64.145Q47.317-63.951 47.482-63.901Q47.647-63.850 47.937-63.850L47.937-63.534M46.337-69.058Q46.337-69.264 46.487-69.414Q46.636-69.563 46.838-69.563Q46.970-69.563 47.086-69.493Q47.203-69.423 47.273-69.306Q47.343-69.190 47.343-69.058Q47.343-68.856 47.194-68.706Q47.045-68.557 46.838-68.557Q46.636-68.557 46.487-68.706Q46.337-68.856 46.337-69.058M49.444-63.534L49.154-63.534L49.154-68.860Q49.154-69.102 49.084-69.210Q49.013-69.317 48.879-69.341Q48.745-69.366 48.460-69.366L48.460-69.682L49.831-69.779L49.831-66.979Q50.077-67.230 50.411-67.370Q50.745-67.511 51.096-67.511Q51.496-67.511 51.859-67.348Q52.221-67.186 52.478-66.907Q52.736-66.628 52.885-66.250Q53.034-65.872 53.034-65.476Q53.034-64.914 52.758-64.448Q52.481-63.982 52.006-63.708Q51.531-63.433 50.982-63.433Q50.617-63.433 50.297-63.602Q49.976-63.771 49.756-64.066L49.444-63.534M49.857-66.566L49.857-64.435Q50.015-64.101 50.299-63.899Q50.582-63.697 50.925-63.697Q51.615-63.697 51.918-64.217Q52.221-64.738 52.221-65.476Q52.221-66.201 51.956-66.727Q51.690-67.252 51.026-67.252Q50.666-67.252 50.352-67.067Q50.037-66.883 49.857-66.566M55.715-63.534L53.654-63.534L53.654-63.850Q53.962-63.850 54.153-63.903Q54.344-63.956 54.344-64.145L54.344-68.860Q54.344-69.102 54.274-69.210Q54.203-69.317 54.069-69.341Q53.935-69.366 53.654-69.366L53.654-69.682L55.021-69.779L55.021-64.145Q55.021-63.956 55.214-63.903Q55.407-63.850 55.715-63.850L55.715-63.534M58.224-63.433Q57.666-63.433 57.194-63.716Q56.721-64 56.447-64.477Q56.172-64.953 56.172-65.507Q56.172-65.903 56.315-66.278Q56.458-66.654 56.715-66.942Q56.972-67.230 57.330-67.399Q57.688-67.568 58.092-67.568Q58.637-67.568 59.009-67.331Q59.380-67.094 59.567-66.676Q59.754-66.259 59.754-65.722Q59.754-65.670 59.729-65.632Q59.705-65.595 59.657-65.595L56.985-65.595L56.985-65.516Q56.985-64.769 57.297-64.246Q57.609-63.723 58.308-63.723Q58.712-63.723 59.033-63.980Q59.354-64.237 59.477-64.641Q59.494-64.721 59.578-64.721L59.657-64.721Q59.696-64.721 59.725-64.690Q59.754-64.659 59.754-64.615L59.754-64.580Q59.648-64.237 59.426-63.978Q59.204-63.719 58.890-63.576Q58.576-63.433 58.224-63.433M56.994-65.846L59.108-65.846Q59.108-66.114 59.055-66.360Q59.002-66.606 58.881-66.828Q58.760-67.050 58.563-67.177Q58.365-67.305 58.092-67.305Q57.750-67.305 57.497-67.080Q57.244-66.856 57.119-66.518Q56.994-66.180 56.994-65.846",[1576],[1556,7362,7363],{"transform":7338},[1561,7364],{"d":7365,"fill":1558,"stroke":1558,"className":7366,"style":1577},"M63.395-65.441Q63.395-66.008 63.668-66.496Q63.940-66.984 64.410-67.276Q64.881-67.568 65.448-67.568Q65.869-67.568 66.245-67.399Q66.621-67.230 66.898-66.938Q67.175-66.645 67.333-66.250Q67.491-65.854 67.491-65.441Q67.491-64.892 67.212-64.430Q66.933-63.969 66.465-63.701Q65.997-63.433 65.448-63.433Q64.894-63.433 64.424-63.701Q63.953-63.969 63.674-64.430Q63.395-64.892 63.395-65.441M65.448-63.723Q65.944-63.723 66.221-63.984Q66.498-64.246 66.590-64.650Q66.682-65.055 66.682-65.551Q66.682-66.026 66.584-66.415Q66.485-66.804 66.212-67.054Q65.940-67.305 65.448-67.305Q64.736-67.305 64.472-66.810Q64.208-66.316 64.208-65.551Q64.208-64.751 64.463-64.237Q64.718-63.723 65.448-63.723M70.238-63.534L68.005-63.534L68.005-63.850Q68.317-63.850 68.508-63.903Q68.699-63.956 68.699-64.145L68.699-66.593Q68.699-66.834 68.629-66.942Q68.559-67.050 68.425-67.074Q68.291-67.098 68.005-67.098L68.005-67.414L69.319-67.511L69.319-66.650Q69.482-67.041 69.750-67.276Q70.018-67.511 70.409-67.511Q70.681-67.511 70.897-67.348Q71.112-67.186 71.112-66.927Q71.112-66.751 70.993-66.632Q70.875-66.513 70.699-66.513Q70.519-66.513 70.400-66.632Q70.282-66.751 70.282-66.927Q70.282-67.142 70.435-67.252L70.418-67.252Q70.040-67.252 69.807-66.990Q69.574-66.729 69.475-66.342Q69.376-65.955 69.376-65.595L69.376-64.145Q69.376-63.956 69.633-63.903Q69.890-63.850 70.238-63.850L70.238-63.534M73.621-63.433Q73.076-63.433 72.633-63.716Q72.189-64 71.934-64.472Q71.679-64.945 71.679-65.476Q71.679-66.030 71.956-66.496Q72.233-66.962 72.705-67.236Q73.178-67.511 73.722-67.511Q74.056-67.511 74.360-67.379Q74.663-67.247 74.883-67.010L74.883-68.860Q74.883-69.102 74.812-69.210Q74.742-69.317 74.608-69.341Q74.474-69.366 74.188-69.366L74.188-69.682L75.555-69.779L75.555-64.351Q75.555-64.114 75.625-64.006Q75.696-63.899 75.832-63.875Q75.968-63.850 76.249-63.850L76.249-63.534L74.856-63.433L74.856-63.982Q74.606-63.719 74.287-63.576Q73.969-63.433 73.621-63.433M73.683-63.697Q74.052-63.697 74.362-63.908Q74.672-64.118 74.856-64.461L74.856-66.593Q74.685-66.896 74.404-67.074Q74.122-67.252 73.784-67.252Q73.094-67.252 72.791-66.731Q72.488-66.210 72.488-65.468Q72.488-64.747 72.758-64.222Q73.028-63.697 73.683-63.697M78.820-63.433Q78.262-63.433 77.790-63.716Q77.317-64 77.042-64.477Q76.768-64.953 76.768-65.507Q76.768-65.903 76.911-66.278Q77.053-66.654 77.311-66.942Q77.568-67.230 77.926-67.399Q78.284-67.568 78.688-67.568Q79.233-67.568 79.605-67.331Q79.976-67.094 80.163-66.676Q80.349-66.259 80.349-65.722Q80.349-65.670 80.325-65.632Q80.301-65.595 80.253-65.595L77.581-65.595L77.581-65.516Q77.581-64.769 77.893-64.246Q78.205-63.723 78.904-63.723Q79.308-63.723 79.629-63.980Q79.949-64.237 80.073-64.641Q80.090-64.721 80.174-64.721L80.253-64.721Q80.292-64.721 80.321-64.690Q80.349-64.659 80.349-64.615L80.349-64.580Q80.244-64.237 80.022-63.978Q79.800-63.719 79.486-63.576Q79.172-63.433 78.820-63.433M77.590-65.846L79.703-65.846Q79.703-66.114 79.651-66.360Q79.598-66.606 79.477-66.828Q79.356-67.050 79.158-67.177Q78.961-67.305 78.688-67.305Q78.345-67.305 78.093-67.080Q77.840-66.856 77.715-66.518Q77.590-66.180 77.590-65.846M83.105-63.534L80.872-63.534L80.872-63.850Q81.184-63.850 81.376-63.903Q81.567-63.956 81.567-64.145L81.567-66.593Q81.567-66.834 81.496-66.942Q81.426-67.050 81.292-67.074Q81.158-67.098 80.872-67.098L80.872-67.414L82.186-67.511L82.186-66.650Q82.349-67.041 82.617-67.276Q82.885-67.511 83.276-67.511Q83.549-67.511 83.764-67.348Q83.979-67.186 83.979-66.927Q83.979-66.751 83.861-66.632Q83.742-66.513 83.566-66.513Q83.386-66.513 83.267-66.632Q83.149-66.751 83.149-66.927Q83.149-67.142 83.303-67.252L83.285-67.252Q82.907-67.252 82.674-66.990Q82.441-66.729 82.342-66.342Q82.243-65.955 82.243-65.595L82.243-64.145Q82.243-63.956 82.501-63.903Q82.758-63.850 83.105-63.850L83.105-63.534M86.532-63.534L84.546-63.534L84.546-63.850Q84.854-63.850 85.045-63.903Q85.236-63.956 85.236-64.145L85.236-66.593Q85.236-66.839 85.170-66.944Q85.104-67.050 84.979-67.074Q84.854-67.098 84.581-67.098L84.581-67.414L85.913-67.511L85.913-64.145Q85.913-63.951 86.078-63.901Q86.242-63.850 86.532-63.850L86.532-63.534M84.933-69.058Q84.933-69.264 85.082-69.414Q85.232-69.563 85.434-69.563Q85.566-69.563 85.682-69.493Q85.799-69.423 85.869-69.306Q85.939-69.190 85.939-69.058Q85.939-68.856 85.790-68.706Q85.640-68.557 85.434-68.557Q85.232-68.557 85.082-68.706Q84.933-68.856 84.933-69.058M89.191-63.534L87.104-63.534L87.104-63.850Q87.411-63.850 87.603-63.903Q87.794-63.956 87.794-64.145L87.794-66.593Q87.794-66.834 87.723-66.942Q87.653-67.050 87.519-67.074Q87.385-67.098 87.104-67.098L87.104-67.414L88.444-67.511L88.444-66.676Q88.642-67.058 88.996-67.285Q89.349-67.511 89.776-67.511Q91.054-67.511 91.054-66.298L91.054-64.145Q91.054-63.956 91.246-63.903Q91.437-63.850 91.744-63.850L91.744-63.534L89.657-63.534L89.657-63.850Q89.969-63.850 90.160-63.903Q90.351-63.956 90.351-64.145L90.351-66.263Q90.351-66.522 90.307-66.744Q90.263-66.966 90.118-67.109Q89.973-67.252 89.714-67.252Q89.371-67.252 89.090-67.063Q88.809-66.874 88.653-66.562Q88.497-66.250 88.497-65.903L88.497-64.145Q88.497-63.956 88.690-63.903Q88.884-63.850 89.191-63.850L89.191-63.534M92.201-62.840Q92.201-63.152 92.430-63.391Q92.658-63.631 92.979-63.732Q92.799-63.872 92.705-64.081Q92.610-64.290 92.610-64.523Q92.610-64.936 92.887-65.270Q92.474-65.674 92.474-66.188Q92.474-66.579 92.694-66.878Q92.913-67.177 93.265-67.344Q93.616-67.511 93.994-67.511Q94.548-67.511 94.966-67.199Q95.155-67.392 95.416-67.502Q95.678-67.612 95.963-67.612Q96.165-67.612 96.299-67.469Q96.433-67.326 96.433-67.133Q96.433-67.006 96.350-66.927Q96.266-66.847 96.143-66.847Q96.025-66.847 95.941-66.927Q95.858-67.006 95.858-67.133Q95.858-67.208 95.866-67.234Q95.884-67.269 95.906-67.302Q95.928-67.335 95.937-67.348Q95.493-67.348 95.146-67.045Q95.506-66.663 95.506-66.188Q95.506-65.894 95.379-65.648Q95.251-65.402 95.038-65.226Q94.825-65.050 94.546-64.953Q94.267-64.857 93.994-64.857Q93.485-64.857 93.076-65.125Q92.948-64.953 92.948-64.747Q92.948-64.505 93.107-64.334Q93.265-64.162 93.498-64.162L94.262-64.162Q94.807-64.162 95.253-64.066Q95.699-63.969 95.998-63.679Q96.297-63.389 96.297-62.840Q96.297-62.260 95.612-61.970Q94.926-61.680 94.254-61.680Q93.581-61.680 92.891-61.970Q92.201-62.260 92.201-62.840M92.742-62.840Q92.742-62.545 92.995-62.347Q93.247-62.150 93.608-62.055Q93.968-61.961 94.254-61.961Q94.755-61.961 95.256-62.187Q95.757-62.413 95.757-62.840Q95.757-63.297 95.315-63.429Q94.873-63.560 94.262-63.560L93.498-63.560Q93.304-63.560 93.126-63.466Q92.948-63.371 92.845-63.207Q92.742-63.042 92.742-62.840M93.986-65.138L93.994-65.138Q94.777-65.138 94.777-66.188Q94.777-67.234 93.994-67.234Q93.203-67.234 93.203-66.188Q93.203-65.138 93.986-65.138M96.868-63.516L96.868-64.958Q96.868-64.989 96.897-65.013Q96.926-65.037 96.956-65.037L97.066-65.037Q97.101-65.037 97.123-65.015Q97.145-64.993 97.154-64.958Q97.413-63.697 98.380-63.697Q98.806-63.697 99.101-63.881Q99.395-64.066 99.395-64.470Q99.395-64.764 99.165-64.960Q98.934-65.156 98.622-65.217L98.020-65.336Q97.554-65.424 97.211-65.707Q96.868-65.991 96.868-66.430Q96.868-67.023 97.306-67.296Q97.743-67.568 98.380-67.568Q98.859-67.568 99.206-67.322L99.457-67.546Q99.514-67.568 99.514-67.568L99.567-67.568Q99.593-67.568 99.626-67.542Q99.659-67.515 99.659-67.485L99.659-66.325Q99.659-66.294 99.624-66.267Q99.589-66.241 99.567-66.241L99.457-66.241Q99.435-66.241 99.402-66.270Q99.369-66.298 99.369-66.325Q99.369-66.790 99.103-67.061Q98.837-67.331 98.371-67.331Q97.967-67.331 97.664-67.186Q97.361-67.041 97.361-66.685Q97.361-66.439 97.578-66.285Q97.796-66.131 98.073-66.074L98.701-65.947Q99.017-65.885 99.288-65.718Q99.558-65.551 99.725-65.285Q99.892-65.019 99.892-64.703Q99.892-64.061 99.466-63.747Q99.039-63.433 98.380-63.433Q98.108-63.433 97.842-63.527Q97.576-63.622 97.396-63.811L97.075-63.472Q97.057-63.433 97.009-63.433L96.956-63.433Q96.934-63.433 96.901-63.461Q96.868-63.490 96.868-63.516",[1576],[1556,7368,7369,7372],{"fill":3328},[1561,7370],{"d":7371},"M33.181-42.195h-83.358a1 1 0 0 0-1 1v15.072a1 1 0 0 0 1 1h83.358a1 1 0 0 0 1-1v-15.072a1 1 0 0 0-1-1Zm-84.358 17.072",[1556,7373,7374,7381,7387,7393,7399],{"fill":1558,"stroke":1563,"fontSize":1568},[1556,7375,7377],{"transform":7376},"translate(-39.189 32.125)",[1561,7378],{"d":7379,"fill":1558,"stroke":1558,"className":7380,"style":1577},"M23.345-62.150L18.063-62.150Q17.988-62.163 17.935-62.216Q17.882-62.268 17.882-62.347Q17.882-62.418 17.935-62.471Q17.988-62.523 18.063-62.536L23.345-62.536Q23.415-62.523 23.466-62.475Q23.516-62.427 23.516-62.347Q23.516-62.180 23.345-62.150M23.257-63.991L17.984-66.522Q17.882-66.562 17.882-66.694Q17.882-66.812 18.010-66.874L23.257-69.392Q23.275-69.401 23.327-69.401Q23.402-69.401 23.459-69.344Q23.516-69.286 23.516-69.212Q23.516-69.080 23.402-69.032L18.524-66.694L23.428-64.334Q23.516-64.290 23.516-64.171Q23.516-64.096 23.459-64.035Q23.402-63.973 23.327-63.973Q23.275-63.973 23.257-63.991",[1576],[1556,7382,7383],{"transform":7376},[1561,7384],{"d":7385,"fill":1558,"stroke":1558,"className":7386,"style":1577},"M27.611-63.705Q27.611-63.758 27.620-63.793L28.288-66.461Q28.341-66.659 28.341-66.856Q28.341-67.252 28.077-67.252Q27.791-67.252 27.657-66.929Q27.523-66.606 27.405-66.100Q27.387-66.017 27.312-66.017L27.207-66.017Q27.159-66.017 27.137-66.056Q27.115-66.096 27.115-66.136Q27.277-66.755 27.477-67.133Q27.677-67.511 28.099-67.511Q28.319-67.511 28.523-67.417Q28.727-67.322 28.857-67.149Q28.987-66.975 28.987-66.755Q29.264-67.107 29.626-67.309Q29.989-67.511 30.402-67.511Q30.898-67.511 31.195-67.258Q31.492-67.006 31.492-66.522Q31.492-66.149 31.331-65.654Q31.171-65.160 30.916-64.488Q30.797-64.202 30.797-63.965Q30.797-63.697 30.986-63.697Q31.228-63.697 31.424-63.883Q31.619-64.070 31.740-64.336Q31.861-64.602 31.922-64.848Q31.931-64.879 31.955-64.903Q31.979-64.927 32.010-64.927L32.120-64.927Q32.164-64.927 32.186-64.894Q32.208-64.861 32.208-64.813Q32.076-64.281 31.758-63.857Q31.439-63.433 30.977-63.433Q30.648-63.433 30.413-63.646Q30.178-63.859 30.178-64.193Q30.178-64.373 30.239-64.523Q30.498-65.186 30.670-65.727Q30.841-66.267 30.841-66.659Q30.841-66.812 30.800-66.949Q30.758-67.085 30.657-67.168Q30.556-67.252 30.384-67.252Q29.888-67.252 29.519-66.940Q29.149-66.628 28.881-66.118L28.297-63.758Q28.266-63.622 28.150-63.527Q28.033-63.433 27.897-63.433Q27.778-63.433 27.695-63.508Q27.611-63.582 27.611-63.705",[1576],[1556,7388,7389],{"transform":7376},[1561,7390],{"d":7391,"fill":1558,"stroke":1558,"className":7392,"style":1577},"M33.226-64.039Q33.226-64.242 33.376-64.391Q33.525-64.540 33.732-64.540Q33.934-64.540 34.086-64.393Q34.237-64.246 34.237-64.039Q34.237-63.828 34.086-63.681Q33.934-63.534 33.732-63.534Q33.525-63.534 33.376-63.683Q33.226-63.833 33.226-64.039M33.587-65.345L33.226-69.458L33.226-69.519Q33.226-69.717 33.385-69.847Q33.543-69.976 33.732-69.976Q33.921-69.976 34.079-69.847Q34.237-69.717 34.237-69.519L34.237-69.458L33.877-65.345Q33.877-65.309 33.844-65.285Q33.811-65.261 33.785-65.261L33.679-65.261Q33.648-65.261 33.618-65.287Q33.587-65.314 33.587-65.345",[1576],[1556,7394,7395],{"transform":7376},[1561,7396],{"d":7397,"fill":1558,"stroke":1558,"className":7398,"style":1577},"M35.537-61.473Q35.537-61.517 35.546-61.534L38.758-70.165Q38.802-70.284 38.939-70.284Q39.013-70.284 39.070-70.227Q39.127-70.170 39.127-70.095Q39.127-70.051 39.119-70.034L35.915-61.403Q35.858-61.284 35.735-61.284Q35.651-61.284 35.594-61.341Q35.537-61.398 35.537-61.473",[1576],[1556,7400,7401],{"transform":7376},[1561,7402],{"d":7403,"fill":1558,"stroke":1558,"className":7404,"style":1577},"M43.554-63.534L40.104-63.534L40.104-63.767Q40.104-63.780 40.135-63.811L41.589-65.388Q42.055-65.885 42.308-66.190Q42.561-66.496 42.752-66.907Q42.943-67.318 42.943-67.757Q42.943-68.346 42.620-68.779Q42.297-69.212 41.717-69.212Q41.453-69.212 41.207-69.102Q40.961-68.992 40.785-68.805Q40.609-68.618 40.513-68.368L40.592-68.368Q40.794-68.368 40.937-68.232Q41.080-68.096 41.080-67.880Q41.080-67.674 40.937-67.535Q40.794-67.397 40.592-67.397Q40.390-67.397 40.247-67.540Q40.104-67.682 40.104-67.880Q40.104-68.342 40.341-68.715Q40.579-69.089 40.979-69.308Q41.378-69.528 41.827-69.528Q42.350-69.528 42.804-69.313Q43.259-69.097 43.532-68.698Q43.804-68.298 43.804-67.757Q43.804-67.362 43.633-67.008Q43.461-66.654 43.196-66.375Q42.930-66.096 42.479-65.711Q42.029-65.327 41.950-65.252L40.926-64.290L41.743-64.290Q42.394-64.290 42.831-64.301Q43.268-64.312 43.299-64.334Q43.369-64.417 43.424-64.657Q43.479-64.896 43.519-65.164L43.804-65.164",[1576],[1556,7406,7407,7410],{"fill":3328},[1561,7408],{"d":7409},"M-.962-12.32h-54.906a1 1 0 0 0-1 1V3.754a1 1 0 0 0 1 1H-.962a1 1 0 0 0 1-1V-11.32a1 1 0 0 0-1-1ZM-56.868 4.754",[1556,7411,7412,7418,7423,7428,7433],{"fill":1558,"stroke":1563,"fontSize":1568},[1556,7413,7415],{"transform":7414},"translate(-59.106 62)",[1561,7416],{"d":7379,"fill":1558,"stroke":1558,"className":7417,"style":1577},[1576],[1556,7419,7420],{"transform":7414},[1561,7421],{"d":7385,"fill":1558,"stroke":1558,"className":7422,"style":1577},[1576],[1556,7424,7425],{"transform":7414},[1561,7426],{"d":7391,"fill":1558,"stroke":1558,"className":7427,"style":1577},[1576],[1556,7429,7430],{"transform":7414},[1561,7431],{"d":7397,"fill":1558,"stroke":1558,"className":7432,"style":1577},[1576],[1556,7434,7435],{"transform":7414},[1561,7436],{"d":7437,"fill":1558,"stroke":1558,"className":7438,"style":1577},"M42.345-65.011L39.906-65.011L39.906-65.327L42.732-69.475Q42.776-69.528 42.842-69.528L42.996-69.528Q43.035-69.528 43.068-69.495Q43.101-69.462 43.101-69.418L43.101-65.327L44.002-65.327L44.002-65.011L43.101-65.011L43.101-64.145Q43.101-63.850 44.002-63.850L44.002-63.534L41.449-63.534L41.449-63.850Q41.809-63.850 42.077-63.905Q42.345-63.960 42.345-64.145L42.345-65.011M42.402-68.500L40.240-65.327L42.402-65.327",[1576],[1556,7440,7441,7444],{"fill":3328},[1561,7442],{"d":7443},"M-26.57 17.556h-32.143a1 1 0 0 0-1 1v15.072a1 1 0 0 0 1 1h32.143a1 1 0 0 0 1-1V18.556a1 1 0 0 0-1-1Zm-33.143 17.072",[1556,7445,7447,7454,7460],{"fill":1558,"stroke":1563,"fontFamily":7446,"fontSize":1568},"cmmi9",[1556,7448,7450],{"transform":7449},"translate(-65.918 90.112)",[1561,7451],{"d":7452,"fill":1558,"stroke":1558,"className":7453,"style":1577},"M17.882-64.039Q17.882-64.167 17.951-64.283Q18.019-64.400 18.135-64.470Q18.252-64.540 18.388-64.540Q18.590-64.540 18.742-64.393Q18.893-64.246 18.893-64.039Q18.893-63.833 18.744-63.683Q18.594-63.534 18.388-63.534Q18.177-63.534 18.030-63.686Q17.882-63.837 17.882-64.039",[1576],[1556,7455,7456],{"transform":7449},[1561,7457],{"d":7458,"fill":1558,"stroke":1558,"className":7459,"style":1577},"M21.994-64.039Q21.994-64.167 22.063-64.283Q22.131-64.400 22.247-64.470Q22.364-64.540 22.500-64.540Q22.702-64.540 22.854-64.393Q23.005-64.246 23.005-64.039Q23.005-63.833 22.856-63.683Q22.706-63.534 22.500-63.534Q22.289-63.534 22.142-63.686Q21.994-63.837 21.994-64.039",[1576],[1556,7461,7462],{"transform":7449},[1561,7463],{"d":7464,"fill":1558,"stroke":1558,"className":7465,"style":1577},"M26.105-64.039Q26.105-64.167 26.174-64.283Q26.242-64.400 26.358-64.470Q26.475-64.540 26.611-64.540Q26.813-64.540 26.965-64.393Q27.116-64.246 27.116-64.039Q27.116-63.833 26.967-63.683Q26.817-63.534 26.611-63.534Q26.400-63.534 26.253-63.686Q26.105-63.837 26.105-64.039",[1576],[1556,7467,7468,7471],{"fill":3328,"stroke":3459},[1561,7469],{"d":7470},"M-37.95 47.431h-26.453a1 1 0 0 0-1 1v15.072a1 1 0 0 0 1 1h26.452a1 1 0 0 0 1-1V48.431a1 1 0 0 0-1-1Zm-27.453 17.072",[1556,7472,7474],{"transform":7473},"translate(-70.599 122.401)",[1561,7475],{"d":7476,"fill":1558,"stroke":1558,"className":7477,"style":1577},"M21.016-63.534L17.984-63.534L17.984-63.850Q19.135-63.850 19.135-64.145L19.135-68.869Q18.647-68.636 17.926-68.636L17.926-68.952Q19.056-68.952 19.618-69.528L19.763-69.528Q19.798-69.528 19.831-69.495Q19.864-69.462 19.864-69.427L19.864-64.145Q19.864-63.850 21.016-63.850",[1576],[1561,7479],{"fill":1563,"d":7480},"M17.11-54.798C6.322-52.14.274-49.21-6.07-44.281",[1561,7482],{"d":7483,"style":7484},"m-8.048-42.744 3.659-1.133-1.76-.343.103-1.79Z","stroke-width:.399984",[1556,7486,7488],{"transform":7487},"translate(-10.026 14.205)",[1561,7489],{"d":7490,"fill":1558,"stroke":1558,"className":7491,"style":1623},"M17.423-65.045Q17.423-65.373 17.558-65.674Q17.693-65.974 17.929-66.195Q18.165-66.415 18.469-66.535Q18.774-66.655 19.098-66.655Q19.604-66.655 19.953-66.552Q20.301-66.450 20.301-66.074Q20.301-65.927 20.204-65.826Q20.107-65.725 19.960-65.725Q19.806-65.725 19.707-65.824Q19.608-65.923 19.608-66.074Q19.608-66.262 19.748-66.354Q19.546-66.405 19.105-66.405Q18.750-66.405 18.521-66.209Q18.292-66.012 18.191-65.703Q18.090-65.393 18.090-65.045Q18.090-64.696 18.216-64.390Q18.343-64.084 18.598-63.900Q18.852-63.715 19.208-63.715Q19.430-63.715 19.614-63.799Q19.799-63.883 19.934-64.038Q20.069-64.194 20.127-64.402Q20.141-64.457 20.195-64.457L20.308-64.457Q20.339-64.457 20.361-64.433Q20.383-64.409 20.383-64.375L20.383-64.354Q20.298-64.067 20.110-63.869Q19.922-63.671 19.657-63.568Q19.392-63.466 19.098-63.466Q18.668-63.466 18.280-63.672Q17.892-63.879 17.658-64.242Q17.423-64.604 17.423-65.045M20.930-65.017Q20.930-65.359 21.065-65.658Q21.200-65.957 21.440-66.181Q21.679-66.405 21.997-66.530Q22.315-66.655 22.646-66.655Q23.090-66.655 23.490-66.439Q23.890-66.224 24.124-65.846Q24.359-65.469 24.359-65.017Q24.359-64.676 24.217-64.392Q24.075-64.108 23.830-63.901Q23.586-63.695 23.277-63.580Q22.967-63.466 22.646-63.466Q22.215-63.466 21.814-63.667Q21.412-63.869 21.171-64.221Q20.930-64.573 20.930-65.017M22.646-63.715Q23.248-63.715 23.472-64.093Q23.695-64.471 23.695-65.103Q23.695-65.715 23.461-66.074Q23.227-66.432 22.646-66.432Q21.593-66.432 21.593-65.103Q21.593-64.471 21.819-64.093Q22.045-63.715 22.646-63.715M26.635-63.534L25.001-63.534L25.001-63.814Q25.230-63.814 25.379-63.848Q25.527-63.883 25.527-64.023L25.527-65.872Q25.527-66.142 25.420-66.203Q25.312-66.265 25.001-66.265L25.001-66.545L26.061-66.620L26.061-65.971Q26.232-66.279 26.536-66.450Q26.840-66.620 27.185-66.620Q27.585-66.620 27.862-66.480Q28.139-66.340 28.224-65.992Q28.392-66.285 28.691-66.453Q28.990-66.620 29.335-66.620Q29.841-66.620 30.125-66.397Q30.408-66.173 30.408-65.677L30.408-64.023Q30.408-63.886 30.557-63.850Q30.706-63.814 30.931-63.814L30.931-63.534L29.301-63.534L29.301-63.814Q29.526-63.814 29.677-63.850Q29.827-63.886 29.827-64.023L29.827-65.663Q29.827-65.998 29.708-66.198Q29.588-66.398 29.274-66.398Q29.004-66.398 28.769-66.262Q28.535-66.125 28.397-65.891Q28.258-65.657 28.258-65.383L28.258-64.023Q28.258-63.886 28.407-63.850Q28.556-63.814 28.781-63.814L28.781-63.534L27.151-63.534L27.151-63.814Q27.380-63.814 27.529-63.848Q27.677-63.883 27.677-64.023L27.677-65.663Q27.677-65.998 27.558-66.198Q27.438-66.398 27.124-66.398Q26.854-66.398 26.619-66.262Q26.385-66.125 26.247-65.891Q26.109-65.657 26.109-65.383L26.109-64.023Q26.109-63.886 26.259-63.850Q26.409-63.814 26.635-63.814L26.635-63.534M33.163-62.177L31.533-62.177L31.533-62.457Q31.762-62.457 31.911-62.492Q32.059-62.526 32.059-62.666L32.059-66.012Q32.059-66.183 31.922-66.224Q31.786-66.265 31.533-66.265L31.533-66.545L32.613-66.620L32.613-66.214Q32.835-66.415 33.122-66.518Q33.409-66.620 33.717-66.620Q34.144-66.620 34.508-66.407Q34.872-66.193 35.086-65.829Q35.299-65.465 35.299-65.045Q35.299-64.600 35.060-64.236Q34.821-63.872 34.428-63.669Q34.035-63.466 33.590-63.466Q33.324-63.466 33.076-63.566Q32.828-63.667 32.640-63.848L32.640-62.666Q32.640-62.529 32.789-62.493Q32.938-62.457 33.163-62.457L33.163-62.177M32.640-65.865L32.640-64.255Q32.774-64.002 33.016-63.845Q33.259-63.688 33.536-63.688Q33.864-63.688 34.117-63.889Q34.370-64.091 34.503-64.409Q34.636-64.727 34.636-65.045Q34.636-65.274 34.571-65.503Q34.506-65.732 34.378-65.930Q34.250-66.128 34.055-66.248Q33.860-66.367 33.628-66.367Q33.334-66.367 33.066-66.238Q32.797-66.108 32.640-65.865M35.993-64.262Q35.993-64.594 36.217-64.821Q36.441-65.048 36.785-65.176Q37.128-65.305 37.501-65.357Q37.873-65.410 38.177-65.410L38.177-65.663Q38.177-65.868 38.070-66.048Q37.962-66.227 37.781-66.330Q37.600-66.432 37.391-66.432Q36.984-66.432 36.749-66.340Q36.838-66.303 36.884-66.219Q36.930-66.135 36.930-66.033Q36.930-65.937 36.884-65.858Q36.838-65.780 36.757-65.735Q36.677-65.691 36.588-65.691Q36.438-65.691 36.337-65.788Q36.236-65.886 36.236-66.033Q36.236-66.655 37.391-66.655Q37.603-66.655 37.853-66.591Q38.102-66.528 38.304-66.409Q38.505-66.289 38.632-66.104Q38.758-65.920 38.758-65.677L38.758-64.101Q38.758-63.985 38.820-63.889Q38.881-63.794 38.994-63.794Q39.104-63.794 39.169-63.888Q39.234-63.982 39.234-64.101L39.234-64.549L39.500-64.549L39.500-64.101Q39.500-63.831 39.273-63.666Q39.046-63.500 38.765-63.500Q38.557-63.500 38.420-63.654Q38.283-63.807 38.259-64.023Q38.112-63.756 37.830-63.611Q37.548-63.466 37.224-63.466Q36.947-63.466 36.663-63.541Q36.380-63.616 36.186-63.795Q35.993-63.975 35.993-64.262M36.609-64.262Q36.609-64.088 36.709-63.958Q36.810-63.828 36.966-63.758Q37.121-63.688 37.285-63.688Q37.504-63.688 37.713-63.785Q37.921-63.883 38.049-64.064Q38.177-64.245 38.177-64.471L38.177-65.199Q37.853-65.199 37.487-65.108Q37.121-65.017 36.865-64.805Q36.609-64.594 36.609-64.262M41.667-63.534L39.931-63.534L39.931-63.814Q40.160-63.814 40.308-63.848Q40.457-63.883 40.457-64.023L40.457-65.872Q40.457-66.142 40.349-66.203Q40.242-66.265 39.931-66.265L39.931-66.545L40.960-66.620L40.960-65.913Q41.089-66.221 41.332-66.420Q41.575-66.620 41.893-66.620Q42.111-66.620 42.282-66.496Q42.453-66.371 42.453-66.159Q42.453-66.022 42.354-65.923Q42.255-65.824 42.122-65.824Q41.985-65.824 41.886-65.923Q41.787-66.022 41.787-66.159Q41.787-66.299 41.886-66.398Q41.595-66.398 41.395-66.202Q41.195-66.005 41.103-65.711Q41.011-65.417 41.011-65.137L41.011-64.023Q41.011-63.814 41.667-63.814L41.667-63.534M42.997-65.069Q42.997-65.390 43.121-65.679Q43.246-65.968 43.472-66.191Q43.697-66.415 43.993-66.535Q44.289-66.655 44.607-66.655Q44.935-66.655 45.196-66.555Q45.458-66.456 45.634-66.274Q45.810-66.091 45.904-65.833Q45.998-65.575 45.998-65.243Q45.998-65.151 45.916-65.130L43.660-65.130L43.660-65.069Q43.660-64.481 43.943-64.098Q44.227-63.715 44.795-63.715Q45.116-63.715 45.384-63.908Q45.652-64.101 45.741-64.416Q45.748-64.457 45.823-64.471L45.916-64.471Q45.998-64.447 45.998-64.375Q45.998-64.368 45.991-64.341Q45.878-63.944 45.507-63.705Q45.136-63.466 44.713-63.466Q44.275-63.466 43.875-63.674Q43.475-63.883 43.236-64.250Q42.997-64.617 42.997-65.069M43.667-65.339L45.482-65.339Q45.482-65.616 45.384-65.868Q45.287-66.121 45.088-66.277Q44.890-66.432 44.607-66.432Q44.330-66.432 44.116-66.274Q43.902-66.115 43.785-65.860Q43.667-65.605 43.667-65.339",[1576],[1561,7493],{"fill":1563,"d":7494},"M-8.498-24.923c-8.609 3.119-13.32 6.053-17.702 10.271",[1561,7496],{"d":7497,"style":7498},"m-28.005-12.914 3.52-1.513-1.787-.156-.087-1.79Z","stroke-width:.399988",[1556,7500,7502],{"transform":7501},"translate(-32.788 44.428)",[1561,7503],{"d":7490,"fill":1558,"stroke":1558,"className":7504,"style":1623},[1576],[1561,7506],{"fill":1563,"d":7507},"M-28.415 4.953c-6.456 3.59-9.79 6.497-12.38 9.944",[1561,7509],{"d":7510,"style":7498},"m-42.3 16.9 3.233-2.054-1.787.131-.372-1.754Z",[1561,7512],{"fill":1563,"d":7513},"M-42.642 34.828c-4.275 4.052-6.277 6.962-7.357 9.563",[1561,7515],{"d":7516,"style":7517},"m-50.959 46.705 2.621-2.793-1.699.571-.796-1.606Z","stroke-width:.39997600000000005",[1556,7519,7520,7527,7533,7539,7545,7551,7557,7563,7569],{"fill":3459,"stroke":1563},[1556,7521,7523],{"transform":7522},"translate(51.903 61.723)",[1561,7524],{"d":7525,"fill":3459,"stroke":3459,"className":7526,"style":3507},"M22.828-62.175L17.996-62.175Q17.922-62.186 17.871-62.235Q17.820-62.284 17.820-62.358Q17.820-62.511 17.996-62.542L22.828-62.542Q22.996-62.514 22.996-62.358Q22.996-62.202 22.828-62.175M17.820-64.046Q17.820-64.151 17.933-64.214L22.390-66.374L17.925-68.542Q17.820-68.581 17.820-68.702Q17.820-68.780 17.873-68.833Q17.925-68.886 18.004-68.886Q18.023-68.886 18.086-68.870L22.902-66.542Q22.996-66.487 22.996-66.374Q22.996-66.268 22.894-66.206L18.086-63.878Q18.023-63.862 18.004-63.862Q17.925-63.862 17.873-63.915Q17.820-63.968 17.820-64.046",[1576],[1556,7528,7529],{"transform":7522},[1561,7530],{"d":7531,"fill":3459,"stroke":3459,"className":7532,"style":3507},"M27.555-61.702L27.555-69.366Q27.578-69.511 27.730-69.534L29.523-69.534Q29.691-69.507 29.691-69.350Q29.691-69.194 29.523-69.167L27.922-69.167L27.922-61.702Q27.895-61.534 27.738-61.534Q27.582-61.534 27.555-61.702",[1576],[1556,7534,7535],{"transform":7522},[1561,7536],{"d":7537,"fill":3459,"stroke":3459,"className":7538,"style":3507},"M32.012-63.534L30.180-63.534L30.180-63.831Q30.454-63.831 30.622-63.878Q30.790-63.925 30.790-64.093L30.790-68.253Q30.790-68.468 30.727-68.563Q30.665-68.659 30.546-68.680Q30.426-68.702 30.180-68.702L30.180-68.999L31.403-69.085L31.403-64.093Q31.403-63.925 31.571-63.878Q31.739-63.831 32.012-63.831L32.012-63.534M32.458-65.229Q32.458-65.733 32.714-66.165Q32.969-66.596 33.405-66.848Q33.840-67.100 34.340-67.100Q34.727-67.100 35.069-66.956Q35.411-66.811 35.672-66.550Q35.934-66.288 36.077-65.952Q36.219-65.616 36.219-65.229Q36.219-64.737 35.956-64.327Q35.692-63.917 35.262-63.686Q34.833-63.456 34.340-63.456Q33.848-63.456 33.415-63.688Q32.981-63.921 32.719-64.329Q32.458-64.737 32.458-65.229M34.340-63.733Q34.797-63.733 35.049-63.956Q35.301-64.179 35.389-64.530Q35.477-64.882 35.477-65.327Q35.477-65.757 35.383-66.095Q35.290-66.432 35.036-66.639Q34.782-66.846 34.340-66.846Q33.692-66.846 33.448-66.430Q33.204-66.014 33.204-65.327Q33.204-64.882 33.292-64.530Q33.380-64.179 33.631-63.956Q33.883-63.733 34.340-63.733M36.704-62.925Q36.704-63.206 36.915-63.417Q37.126-63.628 37.411-63.718Q37.255-63.843 37.176-64.032Q37.098-64.221 37.098-64.421Q37.098-64.776 37.329-65.069Q36.962-65.409 36.962-65.878Q36.962-66.229 37.165-66.499Q37.368-66.768 37.688-66.915Q38.008-67.061 38.352-67.061Q38.872-67.061 39.243-66.780Q39.606-67.151 40.153-67.151Q40.333-67.151 40.460-67.024Q40.587-66.897 40.587-66.718Q40.587-66.612 40.508-66.534Q40.430-66.456 40.321-66.456Q40.212-66.456 40.135-66.532Q40.059-66.608 40.059-66.718Q40.059-66.819 40.098-66.870Q40.106-66.878 40.110-66.884Q40.114-66.889 40.114-66.893Q39.739-66.893 39.419-66.639Q39.739-66.300 39.739-65.878Q39.739-65.608 39.622-65.391Q39.505-65.175 39.299-65.016Q39.094-64.858 38.852-64.776Q38.610-64.694 38.352-64.694Q38.133-64.694 37.921-64.753Q37.708-64.811 37.512-64.932Q37.419-64.792 37.419-64.612Q37.419-64.405 37.555-64.253Q37.692-64.100 37.899-64.100L38.594-64.100Q39.083-64.100 39.495-64.016Q39.907-63.932 40.186-63.675Q40.465-63.417 40.465-62.925Q40.465-62.561 40.145-62.329Q39.825-62.096 39.383-61.995Q38.942-61.893 38.587-61.893Q38.231-61.893 37.788-61.995Q37.344-62.096 37.024-62.329Q36.704-62.561 36.704-62.925M37.208-62.925Q37.208-62.729 37.352-62.581Q37.497-62.432 37.710-62.343Q37.922-62.253 38.163-62.206Q38.403-62.159 38.587-62.159Q38.829-62.159 39.159-62.237Q39.489-62.315 39.725-62.489Q39.962-62.663 39.962-62.925Q39.962-63.331 39.551-63.440Q39.141-63.550 38.579-63.550L37.899-63.550Q37.630-63.550 37.419-63.372Q37.208-63.194 37.208-62.925M38.352-64.960Q39.075-64.960 39.075-65.878Q39.075-66.800 38.352-66.800Q37.626-66.800 37.626-65.878Q37.626-64.960 38.352-64.960",[1576],[1556,7540,7541],{"transform":7522},[1561,7542],{"d":7543,"fill":3459,"stroke":3459,"className":7544,"style":3568},"M43.880-61.479L41.270-61.479L41.270-61.664Q41.276-61.687 41.296-61.713L42.447-62.768Q42.787-63.079 42.967-63.265Q43.148-63.451 43.293-63.711Q43.438-63.972 43.438-64.268Q43.438-64.541 43.312-64.756Q43.186-64.971 42.966-65.091Q42.746-65.211 42.471-65.211Q42.295-65.211 42.125-65.154Q41.955-65.097 41.823-64.990Q41.692-64.883 41.612-64.725Q41.700-64.725 41.778-64.681Q41.856-64.637 41.900-64.561Q41.943-64.485 41.943-64.388Q41.943-64.248 41.847-64.151Q41.750-64.054 41.607-64.054Q41.469-64.054 41.369-64.154Q41.270-64.253 41.270-64.388Q41.270-64.713 41.460-64.961Q41.651-65.208 41.954-65.339Q42.257-65.469 42.573-65.469Q42.954-65.469 43.297-65.334Q43.640-65.200 43.854-64.927Q44.068-64.655 44.068-64.268Q44.068-63.993 43.943-63.766Q43.818-63.539 43.638-63.367Q43.458-63.196 43.133-62.956Q42.808-62.715 42.723-62.648L41.967-62.044L42.500-62.044Q42.989-62.044 43.320-62.052Q43.651-62.059 43.666-62.074Q43.725-62.144 43.757-62.279Q43.789-62.414 43.821-62.625L44.068-62.625",[1576],[1556,7546,7547],{"transform":7522},[1561,7548],{"d":7549,"fill":3459,"stroke":3459,"className":7550,"style":3507},"M47.623-61.542Q47.010-61.999 46.608-62.634Q46.205-63.268 46.010-64.014Q45.815-64.761 45.815-65.534Q45.815-66.307 46.010-67.054Q46.205-67.800 46.608-68.434Q47.010-69.069 47.623-69.526Q47.635-69.530 47.643-69.532Q47.651-69.534 47.662-69.534L47.740-69.534Q47.779-69.534 47.805-69.507Q47.830-69.479 47.830-69.436Q47.830-69.386 47.799-69.366Q47.291-68.913 46.969-68.290Q46.647-67.667 46.506-66.971Q46.365-66.276 46.365-65.534Q46.365-64.800 46.504-64.100Q46.643-63.401 46.967-62.776Q47.291-62.151 47.799-61.702Q47.830-61.682 47.830-61.632Q47.830-61.589 47.805-61.561Q47.779-61.534 47.740-61.534L47.662-61.534Q47.654-61.538 47.645-61.540Q47.635-61.542 47.623-61.542",[1576],[1556,7552,7553],{"transform":7522},[1561,7554],{"d":7555,"fill":3459,"stroke":3459,"className":7556,"style":3507},"M49.006-63.710Q49.010-63.729 49.012-63.743Q49.014-63.757 49.014-63.780L49.608-66.151Q49.647-66.307 49.647-66.444Q49.647-66.593 49.594-66.700Q49.541-66.807 49.409-66.807Q49.229-66.807 49.110-66.638Q48.991-66.468 48.934-66.282Q48.877-66.096 48.807-65.807Q48.795-65.733 48.725-65.733L48.623-65.733Q48.588-65.733 48.561-65.768Q48.534-65.804 48.534-65.831L48.534-65.862Q48.620-66.194 48.713-66.436Q48.807-66.679 48.983-66.870Q49.159-67.061 49.424-67.061Q49.623-67.061 49.817-66.979Q50.010-66.897 50.137-66.743Q50.264-66.589 50.264-66.382Q50.514-66.698 50.840-66.880Q51.166-67.061 51.541-67.061Q51.991-67.061 52.274-66.835Q52.557-66.608 52.557-66.175Q52.557-65.835 52.424-65.434Q52.291-65.034 52.038-64.366Q51.944-64.143 51.944-63.960Q51.944-63.710 52.120-63.710Q52.428-63.710 52.649-64.032Q52.870-64.354 52.952-64.710Q52.979-64.780 53.038-64.780L53.143-64.780Q53.182-64.780 53.207-64.747Q53.233-64.714 53.233-64.686Q53.233-64.671 53.221-64.655Q53.108-64.202 52.813-63.829Q52.518-63.456 52.104-63.456Q51.795-63.456 51.577-63.643Q51.358-63.831 51.358-64.136Q51.358-64.304 51.416-64.421Q51.659-65.065 51.801-65.507Q51.944-65.948 51.944-66.276Q51.944-66.507 51.846-66.657Q51.748-66.807 51.526-66.807Q50.702-66.807 50.143-65.733L49.647-63.741Q49.616-63.616 49.510-63.536Q49.405-63.456 49.280-63.456Q49.170-63.456 49.088-63.526Q49.006-63.596 49.006-63.710",[1576],[1556,7558,7559],{"transform":7522},[1561,7560],{"d":7561,"fill":3459,"stroke":3459,"className":7562,"style":3507},"M54.188-63.999Q54.188-64.182 54.324-64.319Q54.461-64.456 54.653-64.456Q54.844-64.456 54.977-64.323Q55.110-64.190 55.110-63.999Q55.110-63.800 54.977-63.667Q54.844-63.534 54.653-63.534Q54.461-63.534 54.324-63.671Q54.188-63.807 54.188-63.999M54.508-65.175L54.188-68.792L54.188-68.831Q54.188-68.952 54.252-69.048Q54.317-69.143 54.426-69.198Q54.535-69.253 54.653-69.253Q54.832-69.253 54.971-69.134Q55.110-69.014 55.110-68.831L55.110-68.792L54.789-65.175Q54.789-65.139 54.758-65.112Q54.727-65.085 54.699-65.085L54.598-65.085Q54.567-65.085 54.537-65.110Q54.508-65.136 54.508-65.175M56.469-61.534L56.387-61.534Q56.352-61.534 56.326-61.563Q56.301-61.593 56.301-61.632Q56.301-61.682 56.332-61.702Q56.719-62.038 57.002-62.487Q57.285-62.936 57.451-63.436Q57.617-63.936 57.692-64.454Q57.766-64.971 57.766-65.534Q57.766-66.104 57.692-66.620Q57.617-67.136 57.451-67.632Q57.285-68.128 57.006-68.575Q56.727-69.022 56.332-69.366Q56.301-69.386 56.301-69.436Q56.301-69.475 56.326-69.505Q56.352-69.534 56.387-69.534L56.469-69.534Q56.481-69.534 56.490-69.532Q56.500-69.530 56.508-69.526Q57.121-69.069 57.524-68.434Q57.926-67.800 58.121-67.054Q58.317-66.307 58.317-65.534Q58.317-64.761 58.121-64.014Q57.926-63.268 57.524-62.634Q57.121-61.999 56.508-61.542Q56.496-61.542 56.489-61.540Q56.481-61.538 56.469-61.534",[1576],[1556,7564,7565],{"transform":7522},[1561,7566],{"d":7567,"fill":3459,"stroke":3459,"className":7568,"style":3507},"M61.065-61.702L61.065-69.167L59.463-69.167Q59.295-69.194 59.295-69.350Q59.295-69.507 59.463-69.534L61.264-69.534Q61.408-69.511 61.432-69.366L61.432-61.702Q61.420-61.632 61.371-61.583Q61.322-61.534 61.248-61.534Q61.092-61.534 61.065-61.702",[1576],[1556,7570,7571],{"transform":7522},[1561,7572],{"d":7573,"fill":3459,"stroke":3459,"className":7574,"style":3507},"M66.028-63.542L66.028-64.764Q66.028-64.792 66.059-64.823Q66.091-64.854 66.114-64.854L66.220-64.854Q66.290-64.854 66.306-64.792Q66.368-64.471 66.507-64.231Q66.645-63.991 66.878-63.850Q67.110-63.710 67.419-63.710Q67.657-63.710 67.866-63.770Q68.075-63.831 68.212-63.979Q68.349-64.128 68.349-64.374Q68.349-64.628 68.138-64.794Q67.927-64.960 67.657-65.014L67.036-65.128Q66.630-65.206 66.329-65.462Q66.028-65.718 66.028-66.093Q66.028-66.460 66.229-66.682Q66.431-66.905 66.755-67.003Q67.079-67.100 67.419-67.100Q67.884-67.100 68.181-66.893L68.403-67.077Q68.427-67.100 68.458-67.100L68.509-67.100Q68.540-67.100 68.567-67.073Q68.595-67.046 68.595-67.014L68.595-66.030Q68.595-65.999 68.569-65.970Q68.544-65.940 68.509-65.940L68.403-65.940Q68.368-65.940 68.341-65.968Q68.313-65.995 68.313-66.030Q68.313-66.429 68.061-66.649Q67.809-66.870 67.411-66.870Q67.056-66.870 66.772-66.747Q66.489-66.624 66.489-66.319Q66.489-66.100 66.690-65.968Q66.892-65.835 67.138-65.792L67.763-65.679Q68.192-65.589 68.501-65.292Q68.809-64.995 68.809-64.581Q68.809-64.011 68.411-63.733Q68.013-63.456 67.419-63.456Q66.868-63.456 66.517-63.792L66.220-63.479Q66.196-63.456 66.161-63.456L66.114-63.456Q66.091-63.456 66.059-63.487Q66.028-63.518 66.028-63.542M69.962-64.495L69.962-66.686L69.259-66.686L69.259-66.940Q69.614-66.940 69.856-67.173Q70.099-67.405 70.210-67.753Q70.321-68.100 70.321-68.456L70.602-68.456L70.602-66.983L71.778-66.983L71.778-66.686L70.602-66.686L70.602-64.511Q70.602-64.190 70.722-63.962Q70.841-63.733 71.122-63.733Q71.302-63.733 71.419-63.856Q71.536-63.979 71.589-64.159Q71.642-64.339 71.642-64.511L71.642-64.983L71.923-64.983L71.923-64.495Q71.923-64.241 71.817-64.001Q71.712-63.761 71.515-63.608Q71.317-63.456 71.059-63.456Q70.743-63.456 70.491-63.579Q70.239-63.702 70.101-63.936Q69.962-64.171 69.962-64.495M72.642-65.288Q72.642-65.768 72.874-66.184Q73.106-66.600 73.517-66.850Q73.927-67.100 74.403-67.100Q75.134-67.100 75.532-66.659Q75.931-66.218 75.931-65.487Q75.931-65.382 75.837-65.358L73.388-65.358L73.388-65.288Q73.388-64.878 73.509-64.522Q73.630-64.167 73.901-63.950Q74.173-63.733 74.602-63.733Q74.966-63.733 75.263-63.962Q75.559-64.190 75.661-64.542Q75.669-64.589 75.755-64.604L75.837-64.604Q75.931-64.577 75.931-64.495Q75.931-64.487 75.923-64.456Q75.860-64.229 75.722-64.046Q75.583-63.862 75.392-63.729Q75.200-63.596 74.981-63.526Q74.763-63.456 74.524-63.456Q74.153-63.456 73.815-63.593Q73.477-63.729 73.210-63.981Q72.942-64.233 72.792-64.573Q72.642-64.913 72.642-65.288M73.395-65.596L75.356-65.596Q75.356-65.901 75.255-66.192Q75.153-66.483 74.936-66.665Q74.720-66.846 74.403-66.846Q74.102-66.846 73.872-66.659Q73.642-66.471 73.518-66.180Q73.395-65.889 73.395-65.596M78.302-61.983L76.446-61.983L76.446-62.276Q76.716-62.276 76.884-62.321Q77.052-62.366 77.052-62.542L77.052-66.366Q77.052-66.573 76.895-66.626Q76.739-66.679 76.446-66.679L76.446-66.975L77.669-67.061L77.669-66.596Q77.899-66.819 78.214-66.940Q78.528-67.061 78.868-67.061Q79.341-67.061 79.745-66.815Q80.149-66.569 80.382-66.153Q80.614-65.737 80.614-65.261Q80.614-64.886 80.466-64.557Q80.317-64.229 80.048-63.977Q79.778-63.725 79.434-63.591Q79.091-63.456 78.731-63.456Q78.442-63.456 78.171-63.577Q77.899-63.698 77.692-63.909L77.692-62.542Q77.692-62.366 77.860-62.321Q78.028-62.276 78.302-62.276L78.302-61.983M77.692-66.198L77.692-64.358Q77.845-64.069 78.106-63.889Q78.368-63.710 78.677-63.710Q78.962-63.710 79.184-63.848Q79.407-63.987 79.559-64.218Q79.712-64.448 79.790-64.720Q79.868-64.991 79.868-65.261Q79.868-65.593 79.743-65.950Q79.618-66.307 79.370-66.544Q79.122-66.780 78.774-66.780Q78.450-66.780 78.155-66.624Q77.860-66.468 77.692-66.198M81.181-63.542L81.181-64.764Q81.181-64.792 81.212-64.823Q81.243-64.854 81.267-64.854L81.372-64.854Q81.442-64.854 81.458-64.792Q81.520-64.471 81.659-64.231Q81.798-63.991 82.030-63.850Q82.263-63.710 82.571-63.710Q82.809-63.710 83.018-63.770Q83.227-63.831 83.364-63.979Q83.501-64.128 83.501-64.374Q83.501-64.628 83.290-64.794Q83.079-64.960 82.809-65.014L82.188-65.128Q81.782-65.206 81.481-65.462Q81.181-65.718 81.181-66.093Q81.181-66.460 81.382-66.682Q81.583-66.905 81.907-67.003Q82.231-67.100 82.571-67.100Q83.036-67.100 83.333-66.893L83.556-67.077Q83.579-67.100 83.610-67.100L83.661-67.100Q83.692-67.100 83.720-67.073Q83.747-67.046 83.747-67.014L83.747-66.030Q83.747-65.999 83.722-65.970Q83.696-65.940 83.661-65.940L83.556-65.940Q83.520-65.940 83.493-65.968Q83.466-65.995 83.466-66.030Q83.466-66.429 83.214-66.649Q82.962-66.870 82.563-66.870Q82.208-66.870 81.925-66.747Q81.642-66.624 81.642-66.319Q81.642-66.100 81.843-65.968Q82.044-65.835 82.290-65.792L82.915-65.679Q83.345-65.589 83.653-65.292Q83.962-64.995 83.962-64.581Q83.962-64.011 83.563-63.733Q83.165-63.456 82.571-63.456Q82.020-63.456 81.669-63.792L81.372-63.479Q81.349-63.456 81.313-63.456L81.267-63.456Q81.243-63.456 81.212-63.487Q81.181-63.518 81.181-63.542",[1576],[1870,7576,7578,7579,7597,7598,7677],{"className":7577},[1873],"One comparison, one bit. Each yes\u002Fno comparison at best halves the set of still-possible orderings; starting from ",[397,7580,7582],{"className":7581},[400],[397,7583,7585],{"className":7584,"ariaHidden":405},[404],[397,7586,7588,7591,7594],{"className":7587},[409],[397,7589],{"className":7590,"style":2829},[413],[397,7592,429],{"className":7593},[418,428],[397,7595,2836],{"className":7596},[454]," candidates, narrowing to a single one takes ",[397,7599,7601],{"className":7600},[400],[397,7602,7604,7616],{"className":7603,"ariaHidden":405},[404],[397,7605,7607,7610,7613],{"className":7606},[409],[397,7608],{"className":7609,"style":738},[413],[397,7611,742],{"className":7612},[651],[397,7614],{"className":7615,"style":647},[433],[397,7617,7619,7622,7625,7668,7671,7674],{"className":7618},[409],[397,7620],{"className":7621,"style":414},[413],[397,7623,7245],{"className":7624},[423],[397,7626,7628,7634],{"className":7627},[438],[397,7629,7631],{"className":7630},[438],[397,7632,444],{"className":7633,"style":443},[418,442],[397,7635,7637],{"className":7636},[596],[397,7638,7640,7660],{"className":7639},[600,601],[397,7641,7643,7657],{"className":7642},[605],[397,7644,7646],{"className":7645,"style":3120},[609],[397,7647,7648,7651],{"style":3123},[397,7649],{"className":7650,"style":618},[617],[397,7652,7654],{"className":7653},[622,623,624,625],[397,7655,824],{"className":7656},[418,625],[397,7658,634],{"className":7659},[633],[397,7661,7663],{"className":7662},[605],[397,7664,7666],{"className":7665,"style":3142},[609],[397,7667],{},[397,7669,424],{"className":7670},[423],[397,7672,429],{"className":7673},[418,428],[397,7675,7298],{"className":7676},[454]," comparisons.",[888,7679,7680],{},[891,7681,7682,7683,7686,7687,7690,7691,7721,7722,7730,7731,851],{},"It bounds ",[495,7684,7685],{},"only comparison sorts",". The proof leans entirely on the\nrestriction that information arrives one comparison at a time. An algorithm\nthat learns about elements ",[458,7688,7689],{},"another"," way, by reading their digits or using\nthem as array indices, sits outside the model, and the ",[397,7692,7694],{"className":7693},[400],[397,7695,7697],{"className":7696,"ariaHidden":405},[404],[397,7698,7700,7703,7706,7709,7715,7718],{"className":7699},[409],[397,7701],{"className":7702,"style":474},[413],[397,7704,429],{"className":7705},[418,428],[397,7707],{"className":7708,"style":434},[433],[397,7710,7712],{"className":7711},[438],[397,7713,444],{"className":7714,"style":443},[418,442],[397,7716],{"className":7717,"style":434},[433],[397,7719,429],{"className":7720},[418,428]," floor simply\ndoes not apply to it.",[545,7723,7724],{},[384,7725,7729],{"href":7726,"ariaDescribedBy":7727,"dataFootnoteRef":376,"id":7728},"#user-content-fn-erickson-model",[551],"user-content-fnref-erickson-model","5"," The next lesson exploits exactly this\nloophole to sort in\n",[384,7732,7733],{"href":67},[495,7734,7735],{},"linear time",[560,7737,7739],{"id":7738},"takeaways","Takeaways",[888,7741,7742,7747,7755,7944,8195],{},[891,7743,566,7744,7746],{},[495,7745,501],{}," learns only the outcomes of element comparisons; this\nrestriction is precisely what makes a lower bound provable.",[891,7748,7749,7750,7752,7753,851],{},"Any comparison sort is a ",[495,7751,878],{},": internal nodes are comparisons,\nleaves are output orderings, and worst-case comparisons equal the tree's\n",[495,7754,2884],{},[891,7756,7757,7758,7791,7792,7807,7808,7861,7862,851],{},"Correctness forces ",[495,7759,7760,7790],{},[397,7761,7763],{"className":7762},[400],[397,7764,7766,7778],{"className":7765,"ariaHidden":405},[404],[397,7767,7769,7772,7775],{"className":7768},[409],[397,7770],{"className":7771,"style":738},[413],[397,7773,742],{"className":7774},[651],[397,7776],{"className":7777,"style":647},[433],[397,7779,7781,7784,7787],{"className":7780},[409],[397,7782],{"className":7783,"style":2829},[413],[397,7785,429],{"className":7786},[418,428],[397,7788,2836],{"className":7789},[454]," leaves","; a height-",[397,7793,7795],{"className":7794},[400],[397,7796,7798],{"className":7797,"ariaHidden":405},[404],[397,7799,7801,7804],{"className":7800},[409],[397,7802],{"className":7803,"style":2829},[413],[397,7805,2901],{"className":7806},[418,428]," binary tree has ",[397,7809,7811],{"className":7810},[400],[397,7812,7814,7826],{"className":7813,"ariaHidden":405},[404],[397,7815,7817,7820,7823],{"className":7816},[409],[397,7818],{"className":7819,"style":738},[413],[397,7821,652],{"className":7822},[651],[397,7824],{"className":7825,"style":647},[433],[397,7827,7829,7832],{"className":7828},[409],[397,7830],{"className":7831,"style":2934},[413],[397,7833,7835,7838],{"className":7834},[418],[397,7836,824],{"className":7837},[418],[397,7839,7841],{"className":7840},[596],[397,7842,7844],{"className":7843},[600],[397,7845,7847],{"className":7846},[605],[397,7848,7850],{"className":7849,"style":2934},[609],[397,7851,7852,7855],{"style":2955},[397,7853],{"className":7854,"style":618},[617],[397,7856,7858],{"className":7857},[622,623,624,625],[397,7859,2901],{"className":7860},[418,428,625],"\nleaves, so ",[397,7863,7865],{"className":7864},[400],[397,7866,7868,7886],{"className":7867,"ariaHidden":405},[404],[397,7869,7871,7874,7877,7880,7883],{"className":7870},[409],[397,7872],{"className":7873,"style":2982},[413],[397,7875,2901],{"className":7876},[418,428],[397,7878],{"className":7879,"style":647},[433],[397,7881,742],{"className":7882},[651],[397,7884],{"className":7885,"style":647},[433],[397,7887,7889,7892,7935,7938,7941],{"className":7888},[409],[397,7890],{"className":7891,"style":414},[413],[397,7893,7895,7901],{"className":7894},[438],[397,7896,7898],{"className":7897},[438],[397,7899,444],{"className":7900,"style":443},[418,442],[397,7902,7904],{"className":7903},[596],[397,7905,7907,7927],{"className":7906},[600,601],[397,7908,7910,7924],{"className":7909},[605],[397,7911,7913],{"className":7912,"style":3120},[609],[397,7914,7915,7918],{"style":3123},[397,7916],{"className":7917,"style":618},[617],[397,7919,7921],{"className":7920},[622,623,624,625],[397,7922,824],{"className":7923},[418,625],[397,7925,634],{"className":7926},[633],[397,7928,7930],{"className":7929},[605],[397,7931,7933],{"className":7932,"style":3142},[609],[397,7934],{},[397,7936,424],{"className":7937},[423],[397,7939,429],{"className":7940},[418,428],[397,7942,3237],{"className":7943},[454],[891,7945,7946,7947,8150,8151,8194],{},"By Stirling, ",[397,7948,7950],{"className":7949},[400],[397,7951,7953,8020,8090,8117],{"className":7952,"ariaHidden":405},[404],[397,7954,7956,7959,8002,8005,8008,8011,8014,8017],{"className":7955},[409],[397,7957],{"className":7958,"style":414},[413],[397,7960,7962,7968],{"className":7961},[438],[397,7963,7965],{"className":7964},[438],[397,7966,444],{"className":7967,"style":443},[418,442],[397,7969,7971],{"className":7970},[596],[397,7972,7974,7994],{"className":7973},[600,601],[397,7975,7977,7991],{"className":7976},[605],[397,7978,7980],{"className":7979,"style":3120},[609],[397,7981,7982,7985],{"style":3123},[397,7983],{"className":7984,"style":618},[617],[397,7986,7988],{"className":7987},[622,623,624,625],[397,7989,824],{"className":7990},[418,625],[397,7992,634],{"className":7993},[633],[397,7995,7997],{"className":7996},[605],[397,7998,8000],{"className":7999,"style":3142},[609],[397,8001],{},[397,8003,424],{"className":8004},[423],[397,8006,429],{"className":8007},[418,428],[397,8009,3237],{"className":8010},[454],[397,8012],{"className":8013,"style":647},[433],[397,8015,775],{"className":8016},[651],[397,8018],{"className":8019,"style":647},[433],[397,8021,8023,8026,8029,8032,8075,8078,8081,8084,8087],{"className":8022},[409],[397,8024],{"className":8025,"style":3098},[413],[397,8027,429],{"className":8028},[418,428],[397,8030],{"className":8031,"style":434},[433],[397,8033,8035,8041],{"className":8034},[438],[397,8036,8038],{"className":8037},[438],[397,8039,444],{"className":8040,"style":443},[418,442],[397,8042,8044],{"className":8043},[596],[397,8045,8047,8067],{"className":8046},[600,601],[397,8048,8050,8064],{"className":8049},[605],[397,8051,8053],{"className":8052,"style":3120},[609],[397,8054,8055,8058],{"style":3123},[397,8056],{"className":8057,"style":618},[617],[397,8059,8061],{"className":8060},[622,623,624,625],[397,8062,824],{"className":8063},[418,625],[397,8065,634],{"className":8066},[633],[397,8068,8070],{"className":8069},[605],[397,8071,8073],{"className":8072,"style":3142},[609],[397,8074],{},[397,8076],{"className":8077,"style":434},[433],[397,8079,429],{"className":8080},[418,428],[397,8082],{"className":8083,"style":4294},[433],[397,8085,4557],{"className":8086},[4298],[397,8088],{"className":8089,"style":4294},[433],[397,8091,8093,8096,8099,8102,8105,8108,8111,8114],{"className":8092},[409],[397,8094],{"className":8095,"style":414},[413],[397,8097,419],{"className":8098},[418],[397,8100,424],{"className":8101},[423],[397,8103,429],{"className":8104},[418,428],[397,8106,455],{"className":8107},[454],[397,8109],{"className":8110,"style":647},[433],[397,8112,775],{"className":8113},[651],[397,8115],{"className":8116,"style":647},[433],[397,8118,8120,8123,8126,8129,8132,8135,8141,8144,8147],{"className":8119},[409],[397,8121],{"className":8122,"style":414},[413],[397,8124,518],{"className":8125},[418],[397,8127,424],{"className":8128},[423],[397,8130,429],{"className":8131},[418,428],[397,8133],{"className":8134,"style":434},[433],[397,8136,8138],{"className":8137},[438],[397,8139,444],{"className":8140,"style":443},[418,442],[397,8142],{"className":8143,"style":434},[433],[397,8145,429],{"className":8146},[418,428],[397,8148,455],{"className":8149},[454],", so\n",[495,8152,8153,8154,8193],{},"every comparison sort needs ",[397,8155,8157],{"className":8156},[400],[397,8158,8160],{"className":8159,"ariaHidden":405},[404],[397,8161,8163,8166,8169,8172,8175,8178,8184,8187,8190],{"className":8162},[409],[397,8164],{"className":8165,"style":414},[413],[397,8167,518],{"className":8168},[418],[397,8170,424],{"className":8171},[423],[397,8173,429],{"className":8174},[418,428],[397,8176],{"className":8177,"style":434},[433],[397,8179,8181],{"className":8180},[438],[397,8182,444],{"className":8183,"style":443},[418,442],[397,8185],{"className":8186,"style":434},[433],[397,8188,429],{"className":8189},[418,428],[397,8191,455],{"className":8192},[454]," comparisons"," in the worst\ncase.",[891,8196,8197,8198,8200,8201,8204],{},"Mergesort and heapsort hit this bound and are thus ",[495,8199,7197],{},";\nbeating it requires stepping ",[458,8202,8203],{},"outside"," the comparison model.",[8206,8207,8210,8215],"section",{"className":8208,"dataFootnotes":376},[8209],"footnotes",[560,8211,8214],{"className":8212,"id":551},[8213],"sr-only","Footnotes",[8216,8217,8218,8272,8287,8317,8435],"ol",{},[891,8219,8221,8224,8225,8264,8265],{"id":8220},"user-content-fn-clrs-lb",[495,8222,8223],{},"CLRS",", §8.1 — Lower Bounds for Sorting — any comparison sort requires ",[397,8226,8228],{"className":8227},[400],[397,8229,8231],{"className":8230,"ariaHidden":405},[404],[397,8232,8234,8237,8240,8243,8246,8249,8255,8258,8261],{"className":8233},[409],[397,8235],{"className":8236,"style":414},[413],[397,8238,518],{"className":8239},[418],[397,8241,424],{"className":8242},[423],[397,8244,429],{"className":8245},[418,428],[397,8247],{"className":8248,"style":434},[433],[397,8250,8252],{"className":8251},[438],[397,8253,444],{"className":8254,"style":443},[418,442],[397,8256],{"className":8257,"style":434},[433],[397,8259,429],{"className":8260},[418,428],[397,8262,455],{"className":8263},[454]," comparisons in the worst case. ",[384,8266,8271],{"href":8267,"ariaLabel":8268,"className":8269,"dataFootnoteBackref":376},"#user-content-fnref-clrs-lb","Back to reference 1",[8270],"data-footnote-backref","↩",[891,8273,8275,725,8278,8281,8282],{"id":8274},"user-content-fn-erickson-dt",[495,8276,8277],{},"Erickson",[458,8279,8280],{},"Algorithms",", Ch. — Lower Bounds via Decision Trees — modeling a comparison sort as a binary decision tree whose internal nodes are comparisons and leaves are output orderings. ",[384,8283,8271],{"href":8284,"ariaLabel":8285,"className":8286,"dataFootnoteBackref":376},"#user-content-fnref-erickson-dt","Back to reference 2",[8270],[891,8288,8290,8292,8293,8311,8312],{"id":8289},"user-content-fn-clrs-leaves",[495,8291,8223],{},", §8.1 — Lower Bounds for Sorting — a correct sort's decision tree has at least ",[397,8294,8296],{"className":8295},[400],[397,8297,8299],{"className":8298,"ariaHidden":405},[404],[397,8300,8302,8305,8308],{"className":8301},[409],[397,8303],{"className":8304,"style":2829},[413],[397,8306,429],{"className":8307},[418,428],[397,8309,2836],{"className":8310},[454]," reachable leaves, one per permutation. ",[384,8313,8271],{"href":8314,"ariaLabel":8315,"className":8316,"dataFootnoteBackref":376},"#user-content-fnref-clrs-leaves","Back to reference 3",[8270],[891,8318,8320,8322,8323,8429,8430],{"id":8319},"user-content-fn-clrs-stirling",[495,8321,8223],{},", §8.1 — Lower Bounds for Sorting — via Stirling's approximation, ",[397,8324,8326],{"className":8325},[400],[397,8327,8329,8396],{"className":8328,"ariaHidden":405},[404],[397,8330,8332,8335,8378,8381,8384,8387,8390,8393],{"className":8331},[409],[397,8333],{"className":8334,"style":414},[413],[397,8336,8338,8344],{"className":8337},[438],[397,8339,8341],{"className":8340},[438],[397,8342,444],{"className":8343,"style":443},[418,442],[397,8345,8347],{"className":8346},[596],[397,8348,8350,8370],{"className":8349},[600,601],[397,8351,8353,8367],{"className":8352},[605],[397,8354,8356],{"className":8355,"style":3120},[609],[397,8357,8358,8361],{"style":3123},[397,8359],{"className":8360,"style":618},[617],[397,8362,8364],{"className":8363},[622,623,624,625],[397,8365,824],{"className":8366},[418,625],[397,8368,634],{"className":8369},[633],[397,8371,8373],{"className":8372},[605],[397,8374,8376],{"className":8375,"style":3142},[609],[397,8377],{},[397,8379,424],{"className":8380},[423],[397,8382,429],{"className":8383},[418,428],[397,8385,3237],{"className":8386},[454],[397,8388],{"className":8389,"style":647},[433],[397,8391,775],{"className":8392},[651],[397,8394],{"className":8395,"style":647},[433],[397,8397,8399,8402,8405,8408,8411,8414,8420,8423,8426],{"className":8398},[409],[397,8400],{"className":8401,"style":414},[413],[397,8403,518],{"className":8404},[418],[397,8406,424],{"className":8407},[423],[397,8409,429],{"className":8410},[418,428],[397,8412],{"className":8413,"style":434},[433],[397,8415,8417],{"className":8416},[438],[397,8418,444],{"className":8419,"style":443},[418,442],[397,8421],{"className":8422,"style":434},[433],[397,8424,429],{"className":8425},[418,428],[397,8427,455],{"className":8428},[454],", bounding the tree height below. ",[384,8431,8271],{"href":8432,"ariaLabel":8433,"className":8434,"dataFootnoteBackref":376},"#user-content-fnref-clrs-stirling","Back to reference 4",[8270],[891,8436,8438,725,8440,8442,8443],{"id":8437},"user-content-fn-erickson-model",[495,8439,8277],{},[458,8441,8280],{},", Ch. — Lower Bounds via Decision Trees — the bound holds only for comparison sorts; algorithms reading digits or indices fall outside the model. ",[384,8444,8271],{"href":8445,"ariaLabel":8446,"className":8447,"dataFootnoteBackref":376},"#user-content-fnref-erickson-model","Back to reference 5",[8270],{"title":376,"searchDepth":18,"depth":18,"links":8449},[8450,8451,8452,8453,8455,8456,8457],{"id":562,"depth":18,"text":563},{"id":854,"depth":18,"text":855},{"id":2806,"depth":18,"text":2807},{"id":3864,"depth":18,"text":8454},"log2​(n!) is Ω(nlogn)",{"id":7050,"depth":18,"text":7051},{"id":7738,"depth":18,"text":7739},{"id":551,"depth":18,"text":8214},"Mergesort,\nheapsort, and (in expectation)\nquicksort all run in\nΘ(nlogn). Insertion sort and the rest do worse. None does better. It\nis natural to ask whether some cleverer algorithm could break the\nnlogn barrier. The striking answer is no, not if it learns about\nthe input only by comparing elements. This lesson proves a matching lower bound:\nany comparison sort needs Ω(nlogn) comparisons in the worst case.1\nThis is one of the rare cases where we can prove a problem hard, pinning its\ncomplexity from both sides.","md",{"moduleNumber":24,"lessonNumber":18,"order":8461},302,true,[8464,8468,8472],{"title":8465,"slug":8466,"difficulty":8467},"Guess Number Higher or Lower","guess-number-higher-or-lower","Easy",{"title":8469,"slug":8470,"difficulty":8471},"Find the Duplicate Number","find-the-duplicate-number","Medium",{"title":8473,"slug":8474,"difficulty":8475},"Maximum Gap","maximum-gap","Hard","---\ntitle: Lower Bounds for Comparison Sorting\nmodule: Sorting & Order Statistics\nmoduleNumber: 3\nlessonNumber: 2\norder: 302\nsummary: >-\n  Every sort we have seen runs in $\\Omega(n\\log n)$, and that is no accident.\n  Modeling a sort as a decision tree of comparisons, we show any such tree must\n  have $n!$ leaves, forcing height $\\ge \\log_2(n!) = \\Omega(n\\log n)$ — a\n  worst-case bound no comparison sort can ever beat.\ntopics: [Comparison Sorting]\nsources:\n  - book: CLRS\n    ref: \"§8.1 — Lower Bounds for Sorting\"\n  - book: Erickson\n    ref: \"Ch. — Lower Bounds via Decision Trees\"\npractice:\n  - title: 'Guess Number Higher or Lower'\n    slug: guess-number-higher-or-lower\n    difficulty: Easy\n  - title: 'Find the Duplicate Number'\n    slug: find-the-duplicate-number\n    difficulty: Medium\n  - title: 'Maximum Gap'\n    slug: maximum-gap\n    difficulty: Hard\n---\n\n[Mergesort](\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort),\n[heapsort](\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort), and (in expectation)\n[quicksort](\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort) all run in\n$\\Theta(n\\log n)$. Insertion sort and the rest do worse. None does _better_. It\nis natural to ask whether some cleverer algorithm could break the\n$n\\log n$ barrier. The striking answer is **no**, not if it learns about\nthe input only by comparing elements. This lesson proves a matching lower bound:\nany **comparison sort** needs $\\Omega(n\\log n)$ comparisons in the worst case.[^clrs-lb]\nThis is one of the rare cases where we can prove a problem _hard_, pinning its\ncomplexity from both sides.\n\n## The comparison model\n\nA **comparison sort** determines the sorted order using only comparisons between\npairs of input elements. The only questions it may ask are of the form \"is\n$a_i \\le a_j$?\" (or $\u003C$, $\\ge$, $>$, $=$). It never inspects the elements'\n_values_; it cannot read a digit, hash a key, or use one as an array index. All\nof insertion, merge, quick, and heap sort live in this model, and so does almost\nevery general-purpose sort.\n\nThis restriction is exactly what makes a lower bound possible. Because the only\ninformation the algorithm extracts is the _outcomes of comparisons_, we can\naccount for everything it could possibly learn by counting those outcomes. The\nelements' actual values are irrelevant beyond their relative order, so we may\nassume without loss of generality that the input is some permutation of the\ndistinct values $\\set{1, 2, \\dots, n}$.\n\n## A sort is a decision tree\n\nFix the number of elements $n$ and fix a comparison sort. We can model its entire\nbehavior as a **decision tree**: a binary tree whose internal nodes are\ncomparisons and whose leaves are answers.[^erickson-dt]\n\n- Each **internal node** is labeled $i : j$, meaning \"compare $a_i$ with $a_j$.\"\n- Its two **outgoing edges** are the two outcomes, $a_i \\le a_j$ and\n  $a_i > a_j$. The algorithm follows the edge matching the actual data.\n- Each **leaf** is labeled with a permutation\n  $\\vector{\\pi(1), \\pi(2), \\dots, \\pi(n)}$, the sorted order the algorithm\n  declares once it reaches that leaf.\n\nRunning the algorithm on a particular input traces a single root-to-leaf path:\nat each node the data picks the branch, and the leaf reached announces the\nordering. The structure of the tree depends only on $n$, not on the input; the\ninput merely chooses _which path_ through the fixed tree gets walked.\n\nHere is the decision tree for sorting three elements $\\vector{a_1, a_2, a_3}$;\neach leaf names the order from smallest to largest.\n\n$$\n% caption: Decision tree for comparison sorting three elements, with permutation leaves.\n\\begin{tikzpicture}[level distance=13mm,\n  level 1\u002F.style={sibling distance=46mm},\n  level 2\u002F.style={sibling distance=23mm},\n  level 3\u002F.style={sibling distance=15mm},\n  inner\u002F.style={draw, circle, minimum size=8mm, font=\\small},\n  leaf\u002F.style={draw, rounded corners, minimum size=6mm, font=\\scriptsize},\n  every edge\u002F.append style={font=\\scriptsize},\n  el\u002F.style={fill=white, inner sep=1.5pt}]\n  \\node[inner] {$1\\!:\\!2$}\n    child {node[inner] {$2\\!:\\!3$}\n      child {node[leaf] {$123$}\n        edge from parent node[left,el] {$\\le$}}\n      child {node[inner] {$1\\!:\\!3$}\n        child {node[leaf] {$132$} edge from parent node[left,el] {$\\le$}}\n        child {node[leaf] {$312$} edge from parent node[right,el] {$>$}}\n        edge from parent node[right,el] {$>$}}\n      edge from parent node[left,el] {$\\le$}}\n    child {node[inner] {$2\\!:\\!3$}\n      child {node[inner] {$1\\!:\\!3$}\n        child {node[leaf] {$213$} edge from parent node[left,el] {$\\le$}}\n        child {node[leaf] {$231$} edge from parent node[right,el] {$>$}}\n        edge from parent node[left,el] {$\\le$}}\n      child {node[leaf] {$321$}\n        edge from parent node[right,el] {$>$}}\n      edge from parent node[right,el] {$>$}};\n\\end{tikzpicture}\n$$\n\nTrace the input $\\vector{a_1,a_2,a_3} = \\vector{6, 2, 9}$. At the root we ask\n$a_1 : a_2$, that is $6 : 2$; since $6 > 2$ we branch right. Next $a_2 : a_3$,\ni.e. $2 : 9$, so $\\le$ sends us left. Finally $a_1 : a_3$, i.e. $6 : 9$, again\n$\\le$, landing at the leaf $213$, meaning $a_2 \\le a_1 \\le a_3$, which reads off\nas $2 \\le 6 \\le 9$. Correct.\n\n## Counting leaves and bounding height\n\nTwo observations turn this picture into a theorem.\n\n**Every permutation needs its own leaf.** A correct sort must, for each of the\n$n!$ possible input orderings, output a _different_ permutation to put it in\norder. If two distinct input orderings led to the same leaf, that leaf's single\nfixed output would be wrong for at least one of them. Hence the tree must have\n**at least $n!$ reachable leaves**, one per permutation it might be asked to\nproduce.[^clrs-leaves]\n\n**Height equals worst-case comparisons.** The number of comparisons the\nalgorithm makes on a given input is the length of the root-to-leaf path it\nwalks. The _worst-case_ number of comparisons is therefore the **height** $h$ of\nthe tree — the longest such path.\n\nNow we connect the two. A binary tree of height $h$ has at most $2^h$ leaves (the\ncount at most doubles each level). Combining with the leaf count above,\n\n$$\nn! \\;\\le\\; (\\text{number of leaves}) \\;\\le\\; 2^{h},\n$$\n\nand taking $\\log_2$ of both ends gives the key inequality\n\n$$\nh \\;\\ge\\; \\log_2(n!).\n$$\n\nSo _every_ comparison sort, whatever its strategy, must make at least\n$\\log_2(n!)$ comparisons on its worst input. It remains to see how large that is.\n\n$$\n% caption: The squeeze. A height-$h$ binary tree holds at most $2^h$ leaves (capacity,\n%          doubling per level), while correctness demands at least $n!$ leaves (the\n%          floor). Forcing $2^h \\ge n!$ gives $h \\ge \\log_2(n!)$.\n\\begin{tikzpicture}[\n  nd\u002F.style={circle, draw, minimum size=5mm, inner sep=0pt},\n  lf\u002F.style={draw, fill=acc!16, minimum size=4mm, inner sep=0pt}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[nd] (a) at (0,0) {};\n  \\node[nd] (b1) at (-1.6,-1.0) {};\n  \\node[nd] (b2) at (1.6,-1.0) {};\n  \\node[nd] (c1) at (-2.4,-2.0) {};\n  \\node[nd] (c2) at (-0.8,-2.0) {};\n  \\node[nd] (c3) at (0.8,-2.0) {};\n  \\node[nd] (c4) at (2.4,-2.0) {};\n  \\draw (a)--(b1); \\draw (a)--(b2);\n  \\draw (b1)--(c1); \\draw (b1)--(c2); \\draw (b2)--(c3); \\draw (b2)--(c4);\n  \\foreach \\cx in {-2.4,-0.8,0.8,2.4} {\n    \\node[lf] at (\\cx-0.3,-3.0) {};\n    \\node[lf] at (\\cx+0.3,-3.0) {};\n    \\draw (\\cx,-2.0)--(\\cx-0.3,-3.0);\n    \\draw (\\cx,-2.0)--(\\cx+0.3,-3.0);\n  }\n  \\node[font=\\scriptsize, anchor=west] at (3.1,0) {$2^0=1$};\n  \\node[font=\\scriptsize, anchor=west] at (3.1,-1.0) {$2^1=2$};\n  \\node[font=\\scriptsize, anchor=west] at (3.1,-2.0) {$2^2=4$};\n  \\node[font=\\scriptsize, anchor=west, text=acc] at (3.1,-3.0) {$\\le 2^h$ leaves};\n  \\node[font=\\footnotesize, text=red!70!black] at (0,-3.95) {floor: $\\ge n!$ leaves $\\;\\Rightarrow\\; 2^h \\ge n! \\;\\Rightarrow\\; h \\ge \\log_2(n!)$};\n\\end{tikzpicture}\n$$\n\n## $\\log_2(n!)$ is $\\Omega(n\\log n)$\n\nWe need a lower bound on $\\log_2(n!)$.\n[**Stirling's approximation**](\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis) gives\nthe sharp estimate\n\n$$\nn! = \\sqrt{2\\pi n}\\left(\\frac{n}{e}\\right)^{n}\\!\\left(1 + \\Theta\\!\\left(\\tfrac{1}{n}\\right)\\right),\n$$\n\nfrom which, taking logarithms,\n\n$$\n\\log_2(n!) = n\\log_2 n - n\\log_2 e + \\Theta(\\log n) = n\\log_2 n - \\Theta(n).\n$$\n\nThe leading term is $n\\log_2 n$, so $\\log_2(n!) = \\Omega(n\\log n)$.[^clrs-stirling]\n\nIf Stirling seems like a heavy tool, an elementary argument reaches the same\nconclusion. Drop the smallest half of the factors in $n!$ and bound each survivor\nbelow by $n\u002F2$:\n\n$$\nn! \\;=\\; n\\cdot(n-1)\\cdots 2\\cdot 1 \\;\\ge\\; \\underbrace{\\frac{n}{2}\\cdot\\frac{n}{2}\\cdots\\frac{n}{2}}_{n\u002F2 \\text{ factors}} \\;=\\; \\left(\\frac{n}{2}\\right)^{n\u002F2}.\n$$\n\nThe picture for $n=8$: keep only the larger half of the factors (each at least\n$n\u002F2=4$) and throw the rest away. Half the factors, each $\\ge n\u002F2$, already force\n$n!\\ge (n\u002F2)^{n\u002F2}$.\n\n$$\n% caption: The elementary bound for $n=8$. Of the factors $8,7,\\dots,1$, keep the larger\n%          half (top, each $\\ge n\u002F2=4$) and drop the smaller half (grey); the kept factors\n%          alone give $n! \\ge (n\u002F2)^{n\u002F2}$.\n\\begin{tikzpicture}[\n  keep\u002F.style={draw, fill=acc!15, minimum size=7mm, font=\\small, inner sep=0pt},\n  drop\u002F.style={draw, fill=black!8, minimum size=7mm, font=\\small, text=black!55, inner sep=0pt}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\foreach \\v\u002F\\i in {8\u002F0,7\u002F1,6\u002F2,5\u002F3} \\node[keep] at (\\i*0.8,0) {\\v};\n  \\foreach \\v\u002F\\i in {4\u002F4,3\u002F5,2\u002F6,1\u002F7} \\node[drop] at (\\i*0.8,0) {\\v};\n  % kept group: thick accent rule with end ticks, above\n  \\draw[acc, thick] (-0.35,0.5) -- (2.75,0.5);\n  \\draw[acc, thick] (-0.35,0.42) -- (-0.35,0.5);\n  \\draw[acc, thick] (2.75,0.42) -- (2.75,0.5);\n  \\node[font=\\scriptsize, text=acc, anchor=south] at (1.2,0.56) {kept: $n\u002F2$ factors, each $\\ge n\u002F2$};\n  % dropped group: grey rule with end ticks, below\n  \\draw[black!45, thick] (2.85,-0.5) -- (5.95,-0.5);\n  \\draw[black!45, thick] (2.85,-0.42) -- (2.85,-0.5);\n  \\draw[black!45, thick] (5.95,-0.42) -- (5.95,-0.5);\n  \\node[font=\\scriptsize, text=black!55, anchor=north] at (4.4,-0.56) {dropped};\n  \\node[font=\\footnotesize, text=acc, anchor=west] at (6.5,0) {$\\ge \\left(\\tfrac{n}{2}\\right)^{n\u002F2}$};\n\\end{tikzpicture}\n$$\n\nTaking $\\log_2$,\n\n$$\n\\log_2(n!) \\;\\ge\\; \\frac{n}{2}\\log_2\\frac{n}{2} \\;=\\; \\frac{n}{2}\\bigl(\\log_2 n - 1\\bigr) \\;=\\; \\Omega(n\\log n).\n$$\n\nEither way the height satisfies $h \\ge \\log_2(n!) = \\Omega(n\\log n)$. (For\nintuition on tightness, mergesort's $\\Theta(n\\log n)$ shows the bound is achieved\nup to constants, so $\\log_2(n!) = \\Theta(n\\log n)$ exactly.)\n\n## The conclusion\n\n> **Theorem.** Any comparison sort makes $\\Omega(n\\log n)$ comparisons in the\n> worst case.\n\nBecause comparisons are a lower bound on _total_ work, no comparison-based\nalgorithm can sort $n$ elements in worst-case time $o(n\\log n)$. $\\textsc{Heapsort}$ and\n**mergesort** are therefore **asymptotically optimal**: they match the lower\nbound, and no comparison sort can beat them by more than a constant factor.\n\nTwo points are worth stressing about what this argument does and does not say.\n\n- It is an **information-theoretic** bound. The algorithm must distinguish\n  $n!$ possible answers, and each comparison is a single yes\u002Fno question\n  yielding one bit; $\\lceil \\log_2(n!)\\rceil$ bits are needed to identify one\n  answer among $n!$. The lower bound counts questions, independent of any\n  cleverness in choosing them.\n\n$$\n% caption: One comparison, one bit. Each yes\u002Fno comparison at best halves the set of\n%          still-possible orderings; starting from $n!$ candidates, narrowing to a single\n%          one takes $\\ge \\lceil\\log_2(n!)\\rceil$ comparisons.\n\\begin{tikzpicture}[\n  box\u002F.style={draw, rounded corners=1pt, minimum height=6mm, font=\\small, inner sep=3pt}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[box, fill=acc!20, minimum width=42mm] (s0) at (0,0) {$n!$ possible orderings};\n  \\node[box, fill=acc!15, minimum width=30mm] (s1) at (-0.9,-1.05) {$\\le n!\u002F2$};\n  \\node[box, fill=acc!11, minimum width=20mm] (s2) at (-1.6,-2.1) {$\\le n!\u002F4$};\n  \\node[box, fill=acc!8, minimum width=12mm] (s3) at (-2.1,-3.15) {$\\dots$};\n  \\node[box, fill=acc!22, draw=acc, minimum width=10mm] (s4) at (-2.4,-4.2) {$1$};\n  \\draw[->, >=Stealth] (s0.south) to[bend right=12] node[right, font=\\scriptsize] {compare} (s1.north);\n  \\draw[->, >=Stealth] (s1.south) to[bend right=12] node[right, font=\\scriptsize] {compare} (s2.north);\n  \\draw[->, >=Stealth] (s2.south) to[bend right=12] (s3.north);\n  \\draw[->, >=Stealth] (s3.south) to[bend right=12] (s4.north);\n  \\node[font=\\footnotesize, anchor=west, text=acc] at (1.7,-2.1) {$\\ge \\lceil\\log_2(n!)\\rceil$ steps};\n\\end{tikzpicture}\n$$\n- It bounds **only comparison sorts**. The proof leans entirely on the\n  restriction that information arrives one comparison at a time. An algorithm\n  that learns about elements _another_ way, by reading their digits or using\n  them as array indices, sits outside the model, and the $n\\log n$ floor simply\n  does not apply to it.[^erickson-model] The next lesson exploits exactly this\n  loophole to sort in\n  [**linear time**](\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting).\n\n## Takeaways\n\n- A **comparison sort** learns only the outcomes of element comparisons; this\n  restriction is precisely what makes a lower bound provable.\n- Any comparison sort is a **decision tree**: internal nodes are comparisons,\n  leaves are output orderings, and worst-case comparisons equal the tree's\n  **height**.\n- Correctness forces **$\\ge n!$ leaves**; a height-$h$ binary tree has $\\le 2^h$\n  leaves, so $h \\ge \\log_2(n!)$.\n- By Stirling, $\\log_2(n!) = n\\log_2 n - \\Theta(n) = \\Omega(n\\log n)$, so\n  **every comparison sort needs $\\Omega(n\\log n)$ comparisons** in the worst\n  case.\n- Mergesort and heapsort hit this bound and are thus **asymptotically optimal**;\n  beating it requires stepping _outside_ the comparison model.\n\n[^clrs-lb]: **CLRS**, §8.1 — Lower Bounds for Sorting — any comparison sort requires $\\Omega(n\\log n)$ comparisons in the worst case.\n[^erickson-dt]: **Erickson**, _Algorithms_, Ch. — Lower Bounds via Decision Trees — modeling a comparison sort as a binary decision tree whose internal nodes are comparisons and leaves are output orderings.\n[^clrs-leaves]: **CLRS**, §8.1 — Lower Bounds for Sorting — a correct sort's decision tree has at least $n!$ reachable leaves, one per permutation.\n[^clrs-stirling]: **CLRS**, §8.1 — Lower Bounds for Sorting — via Stirling's approximation, $\\log_2(n!) = \\Omega(n\\log n)$, bounding the tree height below.\n[^erickson-model]: **Erickson**, _Algorithms_, Ch. — Lower Bounds via Decision Trees — the bound holds only for comparison sorts; algorithms reading digits or indices fall outside the model.\n",{"text":8478,"minutes":8479,"time":8480,"words":8481},"6 min read",5.22,313200,1044,{"title":61,"description":8458},[8484,8486],{"book":8223,"ref":8485},"§8.1 — Lower Bounds for Sorting",{"book":8277,"ref":8487},"Ch. — Lower Bounds via Decision Trees","available","01.algorithms\u002F03.sorting\u002F02.sorting-lower-bounds",[36],"F7LgsgIK30luQkGeJ-trQkNwDs0pBzBkLGYhoo7BJWY",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":8493,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":8494,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":8495,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":8496,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":8497,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":8498,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":8499,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":8500,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":8501,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":8502,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":8503,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":8504,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":8505,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":8506,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":8507,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":8508,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":8509,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":8510,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":8511,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":8512,"\u002Falgorithms\u002Fsequences\u002Ftries":8513,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":8514,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":8515,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":8516,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":8517,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":8518,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":8519,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":8520,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":8521,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":8522,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":8523,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":8524,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":8525,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":8526,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":8527,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":8528,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":8529,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":8530,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":8531,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":8532,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":8533,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":8534,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":8535,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":8536,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":8537,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":8538,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":8539,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":8540,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":8541,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":8542,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":8543,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":8544,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":8545,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":8546,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":8547,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":8548,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":8549,"\u002Falgorithms":8550,"\u002Ftheory-of-computation":8552,"\u002Fcomputer-architecture":8555,"\u002Fphysical-computing":8558,"\u002Fdatabases":8561,"\u002Fdeep-learning":8564},{"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":8551,"title":8280,"module":376,"summary":376},"\u002Falgorithms",{"path":8553,"title":8554,"module":376,"summary":376},"\u002Ftheory-of-computation","Theory of Computation",{"path":8556,"title":8557,"module":376,"summary":376},"\u002Fcomputer-architecture","Computer Architecture",{"path":8559,"title":8560,"module":376,"summary":376},"\u002Fphysical-computing","Physical Computing",{"path":8562,"title":8563,"module":376,"summary":376},"\u002Fdatabases","Databases",{"path":8565,"title":8566,"module":376,"summary":376},"\u002Fdeep-learning","Deep Learning",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":8568,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":8569,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":8570,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":8571,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":8572,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":8573,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":8574,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":8481,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":8575,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":8576,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":8577,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":8578,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":8579,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":8580,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":8581,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":8582,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":8583,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":8584,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":8585,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":8586,"\u002Falgorithms\u002Fsequences\u002Ftries":8587,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":8588,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":8589,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":8590,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":8591,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":8592,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":8593,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":8594,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":8595,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":8596,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":8597,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":8598,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":8599,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":8600,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":8601,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":8602,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":8603,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":8604,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":8605,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":8606,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":8607,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":8608,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":8609,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":8610,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":8611,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":8612,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":8613,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":8583,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":8614,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":8615,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":8616,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":8617,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":8599,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":8618,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":8619,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":8579,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":8620,"\u002Falgorithms":8621,"\u002Ftheory-of-computation":8622,"\u002Fcomputer-architecture":8622,"\u002Fphysical-computing":8622,"\u002Fdatabases":8622,"\u002Fdeep-learning":8622},1763,2107,1738,2628,1723,2048,1697,1542,1565,1679,1586,1388,1465,1971,1455,1533,1483,1578,1791,1481,2704,1658,2070,1978,2080,1568,1451,1291,1543,1883,1443,1599,2038,2241,1744,1678,2288,1929,1657,1412,1554,1418,1713,1798,1694,1762,1534,1595,1262,1495,1630,2306,2142,107,0,1781560521825]