[{"data":1,"prerenderedAt":6263},["ShallowReactive",2],{"nav:algorithms":3,"lesson:\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":374,"course-wordcounts":6131,"ref-card-index":6187},[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":215,"blurb":376,"body":377,"description":6092,"extension":6093,"meta":6094,"module":206,"navigation":6096,"path":216,"practice":6097,"rawbody":6113,"readingTime":6114,"seo":6119,"sources":6120,"status":6127,"stem":6128,"summary":219,"topics":6129,"__hash__":6130},"course\u002F01.algorithms\u002F07.greedy\u002F02.scheduling-and-intervals.md","",{"type":378,"value":379,"toc":6084},"minimark",[380,415,420,615,727,1481,1519,1785,1828,1832,1851,1990,2093,2209,2219,2284,2308,2644,3169,3322,3326,3925,3985,4139,4733,5084,5127,5777,5781,5795,5867,5874,5878,6022,6080],[381,382,383,384,388,389,392,393,397,398,402,403,406,407,410,411,414],"p",{},"The previous lesson introduced the greedy method on its canonical example:\n",[385,386,387],"strong",{},"activity selection",", where we pick a maximum-size set of mutually compatible\nintervals by repeatedly taking the one that finishes earliest. That was a single\nproblem solved by a single sort key. This lesson zooms out to the whole family of\n",[385,390,391],{},"interval and scheduling problems"," that the ",[394,395,396],"a",{"href":211},"greedy method","\nsolves, and they turn out to be nearly the same algorithm wearing different hats.\nWhat separates them is ",[399,400,401],"em",{},"which key you sort by",". Sort by ",[385,404,405],{},"finish"," time and you\nmaximize how many jobs fit; sort by ",[385,408,409],{},"start"," time and you minimize how many\nmachines you need; sort by ",[385,412,413],{},"deadline"," and you minimize how late the worst job\nruns. Choosing the key correctly, and proving that choice optimal, is the entire\nproblem.",[416,417,419],"h2",{"id":418},"interval-scheduling-recapped","Interval scheduling, recapped",[381,421,422,423,448,449,466,467,600,601,604,605],{},"Recall the setup. We are given ",[424,425,428],"span",{"className":426},[427],"katex",[424,429,433],{"className":430,"ariaHidden":432},[431],"katex-html","true",[424,434,437,442],{"className":435},[436],"base",[424,438],{"className":439,"style":441},[440],"strut","height:0.4306em;",[424,443,447],{"className":444},[445,446],"mord","mathnormal","n"," intervals, interval ",[424,450,452],{"className":451},[427],[424,453,455],{"className":454,"ariaHidden":432},[431],[424,456,458,462],{"className":457},[436],[424,459],{"className":460,"style":461},[440],"height:0.6595em;",[424,463,465],{"className":464},[445,446],"i"," being the half-open\n",[424,468,470],{"className":469},[427],[424,471,473],{"className":472,"ariaHidden":432},[431],[424,474,476,480,485,542,547,552,595],{"className":475},[436],[424,477],{"className":478,"style":479},[440],"height:1em;vertical-align:-0.25em;",[424,481,484],{"className":482},[483],"mopen","[",[424,486,488,492],{"className":487},[445],[424,489,491],{"className":490},[445,446],"s",[424,493,496],{"className":494},[495],"msupsub",[424,497,501,533],{"className":498},[499,500],"vlist-t","vlist-t2",[424,502,505,528],{"className":503},[504],"vlist-r",[424,506,510],{"className":507,"style":509},[508],"vlist","height:0.3117em;",[424,511,513,518],{"style":512},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[424,514],{"className":515,"style":517},[516],"pstrut","height:2.7em;",[424,519,525],{"className":520},[521,522,523,524],"sizing","reset-size6","size3","mtight",[424,526,465],{"className":527},[445,446,524],[424,529,532],{"className":530},[531],"vlist-s","​",[424,534,536],{"className":535},[504],[424,537,540],{"className":538,"style":539},[508],"height:0.15em;",[424,541],{},[424,543,546],{"className":544},[545],"mpunct",",",[424,548],{"className":549,"style":551},[550],"mspace","margin-right:0.1667em;",[424,553,555,560],{"className":554},[445],[424,556,559],{"className":557,"style":558},[445,446],"margin-right:0.1076em;","f",[424,561,563],{"className":562},[495],[424,564,566,587],{"className":565},[499,500],[424,567,569,584],{"className":568},[504],[424,570,572],{"className":571,"style":509},[508],[424,573,575,578],{"style":574},"top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;",[424,576],{"className":577,"style":517},[516],[424,579,581],{"className":580},[521,522,523,524],[424,582,465],{"className":583},[445,446,524],[424,585,532],{"className":586},[531],[424,588,590],{"className":589},[504],[424,591,593],{"className":592,"style":539},[508],[424,594],{},[424,596,599],{"className":597},[598],"mclose",")",", and two intervals are ",[385,602,603],{},"compatible"," when they do not overlap. We\nwant a maximum-size set of pairwise compatible intervals, the most jobs we can\nrun on one machine without conflict.",[606,607,608],"sup",{},[394,609,614],{"href":610,"ariaDescribedBy":611,"dataFootnoteRef":376,"id":613},"#user-content-fn-clrs-activity",[612],"footnote-label","user-content-fnref-clrs-activity","1",[381,616,617,618,621,622,675,676,679,680,726],{},"The greedy rule, proved correct last lesson, is ",[385,619,620],{},"earliest finish time first",":\nsort by ",[424,623,625],{"className":624},[427],[424,626,628],{"className":627,"ariaHidden":432},[431],[424,629,631,635],{"className":630},[436],[424,632],{"className":633,"style":634},[440],"height:0.8889em;vertical-align:-0.1944em;",[424,636,638,641],{"className":637},[445],[424,639,559],{"className":640,"style":558},[445,446],[424,642,644],{"className":643},[495],[424,645,647,667],{"className":646},[499,500],[424,648,650,664],{"className":649},[504],[424,651,653],{"className":652,"style":509},[508],[424,654,655,658],{"style":574},[424,656],{"className":657,"style":517},[516],[424,659,661],{"className":660},[521,522,523,524],[424,662,465],{"className":663},[445,446,524],[424,665,532],{"className":666},[531],[424,668,670],{"className":669},[504],[424,671,673],{"className":672,"style":539},[508],[424,674],{},", take the first interval, discard everything that overlaps it, and\nrecurse on the rest. The selection itself is one linear scan, so after the\n",[394,677,678],{"href":56},"sort"," the algorithm runs in ",[424,681,683],{"className":682},[427],[424,684,686],{"className":685,"ariaHidden":432},[431],[424,687,689,692,697,701,704,707,717,720,723],{"className":688},[436],[424,690],{"className":691,"style":479},[440],[424,693,696],{"className":694},[445,695],"mathbb","O",[424,698,700],{"className":699},[483],"(",[424,702,447],{"className":703},[445,446],[424,705],{"className":706,"style":551},[550],[424,708,711],{"className":709},[710],"mop",[424,712,716],{"className":713,"style":715},[445,714],"mathrm","margin-right:0.0139em;","log",[424,718],{"className":719,"style":551},[550],[424,721,447],{"className":722},[445,446],[424,724,599],{"className":725},[598],".",[728,729,731],"callout",{"type":730},"remark",[381,732,733,736,737,740,741,795,796,843,844,896,897,915,916,968,969,1021,1022,1037,1038,1199,1200,1241,1242,1294,1295,1387,1388,1480],{},[385,734,735],{},"Remark (Why it is optimal)."," The argument is a ",[399,738,739],{},"stays-ahead"," \u002F exchange\nargument. Let ",[424,742,744],{"className":743},[427],[424,745,747],{"className":746,"ariaHidden":432},[431],[424,748,750,754],{"className":749},[436],[424,751],{"className":752,"style":753},[440],"height:0.5806em;vertical-align:-0.15em;",[424,755,757,760],{"className":756},[445],[424,758,394],{"className":759},[445,446],[424,761,763],{"className":762},[495],[424,764,766,787],{"className":765},[499,500],[424,767,769,784],{"className":768},[504],[424,770,773],{"className":771,"style":772},[508],"height:0.3011em;",[424,774,775,778],{"style":512},[424,776],{"className":777,"style":517},[516],[424,779,781],{"className":780},[521,522,523,524],[424,782,614],{"className":783},[445,524],[424,785,532],{"className":786},[531],[424,788,790],{"className":789},[504],[424,791,793],{"className":792,"style":539},[508],[424,794],{}," be the earliest-finishing interval. Some optimal solution\n",[424,797,799],{"className":798},[427],[424,800,802],{"className":801,"ariaHidden":432},[431],[424,803,805,809],{"className":804},[436],[424,806],{"className":807,"style":808},[440],"height:0.6887em;",[424,810,812,817],{"className":811},[445],[424,813,816],{"className":814,"style":815},[445,446],"margin-right:0.0576em;","S",[424,818,820],{"className":819},[495],[424,821,823],{"className":822},[499],[424,824,826],{"className":825},[504],[424,827,829],{"className":828,"style":808},[508],[424,830,832,835],{"style":831},"top:-3.063em;margin-right:0.05em;",[424,833],{"className":834,"style":517},[516],[424,836,838],{"className":837},[521,522,523,524],[424,839,842],{"className":840},[841,524],"mbin","⋆"," can be edited to contain ",[424,845,847],{"className":846},[427],[424,848,850],{"className":849,"ariaHidden":432},[431],[424,851,853,856],{"className":852},[436],[424,854],{"className":855,"style":753},[440],[424,857,859,862],{"className":858},[445],[424,860,394],{"className":861},[445,446],[424,863,865],{"className":864},[495],[424,866,868,888],{"className":867},[499,500],[424,869,871,885],{"className":870},[504],[424,872,874],{"className":873,"style":772},[508],[424,875,876,879],{"style":512},[424,877],{"className":878,"style":517},[516],[424,880,882],{"className":881},[521,522,523,524],[424,883,614],{"className":884},[445,524],[424,886,532],{"className":887},[531],[424,889,891],{"className":890},[504],[424,892,894],{"className":893,"style":539},[508],[424,895],{},": if its first interval ",[424,898,900],{"className":899},[427],[424,901,903],{"className":902,"ariaHidden":432},[431],[424,904,906,910],{"className":905},[436],[424,907],{"className":908,"style":909},[440],"height:0.854em;vertical-align:-0.1944em;",[424,911,914],{"className":912,"style":913},[445,446],"margin-right:0.0572em;","j"," differs from\n",[424,917,919],{"className":918},[427],[424,920,922],{"className":921,"ariaHidden":432},[431],[424,923,925,928],{"className":924},[436],[424,926],{"className":927,"style":753},[440],[424,929,931,934],{"className":930},[445],[424,932,394],{"className":933},[445,446],[424,935,937],{"className":936},[495],[424,938,940,960],{"className":939},[499,500],[424,941,943,957],{"className":942},[504],[424,944,946],{"className":945,"style":772},[508],[424,947,948,951],{"style":512},[424,949],{"className":950,"style":517},[516],[424,952,954],{"className":953},[521,522,523,524],[424,955,614],{"className":956},[445,524],[424,958,532],{"className":959},[531],[424,961,963],{"className":962},[504],[424,964,966],{"className":965,"style":539},[508],[424,967],{},", swap ",[424,970,972],{"className":971},[427],[424,973,975],{"className":974,"ariaHidden":432},[431],[424,976,978,981],{"className":977},[436],[424,979],{"className":980,"style":753},[440],[424,982,984,987],{"className":983},[445],[424,985,394],{"className":986},[445,446],[424,988,990],{"className":989},[495],[424,991,993,1013],{"className":992},[499,500],[424,994,996,1010],{"className":995},[504],[424,997,999],{"className":998,"style":772},[508],[424,1000,1001,1004],{"style":512},[424,1002],{"className":1003,"style":517},[516],[424,1005,1007],{"className":1006},[521,522,523,524],[424,1008,614],{"className":1009},[445,524],[424,1011,532],{"className":1012},[531],[424,1014,1016],{"className":1015},[504],[424,1017,1019],{"className":1018,"style":539},[508],[424,1020],{}," in for ",[424,1023,1025],{"className":1024},[427],[424,1026,1028],{"className":1027,"ariaHidden":432},[431],[424,1029,1031,1034],{"className":1030},[436],[424,1032],{"className":1033,"style":909},[440],[424,1035,914],{"className":1036,"style":913},[445,446],". Since ",[424,1039,1041],{"className":1040},[427],[424,1042,1044,1151],{"className":1043,"ariaHidden":432},[431],[424,1045,1047,1051,1139,1143,1148],{"className":1046},[436],[424,1048],{"className":1049,"style":1050},[440],"height:0.9445em;vertical-align:-0.2501em;",[424,1052,1054,1057],{"className":1053},[445],[424,1055,559],{"className":1056,"style":558},[445,446],[424,1058,1060],{"className":1059},[495],[424,1061,1063,1130],{"className":1062},[499,500],[424,1064,1066,1127],{"className":1065},[504],[424,1067,1070],{"className":1068,"style":1069},[508],"height:0.1514em;",[424,1071,1072,1075],{"style":574},[424,1073],{"className":1074,"style":517},[516],[424,1076,1078],{"className":1077},[521,522,523,524],[424,1079,1081],{"className":1080},[445,524],[424,1082,1084,1087],{"className":1083},[445,524],[424,1085,394],{"className":1086},[445,446,524],[424,1088,1090],{"className":1089},[495],[424,1091,1093,1118],{"className":1092},[499,500],[424,1094,1096,1115],{"className":1095},[504],[424,1097,1100],{"className":1098,"style":1099},[508],"height:0.3173em;",[424,1101,1103,1107],{"style":1102},"top:-2.357em;margin-left:0em;margin-right:0.0714em;",[424,1104],{"className":1105,"style":1106},[516],"height:2.5em;",[424,1108,1112],{"className":1109},[521,1110,1111,524],"reset-size3","size1",[424,1113,614],{"className":1114},[445,524],[424,1116,532],{"className":1117},[531],[424,1119,1121],{"className":1120},[504],[424,1122,1125],{"className":1123,"style":1124},[508],"height:0.143em;",[424,1126],{},[424,1128,532],{"className":1129},[531],[424,1131,1133],{"className":1132},[504],[424,1134,1137],{"className":1135,"style":1136},[508],"height:0.2501em;",[424,1138],{},[424,1140],{"className":1141,"style":1142},[550],"margin-right:0.2778em;",[424,1144,1147],{"className":1145},[1146],"mrel","≤",[424,1149],{"className":1150,"style":1142},[550],[424,1152,1154,1158],{"className":1153},[436],[424,1155],{"className":1156,"style":1157},[440],"height:0.9805em;vertical-align:-0.2861em;",[424,1159,1161,1164],{"className":1160},[445],[424,1162,559],{"className":1163,"style":558},[445,446],[424,1165,1167],{"className":1166},[495],[424,1168,1170,1190],{"className":1169},[499,500],[424,1171,1173,1187],{"className":1172},[504],[424,1174,1176],{"className":1175,"style":509},[508],[424,1177,1178,1181],{"style":574},[424,1179],{"className":1180,"style":517},[516],[424,1182,1184],{"className":1183},[521,522,523,524],[424,1185,914],{"className":1186,"style":913},[445,446,524],[424,1188,532],{"className":1189},[531],[424,1191,1193],{"className":1192},[504],[424,1194,1197],{"className":1195,"style":1196},[508],"height:0.2861em;",[424,1198],{},", every later interval of\n",[424,1201,1203],{"className":1202},[427],[424,1204,1206],{"className":1205,"ariaHidden":432},[431],[424,1207,1209,1212],{"className":1208},[436],[424,1210],{"className":1211,"style":808},[440],[424,1213,1215,1218],{"className":1214},[445],[424,1216,816],{"className":1217,"style":815},[445,446],[424,1219,1221],{"className":1220},[495],[424,1222,1224],{"className":1223},[499],[424,1225,1227],{"className":1226},[504],[424,1228,1230],{"className":1229,"style":808},[508],[424,1231,1232,1235],{"style":831},[424,1233],{"className":1234,"style":517},[516],[424,1236,1238],{"className":1237},[521,522,523,524],[424,1239,842],{"className":1240},[841,524],", which started after ",[424,1243,1245],{"className":1244},[427],[424,1246,1248],{"className":1247,"ariaHidden":432},[431],[424,1249,1251,1254],{"className":1250},[436],[424,1252],{"className":1253,"style":1157},[440],[424,1255,1257,1260],{"className":1256},[445],[424,1258,559],{"className":1259,"style":558},[445,446],[424,1261,1263],{"className":1262},[495],[424,1264,1266,1286],{"className":1265},[499,500],[424,1267,1269,1283],{"className":1268},[504],[424,1270,1272],{"className":1271,"style":509},[508],[424,1273,1274,1277],{"style":574},[424,1275],{"className":1276,"style":517},[516],[424,1278,1280],{"className":1279},[521,522,523,524],[424,1281,914],{"className":1282,"style":913},[445,446,524],[424,1284,532],{"className":1285},[531],[424,1287,1289],{"className":1288},[504],[424,1290,1292],{"className":1291,"style":1196},[508],[424,1293],{},", still starts after ",[424,1296,1298],{"className":1297},[427],[424,1299,1301],{"className":1300,"ariaHidden":432},[431],[424,1302,1304,1307],{"className":1303},[436],[424,1305],{"className":1306,"style":1050},[440],[424,1308,1310,1313],{"className":1309},[445],[424,1311,559],{"className":1312,"style":558},[445,446],[424,1314,1316],{"className":1315},[495],[424,1317,1319,1379],{"className":1318},[499,500],[424,1320,1322,1376],{"className":1321},[504],[424,1323,1325],{"className":1324,"style":1069},[508],[424,1326,1327,1330],{"style":574},[424,1328],{"className":1329,"style":517},[516],[424,1331,1333],{"className":1332},[521,522,523,524],[424,1334,1336],{"className":1335},[445,524],[424,1337,1339,1342],{"className":1338},[445,524],[424,1340,394],{"className":1341},[445,446,524],[424,1343,1345],{"className":1344},[495],[424,1346,1348,1368],{"className":1347},[499,500],[424,1349,1351,1365],{"className":1350},[504],[424,1352,1354],{"className":1353,"style":1099},[508],[424,1355,1356,1359],{"style":1102},[424,1357],{"className":1358,"style":1106},[516],[424,1360,1362],{"className":1361},[521,1110,1111,524],[424,1363,614],{"className":1364},[445,524],[424,1366,532],{"className":1367},[531],[424,1369,1371],{"className":1370},[504],[424,1372,1374],{"className":1373,"style":1124},[508],[424,1375],{},[424,1377,532],{"className":1378},[531],[424,1380,1382],{"className":1381},[504],[424,1383,1385],{"className":1384,"style":1136},[508],[424,1386],{},", so the\nswapped set is valid and no smaller. The greedy choice is therefore safe;\ninduction on the remaining intervals (all of which start at or after ",[424,1389,1391],{"className":1390},[427],[424,1392,1394],{"className":1393,"ariaHidden":432},[431],[424,1395,1397,1400],{"className":1396},[436],[424,1398],{"className":1399,"style":1050},[440],[424,1401,1403,1406],{"className":1402},[445],[424,1404,559],{"className":1405,"style":558},[445,446],[424,1407,1409],{"className":1408},[495],[424,1410,1412,1472],{"className":1411},[499,500],[424,1413,1415,1469],{"className":1414},[504],[424,1416,1418],{"className":1417,"style":1069},[508],[424,1419,1420,1423],{"style":574},[424,1421],{"className":1422,"style":517},[516],[424,1424,1426],{"className":1425},[521,522,523,524],[424,1427,1429],{"className":1428},[445,524],[424,1430,1432,1435],{"className":1431},[445,524],[424,1433,394],{"className":1434},[445,446,524],[424,1436,1438],{"className":1437},[495],[424,1439,1441,1461],{"className":1440},[499,500],[424,1442,1444,1458],{"className":1443},[504],[424,1445,1447],{"className":1446,"style":1099},[508],[424,1448,1449,1452],{"style":1102},[424,1450],{"className":1451,"style":1106},[516],[424,1453,1455],{"className":1454},[521,1110,1111,524],[424,1456,614],{"className":1457},[445,524],[424,1459,532],{"className":1460},[531],[424,1462,1464],{"className":1463},[504],[424,1465,1467],{"className":1466,"style":1124},[508],[424,1468],{},[424,1470,532],{"className":1471},[531],[424,1473,1475],{"className":1474},[504],[424,1476,1478],{"className":1477,"style":1136},[508],[424,1479],{},")\nfinishes the proof.",[381,1482,1483,1484,1502,1503,1518],{},"The picture is one of greedy never falling behind: pick the earliest-finishing\ninterval each round, and greedy's ",[424,1485,1487],{"className":1486},[427],[424,1488,1490],{"className":1489,"ariaHidden":432},[431],[424,1491,1493,1497],{"className":1492},[436],[424,1494],{"className":1495,"style":1496},[440],"height:0.6944em;",[424,1498,1501],{"className":1499,"style":1500},[445,446],"margin-right:0.0315em;","k","-th choice frees the machine no later than\nany rival schedule's ",[424,1504,1506],{"className":1505},[427],[424,1507,1509],{"className":1508,"ariaHidden":432},[431],[424,1510,1512,1515],{"className":1511},[436],[424,1513],{"className":1514,"style":1496},[440],[424,1516,1501],{"className":1517,"style":1500},[445,446],"-th, so it always has at least as much room to come.",[1520,1521,1525,1747],"figure",{"className":1522},[1523,1524],"tikz-figure","tikz-diagram-rendered",[1526,1527,1532],"svg",{"xmlns":1528,"width":1529,"height":1530,"viewBox":1531},"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg","280.696","107.754","-75 -75 210.522 80.815",[1533,1534,1537,1547,1573,1592,1611,1618,1640,1659,1678,1682,1731],"g",{"stroke":1535,"style":1536},"currentColor","stroke-miterlimit:10;stroke-width:.4",[1533,1538,1540],{"transform":1539},"translate(-40.388 -57.978)",[1541,1542],"path",{"d":1543,"fill":1535,"stroke":1535,"className":1544,"style":1546},"M-21.644-4.625Q-21.644-4.906-21.433-5.117Q-21.222-5.328-20.937-5.418Q-21.093-5.543-21.171-5.732Q-21.249-5.921-21.249-6.121Q-21.249-6.476-21.019-6.769Q-21.386-7.109-21.386-7.578Q-21.386-7.929-21.183-8.199Q-20.980-8.468-20.659-8.615Q-20.339-8.761-19.995-8.761Q-19.476-8.761-19.105-8.480Q-18.741-8.851-18.195-8.851Q-18.015-8.851-17.888-8.724Q-17.761-8.597-17.761-8.418Q-17.761-8.312-17.839-8.234Q-17.917-8.156-18.027-8.156Q-18.136-8.156-18.212-8.232Q-18.288-8.308-18.288-8.418Q-18.288-8.519-18.249-8.570Q-18.241-8.578-18.237-8.584Q-18.234-8.589-18.234-8.593Q-18.609-8.593-18.929-8.339Q-18.609-8-18.609-7.578Q-18.609-7.308-18.726-7.091Q-18.843-6.875-19.048-6.716Q-19.253-6.558-19.495-6.476Q-19.737-6.394-19.995-6.394Q-20.214-6.394-20.427-6.453Q-20.640-6.511-20.835-6.632Q-20.929-6.492-20.929-6.312Q-20.929-6.105-20.792-5.953Q-20.655-5.800-20.448-5.800L-19.753-5.800Q-19.265-5.800-18.853-5.716Q-18.441-5.632-18.161-5.375Q-17.882-5.117-17.882-4.625Q-17.882-4.261-18.202-4.029Q-18.523-3.796-18.964-3.695Q-19.405-3.593-19.761-3.593Q-20.116-3.593-20.560-3.695Q-21.003-3.796-21.323-4.029Q-21.644-4.261-21.644-4.625M-21.140-4.625Q-21.140-4.429-20.995-4.281Q-20.851-4.132-20.638-4.043Q-20.425-3.953-20.185-3.906Q-19.945-3.859-19.761-3.859Q-19.519-3.859-19.189-3.937Q-18.859-4.015-18.622-4.189Q-18.386-4.363-18.386-4.625Q-18.386-5.031-18.796-5.140Q-19.206-5.250-19.769-5.250L-20.448-5.250Q-20.718-5.250-20.929-5.072Q-21.140-4.894-21.140-4.625M-19.995-6.660Q-19.273-6.660-19.273-7.578Q-19.273-8.500-19.995-8.500Q-20.722-8.500-20.722-7.578Q-20.722-6.660-19.995-6.660M-15.390-5.234L-17.370-5.234L-17.370-5.531Q-17.101-5.531-16.933-5.576Q-16.765-5.621-16.765-5.793L-16.765-7.929Q-16.765-8.144-16.827-8.240Q-16.890-8.336-17.007-8.357Q-17.124-8.379-17.370-8.379L-17.370-8.675L-16.202-8.761L-16.202-7.976Q-16.124-8.187-15.972-8.373Q-15.820-8.558-15.620-8.660Q-15.421-8.761-15.195-8.761Q-14.948-8.761-14.757-8.617Q-14.566-8.472-14.566-8.242Q-14.566-8.086-14.671-7.976Q-14.777-7.867-14.933-7.867Q-15.089-7.867-15.198-7.976Q-15.308-8.086-15.308-8.242Q-15.308-8.402-15.202-8.507Q-15.527-8.507-15.741-8.279Q-15.956-8.050-16.052-7.711Q-16.148-7.371-16.148-7.066L-16.148-5.793Q-16.148-5.625-15.921-5.578Q-15.695-5.531-15.390-5.531L-15.390-5.234M-14.085-6.988Q-14.085-7.468-13.853-7.884Q-13.620-8.300-13.210-8.550Q-12.800-8.800-12.323-8.800Q-11.593-8.800-11.195-8.359Q-10.796-7.918-10.796-7.187Q-10.796-7.082-10.890-7.058L-13.339-7.058L-13.339-6.988Q-13.339-6.578-13.218-6.222Q-13.097-5.867-12.825-5.650Q-12.554-5.433-12.124-5.433Q-11.761-5.433-11.464-5.662Q-11.167-5.890-11.066-6.242Q-11.058-6.289-10.972-6.304L-10.890-6.304Q-10.796-6.277-10.796-6.195Q-10.796-6.187-10.804-6.156Q-10.866-5.929-11.005-5.746Q-11.144-5.562-11.335-5.429Q-11.527-5.296-11.745-5.226Q-11.964-5.156-12.202-5.156Q-12.573-5.156-12.911-5.293Q-13.249-5.429-13.517-5.681Q-13.784-5.933-13.935-6.273Q-14.085-6.613-14.085-6.988M-13.331-7.296L-11.370-7.296Q-11.370-7.601-11.472-7.892Q-11.573-8.183-11.790-8.365Q-12.007-8.546-12.323-8.546Q-12.624-8.546-12.855-8.359Q-13.085-8.171-13.208-7.880Q-13.331-7.589-13.331-7.296M-10.308-6.988Q-10.308-7.468-10.075-7.884Q-9.843-8.300-9.433-8.550Q-9.023-8.800-8.546-8.800Q-7.816-8.800-7.417-8.359Q-7.019-7.918-7.019-7.187Q-7.019-7.082-7.112-7.058L-9.562-7.058L-9.562-6.988Q-9.562-6.578-9.441-6.222Q-9.320-5.867-9.048-5.650Q-8.777-5.433-8.347-5.433Q-7.984-5.433-7.687-5.662Q-7.390-5.890-7.288-6.242Q-7.280-6.289-7.195-6.304L-7.112-6.304Q-7.019-6.277-7.019-6.195Q-7.019-6.187-7.027-6.156Q-7.089-5.929-7.228-5.746Q-7.366-5.562-7.558-5.429Q-7.749-5.296-7.968-5.226Q-8.187-5.156-8.425-5.156Q-8.796-5.156-9.134-5.293Q-9.472-5.429-9.739-5.681Q-10.007-5.933-10.157-6.273Q-10.308-6.613-10.308-6.988M-9.554-7.296L-7.593-7.296Q-7.593-7.601-7.695-7.892Q-7.796-8.183-8.013-8.365Q-8.230-8.546-8.546-8.546Q-8.847-8.546-9.077-8.359Q-9.308-8.171-9.431-7.880Q-9.554-7.589-9.554-7.296M-4.714-5.156Q-5.195-5.156-5.603-5.400Q-6.011-5.644-6.249-6.058Q-6.487-6.472-6.487-6.961Q-6.487-7.453-6.230-7.869Q-5.972-8.285-5.540-8.523Q-5.109-8.761-4.616-8.761Q-3.995-8.761-3.546-8.324L-3.546-9.953Q-3.546-10.168-3.609-10.263Q-3.671-10.359-3.788-10.380Q-3.905-10.402-4.152-10.402L-4.152-10.699L-2.929-10.785L-2.929-5.976Q-2.929-5.765-2.866-5.670Q-2.804-5.574-2.687-5.552Q-2.570-5.531-2.320-5.531L-2.320-5.234L-3.570-5.156L-3.570-5.640Q-4.034-5.156-4.714-5.156M-4.648-5.410Q-4.308-5.410-4.015-5.601Q-3.722-5.793-3.570-6.089L-3.570-7.921Q-3.718-8.195-3.980-8.351Q-4.241-8.507-4.554-8.507Q-5.179-8.507-5.462-8.060Q-5.745-7.613-5.745-6.953Q-5.745-6.308-5.493-5.859Q-5.241-5.410-4.648-5.410M-1.394-3.937Q-1.280-3.859-1.105-3.859Q-0.816-3.859-0.595-4.072Q-0.374-4.285-0.249-4.586L0.040-5.234L-1.234-8.121Q-1.316-8.296-1.460-8.341Q-1.605-8.386-1.874-8.386L-1.874-8.683L-0.155-8.683L-0.155-8.386Q-0.577-8.386-0.577-8.203Q-0.577-8.191-0.562-8.121L0.376-5.996L1.208-7.906Q1.247-7.996 1.247-8.074Q1.247-8.214 1.145-8.300Q1.044-8.386 0.903-8.386L0.903-8.683L2.255-8.683L2.255-8.386Q2.001-8.386 1.807-8.261Q1.614-8.136 1.509-7.906L0.063-4.586Q-0.050-4.332-0.216-4.109Q-0.382-3.886-0.611-3.744Q-0.839-3.601-1.105-3.601Q-1.402-3.601-1.642-3.793Q-1.882-3.984-1.882-4.273Q-1.882-4.429-1.777-4.531Q-1.671-4.632-1.523-4.632Q-1.417-4.632-1.337-4.586Q-1.257-4.539-1.210-4.461Q-1.163-4.382-1.163-4.273Q-1.163-4.152-1.224-4.064Q-1.284-3.976-1.394-3.937",[1545],"tikz-text","stroke-width:0.240",[1533,1548,1552,1555],{"fill":1549,"stroke":1550,"style":1551},"var(--tk-soft-accent)","var(--tk-accent)","stroke-width:1.2",[1541,1553],{"d":1554},"M-31.613-58.754h51.215V-71.67h-51.215Z",[1533,1556,1558,1566],{"fill":1535,"stroke":1557},"none",[1533,1559,1561],{"transform":1560},"translate(11.248 -58.797)",[1541,1562],{"d":1563,"fill":1535,"stroke":1535,"className":1564,"style":1565},"M-21.740-3.803Q-21.740-4.047-21.572-4.231Q-21.403-4.414-21.164-4.414Q-21.003-4.414-20.893-4.314Q-20.783-4.213-20.783-4.052Q-20.783-3.872-20.886-3.728Q-20.988-3.584-21.150-3.525Q-20.881-3.442-20.310-3.442Q-19.851-3.442-19.470-3.796Q-19.089-4.150-18.972-4.614L-18.684-5.786Q-19.226-5.234-19.812-5.234Q-20.241-5.234-20.547-5.454Q-20.852-5.673-21.013-6.040Q-21.174-6.406-21.174-6.816Q-21.174-7.275-20.986-7.778Q-20.798-8.281-20.459-8.711Q-20.119-9.140-19.680-9.397Q-19.240-9.653-18.752-9.653Q-18.459-9.653-18.225-9.492Q-17.990-9.331-17.854-9.062Q-17.756-9.453-17.424-9.453Q-17.297-9.453-17.209-9.377Q-17.121-9.301-17.121-9.174Q-17.121-9.145-17.124-9.130Q-17.126-9.116-17.131-9.096L-18.274-4.555Q-18.352-4.243-18.562-3.984Q-18.772-3.725-19.055-3.552Q-19.338-3.379-19.675-3.281Q-20.012-3.183-20.324-3.183Q-20.896-3.183-21.318-3.293Q-21.740-3.403-21.740-3.803M-19.792-5.493Q-19.153-5.493-18.532-6.372L-17.981-8.554Q-18.049-8.901-18.254-9.148Q-18.459-9.394-18.772-9.394Q-19.104-9.394-19.399-9.123Q-19.695-8.852-19.890-8.476Q-20.075-8.115-20.249-7.439Q-20.422-6.762-20.422-6.372Q-20.422-6.030-20.266-5.761Q-20.110-5.493-19.792-5.493",[1545],"stroke-width:0.300",[1533,1567,1568],{"transform":1560},[1541,1569],{"d":1570,"fill":1535,"stroke":1535,"className":1571,"style":1572},"M-13.786-3.734L-16.316-3.734L-16.316-4.014Q-15.348-4.014-15.348-4.223L-15.348-7.842Q-15.741-7.654-16.363-7.654L-16.363-7.935Q-15.946-7.935-15.582-8.036Q-15.218-8.136-14.962-8.382L-14.836-8.382Q-14.771-8.365-14.754-8.297L-14.754-4.223Q-14.754-4.014-13.786-4.014",[1545],"stroke-width:0.210",[1533,1574,1575,1578],{"fill":1549,"stroke":1550,"style":1551},[1541,1576],{"d":1577},"M10.724-58.754H61.94V-71.67H10.724Z",[1533,1579,1580,1586],{"fill":1535,"stroke":1557},[1533,1581,1583],{"transform":1582},"translate(53.586 -58.797)",[1541,1584],{"d":1563,"fill":1535,"stroke":1535,"className":1585,"style":1565},[1545],[1533,1587,1588],{"transform":1582},[1541,1589],{"d":1590,"fill":1535,"stroke":1535,"className":1591,"style":1572},"M-13.786-3.734L-16.671-3.734L-16.671-3.936Q-16.671-3.966-16.644-3.994L-15.396-5.211Q-15.324-5.286-15.282-5.328Q-15.239-5.371-15.160-5.450Q-14.747-5.863-14.516-6.221Q-14.285-6.578-14.285-7.002Q-14.285-7.234-14.364-7.437Q-14.443-7.641-14.584-7.791Q-14.726-7.942-14.921-8.022Q-15.116-8.102-15.348-8.102Q-15.659-8.102-15.917-7.943Q-16.175-7.784-16.305-7.507L-16.285-7.507Q-16.117-7.507-16.010-7.396Q-15.902-7.285-15.902-7.121Q-15.902-6.964-16.011-6.851Q-16.121-6.738-16.285-6.738Q-16.445-6.738-16.558-6.851Q-16.671-6.964-16.671-7.121Q-16.671-7.497-16.463-7.784Q-16.254-8.071-15.919-8.227Q-15.584-8.382-15.229-8.382Q-14.805-8.382-14.425-8.224Q-14.046-8.065-13.812-7.748Q-13.578-7.432-13.578-7.002Q-13.578-6.691-13.718-6.422Q-13.858-6.154-14.063-5.949Q-14.268-5.744-14.631-5.462Q-14.993-5.180-15.102-5.084L-15.957-4.356L-15.314-4.356Q-15.051-4.356-14.762-4.358Q-14.473-4.359-14.255-4.368Q-14.036-4.377-14.019-4.394Q-13.957-4.459-13.920-4.626Q-13.882-4.794-13.844-5.036L-13.578-5.036",[1545],[1533,1593,1594,1597],{"fill":1549,"stroke":1550,"style":1551},[1541,1595],{"d":1596},"M53.062-58.754h51.215V-71.67H53.062Z",[1533,1598,1599,1605],{"fill":1535,"stroke":1557},[1533,1600,1602],{"transform":1601},"translate(95.923 -58.797)",[1541,1603],{"d":1563,"fill":1535,"stroke":1535,"className":1604,"style":1565},[1545],[1533,1606,1607],{"transform":1601},[1541,1608],{"d":1609,"fill":1535,"stroke":1535,"className":1610,"style":1572},"M-16.316-4.281Q-16.196-4.124-16.005-4.025Q-15.813-3.925-15.598-3.886Q-15.383-3.847-15.160-3.847Q-14.863-3.847-14.668-4.002Q-14.473-4.158-14.383-4.412Q-14.292-4.667-14.292-4.951Q-14.292-5.245-14.384-5.496Q-14.477-5.747-14.675-5.903Q-14.873-6.058-15.167-6.058L-15.683-6.058Q-15.711-6.058-15.736-6.084Q-15.762-6.109-15.762-6.133L-15.762-6.205Q-15.762-6.236-15.736-6.258Q-15.711-6.280-15.683-6.280L-15.242-6.311Q-14.880-6.311-14.660-6.668Q-14.439-7.026-14.439-7.415Q-14.439-7.743-14.634-7.947Q-14.829-8.150-15.160-8.150Q-15.447-8.150-15.700-8.066Q-15.953-7.983-16.117-7.795Q-15.970-7.795-15.870-7.680Q-15.769-7.566-15.769-7.415Q-15.769-7.265-15.875-7.155Q-15.981-7.046-16.138-7.046Q-16.299-7.046-16.408-7.155Q-16.517-7.265-16.517-7.415Q-16.517-7.740-16.309-7.959Q-16.100-8.177-15.784-8.280Q-15.468-8.382-15.160-8.382Q-14.842-8.382-14.514-8.278Q-14.186-8.174-13.959-7.952Q-13.732-7.730-13.732-7.415Q-13.732-6.981-14.019-6.656Q-14.306-6.332-14.740-6.185Q-14.429-6.120-14.149-5.954Q-13.868-5.788-13.691-5.530Q-13.513-5.272-13.513-4.951Q-13.513-4.541-13.757-4.231Q-14.002-3.922-14.383-3.758Q-14.764-3.594-15.160-3.594Q-15.529-3.594-15.887-3.707Q-16.244-3.819-16.488-4.069Q-16.733-4.318-16.733-4.688Q-16.733-4.859-16.616-4.971Q-16.500-5.084-16.329-5.084Q-16.220-5.084-16.129-5.033Q-16.039-4.982-15.984-4.889Q-15.929-4.797-15.929-4.688Q-15.929-4.520-16.042-4.401Q-16.155-4.281-16.316-4.281",[1545],[1533,1612,1614],{"transform":1613},"translate(-37.91 -28.975)",[1541,1615],{"d":1616,"fill":1535,"stroke":1535,"className":1617,"style":1546},"M-21.644-6.929Q-21.644-7.433-21.388-7.865Q-21.132-8.296-20.696-8.548Q-20.261-8.800-19.761-8.800Q-19.374-8.800-19.032-8.656Q-18.691-8.511-18.429-8.250Q-18.167-7.988-18.025-7.652Q-17.882-7.316-17.882-6.929Q-17.882-6.437-18.146-6.027Q-18.409-5.617-18.839-5.386Q-19.269-5.156-19.761-5.156Q-20.253-5.156-20.687-5.388Q-21.120-5.621-21.382-6.029Q-21.644-6.437-21.644-6.929M-19.761-5.433Q-19.304-5.433-19.052-5.656Q-18.800-5.879-18.712-6.230Q-18.624-6.582-18.624-7.027Q-18.624-7.457-18.718-7.795Q-18.812-8.132-19.066-8.339Q-19.320-8.546-19.761-8.546Q-20.409-8.546-20.653-8.130Q-20.898-7.714-20.898-7.027Q-20.898-6.582-20.810-6.230Q-20.722-5.879-20.470-5.656Q-20.218-5.433-19.761-5.433M-16.773-6.195L-16.773-8.386L-17.476-8.386L-17.476-8.640Q-17.120-8.640-16.878-8.873Q-16.636-9.105-16.525-9.453Q-16.413-9.800-16.413-10.156L-16.132-10.156L-16.132-8.683L-14.956-8.683L-14.956-8.386L-16.132-8.386L-16.132-6.211Q-16.132-5.890-16.013-5.662Q-15.894-5.433-15.612-5.433Q-15.433-5.433-15.316-5.556Q-15.198-5.679-15.146-5.859Q-15.093-6.039-15.093-6.211L-15.093-6.683L-14.812-6.683L-14.812-6.195Q-14.812-5.941-14.917-5.701Q-15.023-5.461-15.220-5.308Q-15.417-5.156-15.675-5.156Q-15.991-5.156-16.243-5.279Q-16.495-5.402-16.634-5.636Q-16.773-5.871-16.773-6.195M-12.163-5.234L-14.019-5.234L-14.019-5.531Q-13.745-5.531-13.577-5.578Q-13.409-5.625-13.409-5.793L-13.409-9.953Q-13.409-10.168-13.472-10.263Q-13.534-10.359-13.653-10.380Q-13.773-10.402-14.019-10.402L-14.019-10.699L-12.796-10.785L-12.796-8.082Q-12.671-8.293-12.484-8.443Q-12.296-8.593-12.070-8.677Q-11.843-8.761-11.597-8.761Q-10.429-8.761-10.429-7.683L-10.429-5.793Q-10.429-5.625-10.259-5.578Q-10.089-5.531-9.820-5.531L-9.820-5.234L-11.675-5.234L-11.675-5.531Q-11.402-5.531-11.234-5.578Q-11.066-5.625-11.066-5.793L-11.066-7.668Q-11.066-8.050-11.187-8.279Q-11.308-8.507-11.659-8.507Q-11.972-8.507-12.226-8.345Q-12.480-8.183-12.626-7.914Q-12.773-7.644-12.773-7.347L-12.773-5.793Q-12.773-5.625-12.603-5.578Q-12.433-5.531-12.163-5.531L-12.163-5.234M-9.374-6.988Q-9.374-7.468-9.142-7.884Q-8.909-8.300-8.499-8.550Q-8.089-8.800-7.612-8.800Q-6.882-8.800-6.484-8.359Q-6.085-7.918-6.085-7.187Q-6.085-7.082-6.179-7.058L-8.628-7.058L-8.628-6.988Q-8.628-6.578-8.507-6.222Q-8.386-5.867-8.114-5.650Q-7.843-5.433-7.413-5.433Q-7.050-5.433-6.753-5.662Q-6.456-5.890-6.355-6.242Q-6.347-6.289-6.261-6.304L-6.179-6.304Q-6.085-6.277-6.085-6.195Q-6.085-6.187-6.093-6.156Q-6.155-5.929-6.294-5.746Q-6.433-5.562-6.624-5.429Q-6.816-5.296-7.034-5.226Q-7.253-5.156-7.491-5.156Q-7.862-5.156-8.200-5.293Q-8.538-5.429-8.806-5.681Q-9.073-5.933-9.224-6.273Q-9.374-6.613-9.374-6.988M-8.620-7.296L-6.659-7.296Q-6.659-7.601-6.761-7.892Q-6.862-8.183-7.079-8.365Q-7.296-8.546-7.612-8.546Q-7.913-8.546-8.144-8.359Q-8.374-8.171-8.497-7.880Q-8.620-7.589-8.620-7.296M-3.589-5.234L-5.570-5.234L-5.570-5.531Q-5.300-5.531-5.132-5.576Q-4.964-5.621-4.964-5.793L-4.964-7.929Q-4.964-8.144-5.027-8.240Q-5.089-8.336-5.206-8.357Q-5.323-8.379-5.570-8.379L-5.570-8.675L-4.402-8.761L-4.402-7.976Q-4.323-8.187-4.171-8.373Q-4.019-8.558-3.820-8.660Q-3.620-8.761-3.394-8.761Q-3.148-8.761-2.956-8.617Q-2.765-8.472-2.765-8.242Q-2.765-8.086-2.870-7.976Q-2.976-7.867-3.132-7.867Q-3.288-7.867-3.398-7.976Q-3.507-8.086-3.507-8.242Q-3.507-8.402-3.402-8.507Q-3.726-8.507-3.941-8.279Q-4.155-8.050-4.251-7.711Q-4.347-7.371-4.347-7.066L-4.347-5.793Q-4.347-5.625-4.120-5.578Q-3.894-5.531-3.589-5.531",[1545],[1533,1619,1622,1625],{"fill":1620,"style":1621},"var(--tk-soft-neutral)","stroke-width:.8",[1541,1623],{"d":1624},"M-35.938-30.585H38.04V-43.39h-73.977Z",[1533,1626,1627,1634],{"fill":1535,"stroke":1557},[1533,1628,1630],{"transform":1629},"translate(18.266 -30.35)",[1541,1631],{"d":1632,"fill":1535,"stroke":1535,"className":1633,"style":1565},"M-19.870-5.122Q-20.344-5.122-20.713-5.346Q-21.081-5.571-21.281-5.952Q-21.482-6.333-21.482-6.816Q-21.482-7.495-21.103-8.159Q-20.725-8.823-20.097-9.238Q-19.470-9.653-18.781-9.653Q-18.410-9.653-18.120-9.526Q-17.829-9.399-17.614-9.170Q-17.400-8.940-17.285-8.632Q-17.170-8.325-17.170-7.963Q-17.170-7.441-17.390-6.936Q-17.610-6.430-17.993-6.018Q-18.376-5.605-18.869-5.363Q-19.362-5.122-19.870-5.122M-19.851-5.385Q-19.406-5.385-19.038-5.688Q-18.669-5.991-18.432-6.452Q-18.195-6.914-18.069-7.426Q-17.942-7.939-17.942-8.354Q-17.942-8.789-18.159-9.091Q-18.376-9.394-18.801-9.394Q-19.387-9.394-19.826-8.894Q-20.266-8.393-20.488-7.697Q-20.710-7.002-20.710-6.425Q-20.710-5.991-20.488-5.688Q-20.266-5.385-19.851-5.385",[1545],[1533,1635,1636],{"transform":1629},[1541,1637],{"d":1638,"fill":1535,"stroke":1535,"className":1639,"style":1572},"M-13.709-3.734L-16.239-3.734L-16.239-4.014Q-15.271-4.014-15.271-4.223L-15.271-7.842Q-15.664-7.654-16.286-7.654L-16.286-7.935Q-15.869-7.935-15.505-8.036Q-15.141-8.136-14.885-8.382L-14.759-8.382Q-14.694-8.365-14.677-8.297L-14.677-4.223Q-14.677-4.014-13.709-4.014",[1545],[1533,1641,1642,1645],{"fill":1620,"style":1621},[1541,1643],{"d":1644},"M17.382-30.585h62.596V-43.39H17.382Z",[1533,1646,1647,1653],{"fill":1535,"stroke":1557},[1533,1648,1650],{"transform":1649},"translate(65.896 -30.35)",[1541,1651],{"d":1632,"fill":1535,"stroke":1535,"className":1652,"style":1565},[1545],[1533,1654,1655],{"transform":1649},[1541,1656],{"d":1657,"fill":1535,"stroke":1535,"className":1658,"style":1572},"M-13.709-3.734L-16.594-3.734L-16.594-3.936Q-16.594-3.966-16.567-3.994L-15.319-5.211Q-15.247-5.286-15.205-5.328Q-15.162-5.371-15.083-5.450Q-14.670-5.863-14.439-6.221Q-14.208-6.578-14.208-7.002Q-14.208-7.234-14.287-7.437Q-14.366-7.641-14.507-7.791Q-14.649-7.942-14.844-8.022Q-15.039-8.102-15.271-8.102Q-15.582-8.102-15.840-7.943Q-16.098-7.784-16.228-7.507L-16.208-7.507Q-16.040-7.507-15.933-7.396Q-15.825-7.285-15.825-7.121Q-15.825-6.964-15.934-6.851Q-16.044-6.738-16.208-6.738Q-16.368-6.738-16.481-6.851Q-16.594-6.964-16.594-7.121Q-16.594-7.497-16.386-7.784Q-16.177-8.071-15.842-8.227Q-15.507-8.382-15.152-8.382Q-14.728-8.382-14.348-8.224Q-13.969-8.065-13.735-7.748Q-13.501-7.432-13.501-7.002Q-13.501-6.691-13.641-6.422Q-13.781-6.154-13.986-5.949Q-14.191-5.744-14.554-5.462Q-14.916-5.180-15.025-5.084L-15.880-4.356L-15.237-4.356Q-14.974-4.356-14.685-4.358Q-14.396-4.359-14.178-4.368Q-13.959-4.377-13.942-4.394Q-13.880-4.459-13.843-4.626Q-13.805-4.794-13.767-5.036L-13.501-5.036",[1545],[1533,1660,1661,1664],{"fill":1620,"style":1621},[1541,1662],{"d":1663},"M63.646-30.585h51.215V-43.39H63.646Z",[1533,1665,1666,1672],{"fill":1535,"stroke":1557},[1533,1667,1669],{"transform":1668},"translate(106.469 -30.35)",[1541,1670],{"d":1632,"fill":1535,"stroke":1535,"className":1671,"style":1565},[1545],[1533,1673,1674],{"transform":1668},[1541,1675],{"d":1676,"fill":1535,"stroke":1535,"className":1677,"style":1572},"M-16.239-4.281Q-16.119-4.124-15.928-4.025Q-15.736-3.925-15.521-3.886Q-15.306-3.847-15.083-3.847Q-14.786-3.847-14.591-4.002Q-14.396-4.158-14.306-4.412Q-14.215-4.667-14.215-4.951Q-14.215-5.245-14.307-5.496Q-14.400-5.747-14.598-5.903Q-14.796-6.058-15.090-6.058L-15.606-6.058Q-15.634-6.058-15.659-6.084Q-15.685-6.109-15.685-6.133L-15.685-6.205Q-15.685-6.236-15.659-6.258Q-15.634-6.280-15.606-6.280L-15.165-6.311Q-14.803-6.311-14.583-6.668Q-14.362-7.026-14.362-7.415Q-14.362-7.743-14.557-7.947Q-14.752-8.150-15.083-8.150Q-15.370-8.150-15.623-8.066Q-15.876-7.983-16.040-7.795Q-15.893-7.795-15.793-7.680Q-15.692-7.566-15.692-7.415Q-15.692-7.265-15.798-7.155Q-15.904-7.046-16.061-7.046Q-16.222-7.046-16.331-7.155Q-16.440-7.265-16.440-7.415Q-16.440-7.740-16.232-7.959Q-16.023-8.177-15.707-8.280Q-15.391-8.382-15.083-8.382Q-14.765-8.382-14.437-8.278Q-14.109-8.174-13.882-7.952Q-13.655-7.730-13.655-7.415Q-13.655-6.981-13.942-6.656Q-14.229-6.332-14.663-6.185Q-14.352-6.120-14.072-5.954Q-13.791-5.788-13.614-5.530Q-13.436-5.272-13.436-4.951Q-13.436-4.541-13.680-4.231Q-13.925-3.922-14.306-3.758Q-14.687-3.594-15.083-3.594Q-15.452-3.594-15.810-3.707Q-16.167-3.819-16.411-4.069Q-16.656-4.318-16.656-4.688Q-16.656-4.859-16.539-4.971Q-16.423-5.084-16.252-5.084Q-16.143-5.084-16.052-5.033Q-15.962-4.982-15.907-4.889Q-15.852-4.797-15.852-4.688Q-15.852-4.520-15.965-4.401Q-16.078-4.281-16.239-4.281",[1545],[1541,1679],{"fill":1557,"stroke":1550,"d":1680,"style":1681},"M9.871-70.504v49.393M23.984-42.28v21.17","stroke-dasharray:3.0,3.0",[1533,1683,1684],{"fill":1550,"stroke":1550},[1533,1685,1686,1693,1700,1707,1713,1719,1725],{"fill":1550,"stroke":1557},[1533,1687,1689],{"transform":1688},"translate(20.995 -7.126)",[1541,1690],{"d":1691,"fill":1550,"stroke":1550,"className":1692,"style":1546},"M-20.987-3.929Q-20.843-3.859-20.667-3.859Q-20.523-3.859-20.413-3.998Q-20.304-4.136-20.241-4.324Q-20.179-4.511-20.136-4.713Q-20.093-4.914-20.066-5.082Q-19.839-6.242-19.804-6.441L-19.448-8.386L-20.179-8.386Q-20.273-8.414-20.273-8.515L-20.249-8.617Q-20.241-8.664-20.163-8.683L-19.394-8.683L-19.296-9.203Q-19.218-9.656-19.144-9.927Q-19.070-10.199-18.905-10.418Q-18.749-10.621-18.528-10.744Q-18.308-10.867-18.081-10.867Q-17.780-10.867-17.538-10.720Q-17.296-10.574-17.296-10.289Q-17.296-10.082-17.433-9.933Q-17.570-9.785-17.769-9.785Q-17.902-9.785-17.995-9.869Q-18.089-9.953-18.089-10.089Q-18.089-10.242-17.995-10.365Q-17.902-10.488-17.753-10.539Q-17.909-10.609-18.089-10.609Q-18.187-10.609-18.284-10.539Q-18.382-10.468-18.425-10.371Q-18.472-10.218-18.497-10.105Q-18.523-9.992-18.558-9.804Q-18.593-9.617-18.614-9.474Q-18.636-9.332-18.659-9.218L-18.761-8.683L-17.882-8.683Q-17.784-8.656-17.784-8.562L-17.812-8.457Q-17.820-8.406-17.898-8.386L-18.812-8.386L-19.171-6.449Q-19.237-6.035-19.329-5.595Q-19.421-5.156-19.593-4.685Q-19.765-4.214-20.032-3.908Q-20.300-3.601-20.675-3.601Q-20.968-3.601-21.200-3.754Q-21.433-3.906-21.433-4.179Q-21.433-4.382-21.298-4.533Q-21.163-4.683-20.960-4.683Q-20.827-4.683-20.736-4.599Q-20.644-4.515-20.644-4.379Q-20.644-4.230-20.739-4.103Q-20.835-3.976-20.987-3.929",[1545],[1533,1694,1695],{"transform":1688},[1541,1696],{"d":1697,"fill":1550,"stroke":1550,"className":1698,"style":1699},"M-17.433-3.393Q-17.433-3.548-17.330-3.663Q-17.228-3.777-17.072-3.777Q-16.967-3.777-16.894-3.711Q-16.820-3.645-16.820-3.543Q-16.820-3.373-16.964-3.255Q-16.885-3.241-16.756-3.234Q-16.627-3.226-16.443-3.226Q-16.249-3.226-16.057-3.310Q-15.865-3.393-15.728-3.543Q-15.590-3.692-15.543-3.880L-15.382-4.533Q-15.751-4.234-16.144-4.234Q-16.574-4.234-16.854-4.521Q-17.134-4.808-17.134-5.242Q-17.134-5.544-17.001-5.841Q-16.867-6.138-16.640-6.371Q-16.413-6.604-16.122-6.742Q-15.830-6.880-15.526-6.880Q-15.329-6.880-15.155-6.793Q-14.981-6.707-14.878-6.551Q-14.849-6.645-14.765-6.705Q-14.682-6.765-14.582-6.765Q-14.494-6.765-14.431-6.710Q-14.368-6.654-14.368-6.563Q-14.368-6.519-14.374-6.502L-15.045-3.815Q-15.095-3.613-15.241-3.455Q-15.388-3.296-15.591-3.198Q-15.795-3.100-16.018-3.055Q-16.240-3.009-16.448-3.009Q-16.838-3.009-17.135-3.078Q-17.433-3.147-17.433-3.393M-16.132-4.451Q-15.889-4.451-15.659-4.605Q-15.429-4.758-15.268-4.978L-14.972-6.173Q-15.001-6.302-15.080-6.417Q-15.159-6.531-15.277-6.597Q-15.394-6.663-15.537-6.663Q-15.786-6.663-15.984-6.500Q-16.182-6.338-16.320-6.074Q-16.457-5.810-16.528-5.519Q-16.598-5.227-16.598-5.002Q-16.598-4.776-16.478-4.613Q-16.358-4.451-16.132-4.451",[1545],"stroke-width:0.180",[1533,1701,1702],{"transform":1688},[1541,1703],{"d":1704,"fill":1550,"stroke":1550,"className":1705,"style":1706},"M-11.371-3.079L-13.412-3.079L-13.412-3.318Q-12.631-3.318-12.631-3.438L-12.631-5.984Q-12.809-5.909-13.013-5.879Q-13.217-5.850-13.446-5.850L-13.446-6.089Q-13.110-6.089-12.826-6.158Q-12.543-6.226-12.333-6.409L-12.228-6.409Q-12.201-6.409-12.177-6.385Q-12.152-6.360-12.152-6.333L-12.152-3.438Q-12.152-3.318-11.371-3.318",[1545],"stroke-width:0.150",[1533,1708,1709],{"transform":1688},[1541,1710],{"d":1711,"fill":1550,"stroke":1550,"className":1712,"style":1546},"M-1.669-3.875L-6.501-3.875Q-6.575-3.886-6.626-3.935Q-6.677-3.984-6.677-4.058Q-6.677-4.211-6.501-4.242L-1.669-4.242Q-1.501-4.214-1.501-4.058Q-1.501-3.902-1.669-3.875M-1.755-5.578L-6.572-7.914Q-6.677-7.953-6.677-8.074Q-6.677-8.179-6.564-8.242L-1.755-10.570Q-1.708-10.586-1.685-10.586Q-1.611-10.586-1.556-10.531Q-1.501-10.476-1.501-10.402Q-1.501-10.296-1.603-10.234L-6.068-8.074L-1.595-5.914Q-1.501-5.859-1.501-5.746Q-1.501-5.671-1.556-5.617Q-1.611-5.562-1.685-5.562Q-1.708-5.562-1.755-5.578",[1545],[1533,1714,1715],{"transform":1688},[1541,1716],{"d":1717,"fill":1550,"stroke":1550,"className":1718,"style":1546},"M2.479-3.929Q2.623-3.859 2.799-3.859Q2.943-3.859 3.053-3.998Q3.162-4.136 3.225-4.324Q3.287-4.511 3.330-4.713Q3.373-4.914 3.400-5.082Q3.627-6.242 3.662-6.441L4.018-8.386L3.287-8.386Q3.193-8.414 3.193-8.515L3.217-8.617Q3.225-8.664 3.303-8.683L4.072-8.683L4.170-9.203Q4.248-9.656 4.322-9.927Q4.396-10.199 4.561-10.418Q4.717-10.621 4.938-10.744Q5.158-10.867 5.385-10.867Q5.686-10.867 5.928-10.720Q6.170-10.574 6.170-10.289Q6.170-10.082 6.033-9.933Q5.896-9.785 5.697-9.785Q5.564-9.785 5.471-9.869Q5.377-9.953 5.377-10.089Q5.377-10.242 5.471-10.365Q5.564-10.488 5.713-10.539Q5.557-10.609 5.377-10.609Q5.279-10.609 5.182-10.539Q5.084-10.468 5.041-10.371Q4.994-10.218 4.969-10.105Q4.943-9.992 4.908-9.804Q4.873-9.617 4.852-9.474Q4.830-9.332 4.807-9.218L4.705-8.683L5.584-8.683Q5.682-8.656 5.682-8.562L5.654-8.457Q5.646-8.406 5.568-8.386L4.654-8.386L4.295-6.449Q4.229-6.035 4.137-5.595Q4.045-5.156 3.873-4.685Q3.701-4.214 3.434-3.908Q3.166-3.601 2.791-3.601Q2.498-3.601 2.266-3.754Q2.033-3.906 2.033-4.179Q2.033-4.382 2.168-4.533Q2.303-4.683 2.506-4.683Q2.639-4.683 2.730-4.599Q2.822-4.515 2.822-4.379Q2.822-4.230 2.727-4.103Q2.631-3.976 2.479-3.929",[1545],[1533,1720,1721],{"transform":1688},[1541,1722],{"d":1723,"fill":1550,"stroke":1550,"className":1724,"style":1699},"M6.113-5.242Q6.113-5.675 6.380-6.053Q6.647-6.431 7.070-6.655Q7.493-6.880 7.918-6.880Q8.231-6.880 8.501-6.749Q8.771-6.619 8.929-6.376Q9.087-6.132 9.087-5.813Q9.087-5.482 8.930-5.183Q8.773-4.884 8.510-4.656Q8.246-4.427 7.922-4.301Q7.599-4.175 7.282-4.175Q6.966-4.175 6.698-4.306Q6.430-4.436 6.272-4.678Q6.113-4.920 6.113-5.242M7.294-4.389Q7.675-4.389 7.959-4.640Q8.243-4.890 8.393-5.271Q8.542-5.652 8.542-6.009Q8.542-6.302 8.372-6.483Q8.202-6.663 7.906-6.663Q7.622-6.663 7.386-6.515Q7.150-6.367 6.991-6.128Q6.831-5.889 6.745-5.596Q6.658-5.303 6.658-5.043Q6.658-4.750 6.831-4.569Q7.004-4.389 7.294-4.389",[1545],[1533,1726,1727],{"transform":1688},[1541,1728],{"d":1729,"fill":1550,"stroke":1550,"className":1730,"style":1706},"M12.124-3.079L10.083-3.079L10.083-3.318Q10.864-3.318 10.864-3.438L10.864-5.984Q10.686-5.909 10.482-5.879Q10.278-5.850 10.049-5.850L10.049-6.089Q10.385-6.089 10.669-6.158Q10.952-6.226 11.162-6.409L11.267-6.409Q11.294-6.409 11.318-6.385Q11.343-6.360 11.343-6.333L11.343-3.438Q11.343-3.318 12.124-3.318",[1545],[1533,1732,1733,1736,1740],{"style":1621},[1541,1734],{"fill":1557,"d":1735},"M-39.523-3.47h147.381",[1541,1737],{"fill":1557,"d":1738,"style":1739},"M105.698-6.593c.468 1.874 1.51 2.759 2.56 3.123-1.05.364-2.092 1.249-2.56 3.122","stroke-linecap:round;stroke-linejoin:round",[1533,1741,1743],{"transform":1742},"translate(134.273 4.447)",[1541,1744],{"d":1745,"fill":1535,"stroke":1535,"className":1746,"style":1546},"M-21.019-6.195L-21.019-8.386L-21.722-8.386L-21.722-8.640Q-21.366-8.640-21.124-8.873Q-20.882-9.105-20.771-9.453Q-20.659-9.800-20.659-10.156L-20.378-10.156L-20.378-8.683L-19.202-8.683L-19.202-8.386L-20.378-8.386L-20.378-6.211Q-20.378-5.890-20.259-5.662Q-20.140-5.433-19.859-5.433Q-19.679-5.433-19.562-5.556Q-19.445-5.679-19.392-5.859Q-19.339-6.039-19.339-6.211L-19.339-6.683L-19.058-6.683L-19.058-6.195Q-19.058-5.941-19.163-5.701Q-19.269-5.461-19.466-5.308Q-19.663-5.156-19.921-5.156Q-20.237-5.156-20.489-5.279Q-20.741-5.402-20.880-5.636Q-21.019-5.871-21.019-6.195M-16.480-5.234L-18.257-5.234L-18.257-5.531Q-17.984-5.531-17.816-5.578Q-17.648-5.625-17.648-5.793L-17.648-7.929Q-17.648-8.144-17.704-8.240Q-17.761-8.336-17.874-8.357Q-17.987-8.379-18.234-8.379L-18.234-8.675L-17.034-8.761L-17.034-5.793Q-17.034-5.625-16.888-5.578Q-16.741-5.531-16.480-5.531L-16.480-5.234M-17.921-10.156Q-17.921-10.347-17.786-10.478Q-17.652-10.609-17.456-10.609Q-17.335-10.609-17.232-10.546Q-17.128-10.484-17.066-10.380Q-17.003-10.277-17.003-10.156Q-17.003-9.961-17.134-9.826Q-17.265-9.691-17.456-9.691Q-17.655-9.691-17.788-9.824Q-17.921-9.957-17.921-10.156M-14.050-5.234L-15.905-5.234L-15.905-5.531Q-15.632-5.531-15.464-5.578Q-15.296-5.625-15.296-5.793L-15.296-7.929Q-15.296-8.144-15.359-8.240Q-15.421-8.336-15.540-8.357Q-15.659-8.379-15.905-8.379L-15.905-8.675L-14.714-8.761L-14.714-8.027Q-14.601-8.242-14.407-8.410Q-14.214-8.578-13.976-8.670Q-13.737-8.761-13.484-8.761Q-12.523-8.761-12.347-8.050Q-12.163-8.379-11.835-8.570Q-11.507-8.761-11.128-8.761Q-9.952-8.761-9.952-7.683L-9.952-5.793Q-9.952-5.625-9.784-5.578Q-9.616-5.531-9.347-5.531L-9.347-5.234L-11.202-5.234L-11.202-5.531Q-10.929-5.531-10.761-5.576Q-10.593-5.621-10.593-5.793L-10.593-7.668Q-10.593-8.054-10.718-8.281Q-10.843-8.507-11.195-8.507Q-11.499-8.507-11.755-8.345Q-12.011-8.183-12.159-7.914Q-12.308-7.644-12.308-7.347L-12.308-5.793Q-12.308-5.625-12.138-5.578Q-11.968-5.531-11.698-5.531L-11.698-5.234L-13.554-5.234L-13.554-5.531Q-13.280-5.531-13.112-5.578Q-12.945-5.625-12.945-5.793L-12.945-7.668Q-12.945-8.054-13.070-8.281Q-13.195-8.507-13.546-8.507Q-13.851-8.507-14.107-8.345Q-14.362-8.183-14.511-7.914Q-14.659-7.644-14.659-7.347L-14.659-5.793Q-14.659-5.625-14.489-5.578Q-14.320-5.531-14.050-5.531L-14.050-5.234M-8.902-6.988Q-8.902-7.468-8.669-7.884Q-8.437-8.300-8.027-8.550Q-7.616-8.800-7.140-8.800Q-6.409-8.800-6.011-8.359Q-5.612-7.918-5.612-7.187Q-5.612-7.082-5.706-7.058L-8.155-7.058L-8.155-6.988Q-8.155-6.578-8.034-6.222Q-7.913-5.867-7.642-5.650Q-7.370-5.433-6.941-5.433Q-6.577-5.433-6.280-5.662Q-5.984-5.890-5.882-6.242Q-5.874-6.289-5.788-6.304L-5.706-6.304Q-5.612-6.277-5.612-6.195Q-5.612-6.187-5.620-6.156Q-5.683-5.929-5.821-5.746Q-5.960-5.562-6.152-5.429Q-6.343-5.296-6.562-5.226Q-6.780-5.156-7.019-5.156Q-7.390-5.156-7.728-5.293Q-8.066-5.429-8.333-5.681Q-8.601-5.933-8.751-6.273Q-8.902-6.613-8.902-6.988M-8.148-7.296L-6.187-7.296Q-6.187-7.601-6.288-7.892Q-6.390-8.183-6.607-8.365Q-6.823-8.546-7.140-8.546Q-7.441-8.546-7.671-8.359Q-7.902-8.171-8.025-7.880Q-8.148-7.589-8.148-7.296",[1545],[1748,1749,1752,1753,1768,1769,1784],"figcaption",{"className":1750},[1751],"tikz-cap","Earliest-finish-first stays ahead. Greedy's ",[424,1754,1756],{"className":1755},[427],[424,1757,1759],{"className":1758,"ariaHidden":432},[431],[424,1760,1762,1765],{"className":1761},[436],[424,1763],{"className":1764,"style":1496},[440],[424,1766,1501],{"className":1767,"style":1500},[445,446],"-th interval (green) finishes no later than the ",[424,1770,1772],{"className":1771},[427],[424,1773,1775],{"className":1774,"ariaHidden":432},[431],[424,1776,1778,1781],{"className":1777},[436],[424,1779],{"className":1780,"style":1496},[440],[424,1782,1501],{"className":1783,"style":1500},[445,446],"-th interval of any other compatible schedule (gray), so greedy always has at least as much room left.",[381,1786,1787,1788,1827],{},"The output is a maximum-size set of mutually compatible intervals, computed in\n",[424,1789,1791],{"className":1790},[427],[424,1792,1794],{"className":1793,"ariaHidden":432},[431],[424,1795,1797,1800,1803,1806,1809,1812,1818,1821,1824],{"className":1796},[436],[424,1798],{"className":1799,"style":479},[440],[424,1801,696],{"className":1802},[445,695],[424,1804,700],{"className":1805},[483],[424,1807,447],{"className":1808},[445,446],[424,1810],{"className":1811,"style":551},[550],[424,1813,1815],{"className":1814},[710],[424,1816,716],{"className":1817,"style":715},[445,714],[424,1819],{"className":1820,"style":551},[550],[424,1822,447],{"className":1823},[445,446],[424,1825,599],{"className":1826},[598],". Everything below reuses this skeleton (sort, scan, exchange-argument\nproof) with a different key and a different objective.",[416,1829,1831],{"id":1830},"interval-partitioning-minimize-the-rooms","Interval partitioning: minimize the rooms",[381,1833,1834,1835,1838,1839,1842,1843],{},"Now flip the question. Instead of dropping intervals to fit on one machine, we\nkeep ",[399,1836,1837],{},"all"," of them and ask for the fewest ",[385,1840,1841],{},"machines"," (rooms, colors,\nfrequencies) needed to run them, where two intervals sharing a machine must be\ncompatible. Phrased as graph coloring: color the intervals so that any two\noverlapping intervals get different colors, using the minimum number of\ncolors.",[606,1844,1845],{},[394,1846,1850],{"href":1847,"ariaDescribedBy":1848,"dataFootnoteRef":376,"id":1849},"#user-content-fn-skiena-sched",[612],"user-content-fnref-skiena-sched","2",[381,1852,1853,1854,1857,1858,1875,1876,1891,1892,1989],{},"The right invariant is ",[385,1855,1856],{},"depth",". Define the depth at a point ",[424,1859,1861],{"className":1860},[427],[424,1862,1864],{"className":1863,"ariaHidden":432},[431],[424,1865,1867,1871],{"className":1866},[436],[424,1868],{"className":1869,"style":1870},[440],"height:0.6151em;",[424,1872,1874],{"className":1873},[445,446],"t"," as the number\nof intervals containing ",[424,1877,1879],{"className":1878},[427],[424,1880,1882],{"className":1881,"ariaHidden":432},[431],[424,1883,1885,1888],{"className":1884},[436],[424,1886],{"className":1887,"style":1870},[440],[424,1889,1874],{"className":1890},[445,446],", and let ",[424,1893,1895],{"className":1894},[427],[424,1896,1898,1918],{"className":1897,"ariaHidden":432},[431],[424,1899,1901,1904,1908,1911,1915],{"className":1900},[436],[424,1902],{"className":1903,"style":1496},[440],[424,1905,1907],{"className":1906},[445,446],"d",[424,1909],{"className":1910,"style":1142},[550],[424,1912,1914],{"className":1913},[1146],"=",[424,1916],{"className":1917,"style":1142},[550],[424,1919,1921,1924,1970,1973,1980,1983,1986],{"className":1920},[436],[424,1922],{"className":1923,"style":479},[440],[424,1925,1927,1934],{"className":1926},[710],[424,1928,1930],{"className":1929},[710],[424,1931,1933],{"className":1932},[445,714],"max",[424,1935,1937],{"className":1936},[495],[424,1938,1940,1962],{"className":1939},[499,500],[424,1941,1943,1959],{"className":1942},[504],[424,1944,1947],{"className":1945,"style":1946},[508],"height:0.2806em;",[424,1948,1950,1953],{"style":1949},"top:-2.55em;margin-right:0.05em;",[424,1951],{"className":1952,"style":517},[516],[424,1954,1956],{"className":1955},[521,522,523,524],[424,1957,1874],{"className":1958},[445,446,524],[424,1960,532],{"className":1961},[531],[424,1963,1965],{"className":1964},[504],[424,1966,1968],{"className":1967,"style":539},[508],[424,1969],{},[424,1971],{"className":1972,"style":551},[550],[424,1974,1977],{"className":1975},[445,1976],"text",[424,1978,1856],{"className":1979},[445],[424,1981,700],{"className":1982},[483],[424,1984,1874],{"className":1985},[445,446],[424,1987,599],{"className":1988},[598]," be the maximum\nover all points. Depth is a hard lower bound on rooms, and greedy matches it.",[1520,1991,1993,2073],{"className":1992},[1523,1524],[1526,1994,1998],{"xmlns":1528,"width":1995,"height":1996,"viewBox":1997},"412.067","159.138","-75 -75 309.050 119.354",[1533,1999,2000,2003,2006,2014,2018,2025,2028,2035,2038,2045,2049],{"stroke":1535,"style":1536},[1541,2001],{"fill":1557,"d":2002},"M-55.84 34.74h259.765",[1541,2004],{"stroke":1557,"d":2005},"m205.925 34.74-3.2-1.6 1.2 1.6-1.2 1.6",[1533,2007,2009],{"transform":2008},"translate(265.298 14.392)",[1541,2010],{"d":2011,"fill":1535,"stroke":1535,"className":2012,"style":2013},"M-54.904 22.287L-54.904 19.795L-55.669 19.795L-55.669 19.536Q-55.264 19.536-54.998 19.270Q-54.733 19.004-54.612 18.604Q-54.491 18.204-54.491 17.822L-54.201 17.822L-54.201 19.479L-52.913 19.479L-52.913 19.795L-54.201 19.795L-54.201 22.252Q-54.201 22.621-54.076 22.895Q-53.950 23.170-53.625 23.170Q-53.326 23.170-53.188 22.876Q-53.049 22.581-53.049 22.252L-53.049 21.729L-52.764 21.729L-52.764 22.287Q-52.764 22.564-52.874 22.836Q-52.984 23.109-53.197 23.284Q-53.410 23.460-53.691 23.460Q-54.051 23.460-54.324 23.322Q-54.596 23.183-54.750 22.920Q-54.904 22.656-54.904 22.287M-49.956 23.359L-51.942 23.359L-51.942 23.043Q-51.634 23.043-51.443 22.990Q-51.252 22.937-51.252 22.748L-51.252 20.300Q-51.252 20.054-51.318 19.949Q-51.384 19.843-51.509 19.819Q-51.634 19.795-51.907 19.795L-51.907 19.479L-50.575 19.382L-50.575 22.748Q-50.575 22.942-50.411 22.992Q-50.246 23.043-49.956 23.043L-49.956 23.359M-51.555 17.835Q-51.555 17.629-51.406 17.479Q-51.257 17.330-51.054 17.330Q-50.923 17.330-50.806 17.400Q-50.690 17.470-50.619 17.587Q-50.549 17.703-50.549 17.835Q-50.549 18.037-50.698 18.187Q-50.848 18.336-51.054 18.336Q-51.257 18.336-51.406 18.187Q-51.555 18.037-51.555 17.835M-47.297 23.359L-49.384 23.359L-49.384 23.043Q-49.077 23.043-48.886 22.990Q-48.694 22.937-48.694 22.748L-48.694 20.300Q-48.694 20.059-48.765 19.951Q-48.835 19.843-48.969 19.819Q-49.103 19.795-49.384 19.795L-49.384 19.479L-48.044 19.382L-48.044 20.217Q-47.846 19.839-47.486 19.610Q-47.126 19.382-46.704 19.382Q-45.658 19.382-45.473 20.191Q-45.271 19.821-44.913 19.602Q-44.555 19.382-44.137 19.382Q-43.513 19.382-43.188 19.676Q-42.863 19.971-42.863 20.595L-42.863 22.748Q-42.863 22.937-42.670 22.990Q-42.476 23.043-42.169 23.043L-42.169 23.359L-44.256 23.359L-44.256 23.043Q-43.948 23.043-43.755 22.990Q-43.562 22.937-43.562 22.748L-43.562 20.630Q-43.562 20.199-43.689 19.920Q-43.817 19.641-44.203 19.641Q-44.546 19.641-44.830 19.830Q-45.113 20.019-45.269 20.331Q-45.425 20.643-45.425 20.990L-45.425 22.748Q-45.425 22.937-45.234 22.990Q-45.043 23.043-44.735 23.043L-44.735 23.359L-46.822 23.359L-46.822 23.043Q-46.510 23.043-46.319 22.990Q-46.128 22.937-46.128 22.748L-46.128 20.630Q-46.128 20.371-46.172 20.149Q-46.216 19.927-46.361 19.784Q-46.506 19.641-46.765 19.641Q-47.301 19.641-47.646 20.048Q-47.991 20.454-47.991 20.990L-47.991 22.748Q-47.991 22.937-47.798 22.990Q-47.605 23.043-47.297 23.043L-47.297 23.359M-39.668 23.460Q-40.226 23.460-40.699 23.177Q-41.171 22.893-41.446 22.416Q-41.720 21.940-41.720 21.386Q-41.720 20.990-41.578 20.615Q-41.435 20.239-41.178 19.951Q-40.921 19.663-40.562 19.494Q-40.204 19.325-39.800 19.325Q-39.255 19.325-38.884 19.562Q-38.512 19.799-38.326 20.217Q-38.139 20.634-38.139 21.171Q-38.139 21.223-38.163 21.261Q-38.187 21.298-38.236 21.298L-40.907 21.298L-40.907 21.377Q-40.907 22.124-40.595 22.647Q-40.283 23.170-39.585 23.170Q-39.180 23.170-38.860 22.913Q-38.539 22.656-38.416 22.252Q-38.398 22.172-38.315 22.172L-38.236 22.172Q-38.196 22.172-38.167 22.203Q-38.139 22.234-38.139 22.278L-38.139 22.313Q-38.244 22.656-38.466 22.915Q-38.688 23.174-39.002 23.317Q-39.317 23.460-39.668 23.460M-40.899 21.047L-38.785 21.047Q-38.785 20.779-38.838 20.533Q-38.890 20.287-39.011 20.065Q-39.132 19.843-39.330 19.716Q-39.528 19.588-39.800 19.588Q-40.143 19.588-40.395 19.813Q-40.648 20.037-40.773 20.375Q-40.899 20.713-40.899 21.047",[1545],"stroke-width:0.270",[1541,2015],{"fill":1557,"d":2016,"style":2017},"M-47.304-44.928h65.441M35.209-44.928h62.596M114.876-44.928h73.978","stroke-width:3",[1533,2019,2021],{"transform":2020},"translate(-6.43 -65.211)",[1541,2022],{"d":2023,"fill":1535,"stroke":1535,"className":2024,"style":2013},"M-52.843 23.359L-55.497 23.359L-55.497 23.043Q-54.579 23.043-54.579 22.748L-54.579 17.822Q-54.579 17.527-55.497 17.527L-55.497 17.211L-52.636 17.211Q-52.263 17.211-51.839 17.310Q-51.415 17.409-51.041 17.609Q-50.668 17.809-50.433 18.119Q-50.197 18.428-50.197 18.841Q-50.197 19.211-50.424 19.512Q-50.650 19.813-51.002 20.010Q-51.353 20.208-51.718 20.300Q-50.799 20.626-50.646 21.461L-50.540 22.252Q-50.496 22.586-50.452 22.779Q-50.408 22.972-50.279 23.135Q-50.149 23.297-49.916 23.297Q-49.644 23.297-49.501 23.047Q-49.358 22.797-49.358 22.493Q-49.358 22.454-49.325 22.425Q-49.292 22.397-49.253 22.397L-49.169 22.397Q-49.121 22.397-49.097 22.430Q-49.072 22.463-49.072 22.511Q-49.072 22.748-49.173 22.996Q-49.275 23.245-49.470 23.401Q-49.666 23.557-49.916 23.557Q-50.575 23.557-51.035 23.232Q-51.494 22.906-51.494 22.269L-51.494 21.478Q-51.494 21.179-51.656 20.933Q-51.819 20.687-52.083 20.551Q-52.346 20.415-52.645 20.415L-53.761 20.415L-53.761 22.748Q-53.761 23.043-52.843 23.043L-52.843 23.359M-53.761 17.822L-53.761 20.155L-52.755 20.155Q-52.004 20.155-51.577 19.857Q-51.151 19.558-51.151 18.841Q-51.151 18.108-51.571 17.817Q-51.990 17.527-52.755 17.527L-53.300 17.527Q-53.550 17.527-53.656 17.576Q-53.761 17.624-53.761 17.822M-45.131 23.359L-48.163 23.359L-48.163 23.043Q-47.011 23.043-47.011 22.748L-47.011 18.024Q-47.499 18.257-48.220 18.257L-48.220 17.941Q-47.090 17.941-46.528 17.365L-46.383 17.365Q-46.348 17.365-46.315 17.398Q-46.282 17.431-46.282 17.466L-46.282 22.748Q-46.282 23.043-45.131 23.043",[1545],[1541,2026],{"fill":1557,"d":2027,"style":2017},"M-16.006-16.475H63.66M80.733-16.475h91.049",[1533,2029,2031],{"transform":2030},"translate(24.867 -36.759)",[1541,2032],{"d":2033,"fill":1535,"stroke":1535,"className":2034,"style":2013},"M-52.843 23.359L-55.497 23.359L-55.497 23.043Q-54.579 23.043-54.579 22.748L-54.579 17.822Q-54.579 17.527-55.497 17.527L-55.497 17.211L-52.636 17.211Q-52.263 17.211-51.839 17.310Q-51.415 17.409-51.041 17.609Q-50.668 17.809-50.433 18.119Q-50.197 18.428-50.197 18.841Q-50.197 19.211-50.424 19.512Q-50.650 19.813-51.002 20.010Q-51.353 20.208-51.718 20.300Q-50.799 20.626-50.646 21.461L-50.540 22.252Q-50.496 22.586-50.452 22.779Q-50.408 22.972-50.279 23.135Q-50.149 23.297-49.916 23.297Q-49.644 23.297-49.501 23.047Q-49.358 22.797-49.358 22.493Q-49.358 22.454-49.325 22.425Q-49.292 22.397-49.253 22.397L-49.169 22.397Q-49.121 22.397-49.097 22.430Q-49.072 22.463-49.072 22.511Q-49.072 22.748-49.173 22.996Q-49.275 23.245-49.470 23.401Q-49.666 23.557-49.916 23.557Q-50.575 23.557-51.035 23.232Q-51.494 22.906-51.494 22.269L-51.494 21.478Q-51.494 21.179-51.656 20.933Q-51.819 20.687-52.083 20.551Q-52.346 20.415-52.645 20.415L-53.761 20.415L-53.761 22.748Q-53.761 23.043-52.843 23.043L-52.843 23.359M-53.761 17.822L-53.761 20.155L-52.755 20.155Q-52.004 20.155-51.577 19.857Q-51.151 19.558-51.151 18.841Q-51.151 18.108-51.571 17.817Q-51.990 17.527-52.755 17.527L-53.300 17.527Q-53.550 17.527-53.656 17.576Q-53.761 17.624-53.761 17.822M-45.131 23.359L-48.580 23.359L-48.580 23.126Q-48.580 23.113-48.549 23.082L-47.095 21.505Q-46.629 21.008-46.376 20.703Q-46.124 20.397-45.933 19.986Q-45.741 19.575-45.741 19.136Q-45.741 18.547-46.064 18.114Q-46.387 17.681-46.967 17.681Q-47.231 17.681-47.477 17.791Q-47.723 17.901-47.899 18.088Q-48.075 18.275-48.172 18.525L-48.092 18.525Q-47.890 18.525-47.747 18.661Q-47.605 18.797-47.605 19.013Q-47.605 19.219-47.747 19.358Q-47.890 19.496-48.092 19.496Q-48.295 19.496-48.437 19.353Q-48.580 19.211-48.580 19.013Q-48.580 18.551-48.343 18.178Q-48.106 17.804-47.706 17.585Q-47.306 17.365-46.858 17.365Q-46.335 17.365-45.880 17.580Q-45.425 17.796-45.153 18.195Q-44.880 18.595-44.880 19.136Q-44.880 19.531-45.051 19.885Q-45.223 20.239-45.489 20.518Q-45.755 20.797-46.205 21.182Q-46.655 21.566-46.735 21.641L-47.758 22.603L-46.941 22.603Q-46.291 22.603-45.853 22.592Q-45.416 22.581-45.385 22.559Q-45.315 22.476-45.260 22.236Q-45.205 21.997-45.166 21.729L-44.880 21.729",[1545],[1541,2036],{"fill":1557,"d":2037,"style":2017},"M46.59 11.978h85.358",[1533,2039,2041],{"transform":2040},"translate(87.464 -8.306)",[1541,2042],{"d":2043,"fill":1535,"stroke":1535,"className":2044,"style":2013},"M-52.843 23.359L-55.497 23.359L-55.497 23.043Q-54.579 23.043-54.579 22.748L-54.579 17.822Q-54.579 17.527-55.497 17.527L-55.497 17.211L-52.636 17.211Q-52.263 17.211-51.839 17.310Q-51.415 17.409-51.041 17.609Q-50.668 17.809-50.433 18.119Q-50.197 18.428-50.197 18.841Q-50.197 19.211-50.424 19.512Q-50.650 19.813-51.002 20.010Q-51.353 20.208-51.718 20.300Q-50.799 20.626-50.646 21.461L-50.540 22.252Q-50.496 22.586-50.452 22.779Q-50.408 22.972-50.279 23.135Q-50.149 23.297-49.916 23.297Q-49.644 23.297-49.501 23.047Q-49.358 22.797-49.358 22.493Q-49.358 22.454-49.325 22.425Q-49.292 22.397-49.253 22.397L-49.169 22.397Q-49.121 22.397-49.097 22.430Q-49.072 22.463-49.072 22.511Q-49.072 22.748-49.173 22.996Q-49.275 23.245-49.470 23.401Q-49.666 23.557-49.916 23.557Q-50.575 23.557-51.035 23.232Q-51.494 22.906-51.494 22.269L-51.494 21.478Q-51.494 21.179-51.656 20.933Q-51.819 20.687-52.083 20.551Q-52.346 20.415-52.645 20.415L-53.761 20.415L-53.761 22.748Q-53.761 23.043-52.843 23.043L-52.843 23.359M-53.761 17.822L-53.761 20.155L-52.755 20.155Q-52.004 20.155-51.577 19.857Q-51.151 19.558-51.151 18.841Q-51.151 18.108-51.571 17.817Q-51.990 17.527-52.755 17.527L-53.300 17.527Q-53.550 17.527-53.656 17.576Q-53.761 17.624-53.761 17.822M-48.136 22.638L-48.180 22.638Q-47.978 22.955-47.591 23.113Q-47.205 23.271-46.778 23.271Q-46.242 23.271-46.003 22.836Q-45.763 22.401-45.763 21.821Q-45.763 21.241-46.009 20.801Q-46.256 20.362-46.787 20.362L-47.407 20.362Q-47.433 20.362-47.466 20.333Q-47.499 20.305-47.499 20.283L-47.499 20.182Q-47.499 20.151-47.471 20.127Q-47.442 20.103-47.407 20.103L-46.888 20.063Q-46.423 20.063-46.176 19.591Q-45.930 19.118-45.930 18.600Q-45.930 18.173-46.143 17.899Q-46.357 17.624-46.778 17.624Q-47.121 17.624-47.446 17.754Q-47.772 17.883-47.956 18.138L-47.930 18.138Q-47.728 18.138-47.591 18.279Q-47.455 18.420-47.455 18.617Q-47.455 18.815-47.589 18.949Q-47.723 19.083-47.921 19.083Q-48.123 19.083-48.262 18.949Q-48.400 18.815-48.400 18.617Q-48.400 18.028-47.897 17.697Q-47.394 17.365-46.778 17.365Q-46.401 17.365-45.998 17.505Q-45.596 17.646-45.328 17.925Q-45.060 18.204-45.060 18.600Q-45.060 19.149-45.414 19.586Q-45.768 20.024-46.308 20.208Q-45.917 20.287-45.572 20.511Q-45.227 20.735-45.016 21.076Q-44.805 21.417-44.805 21.812Q-44.805 22.194-44.968 22.517Q-45.131 22.840-45.423 23.076Q-45.715 23.311-46.062 23.434Q-46.409 23.557-46.778 23.557Q-47.227 23.557-47.657 23.396Q-48.088 23.236-48.369 22.909Q-48.651 22.581-48.651 22.124Q-48.651 21.909-48.503 21.766Q-48.356 21.623-48.136 21.623Q-47.925 21.623-47.780 21.768Q-47.635 21.913-47.635 22.124Q-47.635 22.335-47.783 22.487Q-47.930 22.638-48.136 22.638",[1545],[1541,2046],{"fill":1557,"stroke":1550,"d":2047,"style":2048},"M55.125 34.74v-93.894","stroke-dasharray:3.0,3.0;stroke-width:1",[1533,2050,2051],{"fill":1550,"stroke":1550},[1533,2052,2054,2061,2067],{"fill":1550,"stroke":1557,"fontSize":2053},"9",[1533,2055,2057],{"transform":2056},"translate(100.09 -86.046)",[1541,2058],{"d":2059,"fill":1550,"stroke":1550,"className":2060,"style":2013},"M-54.218 23.460Q-54.614 23.460-54.900 23.256Q-55.185 23.051-55.332 22.717Q-55.480 22.383-55.480 21.992Q-55.480 21.557-55.306 21.096Q-55.132 20.634-54.820 20.243Q-54.508 19.852-54.098 19.617Q-53.687 19.382-53.247 19.382Q-52.979 19.382-52.762 19.520Q-52.544 19.659-52.412 19.905L-51.907 17.888Q-51.872 17.738-51.872 17.664Q-51.872 17.527-52.439 17.527Q-52.535 17.527-52.535 17.409Q-52.535 17.352-52.505 17.281Q-52.474 17.211-52.412 17.211L-51.186 17.114Q-51.133 17.114-51.103 17.143Q-51.072 17.172-51.072 17.220L-51.072 17.255L-52.355 22.405Q-52.355 22.463-52.384 22.594Q-52.412 22.726-52.412 22.801Q-52.412 23.196-52.149 23.196Q-51.863 23.196-51.729 22.873Q-51.595 22.550-51.476 22.045Q-51.467 22.014-51.443 21.990Q-51.419 21.966-51.384 21.966L-51.278 21.966Q-51.230 21.966-51.208 21.999Q-51.186 22.032-51.186 22.080Q-51.300 22.511-51.391 22.764Q-51.481 23.016-51.674 23.238Q-51.867 23.460-52.166 23.460Q-52.474 23.460-52.722 23.289Q-52.970 23.117-53.041 22.827Q-53.296 23.113-53.592 23.286Q-53.889 23.460-54.218 23.460M-54.201 23.196Q-53.871 23.196-53.561 22.955Q-53.252 22.713-53.041 22.397Q-53.032 22.388-53.032 22.361L-52.535 20.406Q-52.592 20.089-52.784 19.865Q-52.975 19.641-53.265 19.641Q-53.634 19.641-53.933 19.960Q-54.232 20.278-54.399 20.687Q-54.535 21.034-54.660 21.544Q-54.785 22.054-54.785 22.379Q-54.785 22.704-54.647 22.950Q-54.508 23.196-54.201 23.196",[1545],[1533,2062,2063],{"transform":2056},[1541,2064],{"d":2065,"fill":1550,"stroke":1550,"className":2066,"style":2013},"M-41.978 22.216L-47.784 22.216Q-47.863 22.203-47.913 22.153Q-47.964 22.102-47.964 22.027Q-47.964 21.878-47.784 21.830L-41.978 21.830Q-41.807 21.882-41.807 22.027Q-41.807 22.181-41.978 22.216M-41.978 20.388L-47.784 20.388Q-47.964 20.358-47.964 20.199Q-47.964 20.050-47.784 20.002L-41.978 20.002Q-41.807 20.054-41.807 20.199Q-41.807 20.353-41.978 20.388",[1545],[1533,2068,2069],{"transform":2056},[1541,2070],{"d":2071,"fill":1550,"stroke":1550,"className":2072,"style":2013},"M-37.813 22.638L-37.857 22.638Q-37.655 22.955-37.268 23.113Q-36.881 23.271-36.455 23.271Q-35.919 23.271-35.680 22.836Q-35.440 22.401-35.440 21.821Q-35.440 21.241-35.686 20.801Q-35.932 20.362-36.464 20.362L-37.084 20.362Q-37.110 20.362-37.143 20.333Q-37.176 20.305-37.176 20.283L-37.176 20.182Q-37.176 20.151-37.147 20.127Q-37.119 20.103-37.084 20.103L-36.565 20.063Q-36.099 20.063-35.853 19.591Q-35.607 19.118-35.607 18.600Q-35.607 18.173-35.820 17.899Q-36.033 17.624-36.455 17.624Q-36.798 17.624-37.123 17.754Q-37.448 17.883-37.633 18.138L-37.607 18.138Q-37.404 18.138-37.268 18.279Q-37.132 18.420-37.132 18.617Q-37.132 18.815-37.266 18.949Q-37.400 19.083-37.598 19.083Q-37.800 19.083-37.938 18.949Q-38.077 18.815-38.077 18.617Q-38.077 18.028-37.574 17.697Q-37.070 17.365-36.455 17.365Q-36.077 17.365-35.675 17.505Q-35.273 17.646-35.005 17.925Q-34.737 18.204-34.737 18.600Q-34.737 19.149-35.091 19.586Q-35.444 20.024-35.985 20.208Q-35.594 20.287-35.249 20.511Q-34.904 20.735-34.693 21.076Q-34.482 21.417-34.482 21.812Q-34.482 22.194-34.645 22.517Q-34.807 22.840-35.099 23.076Q-35.392 23.311-35.739 23.434Q-36.086 23.557-36.455 23.557Q-36.903 23.557-37.334 23.396Q-37.765 23.236-38.046 22.909Q-38.327 22.581-38.327 22.124Q-38.327 21.909-38.180 21.766Q-38.033 21.623-37.813 21.623Q-37.602 21.623-37.457 21.768Q-37.312 21.913-37.312 22.124Q-37.312 22.335-37.459 22.487Q-37.607 22.638-37.813 22.638",[1545],[1748,2074,2076,2077,2092],{"className":2075},[1751],"colors needed = max overlap depth ",[424,2078,2080],{"className":2079},[427],[424,2081,2083],{"className":2082,"ariaHidden":432},[431],[424,2084,2086,2089],{"className":2085},[436],[424,2087],{"className":2088,"style":1496},[440],[424,2090,1907],{"className":2091},[445,446]," (highlighted line crosses 3 intervals)",[728,2094,2096],{"type":2095},"lemma",[381,2097,2098,2101,2102,2117,2118,2121,2122,2137,2138,2153,2154,2169,2170,2185,2186],{},[385,2099,2100],{},"Lemma (Lower bound)."," Any valid partition uses at least ",[424,2103,2105],{"className":2104},[427],[424,2106,2108],{"className":2107,"ariaHidden":432},[431],[424,2109,2111,2114],{"className":2110},[436],[424,2112],{"className":2113,"style":1496},[440],[424,2115,1907],{"className":2116},[445,446]," machines. ",[399,2119,2120],{},"Proof."," At the\npoint ",[424,2123,2125],{"className":2124},[427],[424,2126,2128],{"className":2127,"ariaHidden":432},[431],[424,2129,2131,2134],{"className":2130},[436],[424,2132],{"className":2133,"style":1870},[440],[424,2135,1874],{"className":2136},[445,446]," of maximum depth there are ",[424,2139,2141],{"className":2140},[427],[424,2142,2144],{"className":2143,"ariaHidden":432},[431],[424,2145,2147,2150],{"className":2146},[436],[424,2148],{"className":2149,"style":1496},[440],[424,2151,1907],{"className":2152},[445,446]," intervals all containing ",[424,2155,2157],{"className":2156},[427],[424,2158,2160],{"className":2159,"ariaHidden":432},[431],[424,2161,2163,2166],{"className":2162},[436],[424,2164],{"className":2165,"style":1870},[440],[424,2167,1874],{"className":2168},[445,446],"; they\npairwise overlap, so no two may share a machine, forcing at least ",[424,2171,2173],{"className":2172},[427],[424,2174,2176],{"className":2175,"ariaHidden":432},[431],[424,2177,2179,2182],{"className":2178},[436],[424,2180],{"className":2181,"style":1496},[440],[424,2183,1907],{"className":2184},[445,446]," distinct\nmachines. ",[424,2187,2189],{"className":2188},[427],[424,2190,2192],{"className":2191,"ariaHidden":432},[431],[424,2193,2195,2199],{"className":2194},[436],[424,2196],{"className":2197,"style":2198},[440],"height:0.675em;",[424,2200,2204],{"className":2201},[2202,2203],"enclosing","qed",[424,2205,2208],{"className":2206},[445,2207],"amsrm","□",[381,2210,2211,2212,2214,2215,2218],{},"The greedy algorithm sorts by ",[385,2213,409],{}," time and keeps a\n",[394,2216,2217],{"href":56},"min-heap"," of machines keyed by the time\neach becomes free. For each interval in start order, if the\nmachine that frees earliest is already free by this interval's start, reuse it;\notherwise open a new machine.",[2220,2221,2225],"pre",{"className":2222,"code":2223,"language":2224,"meta":376,"style":376},"language-algorithm shiki shiki-themes Vesper Light - Orange Boost (Quick Open Adjusted) vesper","caption: $\\textsc{Partition}(I)$ — fewest machines for intervals $I$\nsort $I$ by start time $s_i$ ascending\n$H \\gets$ empty min-heap of machines keyed by free time\nfor each interval $i$ in start order do\n  if $H$ nonempty and $\\min(H).free \\le s_i$ then\n    $m \\gets \\textsc{Extract-Min}(H)$ \u002F\u002F reuse earliest-freed machine\n  else\n    $m \\gets$ new machine \u002F\u002F none free: open one\n  $m.free \\gets f_i$\n  $\\textsc{Insert}(H, m)$\nreturn $|H|$ \u002F\u002F total machines opened\n","algorithm",[2226,2227,2228,2234,2239,2244,2249,2254,2259,2264,2269,2274,2279],"code",{"__ignoreMap":376},[424,2229,2231],{"class":2230,"line":6},"line",[424,2232,2233],{},"caption: $\\textsc{Partition}(I)$ — fewest machines for intervals $I$\n",[424,2235,2236],{"class":2230,"line":18},[424,2237,2238],{},"sort $I$ by start time $s_i$ ascending\n",[424,2240,2241],{"class":2230,"line":24},[424,2242,2243],{},"$H \\gets$ empty min-heap of machines keyed by free time\n",[424,2245,2246],{"class":2230,"line":73},[424,2247,2248],{},"for each interval $i$ in start order do\n",[424,2250,2251],{"class":2230,"line":102},[424,2252,2253],{},"  if $H$ nonempty and $\\min(H).free \\le s_i$ then\n",[424,2255,2256],{"class":2230,"line":108},[424,2257,2258],{},"    $m \\gets \\textsc{Extract-Min}(H)$ \u002F\u002F reuse earliest-freed machine\n",[424,2260,2261],{"class":2230,"line":116},[424,2262,2263],{},"  else\n",[424,2265,2266],{"class":2230,"line":196},[424,2267,2268],{},"    $m \\gets$ new machine \u002F\u002F none free: open one\n",[424,2270,2271],{"class":2230,"line":202},[424,2272,2273],{},"  $m.free \\gets f_i$\n",[424,2275,2276],{"class":2230,"line":283},[424,2277,2278],{},"  $\\textsc{Insert}(H, m)$\n",[424,2280,2281],{"class":2230,"line":333},[424,2282,2283],{},"return $|H|$ \u002F\u002F total machines opened\n",[381,2285,2286,2287,2289,2290,2307],{},"Tracing the scan makes the rule concrete. Intervals enter in ",[385,2288,409],{}," order; each\nreuses the machine that frees earliest if it is already free, otherwise it opens a\nnew one. The third interval arrives while both open machines are still busy, so it\nforces a third — and that very moment is a point of depth ",[424,2291,2293],{"className":2292},[427],[424,2294,2296],{"className":2295,"ariaHidden":432},[431],[424,2297,2299,2303],{"className":2298},[436],[424,2300],{"className":2301,"style":2302},[440],"height:0.6444em;",[424,2304,2306],{"className":2305},[445],"3",", the witness behind\nthe lower bound.",[1520,2309,2311,2568],{"className":2310},[1523,1524],[1526,2312,2316],{"xmlns":1528,"width":2313,"height":2314,"viewBox":2315},"361.054","132.660","-75 -75 270.790 99.495",[1533,2317,2318,2325,2332,2339,2351,2363,2375,2387,2401,2413,2428,2431,2438,2441,2448,2451,2458,2461,2468,2471,2478,2481,2488,2491,2498,2501,2508,2511,2518,2521,2528,2531],{"stroke":1535,"style":1536},[1533,2319,2321],{"transform":2320},"translate(-27.786 -43.132)",[1541,2322],{"d":2323,"fill":1535,"stroke":1535,"className":2324,"style":1546},"M-30.115 3.584L-32.474 3.584L-32.474 3.287Q-32.150 3.287-31.908 3.240Q-31.666 3.193-31.666 3.025L-31.666-1.318Q-31.666-1.490-31.908-1.537Q-32.150-1.584-32.474-1.584L-32.474-1.881L-29.881-1.881Q-29.549-1.881-29.162-1.795Q-28.775-1.709-28.428-1.535Q-28.080-1.361-27.861-1.080Q-27.642-0.799-27.642-0.432Q-27.642-0.107-27.844 0.158Q-28.045 0.424-28.351 0.600Q-28.658 0.775-28.986 0.865Q-28.619 0.986-28.359 1.256Q-28.099 1.525-28.049 1.889L-27.955 2.584Q-27.885 3.033-27.787 3.264Q-27.689 3.494-27.392 3.494Q-27.146 3.494-27.014 3.277Q-26.881 3.061-26.881 2.799Q-26.861 2.725-26.779 2.705L-26.697 2.705Q-26.603 2.729-26.603 2.822Q-26.603 3.053-26.701 3.268Q-26.799 3.482-26.976 3.617Q-27.154 3.752-27.385 3.752Q-27.982 3.752-28.400 3.465Q-28.818 3.178-28.818 2.607L-28.818 1.912Q-28.818 1.631-28.971 1.416Q-29.123 1.201-29.373 1.088Q-29.623 0.975-29.896 0.975L-30.924 0.975L-30.924 3.025Q-30.924 3.189-30.680 3.238Q-30.435 3.287-30.115 3.287L-30.115 3.584M-30.924-1.318L-30.924 0.721L-29.994 0.721Q-29.674 0.721-29.406 0.668Q-29.139 0.615-28.939 0.488Q-28.740 0.361-28.623 0.129Q-28.506-0.103-28.506-0.432Q-28.506-1.084-28.902-1.334Q-29.299-1.584-29.994-1.584L-30.521-1.584Q-30.740-1.584-30.832-1.541Q-30.924-1.498-30.924-1.318M-22.986 3.584L-25.779 3.584L-25.779 3.287Q-24.717 3.287-24.717 3.025L-24.717-1.143Q-25.146-0.928-25.826-0.928L-25.826-1.225Q-24.806-1.225-24.291-1.736L-24.146-1.736Q-24.072-1.717-24.053-1.639L-24.053 3.025Q-24.053 3.287-22.986 3.287",[1545],[1533,2326,2328],{"transform":2327},"translate(-27.786 -25.492)",[1541,2329],{"d":2330,"fill":1535,"stroke":1535,"className":2331,"style":1546},"M-30.115 3.584L-32.474 3.584L-32.474 3.287Q-32.150 3.287-31.908 3.240Q-31.666 3.193-31.666 3.025L-31.666-1.318Q-31.666-1.490-31.908-1.537Q-32.150-1.584-32.474-1.584L-32.474-1.881L-29.881-1.881Q-29.549-1.881-29.162-1.795Q-28.775-1.709-28.428-1.535Q-28.080-1.361-27.861-1.080Q-27.642-0.799-27.642-0.432Q-27.642-0.107-27.844 0.158Q-28.045 0.424-28.351 0.600Q-28.658 0.775-28.986 0.865Q-28.619 0.986-28.359 1.256Q-28.099 1.525-28.049 1.889L-27.955 2.584Q-27.885 3.033-27.787 3.264Q-27.689 3.494-27.392 3.494Q-27.146 3.494-27.014 3.277Q-26.881 3.061-26.881 2.799Q-26.861 2.725-26.779 2.705L-26.697 2.705Q-26.603 2.729-26.603 2.822Q-26.603 3.053-26.701 3.268Q-26.799 3.482-26.976 3.617Q-27.154 3.752-27.385 3.752Q-27.982 3.752-28.400 3.465Q-28.818 3.178-28.818 2.607L-28.818 1.912Q-28.818 1.631-28.971 1.416Q-29.123 1.201-29.373 1.088Q-29.623 0.975-29.896 0.975L-30.924 0.975L-30.924 3.025Q-30.924 3.189-30.680 3.238Q-30.435 3.287-30.115 3.287L-30.115 3.584M-30.924-1.318L-30.924 0.721L-29.994 0.721Q-29.674 0.721-29.406 0.668Q-29.139 0.615-28.939 0.488Q-28.740 0.361-28.623 0.129Q-28.506-0.103-28.506-0.432Q-28.506-1.084-28.902-1.334Q-29.299-1.584-29.994-1.584L-30.521-1.584Q-30.740-1.584-30.832-1.541Q-30.924-1.498-30.924-1.318M-22.994 3.584L-26.154 3.584L-26.154 3.377Q-26.154 3.350-26.131 3.318L-24.779 1.920Q-24.400 1.533-24.152 1.244Q-23.904 0.955-23.730 0.598Q-23.556 0.240-23.556-0.150Q-23.556-0.498-23.689-0.791Q-23.822-1.084-24.076-1.262Q-24.330-1.439-24.685-1.439Q-25.045-1.439-25.336-1.244Q-25.627-1.049-25.771-0.721L-25.717-0.721Q-25.533-0.721-25.408-0.600Q-25.283-0.478-25.283-0.287Q-25.283-0.107-25.408 0.022Q-25.533 0.150-25.717 0.150Q-25.896 0.150-26.025 0.022Q-26.154-0.107-26.154-0.287Q-26.154-0.689-25.933-1.025Q-25.713-1.361-25.347-1.549Q-24.982-1.736-24.580-1.736Q-24.099-1.736-23.683-1.549Q-23.267-1.361-23.015-1Q-22.764-0.639-22.764-0.150Q-22.764 0.209-22.918 0.512Q-23.072 0.814-23.324 1.074Q-23.576 1.334-23.926 1.619Q-24.275 1.904-24.443 2.057L-25.373 2.897L-24.658 2.897Q-23.283 2.897-23.244 2.857Q-23.174 2.779-23.131 2.594Q-23.088 2.408-23.045 2.119L-22.764 2.119",[1545],[1533,2333,2335],{"transform":2334},"translate(-27.786 -7.851)",[1541,2336],{"d":2337,"fill":1535,"stroke":1535,"className":2338,"style":1546},"M-30.115 3.584L-32.474 3.584L-32.474 3.287Q-32.150 3.287-31.908 3.240Q-31.666 3.193-31.666 3.025L-31.666-1.318Q-31.666-1.490-31.908-1.537Q-32.150-1.584-32.474-1.584L-32.474-1.881L-29.881-1.881Q-29.549-1.881-29.162-1.795Q-28.775-1.709-28.428-1.535Q-28.080-1.361-27.861-1.080Q-27.642-0.799-27.642-0.432Q-27.642-0.107-27.844 0.158Q-28.045 0.424-28.351 0.600Q-28.658 0.775-28.986 0.865Q-28.619 0.986-28.359 1.256Q-28.099 1.525-28.049 1.889L-27.955 2.584Q-27.885 3.033-27.787 3.264Q-27.689 3.494-27.392 3.494Q-27.146 3.494-27.014 3.277Q-26.881 3.061-26.881 2.799Q-26.861 2.725-26.779 2.705L-26.697 2.705Q-26.603 2.729-26.603 2.822Q-26.603 3.053-26.701 3.268Q-26.799 3.482-26.976 3.617Q-27.154 3.752-27.385 3.752Q-27.982 3.752-28.400 3.465Q-28.818 3.178-28.818 2.607L-28.818 1.912Q-28.818 1.631-28.971 1.416Q-29.123 1.201-29.373 1.088Q-29.623 0.975-29.896 0.975L-30.924 0.975L-30.924 3.025Q-30.924 3.189-30.680 3.238Q-30.435 3.287-30.115 3.287L-30.115 3.584M-30.924-1.318L-30.924 0.721L-29.994 0.721Q-29.674 0.721-29.406 0.668Q-29.139 0.615-28.939 0.488Q-28.740 0.361-28.623 0.129Q-28.506-0.103-28.506-0.432Q-28.506-1.084-28.902-1.334Q-29.299-1.584-29.994-1.584L-30.521-1.584Q-30.740-1.584-30.832-1.541Q-30.924-1.498-30.924-1.318M-25.787 2.951Q-25.596 3.225-25.240 3.352Q-24.885 3.479-24.502 3.479Q-24.166 3.479-23.957 3.293Q-23.748 3.107-23.652 2.814Q-23.556 2.522-23.556 2.209Q-23.556 1.885-23.654 1.590Q-23.752 1.295-23.965 1.111Q-24.178 0.928-24.510 0.928L-25.076 0.928Q-25.107 0.928-25.137 0.898Q-25.166 0.869-25.166 0.842L-25.166 0.760Q-25.166 0.725-25.137 0.699Q-25.107 0.674-25.076 0.674L-24.596 0.639Q-24.310 0.639-24.113 0.434Q-23.916 0.229-23.820-0.066Q-23.724-0.361-23.724-0.639Q-23.724-1.018-23.924-1.256Q-24.123-1.494-24.502-1.494Q-24.822-1.494-25.111-1.387Q-25.400-1.279-25.564-1.057Q-25.385-1.057-25.262-0.930Q-25.139-0.803-25.139-0.631Q-25.139-0.459-25.264-0.334Q-25.389-0.209-25.564-0.209Q-25.736-0.209-25.861-0.334Q-25.986-0.459-25.986-0.631Q-25.986-0.998-25.762-1.246Q-25.537-1.494-25.197-1.615Q-24.857-1.736-24.502-1.736Q-24.154-1.736-23.791-1.615Q-23.428-1.494-23.180-1.244Q-22.931-0.994-22.931-0.639Q-22.931-0.154-23.250 0.229Q-23.568 0.611-24.045 0.783Q-23.494 0.893-23.094 1.279Q-22.693 1.666-22.693 2.201Q-22.693 2.658-22.957 3.014Q-23.221 3.369-23.642 3.561Q-24.064 3.752-24.502 3.752Q-24.912 3.752-25.305 3.617Q-25.697 3.482-25.963 3.197Q-26.228 2.912-26.228 2.494Q-26.228 2.299-26.096 2.170Q-25.963 2.041-25.771 2.041Q-25.646 2.041-25.543 2.100Q-25.439 2.158-25.377 2.264Q-25.314 2.369-25.314 2.494Q-25.314 2.689-25.449 2.820Q-25.584 2.951-25.787 2.951",[1545],[1533,2340,2341,2344],{"fill":1549,"stroke":1550,"style":1551},[1541,2342],{"d":2343},"M36.583-48.836h-77.359a4 4 0 0 0-4 4v5.11a4 4 0 0 0 4 4h77.359a4 4 0 0 0 4-4v-5.11a4 4 0 0 0-4-4Zm-81.359 13.11",[1533,2345,2347],{"transform":2346},"translate(28.229 -42.643)",[1541,2348],{"d":2349,"fill":1535,"stroke":1535,"className":2350,"style":1565},"M-28.617 3.584L-31.898 3.584L-31.898 3.232Q-30.648 3.232-30.648 2.915L-30.648-2.334Q-31.166-2.085-31.957-2.085L-31.957-2.437Q-30.731-2.437-30.106-3.076L-29.965-3.076Q-29.930-3.076-29.899-3.049Q-29.867-3.022-29.867-2.988L-29.867 2.915Q-29.867 3.232-28.617 3.232",[1545],[1533,2352,2353,2356],{"fill":1549,"stroke":1550,"style":1551},[1541,2354],{"d":2355},"M118.527-48.836H41.168a4 4 0 0 0-4 4v5.11a4 4 0 0 0 4 4h77.359a4 4 0 0 0 4-4v-5.11a4 4 0 0 0-4-4Zm-81.359 13.11",[1533,2357,2359],{"transform":2358},"translate(110.173 -42.643)",[1541,2360],{"d":2361,"fill":1535,"stroke":1535,"className":2362,"style":1565},"M-29.906 1.934L-32.548 1.934L-32.548 1.582L-29.457-3.027Q-29.423-3.076-29.354-3.076L-29.208-3.076Q-29.096-3.076-29.096-2.964L-29.096 1.582L-28.114 1.582L-28.114 1.934L-29.096 1.934L-29.096 2.915Q-29.096 3.120-28.803 3.176Q-28.510 3.232-28.124 3.232L-28.124 3.584L-30.878 3.584L-30.878 3.232Q-30.492 3.232-30.199 3.176Q-29.906 3.120-29.906 2.915L-29.906 1.934M-29.847-1.958L-32.216 1.582L-29.847 1.582",[1545],[1533,2364,2365,2368],{"fill":1549,"stroke":1550,"style":1551},[1541,2366],{"d":2367},"M57.069-31.196H-20.29a4 4 0 0 0-4 4v5.11a4 4 0 0 0 4 4H57.07a4 4 0 0 0 4-4v-5.11a4 4 0 0 0-4-4Zm-81.359 13.11",[1533,2369,2371],{"transform":2370},"translate(48.715 -25.003)",[1541,2372],{"d":2373,"fill":1535,"stroke":1535,"className":2374,"style":1565},"M-28.617 3.584L-32.328 3.584L-32.328 3.315Q-32.328 3.291-32.308 3.262L-30.756 1.543Q-30.404 1.162-30.184 0.903Q-29.965 0.645-29.750 0.308Q-29.535-0.029-29.410-0.378Q-29.286-0.728-29.286-1.118Q-29.286-1.528-29.437-1.902Q-29.589-2.275-29.889-2.500Q-30.189-2.725-30.614-2.725Q-31.049-2.725-31.395-2.463Q-31.742-2.202-31.884-1.787Q-31.845-1.797-31.776-1.797Q-31.552-1.797-31.393-1.645Q-31.234-1.494-31.234-1.255Q-31.234-1.025-31.393-0.867Q-31.552-0.708-31.776-0.708Q-32.011-0.708-32.169-0.872Q-32.328-1.035-32.328-1.255Q-32.328-1.631-32.186-1.960Q-32.045-2.290-31.779-2.546Q-31.513-2.803-31.178-2.939Q-30.844-3.076-30.468-3.076Q-29.896-3.076-29.403-2.834Q-28.910-2.593-28.622-2.151Q-28.334-1.709-28.334-1.118Q-28.334-0.684-28.524-0.293Q-28.715 0.098-29.013 0.417Q-29.310 0.737-29.774 1.143Q-30.238 1.548-30.385 1.685L-31.517 2.773L-30.555 2.773Q-29.847 2.773-29.371 2.761Q-28.895 2.749-28.866 2.725Q-28.749 2.598-28.627 1.802L-28.334 1.802",[1545],[1533,2376,2377,2380],{"fill":1549,"stroke":1550,"style":1551},[1541,2378],{"d":2379},"M139.013-31.196H61.654a4 4 0 0 0-4 4v5.11a4 4 0 0 0 4 4h77.359a4 4 0 0 0 4-4v-5.11a4 4 0 0 0-4-4Zm-81.359 13.11",[1533,2381,2383],{"transform":2382},"translate(130.66 -25.003)",[1541,2384],{"d":2385,"fill":1535,"stroke":1535,"className":2386,"style":1565},"M-31.957 2.446Q-31.854 2.739-31.642 2.979Q-31.430 3.218-31.139 3.352Q-30.848 3.486-30.536 3.486Q-29.813 3.486-29.540 2.925Q-29.266 2.363-29.266 1.563Q-29.266 1.216-29.279 0.979Q-29.291 0.742-29.345 0.522Q-29.437 0.171-29.669-0.093Q-29.901-0.356-30.238-0.356Q-30.575-0.356-30.817-0.254Q-31.058-0.151-31.210-0.015Q-31.361 0.122-31.478 0.273Q-31.596 0.425-31.625 0.435L-31.737 0.435Q-31.762 0.435-31.798 0.403Q-31.835 0.371-31.835 0.342L-31.835-2.998Q-31.835-3.022-31.803-3.049Q-31.771-3.076-31.737-3.076L-31.708-3.076Q-31.034-2.754-30.277-2.754Q-29.535-2.754-28.847-3.076L-28.817-3.076Q-28.783-3.076-28.754-3.052Q-28.724-3.027-28.724-2.998L-28.724-2.905Q-28.724-2.856-28.744-2.856Q-29.086-2.402-29.601-2.148Q-30.116-1.895-30.668-1.895Q-31.068-1.895-31.488-2.007L-31.488-0.117Q-31.156-0.386-30.895-0.500Q-30.634-0.615-30.228-0.615Q-29.677-0.615-29.240-0.298Q-28.803 0.020-28.568 0.530Q-28.334 1.040-28.334 1.572Q-28.334 2.173-28.629 2.686Q-28.925 3.198-29.432 3.501Q-29.940 3.804-30.536 3.804Q-31.029 3.804-31.442 3.550Q-31.854 3.296-32.091 2.866Q-32.328 2.437-32.328 1.953Q-32.328 1.729-32.181 1.587Q-32.035 1.445-31.815 1.445Q-31.596 1.445-31.447 1.589Q-31.298 1.733-31.298 1.953Q-31.298 2.168-31.447 2.317Q-31.596 2.466-31.815 2.466Q-31.849 2.466-31.893 2.459Q-31.937 2.451-31.957 2.446",[1545],[1533,2388,2391,2394],{"fill":2389,"stroke":2390,"style":1551},"var(--tk-soft-warn)","var(--tk-warn)",[1541,2392],{"d":2393},"M77.555-13.555H.196a4 4 0 0 0-4 4v5.11a4 4 0 0 0 4 4h77.359a4 4 0 0 0 4-4v-5.11a4 4 0 0 0-4-4ZM-3.804-.445",[1533,2395,2397],{"transform":2396},"translate(69.201 -7.362)",[1541,2398],{"d":2399,"fill":1535,"stroke":1535,"className":2400,"style":1565},"M-31.825 2.813L-31.874 2.813Q-31.639 3.154-31.244 3.320Q-30.848 3.486-30.394 3.486Q-29.813 3.486-29.569 2.991Q-29.325 2.495-29.325 1.865Q-29.325 1.582-29.376 1.299Q-29.428 1.016-29.550 0.772Q-29.672 0.527-29.884 0.381Q-30.097 0.234-30.404 0.234L-31.068 0.234Q-31.156 0.234-31.156 0.142L-31.156 0.054Q-31.156-0.024-31.068-0.024L-30.516-0.068Q-30.165-0.068-29.933-0.332Q-29.701-0.596-29.594-0.974Q-29.486-1.353-29.486-1.694Q-29.486-2.173-29.711-2.480Q-29.935-2.788-30.394-2.788Q-30.775-2.788-31.122-2.644Q-31.469-2.500-31.674-2.207Q-31.654-2.212-31.639-2.214Q-31.625-2.217-31.605-2.217Q-31.381-2.217-31.229-2.061Q-31.078-1.904-31.078-1.685Q-31.078-1.470-31.229-1.313Q-31.381-1.157-31.605-1.157Q-31.825-1.157-31.981-1.313Q-32.138-1.470-32.138-1.685Q-32.138-2.114-31.879-2.432Q-31.620-2.749-31.212-2.913Q-30.805-3.076-30.394-3.076Q-30.092-3.076-29.755-2.986Q-29.418-2.895-29.144-2.727Q-28.871-2.559-28.698-2.295Q-28.524-2.031-28.524-1.694Q-28.524-1.274-28.712-0.918Q-28.900-0.562-29.227-0.303Q-29.555-0.044-29.945 0.083Q-29.511 0.166-29.120 0.410Q-28.729 0.654-28.493 1.035Q-28.256 1.416-28.256 1.855Q-28.256 2.407-28.558 2.854Q-28.861 3.301-29.354 3.552Q-29.847 3.804-30.394 3.804Q-30.863 3.804-31.334 3.626Q-31.805 3.447-32.106 3.091Q-32.406 2.734-32.406 2.236Q-32.406 1.987-32.240 1.821Q-32.074 1.655-31.825 1.655Q-31.664 1.655-31.530 1.731Q-31.395 1.807-31.320 1.943Q-31.244 2.080-31.244 2.236Q-31.244 2.480-31.415 2.647Q-31.586 2.813-31.825 2.813",[1545],[1533,2402,2403,2406],{"fill":1549,"stroke":1550,"style":1551},[1541,2404],{"d":2405},"M159.499-13.555H82.14a4 4 0 0 0-4 4v5.11a4 4 0 0 0 4 4H159.5a4 4 0 0 0 4-4v-5.11a4 4 0 0 0-4-4ZM78.14-.445",[1533,2407,2409],{"transform":2408},"translate(151.145 -7.362)",[1541,2410],{"d":2411,"fill":1535,"stroke":1535,"className":2412,"style":1565},"M-30.326 3.804Q-30.946 3.804-31.361 3.474Q-31.776 3.145-32.003 2.620Q-32.230 2.095-32.318 1.519Q-32.406 0.942-32.406 0.352Q-32.406-0.439-32.098-1.235Q-31.791-2.031-31.193-2.554Q-30.595-3.076-29.774-3.076Q-29.432-3.076-29.137-2.947Q-28.842-2.817-28.673-2.566Q-28.505-2.314-28.505-1.958Q-28.505-1.753-28.644-1.614Q-28.783-1.475-28.988-1.475Q-29.183-1.475-29.325-1.616Q-29.467-1.758-29.467-1.958Q-29.467-2.153-29.325-2.295Q-29.183-2.437-28.988-2.437L-28.934-2.437Q-29.061-2.617-29.293-2.703Q-29.525-2.788-29.774-2.788Q-30.077-2.788-30.333-2.656Q-30.590-2.524-30.795-2.300Q-31-2.075-31.137-1.804Q-31.273-1.533-31.349-1.187Q-31.425-0.840-31.444-0.537Q-31.464-0.234-31.464 0.225Q-31.288-0.186-30.966-0.447Q-30.643-0.708-30.238-0.708Q-29.794-0.708-29.428-0.527Q-29.061-0.347-28.798-0.027Q-28.534 0.293-28.395 0.703Q-28.256 1.113-28.256 1.533Q-28.256 2.119-28.517 2.649Q-28.778 3.179-29.252 3.491Q-29.725 3.804-30.326 3.804M-30.326 3.486Q-29.940 3.486-29.706 3.311Q-29.472 3.135-29.362 2.844Q-29.252 2.554-29.225 2.258Q-29.198 1.963-29.198 1.533Q-29.198 0.967-29.252 0.566Q-29.305 0.166-29.545-0.139Q-29.784-0.444-30.277-0.444Q-30.682-0.444-30.944-0.171Q-31.205 0.103-31.325 0.520Q-31.444 0.938-31.444 1.323Q-31.444 1.455-31.434 1.523Q-31.434 1.538-31.437 1.548Q-31.439 1.558-31.444 1.572Q-31.444 2.002-31.356 2.441Q-31.268 2.881-31.019 3.184Q-30.770 3.486-30.326 3.486",[1545],[1533,2414,2415,2418,2421],{"style":1621},[1541,2416],{"fill":1557,"d":2417},"M-32.826 7.113H163.04",[1541,2419],{"fill":1557,"d":2420,"style":1739},"M160.88 3.99c.468 1.873 1.51 2.758 2.56 3.123-1.05.364-2.092 1.249-2.56 3.122",[1533,2422,2424],{"transform":2423},"translate(200.399 6.21)",[1541,2425],{"d":2426,"fill":1535,"stroke":1535,"className":2427,"style":1546},"M-31.963 2.623L-31.963 0.432L-32.666 0.432L-32.666 0.178Q-32.310 0.178-32.068-0.055Q-31.826-0.287-31.715-0.635Q-31.603-0.982-31.603-1.338L-31.322-1.338L-31.322 0.135L-30.146 0.135L-30.146 0.432L-31.322 0.432L-31.322 2.607Q-31.322 2.928-31.203 3.156Q-31.084 3.385-30.803 3.385Q-30.623 3.385-30.506 3.262Q-30.389 3.139-30.336 2.959Q-30.283 2.779-30.283 2.607L-30.283 2.135L-30.002 2.135L-30.002 2.623Q-30.002 2.877-30.107 3.117Q-30.213 3.357-30.410 3.510Q-30.607 3.662-30.865 3.662Q-31.181 3.662-31.433 3.539Q-31.685 3.416-31.824 3.182Q-31.963 2.947-31.963 2.623M-27.424 3.584L-29.201 3.584L-29.201 3.287Q-28.928 3.287-28.760 3.240Q-28.592 3.193-28.592 3.025L-28.592 0.889Q-28.592 0.674-28.648 0.578Q-28.705 0.482-28.818 0.461Q-28.931 0.439-29.178 0.439L-29.178 0.143L-27.978 0.057L-27.978 3.025Q-27.978 3.193-27.832 3.240Q-27.685 3.287-27.424 3.287L-27.424 3.584M-28.865-1.338Q-28.865-1.529-28.730-1.660Q-28.596-1.791-28.400-1.791Q-28.279-1.791-28.176-1.728Q-28.072-1.666-28.010-1.562Q-27.947-1.459-27.947-1.338Q-27.947-1.143-28.078-1.008Q-28.209-0.873-28.400-0.873Q-28.599-0.873-28.732-1.006Q-28.865-1.139-28.865-1.338M-24.994 3.584L-26.849 3.584L-26.849 3.287Q-26.576 3.287-26.408 3.240Q-26.240 3.193-26.240 3.025L-26.240 0.889Q-26.240 0.674-26.303 0.578Q-26.365 0.482-26.484 0.461Q-26.603 0.439-26.849 0.439L-26.849 0.143L-25.658 0.057L-25.658 0.791Q-25.545 0.576-25.351 0.408Q-25.158 0.240-24.920 0.148Q-24.681 0.057-24.428 0.057Q-23.467 0.057-23.291 0.768Q-23.107 0.439-22.779 0.248Q-22.451 0.057-22.072 0.057Q-20.896 0.057-20.896 1.135L-20.896 3.025Q-20.896 3.193-20.728 3.240Q-20.560 3.287-20.291 3.287L-20.291 3.584L-22.146 3.584L-22.146 3.287Q-21.873 3.287-21.705 3.242Q-21.537 3.197-21.537 3.025L-21.537 1.150Q-21.537 0.764-21.662 0.537Q-21.787 0.311-22.139 0.311Q-22.443 0.311-22.699 0.473Q-22.955 0.635-23.103 0.904Q-23.252 1.174-23.252 1.471L-23.252 3.025Q-23.252 3.193-23.082 3.240Q-22.912 3.287-22.642 3.287L-22.642 3.584L-24.498 3.584L-24.498 3.287Q-24.224 3.287-24.056 3.240Q-23.889 3.193-23.889 3.025L-23.889 1.150Q-23.889 0.764-24.014 0.537Q-24.139 0.311-24.490 0.311Q-24.795 0.311-25.051 0.473Q-25.306 0.635-25.455 0.904Q-25.603 1.174-25.603 1.471L-25.603 3.025Q-25.603 3.193-25.433 3.240Q-25.264 3.287-24.994 3.287L-24.994 3.584M-19.846 1.830Q-19.846 1.350-19.613 0.934Q-19.381 0.518-18.971 0.268Q-18.560 0.018-18.084 0.018Q-17.353 0.018-16.955 0.459Q-16.556 0.900-16.556 1.631Q-16.556 1.736-16.650 1.760L-19.099 1.760L-19.099 1.830Q-19.099 2.240-18.978 2.596Q-18.857 2.951-18.586 3.168Q-18.314 3.385-17.885 3.385Q-17.521 3.385-17.224 3.156Q-16.928 2.928-16.826 2.576Q-16.818 2.529-16.732 2.514L-16.650 2.514Q-16.556 2.541-16.556 2.623Q-16.556 2.631-16.564 2.662Q-16.627 2.889-16.765 3.072Q-16.904 3.256-17.096 3.389Q-17.287 3.522-17.506 3.592Q-17.724 3.662-17.963 3.662Q-18.334 3.662-18.672 3.525Q-19.010 3.389-19.277 3.137Q-19.545 2.885-19.695 2.545Q-19.846 2.205-19.846 1.830M-19.092 1.522L-17.131 1.522Q-17.131 1.217-17.232 0.926Q-17.334 0.635-17.551 0.453Q-17.767 0.272-18.084 0.272Q-18.385 0.272-18.615 0.459Q-18.846 0.647-18.969 0.938Q-19.092 1.229-19.092 1.522",[1545],[1541,2429],{"fill":1557,"d":2430},"M-32.826 5.349v3.528",[1533,2432,2434],{"transform":2433},"translate(-1.701 13.047)",[1541,2435],{"d":2436,"fill":1535,"stroke":1535,"className":2437,"style":1706},"M-31.127 3.694Q-31.845 3.694-32.142 3.220Q-32.440 2.747-32.440 1.990Q-32.440 1.226-32.144 0.740Q-31.847 0.254-31.127 0.254Q-30.404 0.254-30.107 0.740Q-29.811 1.226-29.811 1.990Q-29.811 2.344-29.873 2.644Q-29.935 2.944-30.086 3.184Q-30.236 3.423-30.493 3.558Q-30.751 3.694-31.127 3.694M-31.127 3.508Q-30.763 3.508-30.587 3.258Q-30.411 3.008-30.371 2.682Q-30.331 2.356-30.331 1.909Q-30.331 1.477-30.371 1.180Q-30.411 0.884-30.586 0.662Q-30.761 0.439-31.127 0.439Q-31.491 0.439-31.665 0.662Q-31.840 0.884-31.880 1.180Q-31.920 1.477-31.920 1.909Q-31.920 2.356-31.880 2.682Q-31.840 3.008-31.664 3.258Q-31.488 3.508-31.127 3.508",[1545],[1541,2439],{"fill":1557,"d":2440},"M-12.34 5.349v3.528",[1533,2442,2444],{"transform":2443},"translate(18.785 13.047)",[1541,2445],{"d":2446,"fill":1535,"stroke":1535,"className":2447,"style":1706},"M-30.045 3.584L-32.086 3.584L-32.086 3.345Q-31.305 3.345-31.305 3.225L-31.305 0.679Q-31.483 0.754-31.687 0.784Q-31.891 0.813-32.120 0.813L-32.120 0.574Q-31.784 0.574-31.500 0.505Q-31.217 0.437-31.007 0.254L-30.902 0.254Q-30.875 0.254-30.851 0.278Q-30.826 0.303-30.826 0.330L-30.826 3.225Q-30.826 3.345-30.045 3.345",[1545],[1541,2449],{"fill":1557,"d":2450},"M8.146 5.349v3.528",[1533,2452,2454],{"transform":2453},"translate(39.27 13.047)",[1541,2455],{"d":2456,"fill":1535,"stroke":1535,"className":2457,"style":1706},"M-30.045 3.584L-32.372 3.584L-32.372 3.403Q-32.369 3.391-32.350 3.364L-31.310 2.488Q-31.002 2.229-30.848 2.085Q-30.695 1.941-30.565 1.724Q-30.436 1.506-30.436 1.265Q-30.436 1.023-30.563 0.847Q-30.690 0.671-30.894 0.582Q-31.097 0.493-31.337 0.493Q-31.544 0.493-31.740 0.581Q-31.935 0.669-32.040 0.835Q-31.920 0.835-31.843 0.927Q-31.766 1.018-31.766 1.133Q-31.766 1.260-31.853 1.349Q-31.940 1.438-32.067 1.438Q-32.196 1.438-32.284 1.348Q-32.372 1.257-32.372 1.133Q-32.372 0.852-32.199 0.653Q-32.025 0.454-31.754 0.354Q-31.483 0.254-31.210 0.254Q-30.885 0.254-30.580 0.361Q-30.275 0.469-30.078 0.696Q-29.882 0.923-29.882 1.260Q-29.882 1.497-29.995 1.689Q-30.109 1.882-30.269 2.020Q-30.429 2.158-30.711 2.346Q-30.993 2.534-31.071 2.593L-31.737 3.084L-31.281 3.084Q-30.848 3.084-30.554 3.077Q-30.260 3.071-30.245 3.059Q-30.167 2.961-30.111 2.600L-29.882 2.600",[1545],[1541,2459],{"fill":1557,"d":2460},"M28.632 5.349v3.528",[1533,2462,2464],{"transform":2463},"translate(59.757 13.047)",[1541,2465],{"d":2466,"fill":1535,"stroke":1535,"className":2467,"style":1706},"M-32.040 3.245Q-31.786 3.469-31.151 3.469Q-30.929 3.469-30.764 3.370Q-30.599 3.272-30.515 3.096Q-30.431 2.920-30.431 2.705Q-30.431 2.483-30.518 2.311Q-30.604 2.139-30.770 2.039Q-30.936 1.938-31.156 1.938L-31.581 1.938Q-31.635 1.926-31.647 1.875L-31.647 1.814Q-31.635 1.770-31.581 1.753L-31.222 1.729Q-31.036 1.729-30.880 1.617Q-30.724 1.506-30.637 1.327Q-30.551 1.147-30.551 0.969Q-30.551 0.811-30.631 0.695Q-30.712 0.579-30.846 0.521Q-30.980 0.464-31.146 0.464Q-31.661 0.464-31.896 0.693Q-31.788 0.715-31.722 0.795Q-31.657 0.874-31.657 0.984Q-31.657 1.108-31.742 1.194Q-31.827 1.279-31.957 1.279Q-32.079 1.279-32.164 1.194Q-32.250 1.108-32.250 0.984Q-32.250 0.728-32.078 0.563Q-31.906 0.398-31.652 0.326Q-31.398 0.254-31.146 0.254Q-30.914 0.254-30.645 0.330Q-30.375 0.405-30.188 0.566Q-30.001 0.728-30.001 0.969Q-30.001 1.287-30.220 1.510Q-30.438 1.733-30.765 1.834Q-30.595 1.868-30.432 1.940Q-30.270 2.012-30.131 2.123Q-29.992 2.234-29.909 2.380Q-29.826 2.527-29.826 2.705Q-29.826 2.942-29.944 3.127Q-30.062 3.313-30.265 3.441Q-30.468 3.569-30.700 3.632Q-30.931 3.694-31.146 3.694Q-31.437 3.694-31.727 3.629Q-32.018 3.564-32.222 3.395Q-32.426 3.225-32.426 2.935Q-32.426 2.800-32.335 2.710Q-32.245 2.620-32.106 2.620Q-32.018 2.620-31.946 2.661Q-31.874 2.703-31.832 2.775Q-31.791 2.847-31.791 2.935Q-31.791 3.052-31.859 3.136Q-31.928 3.220-32.040 3.245",[1545],[1541,2469],{"fill":1557,"d":2470},"M49.118 5.349v3.528",[1533,2472,2474],{"transform":2473},"translate(80.243 13.047)",[1541,2475],{"d":2476,"fill":1535,"stroke":1535,"className":2477,"style":1706},"M-30.856 2.769L-32.511 2.769L-32.511 2.529L-30.646 0.288Q-30.619 0.254-30.565 0.254L-30.436 0.254Q-30.407 0.254-30.381 0.277Q-30.355 0.300-30.355 0.334L-30.355 2.529L-29.740 2.529L-29.740 2.769L-30.355 2.769L-30.355 3.225Q-30.355 3.345-29.745 3.345L-29.745 3.584L-31.466 3.584L-31.466 3.345Q-30.856 3.345-30.856 3.225L-30.856 2.769M-30.817 0.808L-32.245 2.529L-30.817 2.529",[1545],[1541,2479],{"fill":1557,"d":2480},"M69.604 5.349v3.528",[1533,2482,2484],{"transform":2483},"translate(100.729 13.047)",[1541,2485],{"d":2486,"fill":1535,"stroke":1535,"className":2487,"style":1706},"M-32.062 3.074Q-31.957 3.264-31.722 3.367Q-31.488 3.469-31.246 3.469Q-30.834 3.469-30.632 3.232Q-30.431 2.996-30.431 2.578Q-30.431 2.344-30.482 2.140Q-30.534 1.936-30.673 1.803Q-30.812 1.670-31.056 1.670Q-31.613 1.670-31.881 2.034Q-31.910 2.063-31.942 2.063L-32.001 2.063Q-32.028 2.063-32.052 2.039Q-32.076 2.014-32.076 1.990L-32.076 0.315Q-32.059 0.254-32.006 0.254Q-32.001 0.254-31.981 0.259Q-31.534 0.415-31.100 0.415Q-30.663 0.415-30.216 0.259Q-30.197 0.254-30.192 0.254Q-30.138 0.254-30.121 0.315L-30.121 0.374Q-30.123 0.396-30.136 0.415Q-30.370 0.654-30.671 0.781Q-30.973 0.908-31.305 0.908Q-31.596 0.908-31.835 0.855L-31.835 1.729Q-31.544 1.484-31.056 1.484Q-30.831 1.484-30.614 1.567Q-30.397 1.650-30.236 1.794Q-30.075 1.938-29.978 2.140Q-29.882 2.341-29.882 2.578Q-29.882 2.830-30.001 3.042Q-30.121 3.254-30.321 3.398Q-30.521 3.542-30.764 3.618Q-31.007 3.694-31.246 3.694Q-31.525 3.694-31.784 3.586Q-32.042 3.479-32.207 3.270Q-32.372 3.062-32.372 2.783Q-32.372 2.661-32.286 2.578Q-32.201 2.495-32.081 2.495Q-31.959 2.495-31.875 2.577Q-31.791 2.659-31.791 2.783Q-31.791 2.898-31.869 2.986Q-31.947 3.074-32.062 3.074",[1545],[1541,2489],{"fill":1557,"d":2490},"M90.09 5.349v3.528",[1533,2492,2494],{"transform":2493},"translate(121.215 13.047)",[1541,2495],{"d":2496,"fill":1535,"stroke":1535,"className":2497,"style":1706},"M-31.127 3.694Q-31.591 3.694-31.882 3.449Q-32.174 3.203-32.300 2.815Q-32.426 2.427-32.426 1.968Q-32.426 1.519-32.208 1.124Q-31.991 0.730-31.613 0.492Q-31.234 0.254-30.780 0.254Q-30.448 0.254-30.215 0.394Q-29.982 0.535-29.982 0.850Q-29.982 0.962-30.060 1.042Q-30.138 1.123-30.255 1.123Q-30.370 1.123-30.451 1.042Q-30.531 0.962-30.531 0.850Q-30.531 0.752-30.477 0.679Q-30.424 0.605-30.331 0.584Q-30.468 0.464-30.775 0.464Q-30.953 0.464-31.116 0.520Q-31.278 0.576-31.416 0.684Q-31.554 0.791-31.652 0.930Q-31.735 1.064-31.786 1.228Q-31.837 1.392-31.857 1.561Q-31.876 1.731-31.876 1.914Q-31.742 1.692-31.526 1.563Q-31.310 1.433-31.056 1.433Q-30.809 1.433-30.591 1.512Q-30.372 1.592-30.198 1.741Q-30.023 1.890-29.924 2.098Q-29.826 2.307-29.826 2.554Q-29.826 2.891-30.009 3.152Q-30.192 3.413-30.494 3.553Q-30.797 3.694-31.127 3.694M-31.127 3.469Q-30.736 3.469-30.526 3.218Q-30.424 3.091-30.399 2.942Q-30.375 2.793-30.375 2.563L-30.375 2.549Q-30.375 2.317-30.398 2.161Q-30.421 2.004-30.512 1.885Q-30.726 1.619-31.090 1.619Q-31.307 1.619-31.483 1.735Q-31.659 1.851-31.760 2.043Q-31.862 2.236-31.862 2.449Q-31.862 2.515-31.857 2.549Q-31.857 2.566-31.859 2.566Q-31.862 2.566-31.862 2.583Q-31.862 2.825-31.781 3.026Q-31.701 3.228-31.537 3.348Q-31.373 3.469-31.127 3.469",[1545],[1541,2499],{"fill":1557,"d":2500},"M110.576 5.349v3.528",[1533,2502,2504],{"transform":2503},"translate(141.7 13.047)",[1541,2505],{"d":2506,"fill":1535,"stroke":1535,"className":2507,"style":1706},"M-31.571 3.418Q-31.571 2.861-31.339 2.338Q-31.107 1.814-30.707 1.379L-30.236 0.864L-30.841 0.864Q-31.071 0.864-31.325 0.865Q-31.578 0.867-31.766 0.872Q-31.954 0.876-31.972 0.889Q-32.057 0.989-32.111 1.350L-32.340 1.350L-32.152 0.205L-31.920 0.205L-31.920 0.220Q-31.920 0.273-31.857 0.304Q-31.793 0.334-31.730 0.334Q-31.454 0.347-31.182 0.355Q-30.909 0.364-30.797 0.364L-29.652 0.364L-29.652 0.530Q-29.652 0.549-29.672 0.579L-30.512 1.494Q-30.731 1.736-30.844 2.050Q-30.956 2.363-30.989 2.694Q-31.022 3.025-31.022 3.423Q-31.022 3.538-31.102 3.616Q-31.183 3.694-31.295 3.694Q-31.410 3.694-31.491 3.613Q-31.571 3.533-31.571 3.418",[1545],[1541,2509],{"fill":1557,"d":2510},"M131.062 5.349v3.528",[1533,2512,2514],{"transform":2513},"translate(162.187 13.047)",[1541,2515],{"d":2516,"fill":1535,"stroke":1535,"className":2517,"style":1706},"M-32.426 2.810Q-32.426 2.478-32.196 2.257Q-31.967 2.036-31.615 1.904Q-31.808 1.804-31.942 1.703Q-32.076 1.602-32.163 1.453Q-32.250 1.304-32.250 1.113Q-32.250 0.903-32.151 0.741Q-32.052 0.579-31.884 0.469Q-31.715 0.359-31.519 0.306Q-31.322 0.254-31.127 0.254Q-30.939 0.254-30.740 0.295Q-30.541 0.337-30.375 0.427Q-30.209 0.518-30.105 0.667Q-30.001 0.815-30.001 1.018Q-30.001 1.284-30.187 1.470Q-30.372 1.655-30.660 1.775L-30.392 1.914Q-30.148 2.034-29.987 2.249Q-29.826 2.463-29.826 2.720Q-29.826 3.035-30.023 3.256Q-30.221 3.477-30.523 3.585Q-30.824 3.694-31.127 3.694Q-31.427 3.694-31.726 3.602Q-32.025 3.511-32.225 3.313Q-32.426 3.115-32.426 2.810M-32.062 2.810Q-32.062 3.130-31.765 3.300Q-31.469 3.469-31.127 3.469Q-30.927 3.469-30.709 3.416Q-30.492 3.362-30.342 3.234Q-30.192 3.105-30.192 2.898Q-30.192 2.764-30.287 2.649Q-30.382 2.534-30.521 2.463L-31.381 2.024Q-31.669 2.139-31.865 2.338Q-32.062 2.537-32.062 2.810M-31.657 1.265L-30.885 1.660Q-30.731 1.587-30.610 1.499Q-30.490 1.411-30.410 1.292Q-30.331 1.172-30.331 1.018Q-30.331 0.837-30.455 0.710Q-30.580 0.584-30.762 0.524Q-30.944 0.464-31.127 0.464Q-31.298 0.464-31.477 0.504Q-31.657 0.544-31.788 0.647Q-31.920 0.750-31.920 0.923Q-31.920 1.121-31.657 1.265",[1545],[1541,2519],{"fill":1557,"d":2520},"M151.548 5.349v3.528",[1533,2522,2524],{"transform":2523},"translate(182.673 13.047)",[1541,2525],{"d":2526,"fill":1535,"stroke":1535,"className":2527,"style":1706},"M-31.910 3.359Q-31.803 3.428-31.677 3.449Q-31.552 3.469-31.386 3.469Q-31.132 3.469-30.922 3.345Q-30.712 3.220-30.570 2.998Q-30.453 2.803-30.414 2.560Q-30.375 2.317-30.375 2.024Q-30.512 2.249-30.729 2.377Q-30.946 2.505-31.195 2.505Q-31.430 2.505-31.655 2.424Q-31.881 2.344-32.056 2.192Q-32.230 2.041-32.328 1.836Q-32.426 1.631-32.426 1.384Q-32.426 1.123-32.312 0.911Q-32.199 0.698-32.006 0.551Q-31.813 0.403-31.580 0.328Q-31.347 0.254-31.090 0.254Q-30.741 0.254-30.496 0.398Q-30.250 0.542-30.101 0.790Q-29.952 1.038-29.889 1.334Q-29.826 1.631-29.826 1.968Q-29.826 2.402-30.026 2.804Q-30.226 3.206-30.581 3.450Q-30.936 3.694-31.386 3.694Q-31.610 3.694-31.810 3.643Q-32.011 3.591-32.141 3.459Q-32.272 3.328-32.272 3.098Q-32.272 2.981-32.191 2.903Q-32.111 2.825-31.996 2.825Q-31.879 2.825-31.799 2.902Q-31.720 2.979-31.720 3.098Q-31.720 3.191-31.773 3.264Q-31.825 3.337-31.910 3.359M-31.742 2.058Q-31.627 2.197-31.487 2.258Q-31.347 2.319-31.161 2.319Q-30.944 2.319-30.768 2.203Q-30.592 2.087-30.492 1.896Q-30.392 1.704-30.392 1.484Q-30.392 1.423-30.397 1.394Q-30.394 1.387-30.393 1.379Q-30.392 1.372-30.392 1.360Q-30.392 1.128-30.465 0.922Q-30.538 0.715-30.697 0.590Q-30.856 0.464-31.090 0.464Q-31.293 0.464-31.442 0.520Q-31.591 0.576-31.715 0.718Q-31.820 0.837-31.848 0.991Q-31.876 1.145-31.876 1.379L-31.876 1.394Q-31.876 1.626-31.853 1.780Q-31.830 1.934-31.742 2.058",[1545],[1541,2529],{"fill":1557,"stroke":2390,"d":2530,"style":1681},"M25.56 1.82V-51.1",[1533,2532,2533],{"fill":2390,"stroke":2390},[1533,2534,2537,2544,2550,2556,2562],{"fill":2390,"stroke":1557,"fontFamily":2535,"fontSize":2536},"cmr8","8",[1533,2538,2540],{"transform":2539},"translate(40.006 -53.272)",[1541,2541],{"d":2542,"fill":2390,"stroke":2390,"className":2543,"style":1546},"M-32.588-7.611Q-32.588-8.115-32.332-8.547Q-32.076-8.979-31.640-9.230Q-31.205-9.482-30.705-9.482Q-30.318-9.482-29.976-9.338Q-29.635-9.193-29.373-8.932Q-29.111-8.670-28.969-8.334Q-28.826-7.998-28.826-7.611Q-28.826-7.119-29.090-6.709Q-29.353-6.299-29.783-6.068Q-30.213-5.838-30.705-5.838Q-31.197-5.838-31.631-6.070Q-32.064-6.303-32.326-6.711Q-32.588-7.119-32.588-7.611M-30.705-6.115Q-30.248-6.115-29.996-6.338Q-29.744-6.561-29.656-6.912Q-29.568-7.264-29.568-7.709Q-29.568-8.139-29.662-8.477Q-29.756-8.814-30.010-9.021Q-30.264-9.229-30.705-9.229Q-31.353-9.229-31.597-8.812Q-31.842-8.396-31.842-7.709Q-31.842-7.264-31.754-6.912Q-31.666-6.561-31.414-6.338Q-31.162-6.115-30.705-6.115M-26.459-4.365L-28.314-4.365L-28.314-4.658Q-28.045-4.658-27.877-4.703Q-27.709-4.748-27.709-4.924L-27.709-8.748Q-27.709-8.955-27.865-9.008Q-28.021-9.061-28.314-9.061L-28.314-9.357L-27.092-9.443L-27.092-8.979Q-26.861-9.201-26.547-9.322Q-26.232-9.443-25.892-9.443Q-25.420-9.443-25.015-9.197Q-24.611-8.951-24.379-8.535Q-24.146-8.119-24.146-7.643Q-24.146-7.268-24.295-6.939Q-24.443-6.611-24.713-6.359Q-24.982-6.107-25.326-5.973Q-25.670-5.838-26.029-5.838Q-26.318-5.838-26.590-5.959Q-26.861-6.080-27.068-6.291L-27.068-4.924Q-27.068-4.748-26.900-4.703Q-26.732-4.658-26.459-4.658L-26.459-4.365M-27.068-8.580L-27.068-6.740Q-26.916-6.451-26.654-6.271Q-26.392-6.092-26.084-6.092Q-25.799-6.092-25.576-6.230Q-25.353-6.369-25.201-6.600Q-25.049-6.830-24.971-7.102Q-24.892-7.373-24.892-7.643Q-24.892-7.975-25.017-8.332Q-25.142-8.689-25.390-8.926Q-25.639-9.162-25.986-9.162Q-26.310-9.162-26.605-9.006Q-26.900-8.850-27.068-8.580",[1545],[1533,2545,2546],{"transform":2539},[1541,2547],{"d":2548,"fill":2390,"stroke":2390,"className":2549,"style":1546},"M-23.379-7.670Q-23.379-8.150-23.146-8.566Q-22.914-8.982-22.504-9.232Q-22.094-9.482-21.617-9.482Q-20.887-9.482-20.488-9.041Q-20.090-8.600-20.090-7.869Q-20.090-7.764-20.183-7.740L-22.633-7.740L-22.633-7.670Q-22.633-7.260-22.512-6.904Q-22.390-6.549-22.119-6.332Q-21.847-6.115-21.418-6.115Q-21.055-6.115-20.758-6.344Q-20.461-6.572-20.359-6.924Q-20.351-6.971-20.265-6.986L-20.183-6.986Q-20.090-6.959-20.090-6.877Q-20.090-6.869-20.097-6.838Q-20.160-6.611-20.299-6.428Q-20.437-6.244-20.629-6.111Q-20.820-5.979-21.039-5.908Q-21.258-5.838-21.496-5.838Q-21.867-5.838-22.205-5.975Q-22.543-6.111-22.810-6.363Q-23.078-6.615-23.228-6.955Q-23.379-7.295-23.379-7.670M-22.625-7.979L-20.664-7.979Q-20.664-8.283-20.765-8.574Q-20.867-8.865-21.084-9.047Q-21.301-9.229-21.617-9.229Q-21.918-9.229-22.148-9.041Q-22.379-8.854-22.502-8.562Q-22.625-8.271-22.625-7.979M-17.672-5.916L-19.527-5.916L-19.527-6.213Q-19.254-6.213-19.086-6.260Q-18.918-6.307-18.918-6.475L-18.918-8.611Q-18.918-8.826-18.980-8.922Q-19.043-9.018-19.162-9.039Q-19.281-9.061-19.527-9.061L-19.527-9.357L-18.336-9.443L-18.336-8.709Q-18.222-8.924-18.029-9.092Q-17.836-9.260-17.597-9.352Q-17.359-9.443-17.105-9.443Q-15.937-9.443-15.937-8.365L-15.937-6.475Q-15.937-6.307-15.767-6.260Q-15.597-6.213-15.328-6.213L-15.328-5.916L-17.183-5.916L-17.183-6.213Q-16.910-6.213-16.742-6.260Q-16.574-6.307-16.574-6.475L-16.574-8.350Q-16.574-8.732-16.695-8.961Q-16.816-9.189-17.168-9.189Q-17.480-9.189-17.734-9.027Q-17.988-8.865-18.135-8.596Q-18.281-8.326-18.281-8.029L-18.281-6.475Q-18.281-6.307-18.111-6.260Q-17.941-6.213-17.672-6.213L-17.672-5.916M-14.840-5.924L-14.840-7.146Q-14.840-7.174-14.808-7.205Q-14.777-7.236-14.754-7.236L-14.648-7.236Q-14.578-7.236-14.562-7.174Q-14.500-6.854-14.361-6.613Q-14.222-6.373-13.990-6.232Q-13.758-6.092-13.449-6.092Q-13.211-6.092-13.002-6.152Q-12.793-6.213-12.656-6.361Q-12.519-6.510-12.519-6.756Q-12.519-7.010-12.730-7.176Q-12.941-7.342-13.211-7.396L-13.832-7.510Q-14.238-7.588-14.539-7.844Q-14.840-8.100-14.840-8.475Q-14.840-8.842-14.638-9.064Q-14.437-9.287-14.113-9.385Q-13.789-9.482-13.449-9.482Q-12.984-9.482-12.687-9.275L-12.465-9.459Q-12.441-9.482-12.410-9.482L-12.359-9.482Q-12.328-9.482-12.301-9.455Q-12.273-9.428-12.273-9.396L-12.273-8.412Q-12.273-8.381-12.299-8.352Q-12.324-8.322-12.359-8.322L-12.465-8.322Q-12.500-8.322-12.527-8.350Q-12.555-8.377-12.555-8.412Q-12.555-8.811-12.806-9.031Q-13.058-9.252-13.457-9.252Q-13.812-9.252-14.096-9.129Q-14.379-9.006-14.379-8.701Q-14.379-8.482-14.178-8.350Q-13.976-8.217-13.730-8.174L-13.105-8.061Q-12.676-7.971-12.367-7.674Q-12.058-7.377-12.058-6.963Q-12.058-6.393-12.457-6.115Q-12.855-5.838-13.449-5.838Q-14-5.838-14.351-6.174L-14.648-5.861Q-14.672-5.838-14.707-5.838L-14.754-5.838Q-14.777-5.838-14.808-5.869Q-14.840-5.900-14.840-5.924",[1545],[1533,2551,2552],{"transform":2539},[1541,2553],{"d":2554,"fill":2390,"stroke":2390,"className":2555,"style":1546},"M-6.220-5.916L-8.579-5.916L-8.579-6.213Q-8.255-6.213-8.013-6.260Q-7.771-6.307-7.771-6.475L-7.771-10.818Q-7.771-10.990-8.013-11.037Q-8.255-11.084-8.579-11.084L-8.579-11.381L-5.986-11.381Q-5.654-11.381-5.267-11.295Q-4.880-11.209-4.533-11.035Q-4.185-10.861-3.966-10.580Q-3.747-10.299-3.747-9.932Q-3.747-9.607-3.949-9.342Q-4.150-9.076-4.456-8.900Q-4.763-8.725-5.091-8.635Q-4.724-8.514-4.464-8.244Q-4.204-7.975-4.154-7.611L-4.060-6.916Q-3.990-6.467-3.892-6.236Q-3.794-6.006-3.497-6.006Q-3.251-6.006-3.118-6.223Q-2.986-6.439-2.986-6.701Q-2.966-6.775-2.884-6.795L-2.802-6.795Q-2.708-6.771-2.708-6.678Q-2.708-6.447-2.806-6.232Q-2.904-6.018-3.081-5.883Q-3.259-5.748-3.490-5.748Q-4.087-5.748-4.505-6.035Q-4.923-6.322-4.923-6.893L-4.923-7.588Q-4.923-7.869-5.076-8.084Q-5.228-8.299-5.478-8.412Q-5.728-8.525-6.001-8.525L-7.029-8.525L-7.029-6.475Q-7.029-6.311-6.785-6.262Q-6.540-6.213-6.220-6.213L-6.220-5.916M-7.029-10.818L-7.029-8.779L-6.099-8.779Q-5.779-8.779-5.511-8.832Q-5.243-8.885-5.044-9.012Q-4.845-9.139-4.728-9.371Q-4.611-9.604-4.611-9.932Q-4.611-10.584-5.007-10.834Q-5.404-11.084-6.099-11.084L-6.626-11.084Q-6.845-11.084-6.937-11.041Q-7.029-10.998-7.029-10.818M-1.892-6.549Q-1.701-6.275-1.345-6.148Q-0.990-6.021-0.607-6.021Q-0.271-6.021-0.062-6.207Q0.147-6.393 0.243-6.686Q0.339-6.979 0.339-7.291Q0.339-7.615 0.241-7.910Q0.143-8.205-0.070-8.389Q-0.283-8.572-0.615-8.572L-1.181-8.572Q-1.212-8.572-1.242-8.602Q-1.271-8.631-1.271-8.658L-1.271-8.740Q-1.271-8.775-1.242-8.801Q-1.212-8.826-1.181-8.826L-0.701-8.861Q-0.415-8.861-0.218-9.066Q-0.021-9.271 0.075-9.566Q0.171-9.861 0.171-10.139Q0.171-10.518-0.029-10.756Q-0.228-10.994-0.607-10.994Q-0.927-10.994-1.216-10.887Q-1.505-10.779-1.669-10.557Q-1.490-10.557-1.367-10.430Q-1.243-10.303-1.243-10.131Q-1.243-9.959-1.368-9.834Q-1.493-9.709-1.669-9.709Q-1.841-9.709-1.966-9.834Q-2.091-9.959-2.091-10.131Q-2.091-10.498-1.867-10.746Q-1.642-10.994-1.302-11.115Q-0.962-11.236-0.607-11.236Q-0.259-11.236 0.104-11.115Q0.467-10.994 0.715-10.744Q0.964-10.494 0.964-10.139Q0.964-9.654 0.645-9.271Q0.327-8.889-0.150-8.717Q0.401-8.607 0.801-8.221Q1.202-7.834 1.202-7.299Q1.202-6.842 0.938-6.486Q0.674-6.131 0.253-5.939Q-0.169-5.748-0.607-5.748Q-1.017-5.748-1.410-5.883Q-1.802-6.018-2.068-6.303Q-2.333-6.588-2.333-7.006Q-2.333-7.201-2.201-7.330Q-2.068-7.459-1.876-7.459Q-1.751-7.459-1.648-7.400Q-1.544-7.342-1.482-7.236Q-1.419-7.131-1.419-7.006Q-1.419-6.811-1.554-6.680Q-1.689-6.549-1.892-6.549M2.280-6.381Q2.280-6.564 2.417-6.701Q2.553-6.838 2.745-6.838Q2.936-6.838 3.069-6.705Q3.202-6.572 3.202-6.381Q3.202-6.182 3.069-6.049Q2.936-5.916 2.745-5.916Q2.553-5.916 2.417-6.053Q2.280-6.189 2.280-6.381M2.280-8.908Q2.280-9.092 2.417-9.229Q2.553-9.365 2.745-9.365Q2.936-9.365 3.069-9.232Q3.202-9.100 3.202-8.908Q3.202-8.709 3.069-8.576Q2.936-8.443 2.745-8.443Q2.553-8.443 2.417-8.580Q2.280-8.717 2.280-8.908",[1545],[1533,2557,2558],{"transform":2539},[1541,2559],{"d":2560,"fill":2390,"stroke":2390,"className":2561,"style":1546},"M-26.558 3.662Q-27.039 3.662-27.447 3.418Q-27.855 3.174-28.093 2.760Q-28.332 2.346-28.332 1.857Q-28.332 1.365-28.074 0.949Q-27.816 0.533-27.384 0.295Q-26.953 0.057-26.461 0.057Q-25.840 0.057-25.390 0.494L-25.390-1.135Q-25.390-1.350-25.453-1.445Q-25.515-1.541-25.633-1.562Q-25.750-1.584-25.996-1.584L-25.996-1.881L-24.773-1.967L-24.773 2.842Q-24.773 3.053-24.711 3.148Q-24.648 3.244-24.531 3.266Q-24.414 3.287-24.164 3.287L-24.164 3.584L-25.414 3.662L-25.414 3.178Q-25.879 3.662-26.558 3.662M-26.492 3.408Q-26.152 3.408-25.859 3.217Q-25.566 3.025-25.414 2.729L-25.414 0.897Q-25.562 0.623-25.824 0.467Q-26.086 0.311-26.398 0.311Q-27.023 0.311-27.306 0.758Q-27.590 1.205-27.590 1.865Q-27.590 2.510-27.338 2.959Q-27.086 3.408-26.492 3.408M-23.656 1.830Q-23.656 1.350-23.424 0.934Q-23.191 0.518-22.781 0.268Q-22.371 0.018-21.894 0.018Q-21.164 0.018-20.765 0.459Q-20.367 0.900-20.367 1.631Q-20.367 1.736-20.461 1.760L-22.910 1.760L-22.910 1.830Q-22.910 2.240-22.789 2.596Q-22.668 2.951-22.396 3.168Q-22.125 3.385-21.695 3.385Q-21.332 3.385-21.035 3.156Q-20.738 2.928-20.636 2.576Q-20.629 2.529-20.543 2.514L-20.461 2.514Q-20.367 2.541-20.367 2.623Q-20.367 2.631-20.375 2.662Q-20.437 2.889-20.576 3.072Q-20.715 3.256-20.906 3.389Q-21.097 3.522-21.316 3.592Q-21.535 3.662-21.773 3.662Q-22.144 3.662-22.482 3.525Q-22.820 3.389-23.088 3.137Q-23.355 2.885-23.506 2.545Q-23.656 2.205-23.656 1.830M-22.902 1.522L-20.941 1.522Q-20.941 1.217-21.043 0.926Q-21.144 0.635-21.361 0.453Q-21.578 0.272-21.894 0.272Q-22.195 0.272-22.425 0.459Q-22.656 0.647-22.779 0.938Q-22.902 1.229-22.902 1.522M-17.996 5.135L-19.851 5.135L-19.851 4.842Q-19.582 4.842-19.414 4.797Q-19.246 4.752-19.246 4.576L-19.246 0.752Q-19.246 0.545-19.402 0.492Q-19.558 0.439-19.851 0.439L-19.851 0.143L-18.629 0.057L-18.629 0.522Q-18.398 0.299-18.084 0.178Q-17.769 0.057-17.429 0.057Q-16.957 0.057-16.552 0.303Q-16.148 0.549-15.916 0.965Q-15.683 1.381-15.683 1.857Q-15.683 2.232-15.832 2.561Q-15.980 2.889-16.250 3.141Q-16.519 3.393-16.863 3.527Q-17.207 3.662-17.566 3.662Q-17.855 3.662-18.127 3.541Q-18.398 3.420-18.605 3.209L-18.605 4.576Q-18.605 4.752-18.437 4.797Q-18.269 4.842-17.996 4.842L-17.996 5.135M-18.605 0.920L-18.605 2.760Q-18.453 3.049-18.191 3.229Q-17.929 3.408-17.621 3.408Q-17.336 3.408-17.113 3.270Q-16.890 3.131-16.738 2.900Q-16.586 2.670-16.508 2.398Q-16.429 2.127-16.429 1.857Q-16.429 1.525-16.554 1.168Q-16.679 0.811-16.927 0.574Q-17.175 0.338-17.523 0.338Q-17.847 0.338-18.142 0.494Q-18.437 0.650-18.605 0.920M-14.535 2.623L-14.535 0.432L-15.238 0.432L-15.238 0.178Q-14.883 0.178-14.640-0.055Q-14.398-0.287-14.287-0.635Q-14.175-0.982-14.175-1.338L-13.894-1.338L-13.894 0.135L-12.718 0.135L-12.718 0.432L-13.894 0.432L-13.894 2.607Q-13.894 2.928-13.775 3.156Q-13.656 3.385-13.375 3.385Q-13.195 3.385-13.078 3.262Q-12.961 3.139-12.908 2.959Q-12.855 2.779-12.855 2.607L-12.855 2.135L-12.574 2.135L-12.574 2.623Q-12.574 2.877-12.679 3.117Q-12.785 3.357-12.982 3.510Q-13.179 3.662-13.437 3.662Q-13.754 3.662-14.006 3.539Q-14.258 3.416-14.396 3.182Q-14.535 2.947-14.535 2.623M-9.925 3.584L-11.781 3.584L-11.781 3.287Q-11.508 3.287-11.340 3.240Q-11.172 3.193-11.172 3.025L-11.172-1.135Q-11.172-1.350-11.234-1.445Q-11.297-1.541-11.416-1.562Q-11.535-1.584-11.781-1.584L-11.781-1.881L-10.558-1.967L-10.558 0.736Q-10.433 0.525-10.246 0.375Q-10.058 0.225-9.832 0.141Q-9.605 0.057-9.359 0.057Q-8.191 0.057-8.191 1.135L-8.191 3.025Q-8.191 3.193-8.021 3.240Q-7.851 3.287-7.582 3.287L-7.582 3.584L-9.437 3.584L-9.437 3.287Q-9.164 3.287-8.996 3.240Q-8.828 3.193-8.828 3.025L-8.828 1.150Q-8.828 0.768-8.949 0.539Q-9.070 0.311-9.422 0.311Q-9.734 0.311-9.988 0.473Q-10.242 0.635-10.388 0.904Q-10.535 1.174-10.535 1.471L-10.535 3.025Q-10.535 3.193-10.365 3.240Q-10.195 3.287-9.925 3.287",[1545],[1533,2563,2564],{"transform":2539},[1541,2565],{"d":2566,"fill":2390,"stroke":2390,"className":2567,"style":1546},"M-3.736 2.951Q-3.545 3.225-3.189 3.352Q-2.834 3.479-2.451 3.479Q-2.115 3.479-1.906 3.293Q-1.697 3.107-1.601 2.814Q-1.506 2.522-1.506 2.209Q-1.506 1.885-1.603 1.590Q-1.701 1.295-1.914 1.111Q-2.127 0.928-2.459 0.928L-3.025 0.928Q-3.056 0.928-3.086 0.898Q-3.115 0.869-3.115 0.842L-3.115 0.760Q-3.115 0.725-3.086 0.699Q-3.056 0.674-3.025 0.674L-2.545 0.639Q-2.259 0.639-2.062 0.434Q-1.865 0.229-1.769-0.066Q-1.674-0.361-1.674-0.639Q-1.674-1.018-1.873-1.256Q-2.072-1.494-2.451-1.494Q-2.771-1.494-3.060-1.387Q-3.349-1.279-3.513-1.057Q-3.334-1.057-3.211-0.930Q-3.088-0.803-3.088-0.631Q-3.088-0.459-3.213-0.334Q-3.338-0.209-3.513-0.209Q-3.685-0.209-3.810-0.334Q-3.935-0.459-3.935-0.631Q-3.935-0.998-3.711-1.246Q-3.486-1.494-3.146-1.615Q-2.806-1.736-2.451-1.736Q-2.103-1.736-1.740-1.615Q-1.377-1.494-1.129-1.244Q-0.881-0.994-0.881-0.639Q-0.881-0.154-1.199 0.229Q-1.517 0.611-1.994 0.783Q-1.443 0.893-1.043 1.279Q-0.642 1.666-0.642 2.201Q-0.642 2.658-0.906 3.014Q-1.170 3.369-1.591 3.561Q-2.013 3.752-2.451 3.752Q-2.861 3.752-3.254 3.617Q-3.646 3.482-3.912 3.197Q-4.177 2.912-4.177 2.494Q-4.177 2.299-4.045 2.170Q-3.912 2.041-3.720 2.041Q-3.595 2.041-3.492 2.100Q-3.388 2.158-3.326 2.264Q-3.263 2.369-3.263 2.494Q-3.263 2.689-3.398 2.820Q-3.533 2.951-3.736 2.951",[1545],[1748,2569,2571,2595,2596,2611,2612,2627,2628,2643],{"className":2570},[1751],[424,2572,2574],{"className":2573},[427],[424,2575,2577],{"className":2576,"ariaHidden":432},[431],[424,2578,2580,2584],{"className":2579},[436],[424,2581],{"className":2582,"style":2583},[440],"height:0.6833em;",[424,2585,2588],{"className":2586},[2202,2587],"textsc",[424,2589,2591],{"className":2590},[445,1976],[424,2592,2594],{"className":2593},[445],"Partition"," assigning six intervals in start order to three machines. Interval ",[424,2597,2599],{"className":2598},[427],[424,2600,2602],{"className":2601,"ariaHidden":432},[431],[424,2603,2605,2608],{"className":2604},[436],[424,2606],{"className":2607,"style":2302},[440],[424,2609,2306],{"className":2610},[445]," (red) arrives while R1 and R2 are still busy, opening R3; later intervals reuse a machine that has freed. The forced opening at ",[424,2613,2615],{"className":2614},[427],[424,2616,2618],{"className":2617,"ariaHidden":432},[431],[424,2619,2621,2624],{"className":2620},[436],[424,2622],{"className":2623,"style":2302},[440],[424,2625,2306],{"className":2626},[445]," is exactly a depth-",[424,2629,2631],{"className":2630},[427],[424,2632,2634],{"className":2633,"ariaHidden":432},[431],[424,2635,2637,2640],{"className":2636},[436],[424,2638],{"className":2639,"style":2302},[440],[424,2641,2306],{"className":2642},[445]," point.",[728,2645,2646],{"type":2095},[381,2647,2648,2651,2652,2673,2674,2689,2690,2692,2693,2708,2709,2712,2713,2765,2766,2781,2782,2947,2948,2963,2964,3016,3017,3069,3070,3085,3086,3115,3116,3131,3132,3135,3150,3151],{},[385,2649,2650],{},"Lemma (Greedy matches the bound)."," ",[424,2653,2655],{"className":2654},[427],[424,2656,2658],{"className":2657,"ariaHidden":432},[431],[424,2659,2661,2664],{"className":2660},[436],[424,2662],{"className":2663,"style":2583},[440],[424,2665,2667],{"className":2666},[2202,2587],[424,2668,2670],{"className":2669},[445,1976],[424,2671,2594],{"className":2672},[445]," never opens more than ",[424,2675,2677],{"className":2676},[427],[424,2678,2680],{"className":2679,"ariaHidden":432},[431],[424,2681,2683,2686],{"className":2682},[436],[424,2684],{"className":2685,"style":1496},[440],[424,2687,1907],{"className":2688},[445,446],"\nmachines. ",[399,2691,2120],{}," Suppose it opens a brand-new machine while processing\ninterval ",[424,2694,2696],{"className":2695},[427],[424,2697,2699],{"className":2698,"ariaHidden":432},[431],[424,2700,2702,2705],{"className":2701},[436],[424,2703],{"className":2704,"style":461},[440],[424,2706,465],{"className":2707},[445,446],". It does so only because ",[399,2710,2711],{},"every"," machine already open is busy at\ntime ",[424,2714,2716],{"className":2715},[427],[424,2717,2719],{"className":2718,"ariaHidden":432},[431],[424,2720,2722,2725],{"className":2721},[436],[424,2723],{"className":2724,"style":753},[440],[424,2726,2728,2731],{"className":2727},[445],[424,2729,491],{"className":2730},[445,446],[424,2732,2734],{"className":2733},[495],[424,2735,2737,2757],{"className":2736},[499,500],[424,2738,2740,2754],{"className":2739},[504],[424,2741,2743],{"className":2742,"style":509},[508],[424,2744,2745,2748],{"style":512},[424,2746],{"className":2747,"style":517},[516],[424,2749,2751],{"className":2750},[521,522,523,524],[424,2752,465],{"className":2753},[445,446,524],[424,2755,532],{"className":2756},[531],[424,2758,2760],{"className":2759},[504],[424,2761,2763],{"className":2762,"style":539},[508],[424,2764],{},", each holding an interval ",[424,2767,2769],{"className":2768},[427],[424,2770,2772],{"className":2771,"ariaHidden":432},[431],[424,2773,2775,2778],{"className":2774},[436],[424,2776],{"className":2777,"style":909},[440],[424,2779,914],{"className":2780,"style":913},[445,446]," with ",[424,2783,2785],{"className":2784},[427],[424,2786,2788,2844,2901],{"className":2787,"ariaHidden":432},[431],[424,2789,2791,2795,2835,2838,2841],{"className":2790},[436],[424,2792],{"className":2793,"style":2794},[440],"height:0.9221em;vertical-align:-0.2861em;",[424,2796,2798,2801],{"className":2797},[445],[424,2799,491],{"className":2800},[445,446],[424,2802,2804],{"className":2803},[495],[424,2805,2807,2827],{"className":2806},[499,500],[424,2808,2810,2824],{"className":2809},[504],[424,2811,2813],{"className":2812,"style":509},[508],[424,2814,2815,2818],{"style":512},[424,2816],{"className":2817,"style":517},[516],[424,2819,2821],{"className":2820},[521,522,523,524],[424,2822,914],{"className":2823,"style":913},[445,446,524],[424,2825,532],{"className":2826},[531],[424,2828,2830],{"className":2829},[504],[424,2831,2833],{"className":2832,"style":1196},[508],[424,2834],{},[424,2836],{"className":2837,"style":1142},[550],[424,2839,1147],{"className":2840},[1146],[424,2842],{"className":2843,"style":1142},[550],[424,2845,2847,2851,2891,2894,2898],{"className":2846},[436],[424,2848],{"className":2849,"style":2850},[440],"height:0.6891em;vertical-align:-0.15em;",[424,2852,2854,2857],{"className":2853},[445],[424,2855,491],{"className":2856},[445,446],[424,2858,2860],{"className":2859},[495],[424,2861,2863,2883],{"className":2862},[499,500],[424,2864,2866,2880],{"className":2865},[504],[424,2867,2869],{"className":2868,"style":509},[508],[424,2870,2871,2874],{"style":512},[424,2872],{"className":2873,"style":517},[516],[424,2875,2877],{"className":2876},[521,522,523,524],[424,2878,465],{"className":2879},[445,446,524],[424,2881,532],{"className":2882},[531],[424,2884,2886],{"className":2885},[504],[424,2887,2889],{"className":2888,"style":539},[508],[424,2890],{},[424,2892],{"className":2893,"style":1142},[550],[424,2895,2897],{"className":2896},[1146],"\u003C",[424,2899],{"className":2900,"style":1142},[550],[424,2902,2904,2907],{"className":2903},[436],[424,2905],{"className":2906,"style":1157},[440],[424,2908,2910,2913],{"className":2909},[445],[424,2911,559],{"className":2912,"style":558},[445,446],[424,2914,2916],{"className":2915},[495],[424,2917,2919,2939],{"className":2918},[499,500],[424,2920,2922,2936],{"className":2921},[504],[424,2923,2925],{"className":2924,"style":509},[508],[424,2926,2927,2930],{"style":574},[424,2928],{"className":2929,"style":517},[516],[424,2931,2933],{"className":2932},[521,522,523,524],[424,2934,914],{"className":2935,"style":913},[445,446,524],[424,2937,532],{"className":2938},[531],[424,2940,2942],{"className":2941},[504],[424,2943,2945],{"className":2944,"style":1196},[508],[424,2946],{},". Those\nintervals, together with ",[424,2949,2951],{"className":2950},[427],[424,2952,2954],{"className":2953,"ariaHidden":432},[431],[424,2955,2957,2960],{"className":2956},[436],[424,2958],{"className":2959,"style":461},[440],[424,2961,465],{"className":2962},[445,446],", all contain the point ",[424,2965,2967],{"className":2966},[427],[424,2968,2970],{"className":2969,"ariaHidden":432},[431],[424,2971,2973,2976],{"className":2972},[436],[424,2974],{"className":2975,"style":753},[440],[424,2977,2979,2982],{"className":2978},[445],[424,2980,491],{"className":2981},[445,446],[424,2983,2985],{"className":2984},[495],[424,2986,2988,3008],{"className":2987},[499,500],[424,2989,2991,3005],{"className":2990},[504],[424,2992,2994],{"className":2993,"style":509},[508],[424,2995,2996,2999],{"style":512},[424,2997],{"className":2998,"style":517},[516],[424,3000,3002],{"className":3001},[521,522,523,524],[424,3003,465],{"className":3004},[445,446,524],[424,3006,532],{"className":3007},[531],[424,3009,3011],{"className":3010},[504],[424,3012,3014],{"className":3013,"style":539},[508],[424,3015],{},", so the depth at\n",[424,3018,3020],{"className":3019},[427],[424,3021,3023],{"className":3022,"ariaHidden":432},[431],[424,3024,3026,3029],{"className":3025},[436],[424,3027],{"className":3028,"style":753},[440],[424,3030,3032,3035],{"className":3031},[445],[424,3033,491],{"className":3034},[445,446],[424,3036,3038],{"className":3037},[495],[424,3039,3041,3061],{"className":3040},[499,500],[424,3042,3044,3058],{"className":3043},[504],[424,3045,3047],{"className":3046,"style":509},[508],[424,3048,3049,3052],{"style":512},[424,3050],{"className":3051,"style":517},[516],[424,3053,3055],{"className":3054},[521,522,523,524],[424,3056,465],{"className":3057},[445,446,524],[424,3059,532],{"className":3060},[531],[424,3062,3064],{"className":3063},[504],[424,3065,3067],{"className":3066,"style":539},[508],[424,3068],{}," is at least the number of machines open after this step. Hence whenever\nthe count of machines rises to ",[424,3071,3073],{"className":3072},[427],[424,3074,3076],{"className":3075,"ariaHidden":432},[431],[424,3077,3079,3082],{"className":3078},[436],[424,3080],{"className":3081,"style":1496},[440],[424,3083,1501],{"className":3084,"style":1500},[445,446],", some point has depth ",[424,3087,3089],{"className":3088},[427],[424,3090,3092,3106],{"className":3091,"ariaHidden":432},[431],[424,3093,3095,3099,3103],{"className":3094},[436],[424,3096],{"className":3097,"style":3098},[440],"height:0.7719em;vertical-align:-0.136em;",[424,3100,3102],{"className":3101},[1146],"≥",[424,3104],{"className":3105,"style":1142},[550],[424,3107,3109,3112],{"className":3108},[436],[424,3110],{"className":3111,"style":1496},[440],[424,3113,1501],{"className":3114,"style":1500},[445,446],", so the final\ncount never exceeds ",[424,3117,3119],{"className":3118},[427],[424,3120,3122],{"className":3121,"ariaHidden":432},[431],[424,3123,3125,3128],{"className":3124},[436],[424,3126],{"className":3127,"style":1496},[440],[424,3129,1907],{"className":3130},[445,446],". Combined with the lower bound, greedy uses ",[399,3133,3134],{},"exactly",[424,3136,3138],{"className":3137},[427],[424,3139,3141],{"className":3140,"ariaHidden":432},[431],[424,3142,3144,3147],{"className":3143},[436],[424,3145],{"className":3146,"style":1496},[440],[424,3148,1907],{"className":3149},[445,446],". ",[424,3152,3154],{"className":3153},[427],[424,3155,3157],{"className":3156,"ariaHidden":432},[431],[424,3158,3160,3163],{"className":3159},[436],[424,3161],{"className":3162,"style":2198},[440],[424,3164,3166],{"className":3165},[2202,2203],[424,3167,2208],{"className":3168},[445,2207],[381,3170,3171,3172,3175,3176,3215,3216,3249,3250,3289,3290,3297,3298,3301,3302,3305,3306,3321],{},"Because we processed intervals in start order, no interval we open a machine for\noverlaps a ",[399,3173,3174],{},"future"," interval that already passed, so the depth witness is real,\nnot an artifact of order. The sort is ",[424,3177,3179],{"className":3178},[427],[424,3180,3182],{"className":3181,"ariaHidden":432},[431],[424,3183,3185,3188,3191,3194,3197,3200,3206,3209,3212],{"className":3184},[436],[424,3186],{"className":3187,"style":479},[440],[424,3189,696],{"className":3190},[445,695],[424,3192,700],{"className":3193},[483],[424,3195,447],{"className":3196},[445,446],[424,3198],{"className":3199,"style":551},[550],[424,3201,3203],{"className":3202},[710],[424,3204,716],{"className":3205,"style":715},[445,714],[424,3207],{"className":3208,"style":551},[550],[424,3210,447],{"className":3211},[445,446],[424,3213,599],{"className":3214},[598]," and each interval does\n",[424,3217,3219],{"className":3218},[427],[424,3220,3222],{"className":3221,"ariaHidden":432},[431],[424,3223,3225,3228,3231,3234,3240,3243,3246],{"className":3224},[436],[424,3226],{"className":3227,"style":479},[440],[424,3229,696],{"className":3230},[445,695],[424,3232,700],{"className":3233},[483],[424,3235,3237],{"className":3236},[710],[424,3238,716],{"className":3239,"style":715},[445,714],[424,3241],{"className":3242,"style":551},[550],[424,3244,447],{"className":3245},[445,446],[424,3247,599],{"className":3248},[598]," heap work, for ",[424,3251,3253],{"className":3252},[427],[424,3254,3256],{"className":3255,"ariaHidden":432},[431],[424,3257,3259,3262,3265,3268,3271,3274,3280,3283,3286],{"className":3258},[436],[424,3260],{"className":3261,"style":479},[440],[424,3263,696],{"className":3264},[445,695],[424,3266,700],{"className":3267},[483],[424,3269,447],{"className":3270},[445,446],[424,3272],{"className":3273,"style":551},[550],[424,3275,3277],{"className":3276},[710],[424,3278,716],{"className":3279,"style":715},[445,714],[424,3281],{"className":3282,"style":551},[550],[424,3284,447],{"className":3285},[445,446],[424,3287,599],{"className":3288},[598]," overall.",[606,3291,3292],{},[394,3293,2306],{"href":3294,"ariaDescribedBy":3295,"dataFootnoteRef":376,"id":3296},"#user-content-fn-erickson-greedy",[612],"user-content-fnref-erickson-greedy"," This is\nexactly LeetCode's ",[399,3299,3300],{},"Meeting Rooms II"," and ",[399,3303,3304],{},"Minimum Number of Arrows"," in disguise:\nthe first asks for ",[424,3307,3309],{"className":3308},[427],[424,3310,3312],{"className":3311,"ariaHidden":432},[431],[424,3313,3315,3318],{"className":3314},[436],[424,3316],{"className":3317,"style":1496},[440],[424,3319,1907],{"className":3320},[445,446]," directly; the second asks for the complementary count of\npoints that stab all intervals.",[416,3323,3325],{"id":3324},"minimizing-maximum-lateness","Minimizing maximum lateness",[381,3327,3328,3329,3332,3333,3336,3337,3352,3353,3368,3369,3422,3423,2651,3425,3477,3478,3493,3494,3546,3547,3550,3551,3739,3740,3743,3918,3919],{},"The third problem changes the objective from ",[399,3330,3331],{},"count"," to ",[399,3334,3335],{},"timing",". We have one\nmachine and ",[424,3338,3340],{"className":3339},[427],[424,3341,3343],{"className":3342,"ariaHidden":432},[431],[424,3344,3346,3349],{"className":3345},[436],[424,3347],{"className":3348,"style":441},[440],[424,3350,447],{"className":3351},[445,446]," jobs; job ",[424,3354,3356],{"className":3355},[427],[424,3357,3359],{"className":3358,"ariaHidden":432},[431],[424,3360,3362,3365],{"className":3361},[436],[424,3363],{"className":3364,"style":909},[440],[424,3366,914],{"className":3367,"style":913},[445,446]," needs ",[424,3370,3372],{"className":3371},[427],[424,3373,3375],{"className":3374,"ariaHidden":432},[431],[424,3376,3378,3382],{"className":3377},[436],[424,3379],{"className":3380,"style":3381},[440],"height:0.9012em;vertical-align:-0.2861em;",[424,3383,3385,3388],{"className":3384},[445],[424,3386,1874],{"className":3387},[445,446],[424,3389,3391],{"className":3390},[495],[424,3392,3394,3414],{"className":3393},[499,500],[424,3395,3397,3411],{"className":3396},[504],[424,3398,3400],{"className":3399,"style":509},[508],[424,3401,3402,3405],{"style":512},[424,3403],{"className":3404,"style":517},[516],[424,3406,3408],{"className":3407},[521,522,523,524],[424,3409,914],{"className":3410,"style":913},[445,446,524],[424,3412,532],{"className":3413},[531],[424,3415,3417],{"className":3416},[504],[424,3418,3420],{"className":3419,"style":1196},[508],[424,3421],{}," units of processing and has a\n",[385,3424,413],{},[424,3426,3428],{"className":3427},[427],[424,3429,3431],{"className":3430,"ariaHidden":432},[431],[424,3432,3434,3437],{"className":3433},[436],[424,3435],{"className":3436,"style":1157},[440],[424,3438,3440,3443],{"className":3439},[445],[424,3441,1907],{"className":3442},[445,446],[424,3444,3446],{"className":3445},[495],[424,3447,3449,3469],{"className":3448},[499,500],[424,3450,3452,3466],{"className":3451},[504],[424,3453,3455],{"className":3454,"style":509},[508],[424,3456,3457,3460],{"style":512},[424,3458],{"className":3459,"style":517},[516],[424,3461,3463],{"className":3462},[521,522,523,524],[424,3464,914],{"className":3465,"style":913},[445,446,524],[424,3467,532],{"className":3468},[531],[424,3470,3472],{"className":3471},[504],[424,3473,3475],{"className":3474,"style":1196},[508],[424,3476],{},". We must order the jobs (the machine runs one at a time, no\npreemption); if job ",[424,3479,3481],{"className":3480},[427],[424,3482,3484],{"className":3483,"ariaHidden":432},[431],[424,3485,3487,3490],{"className":3486},[436],[424,3488],{"className":3489,"style":909},[440],[424,3491,914],{"className":3492,"style":913},[445,446]," finishes at time ",[424,3495,3497],{"className":3496},[427],[424,3498,3500],{"className":3499,"ariaHidden":432},[431],[424,3501,3503,3506],{"className":3502},[436],[424,3504],{"className":3505,"style":1157},[440],[424,3507,3509,3512],{"className":3508},[445],[424,3510,559],{"className":3511,"style":558},[445,446],[424,3513,3515],{"className":3514},[495],[424,3516,3518,3538],{"className":3517},[499,500],[424,3519,3521,3535],{"className":3520},[504],[424,3522,3524],{"className":3523,"style":509},[508],[424,3525,3526,3529],{"style":574},[424,3527],{"className":3528,"style":517},[516],[424,3530,3532],{"className":3531},[521,522,523,524],[424,3533,914],{"className":3534,"style":913},[445,446,524],[424,3536,532],{"className":3537},[531],[424,3539,3541],{"className":3540},[504],[424,3542,3544],{"className":3543,"style":1196},[508],[424,3545],{}," its ",[385,3548,3549],{},"lateness"," is\n",[424,3552,3554],{"className":3553},[427],[424,3555,3557,3613,3690],{"className":3556,"ariaHidden":432},[431],[424,3558,3560,3563,3604,3607,3610],{"className":3559},[436],[424,3561],{"className":3562,"style":1157},[440],[424,3564,3566,3570],{"className":3565},[445],[424,3567,3569],{"className":3568},[445],"ℓ",[424,3571,3573],{"className":3572},[495],[424,3574,3576,3596],{"className":3575},[499,500],[424,3577,3579,3593],{"className":3578},[504],[424,3580,3582],{"className":3581,"style":509},[508],[424,3583,3584,3587],{"style":512},[424,3585],{"className":3586,"style":517},[516],[424,3588,3590],{"className":3589},[521,522,523,524],[424,3591,914],{"className":3592,"style":913},[445,446,524],[424,3594,532],{"className":3595},[531],[424,3597,3599],{"className":3598},[504],[424,3600,3602],{"className":3601,"style":1196},[508],[424,3603],{},[424,3605],{"className":3606,"style":1142},[550],[424,3608,1914],{"className":3609},[1146],[424,3611],{"className":3612,"style":1142},[550],[424,3614,3616,3620,3626,3629,3633,3636,3639,3679,3683,3687],{"className":3615},[436],[424,3617],{"className":3618,"style":3619},[440],"height:1.0361em;vertical-align:-0.2861em;",[424,3621,3623],{"className":3622},[710],[424,3624,1933],{"className":3625},[445,714],[424,3627,700],{"className":3628},[483],[424,3630,3632],{"className":3631},[445],"0",[424,3634,546],{"className":3635},[545],[424,3637],{"className":3638,"style":551},[550],[424,3640,3642,3645],{"className":3641},[445],[424,3643,559],{"className":3644,"style":558},[445,446],[424,3646,3648],{"className":3647},[495],[424,3649,3651,3671],{"className":3650},[499,500],[424,3652,3654,3668],{"className":3653},[504],[424,3655,3657],{"className":3656,"style":509},[508],[424,3658,3659,3662],{"style":574},[424,3660],{"className":3661,"style":517},[516],[424,3663,3665],{"className":3664},[521,522,523,524],[424,3666,914],{"className":3667,"style":913},[445,446,524],[424,3669,532],{"className":3670},[531],[424,3672,3674],{"className":3673},[504],[424,3675,3677],{"className":3676,"style":1196},[508],[424,3678],{},[424,3680],{"className":3681,"style":3682},[550],"margin-right:0.2222em;",[424,3684,3686],{"className":3685},[841],"−",[424,3688],{"className":3689,"style":3682},[550],[424,3691,3693,3696,3736],{"className":3692},[436],[424,3694],{"className":3695,"style":3619},[440],[424,3697,3699,3702],{"className":3698},[445],[424,3700,1907],{"className":3701},[445,446],[424,3703,3705],{"className":3704},[495],[424,3706,3708,3728],{"className":3707},[499,500],[424,3709,3711,3725],{"className":3710},[504],[424,3712,3714],{"className":3713,"style":509},[508],[424,3715,3716,3719],{"style":512},[424,3717],{"className":3718,"style":517},[516],[424,3720,3722],{"className":3721},[521,522,523,524],[424,3723,914],{"className":3724,"style":913},[445,446,524],[424,3726,532],{"className":3727},[531],[424,3729,3731],{"className":3730},[504],[424,3732,3734],{"className":3733,"style":1196},[508],[424,3735],{},[424,3737,599],{"className":3738},[598],", and we want to minimize the ",[385,3741,3742],{},"maximum lateness",[424,3744,3746],{"className":3745},[427],[424,3747,3749,3768,3869],{"className":3748,"ariaHidden":432},[431],[424,3750,3752,3755,3759,3762,3765],{"className":3751},[436],[424,3753],{"className":3754,"style":2583},[440],[424,3756,3758],{"className":3757},[445,446],"L",[424,3760],{"className":3761,"style":1142},[550],[424,3763,1914],{"className":3764},[1146],[424,3766],{"className":3767,"style":1142},[550],[424,3769,3771,3774,3817,3820,3860,3863,3866],{"className":3770},[436],[424,3772],{"className":3773,"style":3619},[440],[424,3775,3777,3783],{"className":3776},[710],[424,3778,3780],{"className":3779},[710],[424,3781,1933],{"className":3782},[445,714],[424,3784,3786],{"className":3785},[495],[424,3787,3789,3809],{"className":3788},[499,500],[424,3790,3792,3806],{"className":3791},[504],[424,3793,3795],{"className":3794,"style":509},[508],[424,3796,3797,3800],{"style":1949},[424,3798],{"className":3799,"style":517},[516],[424,3801,3803],{"className":3802},[521,522,523,524],[424,3804,914],{"className":3805,"style":913},[445,446,524],[424,3807,532],{"className":3808},[531],[424,3810,3812],{"className":3811},[504],[424,3813,3815],{"className":3814,"style":1196},[508],[424,3816],{},[424,3818,700],{"className":3819},[483],[424,3821,3823,3826],{"className":3822},[445],[424,3824,559],{"className":3825,"style":558},[445,446],[424,3827,3829],{"className":3828},[495],[424,3830,3832,3852],{"className":3831},[499,500],[424,3833,3835,3849],{"className":3834},[504],[424,3836,3838],{"className":3837,"style":509},[508],[424,3839,3840,3843],{"style":574},[424,3841],{"className":3842,"style":517},[516],[424,3844,3846],{"className":3845},[521,522,523,524],[424,3847,914],{"className":3848,"style":913},[445,446,524],[424,3850,532],{"className":3851},[531],[424,3853,3855],{"className":3854},[504],[424,3856,3858],{"className":3857,"style":1196},[508],[424,3859],{},[424,3861],{"className":3862,"style":3682},[550],[424,3864,3686],{"className":3865},[841],[424,3867],{"className":3868,"style":3682},[550],[424,3870,3872,3875,3915],{"className":3871},[436],[424,3873],{"className":3874,"style":3619},[440],[424,3876,3878,3881],{"className":3877},[445],[424,3879,1907],{"className":3880},[445,446],[424,3882,3884],{"className":3883},[495],[424,3885,3887,3907],{"className":3886},[499,500],[424,3888,3890,3904],{"className":3889},[504],[424,3891,3893],{"className":3892,"style":509},[508],[424,3894,3895,3898],{"style":512},[424,3896],{"className":3897,"style":517},[516],[424,3899,3901],{"className":3900},[521,522,523,524],[424,3902,914],{"className":3903,"style":913},[445,446,524],[424,3905,532],{"className":3906},[531],[424,3908,3910],{"className":3909},[504],[424,3911,3913],{"className":3912,"style":1196},[508],[424,3914],{},[424,3916,599],{"className":3917},[598]," across all jobs.",[606,3920,3921],{},[394,3922,614],{"href":610,"ariaDescribedBy":3923,"dataFootnoteRef":376,"id":3924},[612],"user-content-fnref-clrs-activity-2",[381,3926,3927,3928,3931,3932,3984],{},"The greedy rule is ",[385,3929,3930],{},"earliest deadline first"," (EDF): ignore the processing times\nentirely, sort the jobs by deadline ",[424,3933,3935],{"className":3934},[427],[424,3936,3938],{"className":3937,"ariaHidden":432},[431],[424,3939,3941,3944],{"className":3940},[436],[424,3942],{"className":3943,"style":1157},[440],[424,3945,3947,3950],{"className":3946},[445],[424,3948,1907],{"className":3949},[445,446],[424,3951,3953],{"className":3952},[495],[424,3954,3956,3976],{"className":3955},[499,500],[424,3957,3959,3973],{"className":3958},[504],[424,3960,3962],{"className":3961,"style":509},[508],[424,3963,3964,3967],{"style":512},[424,3965],{"className":3966,"style":517},[516],[424,3968,3970],{"className":3969},[521,522,523,524],[424,3971,914],{"className":3972,"style":913},[445,446,524],[424,3974,532],{"className":3975},[531],[424,3977,3979],{"className":3978},[504],[424,3980,3982],{"className":3981,"style":1196},[508],[424,3983],{},", and run them back-to-back in that\norder with no idle gaps. Those two qualifiers, no idle time and deadline order,\nare exactly what the proof needs.",[728,3986,3987],{"type":2095},[381,3988,3989,3992,3993,3996,3997,4106,4107,4122,4123,4138],{},[385,3990,3991],{},"Lemma (exchange \u002F no inversions)."," Some optimal schedule has no idle time and\nno ",[385,3994,3995],{},"inversions",", where an inversion is a pair of jobs scheduled with the later\ndeadline first (",[424,3998,4000],{"className":3999},[427],[424,4001,4003,4060],{"className":4002,"ariaHidden":432},[431],[424,4004,4006,4010,4050,4053,4057],{"className":4005},[436],[424,4007],{"className":4008,"style":4009},[440],"height:0.8444em;vertical-align:-0.15em;",[424,4011,4013,4016],{"className":4012},[445],[424,4014,1907],{"className":4015},[445,446],[424,4017,4019],{"className":4018},[495],[424,4020,4022,4042],{"className":4021},[499,500],[424,4023,4025,4039],{"className":4024},[504],[424,4026,4028],{"className":4027,"style":509},[508],[424,4029,4030,4033],{"style":512},[424,4031],{"className":4032,"style":517},[516],[424,4034,4036],{"className":4035},[521,522,523,524],[424,4037,465],{"className":4038},[445,446,524],[424,4040,532],{"className":4041},[531],[424,4043,4045],{"className":4044},[504],[424,4046,4048],{"className":4047,"style":539},[508],[424,4049],{},[424,4051],{"className":4052,"style":1142},[550],[424,4054,4056],{"className":4055},[1146],">",[424,4058],{"className":4059,"style":1142},[550],[424,4061,4063,4066],{"className":4062},[436],[424,4064],{"className":4065,"style":1157},[440],[424,4067,4069,4072],{"className":4068},[445],[424,4070,1907],{"className":4071},[445,446],[424,4073,4075],{"className":4074},[495],[424,4076,4078,4098],{"className":4077},[499,500],[424,4079,4081,4095],{"className":4080},[504],[424,4082,4084],{"className":4083,"style":509},[508],[424,4085,4086,4089],{"style":512},[424,4087],{"className":4088,"style":517},[516],[424,4090,4092],{"className":4091},[521,522,523,524],[424,4093,914],{"className":4094,"style":913},[445,446,524],[424,4096,532],{"className":4097},[531],[424,4099,4101],{"className":4100},[504],[424,4102,4104],{"className":4103,"style":1196},[508],[424,4105],{}," but ",[424,4108,4110],{"className":4109},[427],[424,4111,4113],{"className":4112,"ariaHidden":432},[431],[424,4114,4116,4119],{"className":4115},[436],[424,4117],{"className":4118,"style":461},[440],[424,4120,465],{"className":4121},[445,446]," runs before ",[424,4124,4126],{"className":4125},[427],[424,4127,4129],{"className":4128,"ariaHidden":432},[431],[424,4130,4132,4135],{"className":4131},[436],[424,4133],{"className":4134,"style":909},[440],[424,4136,914],{"className":4137,"style":913},[445,446],"). The earliest-deadline-first\nschedule is one such schedule, so it is optimal.",[728,4140,4142,4696],{"type":4141},"proof",[381,4143,4144,4146,4147,4199,4200,4215,4216,4219,4220,4244,4245,4260,4261,4276,4277,4384,4385,3301,4400,4415,4416,4419,4420,4435,4436,4451,4452,4467,4468,4483,4484,4487,4488,4503,4504,4556,4557,4664,4665,4680,4681,726],{},[385,4145,2120],{}," Idle time only delays jobs, so removing it cannot increase any ",[424,4148,4150],{"className":4149},[427],[424,4151,4153],{"className":4152,"ariaHidden":432},[431],[424,4154,4156,4159],{"className":4155},[436],[424,4157],{"className":4158,"style":1157},[440],[424,4160,4162,4165],{"className":4161},[445],[424,4163,559],{"className":4164,"style":558},[445,446],[424,4166,4168],{"className":4167},[495],[424,4169,4171,4191],{"className":4170},[499,500],[424,4172,4174,4188],{"className":4173},[504],[424,4175,4177],{"className":4176,"style":509},[508],[424,4178,4179,4182],{"style":574},[424,4180],{"className":4181,"style":517},[516],[424,4183,4185],{"className":4184},[521,522,523,524],[424,4186,914],{"className":4187,"style":913},[445,446,524],[424,4189,532],{"className":4190},[531],[424,4192,4194],{"className":4193},[504],[424,4195,4197],{"className":4196,"style":1196},[508],[424,4198],{},",\nhence cannot increase ",[424,4201,4203],{"className":4202},[427],[424,4204,4206],{"className":4205,"ariaHidden":432},[431],[424,4207,4209,4212],{"className":4208},[436],[424,4210],{"className":4211,"style":2583},[440],[424,4213,3758],{"className":4214},[445,446],"; assume there is none. Now suppose an optimal schedule\nhas an inversion. Then it has an ",[385,4217,4218],{},"adjacent"," inversion: a pair ",[424,4221,4223],{"className":4222},[427],[424,4224,4226],{"className":4225,"ariaHidden":432},[431],[424,4227,4229,4232,4235,4238,4241],{"className":4228},[436],[424,4230],{"className":4231,"style":909},[440],[424,4233,465],{"className":4234},[445,446],[424,4236,546],{"className":4237},[545],[424,4239],{"className":4240,"style":551},[550],[424,4242,914],{"className":4243,"style":913},[445,446]," run\nconsecutively with ",[424,4246,4248],{"className":4247},[427],[424,4249,4251],{"className":4250,"ariaHidden":432},[431],[424,4252,4254,4257],{"className":4253},[436],[424,4255],{"className":4256,"style":461},[440],[424,4258,465],{"className":4259},[445,446]," immediately before ",[424,4262,4264],{"className":4263},[427],[424,4265,4267],{"className":4266,"ariaHidden":432},[431],[424,4268,4270,4273],{"className":4269},[436],[424,4271],{"className":4272,"style":909},[440],[424,4274,914],{"className":4275,"style":913},[445,446]," yet ",[424,4278,4280],{"className":4279},[427],[424,4281,4283,4338],{"className":4282,"ariaHidden":432},[431],[424,4284,4286,4289,4329,4332,4335],{"className":4285},[436],[424,4287],{"className":4288,"style":4009},[440],[424,4290,4292,4295],{"className":4291},[445],[424,4293,1907],{"className":4294},[445,446],[424,4296,4298],{"className":4297},[495],[424,4299,4301,4321],{"className":4300},[499,500],[424,4302,4304,4318],{"className":4303},[504],[424,4305,4307],{"className":4306,"style":509},[508],[424,4308,4309,4312],{"style":512},[424,4310],{"className":4311,"style":517},[516],[424,4313,4315],{"className":4314},[521,522,523,524],[424,4316,465],{"className":4317},[445,446,524],[424,4319,532],{"className":4320},[531],[424,4322,4324],{"className":4323},[504],[424,4325,4327],{"className":4326,"style":539},[508],[424,4328],{},[424,4330],{"className":4331,"style":1142},[550],[424,4333,4056],{"className":4334},[1146],[424,4336],{"className":4337,"style":1142},[550],[424,4339,4341,4344],{"className":4340},[436],[424,4342],{"className":4343,"style":1157},[440],[424,4345,4347,4350],{"className":4346},[445],[424,4348,1907],{"className":4349},[445,446],[424,4351,4353],{"className":4352},[495],[424,4354,4356,4376],{"className":4355},[499,500],[424,4357,4359,4373],{"className":4358},[504],[424,4360,4362],{"className":4361,"style":509},[508],[424,4363,4364,4367],{"style":512},[424,4365],{"className":4366,"style":517},[516],[424,4368,4370],{"className":4369},[521,522,523,524],[424,4371,914],{"className":4372,"style":913},[445,446,524],[424,4374,532],{"className":4375},[531],[424,4377,4379],{"className":4378},[504],[424,4380,4382],{"className":4381,"style":1196},[508],[424,4383],{},". Swap them. Only\n",[424,4386,4388],{"className":4387},[427],[424,4389,4391],{"className":4390,"ariaHidden":432},[431],[424,4392,4394,4397],{"className":4393},[436],[424,4395],{"className":4396,"style":461},[440],[424,4398,465],{"className":4399},[445,446],[424,4401,4403],{"className":4402},[427],[424,4404,4406],{"className":4405,"ariaHidden":432},[431],[424,4407,4409,4412],{"className":4408},[436],[424,4410],{"className":4411,"style":909},[440],[424,4413,914],{"className":4414,"style":913},[445,446]," move, and they occupy the same combined time slot, so every ",[399,4417,4418],{},"other","\njob's finish time is unchanged. After the swap ",[424,4421,4423],{"className":4422},[427],[424,4424,4426],{"className":4425,"ariaHidden":432},[431],[424,4427,4429,4432],{"className":4428},[436],[424,4430],{"className":4431,"style":909},[440],[424,4433,914],{"className":4434,"style":913},[445,446]," finishes earlier than ",[424,4437,4439],{"className":4438},[427],[424,4440,4442],{"className":4441,"ariaHidden":432},[431],[424,4443,4445,4448],{"className":4444},[436],[424,4446],{"className":4447,"style":461},[440],[424,4449,465],{"className":4450},[445,446]," did\nbefore, so ",[424,4453,4455],{"className":4454},[427],[424,4456,4458],{"className":4457,"ariaHidden":432},[431],[424,4459,4461,4464],{"className":4460},[436],[424,4462],{"className":4463,"style":909},[440],[424,4465,914],{"className":4466,"style":913},[445,446],"'s lateness only drops. The new lateness of ",[424,4469,4471],{"className":4470},[427],[424,4472,4474],{"className":4473,"ariaHidden":432},[431],[424,4475,4477,4480],{"className":4476},[436],[424,4478],{"className":4479,"style":461},[440],[424,4481,465],{"className":4482},[445,446]," is its new finish\ntime — which equals the ",[399,4485,4486],{},"old"," finish time of ",[424,4489,4491],{"className":4490},[427],[424,4492,4494],{"className":4493,"ariaHidden":432},[431],[424,4495,4497,4500],{"className":4496},[436],[424,4498],{"className":4499,"style":909},[440],[424,4501,914],{"className":4502,"style":913},[445,446]," (the slot's right end) — minus\n",[424,4505,4507],{"className":4506},[427],[424,4508,4510],{"className":4509,"ariaHidden":432},[431],[424,4511,4513,4516],{"className":4512},[436],[424,4514],{"className":4515,"style":4009},[440],[424,4517,4519,4522],{"className":4518},[445],[424,4520,1907],{"className":4521},[445,446],[424,4523,4525],{"className":4524},[495],[424,4526,4528,4548],{"className":4527},[499,500],[424,4529,4531,4545],{"className":4530},[504],[424,4532,4534],{"className":4533,"style":509},[508],[424,4535,4536,4539],{"style":512},[424,4537],{"className":4538,"style":517},[516],[424,4540,4542],{"className":4541},[521,522,523,524],[424,4543,465],{"className":4544},[445,446,524],[424,4546,532],{"className":4547},[531],[424,4549,4551],{"className":4550},[504],[424,4552,4554],{"className":4553,"style":539},[508],[424,4555],{},"; since ",[424,4558,4560],{"className":4559},[427],[424,4561,4563,4618],{"className":4562,"ariaHidden":432},[431],[424,4564,4566,4569,4609,4612,4615],{"className":4565},[436],[424,4567],{"className":4568,"style":4009},[440],[424,4570,4572,4575],{"className":4571},[445],[424,4573,1907],{"className":4574},[445,446],[424,4576,4578],{"className":4577},[495],[424,4579,4581,4601],{"className":4580},[499,500],[424,4582,4584,4598],{"className":4583},[504],[424,4585,4587],{"className":4586,"style":509},[508],[424,4588,4589,4592],{"style":512},[424,4590],{"className":4591,"style":517},[516],[424,4593,4595],{"className":4594},[521,522,523,524],[424,4596,465],{"className":4597},[445,446,524],[424,4599,532],{"className":4600},[531],[424,4602,4604],{"className":4603},[504],[424,4605,4607],{"className":4606,"style":539},[508],[424,4608],{},[424,4610],{"className":4611,"style":1142},[550],[424,4613,4056],{"className":4614},[1146],[424,4616],{"className":4617,"style":1142},[550],[424,4619,4621,4624],{"className":4620},[436],[424,4622],{"className":4623,"style":1157},[440],[424,4625,4627,4630],{"className":4626},[445],[424,4628,1907],{"className":4629},[445,446],[424,4631,4633],{"className":4632},[495],[424,4634,4636,4656],{"className":4635},[499,500],[424,4637,4639,4653],{"className":4638},[504],[424,4640,4642],{"className":4641,"style":509},[508],[424,4643,4644,4647],{"style":512},[424,4645],{"className":4646,"style":517},[516],[424,4648,4650],{"className":4649},[521,522,523,524],[424,4651,914],{"className":4652,"style":913},[445,446,524],[424,4654,532],{"className":4655},[531],[424,4657,4659],{"className":4658},[504],[424,4660,4662],{"className":4661,"style":1196},[508],[424,4663],{},", this is at most the old lateness of ",[424,4666,4668],{"className":4667},[427],[424,4669,4671],{"className":4670,"ariaHidden":432},[431],[424,4672,4674,4677],{"className":4673},[436],[424,4675],{"className":4676,"style":909},[440],[424,4678,914],{"className":4679,"style":913},[445,446],". So the\nmaximum of the two latenesses does not increase, and neither does ",[424,4682,4684],{"className":4683},[427],[424,4685,4687],{"className":4686,"ariaHidden":432},[431],[424,4688,4690,4693],{"className":4689},[436],[424,4691],{"className":4692,"style":2583},[440],[424,4694,3758],{"className":4695},[445,446],[381,4697,4698,4699,4714,4715],{},"Each adjacent swap removes one inversion without raising ",[424,4700,4702],{"className":4701},[427],[424,4703,4705],{"className":4704,"ariaHidden":432},[431],[424,4706,4708,4711],{"className":4707},[436],[424,4709],{"className":4710,"style":2583},[440],[424,4712,3758],{"className":4713},[445,446],". Repeating drives\nthe schedule to zero inversions, i.e. earliest-deadline-first order, proving\nit optimal. ",[424,4716,4718],{"className":4717},[427],[424,4719,4721],{"className":4720,"ariaHidden":432},[431],[424,4722,4724,4727],{"className":4723},[436],[424,4725],{"className":4726,"style":2198},[440],[424,4728,4730],{"className":4729},[2202,2203],[424,4731,2208],{"className":4732},[445,2207],[1520,4734,4736,4972],{"className":4735},[1523,1524],[1526,4737,4741],{"xmlns":1528,"width":4738,"height":4739,"viewBox":4740},"303.524","95.789","-75 -75 227.643 71.841",[1533,4742,4743,4765,4768,4807,4851,4868,4875,4913,4916,4949],{"stroke":1535,"style":1536},[1533,4744,4746,4753,4759],{"stroke":1557,"fontFamily":4745,"fontSize":2053},"cmr9",[1533,4747,4749],{"transform":4748},"translate(-44.452 -53.78)",[1541,4750],{"d":4751,"fill":1535,"stroke":1535,"className":4752,"style":2013},"M-15.524-5.206L-17.510-5.206L-17.510-5.522Q-17.203-5.522-17.012-5.575Q-16.820-5.628-16.820-5.817L-16.820-8.265Q-16.820-8.511-16.886-8.616Q-16.952-8.722-17.078-8.746Q-17.203-8.770-17.475-8.770L-17.475-9.086L-16.144-9.183L-16.144-5.817Q-16.144-5.623-15.979-5.573Q-15.814-5.522-15.524-5.522L-15.524-5.206M-17.124-10.730Q-17.124-10.936-16.974-11.086Q-16.825-11.235-16.623-11.235Q-16.491-11.235-16.374-11.165Q-16.258-11.095-16.188-10.978Q-16.117-10.862-16.117-10.730Q-16.117-10.528-16.267-10.378Q-16.416-10.229-16.623-10.229Q-16.825-10.229-16.974-10.378Q-17.124-10.528-17.124-10.730M-12.865-5.206L-14.953-5.206L-14.953-5.522Q-14.645-5.522-14.454-5.575Q-14.263-5.628-14.263-5.817L-14.263-8.265Q-14.263-8.506-14.333-8.614Q-14.403-8.722-14.537-8.746Q-14.672-8.770-14.953-8.770L-14.953-9.086L-13.612-9.183L-13.612-8.348Q-13.415-8.730-13.061-8.957Q-12.707-9.183-12.281-9.183Q-11.002-9.183-11.002-7.970L-11.002-5.817Q-11.002-5.628-10.811-5.575Q-10.620-5.522-10.312-5.522L-10.312-5.206L-12.400-5.206L-12.400-5.522Q-12.088-5.522-11.896-5.575Q-11.705-5.628-11.705-5.817L-11.705-7.935Q-11.705-8.194-11.749-8.416Q-11.793-8.638-11.938-8.781Q-12.083-8.924-12.342-8.924Q-12.685-8.924-12.966-8.735Q-13.248-8.546-13.404-8.234Q-13.560-7.922-13.560-7.575L-13.560-5.817Q-13.560-5.628-13.366-5.575Q-13.173-5.522-12.865-5.522",[1545],[1533,4754,4755],{"transform":4748},[1541,4756],{"d":4757,"fill":1535,"stroke":1535,"className":4758,"style":2013},"M-8.135-5.224L-9.466-8.471Q-9.554-8.669-9.719-8.719Q-9.884-8.770-10.187-8.770L-10.187-9.086L-8.262-9.086L-8.262-8.770Q-8.754-8.770-8.754-8.555Q-8.754-8.533-8.737-8.471L-7.721-5.997L-6.812-8.221Q-6.777-8.304-6.777-8.401Q-6.777-8.572-6.900-8.671Q-7.023-8.770-7.190-8.770L-7.190-9.086L-5.678-9.086L-5.678-8.770Q-5.964-8.770-6.177-8.627Q-6.390-8.484-6.495-8.221L-7.730-5.224Q-7.774-5.105-7.902-5.105L-7.963-5.105Q-8.091-5.105-8.135-5.224",[1545],[1533,4760,4761],{"transform":4748},[1541,4762],{"d":4763,"fill":1535,"stroke":1535,"className":4764,"style":2013},"M-3.430-5.105Q-3.989-5.105-4.461-5.388Q-4.933-5.672-5.208-6.149Q-5.483-6.625-5.483-7.179Q-5.483-7.575-5.340-7.950Q-5.197-8.326-4.940-8.614Q-4.683-8.902-4.325-9.071Q-3.967-9.240-3.562-9.240Q-3.017-9.240-2.646-9.003Q-2.275-8.766-2.088-8.348Q-1.901-7.931-1.901-7.394Q-1.901-7.342-1.925-7.304Q-1.950-7.267-1.998-7.267L-4.670-7.267L-4.670-7.188Q-4.670-6.441-4.358-5.918Q-4.046-5.395-3.347-5.395Q-2.943-5.395-2.622-5.652Q-2.301-5.909-2.178-6.313Q-2.160-6.393-2.077-6.393L-1.998-6.393Q-1.958-6.393-1.930-6.362Q-1.901-6.331-1.901-6.287L-1.901-6.252Q-2.007-5.909-2.229-5.650Q-2.450-5.391-2.765-5.248Q-3.079-5.105-3.430-5.105M-4.661-7.518L-2.547-7.518Q-2.547-7.786-2.600-8.032Q-2.653-8.278-2.773-8.500Q-2.894-8.722-3.092-8.849Q-3.290-8.977-3.562-8.977Q-3.905-8.977-4.158-8.752Q-4.410-8.528-4.536-8.190Q-4.661-7.852-4.661-7.518M0.854-5.206L-1.378-5.206L-1.378-5.522Q-1.066-5.522-0.875-5.575Q-0.684-5.628-0.684-5.817L-0.684-8.265Q-0.684-8.506-0.754-8.614Q-0.825-8.722-0.959-8.746Q-1.093-8.770-1.378-8.770L-1.378-9.086L-0.064-9.183L-0.064-8.322Q0.098-8.713 0.366-8.948Q0.634-9.183 1.026-9.183Q1.298-9.183 1.513-9.020Q1.729-8.858 1.729-8.599Q1.729-8.423 1.610-8.304Q1.491-8.185 1.316-8.185Q1.135-8.185 1.017-8.304Q0.898-8.423 0.898-8.599Q0.898-8.814 1.052-8.924L1.034-8.924Q0.656-8.924 0.424-8.662Q0.191-8.401 0.092-8.014Q-0.007-7.627-0.007-7.267L-0.007-5.817Q-0.007-5.628 0.250-5.575Q0.507-5.522 0.854-5.522L0.854-5.206M2.924-6.278L2.924-8.770L2.159-8.770L2.159-9.029Q2.564-9.029 2.830-9.295Q3.095-9.561 3.216-9.961Q3.337-10.361 3.337-10.743L3.627-10.743L3.627-9.086L4.915-9.086L4.915-8.770L3.627-8.770L3.627-6.313Q3.627-5.944 3.752-5.670Q3.878-5.395 4.203-5.395Q4.502-5.395 4.640-5.689Q4.779-5.984 4.779-6.313L4.779-6.836L5.064-6.836L5.064-6.278Q5.064-6.001 4.954-5.729Q4.844-5.456 4.631-5.281Q4.418-5.105 4.137-5.105Q3.777-5.105 3.504-5.243Q3.232-5.382 3.078-5.645Q2.924-5.909 2.924-6.278M7.890-5.105Q7.332-5.105 6.859-5.388Q6.387-5.672 6.112-6.149Q5.838-6.625 5.838-7.179Q5.838-7.575 5.980-7.950Q6.123-8.326 6.380-8.614Q6.637-8.902 6.996-9.071Q7.354-9.240 7.758-9.240Q8.303-9.240 8.674-9.003Q9.046-8.766 9.232-8.348Q9.419-7.931 9.419-7.394Q9.419-7.342 9.395-7.304Q9.371-7.267 9.322-7.267L6.651-7.267L6.651-7.188Q6.651-6.441 6.963-5.918Q7.275-5.395 7.973-5.395Q8.378-5.395 8.698-5.652Q9.019-5.909 9.142-6.313Q9.160-6.393 9.243-6.393L9.322-6.393Q9.362-6.393 9.391-6.362Q9.419-6.331 9.419-6.287L9.419-6.252Q9.314-5.909 9.092-5.650Q8.870-5.391 8.556-5.248Q8.241-5.105 7.890-5.105M6.659-7.518L8.773-7.518Q8.773-7.786 8.720-8.032Q8.668-8.278 8.547-8.500Q8.426-8.722 8.228-8.849Q8.030-8.977 7.758-8.977Q7.415-8.977 7.163-8.752Q6.910-8.528 6.785-8.190Q6.659-7.852 6.659-7.518M11.942-5.105Q11.397-5.105 10.953-5.388Q10.509-5.672 10.254-6.144Q9.999-6.617 9.999-7.148Q9.999-7.702 10.276-8.168Q10.553-8.634 11.025-8.908Q11.498-9.183 12.043-9.183Q12.377-9.183 12.680-9.051Q12.983-8.919 13.203-8.682L13.203-10.532Q13.203-10.774 13.133-10.882Q13.062-10.989 12.928-11.013Q12.794-11.038 12.508-11.038L12.508-11.354L13.875-11.451L13.875-6.023Q13.875-5.786 13.945-5.678Q14.016-5.571 14.152-5.547Q14.288-5.522 14.570-5.522L14.570-5.206L13.176-5.105L13.176-5.654Q12.926-5.391 12.607-5.248Q12.289-5.105 11.942-5.105M12.003-5.369Q12.372-5.369 12.682-5.580Q12.992-5.790 13.176-6.133L13.176-8.265Q13.005-8.568 12.724-8.746Q12.443-8.924 12.104-8.924Q11.414-8.924 11.111-8.403Q10.808-7.882 10.808-7.140Q10.808-6.419 11.078-5.894Q11.348-5.369 12.003-5.369M15.602-5.711Q15.602-5.839 15.670-5.955Q15.738-6.072 15.855-6.142Q15.971-6.212 16.108-6.212Q16.310-6.212 16.461-6.065Q16.613-5.918 16.613-5.711Q16.613-5.505 16.464-5.355Q16.314-5.206 16.108-5.206Q15.897-5.206 15.749-5.358Q15.602-5.509 15.602-5.711M15.602-8.581Q15.602-8.779 15.747-8.933Q15.892-9.086 16.108-9.086Q16.244-9.086 16.360-9.018Q16.477-8.950 16.545-8.834Q16.613-8.717 16.613-8.581Q16.613-8.379 16.461-8.227Q16.310-8.076 16.108-8.076Q15.901-8.076 15.752-8.229Q15.602-8.383 15.602-8.581",[1545],[1541,4766],{"fill":1557,"d":4767},"M-6.437-52.153H56.16V-72.07H-6.437Z",[1533,4769,4770,4777,4783,4789,4795,4801],{"stroke":1557},[1533,4771,4773],{"transform":4772},"translate(23.495 -54.655)",[1541,4774],{"d":4775,"fill":1535,"stroke":1535,"className":4776,"style":2013},"M-17.089-5.865Q-17.089-6.010-17.027-6.195L-16.280-8.133Q-16.170-8.432-16.170-8.651Q-16.170-8.924-16.359-8.924Q-16.711-8.924-16.946-8.563Q-17.181-8.203-17.286-7.772Q-17.304-7.689-17.379-7.689L-17.484-7.689Q-17.532-7.689-17.554-7.728Q-17.576-7.768-17.576-7.808Q-17.488-8.150-17.328-8.456Q-17.168-8.761-16.917-8.972Q-16.667-9.183-16.341-9.183Q-16.012-9.183-15.781-8.977Q-15.550-8.770-15.550-8.427Q-15.550-8.260-15.603-8.093L-16.350-6.160Q-16.456-5.874-16.469-5.637Q-16.469-5.536-16.423-5.452Q-16.377-5.369-16.271-5.369Q-15.920-5.369-15.684-5.727Q-15.449-6.085-15.344-6.520Q-15.335-6.551-15.311-6.575Q-15.287-6.599-15.252-6.599L-15.146-6.599Q-15.098-6.599-15.076-6.566Q-15.054-6.533-15.054-6.485Q-15.181-5.962-15.504-5.533Q-15.827-5.105-16.289-5.105Q-16.618-5.105-16.853-5.318Q-17.089-5.531-17.089-5.865M-16.065-10.651Q-16.065-10.849-15.902-11.002Q-15.739-11.156-15.542-11.156Q-15.392-11.156-15.291-11.060Q-15.190-10.963-15.190-10.813Q-15.190-10.607-15.348-10.457Q-15.506-10.308-15.704-10.308Q-15.854-10.308-15.959-10.405Q-16.065-10.501-16.065-10.651",[1545],[1533,4778,4779],{"transform":4772},[1541,4780],{"d":4781,"fill":1535,"stroke":1535,"className":4782,"style":2013},"M-8.718-2.965Q-9.223-3.352-9.592-3.857Q-9.962-4.362-10.205-4.962Q-10.449-5.562-10.564-6.179Q-10.678-6.797-10.678-7.456Q-10.678-8.115-10.564-8.730Q-10.449-9.346-10.210-9.939Q-9.970-10.532-9.597-11.042Q-9.223-11.552-8.718-11.938Q-8.683-11.956-8.661-11.956L-8.582-11.956Q-8.494-11.956-8.494-11.855Q-8.494-11.820-8.529-11.785Q-9.091-11.262-9.436-10.556Q-9.781-9.851-9.929-9.069Q-10.076-8.287-10.076-7.456Q-10.076-6.832-9.997-6.248Q-9.918-5.663-9.740-5.096Q-9.562-4.529-9.263-4.028Q-8.964-3.527-8.529-3.119Q-8.494-3.083-8.494-3.044Q-8.494-2.947-8.582-2.947L-8.661-2.947Q-8.683-2.947-8.718-2.965",[1545],[1533,4784,4785],{"transform":4772},[1541,4786],{"d":4787,"fill":1535,"stroke":1535,"className":4788,"style":2013},"M-6.350-5.105Q-6.746-5.105-7.032-5.309Q-7.317-5.514-7.464-5.848Q-7.612-6.182-7.612-6.573Q-7.612-7.008-7.438-7.469Q-7.264-7.931-6.952-8.322Q-6.640-8.713-6.230-8.948Q-5.819-9.183-5.379-9.183Q-5.111-9.183-4.894-9.045Q-4.676-8.906-4.544-8.660L-4.039-10.677Q-4.004-10.827-4.004-10.901Q-4.004-11.038-4.571-11.038Q-4.667-11.038-4.667-11.156Q-4.667-11.213-4.637-11.284Q-4.606-11.354-4.544-11.354L-3.318-11.451Q-3.265-11.451-3.235-11.422Q-3.204-11.393-3.204-11.345L-3.204-11.310L-4.487-6.160Q-4.487-6.102-4.516-5.971Q-4.544-5.839-4.544-5.764Q-4.544-5.369-4.281-5.369Q-3.995-5.369-3.861-5.692Q-3.727-6.015-3.608-6.520Q-3.599-6.551-3.575-6.575Q-3.551-6.599-3.516-6.599L-3.410-6.599Q-3.362-6.599-3.340-6.566Q-3.318-6.533-3.318-6.485Q-3.432-6.054-3.523-5.801Q-3.613-5.549-3.806-5.327Q-3.999-5.105-4.298-5.105Q-4.606-5.105-4.854-5.276Q-5.102-5.448-5.173-5.738Q-5.428-5.452-5.724-5.279Q-6.021-5.105-6.350-5.105M-6.333-5.369Q-6.003-5.369-5.693-5.610Q-5.384-5.852-5.173-6.168Q-5.164-6.177-5.164-6.204L-4.667-8.159Q-4.724-8.476-4.916-8.700Q-5.107-8.924-5.397-8.924Q-5.766-8.924-6.065-8.605Q-6.364-8.287-6.531-7.878Q-6.667-7.531-6.792-7.021Q-6.917-6.511-6.917-6.186Q-6.917-5.861-6.779-5.615Q-6.640-5.369-6.333-5.369",[1545],[1533,4790,4791],{"transform":4772},[1541,4792],{"d":4793,"fill":1535,"stroke":1535,"className":4794,"style":1699},"M-2.401-4.669Q-2.401-4.783-2.351-4.883L-1.835-6.181Q-1.783-6.318-1.783-6.433Q-1.783-6.635-1.932-6.635Q-2.096-6.635-2.232-6.519Q-2.368-6.403-2.458-6.232Q-2.547-6.060-2.585-5.899Q-2.606-5.861-2.659-5.844L-2.755-5.844Q-2.826-5.864-2.826-5.929Q-2.826-5.935-2.820-5.964Q-2.732-6.307-2.487-6.579Q-2.243-6.852-1.920-6.852Q-1.762-6.852-1.617-6.791Q-1.472-6.731-1.384-6.613Q-1.296-6.494-1.296-6.330Q-1.296-6.207-1.337-6.113L-1.853-4.818Q-1.909-4.704-1.909-4.566Q-1.909-4.361-1.765-4.361Q-1.598-4.361-1.462-4.477Q-1.326-4.593-1.235-4.763Q-1.144-4.933-1.103-5.100Q-1.082-5.132-1.038-5.155L-0.942-5.155Q-0.863-5.126-0.863-5.070Q-0.863-5.064-0.871-5.035Q-0.921-4.824-1.049-4.618Q-1.176-4.411-1.367-4.279Q-1.557-4.147-1.777-4.147Q-2.023-4.147-2.212-4.287Q-2.401-4.426-2.401-4.669M-1.692-7.842Q-1.692-7.982-1.582-8.086Q-1.472-8.190-1.331-8.190Q-1.229-8.190-1.154-8.119Q-1.079-8.047-1.079-7.944Q-1.079-7.804-1.191-7.700Q-1.302-7.596-1.440-7.596Q-1.542-7.596-1.617-7.670Q-1.692-7.745-1.692-7.842",[1545],[1533,4796,4797],{"transform":4772},[1541,4798],{"d":4799,"fill":1535,"stroke":1535,"className":4800,"style":2013},"M9.063-6.349L3.257-6.349Q3.178-6.362 3.128-6.412Q3.077-6.463 3.077-6.538Q3.077-6.687 3.257-6.735L9.063-6.735Q9.234-6.683 9.234-6.538Q9.234-6.384 9.063-6.349M9.063-8.177L3.257-8.177Q3.077-8.207 3.077-8.366Q3.077-8.515 3.257-8.563L9.063-8.563Q9.234-8.511 9.234-8.366Q9.234-8.212 9.063-8.177",[1545],[1533,4802,4803],{"transform":4772},[1541,4804],{"d":4805,"fill":1535,"stroke":1535,"className":4806,"style":2013},"M13.390-5.593Q13.637-5.294 14.243-5.294Q14.524-5.294 14.764-5.432Q15.003-5.571 15.181-5.793Q15.359-6.015 15.469-6.278Q15.702-6.854 15.702-7.970Q15.535-7.605 15.230-7.381Q14.924-7.157 14.542-7.157Q14.006-7.157 13.590-7.436Q13.175-7.715 12.944-8.181Q12.714-8.647 12.714-9.174Q12.714-9.587 12.861-9.956Q13.008-10.326 13.272-10.602Q13.535-10.879 13.905-11.040Q14.274-11.200 14.687-11.200Q15.245-11.200 15.619-10.908Q15.992-10.616 16.196-10.152Q16.401-9.688 16.480-9.172Q16.559-8.656 16.559-8.124Q16.559-7.408 16.291-6.685Q16.023-5.962 15.500-5.485Q14.977-5.008 14.252-5.008Q13.702-5.008 13.325-5.257Q12.947-5.505 12.947-6.023Q12.947-6.142 13.004-6.245Q13.061-6.349 13.162-6.408Q13.263-6.467 13.390-6.467Q13.575-6.467 13.698-6.335Q13.821-6.204 13.821-6.023Q13.821-5.848 13.694-5.720Q13.566-5.593 13.390-5.593M14.586-7.421Q14.955-7.421 15.203-7.663Q15.452-7.904 15.568-8.262Q15.684-8.621 15.684-8.994Q15.684-9.104 15.676-9.157Q15.680-9.170 15.682-9.181Q15.684-9.192 15.684-9.209Q15.684-9.864 15.469-10.403Q15.254-10.941 14.687-10.941Q14.327-10.941 14.098-10.791Q13.869-10.642 13.753-10.385Q13.637-10.128 13.604-9.847Q13.571-9.565 13.571-9.192L13.571-9.157Q13.571-8.831 13.597-8.544Q13.623-8.256 13.722-7.997Q13.821-7.737 14.032-7.579Q14.243-7.421 14.586-7.421M17.631-2.947L17.548-2.947Q17.460-2.947 17.460-3.044Q17.460-3.083 17.495-3.119Q18.330-3.892 18.690-5.026Q19.051-6.160 19.051-7.456Q19.051-8.076 18.972-8.667Q18.892-9.258 18.712-9.816Q18.532-10.374 18.231-10.882Q17.930-11.389 17.495-11.785Q17.460-11.820 17.460-11.855Q17.460-11.956 17.548-11.956L17.631-11.956Q17.649-11.956 17.684-11.938Q18.189-11.556 18.563-11.042Q18.936-10.528 19.174-9.950Q19.411-9.372 19.527-8.744Q19.644-8.115 19.644-7.456Q19.644-6.797 19.527-6.166Q19.411-5.536 19.171-4.951Q18.932-4.367 18.561-3.857Q18.189-3.347 17.684-2.965Q17.649-2.947 17.631-2.947",[1545],[1533,4808,4809,4812],{"fill":1550,"stroke":1550},[1541,4810],{"fill":1557,"d":4811},"M64.335-52.153h46.244V-72.07H64.335Z",[1533,4813,4814,4821,4827,4833,4839,4845],{"fill":1550,"stroke":1557},[1533,4815,4817],{"transform":4816},"translate(85.153 -54.655)",[1541,4818],{"d":4819,"fill":1550,"stroke":1550,"className":4820,"style":2013},"M-17.945-3.936Q-17.945-4.156-17.794-4.316Q-17.642-4.477-17.422-4.477Q-17.277-4.477-17.174-4.384Q-17.071-4.292-17.071-4.143Q-17.071-3.993-17.161-3.861Q-17.251-3.729-17.405-3.668Q-17.277-3.624-17.115-3.624Q-16.856-3.624-16.636-3.791Q-16.416-3.958-16.262-4.222Q-16.109-4.485-16.047-4.740L-15.199-8.133Q-15.146-8.331-15.146-8.528Q-15.146-8.924-15.405-8.924Q-15.810-8.924-16.109-8.572Q-16.407-8.221-16.605-7.746Q-16.623-7.689-16.675-7.689L-16.781-7.689Q-16.829-7.689-16.851-7.728Q-16.873-7.768-16.873-7.808Q-16.649-8.366-16.276-8.774Q-15.902-9.183-15.388-9.183Q-15.137-9.183-14.935-9.078Q-14.733-8.972-14.614-8.783Q-14.496-8.594-14.496-8.348Q-14.496-8.221-14.522-8.093L-15.370-4.701Q-15.467-4.331-15.735-4.022Q-16.003-3.712-16.372-3.536Q-16.741-3.360-17.132-3.360Q-17.431-3.360-17.688-3.505Q-17.945-3.650-17.945-3.936M-15.036-10.651Q-15.036-10.849-14.878-11.002Q-14.720-11.156-14.513-11.156Q-14.373-11.156-14.269-11.057Q-14.166-10.958-14.166-10.813Q-14.166-10.607-14.320-10.457Q-14.474-10.308-14.676-10.308Q-14.825-10.308-14.931-10.405Q-15.036-10.501-15.036-10.651",[1545],[1533,4822,4823],{"transform":4816},[1541,4824],{"d":4825,"fill":1550,"stroke":1550,"className":4826,"style":2013},"M-7.586-2.965Q-8.091-3.352-8.460-3.857Q-8.830-4.362-9.073-4.962Q-9.317-5.562-9.432-6.179Q-9.546-6.797-9.546-7.456Q-9.546-8.115-9.432-8.730Q-9.317-9.346-9.078-9.939Q-8.838-10.532-8.465-11.042Q-8.091-11.552-7.586-11.938Q-7.551-11.956-7.529-11.956L-7.450-11.956Q-7.362-11.956-7.362-11.855Q-7.362-11.820-7.397-11.785Q-7.959-11.262-8.304-10.556Q-8.649-9.851-8.797-9.069Q-8.944-8.287-8.944-7.456Q-8.944-6.832-8.865-6.248Q-8.786-5.663-8.608-5.096Q-8.430-4.529-8.131-4.028Q-7.832-3.527-7.397-3.119Q-7.362-3.083-7.362-3.044Q-7.362-2.947-7.450-2.947L-7.529-2.947Q-7.551-2.947-7.586-2.965",[1545],[1533,4828,4829],{"transform":4816},[1541,4830],{"d":4831,"fill":1550,"stroke":1550,"className":4832,"style":2013},"M-5.218-5.105Q-5.614-5.105-5.900-5.309Q-6.185-5.514-6.332-5.848Q-6.480-6.182-6.480-6.573Q-6.480-7.008-6.306-7.469Q-6.132-7.931-5.820-8.322Q-5.508-8.713-5.098-8.948Q-4.687-9.183-4.247-9.183Q-3.979-9.183-3.762-9.045Q-3.544-8.906-3.412-8.660L-2.907-10.677Q-2.872-10.827-2.872-10.901Q-2.872-11.038-3.439-11.038Q-3.535-11.038-3.535-11.156Q-3.535-11.213-3.505-11.284Q-3.474-11.354-3.412-11.354L-2.186-11.451Q-2.133-11.451-2.103-11.422Q-2.072-11.393-2.072-11.345L-2.072-11.310L-3.355-6.160Q-3.355-6.102-3.384-5.971Q-3.412-5.839-3.412-5.764Q-3.412-5.369-3.149-5.369Q-2.863-5.369-2.729-5.692Q-2.595-6.015-2.476-6.520Q-2.467-6.551-2.443-6.575Q-2.419-6.599-2.384-6.599L-2.278-6.599Q-2.230-6.599-2.208-6.566Q-2.186-6.533-2.186-6.485Q-2.300-6.054-2.391-5.801Q-2.481-5.549-2.674-5.327Q-2.867-5.105-3.166-5.105Q-3.474-5.105-3.722-5.276Q-3.970-5.448-4.041-5.738Q-4.296-5.452-4.592-5.279Q-4.889-5.105-5.218-5.105M-5.201-5.369Q-4.871-5.369-4.561-5.610Q-4.252-5.852-4.041-6.168Q-4.032-6.177-4.032-6.204L-3.535-8.159Q-3.592-8.476-3.784-8.700Q-3.975-8.924-4.265-8.924Q-4.634-8.924-4.933-8.605Q-5.232-8.287-5.399-7.878Q-5.535-7.531-5.660-7.021Q-5.785-6.511-5.785-6.186Q-5.785-5.861-5.647-5.615Q-5.508-5.369-5.201-5.369",[1545],[1533,4834,4835],{"transform":4816},[1541,4836],{"d":4837,"fill":1550,"stroke":1550,"className":4838,"style":1699},"M-1.975-3.377Q-1.975-3.529-1.871-3.639Q-1.767-3.749-1.617-3.749Q-1.509-3.749-1.437-3.685Q-1.365-3.620-1.365-3.515Q-1.365-3.327-1.527-3.216Q-1.436-3.198-1.345-3.198Q-1.201-3.198-1.068-3.264Q-0.935-3.330-0.835-3.434Q-0.736-3.538-0.664-3.670Q-0.592-3.802-0.560-3.936L-0.003-6.157Q0.023-6.239 0.023-6.348Q0.023-6.459-0.028-6.547Q-0.079-6.635-0.188-6.635Q-0.457-6.635-0.686-6.414Q-0.914-6.192-1.034-5.899Q-1.055-5.861-1.105-5.844L-1.201-5.844Q-1.275-5.864-1.275-5.929Q-1.275-5.935-1.269-5.964Q-1.204-6.125-1.087-6.295Q-0.970-6.465-0.835-6.583Q-0.700-6.702-0.532-6.777Q-0.363-6.852-0.176-6.852Q0.108-6.852 0.318-6.701Q0.527-6.550 0.527-6.277Q0.527-6.207 0.507-6.137L-0.062-3.869Q-0.132-3.600-0.333-3.399Q-0.533-3.198-0.810-3.090Q-1.087-2.981-1.351-2.981Q-1.588-2.981-1.781-3.072Q-1.975-3.163-1.975-3.377M0.135-7.842Q0.135-7.982 0.246-8.086Q0.357-8.190 0.495-8.190Q0.598-8.190 0.672-8.119Q0.747-8.047 0.747-7.944Q0.747-7.804 0.637-7.700Q0.527-7.596 0.387-7.596Q0.284-7.596 0.209-7.670Q0.135-7.745 0.135-7.842",[1545],[1533,4840,4841],{"transform":4816},[1541,4842],{"d":4843,"fill":1550,"stroke":1550,"className":4844,"style":2013},"M10.939-6.349L5.133-6.349Q5.054-6.362 5.004-6.412Q4.953-6.463 4.953-6.538Q4.953-6.687 5.133-6.735L10.939-6.735Q11.110-6.683 11.110-6.538Q11.110-6.384 10.939-6.349M10.939-8.177L5.133-8.177Q4.953-8.207 4.953-8.366Q4.953-8.515 5.133-8.563L10.939-8.563Q11.110-8.511 11.110-8.366Q11.110-8.212 10.939-8.177",[1545],[1533,4846,4847],{"transform":4816},[1541,4848],{"d":4849,"fill":1550,"stroke":1550,"className":4850,"style":2013},"M15.029-6.212Q15.170-5.799 15.530-5.547Q15.890-5.294 16.326-5.294Q16.778-5.294 17.044-5.547Q17.310-5.799 17.413-6.184Q17.516-6.568 17.516-7.025Q17.516-8.726 16.607-8.726Q16.286-8.726 16.057-8.632Q15.829-8.537 15.699-8.418Q15.570-8.300 15.458-8.161Q15.346-8.023 15.310-8.014L15.227-8.014Q15.183-8.014 15.152-8.045Q15.121-8.076 15.121-8.124L15.121-11.121Q15.121-11.152 15.157-11.176Q15.192-11.200 15.218-11.200L15.258-11.200Q15.890-10.910 16.563-10.910Q17.235-10.910 17.877-11.200L17.903-11.200Q17.934-11.200 17.967-11.178Q18-11.156 18-11.121L18-11.020Q18-11.016 17.991-10.998Q17.982-10.980 17.982-10.976Q17.666-10.581 17.196-10.359Q16.725-10.137 16.229-10.137Q15.820-10.137 15.438-10.247L15.438-8.528Q15.895-8.985 16.607-8.985Q17.117-8.985 17.516-8.704Q17.916-8.423 18.138-7.968Q18.360-7.513 18.360-7.008Q18.360-6.458 18.081-5.999Q17.802-5.540 17.336-5.274Q16.870-5.008 16.326-5.008Q15.886-5.008 15.502-5.235Q15.117-5.461 14.889-5.841Q14.660-6.221 14.660-6.665Q14.660-6.858 14.792-6.990Q14.924-7.122 15.121-7.122Q15.253-7.122 15.357-7.063Q15.460-7.003 15.519-6.900Q15.578-6.797 15.578-6.665Q15.578-6.467 15.451-6.335Q15.324-6.204 15.121-6.204Q15.060-6.204 15.029-6.212M19.507-2.947L19.424-2.947Q19.336-2.947 19.336-3.044Q19.336-3.083 19.371-3.119Q20.206-3.892 20.566-5.026Q20.927-6.160 20.927-7.456Q20.927-8.076 20.848-8.667Q20.768-9.258 20.588-9.816Q20.408-10.374 20.107-10.882Q19.806-11.389 19.371-11.785Q19.336-11.820 19.336-11.855Q19.336-11.956 19.424-11.956L19.507-11.956Q19.525-11.956 19.560-11.938Q20.065-11.556 20.439-11.042Q20.812-10.528 21.050-9.950Q21.287-9.372 21.403-8.744Q21.520-8.115 21.520-7.456Q21.520-6.797 21.403-6.166Q21.287-5.536 21.047-4.951Q20.808-4.367 20.437-3.857Q20.065-3.347 19.560-2.965Q19.525-2.947 19.507-2.947",[1545],[1533,4852,4853],{"fill":1550,"stroke":1550},[1533,4854,4855,4862],{"fill":1550,"stroke":1557,"fontSize":2536},[1533,4856,4858],{"transform":4857},"translate(143.431 -54.905)",[1541,4859],{"d":4860,"fill":1550,"stroke":1550,"className":4861,"style":1546},"M-17.931-4.085Q-17.931-4.280-17.795-4.427Q-17.658-4.573-17.466-4.573Q-17.330-4.573-17.234-4.487Q-17.138-4.401-17.138-4.269Q-17.138-4.147-17.213-4.028Q-17.287-3.909-17.392-3.854Q-17.287-3.831-17.170-3.831Q-16.939-3.831-16.736-3.979Q-16.533-4.128-16.396-4.354Q-16.259-4.581-16.201-4.815L-15.451-7.823Q-15.412-7.979-15.412-8.116Q-15.412-8.265-15.464-8.372Q-15.517-8.479-15.650-8.479Q-15.888-8.479-16.099-8.325Q-16.310-8.171-16.464-7.938Q-16.619-7.706-16.720-7.452Q-16.736-7.405-16.795-7.405L-16.896-7.405Q-16.931-7.405-16.959-7.440Q-16.986-7.476-16.986-7.503L-16.986-7.534Q-16.869-7.827-16.670-8.106Q-16.470-8.386-16.207-8.560Q-15.943-8.733-15.634-8.733Q-15.412-8.733-15.218-8.642Q-15.025-8.550-14.910-8.378Q-14.795-8.206-14.795-7.983Q-14.795-7.913-14.826-7.765L-15.580-4.757Q-15.638-4.503-15.800-4.284Q-15.963-4.065-16.179-3.907Q-16.396-3.749-16.664-3.661Q-16.931-3.573-17.185-3.573Q-17.474-3.573-17.703-3.698Q-17.931-3.823-17.931-4.085M-15.291-10.046Q-15.291-10.226-15.146-10.364Q-15.002-10.503-14.818-10.503Q-14.689-10.503-14.593-10.415Q-14.498-10.327-14.498-10.190Q-14.498-10.015-14.642-9.874Q-14.787-9.733-14.963-9.733Q-15.095-9.733-15.193-9.825Q-15.291-9.917-15.291-10.046",[1545],[1533,4863,4864],{"transform":4857},[1541,4865],{"d":4866,"fill":1550,"stroke":1550,"className":4867,"style":1546},"M-8.934-5.206L-10.766-5.206L-10.766-5.503Q-10.492-5.503-10.324-5.550Q-10.156-5.597-10.156-5.765L-10.156-9.925Q-10.156-10.140-10.219-10.235Q-10.281-10.331-10.400-10.352Q-10.520-10.374-10.766-10.374L-10.766-10.671L-9.543-10.757L-9.543-5.765Q-9.543-5.597-9.375-5.550Q-9.207-5.503-8.934-5.503L-8.934-5.206M-8.391-6.038Q-8.391-6.522-7.988-6.817Q-7.586-7.112-7.035-7.231Q-6.484-7.351-5.992-7.351L-5.992-7.640Q-5.992-7.866-6.107-8.073Q-6.223-8.280-6.420-8.399Q-6.617-8.518-6.848-8.518Q-7.274-8.518-7.559-8.413Q-7.488-8.386-7.441-8.331Q-7.395-8.276-7.369-8.206Q-7.344-8.136-7.344-8.061Q-7.344-7.956-7.395-7.864Q-7.445-7.772-7.537-7.722Q-7.629-7.671-7.734-7.671Q-7.840-7.671-7.932-7.722Q-8.024-7.772-8.074-7.864Q-8.125-7.956-8.125-8.061Q-8.125-8.479-7.736-8.626Q-7.348-8.772-6.848-8.772Q-6.516-8.772-6.162-8.642Q-5.809-8.511-5.580-8.257Q-5.352-8.003-5.352-7.655L-5.352-5.854Q-5.352-5.722-5.279-5.612Q-5.207-5.503-5.078-5.503Q-4.953-5.503-4.885-5.608Q-4.816-5.714-4.816-5.854L-4.816-6.366L-4.535-6.366L-4.535-5.854Q-4.535-5.651-4.652-5.493Q-4.770-5.335-4.951-5.251Q-5.133-5.167-5.336-5.167Q-5.566-5.167-5.719-5.339Q-5.871-5.511-5.902-5.741Q-6.063-5.460-6.371-5.294Q-6.680-5.128-7.031-5.128Q-7.543-5.128-7.967-5.351Q-8.391-5.573-8.391-6.038M-7.703-6.038Q-7.703-5.753-7.477-5.567Q-7.250-5.382-6.957-5.382Q-6.711-5.382-6.486-5.499Q-6.262-5.616-6.127-5.819Q-5.992-6.022-5.992-6.276L-5.992-7.108Q-6.258-7.108-6.543-7.054Q-6.828-6.999-7.100-6.870Q-7.371-6.741-7.537-6.534Q-7.703-6.327-7.703-6.038M-3.617-6.167L-3.617-8.358L-4.320-8.358L-4.320-8.612Q-3.965-8.612-3.723-8.845Q-3.481-9.077-3.369-9.425Q-3.258-9.772-3.258-10.128L-2.977-10.128L-2.977-8.655L-1.801-8.655L-1.801-8.358L-2.977-8.358L-2.977-6.183Q-2.977-5.862-2.857-5.634Q-2.738-5.405-2.457-5.405Q-2.277-5.405-2.160-5.528Q-2.043-5.651-1.990-5.831Q-1.938-6.011-1.938-6.183L-1.938-6.655L-1.656-6.655L-1.656-6.167Q-1.656-5.913-1.762-5.673Q-1.867-5.433-2.065-5.280Q-2.262-5.128-2.520-5.128Q-2.836-5.128-3.088-5.251Q-3.340-5.374-3.479-5.608Q-3.617-5.843-3.617-6.167M-0.938-6.960Q-0.938-7.440-0.705-7.856Q-0.473-8.272-0.063-8.522Q0.348-8.772 0.824-8.772Q1.555-8.772 1.953-8.331Q2.351-7.890 2.351-7.159Q2.351-7.054 2.258-7.030L-0.191-7.030L-0.191-6.960Q-0.191-6.550-0.070-6.194Q0.051-5.839 0.322-5.622Q0.594-5.405 1.023-5.405Q1.387-5.405 1.684-5.634Q1.980-5.862 2.082-6.214Q2.090-6.261 2.176-6.276L2.258-6.276Q2.351-6.249 2.351-6.167Q2.351-6.159 2.344-6.128Q2.281-5.901 2.143-5.718Q2.004-5.534 1.812-5.401Q1.621-5.269 1.402-5.198Q1.184-5.128 0.945-5.128Q0.574-5.128 0.236-5.265Q-0.102-5.401-0.369-5.653Q-0.637-5.905-0.787-6.245Q-0.938-6.585-0.938-6.960M-0.184-7.269L1.777-7.269Q1.777-7.573 1.676-7.864Q1.574-8.155 1.357-8.337Q1.141-8.518 0.824-8.518Q0.523-8.518 0.293-8.331Q0.062-8.143-0.061-7.852Q-0.184-7.561-0.184-7.269",[1545],[1533,4869,4871],{"transform":4870},"translate(-31.19 -8.306)",[1541,4872],{"d":4873,"fill":1535,"stroke":1535,"className":4874,"style":2013},"M-12.184-5.206L-17.493-5.206L-17.493-5.522Q-16.574-5.522-16.574-5.817L-16.574-10.743Q-16.574-11.038-17.493-11.038L-17.493-11.354L-12.303-11.354L-12.048-9.293L-12.338-9.293Q-12.408-9.886-12.523-10.218Q-12.637-10.550-12.846-10.726Q-13.054-10.901-13.399-10.969Q-13.744-11.038-14.355-11.038L-15.269-11.038Q-15.520-11.038-15.625-10.989Q-15.731-10.941-15.731-10.743L-15.731-8.555L-15.045-8.555Q-14.566-8.555-14.344-8.629Q-14.122-8.704-14.030-8.919Q-13.938-9.135-13.938-9.605L-13.652-9.605L-13.652-7.188L-13.938-7.188Q-13.938-7.658-14.030-7.873Q-14.122-8.089-14.344-8.164Q-14.566-8.238-15.045-8.238L-15.731-8.238L-15.731-5.817Q-15.731-5.623-15.625-5.573Q-15.520-5.522-15.269-5.522L-14.289-5.522Q-13.652-5.522-13.263-5.619Q-12.874-5.716-12.654-5.938Q-12.435-6.160-12.314-6.538Q-12.193-6.915-12.083-7.566L-11.797-7.566L-12.184-5.206M-7.807-5.206L-11.182-5.206L-11.182-5.522Q-10.264-5.522-10.264-5.817L-10.264-10.743Q-10.264-11.038-11.182-11.038L-11.182-11.354L-7.807-11.354Q-7.192-11.354-6.667-11.095Q-6.142-10.835-5.766-10.394Q-5.390-9.952-5.186-9.387Q-4.982-8.823-4.982-8.221Q-4.982-7.443-5.351-6.744Q-5.720-6.045-6.368-5.626Q-7.016-5.206-7.807-5.206M-9.446-10.743L-9.446-5.817Q-9.446-5.623-9.341-5.573Q-9.235-5.522-8.985-5.522L-8.040-5.522Q-7.566-5.522-7.133-5.718Q-6.700-5.914-6.414-6.278Q-6.120-6.643-6.014-7.124Q-5.909-7.605-5.909-8.221Q-5.909-8.621-5.948-8.979Q-5.988-9.337-6.098-9.655Q-6.208-9.974-6.414-10.247Q-6.603-10.501-6.862-10.677Q-7.122-10.853-7.421-10.945Q-7.719-11.038-8.040-11.038L-8.985-11.038Q-9.235-11.038-9.341-10.989Q-9.446-10.941-9.446-10.743M-1.229-5.206L-4.133-5.206L-4.133-5.522Q-3.215-5.522-3.215-5.817L-3.215-10.743Q-3.215-11.038-4.133-11.038L-4.133-11.354L0.933-11.354L1.184-9.293L0.898-9.293Q0.802-10.062 0.628-10.416Q0.454-10.769 0.083-10.904Q-0.288-11.038-1.057-11.038L-1.910-11.038Q-2.160-11.038-2.266-10.989Q-2.371-10.941-2.371-10.743L-2.371-8.436L-1.703-8.436Q-1.242-8.436-1.020-8.513Q-0.798-8.590-0.712-8.812Q-0.627-9.034-0.627-9.491L-0.337-9.491L-0.337-7.069L-0.627-7.069Q-0.627-7.526-0.712-7.748Q-0.798-7.970-1.020-8.047Q-1.242-8.124-1.703-8.124L-2.371-8.124L-2.371-5.817Q-2.371-5.522-1.229-5.522L-1.229-5.206M2.344-5.711Q2.344-5.839 2.412-5.955Q2.480-6.072 2.597-6.142Q2.713-6.212 2.849-6.212Q3.052-6.212 3.203-6.065Q3.355-5.918 3.355-5.711Q3.355-5.505 3.205-5.355Q3.056-5.206 2.849-5.206Q2.639-5.206 2.491-5.358Q2.344-5.509 2.344-5.711M2.344-8.581Q2.344-8.779 2.489-8.933Q2.634-9.086 2.849-9.086Q2.986-9.086 3.102-9.018Q3.219-8.950 3.287-8.834Q3.355-8.717 3.355-8.581Q3.355-8.379 3.203-8.227Q3.052-8.076 2.849-8.076Q2.643-8.076 2.494-8.229Q2.344-8.383 2.344-8.581",[1545],[1533,4876,4877,4880],{"fill":1550,"stroke":1550},[1541,4878],{"fill":1557,"d":4879},"M-9.641-6.629h46.243v-19.916H-9.641Z",[1533,4881,4882,4888,4893,4898,4903,4908],{"fill":1550,"stroke":1557},[1533,4883,4885],{"transform":4884},"translate(11.177 -9.13)",[1541,4886],{"d":4819,"fill":1550,"stroke":1550,"className":4887,"style":2013},[1545],[1533,4889,4890],{"transform":4884},[1541,4891],{"d":4825,"fill":1550,"stroke":1550,"className":4892,"style":2013},[1545],[1533,4894,4895],{"transform":4884},[1541,4896],{"d":4831,"fill":1550,"stroke":1550,"className":4897,"style":2013},[1545],[1533,4899,4900],{"transform":4884},[1541,4901],{"d":4837,"fill":1550,"stroke":1550,"className":4902,"style":1699},[1545],[1533,4904,4905],{"transform":4884},[1541,4906],{"d":4843,"fill":1550,"stroke":1550,"className":4907,"style":2013},[1545],[1533,4909,4910],{"transform":4884},[1541,4911],{"d":4849,"fill":1550,"stroke":1550,"className":4912,"style":2013},[1545],[1541,4914],{"fill":1557,"d":4915},"M44.778-6.629h62.596v-19.916H44.778Z",[1533,4917,4918,4924,4929,4934,4939,4944],{"stroke":1557},[1533,4919,4921],{"transform":4920},"translate(74.71 -9.13)",[1541,4922],{"d":4775,"fill":1535,"stroke":1535,"className":4923,"style":2013},[1545],[1533,4925,4926],{"transform":4920},[1541,4927],{"d":4781,"fill":1535,"stroke":1535,"className":4928,"style":2013},[1545],[1533,4930,4931],{"transform":4920},[1541,4932],{"d":4787,"fill":1535,"stroke":1535,"className":4933,"style":2013},[1545],[1533,4935,4936],{"transform":4920},[1541,4937],{"d":4793,"fill":1535,"stroke":1535,"className":4938,"style":1699},[1545],[1533,4940,4941],{"transform":4920},[1541,4942],{"d":4799,"fill":1535,"stroke":1535,"className":4943,"style":2013},[1545],[1533,4945,4946],{"transform":4920},[1541,4947],{"d":4805,"fill":1535,"stroke":1535,"className":4948,"style":2013},[1545],[1533,4950,4951,4954,4957],{"fill":2390,"stroke":2390,"style":1551},[1541,4952],{"fill":1557,"d":4953},"M56.16-49.308v18.717",[1541,4955],{"fill":1557,"d":4956,"style":1739},"M60.004-33.031c-2.307.555-3.396 1.793-3.845 3.04-.448-1.247-1.538-2.485-3.845-3.04",[1533,4958,4959,4966],{"fill":2390,"stroke":1557,"fontFamily":2535,"fontSize":2536},[1533,4960,4962],{"transform":4961},"translate(51.816 -33.199)",[1541,4963],{"d":4964,"fill":2390,"stroke":2390,"className":4965,"style":1546},"M-17.537-5.214L-17.537-6.436Q-17.537-6.464-17.506-6.495Q-17.474-6.526-17.451-6.526L-17.345-6.526Q-17.275-6.526-17.259-6.464Q-17.197-6.144-17.058-5.903Q-16.920-5.663-16.687-5.522Q-16.455-5.382-16.146-5.382Q-15.908-5.382-15.699-5.442Q-15.490-5.503-15.353-5.651Q-15.216-5.800-15.216-6.046Q-15.216-6.300-15.427-6.466Q-15.638-6.632-15.908-6.686L-16.529-6.800Q-16.935-6.878-17.236-7.134Q-17.537-7.390-17.537-7.765Q-17.537-8.132-17.336-8.354Q-17.134-8.577-16.810-8.675Q-16.486-8.772-16.146-8.772Q-15.681-8.772-15.384-8.565L-15.162-8.749Q-15.138-8.772-15.107-8.772L-15.056-8.772Q-15.025-8.772-14.998-8.745Q-14.970-8.718-14.970-8.686L-14.970-7.702Q-14.970-7.671-14.996-7.642Q-15.021-7.612-15.056-7.612L-15.162-7.612Q-15.197-7.612-15.224-7.640Q-15.252-7.667-15.252-7.702Q-15.252-8.101-15.504-8.321Q-15.756-8.542-16.154-8.542Q-16.509-8.542-16.793-8.419Q-17.076-8.296-17.076-7.991Q-17.076-7.772-16.875-7.640Q-16.673-7.507-16.427-7.464L-15.802-7.351Q-15.373-7.261-15.064-6.964Q-14.756-6.667-14.756-6.253Q-14.756-5.683-15.154-5.405Q-15.552-5.128-16.146-5.128Q-16.697-5.128-17.048-5.464L-17.345-5.151Q-17.369-5.128-17.404-5.128L-17.451-5.128Q-17.474-5.128-17.506-5.159Q-17.537-5.190-17.537-5.214M-12.642-5.237L-13.713-8.093Q-13.779-8.272-13.910-8.315Q-14.041-8.358-14.298-8.358L-14.298-8.655L-12.619-8.655L-12.619-8.358Q-13.068-8.358-13.068-8.159Q-13.064-8.143-13.062-8.126Q-13.060-8.108-13.060-8.093L-12.267-5.999L-11.556-7.909Q-11.591-8.003-11.591-8.048Q-11.591-8.093-11.627-8.093Q-11.693-8.272-11.824-8.315Q-11.955-8.358-12.209-8.358L-12.209-8.655L-10.619-8.655L-10.619-8.358Q-11.068-8.358-11.068-8.159Q-11.064-8.140-11.062-8.122Q-11.060-8.104-11.060-8.093L-10.228-5.878L-9.474-7.878Q-9.451-7.936-9.451-8.007Q-9.451-8.167-9.588-8.263Q-9.724-8.358-9.892-8.358L-9.892-8.655L-8.506-8.655L-8.506-8.358Q-8.740-8.358-8.918-8.231Q-9.095-8.104-9.177-7.878L-10.162-5.237Q-10.216-5.128-10.330-5.128L-10.388-5.128Q-10.502-5.128-10.545-5.237L-11.404-7.511L-12.259-5.237Q-12.298-5.128-12.420-5.128L-12.474-5.128Q-12.588-5.128-12.642-5.237",[1545],[1533,4967,4968],{"transform":4961},[1541,4969],{"d":4970,"fill":2390,"stroke":2390,"className":4971,"style":1546},"M-8.226-6.038Q-8.226-6.522-7.824-6.817Q-7.421-7.112-6.871-7.231Q-6.320-7.351-5.828-7.351L-5.828-7.640Q-5.828-7.866-5.943-8.073Q-6.058-8.280-6.255-8.399Q-6.453-8.518-6.683-8.518Q-7.109-8.518-7.394-8.413Q-7.324-8.386-7.277-8.331Q-7.230-8.276-7.205-8.206Q-7.179-8.136-7.179-8.061Q-7.179-7.956-7.230-7.864Q-7.281-7.772-7.373-7.722Q-7.464-7.671-7.570-7.671Q-7.675-7.671-7.767-7.722Q-7.859-7.772-7.910-7.864Q-7.960-7.956-7.960-8.061Q-7.960-8.479-7.572-8.626Q-7.183-8.772-6.683-8.772Q-6.351-8.772-5.998-8.642Q-5.644-8.511-5.416-8.257Q-5.187-8.003-5.187-7.655L-5.187-5.854Q-5.187-5.722-5.115-5.612Q-5.042-5.503-4.914-5.503Q-4.789-5.503-4.720-5.608Q-4.652-5.714-4.652-5.854L-4.652-6.366L-4.371-6.366L-4.371-5.854Q-4.371-5.651-4.488-5.493Q-4.605-5.335-4.787-5.251Q-4.968-5.167-5.171-5.167Q-5.402-5.167-5.554-5.339Q-5.707-5.511-5.738-5.741Q-5.898-5.460-6.207-5.294Q-6.515-5.128-6.867-5.128Q-7.378-5.128-7.802-5.351Q-8.226-5.573-8.226-6.038M-7.539-6.038Q-7.539-5.753-7.312-5.567Q-7.085-5.382-6.792-5.382Q-6.546-5.382-6.322-5.499Q-6.097-5.616-5.962-5.819Q-5.828-6.022-5.828-6.276L-5.828-7.108Q-6.093-7.108-6.378-7.054Q-6.664-6.999-6.935-6.870Q-7.207-6.741-7.373-6.534Q-7.539-6.327-7.539-6.038M-2.195-3.655L-4.050-3.655L-4.050-3.948Q-3.781-3.948-3.613-3.993Q-3.445-4.038-3.445-4.214L-3.445-8.038Q-3.445-8.245-3.601-8.298Q-3.757-8.351-4.050-8.351L-4.050-8.647L-2.828-8.733L-2.828-8.268Q-2.597-8.491-2.283-8.612Q-1.968-8.733-1.628-8.733Q-1.156-8.733-0.751-8.487Q-0.347-8.241-0.115-7.825Q0.118-7.409 0.118-6.933Q0.118-6.558-0.031-6.229Q-0.179-5.901-0.449-5.649Q-0.718-5.397-1.062-5.263Q-1.406-5.128-1.765-5.128Q-2.054-5.128-2.326-5.249Q-2.597-5.370-2.804-5.581L-2.804-4.214Q-2.804-4.038-2.636-3.993Q-2.468-3.948-2.195-3.948L-2.195-3.655M-2.804-7.870L-2.804-6.030Q-2.652-5.741-2.390-5.561Q-2.128-5.382-1.820-5.382Q-1.535-5.382-1.312-5.520Q-1.089-5.659-0.937-5.890Q-0.785-6.120-0.707-6.392Q-0.628-6.663-0.628-6.933Q-0.628-7.265-0.753-7.622Q-0.878-7.979-1.126-8.216Q-1.374-8.452-1.722-8.452Q-2.046-8.452-2.341-8.296Q-2.636-8.140-2.804-7.870",[1545],[1748,4973,4975,4976,5083],{"className":4974},[1751],"an adjacent EDF swap: exchanging an inversion (",[424,4977,4979],{"className":4978},[427],[424,4980,4982,5037],{"className":4981,"ariaHidden":432},[431],[424,4983,4985,4988,5028,5031,5034],{"className":4984},[436],[424,4986],{"className":4987,"style":4009},[440],[424,4989,4991,4994],{"className":4990},[445],[424,4992,1907],{"className":4993},[445,446],[424,4995,4997],{"className":4996},[495],[424,4998,5000,5020],{"className":4999},[499,500],[424,5001,5003,5017],{"className":5002},[504],[424,5004,5006],{"className":5005,"style":509},[508],[424,5007,5008,5011],{"style":512},[424,5009],{"className":5010,"style":517},[516],[424,5012,5014],{"className":5013},[521,522,523,524],[424,5015,465],{"className":5016},[445,446,524],[424,5018,532],{"className":5019},[531],[424,5021,5023],{"className":5022},[504],[424,5024,5026],{"className":5025,"style":539},[508],[424,5027],{},[424,5029],{"className":5030,"style":1142},[550],[424,5032,4056],{"className":5033},[1146],[424,5035],{"className":5036,"style":1142},[550],[424,5038,5040,5043],{"className":5039},[436],[424,5041],{"className":5042,"style":1157},[440],[424,5044,5046,5049],{"className":5045},[445],[424,5047,1907],{"className":5048},[445,446],[424,5050,5052],{"className":5051},[495],[424,5053,5055,5075],{"className":5054},[499,500],[424,5056,5058,5072],{"className":5057},[504],[424,5059,5061],{"className":5060,"style":509},[508],[424,5062,5063,5066],{"style":512},[424,5064],{"className":5065,"style":517},[516],[424,5067,5069],{"className":5068},[521,522,523,524],[424,5070,914],{"className":5071,"style":913},[445,446,524],[424,5073,532],{"className":5074},[531],[424,5076,5078],{"className":5077},[504],[424,5079,5081],{"className":5080,"style":1196},[508],[424,5082],{},") never raises max lateness",[381,5085,5086,5087,5126],{},"So minimizing maximum lateness is, again, sort-and-scan: sort by deadline in\n",[424,5088,5090],{"className":5089},[427],[424,5091,5093],{"className":5092,"ariaHidden":432},[431],[424,5094,5096,5099,5102,5105,5108,5111,5117,5120,5123],{"className":5095},[436],[424,5097],{"className":5098,"style":479},[440],[424,5100,696],{"className":5101},[445,695],[424,5103,700],{"className":5104},[483],[424,5106,447],{"className":5107},[445,446],[424,5109],{"className":5110,"style":551},[550],[424,5112,5114],{"className":5113},[710],[424,5115,716],{"className":5116,"style":715},[445,714],[424,5118],{"className":5119,"style":551},[550],[424,5121,447],{"className":5122},[445,446],[424,5124,599],{"className":5125},[598],", run in that order, done. A small worked run makes the objective\nconcrete: with the jobs in deadline order, each finish time falls out of the\nrunning total, and the lateness of the worst job is what we report.",[1520,5128,5130,5396],{"className":5129},[1523,1524],[1526,5131,5135],{"xmlns":1528,"width":5132,"height":5133,"viewBox":5134},"252.510","97.034","-75 -75 189.382 72.776",[1533,5136,5137,5149,5161,5173,5188,5191,5198,5201,5208,5211,5218,5221,5228,5273,5315,5354],{"stroke":1535,"style":1536},[1533,5138,5139,5142],{"fill":1620,"style":1551},[1541,5140],{"d":5141},"M-57.592-30.384h43.533v-17.072h-43.533Z",[1533,5143,5145],{"transform":5144},"translate(18.298 -31.069)",[1541,5146],{"d":5147,"fill":1535,"stroke":1535,"className":5148,"style":2013},"M-55.430-4.776L-57.161-4.776Q-57.258-4.776-57.258-4.895Q-57.258-4.952-57.227-5.022Q-57.196-5.092-57.135-5.092Q-56.445-5.092-56.045-5.703Q-56.045-5.703-56.019-5.730L-52.749-11.113Q-52.688-11.218-52.560-11.218L-52.472-11.218Q-52.349-11.218-52.336-11.113L-51.708-5.281Q-51.664-5.163-51.473-5.128Q-51.281-5.092-51.022-5.092Q-50.978-5.092-50.945-5.055Q-50.912-5.018-50.912-4.983Q-50.912-4.776-51.075-4.776L-53.307-4.776Q-53.347-4.776-53.378-4.816Q-53.408-4.855-53.408-4.895Q-53.408-4.956-53.373-5.024Q-53.338-5.092-53.281-5.092Q-53.004-5.092-52.795-5.136Q-52.587-5.180-52.543-5.334L-52.705-6.819L-55.026-6.819L-55.746-5.624Q-55.830-5.501-55.830-5.378Q-55.830-5.220-55.689-5.156Q-55.549-5.092-55.368-5.092Q-55.324-5.092-55.298-5.059Q-55.272-5.026-55.272-4.983Q-55.272-4.776-55.430-4.776M-53.057-10.058L-54.828-7.136L-52.740-7.136",[1545],[1533,5150,5151,5154],{"fill":1549,"style":1551},[1541,5152],{"d":5153},"M-14.059-30.384h58.044v-17.072H-14.06Z",[1533,5155,5157],{"transform":5156},"translate(68.831 -31.069)",[1541,5158],{"d":5159,"fill":1535,"stroke":1535,"className":5160,"style":2013},"M-53.615-4.776L-57.087-4.776Q-57.196-4.776-57.196-4.895Q-57.196-4.956-57.164-5.024Q-57.131-5.092-57.069-5.092Q-56.568-5.092-56.340-5.145Q-56.212-5.193-56.142-5.422L-54.920-10.339Q-54.903-10.427-54.903-10.471Q-54.903-10.537-54.929-10.555Q-55.100-10.608-55.632-10.608Q-55.738-10.608-55.738-10.726Q-55.738-10.788-55.705-10.856Q-55.672-10.924-55.610-10.924L-52.336-10.924Q-51.932-10.924-51.539-10.788Q-51.145-10.651-50.890-10.368Q-50.635-10.085-50.635-9.672Q-50.635-9.236-50.930-8.876Q-51.224-8.516-51.662-8.292Q-52.099-8.068-52.534-7.988Q-52.174-7.953-51.846-7.795Q-51.519-7.637-51.314-7.360Q-51.110-7.083-51.110-6.718Q-51.110-6.305-51.341-5.945Q-51.571-5.585-51.958-5.323Q-52.345-5.062-52.780-4.919Q-53.215-4.776-53.615-4.776M-55.430-5.154Q-55.430-5.092-55.144-5.092L-53.795-5.092Q-53.347-5.092-52.927-5.330Q-52.508-5.567-52.255-5.960Q-52.002-6.354-52.002-6.802Q-52.002-7.096-52.123-7.334Q-52.244-7.571-52.461-7.707Q-52.679-7.843-52.973-7.843L-54.775-7.843L-55.395-5.360Q-55.430-5.220-55.430-5.154M-54.173-10.274L-54.714-8.107L-53.299-8.107Q-52.881-8.107-52.457-8.320Q-52.033-8.533-51.767-8.898Q-51.501-9.263-51.501-9.698Q-51.501-10.093-51.758-10.350Q-52.015-10.608-52.415-10.608L-53.703-10.608Q-53.962-10.608-54.037-10.561Q-54.112-10.515-54.173-10.274",[1545],[1533,5162,5163,5166],{"fill":1620,"style":1551},[1541,5164],{"d":5165},"M43.985-30.384h29.022v-17.072H43.985Z",[1533,5167,5169],{"transform":5168},"translate(112.467 -31.069)",[1541,5170],{"d":5171,"fill":1535,"stroke":1535,"className":5172,"style":2013},"M-56.260-6.749Q-56.260-5.919-55.773-5.407Q-55.285-4.895-54.450-4.895Q-53.879-4.895-53.345-5.176Q-52.811-5.457-52.426-5.938Q-52.042-6.420-51.897-6.973Q-51.888-7.004-51.864-7.028Q-51.840-7.052-51.804-7.052L-51.699-7.052Q-51.607-7.052-51.607-6.938Q-51.769-6.301-52.222-5.756Q-52.675-5.211-53.301-4.895Q-53.927-4.578-54.595-4.578Q-55.324-4.578-55.900-4.895Q-56.476-5.211-56.805-5.776Q-57.135-6.340-57.135-7.070Q-57.135-7.835-56.786-8.571Q-56.436-9.307-55.854-9.876Q-55.272-10.445-54.520-10.783Q-53.769-11.122-53.013-11.122Q-52.543-11.122-52.145-10.917Q-51.747-10.713-51.501-10.331L-50.789-11.104Q-50.772-11.122-50.732-11.122L-50.679-11.122Q-50.592-11.122-50.592-11.003L-51.194-8.608Q-51.211-8.529-51.281-8.529L-51.418-8.529Q-51.510-8.529-51.510-8.648Q-51.470-8.828-51.470-9.078Q-51.470-9.540-51.635-9.935Q-51.800-10.331-52.130-10.568Q-52.459-10.805-52.929-10.805Q-53.668-10.805-54.285-10.447Q-54.903-10.089-55.344-9.494Q-55.786-8.898-56.023-8.175Q-56.260-7.452-56.260-6.749",[1545],[1533,5174,5175,5178,5181],{"style":1621},[1541,5176],{"fill":1557,"d":5177},"M-57.592-26.97h144.31",[1541,5179],{"fill":1557,"d":5180,"style":1739},"M84.558-30.092c.468 1.873 1.51 2.758 2.56 3.122-1.05.364-2.092 1.25-2.56 3.123",[1533,5182,5184],{"transform":5183},"translate(148.843 -19.51)",[1541,5185],{"d":5186,"fill":1535,"stroke":1535,"className":5187,"style":1546},"M-56.729-5.737L-56.729-7.928L-57.432-7.928L-57.432-8.182Q-57.076-8.182-56.834-8.415Q-56.592-8.647-56.481-8.995Q-56.369-9.342-56.369-9.698L-56.088-9.698L-56.088-8.225L-54.912-8.225L-54.912-7.928L-56.088-7.928L-56.088-5.753Q-56.088-5.432-55.969-5.204Q-55.850-4.975-55.569-4.975Q-55.389-4.975-55.272-5.098Q-55.154-5.221-55.102-5.401Q-55.049-5.581-55.049-5.753L-55.049-6.225L-54.768-6.225L-54.768-5.737Q-54.768-5.483-54.873-5.243Q-54.979-5.003-55.176-4.850Q-55.373-4.698-55.631-4.698Q-55.947-4.698-56.199-4.821Q-56.451-4.944-56.590-5.178Q-56.729-5.413-56.729-5.737M-52.190-4.776L-53.967-4.776L-53.967-5.073Q-53.694-5.073-53.526-5.120Q-53.358-5.167-53.358-5.335L-53.358-7.471Q-53.358-7.686-53.414-7.782Q-53.471-7.878-53.584-7.899Q-53.697-7.921-53.944-7.921L-53.944-8.217L-52.744-8.303L-52.744-5.335Q-52.744-5.167-52.598-5.120Q-52.451-5.073-52.190-5.073L-52.190-4.776M-53.631-9.698Q-53.631-9.889-53.496-10.020Q-53.362-10.151-53.166-10.151Q-53.045-10.151-52.942-10.088Q-52.838-10.026-52.776-9.922Q-52.713-9.819-52.713-9.698Q-52.713-9.503-52.844-9.368Q-52.975-9.233-53.166-9.233Q-53.365-9.233-53.498-9.366Q-53.631-9.499-53.631-9.698M-49.760-4.776L-51.615-4.776L-51.615-5.073Q-51.342-5.073-51.174-5.120Q-51.006-5.167-51.006-5.335L-51.006-7.471Q-51.006-7.686-51.069-7.782Q-51.131-7.878-51.250-7.899Q-51.369-7.921-51.615-7.921L-51.615-8.217L-50.424-8.303L-50.424-7.569Q-50.311-7.784-50.117-7.952Q-49.924-8.120-49.686-8.212Q-49.447-8.303-49.194-8.303Q-48.233-8.303-48.057-7.592Q-47.873-7.921-47.545-8.112Q-47.217-8.303-46.838-8.303Q-45.662-8.303-45.662-7.225L-45.662-5.335Q-45.662-5.167-45.494-5.120Q-45.326-5.073-45.057-5.073L-45.057-4.776L-46.912-4.776L-46.912-5.073Q-46.639-5.073-46.471-5.118Q-46.303-5.163-46.303-5.335L-46.303-7.210Q-46.303-7.596-46.428-7.823Q-46.553-8.049-46.904-8.049Q-47.209-8.049-47.465-7.887Q-47.721-7.725-47.869-7.456Q-48.018-7.186-48.018-6.889L-48.018-5.335Q-48.018-5.167-47.848-5.120Q-47.678-5.073-47.408-5.073L-47.408-4.776L-49.264-4.776L-49.264-5.073Q-48.990-5.073-48.822-5.120Q-48.654-5.167-48.654-5.335L-48.654-7.210Q-48.654-7.596-48.779-7.823Q-48.904-8.049-49.256-8.049Q-49.561-8.049-49.817-7.887Q-50.072-7.725-50.221-7.456Q-50.369-7.186-50.369-6.889L-50.369-5.335Q-50.369-5.167-50.199-5.120Q-50.029-5.073-49.760-5.073L-49.760-4.776M-44.612-6.530Q-44.612-7.010-44.379-7.426Q-44.147-7.842-43.737-8.092Q-43.326-8.342-42.850-8.342Q-42.119-8.342-41.721-7.901Q-41.322-7.460-41.322-6.729Q-41.322-6.624-41.416-6.600L-43.865-6.600L-43.865-6.530Q-43.865-6.120-43.744-5.764Q-43.623-5.409-43.352-5.192Q-43.080-4.975-42.651-4.975Q-42.287-4.975-41.990-5.204Q-41.694-5.432-41.592-5.784Q-41.584-5.831-41.498-5.846L-41.416-5.846Q-41.322-5.819-41.322-5.737Q-41.322-5.729-41.330-5.698Q-41.393-5.471-41.531-5.288Q-41.670-5.104-41.862-4.971Q-42.053-4.838-42.272-4.768Q-42.490-4.698-42.729-4.698Q-43.100-4.698-43.438-4.835Q-43.776-4.971-44.043-5.223Q-44.311-5.475-44.461-5.815Q-44.612-6.155-44.612-6.530M-43.858-6.838L-41.897-6.838Q-41.897-7.143-41.998-7.434Q-42.100-7.725-42.317-7.907Q-42.533-8.088-42.850-8.088Q-43.151-8.088-43.381-7.901Q-43.612-7.713-43.735-7.422Q-43.858-7.131-43.858-6.838",[1545],[1541,5189],{"fill":1557,"d":5190},"M-57.592-28.677v3.414",[1533,5192,5194],{"transform":5193},"translate(-2.125 -11.798)",[1541,5195],{"d":5196,"fill":1535,"stroke":1535,"className":5197,"style":1546},"M-55.471-4.608Q-56.174-4.608-56.574-5.008Q-56.975-5.409-57.119-6.018Q-57.264-6.628-57.264-7.327Q-57.264-7.850-57.194-8.313Q-57.123-8.776-56.930-9.188Q-56.737-9.600-56.379-9.848Q-56.022-10.096-55.471-10.096Q-54.920-10.096-54.563-9.848Q-54.205-9.600-54.014-9.190Q-53.822-8.780-53.752-8.311Q-53.682-7.842-53.682-7.327Q-53.682-6.628-53.824-6.020Q-53.967-5.413-54.367-5.010Q-54.768-4.608-55.471-4.608M-55.471-4.866Q-54.998-4.866-54.766-5.301Q-54.533-5.737-54.479-6.276Q-54.424-6.815-54.424-7.456Q-54.424-8.452-54.608-9.145Q-54.791-9.838-55.471-9.838Q-55.838-9.838-56.059-9.600Q-56.279-9.362-56.375-9.005Q-56.471-8.647-56.496-8.276Q-56.522-7.905-56.522-7.456Q-56.522-6.815-56.467-6.276Q-56.412-5.737-56.180-5.301Q-55.947-4.866-55.471-4.866",[1545],[1541,5199],{"fill":1557,"d":5200},"M-14.059-28.677v3.414",[1533,5202,5204],{"transform":5203},"translate(41.408 -11.798)",[1541,5205],{"d":5206,"fill":1535,"stroke":1535,"className":5207,"style":1546},"M-56.799-5.409Q-56.608-5.135-56.252-5.008Q-55.897-4.881-55.514-4.881Q-55.178-4.881-54.969-5.067Q-54.760-5.253-54.664-5.546Q-54.569-5.838-54.569-6.151Q-54.569-6.475-54.666-6.770Q-54.764-7.065-54.977-7.249Q-55.190-7.432-55.522-7.432L-56.088-7.432Q-56.119-7.432-56.149-7.462Q-56.178-7.491-56.178-7.518L-56.178-7.600Q-56.178-7.635-56.149-7.661Q-56.119-7.686-56.088-7.686L-55.608-7.721Q-55.322-7.721-55.125-7.926Q-54.928-8.131-54.832-8.426Q-54.737-8.721-54.737-8.999Q-54.737-9.378-54.936-9.616Q-55.135-9.854-55.514-9.854Q-55.834-9.854-56.123-9.747Q-56.412-9.639-56.576-9.417Q-56.397-9.417-56.274-9.290Q-56.151-9.163-56.151-8.991Q-56.151-8.819-56.276-8.694Q-56.401-8.569-56.576-8.569Q-56.748-8.569-56.873-8.694Q-56.998-8.819-56.998-8.991Q-56.998-9.358-56.774-9.606Q-56.549-9.854-56.209-9.975Q-55.869-10.096-55.514-10.096Q-55.166-10.096-54.803-9.975Q-54.440-9.854-54.192-9.604Q-53.944-9.354-53.944-8.999Q-53.944-8.514-54.262-8.131Q-54.580-7.749-55.057-7.577Q-54.506-7.467-54.106-7.081Q-53.705-6.694-53.705-6.159Q-53.705-5.702-53.969-5.346Q-54.233-4.991-54.654-4.799Q-55.076-4.608-55.514-4.608Q-55.924-4.608-56.317-4.743Q-56.709-4.878-56.975-5.163Q-57.240-5.448-57.240-5.866Q-57.240-6.061-57.108-6.190Q-56.975-6.319-56.783-6.319Q-56.658-6.319-56.555-6.260Q-56.451-6.202-56.389-6.096Q-56.326-5.991-56.326-5.866Q-56.326-5.671-56.461-5.540Q-56.596-5.409-56.799-5.409",[1545],[1541,5209],{"fill":1557,"d":5210},"M43.985-28.677v3.414",[1533,5212,5214],{"transform":5213},"translate(99.452 -11.798)",[1541,5215],{"d":5216,"fill":1535,"stroke":1535,"className":5217,"style":1546},"M-56.096-4.999Q-56.096-5.424-56.012-5.874Q-55.928-6.323-55.772-6.741Q-55.615-7.159-55.401-7.546Q-55.186-7.932-54.912-8.288L-54.186-9.241L-55.096-9.241Q-56.592-9.241-56.631-9.202Q-56.701-9.120-56.748-8.930Q-56.795-8.741-56.838-8.463L-57.119-8.463L-56.850-10.182L-56.569-10.182L-56.569-10.159Q-56.569-10.014-56.051-9.971Q-55.533-9.928-55.041-9.928L-53.471-9.928L-53.471-9.737Q-53.479-9.698-53.494-9.671L-54.670-8.135Q-54.971-7.717-55.110-7.210Q-55.248-6.702-55.279-6.208Q-55.311-5.713-55.311-4.999Q-55.311-4.893-55.362-4.801Q-55.412-4.710-55.504-4.659Q-55.596-4.608-55.705-4.608Q-55.811-4.608-55.903-4.659Q-55.994-4.710-56.045-4.801Q-56.096-4.893-56.096-4.999",[1545],[1541,5219],{"fill":1557,"d":5220},"M73.007-28.677v3.414",[1533,5222,5224],{"transform":5223},"translate(128.474 -11.798)",[1541,5225],{"d":5226,"fill":1535,"stroke":1535,"className":5227,"style":1546},"M-56.600-5.120Q-56.369-4.881-55.822-4.881Q-55.569-4.881-55.346-5.005Q-55.123-5.128-54.953-5.344Q-54.783-5.561-54.690-5.792Q-54.565-6.104-54.526-6.444Q-54.487-6.784-54.487-7.233Q-54.654-6.901-54.938-6.706Q-55.221-6.510-55.561-6.510Q-55.924-6.510-56.237-6.655Q-56.549-6.799-56.772-7.051Q-56.994-7.303-57.117-7.630Q-57.240-7.956-57.240-8.311Q-57.240-8.807-56.998-9.217Q-56.756-9.628-56.338-9.862Q-55.920-10.096-55.424-10.096Q-54.467-10.096-54.086-9.266Q-53.705-8.436-53.705-7.362Q-53.705-6.729-53.955-6.085Q-54.205-5.440-54.688-5.024Q-55.170-4.608-55.822-4.608Q-56.326-4.608-56.676-4.825Q-57.026-5.042-57.026-5.510Q-57.026-5.678-56.912-5.792Q-56.799-5.905-56.631-5.905Q-56.526-5.905-56.434-5.854Q-56.342-5.803-56.291-5.712Q-56.240-5.620-56.240-5.510Q-56.240-5.362-56.342-5.241Q-56.444-5.120-56.600-5.120M-55.522-6.768Q-55.190-6.768-54.957-6.979Q-54.725-7.190-54.613-7.512Q-54.502-7.835-54.502-8.151Q-54.502-8.249-54.514-8.303Q-54.510-8.311-54.506-8.323Q-54.502-8.335-54.502-8.342Q-54.502-8.585-54.545-8.848Q-54.588-9.112-54.690-9.340Q-54.791-9.569-54.973-9.712Q-55.154-9.854-55.424-9.854Q-55.858-9.854-56.084-9.633Q-56.311-9.413-56.383-9.081Q-56.455-8.749-56.455-8.311Q-56.455-7.866-56.399-7.544Q-56.342-7.221-56.137-6.995Q-55.932-6.768-55.522-6.768",[1545],[1533,5229,5230,5237,5243,5249,5255,5261,5267],{"stroke":1557,"fontSize":2536},[1533,5231,5233],{"transform":5232},"translate(-4.679 -46.655)",[1541,5234],{"d":5235,"fill":1535,"stroke":1535,"className":5236,"style":1546},"M-56.697-3.471Q-56.553-3.401-56.377-3.401Q-56.233-3.401-56.123-3.540Q-56.014-3.678-55.951-3.866Q-55.889-4.053-55.846-4.255Q-55.803-4.456-55.776-4.624Q-55.549-5.784-55.514-5.983L-55.158-7.928L-55.889-7.928Q-55.983-7.956-55.983-8.057L-55.959-8.159Q-55.951-8.206-55.873-8.225L-55.104-8.225L-55.006-8.745Q-54.928-9.198-54.854-9.469Q-54.779-9.741-54.615-9.960Q-54.459-10.163-54.238-10.286Q-54.018-10.409-53.791-10.409Q-53.490-10.409-53.248-10.262Q-53.006-10.116-53.006-9.831Q-53.006-9.624-53.143-9.475Q-53.279-9.327-53.479-9.327Q-53.612-9.327-53.705-9.411Q-53.799-9.495-53.799-9.631Q-53.799-9.784-53.705-9.907Q-53.612-10.030-53.463-10.081Q-53.619-10.151-53.799-10.151Q-53.897-10.151-53.994-10.081Q-54.092-10.010-54.135-9.913Q-54.182-9.760-54.207-9.647Q-54.233-9.534-54.268-9.346Q-54.303-9.159-54.324-9.016Q-54.346-8.874-54.369-8.760L-54.471-8.225L-53.592-8.225Q-53.494-8.198-53.494-8.104L-53.522-7.999Q-53.529-7.948-53.608-7.928L-54.522-7.928L-54.881-5.991Q-54.947-5.577-55.039-5.137Q-55.131-4.698-55.303-4.227Q-55.475-3.756-55.742-3.450Q-56.010-3.143-56.385-3.143Q-56.678-3.143-56.910-3.296Q-57.143-3.448-57.143-3.721Q-57.143-3.924-57.008-4.075Q-56.873-4.225-56.670-4.225Q-56.537-4.225-56.446-4.141Q-56.354-4.057-56.354-3.921Q-56.354-3.772-56.449-3.645Q-56.545-3.518-56.697-3.471",[1545],[1533,5238,5239],{"transform":5232},[1541,5240],{"d":5241,"fill":1535,"stroke":1535,"className":5242,"style":1546},"M-46.666-5.753L-51.979-5.753Q-52.057-5.760-52.106-5.809Q-52.154-5.858-52.154-5.936Q-52.154-6.006-52.107-6.057Q-52.061-6.108-51.979-6.120L-46.666-6.120Q-46.592-6.108-46.545-6.057Q-46.498-6.006-46.498-5.936Q-46.498-5.858-46.547-5.809Q-46.596-5.760-46.666-5.753M-46.666-7.440L-51.979-7.440Q-52.057-7.448-52.106-7.497Q-52.154-7.546-52.154-7.624Q-52.154-7.694-52.107-7.745Q-52.061-7.796-51.979-7.807L-46.666-7.807Q-46.592-7.796-46.545-7.745Q-46.498-7.694-46.498-7.624Q-46.498-7.546-46.547-7.497Q-46.596-7.448-46.666-7.440",[1545],[1533,5244,5245],{"transform":5232},[1541,5246],{"d":5247,"fill":1535,"stroke":1535,"className":5248,"style":1546},"M-45.222-5.409Q-45.031-5.135-44.675-5.008Q-44.320-4.881-43.937-4.881Q-43.601-4.881-43.392-5.067Q-43.183-5.253-43.087-5.546Q-42.992-5.838-42.992-6.151Q-42.992-6.475-43.089-6.770Q-43.187-7.065-43.400-7.249Q-43.613-7.432-43.945-7.432L-44.511-7.432Q-44.542-7.432-44.572-7.462Q-44.601-7.491-44.601-7.518L-44.601-7.600Q-44.601-7.635-44.572-7.661Q-44.542-7.686-44.511-7.686L-44.031-7.721Q-43.745-7.721-43.548-7.926Q-43.351-8.131-43.255-8.426Q-43.160-8.721-43.160-8.999Q-43.160-9.378-43.359-9.616Q-43.558-9.854-43.937-9.854Q-44.257-9.854-44.546-9.747Q-44.835-9.639-44.999-9.417Q-44.820-9.417-44.697-9.290Q-44.574-9.163-44.574-8.991Q-44.574-8.819-44.699-8.694Q-44.824-8.569-44.999-8.569Q-45.171-8.569-45.296-8.694Q-45.421-8.819-45.421-8.991Q-45.421-9.358-45.197-9.606Q-44.972-9.854-44.632-9.975Q-44.292-10.096-43.937-10.096Q-43.589-10.096-43.226-9.975Q-42.863-9.854-42.615-9.604Q-42.367-9.354-42.367-8.999Q-42.367-8.514-42.685-8.131Q-43.003-7.749-43.480-7.577Q-42.929-7.467-42.529-7.081Q-42.128-6.694-42.128-6.159Q-42.128-5.702-42.392-5.346Q-42.656-4.991-43.078-4.799Q-43.499-4.608-43.937-4.608Q-44.347-4.608-44.740-4.743Q-45.132-4.878-45.398-5.163Q-45.663-5.448-45.663-5.866Q-45.663-6.061-45.531-6.190Q-45.398-6.319-45.206-6.319Q-45.081-6.319-44.978-6.260Q-44.874-6.202-44.812-6.096Q-44.749-5.991-44.749-5.866Q-44.749-5.671-44.884-5.540Q-45.019-5.409-45.222-5.409",[1545],[1533,5250,5251],{"transform":5232},[1541,5252],{"d":5253,"fill":1535,"stroke":1535,"className":5254,"style":1546},"M-40.941-3.370Q-40.941-3.393-40.910-3.440Q-40.617-3.702-40.451-4.069Q-40.285-4.436-40.285-4.823L-40.285-4.881Q-40.413-4.776-40.581-4.776Q-40.773-4.776-40.910-4.909Q-41.046-5.042-41.046-5.241Q-41.046-5.432-40.910-5.565Q-40.773-5.698-40.581-5.698Q-40.281-5.698-40.156-5.428Q-40.031-5.159-40.031-4.823Q-40.031-4.374-40.212-3.960Q-40.394-3.546-40.734-3.249Q-40.757-3.225-40.796-3.225Q-40.843-3.225-40.892-3.270Q-40.941-3.315-40.941-3.370",[1545],[1533,5256,5257],{"transform":5232},[1541,5258],{"d":5259,"fill":1535,"stroke":1535,"className":5260,"style":1546},"M-33.002-4.776L-34.834-4.776L-34.834-5.073Q-34.560-5.073-34.392-5.120Q-34.224-5.167-34.224-5.335L-34.224-9.495Q-34.224-9.710-34.287-9.805Q-34.349-9.901-34.468-9.922Q-34.588-9.944-34.834-9.944L-34.834-10.241L-33.611-10.327L-33.611-5.335Q-33.611-5.167-33.443-5.120Q-33.275-5.073-33.002-5.073L-33.002-4.776M-32.459-5.608Q-32.459-6.092-32.056-6.387Q-31.654-6.682-31.103-6.801Q-30.552-6.921-30.060-6.921L-30.060-7.210Q-30.060-7.436-30.175-7.643Q-30.291-7.850-30.488-7.969Q-30.685-8.088-30.916-8.088Q-31.342-8.088-31.627-7.983Q-31.556-7.956-31.509-7.901Q-31.463-7.846-31.437-7.776Q-31.412-7.706-31.412-7.631Q-31.412-7.526-31.463-7.434Q-31.513-7.342-31.605-7.292Q-31.697-7.241-31.802-7.241Q-31.908-7.241-32-7.292Q-32.092-7.342-32.142-7.434Q-32.193-7.526-32.193-7.631Q-32.193-8.049-31.804-8.196Q-31.416-8.342-30.916-8.342Q-30.584-8.342-30.230-8.212Q-29.877-8.081-29.648-7.827Q-29.420-7.573-29.420-7.225L-29.420-5.424Q-29.420-5.292-29.347-5.182Q-29.275-5.073-29.146-5.073Q-29.021-5.073-28.953-5.178Q-28.884-5.284-28.884-5.424L-28.884-5.936L-28.603-5.936L-28.603-5.424Q-28.603-5.221-28.720-5.063Q-28.838-4.905-29.019-4.821Q-29.201-4.737-29.404-4.737Q-29.634-4.737-29.787-4.909Q-29.939-5.081-29.970-5.311Q-30.131-5.030-30.439-4.864Q-30.748-4.698-31.099-4.698Q-31.611-4.698-32.035-4.921Q-32.459-5.143-32.459-5.608M-31.771-5.608Q-31.771-5.323-31.545-5.137Q-31.318-4.952-31.025-4.952Q-30.779-4.952-30.554-5.069Q-30.330-5.186-30.195-5.389Q-30.060-5.592-30.060-5.846L-30.060-6.678Q-30.326-6.678-30.611-6.624Q-30.896-6.569-31.168-6.440Q-31.439-6.311-31.605-6.104Q-31.771-5.897-31.771-5.608M-27.685-5.737L-27.685-7.928L-28.388-7.928L-28.388-8.182Q-28.033-8.182-27.791-8.415Q-27.549-8.647-27.437-8.995Q-27.326-9.342-27.326-9.698L-27.045-9.698L-27.045-8.225L-25.869-8.225L-25.869-7.928L-27.045-7.928L-27.045-5.753Q-27.045-5.432-26.925-5.204Q-26.806-4.975-26.525-4.975Q-26.345-4.975-26.228-5.098Q-26.111-5.221-26.058-5.401Q-26.006-5.581-26.006-5.753L-26.006-6.225L-25.724-6.225L-25.724-5.737Q-25.724-5.483-25.830-5.243Q-25.935-5.003-26.133-4.850Q-26.330-4.698-26.588-4.698Q-26.904-4.698-27.156-4.821Q-27.408-4.944-27.547-5.178Q-27.685-5.413-27.685-5.737",[1545],[1533,5262,5263],{"transform":5232},[1541,5264],{"d":5265,"fill":1535,"stroke":1535,"className":5266,"style":1546},"M-19.276-5.753L-24.589-5.753Q-24.667-5.760-24.716-5.809Q-24.764-5.858-24.764-5.936Q-24.764-6.006-24.717-6.057Q-24.671-6.108-24.589-6.120L-19.276-6.120Q-19.202-6.108-19.155-6.057Q-19.108-6.006-19.108-5.936Q-19.108-5.858-19.157-5.809Q-19.206-5.760-19.276-5.753M-19.276-7.440L-24.589-7.440Q-24.667-7.448-24.716-7.497Q-24.764-7.546-24.764-7.624Q-24.764-7.694-24.717-7.745Q-24.671-7.796-24.589-7.807L-19.276-7.807Q-19.202-7.796-19.155-7.745Q-19.108-7.694-19.108-7.624Q-19.108-7.546-19.157-7.497Q-19.206-7.448-19.276-7.440",[1545],[1533,5268,5269],{"transform":5232},[1541,5270],{"d":5271,"fill":1535,"stroke":1535,"className":5272,"style":1546},"M-16.505-4.608Q-17.208-4.608-17.608-5.008Q-18.009-5.409-18.153-6.018Q-18.298-6.628-18.298-7.327Q-18.298-7.850-18.228-8.313Q-18.157-8.776-17.964-9.188Q-17.771-9.600-17.413-9.848Q-17.056-10.096-16.505-10.096Q-15.954-10.096-15.597-9.848Q-15.239-9.600-15.048-9.190Q-14.856-8.780-14.786-8.311Q-14.716-7.842-14.716-7.327Q-14.716-6.628-14.858-6.020Q-15.001-5.413-15.401-5.010Q-15.802-4.608-16.505-4.608M-16.505-4.866Q-16.032-4.866-15.800-5.301Q-15.567-5.737-15.513-6.276Q-15.458-6.815-15.458-7.456Q-15.458-8.452-15.642-9.145Q-15.825-9.838-16.505-9.838Q-16.872-9.838-17.093-9.600Q-17.314-9.362-17.409-9.005Q-17.505-8.647-17.530-8.276Q-17.556-7.905-17.556-7.456Q-17.556-6.815-17.501-6.276Q-17.446-5.737-17.214-5.301Q-16.981-4.866-16.505-4.866",[1545],[1533,5274,5275],{"fill":1550,"stroke":1550},[1533,5276,5277,5283,5288,5294,5299,5304,5309],{"fill":1550,"stroke":1557,"fontSize":2536},[1533,5278,5280],{"transform":5279},"translate(50.947 -58.605)",[1541,5281],{"d":5235,"fill":1550,"stroke":1550,"className":5282,"style":1546},[1545],[1533,5284,5285],{"transform":5279},[1541,5286],{"d":5241,"fill":1550,"stroke":1550,"className":5287,"style":1546},[1545],[1533,5289,5290],{"transform":5279},[1541,5291],{"d":5292,"fill":1550,"stroke":1550,"className":5293,"style":1546},"M-44.519-4.999Q-44.519-5.424-44.435-5.874Q-44.351-6.323-44.195-6.741Q-44.038-7.159-43.824-7.546Q-43.609-7.932-43.335-8.288L-42.609-9.241L-43.519-9.241Q-45.015-9.241-45.054-9.202Q-45.124-9.120-45.171-8.930Q-45.218-8.741-45.261-8.463L-45.542-8.463L-45.273-10.182L-44.992-10.182L-44.992-10.159Q-44.992-10.014-44.474-9.971Q-43.956-9.928-43.464-9.928L-41.894-9.928L-41.894-9.737Q-41.902-9.698-41.917-9.671L-43.093-8.135Q-43.394-7.717-43.533-7.210Q-43.671-6.702-43.703-6.208Q-43.734-5.713-43.734-4.999Q-43.734-4.893-43.785-4.801Q-43.835-4.710-43.927-4.659Q-44.019-4.608-44.128-4.608Q-44.234-4.608-44.326-4.659Q-44.417-4.710-44.468-4.801Q-44.519-4.893-44.519-4.999",[1545],[1533,5295,5296],{"transform":5279},[1541,5297],{"d":5253,"fill":1550,"stroke":1550,"className":5298,"style":1546},[1545],[1533,5300,5301],{"transform":5279},[1541,5302],{"d":5259,"fill":1550,"stroke":1550,"className":5303,"style":1546},[1545],[1533,5305,5306],{"transform":5279},[1541,5307],{"d":5265,"fill":1550,"stroke":1550,"className":5308,"style":1546},[1545],[1533,5310,5311],{"transform":5279},[1541,5312],{"d":5313,"fill":1550,"stroke":1550,"className":5314,"style":1546},"M-15.032-4.776L-17.825-4.776L-17.825-5.073Q-16.763-5.073-16.763-5.335L-16.763-9.503Q-17.192-9.288-17.872-9.288L-17.872-9.585Q-16.853-9.585-16.337-10.096L-16.192-10.096Q-16.118-10.077-16.099-9.999L-16.099-5.335Q-16.099-5.073-15.032-5.073",[1545],[1533,5316,5317,5323,5328,5334,5339,5344,5349],{"stroke":1557,"fontSize":2536},[1533,5318,5320],{"transform":5319},"translate(100.526 -46.655)",[1541,5321],{"d":5235,"fill":1535,"stroke":1535,"className":5322,"style":1546},[1545],[1533,5324,5325],{"transform":5319},[1541,5326],{"d":5241,"fill":1535,"stroke":1535,"className":5327,"style":1546},[1545],[1533,5329,5330],{"transform":5319},[1541,5331],{"d":5332,"fill":1535,"stroke":1535,"className":5333,"style":1546},"M-45.023-5.120Q-44.792-4.881-44.245-4.881Q-43.992-4.881-43.769-5.005Q-43.546-5.128-43.376-5.344Q-43.206-5.561-43.113-5.792Q-42.988-6.104-42.949-6.444Q-42.910-6.784-42.910-7.233Q-43.078-6.901-43.361-6.706Q-43.644-6.510-43.984-6.510Q-44.347-6.510-44.660-6.655Q-44.972-6.799-45.195-7.051Q-45.417-7.303-45.540-7.630Q-45.663-7.956-45.663-8.311Q-45.663-8.807-45.421-9.217Q-45.179-9.628-44.761-9.862Q-44.343-10.096-43.847-10.096Q-42.890-10.096-42.509-9.266Q-42.128-8.436-42.128-7.362Q-42.128-6.729-42.378-6.085Q-42.628-5.440-43.111-5.024Q-43.593-4.608-44.245-4.608Q-44.749-4.608-45.099-4.825Q-45.449-5.042-45.449-5.510Q-45.449-5.678-45.335-5.792Q-45.222-5.905-45.054-5.905Q-44.949-5.905-44.857-5.854Q-44.765-5.803-44.714-5.712Q-44.663-5.620-44.663-5.510Q-44.663-5.362-44.765-5.241Q-44.867-5.120-45.023-5.120M-43.945-6.768Q-43.613-6.768-43.380-6.979Q-43.148-7.190-43.036-7.512Q-42.925-7.835-42.925-8.151Q-42.925-8.249-42.937-8.303Q-42.933-8.311-42.929-8.323Q-42.925-8.335-42.925-8.342Q-42.925-8.585-42.968-8.848Q-43.011-9.112-43.113-9.340Q-43.214-9.569-43.396-9.712Q-43.578-9.854-43.847-9.854Q-44.281-9.854-44.507-9.633Q-44.734-9.413-44.806-9.081Q-44.878-8.749-44.878-8.311Q-44.878-7.866-44.822-7.544Q-44.765-7.221-44.560-6.995Q-44.355-6.768-43.945-6.768",[1545],[1533,5335,5336],{"transform":5319},[1541,5337],{"d":5253,"fill":1535,"stroke":1535,"className":5338,"style":1546},[1545],[1533,5340,5341],{"transform":5319},[1541,5342],{"d":5259,"fill":1535,"stroke":1535,"className":5343,"style":1546},[1545],[1533,5345,5346],{"transform":5319},[1541,5347],{"d":5265,"fill":1535,"stroke":1535,"className":5348,"style":1546},[1545],[1533,5350,5351],{"transform":5319},[1541,5352],{"d":5313,"fill":1535,"stroke":1535,"className":5353,"style":1546},[1545],[1533,5355,5357],{"fill":5356,"stroke":5356},"red",[1533,5358,5359,5366,5372,5378,5384,5390],{"fill":5356,"stroke":1557,"fontSize":2536},[1533,5360,5362],{"transform":5361},"translate(34.527 -4.05)",[1541,5363],{"d":5364,"fill":5356,"stroke":5356,"className":5365,"style":1546},"M-55.768-4.807L-56.838-7.663Q-56.904-7.842-57.035-7.885Q-57.166-7.928-57.424-7.928L-57.424-8.225L-55.744-8.225L-55.744-7.928Q-56.194-7.928-56.194-7.729Q-56.190-7.713-56.188-7.696Q-56.186-7.678-56.186-7.663L-55.393-5.569L-54.682-7.479Q-54.717-7.573-54.717-7.618Q-54.717-7.663-54.752-7.663Q-54.819-7.842-54.949-7.885Q-55.080-7.928-55.334-7.928L-55.334-8.225L-53.744-8.225L-53.744-7.928Q-54.194-7.928-54.194-7.729Q-54.190-7.710-54.188-7.692Q-54.186-7.674-54.186-7.663L-53.354-5.448L-52.600-7.448Q-52.576-7.506-52.576-7.577Q-52.576-7.737-52.713-7.833Q-52.850-7.928-53.018-7.928L-53.018-8.225L-51.631-8.225L-51.631-7.928Q-51.865-7.928-52.043-7.801Q-52.221-7.674-52.303-7.448L-53.287-4.807Q-53.342-4.698-53.455-4.698L-53.514-4.698Q-53.627-4.698-53.670-4.807L-54.529-7.081L-55.385-4.807Q-55.424-4.698-55.545-4.698L-55.600-4.698Q-55.713-4.698-55.768-4.807",[1545],[1533,5367,5368],{"transform":5361},[1541,5369],{"d":5370,"fill":5356,"stroke":5356,"className":5371,"style":1546},"M-51.451-6.471Q-51.451-6.975-51.195-7.407Q-50.939-7.838-50.503-8.090Q-50.068-8.342-49.568-8.342Q-49.181-8.342-48.839-8.198Q-48.498-8.053-48.236-7.792Q-47.974-7.530-47.832-7.194Q-47.689-6.858-47.689-6.471Q-47.689-5.979-47.953-5.569Q-48.216-5.159-48.646-4.928Q-49.076-4.698-49.568-4.698Q-50.060-4.698-50.494-4.930Q-50.927-5.163-51.189-5.571Q-51.451-5.979-51.451-6.471M-49.568-4.975Q-49.111-4.975-48.859-5.198Q-48.607-5.421-48.519-5.772Q-48.431-6.124-48.431-6.569Q-48.431-6.999-48.525-7.337Q-48.619-7.674-48.873-7.881Q-49.127-8.088-49.568-8.088Q-50.216-8.088-50.460-7.672Q-50.705-7.256-50.705-6.569Q-50.705-6.124-50.617-5.772Q-50.529-5.421-50.277-5.198Q-50.025-4.975-49.568-4.975M-45.197-4.776L-47.177-4.776L-47.177-5.073Q-46.908-5.073-46.740-5.118Q-46.572-5.163-46.572-5.335L-46.572-7.471Q-46.572-7.686-46.634-7.782Q-46.697-7.878-46.814-7.899Q-46.931-7.921-47.177-7.921L-47.177-8.217L-46.009-8.303L-46.009-7.518Q-45.931-7.729-45.779-7.915Q-45.627-8.100-45.427-8.202Q-45.228-8.303-45.002-8.303Q-44.755-8.303-44.564-8.159Q-44.373-8.014-44.373-7.784Q-44.373-7.628-44.478-7.518Q-44.584-7.409-44.740-7.409Q-44.896-7.409-45.005-7.518Q-45.115-7.628-45.115-7.784Q-45.115-7.944-45.009-8.049Q-45.334-8.049-45.548-7.821Q-45.763-7.592-45.859-7.253Q-45.955-6.913-45.955-6.608L-45.955-5.335Q-45.955-5.167-45.728-5.120Q-45.502-5.073-45.197-5.073L-45.197-4.776M-43.849-4.784L-43.849-6.006Q-43.849-6.034-43.818-6.065Q-43.787-6.096-43.763-6.096L-43.658-6.096Q-43.587-6.096-43.572-6.034Q-43.509-5.713-43.371-5.473Q-43.232-5.233-43-5.092Q-42.767-4.952-42.459-4.952Q-42.220-4.952-42.011-5.012Q-41.802-5.073-41.666-5.221Q-41.529-5.370-41.529-5.616Q-41.529-5.870-41.740-6.036Q-41.951-6.202-42.220-6.256L-42.841-6.370Q-43.248-6.448-43.548-6.704Q-43.849-6.960-43.849-7.335Q-43.849-7.702-43.648-7.924Q-43.447-8.147-43.123-8.245Q-42.798-8.342-42.459-8.342Q-41.994-8.342-41.697-8.135L-41.474-8.319Q-41.451-8.342-41.419-8.342L-41.369-8.342Q-41.337-8.342-41.310-8.315Q-41.283-8.288-41.283-8.256L-41.283-7.272Q-41.283-7.241-41.308-7.212Q-41.334-7.182-41.369-7.182L-41.474-7.182Q-41.509-7.182-41.537-7.210Q-41.564-7.237-41.564-7.272Q-41.564-7.671-41.816-7.891Q-42.068-8.112-42.466-8.112Q-42.822-8.112-43.105-7.989Q-43.388-7.866-43.388-7.561Q-43.388-7.342-43.187-7.210Q-42.986-7.077-42.740-7.034L-42.115-6.921Q-41.685-6.831-41.377-6.534Q-41.068-6.237-41.068-5.823Q-41.068-5.253-41.466-4.975Q-41.865-4.698-42.459-4.698Q-43.009-4.698-43.361-5.034L-43.658-4.721Q-43.681-4.698-43.716-4.698L-43.763-4.698Q-43.787-4.698-43.818-4.729Q-43.849-4.760-43.849-4.784M-39.916-5.737L-39.916-7.928L-40.619-7.928L-40.619-8.182Q-40.263-8.182-40.021-8.415Q-39.779-8.647-39.668-8.995Q-39.556-9.342-39.556-9.698L-39.275-9.698L-39.275-8.225L-38.099-8.225L-38.099-7.928L-39.275-7.928L-39.275-5.753Q-39.275-5.432-39.156-5.204Q-39.037-4.975-38.755-4.975Q-38.576-4.975-38.459-5.098Q-38.341-5.221-38.289-5.401Q-38.236-5.581-38.236-5.753L-38.236-6.225L-37.955-6.225L-37.955-5.737Q-37.955-5.483-38.060-5.243Q-38.166-5.003-38.363-4.850Q-38.560-4.698-38.818-4.698Q-39.134-4.698-39.386-4.821Q-39.638-4.944-39.777-5.178Q-39.916-5.413-39.916-5.737",[1545],[1533,5373,5374],{"transform":5361},[1541,5375],{"d":5376,"fill":5356,"stroke":5356,"className":5377,"style":1546},"M-32.483-4.776L-34.315-4.776L-34.315-5.073Q-34.041-5.073-33.873-5.120Q-33.705-5.167-33.705-5.335L-33.705-9.495Q-33.705-9.710-33.768-9.805Q-33.830-9.901-33.949-9.922Q-34.069-9.944-34.315-9.944L-34.315-10.241L-33.092-10.327L-33.092-5.335Q-33.092-5.167-32.924-5.120Q-32.756-5.073-32.483-5.073L-32.483-4.776M-31.940-5.608Q-31.940-6.092-31.537-6.387Q-31.135-6.682-30.584-6.801Q-30.033-6.921-29.541-6.921L-29.541-7.210Q-29.541-7.436-29.656-7.643Q-29.772-7.850-29.969-7.969Q-30.166-8.088-30.397-8.088Q-30.822-8.088-31.108-7.983Q-31.037-7.956-30.990-7.901Q-30.944-7.846-30.918-7.776Q-30.893-7.706-30.893-7.631Q-30.893-7.526-30.944-7.434Q-30.994-7.342-31.086-7.292Q-31.178-7.241-31.283-7.241Q-31.389-7.241-31.481-7.292Q-31.572-7.342-31.623-7.434Q-31.674-7.526-31.674-7.631Q-31.674-8.049-31.285-8.196Q-30.897-8.342-30.397-8.342Q-30.065-8.342-29.711-8.212Q-29.358-8.081-29.129-7.827Q-28.901-7.573-28.901-7.225L-28.901-5.424Q-28.901-5.292-28.828-5.182Q-28.756-5.073-28.627-5.073Q-28.502-5.073-28.434-5.178Q-28.365-5.284-28.365-5.424L-28.365-5.936L-28.084-5.936L-28.084-5.424Q-28.084-5.221-28.201-5.063Q-28.319-4.905-28.500-4.821Q-28.682-4.737-28.885-4.737Q-29.115-4.737-29.268-4.909Q-29.420-5.081-29.451-5.311Q-29.612-5.030-29.920-4.864Q-30.229-4.698-30.580-4.698Q-31.092-4.698-31.516-4.921Q-31.940-5.143-31.940-5.608M-31.252-5.608Q-31.252-5.323-31.026-5.137Q-30.799-4.952-30.506-4.952Q-30.260-4.952-30.035-5.069Q-29.811-5.186-29.676-5.389Q-29.541-5.592-29.541-5.846L-29.541-6.678Q-29.807-6.678-30.092-6.624Q-30.377-6.569-30.649-6.440Q-30.920-6.311-31.086-6.104Q-31.252-5.897-31.252-5.608M-27.166-5.737L-27.166-7.928L-27.869-7.928L-27.869-8.182Q-27.514-8.182-27.272-8.415Q-27.030-8.647-26.918-8.995Q-26.807-9.342-26.807-9.698L-26.526-9.698L-26.526-8.225L-25.350-8.225L-25.350-7.928L-26.526-7.928L-26.526-5.753Q-26.526-5.432-26.406-5.204Q-26.287-4.975-26.006-4.975Q-25.826-4.975-25.709-5.098Q-25.592-5.221-25.539-5.401Q-25.487-5.581-25.487-5.753L-25.487-6.225L-25.205-6.225L-25.205-5.737Q-25.205-5.483-25.311-5.243Q-25.416-5.003-25.614-4.850Q-25.811-4.698-26.069-4.698Q-26.385-4.698-26.637-4.821Q-26.889-4.944-27.028-5.178Q-27.166-5.413-27.166-5.737M-24.487-6.530Q-24.487-7.010-24.254-7.426Q-24.022-7.842-23.612-8.092Q-23.201-8.342-22.725-8.342Q-21.994-8.342-21.596-7.901Q-21.197-7.460-21.197-6.729Q-21.197-6.624-21.291-6.600L-23.740-6.600L-23.740-6.530Q-23.740-6.120-23.619-5.764Q-23.498-5.409-23.227-5.192Q-22.955-4.975-22.526-4.975Q-22.162-4.975-21.865-5.204Q-21.569-5.432-21.467-5.784Q-21.459-5.831-21.373-5.846L-21.291-5.846Q-21.197-5.819-21.197-5.737Q-21.197-5.729-21.205-5.698Q-21.268-5.471-21.406-5.288Q-21.545-5.104-21.737-4.971Q-21.928-4.838-22.147-4.768Q-22.365-4.698-22.604-4.698Q-22.975-4.698-23.313-4.835Q-23.651-4.971-23.918-5.223Q-24.186-5.475-24.336-5.815Q-24.487-6.155-24.487-6.530M-23.733-6.838L-21.772-6.838Q-21.772-7.143-21.873-7.434Q-21.975-7.725-22.192-7.907Q-22.408-8.088-22.725-8.088Q-23.026-8.088-23.256-7.901Q-23.487-7.713-23.610-7.422Q-23.733-7.131-23.733-6.838M-18.780-4.776L-20.635-4.776L-20.635-5.073Q-20.362-5.073-20.194-5.120Q-20.026-5.167-20.026-5.335L-20.026-7.471Q-20.026-7.686-20.088-7.782Q-20.151-7.878-20.270-7.899Q-20.389-7.921-20.635-7.921L-20.635-8.217L-19.444-8.303L-19.444-7.569Q-19.330-7.784-19.137-7.952Q-18.944-8.120-18.705-8.212Q-18.467-8.303-18.213-8.303Q-17.045-8.303-17.045-7.225L-17.045-5.335Q-17.045-5.167-16.875-5.120Q-16.705-5.073-16.436-5.073L-16.436-4.776L-18.291-4.776L-18.291-5.073Q-18.018-5.073-17.850-5.120Q-17.682-5.167-17.682-5.335L-17.682-7.210Q-17.682-7.592-17.803-7.821Q-17.924-8.049-18.276-8.049Q-18.588-8.049-18.842-7.887Q-19.096-7.725-19.242-7.456Q-19.389-7.186-19.389-6.889L-19.389-5.335Q-19.389-5.167-19.219-5.120Q-19.049-5.073-18.780-5.073L-18.780-4.776M-15.990-6.530Q-15.990-7.010-15.758-7.426Q-15.526-7.842-15.115-8.092Q-14.705-8.342-14.229-8.342Q-13.498-8.342-13.100-7.901Q-12.701-7.460-12.701-6.729Q-12.701-6.624-12.795-6.600L-15.244-6.600L-15.244-6.530Q-15.244-6.120-15.123-5.764Q-15.002-5.409-14.731-5.192Q-14.459-4.975-14.030-4.975Q-13.666-4.975-13.369-5.204Q-13.072-5.432-12.971-5.784Q-12.963-5.831-12.877-5.846L-12.795-5.846Q-12.701-5.819-12.701-5.737Q-12.701-5.729-12.709-5.698Q-12.772-5.471-12.910-5.288Q-13.049-5.104-13.240-4.971Q-13.432-4.838-13.651-4.768Q-13.869-4.698-14.108-4.698Q-14.479-4.698-14.817-4.835Q-15.155-4.971-15.422-5.223Q-15.690-5.475-15.840-5.815Q-15.990-6.155-15.990-6.530M-15.237-6.838L-13.276-6.838Q-13.276-7.143-13.377-7.434Q-13.479-7.725-13.696-7.907Q-13.912-8.088-14.229-8.088Q-14.530-8.088-14.760-7.901Q-14.990-7.713-15.114-7.422Q-15.237-7.131-15.237-6.838M-12.170-4.784L-12.170-6.006Q-12.170-6.034-12.139-6.065Q-12.108-6.096-12.084-6.096L-11.979-6.096Q-11.908-6.096-11.893-6.034Q-11.830-5.713-11.692-5.473Q-11.553-5.233-11.321-5.092Q-11.088-4.952-10.780-4.952Q-10.541-4.952-10.332-5.012Q-10.123-5.073-9.987-5.221Q-9.850-5.370-9.850-5.616Q-9.850-5.870-10.061-6.036Q-10.272-6.202-10.541-6.256L-11.162-6.370Q-11.569-6.448-11.869-6.704Q-12.170-6.960-12.170-7.335Q-12.170-7.702-11.969-7.924Q-11.768-8.147-11.444-8.245Q-11.119-8.342-10.780-8.342Q-10.315-8.342-10.018-8.135L-9.795-8.319Q-9.772-8.342-9.740-8.342L-9.690-8.342Q-9.658-8.342-9.631-8.315Q-9.604-8.288-9.604-8.256L-9.604-7.272Q-9.604-7.241-9.629-7.212Q-9.655-7.182-9.690-7.182L-9.795-7.182Q-9.830-7.182-9.858-7.210Q-9.885-7.237-9.885-7.272Q-9.885-7.671-10.137-7.891Q-10.389-8.112-10.787-8.112Q-11.143-8.112-11.426-7.989Q-11.709-7.866-11.709-7.561Q-11.709-7.342-11.508-7.210Q-11.307-7.077-11.061-7.034L-10.436-6.921Q-10.006-6.831-9.697-6.534Q-9.389-6.237-9.389-5.823Q-9.389-5.253-9.787-4.975Q-10.186-4.698-10.780-4.698Q-11.330-4.698-11.682-5.034L-11.979-4.721Q-12.002-4.698-12.037-4.698L-12.084-4.698Q-12.108-4.698-12.139-4.729Q-12.170-4.760-12.170-4.784M-8.819-4.784L-8.819-6.006Q-8.819-6.034-8.787-6.065Q-8.756-6.096-8.733-6.096L-8.627-6.096Q-8.557-6.096-8.541-6.034Q-8.479-5.713-8.340-5.473Q-8.201-5.233-7.969-5.092Q-7.737-4.952-7.428-4.952Q-7.190-4.952-6.981-5.012Q-6.772-5.073-6.635-5.221Q-6.498-5.370-6.498-5.616Q-6.498-5.870-6.709-6.036Q-6.920-6.202-7.190-6.256L-7.811-6.370Q-8.217-6.448-8.518-6.704Q-8.819-6.960-8.819-7.335Q-8.819-7.702-8.617-7.924Q-8.416-8.147-8.092-8.245Q-7.768-8.342-7.428-8.342Q-6.963-8.342-6.666-8.135L-6.444-8.319Q-6.420-8.342-6.389-8.342L-6.338-8.342Q-6.307-8.342-6.280-8.315Q-6.252-8.288-6.252-8.256L-6.252-7.272Q-6.252-7.241-6.278-7.212Q-6.303-7.182-6.338-7.182L-6.444-7.182Q-6.479-7.182-6.506-7.210Q-6.533-7.237-6.533-7.272Q-6.533-7.671-6.785-7.891Q-7.037-8.112-7.436-8.112Q-7.791-8.112-8.074-7.989Q-8.358-7.866-8.358-7.561Q-8.358-7.342-8.156-7.210Q-7.955-7.077-7.709-7.034L-7.084-6.921Q-6.655-6.831-6.346-6.534Q-6.037-6.237-6.037-5.823Q-6.037-5.253-6.436-4.975Q-6.834-4.698-7.428-4.698Q-7.979-4.698-8.330-5.034L-8.627-4.721Q-8.651-4.698-8.686-4.698L-8.733-4.698Q-8.756-4.698-8.787-4.729Q-8.819-4.760-8.819-4.784",[1545],[1533,5379,5380],{"transform":5361},[1541,5381],{"d":5382,"fill":5356,"stroke":5356,"className":5383,"style":1546},"M1.747-4.776L-2.421-4.776Q-2.518-4.807-2.518-4.905L-2.495-5.006Q-2.460-5.061-2.397-5.073Q-1.956-5.073-1.797-5.112Q-1.639-5.151-1.596-5.378L-0.518-9.698Q-0.495-9.768-0.495-9.831Q-0.495-9.893-0.557-9.913Q-0.702-9.944-1.124-9.944Q-1.229-9.971-1.229-10.073L-1.198-10.174Q-1.167-10.233-1.108-10.241L1.251-10.241Q1.290-10.241 1.318-10.204Q1.345-10.167 1.345-10.120L1.322-10.014Q1.290-9.956 1.228-9.944Q0.642-9.944 0.443-9.905Q0.275-9.854 0.220-9.639L-0.862-5.319Q-0.893-5.194-0.893-5.120Q-0.893-5.073-0.643-5.073L0.177-5.073Q0.638-5.073 0.974-5.188Q1.310-5.303 1.544-5.526Q1.779-5.749 1.945-6.057Q2.111-6.366 2.275-6.815Q2.322-6.874 2.372-6.889L2.451-6.889Q2.548-6.862 2.548-6.776Q2.548-6.768 2.540-6.729L1.841-4.846Q1.802-4.784 1.747-4.776",[1545],[1533,5385,5386],{"transform":5361},[1541,5387],{"d":5388,"fill":5356,"stroke":5356,"className":5389,"style":1546},"M11.202-5.753L5.889-5.753Q5.811-5.760 5.762-5.809Q5.714-5.858 5.714-5.936Q5.714-6.006 5.761-6.057Q5.807-6.108 5.889-6.120L11.202-6.120Q11.276-6.108 11.323-6.057Q11.370-6.006 11.370-5.936Q11.370-5.858 11.321-5.809Q11.272-5.760 11.202-5.753M11.202-7.440L5.889-7.440Q5.811-7.448 5.762-7.497Q5.714-7.546 5.714-7.624Q5.714-7.694 5.761-7.745Q5.807-7.796 5.889-7.807L11.202-7.807Q11.276-7.796 11.323-7.745Q11.370-7.694 11.370-7.624Q11.370-7.546 11.321-7.497Q11.272-7.448 11.202-7.440",[1545],[1533,5391,5392],{"transform":5361},[1541,5393],{"d":5394,"fill":5356,"stroke":5356,"className":5395,"style":1546},"M17.807-4.776L15.014-4.776L15.014-5.073Q16.076-5.073 16.076-5.335L16.076-9.503Q15.647-9.288 14.967-9.288L14.967-9.585Q15.986-9.585 16.502-10.096L16.647-10.096Q16.721-10.077 16.740-9.999L16.740-5.335Q16.740-5.073 17.807-5.073",[1545],[1748,5397,5399,5400,5439,5440,5614,5615,5743,5744,726],{"className":5398},[1751],"Earliest-deadline-first on one machine. Jobs ",[424,5401,5403],{"className":5402},[427],[424,5404,5406],{"className":5405,"ariaHidden":432},[431],[424,5407,5409,5413,5417,5420,5423,5428,5431,5434],{"className":5408},[436],[424,5410],{"className":5411,"style":5412},[440],"height:0.8778em;vertical-align:-0.1944em;",[424,5414,5416],{"className":5415},[445,446],"A",[424,5418,546],{"className":5419},[545],[424,5421],{"className":5422,"style":551},[550],[424,5424,5427],{"className":5425,"style":5426},[445,446],"margin-right:0.0502em;","B",[424,5429,546],{"className":5430},[545],[424,5432],{"className":5433,"style":551},[550],[424,5435,5438],{"className":5436,"style":5437},[445,446],"margin-right:0.0715em;","C"," run back-to-back in deadline order (",[424,5441,5443],{"className":5442},[427],[424,5444,5446],{"className":5445,"ariaHidden":432},[431],[424,5447,5449,5452,5493,5499,5503,5506,5509,5549,5555,5559,5562,5565,5605,5611],{"className":5448},[436],[424,5450],{"className":5451,"style":634},[440],[424,5453,5455,5458],{"className":5454},[445],[424,5456,1907],{"className":5457},[445,446],[424,5459,5461],{"className":5460},[495],[424,5462,5464,5485],{"className":5463},[499,500],[424,5465,5467,5482],{"className":5466},[504],[424,5468,5471],{"className":5469,"style":5470},[508],"height:0.3283em;",[424,5472,5473,5476],{"style":512},[424,5474],{"className":5475,"style":517},[516],[424,5477,5479],{"className":5478},[521,522,523,524],[424,5480,5416],{"className":5481},[445,446,524],[424,5483,532],{"className":5484},[531],[424,5486,5488],{"className":5487},[504],[424,5489,5491],{"className":5490,"style":539},[508],[424,5492],{},[424,5494,5496],{"className":5495},[445],[424,5497,1914],{"className":5498},[1146],[424,5500,5502],{"className":5501},[445],"4",[424,5504,546],{"className":5505},[545],[424,5507],{"className":5508,"style":551},[550],[424,5510,5512,5515],{"className":5511},[445],[424,5513,1907],{"className":5514},[445,446],[424,5516,5518],{"className":5517},[495],[424,5519,5521,5541],{"className":5520},[499,500],[424,5522,5524,5538],{"className":5523},[504],[424,5525,5527],{"className":5526,"style":5470},[508],[424,5528,5529,5532],{"style":512},[424,5530],{"className":5531,"style":517},[516],[424,5533,5535],{"className":5534},[521,522,523,524],[424,5536,5427],{"className":5537,"style":5426},[445,446,524],[424,5539,532],{"className":5540},[531],[424,5542,5544],{"className":5543},[504],[424,5545,5547],{"className":5546,"style":539},[508],[424,5548],{},[424,5550,5552],{"className":5551},[445],[424,5553,1914],{"className":5554},[1146],[424,5556,5558],{"className":5557},[445],"6",[424,5560,546],{"className":5561},[545],[424,5563],{"className":5564,"style":551},[550],[424,5566,5568,5571],{"className":5567},[445],[424,5569,1907],{"className":5570},[445,446],[424,5572,5574],{"className":5573},[495],[424,5575,5577,5597],{"className":5576},[499,500],[424,5578,5580,5594],{"className":5579},[504],[424,5581,5583],{"className":5582,"style":5470},[508],[424,5584,5585,5588],{"style":512},[424,5586],{"className":5587,"style":517},[516],[424,5589,5591],{"className":5590},[521,522,523,524],[424,5592,5438],{"className":5593,"style":5437},[445,446,524],[424,5595,532],{"className":5596},[531],[424,5598,5600],{"className":5599},[504],[424,5601,5603],{"className":5602,"style":539},[508],[424,5604],{},[424,5606,5608],{"className":5607},[445],[424,5609,1914],{"className":5610},[1146],[424,5612,2536],{"className":5613},[445],"); each lateness is ",[424,5616,5618],{"className":5617},[427],[424,5619,5621,5694],{"className":5620,"ariaHidden":432},[431],[424,5622,5624,5627,5633,5636,5639,5642,5645,5685,5688,5691],{"className":5623},[436],[424,5625],{"className":5626,"style":3619},[440],[424,5628,5630],{"className":5629},[710],[424,5631,1933],{"className":5632},[445,714],[424,5634,700],{"className":5635},[483],[424,5637,3632],{"className":5638},[445],[424,5640,546],{"className":5641},[545],[424,5643],{"className":5644,"style":551},[550],[424,5646,5648,5651],{"className":5647},[445],[424,5649,559],{"className":5650,"style":558},[445,446],[424,5652,5654],{"className":5653},[495],[424,5655,5657,5677],{"className":5656},[499,500],[424,5658,5660,5674],{"className":5659},[504],[424,5661,5663],{"className":5662,"style":509},[508],[424,5664,5665,5668],{"style":574},[424,5666],{"className":5667,"style":517},[516],[424,5669,5671],{"className":5670},[521,522,523,524],[424,5672,914],{"className":5673,"style":913},[445,446,524],[424,5675,532],{"className":5676},[531],[424,5678,5680],{"className":5679},[504],[424,5681,5683],{"className":5682,"style":1196},[508],[424,5684],{},[424,5686],{"className":5687,"style":3682},[550],[424,5689,3686],{"className":5690},[841],[424,5692],{"className":5693,"style":3682},[550],[424,5695,5697,5700,5740],{"className":5696},[436],[424,5698],{"className":5699,"style":3619},[440],[424,5701,5703,5706],{"className":5702},[445],[424,5704,1907],{"className":5705},[445,446],[424,5707,5709],{"className":5708},[495],[424,5710,5712,5732],{"className":5711},[499,500],[424,5713,5715,5729],{"className":5714},[504],[424,5716,5718],{"className":5717,"style":509},[508],[424,5719,5720,5723],{"style":512},[424,5721],{"className":5722,"style":517},[516],[424,5724,5726],{"className":5725},[521,522,523,524],[424,5727,914],{"className":5728,"style":913},[445,446,524],[424,5730,532],{"className":5731},[531],[424,5733,5735],{"className":5734},[504],[424,5736,5738],{"className":5737,"style":1196},[508],[424,5739],{},[424,5741,599],{"className":5742},[598],", and the schedule minimizes the worst, here ",[424,5745,5747],{"className":5746},[427],[424,5748,5750,5768],{"className":5749,"ariaHidden":432},[431],[424,5751,5753,5756,5759,5762,5765],{"className":5752},[436],[424,5754],{"className":5755,"style":2583},[440],[424,5757,3758],{"className":5758},[445,446],[424,5760],{"className":5761,"style":1142},[550],[424,5763,1914],{"className":5764},[1146],[424,5766],{"className":5767,"style":1142},[550],[424,5769,5771,5774],{"className":5770},[436],[424,5772],{"className":5773,"style":2302},[440],[424,5775,614],{"className":5776},[445],[416,5778,5780],{"id":5779},"the-trio-and-the-one-decision","The trio, and the one decision",[381,5782,5783,5784,5787,5788,5791,5792,5794],{},"These three — interval ",[385,5785,5786],{},"scheduling",", interval ",[385,5789,5790],{},"partitioning",", and maximum\n",[385,5793,3549],{}," — are the canonical greedy-on-intervals trio. They share a single\nshape: sort the intervals or jobs by one key, then make one pass. Everything\ndistinctive about each lives in the key:",[5796,5797,5798,5817],"table",{},[5799,5800,5801],"thead",{},[5802,5803,5804,5808,5811,5814],"tr",{},[5805,5806,5807],"th",{},"Problem",[5805,5809,5810],{},"Objective",[5805,5812,5813],{},"Sort key",[5805,5815,5816],{},"Optimality proof",[5818,5819,5820,5837,5852],"tbody",{},[5802,5821,5822,5826,5829,5834],{},[5823,5824,5825],"td",{},"Scheduling",[5823,5827,5828],{},"max compatible jobs",[5823,5830,5831,5833],{},[385,5832,405],{}," time",[5823,5835,5836],{},"stays-ahead \u002F exchange",[5802,5838,5839,5842,5845,5849],{},[5823,5840,5841],{},"Partitioning",[5823,5843,5844],{},"min machines",[5823,5846,5847,5833],{},[385,5848,409],{},[5823,5850,5851],{},"depth lower bound = greedy",[5802,5853,5854,5857,5860,5864],{},[5823,5855,5856],{},"Max lateness",[5823,5858,5859],{},"min worst lateness",[5823,5861,5862],{},[385,5863,413],{},[5823,5865,5866],{},"adjacent-swap exchange",[381,5868,5869,5870,5873],{},"The lesson is that for greedy interval problems the design work is almost\nentirely ",[399,5871,5872],{},"choosing the sort key",", and the verification work is a short exchange\nor stays-ahead argument confirming the choice. Get the key right and the rest is\na linear scan.",[416,5875,5877],{"id":5876},"takeaways","Takeaways",[5879,5880,5881,5931,5988,6011],"ul",{},[5882,5883,5884,5887,5888,5891,5892,726],"li",{},[385,5885,5886],{},"Interval scheduling"," maximizes compatible jobs by ",[385,5889,5890],{},"earliest finish first",";\na stays-ahead exchange argument proves optimality, in ",[424,5893,5895],{"className":5894},[427],[424,5896,5898],{"className":5897,"ariaHidden":432},[431],[424,5899,5901,5904,5907,5910,5913,5916,5922,5925,5928],{"className":5900},[436],[424,5902],{"className":5903,"style":479},[440],[424,5905,696],{"className":5906},[445,695],[424,5908,700],{"className":5909},[483],[424,5911,447],{"className":5912},[445,446],[424,5914],{"className":5915,"style":551},[550],[424,5917,5919],{"className":5918},[710],[424,5920,716],{"className":5921,"style":715},[445,714],[424,5923],{"className":5924,"style":551},[550],[424,5926,447],{"className":5927},[445,446],[424,5929,599],{"className":5930},[598],[5882,5932,5933,5936,5937,5940,5941,2651,5944,5959,5960,5987],{},[385,5934,5935],{},"Interval partitioning"," minimizes machines by ",[385,5938,5939],{},"earliest start first"," with a\nmin-heap of free times; the answer equals the ",[385,5942,5943],{},"maximum depth",[424,5945,5947],{"className":5946},[427],[424,5948,5950],{"className":5949,"ariaHidden":432},[431],[424,5951,5953,5956],{"className":5952},[436],[424,5954],{"className":5955,"style":1496},[440],[424,5957,1907],{"className":5958},[445,446],", since depth\nforces ",[424,5961,5963],{"className":5962},[427],[424,5964,5966,5978],{"className":5965,"ariaHidden":432},[431],[424,5967,5969,5972,5975],{"className":5968},[436],[424,5970],{"className":5971,"style":3098},[440],[424,5973,3102],{"className":5974},[1146],[424,5976],{"className":5977,"style":1142},[550],[424,5979,5981,5984],{"className":5980},[436],[424,5982],{"className":5983,"style":1496},[440],[424,5985,1907],{"className":5986},[445,446]," machines and greedy never opens more.",[5882,5989,5990,5992,5993,5995,5996,726],{},[385,5991,3325],{}," on one machine uses ",[385,5994,3930],{},";\nan adjacent-swap exchange argument shows removing inversions never raises ",[424,5997,5999],{"className":5998},[427],[424,6000,6002],{"className":6001,"ariaHidden":432},[431],[424,6003,6005,6008],{"className":6004},[436],[424,6006],{"className":6007,"style":2583},[440],[424,6009,3758],{"className":6010},[445,446],[5882,6012,6013,6014,6017,6018,6021],{},"All three are the same ",[385,6015,6016],{},"sort-then-scan"," skeleton: the entire design decision\nis the ",[385,6019,6020],{},"sort key"," (finish, start, or deadline), and the proof is a short\nexchange argument.",[6023,6024,6027,6032],"section",{"className":6025,"dataFootnotes":376},[6026],"footnotes",[416,6028,6031],{"className":6029,"id":612},[6030],"sr-only","Footnotes",[6033,6034,6035,6056,6068],"ol",{},[5882,6036,6038,6041,6042,2651,6049],{"id":6037},"user-content-fn-clrs-activity",[385,6039,6040],{},"CLRS",", Ch. 16 — Greedy Algorithms (§16.1): activity selection by earliest finish time and the structure of single-machine scheduling. ",[394,6043,6048],{"href":6044,"ariaLabel":6045,"className":6046,"dataFootnoteBackref":376},"#user-content-fnref-clrs-activity","Back to reference 1",[6047],"data-footnote-backref","↩",[394,6050,6048,6054],{"href":6051,"ariaLabel":6052,"className":6053,"dataFootnoteBackref":376},"#user-content-fnref-clrs-activity-2","Back to reference 1-2",[6047],[606,6055,1850],{},[5882,6057,6059,6062,6063],{"id":6058},"user-content-fn-skiena-sched",[385,6060,6061],{},"Skiena",", § — Scheduling: interval partitioning \u002F coloring and the equivalence of minimum machines with maximum overlap depth. ",[394,6064,6048],{"href":6065,"ariaLabel":6066,"className":6067,"dataFootnoteBackref":376},"#user-content-fnref-skiena-sched","Back to reference 2",[6047],[5882,6069,6071,6074,6075],{"id":6070},"user-content-fn-erickson-greedy",[385,6072,6073],{},"Erickson",", Ch. — Greedy Algorithms: greedy scheduling proofs by exchange arguments and the sort-key-is-the-algorithm framing. ",[394,6076,6048],{"href":6077,"ariaLabel":6078,"className":6079,"dataFootnoteBackref":376},"#user-content-fnref-erickson-greedy","Back to reference 3",[6047],[6081,6082,6083],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark-mode .shiki span {color: var(--shiki-dark-mode);background: var(--shiki-dark-mode-bg);font-style: var(--shiki-dark-mode-font-style);font-weight: var(--shiki-dark-mode-font-weight);text-decoration: var(--shiki-dark-mode-text-decoration);}html.dark-mode .shiki span {color: var(--shiki-dark-mode);background: var(--shiki-dark-mode-bg);font-style: var(--shiki-dark-mode-font-style);font-weight: var(--shiki-dark-mode-font-weight);text-decoration: var(--shiki-dark-mode-text-decoration);}",{"title":376,"searchDepth":18,"depth":18,"links":6085},[6086,6087,6088,6089,6090,6091],{"id":418,"depth":18,"text":419},{"id":1830,"depth":18,"text":1831},{"id":3324,"depth":18,"text":3325},{"id":5779,"depth":18,"text":5780},{"id":5876,"depth":18,"text":5877},{"id":612,"depth":18,"text":6031},"The previous lesson introduced the greedy method on its canonical example:\nactivity selection, where we pick a maximum-size set of mutually compatible\nintervals by repeatedly taking the one that finishes earliest. That was a single\nproblem solved by a single sort key. This lesson zooms out to the whole family of\ninterval and scheduling problems that the greedy method\nsolves, and they turn out to be nearly the same algorithm wearing different hats.\nWhat separates them is which key you sort by. Sort by finish time and you\nmaximize how many jobs fit; sort by start time and you minimize how many\nmachines you need; sort by deadline and you minimize how late the worst job\nruns. Choosing the key correctly, and proving that choice optimal, is the entire\nproblem.","md",{"moduleNumber":116,"lessonNumber":18,"order":6095},702,true,[6098,6102,6105,6107,6110],{"title":6099,"slug":6100,"difficulty":6101},"Non-overlapping Intervals","non-overlapping-intervals","Medium",{"title":6103,"slug":6104,"difficulty":6101},"Minimum Number of Arrows to Burst Balloons","minimum-number-of-arrows-to-burst-balloons",{"title":3300,"slug":6106,"difficulty":6101},"meeting-rooms-ii",{"title":6108,"slug":6109,"difficulty":6101},"Car Pooling","car-pooling",{"title":6111,"slug":6112,"difficulty":6101},"Task Scheduler","task-scheduler","---\ntitle: Scheduling & Interval Partitioning\nmodule: Greedy Algorithms\nmoduleNumber: 7\nlessonNumber: 2\norder: 702\nsummary: >-\n  Three classic scheduling problems all yield to greedy algorithms — and all\n  three turn on a single design decision: which key to sort by. Interval\n  scheduling sorts by **finish** time to pack the most compatible jobs;\n  interval partitioning sorts by **start** time and proves the rooms needed\n  equal the maximum overlap **depth**; minimizing maximum lateness sorts by\n  **deadline** and is justified by an adjacent-swap exchange argument.\ntopics: [Greedy]\nsources:\n  - book: CLRS\n    ref: \"Ch. 16 — Greedy Algorithms (§16.1)\"\n  - book: Skiena\n    ref: \"§ — Scheduling\"\n  - book: Erickson\n    ref: \"Ch. — Greedy Algorithms\"\npractice:\n  - title: 'Non-overlapping Intervals'\n    slug: non-overlapping-intervals\n    difficulty: Medium\n  - title: 'Minimum Number of Arrows to Burst Balloons'\n    slug: minimum-number-of-arrows-to-burst-balloons\n    difficulty: Medium\n  - title: 'Meeting Rooms II'\n    slug: meeting-rooms-ii\n    difficulty: Medium\n  - title: 'Car Pooling'\n    slug: car-pooling\n    difficulty: Medium\n  - title: 'Task Scheduler'\n    slug: task-scheduler\n    difficulty: Medium\n---\n\nThe previous lesson introduced the greedy method on its canonical example:\n**activity selection**, where we pick a maximum-size set of mutually compatible\nintervals by repeatedly taking the one that finishes earliest. That was a single\nproblem solved by a single sort key. This lesson zooms out to the whole family of\n**interval and scheduling problems** that the [greedy method](\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method)\nsolves, and they turn out to be nearly the same algorithm wearing different hats.\nWhat separates them is _which key you sort by_. Sort by **finish** time and you\nmaximize how many jobs fit; sort by **start** time and you minimize how many\nmachines you need; sort by **deadline** and you minimize how late the worst job\nruns. Choosing the key correctly, and proving that choice optimal, is the entire\nproblem.\n\n## Interval scheduling, recapped\n\nRecall the setup. We are given $n$ intervals, interval $i$ being the half-open\n$[s_i, f_i)$, and two intervals are **compatible** when they do not overlap. We\nwant a maximum-size set of pairwise compatible intervals, the most jobs we can\nrun on one machine without conflict.[^clrs-activity]\n\nThe greedy rule, proved correct last lesson, is **earliest finish time first**:\nsort by $f_i$, take the first interval, discard everything that overlaps it, and\nrecurse on the rest. The selection itself is one linear scan, so after the\n[sort](\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort) the algorithm runs in $\\O(n\\log n)$.\n\n> **Remark (Why it is optimal).** The argument is a _stays-ahead_ \u002F exchange\n> argument. Let $a_1$ be the earliest-finishing interval. Some optimal solution\n> $S^\\star$ can be edited to contain $a_1$: if its first interval $j$ differs from\n> $a_1$, swap $a_1$ in for $j$. Since $f_{a_1} \\le f_j$, every later interval of\n> $S^\\star$, which started after $f_j$, still starts after $f_{a_1}$, so the\n> swapped set is valid and no smaller. The greedy choice is therefore safe;\n> induction on the remaining intervals (all of which start at or after $f_{a_1}$)\n> finishes the proof.\n\nThe picture is one of greedy never falling behind: pick the earliest-finishing\ninterval each round, and greedy's $k$-th choice frees the machine no later than\nany rival schedule's $k$-th, so it always has at least as much room to come.\n\n$$\n% caption: Earliest-finish-first stays ahead. Greedy's $k$-th interval (green) finishes no\n%          later than the $k$-th interval of any other compatible schedule (gray), so\n%          greedy always has at least as much room left.\n\\begin{tikzpicture}[xscale=0.62, yscale=0.62,\n  g\u002F.style={draw=acc, very thick, minimum height=4.5mm, fill=acc!15},\n  o\u002F.style={draw, thick, minimum height=4.5mm, fill=black!10}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[font=\\footnotesize, align=right] at (-1.6,3.4) {greedy};\n  \\node[g, minimum width=1.8cm] at (0.9,3.4) {$g_1$};\n  \\node[g, minimum width=1.8cm] at (3.3,3.4) {$g_2$};\n  \\node[g, minimum width=1.8cm] at (5.7,3.4) {$g_3$};\n  \\node[font=\\footnotesize, align=right] at (-1.6,1.8) {other};\n  \\node[o, minimum width=2.6cm] at (1.3,1.8) {$o_1$};\n  \\node[o, minimum width=2.2cm] at (4.0,1.8) {$o_2$};\n  \\node[o, minimum width=1.8cm] at (6.3,1.8) {$o_3$};\n  \\draw[acc, dashed] (1.8,3.7) -- (1.8,0.9);\n  \\draw[acc, dashed] (2.6,2.1) -- (2.6,0.9);\n  \\node[acc, font=\\footnotesize] at (2.2,0.5) {$f_{g_1}\\le f_{o_1}$};\n  \\draw[->, thick] (-1.0,-0.1) -- (7.4,-0.1) node[right, font=\\footnotesize] {time};\n\\end{tikzpicture}\n$$\n\nThe output is a maximum-size set of mutually compatible intervals, computed in\n$\\O(n\\log n)$. Everything below reuses this skeleton (sort, scan, exchange-argument\nproof) with a different key and a different objective.\n\n## Interval partitioning: minimize the rooms\n\nNow flip the question. Instead of dropping intervals to fit on one machine, we\nkeep _all_ of them and ask for the fewest **machines** (rooms, colors,\nfrequencies) needed to run them, where two intervals sharing a machine must be\ncompatible. Phrased as graph coloring: color the intervals so that any two\noverlapping intervals get different colors, using the minimum number of\ncolors.[^skiena-sched]\n\nThe right invariant is **depth**. Define the depth at a point $t$ as the number\nof intervals containing $t$, and let $d = \\max_t \\text{depth}(t)$ be the maximum\nover all points. Depth is a hard lower bound on rooms, and greedy matches it.\n\n$$\n% caption: colors needed = max overlap depth $d$ (highlighted line crosses 3 intervals)\n\\begin{tikzpicture}[\n  font=\\small, >=stealth,\n  bar\u002F.style={line width=3pt}]\n  \\definecolor{acc}{HTML}{2348F2}\n  % timeline axis\n  \\draw[->] (0,-0.4) -- (9.2,-0.4) node[right]{time};\n  % room 1 (y=2.4)\n  \\draw[bar] (0.3,2.4) -- (2.6,2.4);\n  \\draw[bar] (3.2,2.4) -- (5.4,2.4);\n  \\draw[bar] (6.0,2.4) -- (8.6,2.4);\n  \\node[left] at (0.3,2.4) {R1};\n  % room 2 (y=1.4)\n  \\draw[bar] (1.4,1.4) -- (4.2,1.4);\n  \\draw[bar] (4.8,1.4) -- (8.0,1.4);\n  \\node[left] at (1.4,1.4) {R2};\n  % room 3 (y=0.4)\n  \\draw[bar] (3.6,0.4) -- (6.6,0.4);\n  \\node[left] at (3.6,0.4) {R3};\n  % max-depth line: t where R1(3.2-5.4), R2(1.4-4.2), R3(3.6-6.6) all overlap\n  \\draw[acc, line width=1pt, dashed] (3.9,-0.4) -- (3.9,2.9);\n  \\node[acc, above] at (3.9,2.9) {$d=3$};\n\\end{tikzpicture}\n$$\n\n> **Lemma (Lower bound).** Any valid partition uses at least $d$ machines. _Proof._ At the\n> point $t$ of maximum depth there are $d$ intervals all containing $t$; they\n> pairwise overlap, so no two may share a machine, forcing at least $d$ distinct\n> machines. $\\qed$\n\nThe greedy algorithm sorts by **start** time and keeps a\n[min-heap](\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort) of machines keyed by the time\neach becomes free. For each interval in start order, if the\nmachine that frees earliest is already free by this interval's start, reuse it;\notherwise open a new machine.\n\n```algorithm\ncaption: $\\textsc{Partition}(I)$ — fewest machines for intervals $I$\nsort $I$ by start time $s_i$ ascending\n$H \\gets$ empty min-heap of machines keyed by free time\nfor each interval $i$ in start order do\n  if $H$ nonempty and $\\min(H).free \\le s_i$ then\n    $m \\gets \\textsc{Extract-Min}(H)$ \u002F\u002F reuse earliest-freed machine\n  else\n    $m \\gets$ new machine \u002F\u002F none free: open one\n  $m.free \\gets f_i$\n  $\\textsc{Insert}(H, m)$\nreturn $|H|$ \u002F\u002F total machines opened\n```\n\nTracing the scan makes the rule concrete. Intervals enter in **start** order; each\nreuses the machine that frees earliest if it is already free, otherwise it opens a\nnew one. The third interval arrives while both open machines are still busy, so it\nforces a third — and that very moment is a point of depth $3$, the witness behind\nthe lower bound.\n\n$$\n% caption: $\\textsc{Partition}$ assigning six intervals in start order to three machines.\n%          Interval $3$ (red) arrives while R1 and R2 are still busy, opening R3; later\n%          intervals reuse a machine that has freed. The forced opening at $3$ is exactly\n%          a depth-$3$ point.\n\\begin{tikzpicture}[xscale=0.72, yscale=0.62,\n  reuse\u002F.style={draw=acc, very thick, rounded corners, minimum height=4.5mm, fill=acc!15},\n  open\u002F.style={draw=red!75!black, very thick, rounded corners, minimum height=4.5mm, fill=red!18}]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\useasboundingbox (-1.6,-1.0) rectangle (11.0,4.3);\n  % room labels\n  \\node[font=\\footnotesize] at (-1.1,2.6) {R1};\n  \\node[font=\\footnotesize] at (-1.1,1.6) {R2};\n  \\node[font=\\footnotesize] at (-1.1,0.6) {R3};\n  % R1: interval 1 [0,3), then 4 [4,7)\n  \\node[reuse, minimum width=3cm] at (1.5,2.6) {$1$};\n  \\node[reuse, minimum width=3cm] at (5.5,2.6) {$4$};\n  % R2: interval 2 [1,4), then 5 [5,8)\n  \\node[reuse, minimum width=3cm] at (2.5,1.6) {$2$};\n  \\node[reuse, minimum width=3cm] at (6.5,1.6) {$5$};\n  % R3: interval 3 [2,5) opens it, then 6 [6,9)\n  \\node[open, minimum width=3cm] at (3.5,0.6) {$3$};\n  \\node[reuse, minimum width=3cm] at (7.5,0.6) {$6$};\n  % time axis\n  \\draw[->, thick] (0,-0.2) -- (9.6,-0.2) node[right, font=\\footnotesize] {time};\n  \\foreach \\x in {0,1,...,9} \\draw (\\x,-0.1) -- (\\x,-0.3) node[below=1pt, font=\\tiny] {\\x};\n  % depth-3 witness line at t=2.85 (inside intervals 1,2,3; clear of their labels)\n  \\draw[red!75!black, dashed] (2.85,0.1) -- (2.85,3.1);\n  \\node[red!75!black, font=\\footnotesize, align=center] at (2.85,3.4) {opens R3:\\\\depth $3$};\n\\end{tikzpicture}\n$$\n\n> **Lemma (Greedy matches the bound).** $\\textsc{Partition}$ never opens more than $d$\n> machines. _Proof._ Suppose it opens a brand-new machine while processing\n> interval $i$. It does so only because _every_ machine already open is busy at\n> time $s_i$, each holding an interval $j$ with $s_j \\le s_i \u003C f_j$. Those\n> intervals, together with $i$, all contain the point $s_i$, so the depth at\n> $s_i$ is at least the number of machines open after this step. Hence whenever\n> the count of machines rises to $k$, some point has depth $\\ge k$, so the final\n> count never exceeds $d$. Combined with the lower bound, greedy uses _exactly_\n> $d$. $\\qed$\n\nBecause we processed intervals in start order, no interval we open a machine for\noverlaps a _future_ interval that already passed, so the depth witness is real,\nnot an artifact of order. The sort is $\\O(n\\log n)$ and each interval does\n$\\O(\\log n)$ heap work, for $\\O(n\\log n)$ overall.[^erickson-greedy] This is\nexactly LeetCode's _Meeting Rooms II_ and _Minimum Number of Arrows_ in disguise:\nthe first asks for $d$ directly; the second asks for the complementary count of\npoints that stab all intervals.\n\n## Minimizing maximum lateness\n\nThe third problem changes the objective from _count_ to _timing_. We have one\nmachine and $n$ jobs; job $j$ needs $t_j$ units of processing and has a\n**deadline** $d_j$. We must order the jobs (the machine runs one at a time, no\npreemption); if job $j$ finishes at time $f_j$ its **lateness** is\n$\\ell_j = \\max(0, f_j - d_j)$, and we want to minimize the **maximum lateness**\n$L = \\max_j (f_j - d_j)$ across all jobs.[^clrs-activity]\n\nThe greedy rule is **earliest deadline first** (EDF): ignore the processing times\nentirely, sort the jobs by deadline $d_j$, and run them back-to-back in that\norder with no idle gaps. Those two qualifiers, no idle time and deadline order,\nare exactly what the proof needs.\n\n> **Lemma (exchange \u002F no inversions).** Some optimal schedule has no idle time and\n> no **inversions**, where an inversion is a pair of jobs scheduled with the later\n> deadline first ($d_i > d_j$ but $i$ runs before $j$). The earliest-deadline-first\n> schedule is one such schedule, so it is optimal.\n>\n\n> **Proof.** Idle time only delays jobs, so removing it cannot increase any $f_j$,\n> hence cannot increase $L$; assume there is none. Now suppose an optimal schedule\n> has an inversion. Then it has an **adjacent** inversion: a pair $i, j$ run\n> consecutively with $i$ immediately before $j$ yet $d_i > d_j$. Swap them. Only\n> $i$ and $j$ move, and they occupy the same combined time slot, so every _other_\n> job's finish time is unchanged. After the swap $j$ finishes earlier than $i$ did\n> before, so $j$'s lateness only drops. The new lateness of $i$ is its new finish\n> time — which equals the _old_ finish time of $j$ (the slot's right end) — minus\n> $d_i$; since $d_i > d_j$, this is at most the old lateness of $j$. So the\n> maximum of the two latenesses does not increase, and neither does $L$.\n>\n> Each adjacent swap removes one inversion without raising $L$. Repeating drives\n> the schedule to zero inversions, i.e. earliest-deadline-first order, proving\n> it optimal. $\\qed$\n\n$$\n% caption: an adjacent EDF swap: exchanging an inversion ($d_i>d_j$) never raises max\n%          lateness\n\\begin{tikzpicture}[\n  font=\\small,\n  job\u002F.style={draw, minimum height=7mm, inner sep=3pt}]\n  \\definecolor{acc}{HTML}{2348F2}\n  % top: inverted order  i then j, with d_i > d_j\n  \\node[left] at (-0.2,2) {inverted:};\n  \\node[job, minimum width=22mm] (i1) at (1.5,2) {$i\\ (d_i=9)$};\n  \\node[job, minimum width=14mm, acc, draw=acc] (j1) at (3.7,2) {$j\\ (d_j=5)$};\n  \\node[acc, font=\\footnotesize] at (5.4,2) {$j$ late};\n  % bottom: swapped, earliest deadline first\n  \\node[left] at (-0.2,0.4) {EDF:};\n  \\node[job, minimum width=14mm, acc, draw=acc] (j2) at (1.1,0.4) {$j\\ (d_j=5)$};\n  \\node[job, minimum width=22mm] (i2) at (3.3,0.4) {$i\\ (d_i=9)$};\n  % swap arrow (process arrow -> red)\n  \\draw[->, red!75!black, very thick] (2.6,1.55) -- (2.6,0.85) node[midway, left, font=\\footnotesize]{swap};\n\\end{tikzpicture}\n$$\n\nSo minimizing maximum lateness is, again, sort-and-scan: sort by deadline in\n$\\O(n\\log n)$, run in that order, done. A small worked run makes the objective\nconcrete: with the jobs in deadline order, each finish time falls out of the\nrunning total, and the lateness of the worst job is what we report.\n\n$$\n% caption: Earliest-deadline-first on one machine. Jobs $A,B,C$ run back-to-back in\n%          deadline order ($d_A{=}4,d_B{=}6,d_C{=}8$); each lateness is $\\max(0,f_j-d_j)$,\n%          and the schedule minimizes the worst, here $L=1$.\n\\begin{tikzpicture}[xscale=0.85, yscale=0.6, font=\\small]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\node[draw, very thick, minimum height=6mm, minimum width=1.53cm, fill=black!8] at (0.9,2) {$A$};\n  \\node[draw, very thick, minimum height=6mm, minimum width=2.04cm, fill=acc!18] at (3.0,2) {$B$};\n  \\node[draw, very thick, minimum height=6mm, minimum width=1.02cm, fill=black!8] at (4.8,2) {$C$};\n  \\draw[->, thick] (0,1.3) -- (6.0,1.3) node[right,font=\\footnotesize]{time};\n  \\foreach \\x\u002F\\l in {0\u002F0,1.8\u002F3,4.2\u002F7,5.4\u002F9} \\draw (\\x,1.4)--(\\x,1.2) node[below,font=\\footnotesize]{\\l};\n  \\node[font=\\footnotesize] at (0.7,2.85) {$f{=}3,\\ \\text{lat}{=}0$};\n  \\node[acc, font=\\footnotesize] at (3.0,3.55) {$f{=}7,\\ \\text{lat}{=}1$};\n  \\node[font=\\footnotesize] at (5.05,2.85) {$f{=}9,\\ \\text{lat}{=}1$};\n  \\node[red, font=\\footnotesize] at (3.0,0.4) {worst lateness $L=1$};\n\\end{tikzpicture}\n$$\n\n## The trio, and the one decision\n\nThese three — interval **scheduling**, interval **partitioning**, and maximum\n**lateness** — are the canonical greedy-on-intervals trio. They share a single\nshape: sort the intervals or jobs by one key, then make one pass. Everything\ndistinctive about each lives in the key:\n\n| Problem | Objective | Sort key | Optimality proof |\n|---|---|---|---|\n| Scheduling | max compatible jobs | **finish** time | stays-ahead \u002F exchange |\n| Partitioning | min machines | **start** time | depth lower bound = greedy |\n| Max lateness | min worst lateness | **deadline** | adjacent-swap exchange |\n\nThe lesson is that for greedy interval problems the design work is almost\nentirely _choosing the sort key_, and the verification work is a short exchange\nor stays-ahead argument confirming the choice. Get the key right and the rest is\na linear scan.\n\n## Takeaways\n\n- **Interval scheduling** maximizes compatible jobs by **earliest finish first**;\n  a stays-ahead exchange argument proves optimality, in $\\O(n\\log n)$.\n- **Interval partitioning** minimizes machines by **earliest start first** with a\n  min-heap of free times; the answer equals the **maximum depth** $d$, since depth\n  forces $\\ge d$ machines and greedy never opens more.\n- **Minimizing maximum lateness** on one machine uses **earliest deadline first**;\n  an adjacent-swap exchange argument shows removing inversions never raises $L$.\n- All three are the same **sort-then-scan** skeleton: the entire design decision\n  is the **sort key** (finish, start, or deadline), and the proof is a short\n  exchange argument.\n\n[^clrs-activity]: **CLRS**, Ch. 16 — Greedy Algorithms (§16.1): activity selection by earliest finish time and the structure of single-machine scheduling.\n[^skiena-sched]: **Skiena**, § — Scheduling: interval partitioning \u002F coloring and the equivalence of minimum machines with maximum overlap depth.\n[^erickson-greedy]: **Erickson**, Ch. — Greedy Algorithms: greedy scheduling proofs by exchange arguments and the sort-key-is-the-algorithm framing.\n",{"text":6115,"minutes":6116,"time":6117,"words":6118},"8 min read",7.215,432900,1443,{"title":215,"description":6092},[6121,6123,6125],{"book":6040,"ref":6122},"Ch. 16 — Greedy Algorithms (§16.1)",{"book":6061,"ref":6124},"§ — Scheduling",{"book":6073,"ref":6126},"Ch. — Greedy Algorithms","available","01.algorithms\u002F07.greedy\u002F02.scheduling-and-intervals",[218],"Nei12ZGXN7iSGgbX0xQpgFD7e0mNF8fbrkJUFNodKrI",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":6132,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":6133,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":6134,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":6135,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":6136,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":6137,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":6138,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":6139,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":6140,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":6141,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":6142,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":6143,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":6144,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":6145,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":6146,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":6147,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":6148,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":6149,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":6150,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":6151,"\u002Falgorithms\u002Fsequences\u002Ftries":6152,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":6153,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":6154,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":6155,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":6156,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":6157,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":6158,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":6159,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":6160,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":6161,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":6162,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":6118,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":6163,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":6164,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":6165,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":6166,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":6167,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":6168,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":6169,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":6170,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":6171,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":6172,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":6173,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":6174,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":6175,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":6176,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":6177,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":6148,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":6178,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":6179,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":6180,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":6181,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":6163,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":6182,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":6183,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":6144,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":6184,"\u002Falgorithms":6185,"\u002Ftheory-of-computation":6186,"\u002Fcomputer-architecture":6186,"\u002Fphysical-computing":6186,"\u002Fdatabases":6186,"\u002Fdeep-learning":6186},1763,2107,1738,2628,1723,2048,1697,1044,1542,1565,1679,1586,1388,1465,1971,1455,1533,1483,1578,1791,1481,2704,1658,2070,1978,2080,1568,1451,1291,1543,1883,1599,2038,2241,1744,1678,2288,1929,1657,1412,1554,1418,1713,1798,1694,1762,1534,1595,1262,1495,1630,2306,2142,107,0,{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":6188,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":6189,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":6190,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":6191,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":6192,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":6193,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":6194,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":6195,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":6196,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":6197,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":6198,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":6199,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":6200,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":6201,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":6202,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":6203,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":6204,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":6205,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":6206,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":6207,"\u002Falgorithms\u002Fsequences\u002Ftries":6208,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":6209,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":6210,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":6211,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":6212,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":6213,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":6214,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":6215,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":6216,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":6217,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":6218,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":6219,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":6220,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":6221,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":6222,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":6223,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":6224,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":6225,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":6226,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":6227,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":6228,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":6229,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":6230,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":6231,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":6232,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":6233,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":6234,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":6235,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":6236,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":6237,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":6238,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":6239,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":6240,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":6241,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":6242,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":6243,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":6244,"\u002Falgorithms":6245,"\u002Ftheory-of-computation":6248,"\u002Fcomputer-architecture":6251,"\u002Fphysical-computing":6254,"\u002Fdatabases":6257,"\u002Fdeep-learning":6260},{"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":6246,"title":6247,"module":376,"summary":376},"\u002Falgorithms","Algorithms",{"path":6249,"title":6250,"module":376,"summary":376},"\u002Ftheory-of-computation","Theory of Computation",{"path":6252,"title":6253,"module":376,"summary":376},"\u002Fcomputer-architecture","Computer Architecture",{"path":6255,"title":6256,"module":376,"summary":376},"\u002Fphysical-computing","Physical Computing",{"path":6258,"title":6259,"module":376,"summary":376},"\u002Fdatabases","Databases",{"path":6261,"title":6262,"module":376,"summary":376},"\u002Fdeep-learning","Deep Learning",1781560525061]