[{"data":1,"prerenderedAt":14587},["ShallowReactive",2],{"nav:algorithms":3,"lesson:\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":374,"course-wordcounts":14455,"ref-card-index":14511},[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":311,"blurb":376,"body":377,"description":14416,"extension":14417,"meta":14418,"module":307,"navigation":14420,"path":312,"practice":14421,"rawbody":14436,"readingTime":14437,"seo":14442,"sources":14443,"status":14451,"stem":14452,"summary":315,"topics":14453,"__hash__":14454},"course\u002F01.algorithms\u002F10.mathematical-algorithms\u002F01.number-theory-basics.md","",{"type":378,"value":379,"toc":14401},"minimark",[380,466,471,896,940,944,947,1204,1274,1377,1950,2110,2150,2155,2254,2381,2713,2856,3402,3471,3972,4094,4631,4635,4832,4994,4998,5043,5184,5891,6194,6201,6459,6499,6624,7184,7247,7253,7406,8035,8039,9095,9370,9858,10250,10254,10473,10663,10906,11580,11891,12347,12377,12507,13076,13282,13286,14297,14397],[381,382,383,384,388,389,414,415,433,434,451,452,455,456,460,461,465],"p",{},"Most of this course has measured algorithms against the ",[385,386,387],"em",{},"size"," of their input:\n",[390,391,394],"span",{"className":392},[393],"katex",[390,395,399],{"className":396,"ariaHidden":398},[397],"katex-html","true",[390,400,403,408],{"className":401},[402],"base",[390,404],{"className":405,"style":407},[406],"strut","height:0.4306em;",[390,409,413],{"className":410},[411,412],"mord","mathnormal","n"," elements, ",[390,416,418],{"className":417},[393],[390,419,421],{"className":420,"ariaHidden":398},[397],[390,422,424,428],{"className":423},[402],[390,425],{"className":426,"style":427},[406],"height:0.6833em;",[390,429,432],{"className":430,"style":431},[411,412],"margin-right:0.2222em;","V"," vertices, ",[390,435,437],{"className":436},[393],[390,438,440],{"className":439,"ariaHidden":398},[397],[390,441,443,447],{"className":442},[402],[390,444],{"className":445,"style":446},[406],"height:0.6944em;",[390,448,450],{"className":449},[411,412],"h"," levels of a tree. Number-theoretic algorithms\nbreak that habit. Their inputs are single integers, and the interesting cost is\nmeasured against the ",[385,453,454],{},"magnitude"," of those integers, or equivalently the number\nof bits needed to write them down. The oldest non-trivial algorithm we know,\nEuclid's, from around 300 BCE, lives here, and it is still the right way to\ncompute a greatest common divisor. This lesson develops it carefully, extends it\nto solve linear Diophantine equations, and uses both to lay the foundations of\n",[457,458,459],"strong",{},"modular arithmetic",", the arithmetic that underlies hashing, cryptography, and\nthe ",[462,463,464],"q",{},"math"," problems you will meet in practice.",[467,468,470],"h2",{"id":469},"divisibility-and-the-greatest-common-divisor","Divisibility and the greatest common divisor",[381,472,473,474,490,491,507,508,541,542,580,581,620,621,636,637,640,641,490,656,672,673,676,677,723,724,490,785,840,841,885,886],{},"For integers ",[390,475,477],{"className":476},[393],[390,478,480],{"className":479,"ariaHidden":398},[397],[390,481,483,486],{"className":482},[402],[390,484],{"className":485,"style":407},[406],[390,487,489],{"className":488},[411,412],"a"," and ",[390,492,494],{"className":493},[393],[390,495,497],{"className":496,"ariaHidden":398},[397],[390,498,500,503],{"className":499},[402],[390,501],{"className":502,"style":446},[406],[390,504,506],{"className":505},[411,412],"d"," we say ",[457,509,510,525,526],{},[390,511,513],{"className":512},[393],[390,514,516],{"className":515,"ariaHidden":398},[397],[390,517,519,522],{"className":518},[402],[390,520],{"className":521,"style":446},[406],[390,523,506],{"className":524},[411,412]," divides ",[390,527,529],{"className":528},[393],[390,530,532],{"className":531,"ariaHidden":398},[397],[390,533,535,538],{"className":534},[402],[390,536],{"className":537,"style":407},[406],[390,539,489],{"className":540},[411,412]," (written ",[390,543,545],{"className":544},[393],[390,546,548,571],{"className":547,"ariaHidden":398},[397],[390,549,551,555,558,563,568],{"className":550},[402],[390,552],{"className":553,"style":554},[406],"height:1em;vertical-align:-0.25em;",[390,556,506],{"className":557},[411,412],[390,559],{"className":560,"style":562},[561],"mspace","margin-right:0.2778em;",[390,564,567],{"className":565},[566],"mrel","∣",[390,569],{"className":570,"style":562},[561],[390,572,574,577],{"className":573},[402],[390,575],{"className":576,"style":407},[406],[390,578,489],{"className":579},[411,412],") if\n",[390,582,584],{"className":583},[393],[390,585,587,606],{"className":586,"ariaHidden":398},[397],[390,588,590,593,596,599,603],{"className":589},[402],[390,591],{"className":592,"style":407},[406],[390,594,489],{"className":595},[411,412],[390,597],{"className":598,"style":562},[561],[390,600,602],{"className":601},[566],"=",[390,604],{"className":605,"style":562},[561],[390,607,609,612,617],{"className":608},[402],[390,610],{"className":611,"style":446},[406],[390,613,616],{"className":614,"style":615},[411,412],"margin-right:0.0315em;","k",[390,618,506],{"className":619},[411,412]," for some integer ",[390,622,624],{"className":623},[393],[390,625,627],{"className":626,"ariaHidden":398},[397],[390,628,630,633],{"className":629},[402],[390,631],{"className":632,"style":446},[406],[390,634,616],{"className":635,"style":615},[411,412],". A ",[457,638,639],{},"common divisor"," of ",[390,642,644],{"className":643},[393],[390,645,647],{"className":646,"ariaHidden":398},[397],[390,648,650,653],{"className":649},[402],[390,651],{"className":652,"style":407},[406],[390,654,489],{"className":655},[411,412],[390,657,659],{"className":658},[393],[390,660,662],{"className":661,"ariaHidden":398},[397],[390,663,665,668],{"className":664},[402],[390,666],{"className":667,"style":446},[406],[390,669,671],{"className":670},[411,412],"b"," is an integer\ndividing both. The ",[457,674,675],{},"greatest common divisor"," ",[390,678,680],{"className":679},[393],[390,681,683],{"className":682,"ariaHidden":398},[397],[390,684,686,689,698,703,706,711,715,718],{"className":685},[402],[390,687],{"className":688,"style":554},[406],[390,690,693],{"className":691},[692],"mop",[390,694,697],{"className":695},[411,696],"mathrm","gcd",[390,699,702],{"className":700},[701],"mopen","(",[390,704,489],{"className":705},[411,412],[390,707,710],{"className":708},[709],"mpunct",",",[390,712],{"className":713,"style":714},[561],"margin-right:0.1667em;",[390,716,671],{"className":717},[411,412],[390,719,722],{"className":720},[721],"mclose",")"," is the largest such\ninteger, with the conventions ",[390,725,727],{"className":726},[393],[390,728,730,770],{"className":729,"ariaHidden":398},[397],[390,731,733,736,742,745,748,751,754,758,761,764,767],{"className":732},[402],[390,734],{"className":735,"style":554},[406],[390,737,739],{"className":738},[692],[390,740,697],{"className":741},[411,696],[390,743,702],{"className":744},[701],[390,746,489],{"className":747},[411,412],[390,749,710],{"className":750},[709],[390,752],{"className":753,"style":714},[561],[390,755,757],{"className":756},[411],"0",[390,759,722],{"className":760},[721],[390,762],{"className":763,"style":562},[561],[390,765,602],{"className":766},[566],[390,768],{"className":769,"style":562},[561],[390,771,773,776,779,782],{"className":772},[402],[390,774],{"className":775,"style":554},[406],[390,777,567],{"className":778},[411],[390,780,489],{"className":781},[411,412],[390,783,567],{"className":784},[411],[390,786,788],{"className":787},[393],[390,789,791,830],{"className":790,"ariaHidden":398},[397],[390,792,794,797,803,806,809,812,815,818,821,824,827],{"className":793},[402],[390,795],{"className":796,"style":554},[406],[390,798,800],{"className":799},[692],[390,801,697],{"className":802},[411,696],[390,804,702],{"className":805},[701],[390,807,757],{"className":808},[411],[390,810,710],{"className":811},[709],[390,813],{"className":814,"style":714},[561],[390,816,757],{"className":817},[411],[390,819,722],{"className":820},[721],[390,822],{"className":823,"style":562},[561],[390,825,602],{"className":826},[566],[390,828],{"className":829,"style":562},[561],[390,831,833,837],{"className":832},[402],[390,834],{"className":835,"style":836},[406],"height:0.6444em;",[390,838,757],{"className":839},[411],". Throughout we\ntake ",[390,842,844],{"className":843},[393],[390,845,847,876],{"className":846,"ariaHidden":398},[397],[390,848,850,854,857,860,863,866,869,873],{"className":849},[402],[390,851],{"className":852,"style":853},[406],"height:0.8889em;vertical-align:-0.1944em;",[390,855,489],{"className":856},[411,412],[390,858,710],{"className":859},[709],[390,861],{"className":862,"style":714},[561],[390,864,671],{"className":865},[411,412],[390,867],{"className":868,"style":562},[561],[390,870,872],{"className":871},[566],"≥",[390,874],{"className":875,"style":562},[561],[390,877,879,882],{"className":878},[402],[390,880],{"className":881,"style":836},[406],[390,883,757],{"className":884},[411],"; signs only flip the answer's sign.",[887,888,889],"sup",{},[489,890,895],{"href":891,"ariaDescribedBy":892,"dataFootnoteRef":376,"id":894},"#user-content-fn-clrs-gcd",[893],"footnote-label","user-content-fnref-clrs-gcd","1",[381,897,898,899,935,936,939],{},"The naive way to compute ",[390,900,902],{"className":901},[393],[390,903,905],{"className":904,"ariaHidden":398},[397],[390,906,908,911,917,920,923,926,929,932],{"className":907},[402],[390,909],{"className":910,"style":554},[406],[390,912,914],{"className":913},[692],[390,915,697],{"className":916},[411,696],[390,918,702],{"className":919},[701],[390,921,489],{"className":922},[411,412],[390,924,710],{"className":925},[709],[390,927],{"className":928,"style":714},[561],[390,930,671],{"className":931},[411,412],[390,933,722],{"className":934},[721],", factoring both numbers and multiplying the\nshared prime powers, is a trap: integer factorization is believed to be hard, and\nthe ",[489,937,938],{"href":323},"sieve and factorization methods","\nthat find those prime powers are themselves a separate study. Euclid's insight is\nthat you never need the factorization at all.",[467,941,943],{"id":942},"euclids-algorithm","Euclid's algorithm",[381,945,946],{},"The entire algorithm rests on one recurrence.",[948,949,951],"callout",{"type":950},"theorem",[381,952,953,956,957,490,991,1026,1027],{},[457,954,955],{},"Theorem (Euclid)."," For ",[390,958,960],{"className":959},[393],[390,961,963,982],{"className":962,"ariaHidden":398},[397],[390,964,966,970,973,976,979],{"className":965},[402],[390,967],{"className":968,"style":969},[406],"height:0.7719em;vertical-align:-0.136em;",[390,971,489],{"className":972},[411,412],[390,974],{"className":975,"style":562},[561],[390,977,872],{"className":978},[566],[390,980],{"className":981,"style":562},[561],[390,983,985,988],{"className":984},[402],[390,986],{"className":987,"style":836},[406],[390,989,757],{"className":990},[411],[390,992,994],{"className":993},[393],[390,995,997,1017],{"className":996,"ariaHidden":398},[397],[390,998,1000,1004,1007,1010,1014],{"className":999},[402],[390,1001],{"className":1002,"style":1003},[406],"height:0.7335em;vertical-align:-0.0391em;",[390,1005,671],{"className":1006},[411,412],[390,1008],{"className":1009,"style":562},[561],[390,1011,1013],{"className":1012},[566],">",[390,1015],{"className":1016,"style":562},[561],[390,1018,1020,1023],{"className":1019},[402],[390,1021],{"className":1022,"style":836},[406],[390,1024,757],{"className":1025},[411],",\n",[390,1028,1030],{"className":1029},[393],[390,1031,1033,1072,1133,1191],{"className":1032,"ariaHidden":398},[397],[390,1034,1036,1039,1045,1048,1051,1054,1057,1060,1063,1066,1069],{"className":1035},[402],[390,1037],{"className":1038,"style":554},[406],[390,1040,1042],{"className":1041},[692],[390,1043,697],{"className":1044},[411,696],[390,1046,702],{"className":1047},[701],[390,1049,489],{"className":1050},[411,412],[390,1052,710],{"className":1053},[709],[390,1055],{"className":1056,"style":714},[561],[390,1058,671],{"className":1059},[411,412],[390,1061,722],{"className":1062},[721],[390,1064],{"className":1065,"style":562},[561],[390,1067,602],{"className":1068},[566],[390,1070],{"className":1071,"style":562},[561],[390,1073,1075,1079,1085,1093,1096,1099,1103,1106,1109,1113,1116,1127,1130],{"className":1074},[402],[390,1076],{"className":1077,"style":1078},[406],"height:1.2em;vertical-align:-0.35em;",[390,1080,1082],{"className":1081},[692],[390,1083,697],{"className":1084},[411,696],[390,1086,1088],{"className":1087},[701],[390,1089,702],{"className":1090},[1091,1092],"delimsizing","size1",[390,1094,671],{"className":1095},[411,412],[390,1097,710],{"className":1098},[709],[390,1100,1102],{"className":1101},[561]," ",[390,1104],{"className":1105,"style":714},[561],[390,1107,489],{"className":1108},[411,412],[390,1110],{"className":1111,"style":1112},[561],"margin-right:0.0556em;",[390,1114],{"className":1115,"style":431},[561],[390,1117,1120],{"className":1118},[1119],"mbin",[390,1121,1123],{"className":1122},[411],[390,1124,1126],{"className":1125},[411,696],"mod",[390,1128],{"className":1129,"style":1112},[561],[390,1131],{"className":1132,"style":431},[561],[390,1134,1136,1139,1142,1148,1151,1155,1158,1164,1167,1170,1173,1176,1179,1182,1185,1188],{"className":1135},[402],[390,1137],{"className":1138,"style":1078},[406],[390,1140,671],{"className":1141},[411,412],[390,1143,1145],{"className":1144},[721],[390,1146,722],{"className":1147},[1091,1092],[390,1149,710],{"className":1150},[709],[390,1152],{"className":1153,"style":1154},[561],"margin-right:2em;",[390,1156],{"className":1157,"style":714},[561],[390,1159,1161],{"className":1160},[692],[390,1162,697],{"className":1163},[411,696],[390,1165,702],{"className":1166},[701],[390,1168,489],{"className":1169},[411,412],[390,1171,710],{"className":1172},[709],[390,1174],{"className":1175,"style":714},[561],[390,1177,757],{"className":1178},[411],[390,1180,722],{"className":1181},[721],[390,1183],{"className":1184,"style":562},[561],[390,1186,602],{"className":1187},[566],[390,1189],{"className":1190,"style":562},[561],[390,1192,1194,1197,1200],{"className":1193},[402],[390,1195],{"className":1196,"style":407},[406],[390,1198,489],{"className":1199},[411,412],[390,1201,1203],{"className":1202},[411],".",[381,1205,1206,1207,1222,1223,490,1238,1253,1254,1269,1270,1273],{},"The base case is immediate: every integer divides ",[390,1208,1210],{"className":1209},[393],[390,1211,1213],{"className":1212,"ariaHidden":398},[397],[390,1214,1216,1219],{"className":1215},[402],[390,1217],{"className":1218,"style":836},[406],[390,1220,757],{"className":1221},[411],", so the largest divisor of\n",[390,1224,1226],{"className":1225},[393],[390,1227,1229],{"className":1228,"ariaHidden":398},[397],[390,1230,1232,1235],{"className":1231},[402],[390,1233],{"className":1234,"style":407},[406],[390,1236,489],{"className":1237},[411,412],[390,1239,1241],{"className":1240},[393],[390,1242,1244],{"className":1243,"ariaHidden":398},[397],[390,1245,1247,1250],{"className":1246},[402],[390,1248],{"className":1249,"style":836},[406],[390,1251,757],{"className":1252},[411]," is ",[390,1255,1257],{"className":1256},[393],[390,1258,1260],{"className":1259,"ariaHidden":398},[397],[390,1261,1263,1266],{"className":1262},[402],[390,1264],{"className":1265,"style":407},[406],[390,1267,489],{"className":1268},[411,412]," itself. The recurrence follows from a sharper claim: the\ntwo pairs share ",[385,1271,1272],{},"exactly the same set"," of common divisors, hence the same\ngreatest one.",[948,1275,1277],{"type":1276},"lemma",[381,1278,1279,1282,1283,1313,1314,1203],{},[457,1280,1281],{},"Lemma."," The common divisors of ",[390,1284,1286],{"className":1285},[393],[390,1287,1289],{"className":1288,"ariaHidden":398},[397],[390,1290,1292,1295,1298,1301,1304,1307,1310],{"className":1291},[402],[390,1293],{"className":1294,"style":554},[406],[390,1296,702],{"className":1297},[701],[390,1299,489],{"className":1300},[411,412],[390,1302,710],{"className":1303},[709],[390,1305],{"className":1306,"style":714},[561],[390,1308,671],{"className":1309},[411,412],[390,1311,722],{"className":1312},[721]," are precisely the common divisors of\n",[390,1315,1317],{"className":1316},[393],[390,1318,1320,1365],{"className":1319,"ariaHidden":398},[397],[390,1321,1323,1326,1329,1332,1335,1338,1341,1344,1347,1350,1359,1362],{"className":1322},[402],[390,1324],{"className":1325,"style":554},[406],[390,1327,702],{"className":1328},[701],[390,1330,671],{"className":1331},[411,412],[390,1333,710],{"className":1334},[709],[390,1336,1102],{"className":1337},[561],[390,1339],{"className":1340,"style":714},[561],[390,1342,489],{"className":1343},[411,412],[390,1345],{"className":1346,"style":1112},[561],[390,1348],{"className":1349,"style":431},[561],[390,1351,1353],{"className":1352},[1119],[390,1354,1356],{"className":1355},[411],[390,1357,1126],{"className":1358},[411,696],[390,1360],{"className":1361,"style":1112},[561],[390,1363],{"className":1364,"style":431},[561],[390,1366,1368,1371,1374],{"className":1367},[402],[390,1369],{"className":1370,"style":554},[406],[390,1372,671],{"className":1373},[411,412],[390,1375,722],{"className":1376},[721],[948,1378,1380],{"type":1379},"proof",[381,1381,1382,1385,1386,1451,1452,1508,1509,1558,1559,490,1592,1625,1626,1641,1642,1451,1698,1713,1714,490,1729,1744,1745,490,1778,1625,1811,525,1826,1880,1881,1713,1896,490,1911,1926,1927],{},[457,1383,1384],{},"Proof."," Write ",[390,1387,1389],{"className":1388},[393],[390,1390,1392,1412,1442],{"className":1391,"ariaHidden":398},[397],[390,1393,1395,1398,1403,1406,1409],{"className":1394},[402],[390,1396],{"className":1397,"style":407},[406],[390,1399,1402],{"className":1400,"style":1401},[411,412],"margin-right:0.0278em;","r",[390,1404],{"className":1405,"style":562},[561],[390,1407,602],{"className":1408},[566],[390,1410],{"className":1411,"style":562},[561],[390,1413,1415,1418,1421,1424,1427,1436,1439],{"className":1414},[402],[390,1416],{"className":1417,"style":446},[406],[390,1419,489],{"className":1420},[411,412],[390,1422],{"className":1423,"style":1112},[561],[390,1425],{"className":1426,"style":431},[561],[390,1428,1430],{"className":1429},[1119],[390,1431,1433],{"className":1432},[411],[390,1434,1126],{"className":1435},[411,696],[390,1437],{"className":1438,"style":1112},[561],[390,1440],{"className":1441,"style":431},[561],[390,1443,1445,1448],{"className":1444},[402],[390,1446],{"className":1447,"style":446},[406],[390,1449,671],{"className":1450},[411,412],", so ",[390,1453,1455],{"className":1454},[393],[390,1456,1458,1476,1499],{"className":1457,"ariaHidden":398},[397],[390,1459,1461,1464,1467,1470,1473],{"className":1460},[402],[390,1462],{"className":1463,"style":407},[406],[390,1465,489],{"className":1466},[411,412],[390,1468],{"className":1469,"style":562},[561],[390,1471,602],{"className":1472},[566],[390,1474],{"className":1475,"style":562},[561],[390,1477,1479,1482,1486,1489,1492,1496],{"className":1478},[402],[390,1480],{"className":1481,"style":853},[406],[390,1483,462],{"className":1484,"style":1485},[411,412],"margin-right:0.0359em;",[390,1487,671],{"className":1488},[411,412],[390,1490],{"className":1491,"style":431},[561],[390,1493,1495],{"className":1494},[1119],"+",[390,1497],{"className":1498,"style":431},[561],[390,1500,1502,1505],{"className":1501},[402],[390,1503],{"className":1504,"style":407},[406],[390,1506,1402],{"className":1507,"style":1401},[411,412]," for the quotient ",[390,1510,1512],{"className":1511},[393],[390,1513,1515,1534],{"className":1514,"ariaHidden":398},[397],[390,1516,1518,1522,1525,1528,1531],{"className":1517},[402],[390,1519],{"className":1520,"style":1521},[406],"height:0.625em;vertical-align:-0.1944em;",[390,1523,462],{"className":1524,"style":1485},[411,412],[390,1526],{"className":1527,"style":562},[561],[390,1529,602],{"className":1530},[566],[390,1532],{"className":1533,"style":562},[561],[390,1535,1537,1540,1544,1547,1551,1554],{"className":1536},[402],[390,1538],{"className":1539,"style":554},[406],[390,1541,1543],{"className":1542},[701],"⌊",[390,1545,489],{"className":1546},[411,412],[390,1548,1550],{"className":1549},[411],"\u002F",[390,1552,671],{"className":1553},[411,412],[390,1555,1557],{"className":1556},[721],"⌋",". Suppose ",[390,1560,1562],{"className":1561},[393],[390,1563,1565,1583],{"className":1564,"ariaHidden":398},[397],[390,1566,1568,1571,1574,1577,1580],{"className":1567},[402],[390,1569],{"className":1570,"style":554},[406],[390,1572,506],{"className":1573},[411,412],[390,1575],{"className":1576,"style":562},[561],[390,1578,567],{"className":1579},[566],[390,1581],{"className":1582,"style":562},[561],[390,1584,1586,1589],{"className":1585},[402],[390,1587],{"className":1588,"style":407},[406],[390,1590,489],{"className":1591},[411,412],[390,1593,1595],{"className":1594},[393],[390,1596,1598,1616],{"className":1597,"ariaHidden":398},[397],[390,1599,1601,1604,1607,1610,1613],{"className":1600},[402],[390,1602],{"className":1603,"style":554},[406],[390,1605,506],{"className":1606},[411,412],[390,1608],{"className":1609,"style":562},[561],[390,1611,567],{"className":1612},[566],[390,1614],{"className":1615,"style":562},[561],[390,1617,1619,1622],{"className":1618},[402],[390,1620],{"className":1621,"style":446},[406],[390,1623,671],{"className":1624},[411,412],". Then ",[390,1627,1629],{"className":1628},[393],[390,1630,1632],{"className":1631,"ariaHidden":398},[397],[390,1633,1635,1638],{"className":1634},[402],[390,1636],{"className":1637,"style":446},[406],[390,1639,506],{"className":1640},[411,412]," divides the\ninteger combination ",[390,1643,1645],{"className":1644},[393],[390,1646,1648,1666,1686],{"className":1647,"ariaHidden":398},[397],[390,1649,1651,1654,1657,1660,1663],{"className":1650},[402],[390,1652],{"className":1653,"style":407},[406],[390,1655,1402],{"className":1656,"style":1401},[411,412],[390,1658],{"className":1659,"style":562},[561],[390,1661,602],{"className":1662},[566],[390,1664],{"className":1665,"style":562},[561],[390,1667,1669,1673,1676,1679,1683],{"className":1668},[402],[390,1670],{"className":1671,"style":1672},[406],"height:0.6667em;vertical-align:-0.0833em;",[390,1674,489],{"className":1675},[411,412],[390,1677],{"className":1678,"style":431},[561],[390,1680,1682],{"className":1681},[1119],"−",[390,1684],{"className":1685,"style":431},[561],[390,1687,1689,1692,1695],{"className":1688},[402],[390,1690],{"className":1691,"style":853},[406],[390,1693,462],{"className":1694,"style":1485},[411,412],[390,1696,671],{"className":1697},[411,412],[390,1699,1701],{"className":1700},[393],[390,1702,1704],{"className":1703,"ariaHidden":398},[397],[390,1705,1707,1710],{"className":1706},[402],[390,1708],{"className":1709,"style":446},[406],[390,1711,506],{"className":1712},[411,412]," is a common divisor of ",[390,1715,1717],{"className":1716},[393],[390,1718,1720],{"className":1719,"ariaHidden":398},[397],[390,1721,1723,1726],{"className":1722},[402],[390,1724],{"className":1725,"style":446},[406],[390,1727,671],{"className":1728},[411,412],[390,1730,1732],{"className":1731},[393],[390,1733,1735],{"className":1734,"ariaHidden":398},[397],[390,1736,1738,1741],{"className":1737},[402],[390,1739],{"className":1740,"style":407},[406],[390,1742,1402],{"className":1743,"style":1401},[411,412],".\nConversely, suppose ",[390,1746,1748],{"className":1747},[393],[390,1749,1751,1769],{"className":1750,"ariaHidden":398},[397],[390,1752,1754,1757,1760,1763,1766],{"className":1753},[402],[390,1755],{"className":1756,"style":554},[406],[390,1758,506],{"className":1759},[411,412],[390,1761],{"className":1762,"style":562},[561],[390,1764,567],{"className":1765},[566],[390,1767],{"className":1768,"style":562},[561],[390,1770,1772,1775],{"className":1771},[402],[390,1773],{"className":1774,"style":446},[406],[390,1776,671],{"className":1777},[411,412],[390,1779,1781],{"className":1780},[393],[390,1782,1784,1802],{"className":1783,"ariaHidden":398},[397],[390,1785,1787,1790,1793,1796,1799],{"className":1786},[402],[390,1788],{"className":1789,"style":554},[406],[390,1791,506],{"className":1792},[411,412],[390,1794],{"className":1795,"style":562},[561],[390,1797,567],{"className":1798},[566],[390,1800],{"className":1801,"style":562},[561],[390,1803,1805,1808],{"className":1804},[402],[390,1806],{"className":1807,"style":407},[406],[390,1809,1402],{"className":1810,"style":1401},[411,412],[390,1812,1814],{"className":1813},[393],[390,1815,1817],{"className":1816,"ariaHidden":398},[397],[390,1818,1820,1823],{"className":1819},[402],[390,1821],{"className":1822,"style":446},[406],[390,1824,506],{"className":1825},[411,412],[390,1827,1829],{"className":1828},[393],[390,1830,1832,1850,1871],{"className":1831,"ariaHidden":398},[397],[390,1833,1835,1838,1841,1844,1847],{"className":1834},[402],[390,1836],{"className":1837,"style":407},[406],[390,1839,489],{"className":1840},[411,412],[390,1842],{"className":1843,"style":562},[561],[390,1845,602],{"className":1846},[566],[390,1848],{"className":1849,"style":562},[561],[390,1851,1853,1856,1859,1862,1865,1868],{"className":1852},[402],[390,1854],{"className":1855,"style":853},[406],[390,1857,462],{"className":1858,"style":1485},[411,412],[390,1860,671],{"className":1861},[411,412],[390,1863],{"className":1864,"style":431},[561],[390,1866,1495],{"className":1867},[1119],[390,1869],{"className":1870,"style":431},[561],[390,1872,1874,1877],{"className":1873},[402],[390,1875],{"className":1876,"style":407},[406],[390,1878,1402],{"className":1879,"style":1401},[411,412],",\nso ",[390,1882,1884],{"className":1883},[393],[390,1885,1887],{"className":1886,"ariaHidden":398},[397],[390,1888,1890,1893],{"className":1889},[402],[390,1891],{"className":1892,"style":446},[406],[390,1894,506],{"className":1895},[411,412],[390,1897,1899],{"className":1898},[393],[390,1900,1902],{"className":1901,"ariaHidden":398},[397],[390,1903,1905,1908],{"className":1904},[402],[390,1906],{"className":1907,"style":407},[406],[390,1909,489],{"className":1910},[411,412],[390,1912,1914],{"className":1913},[393],[390,1915,1917],{"className":1916,"ariaHidden":398},[397],[390,1918,1920,1923],{"className":1919},[402],[390,1921],{"className":1922,"style":446},[406],[390,1924,671],{"className":1925},[411,412],". The two divisor sets thus contain\neach other and are equal; their maxima coincide. ",[390,1928,1930],{"className":1929},[393],[390,1931,1933],{"className":1932,"ariaHidden":398},[397],[390,1934,1936,1940],{"className":1935},[402],[390,1937],{"className":1938,"style":1939},[406],"height:0.675em;",[390,1941,1945],{"className":1942},[1943,1944],"enclosing","qed",[390,1946,1949],{"className":1947},[411,1948],"amsrm","□",[381,1951,1952,1953,2017,2018,2055,2056,1203],{},"Because the second argument strictly shrinks (",[390,1954,1956],{"className":1955},[393],[390,1957,1959,1989,2008],{"className":1958,"ariaHidden":398},[397],[390,1960,1962,1965,1968,1971,1974,1983,1986],{"className":1961},[402],[390,1963],{"className":1964,"style":446},[406],[390,1966,489],{"className":1967},[411,412],[390,1969],{"className":1970,"style":1112},[561],[390,1972],{"className":1973,"style":431},[561],[390,1975,1977],{"className":1976},[1119],[390,1978,1980],{"className":1979},[411],[390,1981,1126],{"className":1982},[411,696],[390,1984],{"className":1985,"style":1112},[561],[390,1987],{"className":1988,"style":431},[561],[390,1990,1992,1995,1998,2001,2005],{"className":1991},[402],[390,1993],{"className":1994,"style":1003},[406],[390,1996,671],{"className":1997},[411,412],[390,1999],{"className":2000,"style":562},[561],[390,2002,2004],{"className":2003},[566],"\u003C",[390,2006],{"className":2007,"style":562},[561],[390,2009,2011,2014],{"className":2010},[402],[390,2012],{"className":2013,"style":446},[406],[390,2015,671],{"className":2016},[411,412],") and stays\nnon-negative, the recursion must terminate, and it terminates at a pair\n",[390,2019,2021],{"className":2020},[393],[390,2022,2024],{"className":2023,"ariaHidden":398},[397],[390,2025,2027,2030,2033,2036,2040,2043,2046,2049,2052],{"className":2026},[402],[390,2028],{"className":2029,"style":554},[406],[390,2031,702],{"className":2032},[701],[390,2034],{"className":2035,"style":714},[561],[390,2037,2039],{"className":2038,"style":1485},[411,412],"g",[390,2041,710],{"className":2042},[709],[390,2044],{"className":2045,"style":714},[561],[390,2047,757],{"className":2048},[411],[390,2050],{"className":2051,"style":714},[561],[390,2053,722],{"className":2054},[721]," whose answer is ",[390,2057,2059],{"className":2058},[393],[390,2060,2062,2080],{"className":2061,"ariaHidden":398},[397],[390,2063,2065,2068,2071,2074,2077],{"className":2064},[402],[390,2066],{"className":2067,"style":1521},[406],[390,2069,2039],{"className":2070,"style":1485},[411,412],[390,2072],{"className":2073,"style":562},[561],[390,2075,602],{"className":2076},[566],[390,2078],{"className":2079,"style":562},[561],[390,2081,2083,2086,2092,2095,2098,2101,2104,2107],{"className":2082},[402],[390,2084],{"className":2085,"style":554},[406],[390,2087,2089],{"className":2088},[692],[390,2090,697],{"className":2091},[411,696],[390,2093,702],{"className":2094},[701],[390,2096,489],{"className":2097},[411,412],[390,2099,710],{"className":2100},[709],[390,2102],{"className":2103,"style":714},[561],[390,2105,671],{"className":2106},[411,412],[390,2108,722],{"className":2109},[721],[2111,2112,2116],"pre",{"className":2113,"code":2114,"language":2115,"meta":376,"style":376},"language-algorithm shiki shiki-themes Vesper Light - Orange Boost (Quick Open Adjusted) vesper","caption: $\\textsc{Euclid}(a, b)$ — greatest common divisor, $O(\\log\\min(a,b))$\nwhile $b \\ne 0$ do\n  $r \\gets a \\bmod b$\n  $a \\gets b$\n  $b \\gets r$\nreturn $a$\n","algorithm",[2117,2118,2119,2125,2130,2135,2140,2145],"code",{"__ignoreMap":376},[390,2120,2122],{"class":2121,"line":6},"line",[390,2123,2124],{},"caption: $\\textsc{Euclid}(a, b)$ — greatest common divisor, $O(\\log\\min(a,b))$\n",[390,2126,2127],{"class":2121,"line":18},[390,2128,2129],{},"while $b \\ne 0$ do\n",[390,2131,2132],{"class":2121,"line":24},[390,2133,2134],{},"  $r \\gets a \\bmod b$\n",[390,2136,2137],{"class":2121,"line":73},[390,2138,2139],{},"  $a \\gets b$\n",[390,2141,2142],{"class":2121,"line":102},[390,2143,2144],{},"  $b \\gets r$\n",[390,2146,2147],{"class":2121,"line":108},[390,2148,2149],{},"return $a$\n",[2151,2152,2154],"h3",{"id":2153},"why-it-is-fast","Why it is fast",[381,2156,2157,2158,2188,2189,2249,2250,2253],{},"Each iteration replaces ",[390,2159,2161],{"className":2160},[393],[390,2162,2164],{"className":2163,"ariaHidden":398},[397],[390,2165,2167,2170,2173,2176,2179,2182,2185],{"className":2166},[402],[390,2168],{"className":2169,"style":554},[406],[390,2171,702],{"className":2172},[701],[390,2174,489],{"className":2175},[411,412],[390,2177,710],{"className":2178},[709],[390,2180],{"className":2181,"style":714},[561],[390,2183,671],{"className":2184},[411,412],[390,2186,722],{"className":2187},[721]," with ",[390,2190,2192],{"className":2191},[393],[390,2193,2195,2237],{"className":2194,"ariaHidden":398},[397],[390,2196,2198,2201,2204,2207,2210,2213,2216,2219,2222,2231,2234],{"className":2197},[402],[390,2199],{"className":2200,"style":554},[406],[390,2202,702],{"className":2203},[701],[390,2205,671],{"className":2206},[411,412],[390,2208,710],{"className":2209},[709],[390,2211],{"className":2212,"style":714},[561],[390,2214,489],{"className":2215},[411,412],[390,2217],{"className":2218,"style":1112},[561],[390,2220],{"className":2221,"style":431},[561],[390,2223,2225],{"className":2224},[1119],[390,2226,2228],{"className":2227},[411],[390,2229,1126],{"className":2230},[411,696],[390,2232],{"className":2233,"style":1112},[561],[390,2235],{"className":2236,"style":431},[561],[390,2238,2240,2243,2246],{"className":2239},[402],[390,2241],{"className":2242,"style":554},[406],[390,2244,671],{"className":2245},[411,412],[390,2247,722],{"className":2248},[721],". The key fact is that two\niterations ",[385,2251,2252],{},"at least halve"," the larger argument.",[948,2255,2256],{"type":1276},[381,2257,2258,2260,2261,2313,2314,1203],{},[457,2259,1281],{}," If ",[390,2262,2264],{"className":2263},[393],[390,2265,2267,2286,2304],{"className":2266,"ariaHidden":398},[397],[390,2268,2270,2274,2277,2280,2283],{"className":2269},[402],[390,2271],{"className":2272,"style":2273},[406],"height:0.5782em;vertical-align:-0.0391em;",[390,2275,489],{"className":2276},[411,412],[390,2278],{"className":2279,"style":562},[561],[390,2281,1013],{"className":2282},[566],[390,2284],{"className":2285,"style":562},[561],[390,2287,2289,2292,2295,2298,2301],{"className":2288},[402],[390,2290],{"className":2291,"style":1003},[406],[390,2293,671],{"className":2294},[411,412],[390,2296],{"className":2297,"style":562},[561],[390,2299,1013],{"className":2300},[566],[390,2302],{"className":2303,"style":562},[561],[390,2305,2307,2310],{"className":2306},[402],[390,2308],{"className":2309,"style":836},[406],[390,2311,757],{"className":2312},[411]," then ",[390,2315,2317],{"className":2316},[393],[390,2318,2320,2350,2368],{"className":2319,"ariaHidden":398},[397],[390,2321,2323,2326,2329,2332,2335,2344,2347],{"className":2322},[402],[390,2324],{"className":2325,"style":446},[406],[390,2327,489],{"className":2328},[411,412],[390,2330],{"className":2331,"style":1112},[561],[390,2333],{"className":2334,"style":431},[561],[390,2336,2338],{"className":2337},[1119],[390,2339,2341],{"className":2340},[411],[390,2342,1126],{"className":2343},[411,696],[390,2345],{"className":2346,"style":1112},[561],[390,2348],{"className":2349,"style":431},[561],[390,2351,2353,2356,2359,2362,2365],{"className":2352},[402],[390,2354],{"className":2355,"style":1003},[406],[390,2357,671],{"className":2358},[411,412],[390,2360],{"className":2361,"style":562},[561],[390,2363,2004],{"className":2364},[566],[390,2366],{"className":2367,"style":562},[561],[390,2369,2371,2374,2377],{"className":2370},[402],[390,2372],{"className":2373,"style":554},[406],[390,2375,489],{"className":2376},[411,412],[390,2378,2380],{"className":2379},[411],"\u002F2",[948,2382,2383],{"type":1379},[381,2384,2385,2260,2387,2313,2425,2509,2510,2546,2547,1451,2592,2694,2695],{},[457,2386,1384],{},[390,2388,2390],{"className":2389},[393],[390,2391,2393,2413],{"className":2392,"ariaHidden":398},[397],[390,2394,2396,2400,2403,2406,2410],{"className":2395},[402],[390,2397],{"className":2398,"style":2399},[406],"height:0.8304em;vertical-align:-0.136em;",[390,2401,671],{"className":2402},[411,412],[390,2404],{"className":2405,"style":562},[561],[390,2407,2409],{"className":2408},[566],"≤",[390,2411],{"className":2412,"style":562},[561],[390,2414,2416,2419,2422],{"className":2415},[402],[390,2417],{"className":2418,"style":554},[406],[390,2420,489],{"className":2421},[411,412],[390,2423,2380],{"className":2424},[411],[390,2426,2428],{"className":2427},[393],[390,2429,2431,2461,2479,2497],{"className":2430,"ariaHidden":398},[397],[390,2432,2434,2437,2440,2443,2446,2455,2458],{"className":2433},[402],[390,2435],{"className":2436,"style":446},[406],[390,2438,489],{"className":2439},[411,412],[390,2441],{"className":2442,"style":1112},[561],[390,2444],{"className":2445,"style":431},[561],[390,2447,2449],{"className":2448},[1119],[390,2450,2452],{"className":2451},[411],[390,2453,1126],{"className":2454},[411,696],[390,2456],{"className":2457,"style":1112},[561],[390,2459],{"className":2460,"style":431},[561],[390,2462,2464,2467,2470,2473,2476],{"className":2463},[402],[390,2465],{"className":2466,"style":1003},[406],[390,2468,671],{"className":2469},[411,412],[390,2471],{"className":2472,"style":562},[561],[390,2474,2004],{"className":2475},[566],[390,2477],{"className":2478,"style":562},[561],[390,2480,2482,2485,2488,2491,2494],{"className":2481},[402],[390,2483],{"className":2484,"style":2399},[406],[390,2486,671],{"className":2487},[411,412],[390,2489],{"className":2490,"style":562},[561],[390,2492,2409],{"className":2493},[566],[390,2495],{"className":2496,"style":562},[561],[390,2498,2500,2503,2506],{"className":2499},[402],[390,2501],{"className":2502,"style":554},[406],[390,2504,489],{"className":2505},[411,412],[390,2507,2380],{"className":2508},[411],". If ",[390,2511,2513],{"className":2512},[393],[390,2514,2516,2534],{"className":2515,"ariaHidden":398},[397],[390,2517,2519,2522,2525,2528,2531],{"className":2518},[402],[390,2520],{"className":2521,"style":1003},[406],[390,2523,671],{"className":2524},[411,412],[390,2526],{"className":2527,"style":562},[561],[390,2529,1013],{"className":2530},[566],[390,2532],{"className":2533,"style":562},[561],[390,2535,2537,2540,2543],{"className":2536},[402],[390,2538],{"className":2539,"style":554},[406],[390,2541,489],{"className":2542},[411,412],[390,2544,2380],{"className":2545},[411]," then\n",[390,2548,2550],{"className":2549},[393],[390,2551,2553,2583],{"className":2552,"ariaHidden":398},[397],[390,2554,2556,2559,2562,2565,2568,2571,2574,2577,2580],{"className":2555},[402],[390,2557],{"className":2558,"style":554},[406],[390,2560,1543],{"className":2561},[701],[390,2563,489],{"className":2564},[411,412],[390,2566,1550],{"className":2567},[411],[390,2569,671],{"className":2570},[411,412],[390,2572,1557],{"className":2573},[721],[390,2575],{"className":2576,"style":562},[561],[390,2578,602],{"className":2579},[566],[390,2581],{"className":2582,"style":562},[561],[390,2584,2586,2589],{"className":2585},[402],[390,2587],{"className":2588,"style":836},[406],[390,2590,895],{"className":2591},[411],[390,2593,2595],{"className":2594},[393],[390,2596,2598,2628,2646,2664,2682],{"className":2597,"ariaHidden":398},[397],[390,2599,2601,2604,2607,2610,2613,2622,2625],{"className":2600},[402],[390,2602],{"className":2603,"style":446},[406],[390,2605,489],{"className":2606},[411,412],[390,2608],{"className":2609,"style":1112},[561],[390,2611],{"className":2612,"style":431},[561],[390,2614,2616],{"className":2615},[1119],[390,2617,2619],{"className":2618},[411],[390,2620,1126],{"className":2621},[411,696],[390,2623],{"className":2624,"style":1112},[561],[390,2626],{"className":2627,"style":431},[561],[390,2629,2631,2634,2637,2640,2643],{"className":2630},[402],[390,2632],{"className":2633,"style":446},[406],[390,2635,671],{"className":2636},[411,412],[390,2638],{"className":2639,"style":562},[561],[390,2641,602],{"className":2642},[566],[390,2644],{"className":2645,"style":562},[561],[390,2647,2649,2652,2655,2658,2661],{"className":2648},[402],[390,2650],{"className":2651,"style":1672},[406],[390,2653,489],{"className":2654},[411,412],[390,2656],{"className":2657,"style":431},[561],[390,2659,1682],{"className":2660},[1119],[390,2662],{"className":2663,"style":431},[561],[390,2665,2667,2670,2673,2676,2679],{"className":2666},[402],[390,2668],{"className":2669,"style":1003},[406],[390,2671,671],{"className":2672},[411,412],[390,2674],{"className":2675,"style":562},[561],[390,2677,2004],{"className":2678},[566],[390,2680],{"className":2681,"style":562},[561],[390,2683,2685,2688,2691],{"className":2684},[402],[390,2686],{"className":2687,"style":554},[406],[390,2689,489],{"className":2690},[411,412],[390,2692,2380],{"className":2693},[411],". ",[390,2696,2698],{"className":2697},[393],[390,2699,2701],{"className":2700,"ariaHidden":398},[397],[390,2702,2704,2707],{"className":2703},[402],[390,2705],{"className":2706,"style":1939},[406],[390,2708,2710],{"className":2709},[1943,1944],[390,2711,1949],{"className":2712},[411,1948],[381,2714,2715,2716,2808,2809,2817,2818,2851,2852,2855],{},"So after every two steps the first argument drops below half its value; the\nnumber of iterations is therefore ",[390,2717,2719],{"className":2718},[393],[390,2720,2722,2761],{"className":2721,"ariaHidden":398},[397],[390,2723,2725,2728,2732,2735,2743,2746,2749,2752,2755,2758],{"className":2724},[402],[390,2726],{"className":2727,"style":554},[406],[390,2729,2731],{"className":2730,"style":1401},[411,412],"O",[390,2733,702],{"className":2734},[701],[390,2736,2738],{"className":2737},[692],[390,2739,2742],{"className":2740,"style":2741},[411,696],"margin-right:0.0139em;","log",[390,2744],{"className":2745,"style":714},[561],[390,2747,489],{"className":2748},[411,412],[390,2750,722],{"className":2751},[721],[390,2753],{"className":2754,"style":562},[561],[390,2756,602],{"className":2757},[566],[390,2759],{"className":2760,"style":562},[561],[390,2762,2764,2767,2770,2773,2779,2782,2789,2792,2795,2798,2801,2804],{"className":2763},[402],[390,2765],{"className":2766,"style":554},[406],[390,2768,2731],{"className":2769,"style":1401},[411,412],[390,2771,702],{"className":2772},[701],[390,2774,2776],{"className":2775},[692],[390,2777,2742],{"className":2778,"style":2741},[411,696],[390,2780],{"className":2781,"style":714},[561],[390,2783,2785],{"className":2784},[692],[390,2786,2788],{"className":2787},[411,696],"min",[390,2790,702],{"className":2791},[701],[390,2793,489],{"className":2794},[411,412],[390,2796,710],{"className":2797},[709],[390,2799],{"className":2800,"style":714},[561],[390,2802,671],{"className":2803},[411,412],[390,2805,2807],{"className":2806},[721],"))"," once the first\nswap orders the arguments.",[887,2810,2811],{},[489,2812,2816],{"href":2813,"ariaDescribedBy":2814,"dataFootnoteRef":376,"id":2815},"#user-content-fn-clrs-euclid",[893],"user-content-fnref-clrs-euclid","2"," Each iteration does one division on\nnumbers of ",[390,2819,2821],{"className":2820},[393],[390,2822,2824],{"className":2823,"ariaHidden":398},[397],[390,2825,2827,2830,2833,2836,2842,2845,2848],{"className":2826},[402],[390,2828],{"className":2829,"style":554},[406],[390,2831,2731],{"className":2832,"style":1401},[411,412],[390,2834,702],{"className":2835},[701],[390,2837,2839],{"className":2838},[692],[390,2840,2742],{"className":2841,"style":2741},[411,696],[390,2843],{"className":2844,"style":714},[561],[390,2846,489],{"className":2847},[411,412],[390,2849,722],{"className":2850},[721]," bits, so the bit-complexity is polynomial in the input\nsize, exponentially better than factoring. (For a refresher on this kind of\nlogarithmic bound, see ",[489,2853,2854],{"href":17},"asymptotic analysis",".)",[948,2857,2859],{"type":2858},"note",[381,2860,2861,2864,2865,2868,2869,2872,2873,3011,3012,3027,3028,3223,3224,3325,3326,3401],{},[457,2862,2863],{},"Intuition."," The ",[385,2866,2867],{},"worst case"," is the slowest possible shrinkage, and it is\nachieved by ",[457,2870,2871],{},"consecutive Fibonacci numbers",": ",[390,2874,2876],{"className":2875},[393],[390,2877,2879],{"className":2878,"ariaHidden":398},[397],[390,2880,2882,2885,2891,2894,2961,2964,2967,3008],{"className":2881},[402],[390,2883],{"className":2884,"style":554},[406],[390,2886,2888],{"className":2887},[692],[390,2889,697],{"className":2890},[411,696],[390,2892,702],{"className":2893},[701],[390,2895,2897,2902],{"className":2896},[411],[390,2898,2901],{"className":2899,"style":2900},[411,412],"margin-right:0.1389em;","F",[390,2903,2906],{"className":2904},[2905],"msupsub",[390,2907,2911,2952],{"className":2908},[2909,2910],"vlist-t","vlist-t2",[390,2912,2915,2947],{"className":2913},[2914],"vlist-r",[390,2916,2920],{"className":2917,"style":2919},[2918],"vlist","height:0.3361em;",[390,2921,2923,2928],{"style":2922},"top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;",[390,2924],{"className":2925,"style":2927},[2926],"pstrut","height:2.7em;",[390,2929,2935],{"className":2930},[2931,2932,2933,2934],"sizing","reset-size6","size3","mtight",[390,2936,2938,2941,2944],{"className":2937},[411,2934],[390,2939,616],{"className":2940,"style":615},[411,412,2934],[390,2942,1495],{"className":2943},[1119,2934],[390,2945,895],{"className":2946},[411,2934],[390,2948,2951],{"className":2949},[2950],"vlist-s","​",[390,2953,2955],{"className":2954},[2914],[390,2956,2959],{"className":2957,"style":2958},[2918],"height:0.2083em;",[390,2960],{},[390,2962,710],{"className":2963},[709],[390,2965],{"className":2966,"style":714},[561],[390,2968,2970,2973],{"className":2969},[411],[390,2971,2901],{"className":2972,"style":2900},[411,412],[390,2974,2976],{"className":2975},[2905],[390,2977,2979,2999],{"className":2978},[2909,2910],[390,2980,2982,2996],{"className":2981},[2914],[390,2983,2985],{"className":2984,"style":2919},[2918],[390,2986,2987,2990],{"style":2922},[390,2988],{"className":2989,"style":2927},[2926],[390,2991,2993],{"className":2992},[2931,2932,2933,2934],[390,2994,616],{"className":2995,"style":615},[411,412,2934],[390,2997,2951],{"className":2998},[2950],[390,3000,3002],{"className":3001},[2914],[390,3003,3006],{"className":3004,"style":3005},[2918],"height:0.15em;",[390,3007],{},[390,3009,722],{"className":3010},[721]," runs for\nexactly ",[390,3013,3015],{"className":3014},[393],[390,3016,3018],{"className":3017,"ariaHidden":398},[397],[390,3019,3021,3024],{"className":3020},[402],[390,3022],{"className":3023,"style":446},[406],[390,3025,616],{"className":3026,"style":615},[411,412]," iterations, because ",[390,3029,3031],{"className":3030},[393],[390,3032,3034,3111,3167],{"className":3033,"ariaHidden":398},[397],[390,3035,3037,3041,3090,3093,3096,3105,3108],{"className":3036},[402],[390,3038],{"className":3039,"style":3040},[406],"height:0.9028em;vertical-align:-0.2083em;",[390,3042,3044,3047],{"className":3043},[411],[390,3045,2901],{"className":3046,"style":2900},[411,412],[390,3048,3050],{"className":3049},[2905],[390,3051,3053,3082],{"className":3052},[2909,2910],[390,3054,3056,3079],{"className":3055},[2914],[390,3057,3059],{"className":3058,"style":2919},[2918],[390,3060,3061,3064],{"style":2922},[390,3062],{"className":3063,"style":2927},[2926],[390,3065,3067],{"className":3066},[2931,2932,2933,2934],[390,3068,3070,3073,3076],{"className":3069},[411,2934],[390,3071,616],{"className":3072,"style":615},[411,412,2934],[390,3074,1495],{"className":3075},[1119,2934],[390,3077,895],{"className":3078},[411,2934],[390,3080,2951],{"className":3081},[2950],[390,3083,3085],{"className":3084},[2914],[390,3086,3088],{"className":3087,"style":2958},[2918],[390,3089],{},[390,3091],{"className":3092,"style":1112},[561],[390,3094],{"className":3095,"style":431},[561],[390,3097,3099],{"className":3098},[1119],[390,3100,3102],{"className":3101},[411],[390,3103,1126],{"className":3104},[411,696],[390,3106],{"className":3107,"style":1112},[561],[390,3109],{"className":3110,"style":431},[561],[390,3112,3114,3118,3158,3161,3164],{"className":3113},[402],[390,3115],{"className":3116,"style":3117},[406],"height:0.8333em;vertical-align:-0.15em;",[390,3119,3121,3124],{"className":3120},[411],[390,3122,2901],{"className":3123,"style":2900},[411,412],[390,3125,3127],{"className":3126},[2905],[390,3128,3130,3150],{"className":3129},[2909,2910],[390,3131,3133,3147],{"className":3132},[2914],[390,3134,3136],{"className":3135,"style":2919},[2918],[390,3137,3138,3141],{"style":2922},[390,3139],{"className":3140,"style":2927},[2926],[390,3142,3144],{"className":3143},[2931,2932,2933,2934],[390,3145,616],{"className":3146,"style":615},[411,412,2934],[390,3148,2951],{"className":3149},[2950],[390,3151,3153],{"className":3152},[2914],[390,3154,3156],{"className":3155,"style":3005},[2918],[390,3157],{},[390,3159],{"className":3160,"style":562},[561],[390,3162,602],{"className":3163},[566],[390,3165],{"className":3166,"style":562},[561],[390,3168,3170,3174],{"className":3169},[402],[390,3171],{"className":3172,"style":3173},[406],"height:0.8917em;vertical-align:-0.2083em;",[390,3175,3177,3180],{"className":3176},[411],[390,3178,2901],{"className":3179,"style":2900},[411,412],[390,3181,3183],{"className":3182},[2905],[390,3184,3186,3215],{"className":3185},[2909,2910],[390,3187,3189,3212],{"className":3188},[2914],[390,3190,3192],{"className":3191,"style":2919},[2918],[390,3193,3194,3197],{"style":2922},[390,3195],{"className":3196,"style":2927},[2926],[390,3198,3200],{"className":3199},[2931,2932,2933,2934],[390,3201,3203,3206,3209],{"className":3202},[411,2934],[390,3204,616],{"className":3205,"style":615},[411,412,2934],[390,3207,1682],{"className":3208},[1119,2934],[390,3210,895],{"className":3211},[411,2934],[390,3213,2951],{"className":3214},[2950],[390,3216,3218],{"className":3217},[2914],[390,3219,3221],{"className":3220,"style":2958},[2918],[390,3222],{}," reproduces the\nnext Fibonacci pair. Since ",[390,3225,3227],{"className":3226},[393],[390,3228,3230,3286],{"className":3229,"ariaHidden":398},[397],[390,3231,3233,3236,3276,3279,3283],{"className":3232},[402],[390,3234],{"className":3235,"style":3117},[406],[390,3237,3239,3242],{"className":3238},[411],[390,3240,2901],{"className":3241,"style":2900},[411,412],[390,3243,3245],{"className":3244},[2905],[390,3246,3248,3268],{"className":3247},[2909,2910],[390,3249,3251,3265],{"className":3250},[2914],[390,3252,3254],{"className":3253,"style":2919},[2918],[390,3255,3256,3259],{"style":2922},[390,3257],{"className":3258,"style":2927},[2926],[390,3260,3262],{"className":3261},[2931,2932,2933,2934],[390,3263,616],{"className":3264,"style":615},[411,412,2934],[390,3266,2951],{"className":3267},[2950],[390,3269,3271],{"className":3270},[2914],[390,3272,3274],{"className":3273,"style":3005},[2918],[390,3275],{},[390,3277],{"className":3278,"style":562},[561],[390,3280,3282],{"className":3281},[566],"≈",[390,3284],{"className":3285,"style":562},[561],[390,3287,3289,3293],{"className":3288},[402],[390,3290],{"className":3291,"style":3292},[406],"height:1.0435em;vertical-align:-0.1944em;",[390,3294,3296,3300],{"className":3295},[411],[390,3297,3299],{"className":3298},[411,412],"φ",[390,3301,3303],{"className":3302},[2905],[390,3304,3306],{"className":3305},[2909],[390,3307,3309],{"className":3308},[2914],[390,3310,3313],{"className":3311,"style":3312},[2918],"height:0.8491em;",[390,3314,3316,3319],{"style":3315},"top:-3.063em;margin-right:0.05em;",[390,3317],{"className":3318,"style":2927},[2926],[390,3320,3322],{"className":3321},[2931,2932,2933,2934],[390,3323,616],{"className":3324,"style":615},[411,412,2934],", the iteration count is\n",[390,3327,3329],{"className":3328},[393],[390,3330,3332],{"className":3331,"ariaHidden":398},[397],[390,3333,3335,3339,3343,3346,3392,3395,3398],{"className":3334},[402],[390,3336],{"className":3337,"style":3338},[406],"height:1.1302em;vertical-align:-0.3802em;",[390,3340,3342],{"className":3341},[411],"Θ",[390,3344,702],{"className":3345},[701],[390,3347,3349,3355],{"className":3348},[692],[390,3350,3352],{"className":3351},[692],[390,3353,2742],{"className":3354,"style":2741},[411,696],[390,3356,3358],{"className":3357},[2905],[390,3359,3361,3383],{"className":3360},[2909,2910],[390,3362,3364,3380],{"className":3363},[2914],[390,3365,3368],{"className":3366,"style":3367},[2918],"height:0.0573em;",[390,3369,3371,3374],{"style":3370},"top:-2.4559em;margin-right:0.05em;",[390,3372],{"className":3373,"style":2927},[2926],[390,3375,3377],{"className":3376},[2931,2932,2933,2934],[390,3378,3299],{"className":3379},[411,412,2934],[390,3381,2951],{"className":3382},[2950],[390,3384,3386],{"className":3385},[2914],[390,3387,3390],{"className":3388,"style":3389},[2918],"height:0.3802em;",[390,3391],{},[390,3393],{"className":3394,"style":714},[561],[390,3396,489],{"className":3397},[411,412],[390,3399,722],{"className":3400},[721],"; the constant in the logarithm is as bad as it can\nget precisely on Fibonacci inputs.",[381,3403,3404,3405,3450,3451,3466,3467,3470],{},"The worst case is slow precisely because every quotient is the smallest it can\nbe, ",[390,3406,3408],{"className":3407},[393],[390,3409,3411,3441],{"className":3410,"ariaHidden":398},[397],[390,3412,3414,3417,3420,3423,3426,3429,3432,3435,3438],{"className":3413},[402],[390,3415],{"className":3416,"style":554},[406],[390,3418,1543],{"className":3419},[701],[390,3421,489],{"className":3422},[411,412],[390,3424,1550],{"className":3425},[411],[390,3427,671],{"className":3428},[411,412],[390,3430,1557],{"className":3431},[721],[390,3433],{"className":3434,"style":562},[561],[390,3436,602],{"className":3437},[566],[390,3439],{"className":3440,"style":562},[561],[390,3442,3444,3447],{"className":3443},[402],[390,3445],{"className":3446,"style":836},[406],[390,3448,895],{"className":3449},[411],", so each step subtracts ",[390,3452,3454],{"className":3453},[393],[390,3455,3457],{"className":3456,"ariaHidden":398},[397],[390,3458,3460,3463],{"className":3459},[402],[390,3461],{"className":3462,"style":446},[406],[390,3464,671],{"className":3465},[411,412]," only ",[457,3468,3469],{},"once"," and the\npair merely slides to the previous Fibonacci pair. A single larger quotient would\ncollapse the chain far faster.",[3472,3473,3477,3950],"figure",{"className":3474},[3475,3476],"tikz-figure","tikz-diagram-rendered",[3478,3479,3484],"svg",{"xmlns":3480,"width":3481,"height":3482,"viewBox":3483},"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg","233.130","276.594","-75 -75 174.847 207.446",[2039,3485,3488,3493,3523,3526,3552,3555,3580,3583,3608,3611,3636,3681,3684,3687,3734,3737,3740,3779,3782,3785,3824,3827,3830,3869,3872,3875,3915],{"stroke":3486,"style":3487},"currentColor","stroke-miterlimit:10;stroke-width:.4",[3489,3490],"path",{"fill":3491,"d":3492},"none","M-20.08-40.403h62.597v-22.762h-62.596Z",[2039,3494,3496,3505,3511,3517],{"stroke":3491,"fontSize":3495},"9",[2039,3497,3499],{"transform":3498},"translate(-19.528 2.25)",[3489,3500],{"d":3501,"fill":3486,"stroke":3486,"className":3502,"style":3504},"M11.478-51.090Q11.478-51.402 11.707-51.641Q11.935-51.881 12.256-51.982Q12.076-52.122 11.981-52.331Q11.887-52.540 11.887-52.773Q11.887-53.186 12.164-53.520Q11.751-53.924 11.751-54.438Q11.751-54.829 11.970-55.128Q12.190-55.427 12.542-55.594Q12.893-55.761 13.271-55.761Q13.825-55.761 14.242-55.449Q14.431-55.642 14.693-55.752Q14.954-55.862 15.240-55.862Q15.442-55.862 15.576-55.719Q15.710-55.576 15.710-55.383Q15.710-55.256 15.627-55.177Q15.543-55.097 15.420-55.097Q15.302-55.097 15.218-55.177Q15.135-55.256 15.135-55.383Q15.135-55.458 15.143-55.484Q15.161-55.519 15.183-55.552Q15.205-55.585 15.214-55.598Q14.770-55.598 14.423-55.295Q14.783-54.913 14.783-54.438Q14.783-54.144 14.656-53.898Q14.528-53.652 14.315-53.476Q14.102-53.300 13.823-53.203Q13.544-53.107 13.271-53.107Q12.761-53.107 12.353-53.375Q12.225-53.203 12.225-52.997Q12.225-52.755 12.384-52.584Q12.542-52.412 12.775-52.412L13.539-52.412Q14.084-52.412 14.530-52.316Q14.976-52.219 15.275-51.929Q15.574-51.639 15.574-51.090Q15.574-50.510 14.888-50.220Q14.203-49.930 13.531-49.930Q12.858-49.930 12.168-50.220Q11.478-50.510 11.478-51.090M12.019-51.090Q12.019-50.795 12.271-50.597Q12.524-50.400 12.885-50.305Q13.245-50.211 13.531-50.211Q14.031-50.211 14.532-50.437Q15.033-50.663 15.033-51.090Q15.033-51.547 14.592-51.679Q14.150-51.810 13.539-51.810L12.775-51.810Q12.581-51.810 12.403-51.716Q12.225-51.621 12.122-51.457Q12.019-51.292 12.019-51.090M13.262-53.388L13.271-53.388Q14.053-53.388 14.053-54.438Q14.053-55.484 13.271-55.484Q12.480-55.484 12.480-54.438Q12.480-53.388 13.262-53.388M18.149-51.683Q17.600-51.683 17.141-51.962Q16.681-52.241 16.413-52.711Q16.145-53.181 16.145-53.726Q16.145-54.139 16.295-54.517Q16.444-54.895 16.719-55.190Q16.993-55.484 17.363-55.651Q17.732-55.818 18.149-55.818Q18.483-55.818 18.804-55.752Q19.125-55.686 19.353-55.500Q19.582-55.313 19.582-54.988Q19.582-54.812 19.454-54.684Q19.327-54.557 19.151-54.557Q18.967-54.557 18.837-54.682Q18.707-54.807 18.707-54.988Q18.707-55.124 18.782-55.236Q18.857-55.348 18.989-55.401Q18.681-55.528 18.149-55.528Q17.714-55.528 17.446-55.251Q17.178-54.974 17.066-54.559Q16.954-54.144 16.954-53.726Q16.954-53.296 17.092-52.894Q17.231-52.492 17.525-52.232Q17.820-51.973 18.259-51.973Q18.681-51.973 18.984-52.223Q19.287-52.474 19.393-52.883Q19.402-52.913 19.426-52.938Q19.450-52.962 19.481-52.962L19.591-52.962Q19.678-52.962 19.678-52.847Q19.533-52.311 19.120-51.997Q18.707-51.683 18.149-51.683M22.192-51.683Q21.647-51.683 21.203-51.966Q20.760-52.250 20.505-52.722Q20.250-53.195 20.250-53.726Q20.250-54.280 20.527-54.746Q20.803-55.212 21.276-55.486Q21.748-55.761 22.293-55.761Q22.627-55.761 22.930-55.629Q23.234-55.497 23.453-55.260L23.453-57.110Q23.453-57.352 23.383-57.460Q23.313-57.567 23.179-57.591Q23.045-57.616 22.759-57.616L22.759-57.932L24.126-58.029L24.126-52.601Q24.126-52.364 24.196-52.256Q24.266-52.149 24.403-52.125Q24.539-52.100 24.820-52.100L24.820-51.784L23.427-51.683L23.427-52.232Q23.177-51.969 22.858-51.826Q22.539-51.683 22.192-51.683M22.254-51.947Q22.623-51.947 22.933-52.158Q23.242-52.368 23.427-52.711L23.427-54.843Q23.256-55.146 22.974-55.324Q22.693-55.502 22.355-55.502Q21.665-55.502 21.362-54.981Q21.058-54.460 21.058-53.718Q21.058-52.997 21.329-52.472Q21.599-51.947 22.254-51.947",[3503],"tikz-text","stroke-width:0.270",[2039,3506,3507],{"transform":3498},[3489,3508],{"d":3509,"fill":3486,"stroke":3486,"className":3510,"style":3504},"M27.946-49.543Q27.441-49.930 27.072-50.435Q26.702-50.940 26.459-51.540Q26.215-52.140 26.100-52.757Q25.986-53.375 25.986-54.034Q25.986-54.693 26.100-55.308Q26.215-55.924 26.454-56.517Q26.694-57.110 27.067-57.620Q27.441-58.130 27.946-58.516Q27.981-58.534 28.003-58.534L28.082-58.534Q28.170-58.534 28.170-58.433Q28.170-58.398 28.135-58.363Q27.573-57.840 27.228-57.134Q26.883-56.429 26.735-55.647Q26.588-54.865 26.588-54.034Q26.588-53.410 26.667-52.826Q26.746-52.241 26.924-51.674Q27.102-51.107 27.401-50.606Q27.700-50.105 28.135-49.697Q28.170-49.661 28.170-49.622Q28.170-49.525 28.082-49.525L28.003-49.525Q27.981-49.525 27.946-49.543M32.591-51.784L29.559-51.784L29.559-52.100Q30.710-52.100 30.710-52.395L30.710-57.119Q30.222-56.886 29.502-56.886L29.502-57.202Q30.631-57.202 31.194-57.778L31.339-57.778Q31.374-57.778 31.407-57.745Q31.440-57.712 31.440-57.677L31.440-52.395Q31.440-52.100 32.591-52.100L32.591-51.784M34.204-52.505L34.160-52.505Q34.362-52.188 34.749-52.030Q35.136-51.872 35.562-51.872Q36.098-51.872 36.337-52.307Q36.577-52.742 36.577-53.322Q36.577-53.902 36.331-54.342Q36.085-54.781 35.553-54.781L34.933-54.781Q34.907-54.781 34.874-54.810Q34.841-54.838 34.841-54.860L34.841-54.961Q34.841-54.992 34.870-55.016Q34.898-55.040 34.933-55.040L35.452-55.080Q35.918-55.080 36.164-55.552Q36.410-56.025 36.410-56.543Q36.410-56.970 36.197-57.244Q35.984-57.519 35.562-57.519Q35.219-57.519 34.894-57.389Q34.569-57.260 34.384-57.005L34.410-57.005Q34.613-57.005 34.749-56.864Q34.885-56.723 34.885-56.526Q34.885-56.328 34.751-56.194Q34.617-56.060 34.419-56.060Q34.217-56.060 34.079-56.194Q33.940-56.328 33.940-56.526Q33.940-57.115 34.443-57.446Q34.947-57.778 35.562-57.778Q35.940-57.778 36.342-57.638Q36.744-57.497 37.012-57.218Q37.280-56.939 37.280-56.543Q37.280-55.994 36.926-55.557Q36.573-55.119 36.032-54.935Q36.423-54.856 36.768-54.632Q37.113-54.408 37.324-54.067Q37.535-53.726 37.535-53.331Q37.535-52.949 37.372-52.626Q37.210-52.303 36.917-52.067Q36.625-51.832 36.278-51.709Q35.931-51.586 35.562-51.586Q35.114-51.586 34.683-51.747Q34.252-51.907 33.971-52.234Q33.690-52.562 33.690-53.019Q33.690-53.234 33.837-53.377Q33.984-53.520 34.204-53.520Q34.415-53.520 34.560-53.375Q34.705-53.230 34.705-53.019Q34.705-52.808 34.558-52.656Q34.410-52.505 34.204-52.505",[3503],[2039,3512,3513],{"transform":3498},[3489,3514],{"d":3515,"fill":3486,"stroke":3486,"className":3516,"style":3504},"M38.842-50.180Q38.842-50.220 38.877-50.255Q39.202-50.567 39.382-50.973Q39.563-51.380 39.563-51.828L39.563-51.911Q39.422-51.784 39.220-51.784Q39.075-51.784 38.961-51.850Q38.846-51.916 38.780-52.028Q38.714-52.140 38.714-52.289Q38.714-52.509 38.855-52.650Q38.996-52.790 39.220-52.790Q39.541-52.790 39.681-52.492Q39.822-52.193 39.822-51.828Q39.822-51.318 39.618-50.863Q39.413-50.409 39.048-50.057Q39.013-50.039 38.987-50.039Q38.930-50.039 38.886-50.083Q38.842-50.127 38.842-50.180",[3503],[2039,3518,3519],{"transform":3498},[3489,3520],{"d":3521,"fill":3486,"stroke":3486,"className":3522,"style":3504},"M42.439-53.151Q42.439-53.709 42.799-54.122Q43.159-54.535 43.735-54.807L43.366-55.040Q43.063-55.242 42.876-55.572Q42.689-55.902 42.689-56.258Q42.689-56.912 43.195-57.345Q43.700-57.778 44.364-57.778Q44.763-57.778 45.148-57.618Q45.532-57.457 45.781-57.152Q46.029-56.846 46.029-56.429Q46.029-55.598 44.961-55.040L45.515-54.693Q45.862-54.465 46.073-54.096Q46.284-53.726 46.284-53.313Q46.284-52.935 46.126-52.617Q45.968-52.298 45.691-52.065Q45.414-51.832 45.071-51.709Q44.728-51.586 44.364-51.586Q43.898-51.586 43.452-51.773Q43.006-51.960 42.722-52.314Q42.439-52.667 42.439-53.151M42.962-53.151Q42.962-52.606 43.381-52.239Q43.801-51.872 44.364-51.872Q44.693-51.872 45.018-52.004Q45.344-52.136 45.552-52.390Q45.761-52.645 45.761-52.988Q45.761-53.252 45.625-53.476Q45.489-53.700 45.256-53.854L44.012-54.636Q43.551-54.399 43.256-54.012Q42.962-53.625 42.962-53.151M43.573-55.906L44.689-55.203Q44.913-55.326 45.117-55.515Q45.322-55.704 45.442-55.937Q45.563-56.170 45.563-56.429Q45.563-56.737 45.392-56.987Q45.220-57.238 44.944-57.378Q44.667-57.519 44.355-57.519Q43.906-57.519 43.533-57.273Q43.159-57.027 43.159-56.600Q43.159-56.196 43.573-55.906M47.356-49.525L47.273-49.525Q47.185-49.525 47.185-49.622Q47.185-49.661 47.220-49.697Q48.055-50.470 48.415-51.604Q48.776-52.738 48.776-54.034Q48.776-54.654 48.697-55.245Q48.617-55.836 48.437-56.394Q48.257-56.952 47.956-57.460Q47.655-57.967 47.220-58.363Q47.185-58.398 47.185-58.433Q47.185-58.534 47.273-58.534L47.356-58.534Q47.374-58.534 47.409-58.516Q47.914-58.134 48.288-57.620Q48.661-57.106 48.899-56.528Q49.136-55.950 49.252-55.322Q49.369-54.693 49.369-54.034Q49.369-53.375 49.252-52.744Q49.136-52.114 48.896-51.529Q48.657-50.945 48.286-50.435Q47.914-49.925 47.409-49.543Q47.374-49.525 47.356-49.525",[3503],[3489,3524],{"fill":3491,"d":3525},"M-20.08-6.26h62.597v-22.762h-62.596Z",[2039,3527,3528,3534,3540,3546],{"stroke":3491,"fontSize":3495},[2039,3529,3531],{"transform":3530},"translate(-17.215 36.393)",[3489,3532],{"d":3501,"fill":3486,"stroke":3486,"className":3533,"style":3504},[3503],[2039,3535,3536],{"transform":3530},[3489,3537],{"d":3538,"fill":3486,"stroke":3486,"className":3539,"style":3504},"M27.946-49.543Q27.441-49.930 27.072-50.435Q26.702-50.940 26.459-51.540Q26.215-52.140 26.100-52.757Q25.986-53.375 25.986-54.034Q25.986-54.693 26.100-55.308Q26.215-55.924 26.454-56.517Q26.694-57.110 27.067-57.620Q27.441-58.130 27.946-58.516Q27.981-58.534 28.003-58.534L28.082-58.534Q28.170-58.534 28.170-58.433Q28.170-58.398 28.135-58.363Q27.573-57.840 27.228-57.134Q26.883-56.429 26.735-55.647Q26.588-54.865 26.588-54.034Q26.588-53.410 26.667-52.826Q26.746-52.241 26.924-51.674Q27.102-51.107 27.401-50.606Q27.700-50.105 28.135-49.697Q28.170-49.661 28.170-49.622Q28.170-49.525 28.082-49.525L28.003-49.525Q27.981-49.525 27.946-49.543M29.071-53.151Q29.071-53.709 29.431-54.122Q29.792-54.535 30.367-54.807L29.998-55.040Q29.695-55.242 29.508-55.572Q29.322-55.902 29.322-56.258Q29.322-56.912 29.827-57.345Q30.332-57.778 30.996-57.778Q31.396-57.778 31.780-57.618Q32.165-57.457 32.413-57.152Q32.661-56.846 32.661-56.429Q32.661-55.598 31.594-55.040L32.147-54.693Q32.494-54.465 32.705-54.096Q32.916-53.726 32.916-53.313Q32.916-52.935 32.758-52.617Q32.600-52.298 32.323-52.065Q32.046-51.832 31.703-51.709Q31.361-51.586 30.996-51.586Q30.530-51.586 30.084-51.773Q29.638-51.960 29.354-52.314Q29.071-52.667 29.071-53.151M29.594-53.151Q29.594-52.606 30.014-52.239Q30.433-51.872 30.996-51.872Q31.325-51.872 31.651-52.004Q31.976-52.136 32.185-52.390Q32.393-52.645 32.393-52.988Q32.393-53.252 32.257-53.476Q32.121-53.700 31.888-53.854L30.644-54.636Q30.183-54.399 29.888-54.012Q29.594-53.625 29.594-53.151M30.205-55.906L31.321-55.203Q31.545-55.326 31.750-55.515Q31.954-55.704 32.075-55.937Q32.196-56.170 32.196-56.429Q32.196-56.737 32.024-56.987Q31.853-57.238 31.576-57.378Q31.299-57.519 30.987-57.519Q30.539-57.519 30.165-57.273Q29.792-57.027 29.792-56.600Q29.792-56.196 30.205-55.906",[3503],[2039,3541,3542],{"transform":3530},[3489,3543],{"d":3544,"fill":3486,"stroke":3486,"className":3545,"style":3504},"M34.217-50.180Q34.217-50.220 34.252-50.255Q34.577-50.567 34.757-50.973Q34.938-51.380 34.938-51.828L34.938-51.911Q34.797-51.784 34.595-51.784Q34.450-51.784 34.336-51.850Q34.221-51.916 34.155-52.028Q34.089-52.140 34.089-52.289Q34.089-52.509 34.230-52.650Q34.371-52.790 34.595-52.790Q34.916-52.790 35.056-52.492Q35.197-52.193 35.197-51.828Q35.197-51.318 34.993-50.863Q34.788-50.409 34.423-50.057Q34.388-50.039 34.362-50.039Q34.305-50.039 34.261-50.083Q34.217-50.127 34.217-50.180",[3503],[2039,3547,3548],{"transform":3530},[3489,3549],{"d":3550,"fill":3486,"stroke":3486,"className":3551,"style":3504},"M38.253-52.790Q38.394-52.377 38.754-52.125Q39.114-51.872 39.550-51.872Q40.002-51.872 40.268-52.125Q40.534-52.377 40.637-52.762Q40.740-53.146 40.740-53.603Q40.740-55.304 39.831-55.304Q39.510-55.304 39.281-55.210Q39.053-55.115 38.923-54.996Q38.794-54.878 38.682-54.739Q38.570-54.601 38.534-54.592L38.451-54.592Q38.407-54.592 38.376-54.623Q38.345-54.654 38.345-54.702L38.345-57.699Q38.345-57.730 38.381-57.754Q38.416-57.778 38.442-57.778L38.482-57.778Q39.114-57.488 39.787-57.488Q40.459-57.488 41.101-57.778L41.127-57.778Q41.158-57.778 41.191-57.756Q41.224-57.734 41.224-57.699L41.224-57.598Q41.224-57.594 41.215-57.576Q41.206-57.558 41.206-57.554Q40.890-57.159 40.420-56.937Q39.949-56.715 39.453-56.715Q39.044-56.715 38.662-56.825L38.662-55.106Q39.119-55.563 39.831-55.563Q40.341-55.563 40.740-55.282Q41.140-55.001 41.362-54.546Q41.584-54.091 41.584-53.586Q41.584-53.036 41.305-52.577Q41.026-52.118 40.560-51.852Q40.094-51.586 39.550-51.586Q39.110-51.586 38.726-51.813Q38.341-52.039 38.113-52.419Q37.884-52.799 37.884-53.243Q37.884-53.436 38.016-53.568Q38.148-53.700 38.345-53.700Q38.477-53.700 38.581-53.641Q38.684-53.581 38.743-53.478Q38.802-53.375 38.802-53.243Q38.802-53.045 38.675-52.913Q38.548-52.782 38.345-52.782Q38.284-52.782 38.253-52.790M42.731-49.525L42.648-49.525Q42.560-49.525 42.560-49.622Q42.560-49.661 42.595-49.697Q43.430-50.470 43.790-51.604Q44.151-52.738 44.151-54.034Q44.151-54.654 44.072-55.245Q43.992-55.836 43.812-56.394Q43.632-56.952 43.331-57.460Q43.030-57.967 42.595-58.363Q42.560-58.398 42.560-58.433Q42.560-58.534 42.648-58.534L42.731-58.534Q42.749-58.534 42.784-58.516Q43.289-58.134 43.663-57.620Q44.036-57.106 44.274-56.528Q44.511-55.950 44.627-55.322Q44.744-54.693 44.744-54.034Q44.744-53.375 44.627-52.744Q44.511-52.114 44.271-51.529Q44.032-50.945 43.661-50.435Q43.289-49.925 42.784-49.543Q42.749-49.525 42.731-49.525",[3503],[3489,3553],{"fill":3491,"d":3554},"M-20.08 27.884h62.597V5.122h-62.596Z",[2039,3556,3557,3563,3569,3574],{"stroke":3491,"fontSize":3495},[2039,3558,3560],{"transform":3559},"translate(-17.215 70.537)",[3489,3561],{"d":3501,"fill":3486,"stroke":3486,"className":3562,"style":3504},[3503],[2039,3564,3565],{"transform":3559},[3489,3566],{"d":3567,"fill":3486,"stroke":3486,"className":3568,"style":3504},"M27.946-49.543Q27.441-49.930 27.072-50.435Q26.702-50.940 26.459-51.540Q26.215-52.140 26.100-52.757Q25.986-53.375 25.986-54.034Q25.986-54.693 26.100-55.308Q26.215-55.924 26.454-56.517Q26.694-57.110 27.067-57.620Q27.441-58.130 27.946-58.516Q27.981-58.534 28.003-58.534L28.082-58.534Q28.170-58.534 28.170-58.433Q28.170-58.398 28.135-58.363Q27.573-57.840 27.228-57.134Q26.883-56.429 26.735-55.647Q26.588-54.865 26.588-54.034Q26.588-53.410 26.667-52.826Q26.746-52.241 26.924-51.674Q27.102-51.107 27.401-50.606Q27.700-50.105 28.135-49.697Q28.170-49.661 28.170-49.622Q28.170-49.525 28.082-49.525L28.003-49.525Q27.981-49.525 27.946-49.543M29.511-52.790Q29.651-52.377 30.011-52.125Q30.372-51.872 30.807-51.872Q31.260-51.872 31.525-52.125Q31.791-52.377 31.895-52.762Q31.998-53.146 31.998-53.603Q31.998-55.304 31.088-55.304Q30.767-55.304 30.539-55.210Q30.310-55.115 30.181-54.996Q30.051-54.878 29.939-54.739Q29.827-54.601 29.792-54.592L29.708-54.592Q29.664-54.592 29.634-54.623Q29.603-54.654 29.603-54.702L29.603-57.699Q29.603-57.730 29.638-57.754Q29.673-57.778 29.699-57.778L29.739-57.778Q30.372-57.488 31.044-57.488Q31.717-57.488 32.358-57.778L32.385-57.778Q32.415-57.778 32.448-57.756Q32.481-57.734 32.481-57.699L32.481-57.598Q32.481-57.594 32.472-57.576Q32.464-57.558 32.464-57.554Q32.147-57.159 31.677-56.937Q31.207-56.715 30.710-56.715Q30.302-56.715 29.919-56.825L29.919-55.106Q30.376-55.563 31.088-55.563Q31.598-55.563 31.998-55.282Q32.398-55.001 32.620-54.546Q32.842-54.091 32.842-53.586Q32.842-53.036 32.563-52.577Q32.283-52.118 31.818-51.852Q31.352-51.586 30.807-51.586Q30.367-51.586 29.983-51.813Q29.598-52.039 29.370-52.419Q29.141-52.799 29.141-53.243Q29.141-53.436 29.273-53.568Q29.405-53.700 29.603-53.700Q29.735-53.700 29.838-53.641Q29.941-53.581 30-53.478Q30.060-53.375 30.060-53.243Q30.060-53.045 29.932-52.913Q29.805-52.782 29.603-52.782Q29.541-52.782 29.511-52.790",[3503],[2039,3570,3571],{"transform":3559},[3489,3572],{"d":3544,"fill":3486,"stroke":3486,"className":3573,"style":3504},[3503],[2039,3575,3576],{"transform":3559},[3489,3577],{"d":3578,"fill":3486,"stroke":3486,"className":3579,"style":3504},"M38.328-52.505L38.284-52.505Q38.486-52.188 38.873-52.030Q39.260-51.872 39.686-51.872Q40.222-51.872 40.461-52.307Q40.701-52.742 40.701-53.322Q40.701-53.902 40.455-54.342Q40.209-54.781 39.677-54.781L39.057-54.781Q39.031-54.781 38.998-54.810Q38.965-54.838 38.965-54.860L38.965-54.961Q38.965-54.992 38.994-55.016Q39.022-55.040 39.057-55.040L39.576-55.080Q40.042-55.080 40.288-55.552Q40.534-56.025 40.534-56.543Q40.534-56.970 40.321-57.244Q40.108-57.519 39.686-57.519Q39.343-57.519 39.018-57.389Q38.693-57.260 38.508-57.005L38.534-57.005Q38.737-57.005 38.873-56.864Q39.009-56.723 39.009-56.526Q39.009-56.328 38.875-56.194Q38.741-56.060 38.543-56.060Q38.341-56.060 38.203-56.194Q38.064-56.328 38.064-56.526Q38.064-57.115 38.567-57.446Q39.071-57.778 39.686-57.778Q40.064-57.778 40.466-57.638Q40.868-57.497 41.136-57.218Q41.404-56.939 41.404-56.543Q41.404-55.994 41.050-55.557Q40.697-55.119 40.156-54.935Q40.547-54.856 40.892-54.632Q41.237-54.408 41.448-54.067Q41.659-53.726 41.659-53.331Q41.659-52.949 41.496-52.626Q41.334-52.303 41.042-52.067Q40.749-51.832 40.402-51.709Q40.055-51.586 39.686-51.586Q39.238-51.586 38.807-51.747Q38.376-51.907 38.095-52.234Q37.814-52.562 37.814-53.019Q37.814-53.234 37.961-53.377Q38.108-53.520 38.328-53.520Q38.539-53.520 38.684-53.375Q38.829-53.230 38.829-53.019Q38.829-52.808 38.682-52.656Q38.534-52.505 38.328-52.505M42.731-49.525L42.648-49.525Q42.560-49.525 42.560-49.622Q42.560-49.661 42.595-49.697Q43.430-50.470 43.790-51.604Q44.151-52.738 44.151-54.034Q44.151-54.654 44.072-55.245Q43.992-55.836 43.812-56.394Q43.632-56.952 43.331-57.460Q43.030-57.967 42.595-58.363Q42.560-58.398 42.560-58.433Q42.560-58.534 42.648-58.534L42.731-58.534Q42.749-58.534 42.784-58.516Q43.289-58.134 43.663-57.620Q44.036-57.106 44.274-56.528Q44.511-55.950 44.627-55.322Q44.744-54.693 44.744-54.034Q44.744-53.375 44.627-52.744Q44.511-52.114 44.271-51.529Q44.032-50.945 43.661-50.435Q43.289-49.925 42.784-49.543Q42.749-49.525 42.731-49.525",[3503],[3489,3581],{"fill":3491,"d":3582},"M-20.08 62.027h62.597V39.265h-62.596Z",[2039,3584,3585,3591,3597,3602],{"stroke":3491,"fontSize":3495},[2039,3586,3588],{"transform":3587},"translate(-17.215 104.68)",[3489,3589],{"d":3501,"fill":3486,"stroke":3486,"className":3590,"style":3504},[3503],[2039,3592,3593],{"transform":3587},[3489,3594],{"d":3595,"fill":3486,"stroke":3486,"className":3596,"style":3504},"M27.946-49.543Q27.441-49.930 27.072-50.435Q26.702-50.940 26.459-51.540Q26.215-52.140 26.100-52.757Q25.986-53.375 25.986-54.034Q25.986-54.693 26.100-55.308Q26.215-55.924 26.454-56.517Q26.694-57.110 27.067-57.620Q27.441-58.130 27.946-58.516Q27.981-58.534 28.003-58.534L28.082-58.534Q28.170-58.534 28.170-58.433Q28.170-58.398 28.135-58.363Q27.573-57.840 27.228-57.134Q26.883-56.429 26.735-55.647Q26.588-54.865 26.588-54.034Q26.588-53.410 26.667-52.826Q26.746-52.241 26.924-51.674Q27.102-51.107 27.401-50.606Q27.700-50.105 28.135-49.697Q28.170-49.661 28.170-49.622Q28.170-49.525 28.082-49.525L28.003-49.525Q27.981-49.525 27.946-49.543M29.585-52.505L29.541-52.505Q29.743-52.188 30.130-52.030Q30.517-51.872 30.943-51.872Q31.479-51.872 31.719-52.307Q31.958-52.742 31.958-53.322Q31.958-53.902 31.712-54.342Q31.466-54.781 30.934-54.781L30.315-54.781Q30.288-54.781 30.255-54.810Q30.222-54.838 30.222-54.860L30.222-54.961Q30.222-54.992 30.251-55.016Q30.280-55.040 30.315-55.040L30.833-55.080Q31.299-55.080 31.545-55.552Q31.791-56.025 31.791-56.543Q31.791-56.970 31.578-57.244Q31.365-57.519 30.943-57.519Q30.600-57.519 30.275-57.389Q29.950-57.260 29.765-57.005L29.792-57.005Q29.994-57.005 30.130-56.864Q30.266-56.723 30.266-56.526Q30.266-56.328 30.132-56.194Q29.998-56.060 29.801-56.060Q29.598-56.060 29.460-56.194Q29.322-56.328 29.322-56.526Q29.322-57.115 29.825-57.446Q30.328-57.778 30.943-57.778Q31.321-57.778 31.723-57.638Q32.125-57.497 32.393-57.218Q32.661-56.939 32.661-56.543Q32.661-55.994 32.308-55.557Q31.954-55.119 31.413-54.935Q31.804-54.856 32.149-54.632Q32.494-54.408 32.705-54.067Q32.916-53.726 32.916-53.331Q32.916-52.949 32.754-52.626Q32.591-52.303 32.299-52.067Q32.007-51.832 31.659-51.709Q31.312-51.586 30.943-51.586Q30.495-51.586 30.064-51.747Q29.634-51.907 29.352-52.234Q29.071-52.562 29.071-53.019Q29.071-53.234 29.218-53.377Q29.365-53.520 29.585-53.520Q29.796-53.520 29.941-53.375Q30.086-53.230 30.086-53.019Q30.086-52.808 29.939-52.656Q29.792-52.505 29.585-52.505",[3503],[2039,3598,3599],{"transform":3587},[3489,3600],{"d":3544,"fill":3486,"stroke":3486,"className":3601,"style":3504},[3503],[2039,3603,3604],{"transform":3587},[3489,3605],{"d":3606,"fill":3486,"stroke":3486,"className":3607,"style":3504},"M41.334-51.784L37.884-51.784L37.884-52.017Q37.884-52.030 37.915-52.061L39.369-53.638Q39.835-54.135 40.088-54.440Q40.341-54.746 40.532-55.157Q40.723-55.568 40.723-56.007Q40.723-56.596 40.400-57.029Q40.077-57.462 39.497-57.462Q39.233-57.462 38.987-57.352Q38.741-57.242 38.565-57.055Q38.389-56.868 38.293-56.618L38.372-56.618Q38.574-56.618 38.717-56.482Q38.860-56.346 38.860-56.130Q38.860-55.924 38.717-55.785Q38.574-55.647 38.372-55.647Q38.170-55.647 38.027-55.790Q37.884-55.932 37.884-56.130Q37.884-56.592 38.121-56.965Q38.359-57.339 38.759-57.558Q39.158-57.778 39.607-57.778Q40.130-57.778 40.584-57.563Q41.039-57.347 41.312-56.948Q41.584-56.548 41.584-56.007Q41.584-55.612 41.413-55.258Q41.241-54.904 40.976-54.625Q40.710-54.346 40.259-53.961Q39.809-53.577 39.730-53.502L38.706-52.540L39.523-52.540Q40.174-52.540 40.611-52.551Q41.048-52.562 41.079-52.584Q41.149-52.667 41.204-52.907Q41.259-53.146 41.299-53.414L41.584-53.414L41.334-51.784M42.731-49.525L42.648-49.525Q42.560-49.525 42.560-49.622Q42.560-49.661 42.595-49.697Q43.430-50.470 43.790-51.604Q44.151-52.738 44.151-54.034Q44.151-54.654 44.072-55.245Q43.992-55.836 43.812-56.394Q43.632-56.952 43.331-57.460Q43.030-57.967 42.595-58.363Q42.560-58.398 42.560-58.433Q42.560-58.534 42.648-58.534L42.731-58.534Q42.749-58.534 42.784-58.516Q43.289-58.134 43.663-57.620Q44.036-57.106 44.274-56.528Q44.511-55.950 44.627-55.322Q44.744-54.693 44.744-54.034Q44.744-53.375 44.627-52.744Q44.511-52.114 44.271-51.529Q44.032-50.945 43.661-50.435Q43.289-49.925 42.784-49.543Q42.749-49.525 42.731-49.525",[3503],[3489,3609],{"fill":3491,"d":3610},"M-20.08 96.17h62.597V73.408h-62.596Z",[2039,3612,3613,3619,3625,3630],{"stroke":3491,"fontSize":3495},[2039,3614,3616],{"transform":3615},"translate(-17.215 138.823)",[3489,3617],{"d":3501,"fill":3486,"stroke":3486,"className":3618,"style":3504},[3503],[2039,3620,3621],{"transform":3615},[3489,3622],{"d":3623,"fill":3486,"stroke":3486,"className":3624,"style":3504},"M27.946-49.543Q27.441-49.930 27.072-50.435Q26.702-50.940 26.459-51.540Q26.215-52.140 26.100-52.757Q25.986-53.375 25.986-54.034Q25.986-54.693 26.100-55.308Q26.215-55.924 26.454-56.517Q26.694-57.110 27.067-57.620Q27.441-58.130 27.946-58.516Q27.981-58.534 28.003-58.534L28.082-58.534Q28.170-58.534 28.170-58.433Q28.170-58.398 28.135-58.363Q27.573-57.840 27.228-57.134Q26.883-56.429 26.735-55.647Q26.588-54.865 26.588-54.034Q26.588-53.410 26.667-52.826Q26.746-52.241 26.924-51.674Q27.102-51.107 27.401-50.606Q27.700-50.105 28.135-49.697Q28.170-49.661 28.170-49.622Q28.170-49.525 28.082-49.525L28.003-49.525Q27.981-49.525 27.946-49.543M32.591-51.784L29.141-51.784L29.141-52.017Q29.141-52.030 29.172-52.061L30.627-53.638Q31.093-54.135 31.345-54.440Q31.598-54.746 31.789-55.157Q31.980-55.568 31.980-56.007Q31.980-56.596 31.657-57.029Q31.334-57.462 30.754-57.462Q30.490-57.462 30.244-57.352Q29.998-57.242 29.823-57.055Q29.647-56.868 29.550-56.618L29.629-56.618Q29.831-56.618 29.974-56.482Q30.117-56.346 30.117-56.130Q30.117-55.924 29.974-55.785Q29.831-55.647 29.629-55.647Q29.427-55.647 29.284-55.790Q29.141-55.932 29.141-56.130Q29.141-56.592 29.379-56.965Q29.616-57.339 30.016-57.558Q30.416-57.778 30.864-57.778Q31.387-57.778 31.842-57.563Q32.297-57.347 32.569-56.948Q32.842-56.548 32.842-56.007Q32.842-55.612 32.670-55.258Q32.499-54.904 32.233-54.625Q31.967-54.346 31.517-53.961Q31.066-53.577 30.987-53.502L29.963-52.540L30.781-52.540Q31.431-52.540 31.868-52.551Q32.305-52.562 32.336-52.584Q32.407-52.667 32.461-52.907Q32.516-53.146 32.556-53.414L32.842-53.414",[3503],[2039,3626,3627],{"transform":3615},[3489,3628],{"d":3544,"fill":3486,"stroke":3486,"className":3629,"style":3504},[3503],[2039,3631,3632],{"transform":3615},[3489,3633],{"d":3634,"fill":3486,"stroke":3486,"className":3635,"style":3504},"M41.334-51.784L38.302-51.784L38.302-52.100Q39.453-52.100 39.453-52.395L39.453-57.119Q38.965-56.886 38.244-56.886L38.244-57.202Q39.374-57.202 39.936-57.778L40.081-57.778Q40.116-57.778 40.149-57.745Q40.182-57.712 40.182-57.677L40.182-52.395Q40.182-52.100 41.334-52.100L41.334-51.784M42.731-49.525L42.648-49.525Q42.560-49.525 42.560-49.622Q42.560-49.661 42.595-49.697Q43.430-50.470 43.790-51.604Q44.151-52.738 44.151-54.034Q44.151-54.654 44.072-55.245Q43.992-55.836 43.812-56.394Q43.632-56.952 43.331-57.460Q43.030-57.967 42.595-58.363Q42.560-58.398 42.560-58.433Q42.560-58.534 42.648-58.534L42.731-58.534Q42.749-58.534 42.784-58.516Q43.289-58.134 43.663-57.620Q44.036-57.106 44.274-56.528Q44.511-55.950 44.627-55.322Q44.744-54.693 44.744-54.034Q44.744-53.375 44.627-52.744Q44.511-52.114 44.271-51.529Q44.032-50.945 43.661-50.435Q43.289-49.925 42.784-49.543Q42.749-49.525 42.731-49.525",[3503],[2039,3637,3641,3644],{"fill":3638,"stroke":3639,"style":3640},"var(--tk-soft-accent)","var(--tk-accent)","stroke-width:1.2",[3489,3642],{"d":3643},"M-20.08 130.314h62.597v-22.762h-62.596Z",[2039,3645,3646,3652,3658,3663,3669,3675],{"fill":3486,"stroke":3491,"fontSize":3495},[2039,3647,3649],{"transform":3648},"translate(-25.694 172.966)",[3489,3650],{"d":3501,"fill":3486,"stroke":3486,"className":3651,"style":3504},[3503],[2039,3653,3654],{"transform":3648},[3489,3655],{"d":3656,"fill":3486,"stroke":3486,"className":3657,"style":3504},"M27.946-49.543Q27.441-49.930 27.072-50.435Q26.702-50.940 26.459-51.540Q26.215-52.140 26.100-52.757Q25.986-53.375 25.986-54.034Q25.986-54.693 26.100-55.308Q26.215-55.924 26.454-56.517Q26.694-57.110 27.067-57.620Q27.441-58.130 27.946-58.516Q27.981-58.534 28.003-58.534L28.082-58.534Q28.170-58.534 28.170-58.433Q28.170-58.398 28.135-58.363Q27.573-57.840 27.228-57.134Q26.883-56.429 26.735-55.647Q26.588-54.865 26.588-54.034Q26.588-53.410 26.667-52.826Q26.746-52.241 26.924-51.674Q27.102-51.107 27.401-50.606Q27.700-50.105 28.135-49.697Q28.170-49.661 28.170-49.622Q28.170-49.525 28.082-49.525L28.003-49.525Q27.981-49.525 27.946-49.543M32.591-51.784L29.559-51.784L29.559-52.100Q30.710-52.100 30.710-52.395L30.710-57.119Q30.222-56.886 29.502-56.886L29.502-57.202Q30.631-57.202 31.194-57.778L31.339-57.778Q31.374-57.778 31.407-57.745Q31.440-57.712 31.440-57.677L31.440-52.395Q31.440-52.100 32.591-52.100",[3503],[2039,3659,3660],{"transform":3648},[3489,3661],{"d":3544,"fill":3486,"stroke":3486,"className":3662,"style":3504},[3503],[2039,3664,3665],{"transform":3648},[3489,3666],{"d":3667,"fill":3486,"stroke":3486,"className":3668,"style":3504},"M39.739-51.586Q38.614-51.586 38.200-52.483Q37.787-53.379 37.787-54.654Q37.787-55.427 37.937-56.126Q38.086-56.825 38.521-57.301Q38.956-57.778 39.739-57.778Q40.516-57.778 40.951-57.299Q41.386-56.820 41.536-56.124Q41.685-55.427 41.685-54.654Q41.685-53.375 41.272-52.481Q40.859-51.586 39.739-51.586M39.739-51.846Q40.257-51.846 40.508-52.357Q40.758-52.869 40.815-53.480Q40.872-54.091 40.872-54.799Q40.872-55.484 40.815-56.044Q40.758-56.605 40.505-57.062Q40.253-57.519 39.739-57.519Q39.334-57.519 39.097-57.242Q38.860-56.965 38.752-56.524Q38.644-56.082 38.620-55.689Q38.596-55.295 38.596-54.799Q38.596-54.293 38.620-53.865Q38.644-53.436 38.752-52.953Q38.860-52.470 39.099-52.158Q39.339-51.846 39.739-51.846M42.731-49.525L42.648-49.525Q42.560-49.525 42.560-49.622Q42.560-49.661 42.595-49.697Q43.430-50.470 43.790-51.604Q44.151-52.738 44.151-54.034Q44.151-54.654 44.072-55.245Q43.992-55.836 43.812-56.394Q43.632-56.952 43.331-57.460Q43.030-57.967 42.595-58.363Q42.560-58.398 42.560-58.433Q42.560-58.534 42.648-58.534L42.731-58.534Q42.749-58.534 42.784-58.516Q43.289-58.134 43.663-57.620Q44.036-57.106 44.274-56.528Q44.511-55.950 44.627-55.322Q44.744-54.693 44.744-54.034Q44.744-53.375 44.627-52.744Q44.511-52.114 44.271-51.529Q44.032-50.945 43.661-50.435Q43.289-49.925 42.784-49.543Q42.749-49.525 42.731-49.525",[3503],[2039,3670,3671],{"transform":3648},[3489,3672],{"d":3673,"fill":3486,"stroke":3486,"className":3674,"style":3504},"M54.719-52.927L48.913-52.927Q48.834-52.940 48.784-52.990Q48.733-53.041 48.733-53.116Q48.733-53.265 48.913-53.313L54.719-53.313Q54.890-53.261 54.890-53.116Q54.890-52.962 54.719-52.927M54.719-54.755L48.913-54.755Q48.733-54.785 48.733-54.944Q48.733-55.093 48.913-55.141L54.719-55.141Q54.890-55.089 54.890-54.944Q54.890-54.790 54.719-54.755",[3503],[2039,3676,3677],{"transform":3648},[3489,3678],{"d":3679,"fill":3486,"stroke":3486,"className":3680,"style":3504},"M61.890-51.784L58.858-51.784L58.858-52.100Q60.009-52.100 60.009-52.395L60.009-57.119Q59.521-56.886 58.800-56.886L58.800-57.202Q59.930-57.202 60.492-57.778L60.637-57.778Q60.672-57.778 60.705-57.745Q60.738-57.712 60.738-57.677L60.738-52.395Q60.738-52.100 61.890-52.100",[3503],[3489,3682],{"fill":3491,"d":3683},"M11.219-40.203v8.981",[3489,3685],{"stroke":3491,"d":3686},"m11.219-29.222 1.6-3.2-1.6 1.2-1.6-1.2",[2039,3688,3690,3698,3704,3710,3716,3722,3728],{"stroke":3491,"fontSize":3689},"8",[2039,3691,3693],{"transform":3692},"translate(6.378 18.872)",[3489,3694],{"d":3695,"fill":3486,"stroke":3486,"className":3696,"style":3697},"M12.555-50.350L12.578-50.456Q12.586-50.507 12.668-50.526Q13.274-50.526 13.274-50.647Q13.328-50.784 13.340-50.831L13.660-52.120Q13.196-51.706 12.723-51.706Q12.367-51.706 12.098-51.886Q11.828-52.065 11.688-52.360Q11.547-52.655 11.547-53.014Q11.547-53.401 11.709-53.815Q11.871-54.229 12.155-54.567Q12.438-54.905 12.807-55.108Q13.176-55.311 13.578-55.311Q13.828-55.311 14.045-55.173Q14.262-55.034 14.379-54.807Q14.442-54.917 14.649-55.114Q14.856-55.311 14.953-55.311Q15-55.311 15.033-55.276Q15.067-55.241 15.067-55.190L13.961-50.776Q13.949-50.737 13.930-50.616Q13.930-50.526 14.434-50.526Q14.539-50.499 14.539-50.401L14.508-50.296Q14.500-50.253 14.418-50.233L12.653-50.233Q12.610-50.233 12.582-50.274Q12.555-50.315 12.555-50.350M12.739-51.960Q13.039-51.960 13.319-52.167Q13.598-52.374 13.793-52.663L14.227-54.393Q14.188-54.573 14.102-54.723Q14.016-54.874 13.879-54.966Q13.742-55.057 13.563-55.057Q13.227-55.057 12.955-54.776Q12.684-54.495 12.524-54.120Q12.399-53.800 12.301-53.380Q12.203-52.960 12.203-52.679Q12.203-52.389 12.336-52.175Q12.469-51.960 12.739-51.960",[3503],"stroke-width:0.240",[2039,3699,3700],{"transform":3692},[3489,3701],{"d":3702,"fill":3486,"stroke":3486,"className":3703,"style":3697},"M21.262-52.761L15.949-52.761Q15.871-52.768 15.822-52.817Q15.774-52.866 15.774-52.944Q15.774-53.014 15.821-53.065Q15.867-53.116 15.949-53.128L21.262-53.128Q21.336-53.116 21.383-53.065Q21.430-53.014 21.430-52.944Q21.430-52.866 21.381-52.817Q21.332-52.768 21.262-52.761M21.262-54.448L15.949-54.448Q15.871-54.456 15.822-54.505Q15.774-54.554 15.774-54.632Q15.774-54.702 15.821-54.753Q15.867-54.804 15.949-54.815L21.262-54.815Q21.336-54.804 21.383-54.753Q21.430-54.702 21.430-54.632Q21.430-54.554 21.381-54.505Q21.332-54.456 21.262-54.448",[3503],[2039,3705,3706],{"transform":3692},[3489,3707],{"d":3708,"fill":3486,"stroke":3486,"className":3709,"style":3697},"M25.506-51.784L22.713-51.784L22.713-52.081Q23.775-52.081 23.775-52.343L23.775-56.511Q23.346-56.296 22.666-56.296L22.666-56.593Q23.685-56.593 24.201-57.104L24.346-57.104Q24.420-57.085 24.439-57.007L24.439-52.343Q24.439-52.081 25.506-52.081",[3503],[2039,3711,3712],{"transform":3692},[3489,3713],{"d":3714,"fill":3486,"stroke":3486,"className":3715,"style":3697},"M26.986-50.378Q26.986-50.401 27.017-50.448Q27.310-50.710 27.476-51.077Q27.642-51.444 27.642-51.831L27.642-51.889Q27.514-51.784 27.346-51.784Q27.154-51.784 27.017-51.917Q26.881-52.050 26.881-52.249Q26.881-52.440 27.017-52.573Q27.154-52.706 27.346-52.706Q27.646-52.706 27.771-52.436Q27.896-52.167 27.896-51.831Q27.896-51.382 27.715-50.968Q27.533-50.554 27.193-50.257Q27.170-50.233 27.131-50.233Q27.084-50.233 27.035-50.278Q26.986-50.323 26.986-50.378",[3503],[2039,3717,3718],{"transform":3692},[3489,3719],{"d":3720,"fill":3486,"stroke":3486,"className":3721,"style":3697},"M33.468-51.960Q33.472-51.979 33.474-51.993Q33.476-52.007 33.476-52.030L34.070-54.401Q34.109-54.557 34.109-54.694Q34.109-54.843 34.056-54.950Q34.003-55.057 33.871-55.057Q33.691-55.057 33.572-54.888Q33.453-54.718 33.396-54.532Q33.339-54.346 33.269-54.057Q33.257-53.983 33.187-53.983L33.086-53.983Q33.050-53.983 33.023-54.018Q32.996-54.054 32.996-54.081L32.996-54.112Q33.082-54.444 33.175-54.686Q33.269-54.929 33.445-55.120Q33.621-55.311 33.886-55.311Q34.171-55.311 34.404-55.163Q34.636-55.014 34.703-54.761Q34.910-55.014 35.179-55.163Q35.449-55.311 35.765-55.311Q35.945-55.311 36.101-55.239Q36.257-55.167 36.351-55.030Q36.445-54.893 36.445-54.714Q36.445-54.499 36.312-54.341Q36.179-54.182 35.972-54.182Q35.839-54.182 35.746-54.266Q35.652-54.350 35.652-54.487Q35.652-54.663 35.773-54.796Q35.894-54.929 36.062-54.952Q35.929-55.057 35.750-55.057Q35.402-55.057 35.132-54.821Q34.863-54.585 34.668-54.225L34.109-51.991Q34.078-51.866 33.972-51.786Q33.867-51.706 33.742-51.706Q33.632-51.706 33.550-51.776Q33.468-51.846 33.468-51.960",[3503],[2039,3723,3724],{"transform":3692},[3489,3725],{"d":3726,"fill":3486,"stroke":3486,"className":3727,"style":3697},"M42.806-52.761L37.493-52.761Q37.415-52.768 37.366-52.817Q37.318-52.866 37.318-52.944Q37.318-53.014 37.365-53.065Q37.411-53.116 37.493-53.128L42.806-53.128Q42.880-53.116 42.927-53.065Q42.974-53.014 42.974-52.944Q42.974-52.866 42.925-52.817Q42.876-52.768 42.806-52.761M42.806-54.448L37.493-54.448Q37.415-54.456 37.366-54.505Q37.318-54.554 37.318-54.632Q37.318-54.702 37.365-54.753Q37.411-54.804 37.493-54.815L42.806-54.815Q42.880-54.804 42.927-54.753Q42.974-54.702 42.974-54.632Q42.974-54.554 42.925-54.505Q42.876-54.456 42.806-54.448",[3503],[2039,3729,3730],{"transform":3692},[3489,3731],{"d":3732,"fill":3486,"stroke":3486,"className":3733,"style":3697},"M44.296-52.663L44.233-52.663Q44.374-52.311 44.698-52.100Q45.022-51.889 45.409-51.889Q46.003-51.889 46.253-52.323Q46.503-52.757 46.503-53.393Q46.503-53.987 46.333-54.434Q46.163-54.882 45.663-54.882Q45.366-54.882 45.161-54.802Q44.956-54.721 44.854-54.630Q44.753-54.538 44.638-54.405Q44.522-54.272 44.472-54.257L44.401-54.257Q44.315-54.280 44.296-54.358L44.296-57.007Q44.327-57.104 44.401-57.104Q44.417-57.104 44.425-57.102Q44.433-57.100 44.440-57.096Q45.026-56.846 45.624-56.846Q46.206-56.846 46.823-57.104L46.847-57.104Q46.890-57.104 46.917-57.079Q46.944-57.054 46.944-57.014L46.944-56.936Q46.944-56.905 46.921-56.882Q46.624-56.530 46.202-56.333Q45.780-56.136 45.319-56.136Q44.972-56.136 44.593-56.241L44.593-54.745Q44.811-54.940 45.087-55.038Q45.362-55.136 45.663-55.136Q46.120-55.136 46.489-54.888Q46.858-54.639 47.065-54.235Q47.272-53.831 47.272-53.386Q47.272-52.897 47.017-52.489Q46.761-52.081 46.329-51.848Q45.897-51.616 45.409-51.616Q45.015-51.616 44.659-51.807Q44.304-51.999 44.093-52.333Q43.882-52.667 43.882-53.081Q43.882-53.261 43.999-53.374Q44.116-53.487 44.296-53.487Q44.413-53.487 44.505-53.434Q44.597-53.382 44.649-53.290Q44.702-53.198 44.702-53.081Q44.702-52.897 44.589-52.780Q44.476-52.663 44.296-52.663",[3503],[3489,3735],{"fill":3491,"d":3736},"M11.219-6.06v8.982",[3489,3738],{"stroke":3491,"d":3739},"m11.219 4.922 1.6-3.2-1.6 1.2-1.6-1.2",[2039,3741,3742,3748,3753,3758,3763,3768,3773],{"stroke":3491,"fontSize":3689},[2039,3743,3745],{"transform":3744},"translate(6.378 53.015)",[3489,3746],{"d":3695,"fill":3486,"stroke":3486,"className":3747,"style":3697},[3503],[2039,3749,3750],{"transform":3744},[3489,3751],{"d":3702,"fill":3486,"stroke":3486,"className":3752,"style":3697},[3503],[2039,3754,3755],{"transform":3744},[3489,3756],{"d":3708,"fill":3486,"stroke":3486,"className":3757,"style":3697},[3503],[2039,3759,3760],{"transform":3744},[3489,3761],{"d":3714,"fill":3486,"stroke":3486,"className":3762,"style":3697},[3503],[2039,3764,3765],{"transform":3744},[3489,3766],{"d":3720,"fill":3486,"stroke":3486,"className":3767,"style":3697},[3503],[2039,3769,3770],{"transform":3744},[3489,3771],{"d":3726,"fill":3486,"stroke":3486,"className":3772,"style":3697},[3503],[2039,3774,3775],{"transform":3744},[3489,3776],{"d":3777,"fill":3486,"stroke":3486,"className":3778,"style":3697},"M44.249-52.417Q44.440-52.143 44.796-52.016Q45.151-51.889 45.534-51.889Q45.870-51.889 46.079-52.075Q46.288-52.261 46.384-52.554Q46.479-52.846 46.479-53.159Q46.479-53.483 46.382-53.778Q46.284-54.073 46.071-54.257Q45.858-54.440 45.526-54.440L44.960-54.440Q44.929-54.440 44.899-54.470Q44.870-54.499 44.870-54.526L44.870-54.608Q44.870-54.643 44.899-54.669Q44.929-54.694 44.960-54.694L45.440-54.729Q45.726-54.729 45.923-54.934Q46.120-55.139 46.216-55.434Q46.311-55.729 46.311-56.007Q46.311-56.386 46.112-56.624Q45.913-56.862 45.534-56.862Q45.214-56.862 44.925-56.755Q44.636-56.647 44.472-56.425Q44.651-56.425 44.774-56.298Q44.897-56.171 44.897-55.999Q44.897-55.827 44.772-55.702Q44.647-55.577 44.472-55.577Q44.300-55.577 44.175-55.702Q44.050-55.827 44.050-55.999Q44.050-56.366 44.274-56.614Q44.499-56.862 44.839-56.983Q45.179-57.104 45.534-57.104Q45.882-57.104 46.245-56.983Q46.608-56.862 46.856-56.612Q47.104-56.362 47.104-56.007Q47.104-55.522 46.786-55.139Q46.468-54.757 45.991-54.585Q46.542-54.475 46.942-54.089Q47.343-53.702 47.343-53.167Q47.343-52.710 47.079-52.354Q46.815-51.999 46.394-51.807Q45.972-51.616 45.534-51.616Q45.124-51.616 44.731-51.751Q44.339-51.886 44.073-52.171Q43.808-52.456 43.808-52.874Q43.808-53.069 43.940-53.198Q44.073-53.327 44.265-53.327Q44.390-53.327 44.493-53.268Q44.597-53.210 44.659-53.104Q44.722-52.999 44.722-52.874Q44.722-52.679 44.587-52.548Q44.452-52.417 44.249-52.417",[3503],[3489,3780],{"fill":3491,"d":3781},"M11.219 28.084v8.981",[3489,3783],{"stroke":3491,"d":3784},"m11.219 39.065 1.6-3.2-1.6 1.2-1.6-1.2",[2039,3786,3787,3793,3798,3803,3808,3813,3818],{"stroke":3491,"fontSize":3689},[2039,3788,3790],{"transform":3789},"translate(6.378 87.158)",[3489,3791],{"d":3695,"fill":3486,"stroke":3486,"className":3792,"style":3697},[3503],[2039,3794,3795],{"transform":3789},[3489,3796],{"d":3702,"fill":3486,"stroke":3486,"className":3797,"style":3697},[3503],[2039,3799,3800],{"transform":3789},[3489,3801],{"d":3708,"fill":3486,"stroke":3486,"className":3802,"style":3697},[3503],[2039,3804,3805],{"transform":3789},[3489,3806],{"d":3714,"fill":3486,"stroke":3486,"className":3807,"style":3697},[3503],[2039,3809,3810],{"transform":3789},[3489,3811],{"d":3720,"fill":3486,"stroke":3486,"className":3812,"style":3697},[3503],[2039,3814,3815],{"transform":3789},[3489,3816],{"d":3726,"fill":3486,"stroke":3486,"className":3817,"style":3697},[3503],[2039,3819,3820],{"transform":3789},[3489,3821],{"d":3822,"fill":3486,"stroke":3486,"className":3823,"style":3697},"M47.042-51.784L43.882-51.784L43.882-51.991Q43.882-52.018 43.905-52.050L45.257-53.448Q45.636-53.835 45.884-54.124Q46.132-54.413 46.306-54.770Q46.479-55.128 46.479-55.518Q46.479-55.866 46.347-56.159Q46.214-56.452 45.960-56.630Q45.706-56.807 45.351-56.807Q44.991-56.807 44.700-56.612Q44.409-56.417 44.265-56.089L44.319-56.089Q44.503-56.089 44.628-55.968Q44.753-55.846 44.753-55.655Q44.753-55.475 44.628-55.346Q44.503-55.218 44.319-55.218Q44.140-55.218 44.011-55.346Q43.882-55.475 43.882-55.655Q43.882-56.057 44.102-56.393Q44.323-56.729 44.688-56.917Q45.054-57.104 45.456-57.104Q45.936-57.104 46.352-56.917Q46.769-56.729 47.020-56.368Q47.272-56.007 47.272-55.518Q47.272-55.159 47.118-54.856Q46.964-54.554 46.712-54.294Q46.460-54.034 46.110-53.749Q45.761-53.464 45.593-53.311L44.663-52.471L45.378-52.471Q46.753-52.471 46.792-52.511Q46.862-52.589 46.905-52.774Q46.948-52.960 46.991-53.249L47.272-53.249",[3503],[3489,3825],{"fill":3491,"d":3826},"M11.219 62.227v8.981",[3489,3828],{"stroke":3491,"d":3829},"m11.219 73.208 1.6-3.2-1.6 1.2-1.6-1.2",[2039,3831,3832,3838,3843,3848,3853,3858,3863],{"stroke":3491,"fontSize":3689},[2039,3833,3835],{"transform":3834},"translate(6.378 121.302)",[3489,3836],{"d":3695,"fill":3486,"stroke":3486,"className":3837,"style":3697},[3503],[2039,3839,3840],{"transform":3834},[3489,3841],{"d":3702,"fill":3486,"stroke":3486,"className":3842,"style":3697},[3503],[2039,3844,3845],{"transform":3834},[3489,3846],{"d":3708,"fill":3486,"stroke":3486,"className":3847,"style":3697},[3503],[2039,3849,3850],{"transform":3834},[3489,3851],{"d":3714,"fill":3486,"stroke":3486,"className":3852,"style":3697},[3503],[2039,3854,3855],{"transform":3834},[3489,3856],{"d":3720,"fill":3486,"stroke":3486,"className":3857,"style":3697},[3503],[2039,3859,3860],{"transform":3834},[3489,3861],{"d":3726,"fill":3486,"stroke":3486,"className":3862,"style":3697},[3503],[2039,3864,3865],{"transform":3834},[3489,3866],{"d":3867,"fill":3486,"stroke":3486,"className":3868,"style":3697},"M47.050-51.784L44.257-51.784L44.257-52.081Q45.319-52.081 45.319-52.343L45.319-56.511Q44.890-56.296 44.210-56.296L44.210-56.593Q45.229-56.593 45.745-57.104L45.890-57.104Q45.964-57.085 45.983-57.007L45.983-52.343Q45.983-52.081 47.050-52.081",[3503],[3489,3870],{"fill":3491,"d":3871},"M11.219 96.37v8.582",[3489,3873],{"stroke":3491,"d":3874},"m11.219 106.952 1.6-3.2-1.6 1.2-1.6-1.2",[2039,3876,3877,3883,3888,3894,3899,3904,3909],{"stroke":3491,"fontSize":3689},[2039,3878,3880],{"transform":3879},"translate(6.378 155.245)",[3489,3881],{"d":3695,"fill":3486,"stroke":3486,"className":3882,"style":3697},[3503],[2039,3884,3885],{"transform":3879},[3489,3886],{"d":3702,"fill":3486,"stroke":3486,"className":3887,"style":3697},[3503],[2039,3889,3890],{"transform":3879},[3489,3891],{"d":3892,"fill":3486,"stroke":3486,"className":3893,"style":3697},"M25.498-51.784L22.338-51.784L22.338-51.991Q22.338-52.018 22.361-52.050L23.713-53.448Q24.092-53.835 24.340-54.124Q24.588-54.413 24.762-54.770Q24.935-55.128 24.935-55.518Q24.935-55.866 24.803-56.159Q24.670-56.452 24.416-56.630Q24.162-56.807 23.807-56.807Q23.447-56.807 23.156-56.612Q22.865-56.417 22.721-56.089L22.775-56.089Q22.959-56.089 23.084-55.968Q23.209-55.846 23.209-55.655Q23.209-55.475 23.084-55.346Q22.959-55.218 22.775-55.218Q22.596-55.218 22.467-55.346Q22.338-55.475 22.338-55.655Q22.338-56.057 22.558-56.393Q22.779-56.729 23.144-56.917Q23.510-57.104 23.912-57.104Q24.392-57.104 24.808-56.917Q25.224-56.729 25.476-56.368Q25.728-56.007 25.728-55.518Q25.728-55.159 25.574-54.856Q25.420-54.554 25.168-54.294Q24.916-54.034 24.566-53.749Q24.217-53.464 24.049-53.311L23.119-52.471L23.834-52.471Q25.209-52.471 25.248-52.511Q25.318-52.589 25.361-52.774Q25.404-52.960 25.447-53.249L25.728-53.249",[3503],[2039,3895,3896],{"transform":3879},[3489,3897],{"d":3714,"fill":3486,"stroke":3486,"className":3898,"style":3697},[3503],[2039,3900,3901],{"transform":3879},[3489,3902],{"d":3720,"fill":3486,"stroke":3486,"className":3903,"style":3697},[3503],[2039,3905,3906],{"transform":3879},[3489,3907],{"d":3726,"fill":3486,"stroke":3486,"className":3908,"style":3697},[3503],[2039,3910,3911],{"transform":3879},[3489,3912],{"d":3913,"fill":3486,"stroke":3486,"className":3914,"style":3697},"M45.577-51.616Q44.874-51.616 44.474-52.016Q44.073-52.417 43.929-53.026Q43.784-53.636 43.784-54.335Q43.784-54.858 43.854-55.321Q43.925-55.784 44.118-56.196Q44.311-56.608 44.669-56.856Q45.026-57.104 45.577-57.104Q46.128-57.104 46.485-56.856Q46.843-56.608 47.034-56.198Q47.226-55.788 47.296-55.319Q47.366-54.850 47.366-54.335Q47.366-53.636 47.224-53.028Q47.081-52.421 46.681-52.018Q46.280-51.616 45.577-51.616M45.577-51.874Q46.050-51.874 46.282-52.309Q46.515-52.745 46.569-53.284Q46.624-53.823 46.624-54.464Q46.624-55.460 46.440-56.153Q46.257-56.846 45.577-56.846Q45.210-56.846 44.989-56.608Q44.769-56.370 44.673-56.013Q44.577-55.655 44.552-55.284Q44.526-54.913 44.526-54.464Q44.526-53.823 44.581-53.284Q44.636-52.745 44.868-52.309Q45.101-51.874 45.577-51.874",[3503],[2039,3916,3917],{"fill":3639,"stroke":3639},[2039,3918,3919,3926,3932,3938,3944],{"fill":3639,"stroke":3491,"fontSize":3689},[2039,3920,3922],{"transform":3921},"translate(-53.904 91.053)",[3489,3923],{"d":3924,"fill":3639,"stroke":3639,"className":3925,"style":3697},"M11.457-63.038Q11.457-63.518 11.690-63.934Q11.922-64.350 12.332-64.600Q12.742-64.850 13.219-64.850Q13.949-64.850 14.348-64.409Q14.746-63.968 14.746-63.237Q14.746-63.132 14.653-63.108L12.203-63.108L12.203-63.038Q12.203-62.628 12.324-62.272Q12.446-61.917 12.717-61.700Q12.989-61.483 13.418-61.483Q13.781-61.483 14.078-61.712Q14.375-61.940 14.477-62.292Q14.485-62.339 14.571-62.354L14.653-62.354Q14.746-62.327 14.746-62.245Q14.746-62.237 14.739-62.206Q14.676-61.979 14.537-61.796Q14.399-61.612 14.207-61.479Q14.016-61.346 13.797-61.276Q13.578-61.206 13.340-61.206Q12.969-61.206 12.631-61.343Q12.293-61.479 12.026-61.731Q11.758-61.983 11.608-62.323Q11.457-62.663 11.457-63.038M12.211-63.346L14.172-63.346Q14.172-63.651 14.071-63.942Q13.969-64.233 13.752-64.415Q13.535-64.596 13.219-64.596Q12.918-64.596 12.688-64.409Q12.457-64.221 12.334-63.930Q12.211-63.639 12.211-63.346M17.035-61.315L15.813-64.171Q15.731-64.346 15.586-64.391Q15.442-64.436 15.172-64.436L15.172-64.733L16.883-64.733L16.883-64.436Q16.461-64.436 16.461-64.253Q16.461-64.218 16.477-64.171L17.422-61.979L18.262-63.956Q18.301-64.034 18.301-64.124Q18.301-64.264 18.196-64.350Q18.090-64.436 17.949-64.436L17.949-64.733L19.301-64.733L19.301-64.436Q18.778-64.436 18.563-63.956L17.438-61.315Q17.375-61.206 17.270-61.206L17.203-61.206Q17.090-61.206 17.035-61.315",[3503],[2039,3927,3928],{"transform":3921},[3489,3929],{"d":3930,"fill":3639,"stroke":3639,"className":3931,"style":3697},"M19.485-63.038Q19.485-63.518 19.718-63.934Q19.950-64.350 20.360-64.600Q20.770-64.850 21.247-64.850Q21.977-64.850 22.376-64.409Q22.774-63.968 22.774-63.237Q22.774-63.132 22.681-63.108L20.231-63.108L20.231-63.038Q20.231-62.628 20.352-62.272Q20.474-61.917 20.745-61.700Q21.017-61.483 21.446-61.483Q21.809-61.483 22.106-61.712Q22.403-61.940 22.505-62.292Q22.513-62.339 22.599-62.354L22.681-62.354Q22.774-62.327 22.774-62.245Q22.774-62.237 22.767-62.206Q22.704-61.979 22.565-61.796Q22.427-61.612 22.235-61.479Q22.044-61.346 21.825-61.276Q21.606-61.206 21.368-61.206Q20.997-61.206 20.659-61.343Q20.321-61.479 20.054-61.731Q19.786-61.983 19.636-62.323Q19.485-62.663 19.485-63.038M20.239-63.346L22.200-63.346Q22.200-63.651 22.099-63.942Q21.997-64.233 21.780-64.415Q21.563-64.596 21.247-64.596Q20.946-64.596 20.716-64.409Q20.485-64.221 20.362-63.930Q20.239-63.639 20.239-63.346M25.270-61.284L23.290-61.284L23.290-61.581Q23.559-61.581 23.727-61.626Q23.895-61.671 23.895-61.843L23.895-63.979Q23.895-64.194 23.833-64.290Q23.770-64.386 23.653-64.407Q23.536-64.429 23.290-64.429L23.290-64.725L24.458-64.811L24.458-64.026Q24.536-64.237 24.688-64.423Q24.841-64.608 25.040-64.710Q25.239-64.811 25.466-64.811Q25.712-64.811 25.903-64.667Q26.095-64.522 26.095-64.292Q26.095-64.136 25.989-64.026Q25.884-63.917 25.727-63.917Q25.571-63.917 25.462-64.026Q25.352-64.136 25.352-64.292Q25.352-64.452 25.458-64.557Q25.134-64.557 24.919-64.329Q24.704-64.100 24.608-63.761Q24.513-63.421 24.513-63.116L24.513-61.843Q24.513-61.675 24.739-61.628Q24.966-61.581 25.270-61.581L25.270-61.284M26.993-59.987Q27.106-59.909 27.282-59.909Q27.571-59.909 27.792-60.122Q28.013-60.335 28.138-60.636L28.427-61.284L27.153-64.171Q27.071-64.346 26.927-64.391Q26.782-64.436 26.513-64.436L26.513-64.733L28.231-64.733L28.231-64.436Q27.809-64.436 27.809-64.253Q27.809-64.241 27.825-64.171L28.763-62.046L29.595-63.956Q29.634-64.046 29.634-64.124Q29.634-64.264 29.532-64.350Q29.431-64.436 29.290-64.436L29.290-64.733L30.642-64.733L30.642-64.436Q30.388-64.436 30.194-64.311Q30.001-64.186 29.895-63.956L28.450-60.636Q28.337-60.382 28.171-60.159Q28.005-59.936 27.776-59.794Q27.548-59.651 27.282-59.651Q26.985-59.651 26.745-59.843Q26.505-60.034 26.505-60.323Q26.505-60.479 26.610-60.581Q26.716-60.682 26.864-60.682Q26.970-60.682 27.050-60.636Q27.130-60.589 27.177-60.511Q27.224-60.432 27.224-60.323Q27.224-60.202 27.163-60.114Q27.102-60.026 26.993-59.987",[3503],[2039,3933,3934],{"transform":3921},[3489,3935],{"d":3936,"fill":3639,"stroke":3639,"className":3937,"style":3697},"M14.886-50.350L14.909-50.456Q14.917-50.507 14.999-50.526Q15.605-50.526 15.605-50.647Q15.659-50.784 15.671-50.831L15.991-52.120Q15.527-51.706 15.054-51.706Q14.698-51.706 14.429-51.886Q14.159-52.065 14.019-52.360Q13.878-52.655 13.878-53.014Q13.878-53.401 14.040-53.815Q14.202-54.229 14.486-54.567Q14.769-54.905 15.138-55.108Q15.507-55.311 15.909-55.311Q16.159-55.311 16.376-55.173Q16.593-55.034 16.710-54.807Q16.773-54.917 16.980-55.114Q17.187-55.311 17.284-55.311Q17.331-55.311 17.364-55.276Q17.398-55.241 17.398-55.190L16.292-50.776Q16.280-50.737 16.261-50.616Q16.261-50.526 16.765-50.526Q16.870-50.499 16.870-50.401L16.839-50.296Q16.831-50.253 16.749-50.233L14.984-50.233Q14.941-50.233 14.913-50.274Q14.886-50.315 14.886-50.350M15.070-51.960Q15.370-51.960 15.650-52.167Q15.929-52.374 16.124-52.663L16.558-54.393Q16.519-54.573 16.433-54.723Q16.347-54.874 16.210-54.966Q16.073-55.057 15.894-55.057Q15.558-55.057 15.286-54.776Q15.015-54.495 14.855-54.120Q14.730-53.800 14.632-53.380Q14.534-52.960 14.534-52.679Q14.534-52.389 14.667-52.175Q14.800-51.960 15.070-51.960",[3503],[2039,3939,3940],{"transform":3921},[3489,3941],{"d":3942,"fill":3639,"stroke":3639,"className":3943,"style":3697},"M23.593-52.761L18.280-52.761Q18.202-52.768 18.153-52.817Q18.105-52.866 18.105-52.944Q18.105-53.014 18.152-53.065Q18.198-53.116 18.280-53.128L23.593-53.128Q23.667-53.116 23.714-53.065Q23.761-53.014 23.761-52.944Q23.761-52.866 23.712-52.817Q23.663-52.768 23.593-52.761M23.593-54.448L18.280-54.448Q18.202-54.456 18.153-54.505Q18.105-54.554 18.105-54.632Q18.105-54.702 18.152-54.753Q18.198-54.804 18.280-54.815L23.593-54.815Q23.667-54.804 23.714-54.753Q23.761-54.702 23.761-54.632Q23.761-54.554 23.712-54.505Q23.663-54.456 23.593-54.448",[3503],[2039,3945,3946],{"transform":3921},[3489,3947],{"d":3948,"fill":3639,"stroke":3639,"className":3949,"style":3697},"M27.837-51.784L25.044-51.784L25.044-52.081Q26.106-52.081 26.106-52.343L26.106-56.511Q25.677-56.296 24.997-56.296L24.997-56.593Q26.016-56.593 26.532-57.104L26.677-57.104Q26.751-57.085 26.770-57.007L26.770-52.343Q26.770-52.081 27.837-52.081",[3503],[3951,3952,3955,3956,3971],"figcaption",{"className":3953},[3954],"tikz-cap","Fibonacci inputs are the worst case: every quotient is ",[390,3957,3959],{"className":3958},[393],[390,3960,3962],{"className":3961,"ariaHidden":398},[397],[390,3963,3965,3968],{"className":3964},[402],[390,3966],{"className":3967,"style":836},[406],[390,3969,895],{"className":3970},[411],", so the pair steps down through every Fibonacci number one rung at a time.",[381,3973,3974,3975,4038,4039,4077,4078,4093],{},"Each iteration simply replaces the pair by ",[390,3976,3978],{"className":3977},[393],[390,3979,3981,4026],{"className":3980,"ariaHidden":398},[397],[390,3982,3984,3987,3990,3993,3996,3999,4002,4005,4008,4011,4020,4023],{"className":3983},[402],[390,3985],{"className":3986,"style":554},[406],[390,3988,702],{"className":3989},[701],[390,3991,671],{"className":3992},[411,412],[390,3994,710],{"className":3995},[709],[390,3997,1102],{"className":3998},[561],[390,4000],{"className":4001,"style":714},[561],[390,4003,489],{"className":4004},[411,412],[390,4006],{"className":4007,"style":1112},[561],[390,4009],{"className":4010,"style":431},[561],[390,4012,4014],{"className":4013},[1119],[390,4015,4017],{"className":4016},[411],[390,4018,1126],{"className":4019},[411,696],[390,4021],{"className":4022,"style":1112},[561],[390,4024],{"className":4025,"style":431},[561],[390,4027,4029,4032,4035],{"className":4028},[402],[390,4030],{"className":4031,"style":554},[406],[390,4033,671],{"className":4034},[411,412],[390,4036,722],{"className":4037},[721]," and recurses; tracing\n",[390,4040,4042],{"className":4041},[393],[390,4043,4045],{"className":4044,"ariaHidden":398},[397],[390,4046,4048,4051,4057,4060,4064,4067,4070,4074],{"className":4047},[402],[390,4049],{"className":4050,"style":554},[406],[390,4052,4054],{"className":4053},[692],[390,4055,697],{"className":4056},[411,696],[390,4058,702],{"className":4059},[701],[390,4061,4063],{"className":4062},[411],"48",[390,4065,710],{"className":4066},[709],[390,4068],{"className":4069,"style":714},[561],[390,4071,4073],{"className":4072},[411],"18",[390,4075,722],{"className":4076},[721]," shows the second argument collapsing to ",[390,4079,4081],{"className":4080},[393],[390,4082,4084],{"className":4083,"ariaHidden":398},[397],[390,4085,4087,4090],{"className":4086},[402],[390,4088],{"className":4089,"style":836},[406],[390,4091,757],{"className":4092},[411]," in three steps.",[3472,4095,4097,4441],{"className":4096},[3475,3476],[3478,4098,4102],{"xmlns":3480,"width":4099,"height":4100,"viewBox":4101},"214.162","247.004","-75 -75 160.621 185.253",[2039,4103,4104,4181,4184,4211,4214,4239,4242,4267,4310,4313,4316,4356,4359,4362,4398,4401,4404],{"stroke":3486,"style":3487},[2039,4105,4106],{"fill":3639,"stroke":3639},[2039,4107,4108,4115,4121,4127,4133,4139,4145,4151,4157,4163,4169,4175],{"fill":3639,"stroke":3491,"fontSize":3689},[2039,4109,4111],{"transform":4110},"translate(-38.893 -27.875)",[3489,4112],{"d":4113,"fill":3639,"stroke":3639,"className":4114,"style":3697},"M-17.462-34Q-18.075-34.457-18.477-35.092Q-18.880-35.726-19.075-36.472Q-19.270-37.219-19.270-37.992Q-19.270-38.765-19.075-39.512Q-18.880-40.258-18.477-40.892Q-18.075-41.527-17.462-41.984Q-17.450-41.988-17.442-41.990Q-17.434-41.992-17.423-41.992L-17.345-41.992Q-17.306-41.992-17.280-41.965Q-17.255-41.937-17.255-41.894Q-17.255-41.844-17.286-41.824Q-17.794-41.371-18.116-40.748Q-18.438-40.125-18.579-39.429Q-18.720-38.734-18.720-37.992Q-18.720-37.258-18.581-36.558Q-18.442-35.859-18.118-35.234Q-17.794-34.609-17.286-34.160Q-17.255-34.140-17.255-34.090Q-17.255-34.047-17.280-34.019Q-17.306-33.992-17.345-33.992L-17.423-33.992Q-17.431-33.996-17.440-33.998Q-17.450-34-17.462-34",[3503],[2039,4116,4117],{"transform":4110},[3489,4118],{"d":4119,"fill":3639,"stroke":3639,"className":4120,"style":3697},"M-15.269-35.914Q-15.625-35.914-15.894-36.094Q-16.164-36.273-16.304-36.568Q-16.445-36.863-16.445-37.222Q-16.445-37.609-16.283-38.023Q-16.121-38.437-15.837-38.775Q-15.554-39.113-15.185-39.316Q-14.816-39.519-14.414-39.519Q-13.921-39.519-13.644-39.070Q-13.613-39.203-13.509-39.285Q-13.406-39.367-13.277-39.367Q-13.164-39.367-13.084-39.297Q-13.003-39.226-13.003-39.113Q-13.003-39.086-13.019-39.023L-13.574-36.824Q-13.613-36.578-13.613-36.527Q-13.613-36.168-13.367-36.168Q-13.222-36.168-13.121-36.275Q-13.019-36.383-12.955-36.537Q-12.890-36.691-12.841-36.881Q-12.793-37.070-12.773-37.168Q-12.746-37.238-12.683-37.238L-12.582-37.238Q-12.543-37.238-12.517-37.205Q-12.492-37.172-12.492-37.144Q-12.492-37.129-12.500-37.113Q-12.613-36.621-12.812-36.267Q-13.011-35.914-13.382-35.914Q-13.664-35.914-13.890-36.056Q-14.117-36.199-14.199-36.457Q-14.421-36.215-14.695-36.064Q-14.968-35.914-15.269-35.914M-15.253-36.168Q-15.043-36.168-14.834-36.281Q-14.625-36.394-14.455-36.568Q-14.285-36.742-14.156-36.937Q-14.168-36.922-14.177-36.908Q-14.187-36.894-14.199-36.879L-13.765-38.601Q-13.804-38.781-13.890-38.931Q-13.976-39.082-14.113-39.174Q-14.250-39.265-14.429-39.265Q-14.765-39.265-15.037-38.984Q-15.308-38.703-15.468-38.328Q-15.593-38.008-15.691-37.588Q-15.789-37.168-15.789-36.887Q-15.789-36.597-15.656-36.383Q-15.523-36.168-15.253-36.168M-11.437-34.586Q-11.437-34.609-11.406-34.656Q-11.113-34.918-10.947-35.285Q-10.781-35.652-10.781-36.039L-10.781-36.097Q-10.910-35.992-11.078-35.992Q-11.269-35.992-11.406-36.125Q-11.543-36.258-11.543-36.457Q-11.543-36.648-11.406-36.781Q-11.269-36.914-11.078-36.914Q-10.777-36.914-10.652-36.644Q-10.527-36.375-10.527-36.039Q-10.527-35.590-10.709-35.176Q-10.890-34.762-11.230-34.465Q-11.253-34.441-11.293-34.441Q-11.339-34.441-11.388-34.486Q-11.437-34.531-11.437-34.586",[3503],[2039,4122,4123],{"transform":4110},[3489,4124],{"d":4125,"fill":3639,"stroke":3639,"className":4126,"style":3697},"M-6.976-35.914Q-7.316-35.914-7.576-36.092Q-7.835-36.269-7.970-36.564Q-8.105-36.859-8.105-37.207Q-8.105-37.469-8.039-37.726L-7.289-40.754Q-7.277-40.801-7.250-40.902Q-7.222-41.004-7.222-41.054Q-7.222-41.160-7.718-41.160Q-7.816-41.191-7.816-41.289L-7.793-41.390Q-7.785-41.437-7.703-41.457L-6.601-41.543Q-6.558-41.543-6.519-41.512Q-6.480-41.480-6.480-41.426L-7.054-39.105Q-6.597-39.519-6.121-39.519Q-5.757-39.519-5.492-39.340Q-5.226-39.160-5.085-38.859Q-4.945-38.558-4.945-38.207Q-4.945-37.683-5.226-37.144Q-5.507-36.605-5.974-36.260Q-6.441-35.914-6.976-35.914M-6.960-36.168Q-6.625-36.168-6.345-36.459Q-6.066-36.750-5.929-37.105Q-5.804-37.398-5.703-37.832Q-5.601-38.265-5.601-38.543Q-5.601-38.828-5.734-39.047Q-5.867-39.265-6.136-39.265Q-6.347-39.265-6.543-39.164Q-6.738-39.062-6.898-38.906Q-7.058-38.750-7.191-38.558L-7.418-37.687Q-7.468-37.453-7.498-37.271Q-7.527-37.090-7.527-36.937Q-7.527-36.637-7.386-36.402Q-7.246-36.168-6.960-36.168",[3503],[2039,4128,4129],{"transform":4110},[3489,4130],{"d":4131,"fill":3639,"stroke":3639,"className":4132,"style":3697},"M-4.203-33.992L-4.285-33.992Q-4.321-33.992-4.346-34.021Q-4.371-34.051-4.371-34.090Q-4.371-34.140-4.340-34.160Q-3.953-34.496-3.670-34.945Q-3.387-35.394-3.221-35.894Q-3.055-36.394-2.981-36.912Q-2.907-37.429-2.907-37.992Q-2.907-38.562-2.981-39.078Q-3.055-39.594-3.221-40.090Q-3.387-40.586-3.666-41.033Q-3.946-41.480-4.340-41.824Q-4.371-41.844-4.371-41.894Q-4.371-41.933-4.346-41.963Q-4.321-41.992-4.285-41.992L-4.203-41.992Q-4.192-41.992-4.182-41.990Q-4.172-41.988-4.164-41.984Q-3.551-41.527-3.149-40.892Q-2.746-40.258-2.551-39.512Q-2.356-38.765-2.356-37.992Q-2.356-37.219-2.551-36.472Q-2.746-35.726-3.149-35.092Q-3.551-34.457-4.164-34Q-4.176-34-4.184-33.998Q-4.192-33.996-4.203-33.992",[3503],[2039,4134,4135],{"transform":4110},[3489,4136],{"d":4137,"fill":3639,"stroke":3639,"className":4138,"style":3697},"M7.814-37.808L1.470-37.808Q1.396-37.808 1.345-37.865Q1.295-37.922 1.295-37.992Q1.295-38.062 1.342-38.119Q1.388-38.176 1.470-38.176L7.814-38.176Q7.361-38.504 7.064-38.971Q6.767-39.437 6.662-39.976Q6.662-40.078 6.760-40.105L6.927-40.105Q7.010-40.086 7.029-40Q7.158-39.324 7.638-38.806Q8.119-38.289 8.783-38.097Q8.845-38.074 8.845-37.992Q8.845-37.910 8.783-37.887Q8.119-37.699 7.638-37.179Q7.158-36.660 7.029-35.984Q7.010-35.898 6.927-35.879L6.760-35.879Q6.662-35.906 6.662-36.008Q6.736-36.375 6.894-36.707Q7.052-37.039 7.285-37.316Q7.517-37.594 7.814-37.808",[3503],[2039,4140,4141],{"transform":4110},[3489,4142],{"d":4143,"fill":3639,"stroke":3639,"className":4144,"style":3697},"M14.301-34Q13.688-34.457 13.286-35.092Q12.883-35.726 12.688-36.472Q12.493-37.219 12.493-37.992Q12.493-38.765 12.688-39.512Q12.883-40.258 13.286-40.892Q13.688-41.527 14.301-41.984Q14.313-41.988 14.321-41.990Q14.329-41.992 14.340-41.992L14.418-41.992Q14.457-41.992 14.483-41.965Q14.508-41.937 14.508-41.894Q14.508-41.844 14.477-41.824Q13.969-41.371 13.647-40.748Q13.325-40.125 13.184-39.429Q13.043-38.734 13.043-37.992Q13.043-37.258 13.182-36.558Q13.321-35.859 13.645-35.234Q13.969-34.609 14.477-34.160Q14.508-34.140 14.508-34.090Q14.508-34.047 14.483-34.019Q14.457-33.992 14.418-33.992L14.340-33.992Q14.332-33.996 14.323-33.998Q14.313-34 14.301-34",[3503],[2039,4146,4147],{"transform":4110},[3489,4148],{"d":4149,"fill":3639,"stroke":3639,"className":4150,"style":3697},"M16.493-35.914Q16.153-35.914 15.893-36.092Q15.634-36.269 15.499-36.564Q15.364-36.859 15.364-37.207Q15.364-37.469 15.430-37.726L16.180-40.754Q16.192-40.801 16.219-40.902Q16.247-41.004 16.247-41.054Q16.247-41.160 15.751-41.160Q15.653-41.191 15.653-41.289L15.677-41.390Q15.684-41.437 15.766-41.457L16.868-41.543Q16.911-41.543 16.950-41.512Q16.989-41.480 16.989-41.426L16.415-39.105Q16.872-39.519 17.348-39.519Q17.712-39.519 17.977-39.340Q18.243-39.160 18.384-38.859Q18.524-38.558 18.524-38.207Q18.524-37.683 18.243-37.144Q17.962-36.605 17.495-36.260Q17.028-35.914 16.493-35.914M16.509-36.168Q16.844-36.168 17.124-36.459Q17.403-36.750 17.540-37.105Q17.665-37.398 17.766-37.832Q17.868-38.265 17.868-38.543Q17.868-38.828 17.735-39.047Q17.602-39.265 17.333-39.265Q17.122-39.265 16.927-39.164Q16.731-39.062 16.571-38.906Q16.411-38.750 16.278-38.558L16.052-37.687Q16.001-37.453 15.971-37.271Q15.942-37.090 15.942-36.937Q15.942-36.637 16.083-36.402Q16.223-36.168 16.509-36.168M19.446-34.586Q19.446-34.609 19.477-34.656Q19.770-34.918 19.936-35.285Q20.102-35.652 20.102-36.039L20.102-36.097Q19.973-35.992 19.805-35.992Q19.614-35.992 19.477-36.125Q19.341-36.258 19.341-36.457Q19.341-36.648 19.477-36.781Q19.614-36.914 19.805-36.914Q20.106-36.914 20.231-36.644Q20.356-36.375 20.356-36.039Q20.356-35.590 20.175-35.176Q19.993-34.762 19.653-34.465Q19.630-34.441 19.591-34.441Q19.544-34.441 19.495-34.486Q19.446-34.531 19.446-34.586",[3503],[2039,4152,4153],{"transform":4110},[3489,4154],{"d":4155,"fill":3639,"stroke":3639,"className":4156,"style":3697},"M26.741-35.914Q26.385-35.914 26.116-36.094Q25.846-36.273 25.706-36.568Q25.565-36.863 25.565-37.222Q25.565-37.609 25.727-38.023Q25.889-38.437 26.173-38.775Q26.456-39.113 26.825-39.316Q27.194-39.519 27.596-39.519Q28.089-39.519 28.366-39.070Q28.397-39.203 28.501-39.285Q28.604-39.367 28.733-39.367Q28.846-39.367 28.926-39.297Q29.007-39.226 29.007-39.113Q29.007-39.086 28.991-39.023L28.436-36.824Q28.397-36.578 28.397-36.527Q28.397-36.168 28.643-36.168Q28.788-36.168 28.889-36.275Q28.991-36.383 29.055-36.537Q29.120-36.691 29.169-36.881Q29.217-37.070 29.237-37.168Q29.264-37.238 29.327-37.238L29.428-37.238Q29.467-37.238 29.493-37.205Q29.518-37.172 29.518-37.144Q29.518-37.129 29.510-37.113Q29.397-36.621 29.198-36.267Q28.999-35.914 28.628-35.914Q28.346-35.914 28.120-36.056Q27.893-36.199 27.811-36.457Q27.589-36.215 27.315-36.064Q27.042-35.914 26.741-35.914M26.757-36.168Q26.967-36.168 27.176-36.281Q27.385-36.394 27.555-36.568Q27.725-36.742 27.854-36.937Q27.842-36.922 27.833-36.908Q27.823-36.894 27.811-36.879L28.245-38.601Q28.206-38.781 28.120-38.931Q28.034-39.082 27.897-39.174Q27.760-39.265 27.581-39.265Q27.245-39.265 26.973-38.984Q26.702-38.703 26.542-38.328Q26.417-38.008 26.319-37.588Q26.221-37.168 26.221-36.887Q26.221-36.597 26.354-36.383Q26.487-36.168 26.757-36.168",[3503],[2039,4158,4159],{"transform":4110},[3489,4160],{"d":4161,"fill":3639,"stroke":3639,"className":4162,"style":3697},"M34.281-35.992L32.425-35.992L32.425-36.289Q32.699-36.289 32.867-36.336Q33.035-36.383 33.035-36.551L33.035-38.687Q33.035-38.902 32.972-38.998Q32.910-39.094 32.791-39.115Q32.672-39.137 32.425-39.137L32.425-39.433L33.617-39.519L33.617-38.785Q33.730-39 33.924-39.168Q34.117-39.336 34.355-39.428Q34.593-39.519 34.847-39.519Q35.808-39.519 35.984-38.808Q36.168-39.137 36.496-39.328Q36.824-39.519 37.203-39.519Q38.379-39.519 38.379-38.441L38.379-36.551Q38.379-36.383 38.547-36.336Q38.715-36.289 38.984-36.289L38.984-35.992L37.129-35.992L37.129-36.289Q37.402-36.289 37.570-36.334Q37.738-36.379 37.738-36.551L37.738-38.426Q37.738-38.812 37.613-39.039Q37.488-39.265 37.136-39.265Q36.832-39.265 36.576-39.103Q36.320-38.941 36.172-38.672Q36.023-38.402 36.023-38.105L36.023-36.551Q36.023-36.383 36.193-36.336Q36.363-36.289 36.633-36.289L36.633-35.992L34.777-35.992L34.777-36.289Q35.050-36.289 35.218-36.336Q35.386-36.383 35.386-36.551L35.386-38.426Q35.386-38.812 35.261-39.039Q35.136-39.265 34.785-39.265Q34.480-39.265 34.224-39.103Q33.968-38.941 33.820-38.672Q33.672-38.402 33.672-38.105L33.672-36.551Q33.672-36.383 33.842-36.336Q34.011-36.289 34.281-36.289L34.281-35.992M39.429-37.687Q39.429-38.191 39.685-38.623Q39.941-39.054 40.377-39.306Q40.812-39.558 41.312-39.558Q41.699-39.558 42.041-39.414Q42.383-39.269 42.644-39.008Q42.906-38.746 43.049-38.410Q43.191-38.074 43.191-37.687Q43.191-37.195 42.927-36.785Q42.664-36.375 42.234-36.144Q41.804-35.914 41.312-35.914Q40.820-35.914 40.386-36.146Q39.953-36.379 39.691-36.787Q39.429-37.195 39.429-37.687M41.312-36.191Q41.769-36.191 42.021-36.414Q42.273-36.637 42.361-36.988Q42.449-37.340 42.449-37.785Q42.449-38.215 42.355-38.553Q42.261-38.890 42.008-39.097Q41.754-39.304 41.312-39.304Q40.664-39.304 40.420-38.888Q40.175-38.472 40.175-37.785Q40.175-37.340 40.263-36.988Q40.351-36.637 40.603-36.414Q40.855-36.191 41.312-36.191",[3503],[2039,4164,4165],{"transform":4110},[3489,4166],{"d":4167,"fill":3639,"stroke":3639,"className":4168,"style":3697},"M45.737-35.914Q45.256-35.914 44.848-36.158Q44.440-36.402 44.202-36.816Q43.963-37.230 43.963-37.719Q43.963-38.211 44.221-38.627Q44.479-39.043 44.911-39.281Q45.342-39.519 45.834-39.519Q46.455-39.519 46.905-39.082L46.905-40.711Q46.905-40.926 46.842-41.021Q46.780-41.117 46.662-41.138Q46.545-41.160 46.299-41.160L46.299-41.457L47.522-41.543L47.522-36.734Q47.522-36.523 47.584-36.428Q47.647-36.332 47.764-36.310Q47.881-36.289 48.131-36.289L48.131-35.992L46.881-35.914L46.881-36.398Q46.416-35.914 45.737-35.914M45.803-36.168Q46.143-36.168 46.436-36.359Q46.729-36.551 46.881-36.847L46.881-38.679Q46.733-38.953 46.471-39.109Q46.209-39.265 45.897-39.265Q45.272-39.265 44.989-38.818Q44.705-38.371 44.705-37.711Q44.705-37.066 44.957-36.617Q45.209-36.168 45.803-36.168",[3503],[2039,4170,4171],{"transform":4110},[3489,4172],{"d":4173,"fill":3639,"stroke":3639,"className":4174,"style":3697},"M52.270-35.914Q51.930-35.914 51.670-36.092Q51.411-36.269 51.276-36.564Q51.141-36.859 51.141-37.207Q51.141-37.469 51.207-37.726L51.957-40.754Q51.969-40.801 51.996-40.902Q52.024-41.004 52.024-41.054Q52.024-41.160 51.528-41.160Q51.430-41.191 51.430-41.289L51.453-41.390Q51.461-41.437 51.543-41.457L52.645-41.543Q52.688-41.543 52.727-41.512Q52.766-41.480 52.766-41.426L52.192-39.105Q52.649-39.519 53.125-39.519Q53.489-39.519 53.754-39.340Q54.020-39.160 54.161-38.859Q54.301-38.558 54.301-38.207Q54.301-37.683 54.020-37.144Q53.739-36.605 53.272-36.260Q52.805-35.914 52.270-35.914M52.286-36.168Q52.621-36.168 52.901-36.459Q53.180-36.750 53.317-37.105Q53.442-37.398 53.543-37.832Q53.645-38.265 53.645-38.543Q53.645-38.828 53.512-39.047Q53.379-39.265 53.110-39.265Q52.899-39.265 52.703-39.164Q52.508-39.062 52.348-38.906Q52.188-38.750 52.055-38.558L51.828-37.687Q51.778-37.453 51.748-37.271Q51.719-37.090 51.719-36.937Q51.719-36.637 51.860-36.402Q52-36.168 52.286-36.168",[3503],[2039,4176,4177],{"transform":4110},[3489,4178],{"d":4179,"fill":3639,"stroke":3639,"className":4180,"style":3697},"M55.043-33.992L54.961-33.992Q54.925-33.992 54.900-34.021Q54.875-34.051 54.875-34.090Q54.875-34.140 54.906-34.160Q55.293-34.496 55.576-34.945Q55.859-35.394 56.025-35.894Q56.191-36.394 56.265-36.912Q56.340-37.429 56.340-37.992Q56.340-38.562 56.265-39.078Q56.191-39.594 56.025-40.090Q55.859-40.586 55.580-41.033Q55.300-41.480 54.906-41.824Q54.875-41.844 54.875-41.894Q54.875-41.933 54.900-41.963Q54.925-41.992 54.961-41.992L55.043-41.992Q55.054-41.992 55.064-41.990Q55.074-41.988 55.082-41.984Q55.695-41.527 56.097-40.892Q56.500-40.258 56.695-39.512Q56.890-38.765 56.890-37.992Q56.890-37.219 56.695-36.472Q56.500-35.726 56.097-35.092Q55.695-34.457 55.082-34Q55.070-34 55.062-33.998Q55.054-33.996 55.043-33.992",[3503],[3489,4182],{"fill":3491,"d":4183},"M-54.222-23.189h68.286v-25.607h-68.286Z",[2039,4185,4186,4193,4199,4205],{"stroke":3491,"fontSize":3495},[2039,4187,4189],{"transform":4188},"translate(-21.84 2.25)",[3489,4190],{"d":4191,"fill":3486,"stroke":3486,"className":4192,"style":3504},"M-19.820-35.298Q-19.820-35.610-19.591-35.849Q-19.363-36.089-19.042-36.190Q-19.222-36.330-19.317-36.539Q-19.411-36.748-19.411-36.981Q-19.411-37.394-19.134-37.728Q-19.547-38.132-19.547-38.646Q-19.547-39.037-19.328-39.336Q-19.108-39.635-18.756-39.802Q-18.405-39.969-18.027-39.969Q-17.473-39.969-17.056-39.657Q-16.867-39.850-16.605-39.960Q-16.344-40.070-16.058-40.070Q-15.856-40.070-15.722-39.927Q-15.588-39.784-15.588-39.591Q-15.588-39.464-15.671-39.385Q-15.755-39.305-15.878-39.305Q-15.996-39.305-16.080-39.385Q-16.163-39.464-16.163-39.591Q-16.163-39.666-16.155-39.692Q-16.137-39.727-16.115-39.760Q-16.093-39.793-16.084-39.806Q-16.528-39.806-16.875-39.503Q-16.515-39.121-16.515-38.646Q-16.515-38.352-16.642-38.106Q-16.770-37.860-16.983-37.684Q-17.196-37.508-17.475-37.411Q-17.754-37.315-18.027-37.315Q-18.537-37.315-18.945-37.583Q-19.073-37.411-19.073-37.205Q-19.073-36.963-18.914-36.792Q-18.756-36.620-18.523-36.620L-17.759-36.620Q-17.214-36.620-16.768-36.524Q-16.322-36.427-16.023-36.137Q-15.724-35.847-15.724-35.298Q-15.724-34.718-16.410-34.428Q-17.095-34.138-17.767-34.138Q-18.440-34.138-19.130-34.428Q-19.820-34.718-19.820-35.298M-19.279-35.298Q-19.279-35.003-19.027-34.805Q-18.774-34.608-18.413-34.513Q-18.053-34.419-17.767-34.419Q-17.267-34.419-16.766-34.645Q-16.265-34.871-16.265-35.298Q-16.265-35.755-16.706-35.887Q-17.148-36.018-17.759-36.018L-18.523-36.018Q-18.717-36.018-18.895-35.924Q-19.073-35.829-19.176-35.665Q-19.279-35.500-19.279-35.298M-18.036-37.596L-18.027-37.596Q-17.245-37.596-17.245-38.646Q-17.245-39.692-18.027-39.692Q-18.818-39.692-18.818-38.646Q-18.818-37.596-18.036-37.596M-13.149-35.891Q-13.698-35.891-14.157-36.170Q-14.617-36.449-14.885-36.919Q-15.153-37.389-15.153-37.934Q-15.153-38.347-15.003-38.725Q-14.854-39.103-14.579-39.398Q-14.305-39.692-13.935-39.859Q-13.566-40.026-13.149-40.026Q-12.815-40.026-12.494-39.960Q-12.173-39.894-11.945-39.708Q-11.716-39.521-11.716-39.196Q-11.716-39.020-11.844-38.892Q-11.971-38.765-12.147-38.765Q-12.331-38.765-12.461-38.890Q-12.591-39.015-12.591-39.196Q-12.591-39.332-12.516-39.444Q-12.441-39.556-12.309-39.609Q-12.617-39.736-13.149-39.736Q-13.584-39.736-13.852-39.459Q-14.120-39.182-14.232-38.767Q-14.344-38.352-14.344-37.934Q-14.344-37.504-14.206-37.102Q-14.067-36.700-13.773-36.440Q-13.478-36.181-13.039-36.181Q-12.617-36.181-12.314-36.431Q-12.011-36.682-11.905-37.091Q-11.896-37.121-11.872-37.146Q-11.848-37.170-11.817-37.170L-11.707-37.170Q-11.620-37.170-11.620-37.055Q-11.765-36.519-12.178-36.205Q-12.591-35.891-13.149-35.891M-9.106-35.891Q-9.651-35.891-10.095-36.174Q-10.538-36.458-10.793-36.930Q-11.048-37.403-11.048-37.934Q-11.048-38.488-10.771-38.954Q-10.495-39.420-10.022-39.694Q-9.550-39.969-9.005-39.969Q-8.671-39.969-8.368-39.837Q-8.064-39.705-7.845-39.468L-7.845-41.318Q-7.845-41.560-7.915-41.668Q-7.985-41.775-8.119-41.799Q-8.253-41.824-8.539-41.824L-8.539-42.140L-7.172-42.237L-7.172-36.809Q-7.172-36.572-7.102-36.464Q-7.032-36.357-6.895-36.333Q-6.759-36.308-6.478-36.308L-6.478-35.992L-7.871-35.891L-7.871-36.440Q-8.121-36.177-8.440-36.034Q-8.759-35.891-9.106-35.891M-9.044-36.155Q-8.675-36.155-8.365-36.366Q-8.056-36.576-7.871-36.919L-7.871-39.051Q-8.042-39.354-8.324-39.532Q-8.605-39.710-8.943-39.710Q-9.633-39.710-9.936-39.189Q-10.240-38.668-10.240-37.926Q-10.240-37.205-9.969-36.680Q-9.699-36.155-9.044-36.155",[3503],[2039,4194,4195],{"transform":4188},[3489,4196],{"d":4197,"fill":3486,"stroke":3486,"className":4198,"style":3504},"M-3.352-33.751Q-3.857-34.138-4.226-34.643Q-4.596-35.148-4.839-35.748Q-5.083-36.348-5.198-36.965Q-5.312-37.583-5.312-38.242Q-5.312-38.901-5.198-39.516Q-5.083-40.132-4.844-40.725Q-4.604-41.318-4.231-41.828Q-3.857-42.338-3.352-42.724Q-3.317-42.742-3.295-42.742L-3.216-42.742Q-3.128-42.742-3.128-42.641Q-3.128-42.606-3.163-42.571Q-3.725-42.048-4.070-41.342Q-4.415-40.637-4.563-39.855Q-4.710-39.073-4.710-38.242Q-4.710-37.618-4.631-37.034Q-4.552-36.449-4.374-35.882Q-4.196-35.315-3.897-34.814Q-3.598-34.313-3.163-33.905Q-3.128-33.869-3.128-33.830Q-3.128-33.733-3.216-33.733L-3.295-33.733Q-3.317-33.733-3.352-33.751M0.085-37.469L-2.354-37.469L-2.354-37.785L0.471-41.933Q0.515-41.986 0.581-41.986L0.735-41.986Q0.775-41.986 0.807-41.953Q0.840-41.920 0.840-41.876L0.840-37.785L1.741-37.785L1.741-37.469L0.840-37.469L0.840-36.603Q0.840-36.308 1.741-36.308L1.741-35.992L-0.812-35.992L-0.812-36.308Q-0.452-36.308-0.183-36.363Q0.085-36.418 0.085-36.603L0.085-37.469M0.142-40.958L-2.020-37.785L0.142-37.785L0.142-40.958M2.392-37.359Q2.392-37.917 2.752-38.330Q3.112-38.743 3.688-39.015L3.319-39.248Q3.016-39.450 2.829-39.780Q2.642-40.110 2.642-40.466Q2.642-41.120 3.148-41.553Q3.653-41.986 4.317-41.986Q4.716-41.986 5.101-41.826Q5.485-41.665 5.734-41.360Q5.982-41.054 5.982-40.637Q5.982-39.806 4.914-39.248L5.468-38.901Q5.815-38.673 6.026-38.304Q6.237-37.934 6.237-37.521Q6.237-37.143 6.079-36.825Q5.921-36.506 5.644-36.273Q5.367-36.040 5.024-35.917Q4.681-35.794 4.317-35.794Q3.851-35.794 3.405-35.981Q2.959-36.168 2.675-36.522Q2.392-36.875 2.392-37.359M2.915-37.359Q2.915-36.814 3.334-36.447Q3.754-36.080 4.317-36.080Q4.646-36.080 4.971-36.212Q5.296-36.344 5.505-36.598Q5.714-36.853 5.714-37.196Q5.714-37.460 5.578-37.684Q5.442-37.908 5.209-38.062L3.965-38.844Q3.504-38.607 3.209-38.220Q2.915-37.833 2.915-37.359M3.525-40.114L4.642-39.411Q4.866-39.534 5.070-39.723Q5.275-39.912 5.395-40.145Q5.516-40.378 5.516-40.637Q5.516-40.945 5.345-41.195Q5.173-41.446 4.897-41.586Q4.620-41.727 4.308-41.727Q3.859-41.727 3.486-41.481Q3.112-41.235 3.112-40.808Q3.112-40.404 3.525-40.114",[3503],[2039,4200,4201],{"transform":4188},[3489,4202],{"d":4203,"fill":3486,"stroke":3486,"className":4204,"style":3504},"M7.544-34.388Q7.544-34.428 7.579-34.463Q7.904-34.775 8.084-35.181Q8.265-35.588 8.265-36.036L8.265-36.119Q8.124-35.992 7.922-35.992Q7.777-35.992 7.663-36.058Q7.548-36.124 7.482-36.236Q7.416-36.348 7.416-36.497Q7.416-36.717 7.557-36.858Q7.698-36.998 7.922-36.998Q8.243-36.998 8.383-36.700Q8.524-36.401 8.524-36.036Q8.524-35.526 8.320-35.071Q8.115-34.617 7.750-34.265Q7.715-34.247 7.689-34.247Q7.632-34.247 7.588-34.291Q7.544-34.335 7.544-34.388",[3503],[2039,4206,4207],{"transform":4188},[3489,4208],{"d":4209,"fill":3486,"stroke":3486,"className":4210,"style":3504},"M14.661-35.992L11.629-35.992L11.629-36.308Q12.780-36.308 12.780-36.603L12.780-41.327Q12.292-41.094 11.571-41.094L11.571-41.410Q12.701-41.410 13.263-41.986L13.408-41.986Q13.443-41.986 13.476-41.953Q13.509-41.920 13.509-41.885L13.509-36.603Q13.509-36.308 14.661-36.308L14.661-35.992M15.759-37.359Q15.759-37.917 16.120-38.330Q16.480-38.743 17.056-39.015L16.687-39.248Q16.383-39.450 16.197-39.780Q16.010-40.110 16.010-40.466Q16.010-41.120 16.515-41.553Q17.021-41.986 17.684-41.986Q18.084-41.986 18.469-41.826Q18.853-41.665 19.101-41.360Q19.350-41.054 19.350-40.637Q19.350-39.806 18.282-39.248L18.836-38.901Q19.183-38.673 19.394-38.304Q19.605-37.934 19.605-37.521Q19.605-37.143 19.446-36.825Q19.288-36.506 19.011-36.273Q18.734-36.040 18.392-35.917Q18.049-35.794 17.684-35.794Q17.218-35.794 16.772-35.981Q16.326-36.168 16.043-36.522Q15.759-36.875 15.759-37.359M16.282-37.359Q16.282-36.814 16.702-36.447Q17.122-36.080 17.684-36.080Q18.014-36.080 18.339-36.212Q18.664-36.344 18.873-36.598Q19.082-36.853 19.082-37.196Q19.082-37.460 18.945-37.684Q18.809-37.908 18.576-38.062L17.333-38.844Q16.871-38.607 16.577-38.220Q16.282-37.833 16.282-37.359M16.893-40.114L18.009-39.411Q18.233-39.534 18.438-39.723Q18.642-39.912 18.763-40.145Q18.884-40.378 18.884-40.637Q18.884-40.945 18.712-41.195Q18.541-41.446 18.264-41.586Q17.987-41.727 17.675-41.727Q17.227-41.727 16.854-41.481Q16.480-41.235 16.480-40.808Q16.480-40.404 16.893-40.114M20.677-33.733L20.593-33.733Q20.505-33.733 20.505-33.830Q20.505-33.869 20.541-33.905Q21.376-34.678 21.736-35.812Q22.096-36.946 22.096-38.242Q22.096-38.862 22.017-39.453Q21.938-40.044 21.758-40.602Q21.578-41.160 21.277-41.668Q20.976-42.175 20.541-42.571Q20.505-42.606 20.505-42.641Q20.505-42.742 20.593-42.742L20.677-42.742Q20.694-42.742 20.730-42.724Q21.235-42.342 21.608-41.828Q21.982-41.314 22.219-40.736Q22.457-40.158 22.573-39.530Q22.690-38.901 22.690-38.242Q22.690-37.583 22.573-36.952Q22.457-36.322 22.217-35.737Q21.978-35.153 21.606-34.643Q21.235-34.133 20.730-33.751Q20.694-33.733 20.677-33.733",[3503],[3489,4212],{"fill":3491,"d":4213},"M-54.222 19.49h68.286V-6.117h-68.286Z",[2039,4215,4216,4222,4228,4233],{"stroke":3491,"fontSize":3495},[2039,4217,4219],{"transform":4218},"translate(-21.84 44.93)",[3489,4220],{"d":4191,"fill":3486,"stroke":3486,"className":4221,"style":3504},[3503],[2039,4223,4224],{"transform":4218},[3489,4225],{"d":4226,"fill":3486,"stroke":3486,"className":4227,"style":3504},"M-3.352-33.751Q-3.857-34.138-4.226-34.643Q-4.596-35.148-4.839-35.748Q-5.083-36.348-5.198-36.965Q-5.312-37.583-5.312-38.242Q-5.312-38.901-5.198-39.516Q-5.083-40.132-4.844-40.725Q-4.604-41.318-4.231-41.828Q-3.857-42.338-3.352-42.724Q-3.317-42.742-3.295-42.742L-3.216-42.742Q-3.128-42.742-3.128-42.641Q-3.128-42.606-3.163-42.571Q-3.725-42.048-4.070-41.342Q-4.415-40.637-4.563-39.855Q-4.710-39.073-4.710-38.242Q-4.710-37.618-4.631-37.034Q-4.552-36.449-4.374-35.882Q-4.196-35.315-3.897-34.814Q-3.598-34.313-3.163-33.905Q-3.128-33.869-3.128-33.830Q-3.128-33.733-3.216-33.733L-3.295-33.733Q-3.317-33.733-3.352-33.751M1.293-35.992L-1.739-35.992L-1.739-36.308Q-0.588-36.308-0.588-36.603L-0.588-41.327Q-1.076-41.094-1.796-41.094L-1.796-41.410Q-0.667-41.410-0.104-41.986L0.041-41.986Q0.076-41.986 0.109-41.953Q0.142-41.920 0.142-41.885L0.142-36.603Q0.142-36.308 1.293-36.308L1.293-35.992M2.392-37.359Q2.392-37.917 2.752-38.330Q3.112-38.743 3.688-39.015L3.319-39.248Q3.016-39.450 2.829-39.780Q2.642-40.110 2.642-40.466Q2.642-41.120 3.148-41.553Q3.653-41.986 4.317-41.986Q4.716-41.986 5.101-41.826Q5.485-41.665 5.734-41.360Q5.982-41.054 5.982-40.637Q5.982-39.806 4.914-39.248L5.468-38.901Q5.815-38.673 6.026-38.304Q6.237-37.934 6.237-37.521Q6.237-37.143 6.079-36.825Q5.921-36.506 5.644-36.273Q5.367-36.040 5.024-35.917Q4.681-35.794 4.317-35.794Q3.851-35.794 3.405-35.981Q2.959-36.168 2.675-36.522Q2.392-36.875 2.392-37.359M2.915-37.359Q2.915-36.814 3.334-36.447Q3.754-36.080 4.317-36.080Q4.646-36.080 4.971-36.212Q5.296-36.344 5.505-36.598Q5.714-36.853 5.714-37.196Q5.714-37.460 5.578-37.684Q5.442-37.908 5.209-38.062L3.965-38.844Q3.504-38.607 3.209-38.220Q2.915-37.833 2.915-37.359M3.525-40.114L4.642-39.411Q4.866-39.534 5.070-39.723Q5.275-39.912 5.395-40.145Q5.516-40.378 5.516-40.637Q5.516-40.945 5.345-41.195Q5.173-41.446 4.897-41.586Q4.620-41.727 4.308-41.727Q3.859-41.727 3.486-41.481Q3.112-41.235 3.112-40.808Q3.112-40.404 3.525-40.114",[3503],[2039,4229,4230],{"transform":4218},[3489,4231],{"d":4203,"fill":3486,"stroke":3486,"className":4232,"style":3504},[3503],[2039,4234,4235],{"transform":4218},[3489,4236],{"d":4237,"fill":3486,"stroke":3486,"className":4238,"style":3504},"M14.661-35.992L11.629-35.992L11.629-36.308Q12.780-36.308 12.780-36.603L12.780-41.327Q12.292-41.094 11.571-41.094L11.571-41.410Q12.701-41.410 13.263-41.986L13.408-41.986Q13.443-41.986 13.476-41.953Q13.509-41.920 13.509-41.885L13.509-36.603Q13.509-36.308 14.661-36.308L14.661-35.992M19.279-35.992L15.830-35.992L15.830-36.225Q15.830-36.238 15.860-36.269L17.315-37.846Q17.781-38.343 18.034-38.648Q18.286-38.954 18.477-39.365Q18.669-39.776 18.669-40.215Q18.669-40.804 18.346-41.237Q18.023-41.670 17.442-41.670Q17.179-41.670 16.933-41.560Q16.687-41.450 16.511-41.263Q16.335-41.076 16.238-40.826L16.317-40.826Q16.520-40.826 16.662-40.690Q16.805-40.554 16.805-40.338Q16.805-40.132 16.662-39.993Q16.520-39.855 16.317-39.855Q16.115-39.855 15.973-39.998Q15.830-40.140 15.830-40.338Q15.830-40.800 16.067-41.173Q16.304-41.547 16.704-41.766Q17.104-41.986 17.552-41.986Q18.075-41.986 18.530-41.771Q18.985-41.555 19.257-41.156Q19.530-40.756 19.530-40.215Q19.530-39.820 19.358-39.466Q19.187-39.112 18.921-38.833Q18.655-38.554 18.205-38.169Q17.754-37.785 17.675-37.710L16.651-36.748L17.469-36.748Q18.119-36.748 18.556-36.759Q18.994-36.770 19.025-36.792Q19.095-36.875 19.150-37.115Q19.205-37.354 19.244-37.622L19.530-37.622L19.279-35.992M20.677-33.733L20.593-33.733Q20.505-33.733 20.505-33.830Q20.505-33.869 20.541-33.905Q21.376-34.678 21.736-35.812Q22.096-36.946 22.096-38.242Q22.096-38.862 22.017-39.453Q21.938-40.044 21.758-40.602Q21.578-41.160 21.277-41.668Q20.976-42.175 20.541-42.571Q20.505-42.606 20.505-42.641Q20.505-42.742 20.593-42.742L20.677-42.742Q20.694-42.742 20.730-42.724Q21.235-42.342 21.608-41.828Q21.982-41.314 22.219-40.736Q22.457-40.158 22.573-39.530Q22.690-38.901 22.690-38.242Q22.690-37.583 22.573-36.952Q22.457-36.322 22.217-35.737Q21.978-35.153 21.606-34.643Q21.235-34.133 20.730-33.751Q20.694-33.733 20.677-33.733",[3503],[3489,4240],{"fill":3491,"d":4241},"M-54.222 62.17h68.286V36.561h-68.286Z",[2039,4243,4244,4250,4256,4261],{"stroke":3491,"fontSize":3495},[2039,4245,4247],{"transform":4246},"translate(-19.528 87.608)",[3489,4248],{"d":4191,"fill":3486,"stroke":3486,"className":4249,"style":3504},[3503],[2039,4251,4252],{"transform":4246},[3489,4253],{"d":4254,"fill":3486,"stroke":3486,"className":4255,"style":3504},"M-3.352-33.751Q-3.857-34.138-4.226-34.643Q-4.596-35.148-4.839-35.748Q-5.083-36.348-5.198-36.965Q-5.312-37.583-5.312-38.242Q-5.312-38.901-5.198-39.516Q-5.083-40.132-4.844-40.725Q-4.604-41.318-4.231-41.828Q-3.857-42.338-3.352-42.724Q-3.317-42.742-3.295-42.742L-3.216-42.742Q-3.128-42.742-3.128-42.641Q-3.128-42.606-3.163-42.571Q-3.725-42.048-4.070-41.342Q-4.415-40.637-4.563-39.855Q-4.710-39.073-4.710-38.242Q-4.710-37.618-4.631-37.034Q-4.552-36.449-4.374-35.882Q-4.196-35.315-3.897-34.814Q-3.598-34.313-3.163-33.905Q-3.128-33.869-3.128-33.830Q-3.128-33.733-3.216-33.733L-3.295-33.733Q-3.317-33.733-3.352-33.751M1.293-35.992L-1.739-35.992L-1.739-36.308Q-0.588-36.308-0.588-36.603L-0.588-41.327Q-1.076-41.094-1.796-41.094L-1.796-41.410Q-0.667-41.410-0.104-41.986L0.041-41.986Q0.076-41.986 0.109-41.953Q0.142-41.920 0.142-41.885L0.142-36.603Q0.142-36.308 1.293-36.308L1.293-35.992M5.912-35.992L2.462-35.992L2.462-36.225Q2.462-36.238 2.493-36.269L3.947-37.846Q4.413-38.343 4.666-38.648Q4.919-38.954 5.110-39.365Q5.301-39.776 5.301-40.215Q5.301-40.804 4.978-41.237Q4.655-41.670 4.075-41.670Q3.811-41.670 3.565-41.560Q3.319-41.450 3.143-41.263Q2.967-41.076 2.871-40.826L2.950-40.826Q3.152-40.826 3.295-40.690Q3.438-40.554 3.438-40.338Q3.438-40.132 3.295-39.993Q3.152-39.855 2.950-39.855Q2.748-39.855 2.605-39.998Q2.462-40.140 2.462-40.338Q2.462-40.800 2.699-41.173Q2.937-41.547 3.337-41.766Q3.736-41.986 4.185-41.986Q4.708-41.986 5.162-41.771Q5.617-41.555 5.890-41.156Q6.162-40.756 6.162-40.215Q6.162-39.820 5.991-39.466Q5.819-39.112 5.554-38.833Q5.288-38.554 4.837-38.169Q4.387-37.785 4.308-37.710L3.284-36.748L4.101-36.748Q4.752-36.748 5.189-36.759Q5.626-36.770 5.657-36.792Q5.727-36.875 5.782-37.115Q5.837-37.354 5.877-37.622L6.162-37.622",[3503],[2039,4257,4258],{"transform":4246},[3489,4259],{"d":4203,"fill":3486,"stroke":3486,"className":4260,"style":3504},[3503],[2039,4262,4263],{"transform":4246},[3489,4264],{"d":4265,"fill":3486,"stroke":3486,"className":4266,"style":3504},"M13.066-35.794Q12.332-35.794 11.901-36.275Q11.470-36.757 11.306-37.449Q11.141-38.141 11.141-38.888Q11.141-39.617 11.433-40.340Q11.725-41.063 12.279-41.525Q12.833-41.986 13.580-41.986Q14.076-41.986 14.412-41.720Q14.749-41.454 14.749-40.971Q14.749-40.791 14.621-40.663Q14.494-40.536 14.318-40.536Q14.138-40.536 14.008-40.661Q13.879-40.786 13.879-40.971Q13.879-41.085 13.936-41.189Q13.993-41.292 14.094-41.351Q14.195-41.410 14.318-41.410Q14.322-41.410 14.327-41.408Q14.331-41.406 14.336-41.402Q14.221-41.569 14.013-41.648Q13.804-41.727 13.580-41.727Q13.136-41.727 12.778-41.426Q12.420-41.125 12.231-40.672Q11.998-40.066 11.998-39.033Q12.169-39.398 12.470-39.626Q12.771-39.855 13.158-39.855Q13.562-39.855 13.907-39.688Q14.252-39.521 14.489-39.240Q14.727-38.958 14.856-38.596Q14.986-38.233 14.986-37.829Q14.986-37.284 14.742-36.818Q14.498-36.352 14.059-36.073Q13.619-35.794 13.066-35.794M13.066-36.080Q13.527-36.080 13.762-36.337Q13.997-36.594 14.063-36.968Q14.129-37.341 14.129-37.811L14.129-37.846Q14.129-38.334 14.072-38.699Q14.015-39.064 13.786-39.327Q13.558-39.591 13.114-39.591Q12.745-39.591 12.494-39.347Q12.244-39.103 12.129-38.739Q12.015-38.374 12.015-38.027Q12.015-37.908 12.024-37.846Q12.024-37.829 12.022-37.818Q12.020-37.807 12.015-37.794Q12.015-37.143 12.253-36.612Q12.490-36.080 13.066-36.080M16.058-33.733L15.975-33.733Q15.887-33.733 15.887-33.830Q15.887-33.869 15.922-33.905Q16.757-34.678 17.117-35.812Q17.478-36.946 17.478-38.242Q17.478-38.862 17.399-39.453Q17.319-40.044 17.139-40.602Q16.959-41.160 16.658-41.668Q16.357-42.175 15.922-42.571Q15.887-42.606 15.887-42.641Q15.887-42.742 15.975-42.742L16.058-42.742Q16.076-42.742 16.111-42.724Q16.616-42.342 16.990-41.828Q17.363-41.314 17.601-40.736Q17.838-40.158 17.954-39.530Q18.071-38.901 18.071-38.242Q18.071-37.583 17.954-36.952Q17.838-36.322 17.598-35.737Q17.359-35.153 16.988-34.643Q16.616-34.133 16.111-33.751Q16.076-33.733 16.058-33.733",[3503],[2039,4268,4269,4272],{"fill":3638,"stroke":3639,"style":3640},[3489,4270],{"d":4271},"M-54.222 104.849h68.286V79.24h-68.286Z",[2039,4273,4274,4280,4286,4292,4298,4304],{"fill":3486,"stroke":3491,"fontSize":3495},[2039,4275,4277],{"transform":4276},"translate(-25.694 130.287)",[3489,4278],{"d":4191,"fill":3486,"stroke":3486,"className":4279,"style":3504},[3503],[2039,4281,4282],{"transform":4276},[3489,4283],{"d":4284,"fill":3486,"stroke":3486,"className":4285,"style":3504},"M-3.352-33.751Q-3.857-34.138-4.226-34.643Q-4.596-35.148-4.839-35.748Q-5.083-36.348-5.198-36.965Q-5.312-37.583-5.312-38.242Q-5.312-38.901-5.198-39.516Q-5.083-40.132-4.844-40.725Q-4.604-41.318-4.231-41.828Q-3.857-42.338-3.352-42.724Q-3.317-42.742-3.295-42.742L-3.216-42.742Q-3.128-42.742-3.128-42.641Q-3.128-42.606-3.163-42.571Q-3.725-42.048-4.070-41.342Q-4.415-40.637-4.563-39.855Q-4.710-39.073-4.710-38.242Q-4.710-37.618-4.631-37.034Q-4.552-36.449-4.374-35.882Q-4.196-35.315-3.897-34.814Q-3.598-34.313-3.163-33.905Q-3.128-33.869-3.128-33.830Q-3.128-33.733-3.216-33.733L-3.295-33.733Q-3.317-33.733-3.352-33.751M-0.302-35.794Q-1.036-35.794-1.467-36.275Q-1.897-36.757-2.062-37.449Q-2.227-38.141-2.227-38.888Q-2.227-39.617-1.935-40.340Q-1.642-41.063-1.089-41.525Q-0.535-41.986 0.212-41.986Q0.709-41.986 1.045-41.720Q1.381-41.454 1.381-40.971Q1.381-40.791 1.254-40.663Q1.126-40.536 0.950-40.536Q0.770-40.536 0.640-40.661Q0.511-40.786 0.511-40.971Q0.511-41.085 0.568-41.189Q0.625-41.292 0.726-41.351Q0.827-41.410 0.950-41.410Q0.955-41.410 0.959-41.408Q0.963-41.406 0.968-41.402Q0.854-41.569 0.645-41.648Q0.436-41.727 0.212-41.727Q-0.232-41.727-0.590-41.426Q-0.948-41.125-1.137-40.672Q-1.370-40.066-1.370-39.033Q-1.199-39.398-0.898-39.626Q-0.597-39.855-0.210-39.855Q0.194-39.855 0.539-39.688Q0.884-39.521 1.122-39.240Q1.359-38.958 1.489-38.596Q1.618-38.233 1.618-37.829Q1.618-37.284 1.374-36.818Q1.130-36.352 0.691-36.073Q0.252-35.794-0.302-35.794M-0.302-36.080Q0.159-36.080 0.394-36.337Q0.629-36.594 0.695-36.968Q0.761-37.341 0.761-37.811L0.761-37.846Q0.761-38.334 0.704-38.699Q0.647-39.064 0.419-39.327Q0.190-39.591-0.254-39.591Q-0.623-39.591-0.873-39.347Q-1.124-39.103-1.238-38.739Q-1.352-38.374-1.352-38.027Q-1.352-37.908-1.344-37.846Q-1.344-37.829-1.346-37.818Q-1.348-37.807-1.352-37.794Q-1.352-37.143-1.115-36.612Q-0.878-36.080-0.302-36.080",[3503],[2039,4287,4288],{"transform":4276},[3489,4289],{"d":4290,"fill":3486,"stroke":3486,"className":4291,"style":3504},"M2.919-34.388Q2.919-34.428 2.954-34.463Q3.279-34.775 3.459-35.181Q3.640-35.588 3.640-36.036L3.640-36.119Q3.499-35.992 3.297-35.992Q3.152-35.992 3.038-36.058Q2.923-36.124 2.857-36.236Q2.791-36.348 2.791-36.497Q2.791-36.717 2.932-36.858Q3.073-36.998 3.297-36.998Q3.618-36.998 3.758-36.700Q3.899-36.401 3.899-36.036Q3.899-35.526 3.695-35.071Q3.490-34.617 3.125-34.265Q3.090-34.247 3.064-34.247Q3.007-34.247 2.963-34.291Q2.919-34.335 2.919-34.388",[3503],[2039,4293,4294],{"transform":4276},[3489,4295],{"d":4296,"fill":3486,"stroke":3486,"className":4297,"style":3504},"M8.441-35.794Q7.316-35.794 6.902-36.691Q6.489-37.587 6.489-38.862Q6.489-39.635 6.639-40.334Q6.788-41.033 7.223-41.509Q7.658-41.986 8.441-41.986Q9.218-41.986 9.653-41.507Q10.088-41.028 10.238-40.332Q10.387-39.635 10.387-38.862Q10.387-37.583 9.974-36.689Q9.561-35.794 8.441-35.794M8.441-36.054Q8.959-36.054 9.210-36.565Q9.460-37.077 9.517-37.688Q9.574-38.299 9.574-39.007Q9.574-39.692 9.517-40.252Q9.460-40.813 9.207-41.270Q8.955-41.727 8.441-41.727Q8.036-41.727 7.799-41.450Q7.562-41.173 7.454-40.732Q7.346-40.290 7.322-39.897Q7.298-39.503 7.298-39.007Q7.298-38.501 7.322-38.073Q7.346-37.644 7.454-37.161Q7.562-36.678 7.801-36.366Q8.041-36.054 8.441-36.054M11.433-33.733L11.350-33.733Q11.262-33.733 11.262-33.830Q11.262-33.869 11.297-33.905Q12.132-34.678 12.492-35.812Q12.853-36.946 12.853-38.242Q12.853-38.862 12.774-39.453Q12.694-40.044 12.514-40.602Q12.334-41.160 12.033-41.668Q11.732-42.175 11.297-42.571Q11.262-42.606 11.262-42.641Q11.262-42.742 11.350-42.742L11.433-42.742Q11.451-42.742 11.486-42.724Q11.991-42.342 12.365-41.828Q12.738-41.314 12.976-40.736Q13.213-40.158 13.329-39.530Q13.446-38.901 13.446-38.242Q13.446-37.583 13.329-36.952Q13.213-36.322 12.973-35.737Q12.734-35.153 12.363-34.643Q11.991-34.133 11.486-33.751Q11.451-33.733 11.433-33.733",[3503],[2039,4299,4300],{"transform":4276},[3489,4301],{"d":4302,"fill":3486,"stroke":3486,"className":4303,"style":3504},"M23.421-37.135L17.615-37.135Q17.536-37.148 17.486-37.198Q17.435-37.249 17.435-37.324Q17.435-37.473 17.615-37.521L23.421-37.521Q23.592-37.469 23.592-37.324Q23.592-37.170 23.421-37.135M23.421-38.963L17.615-38.963Q17.435-38.993 17.435-39.152Q17.435-39.301 17.615-39.349L23.421-39.349Q23.592-39.297 23.592-39.152Q23.592-38.998 23.421-38.963",[3503],[2039,4305,4306],{"transform":4276},[3489,4307],{"d":4308,"fill":3486,"stroke":3486,"className":4309,"style":3504},"M28.997-35.794Q28.263-35.794 27.832-36.275Q27.401-36.757 27.237-37.449Q27.072-38.141 27.072-38.888Q27.072-39.617 27.364-40.340Q27.656-41.063 28.210-41.525Q28.764-41.986 29.511-41.986Q30.007-41.986 30.343-41.720Q30.680-41.454 30.680-40.971Q30.680-40.791 30.552-40.663Q30.425-40.536 30.249-40.536Q30.069-40.536 29.939-40.661Q29.810-40.786 29.810-40.971Q29.810-41.085 29.867-41.189Q29.924-41.292 30.025-41.351Q30.126-41.410 30.249-41.410Q30.253-41.410 30.258-41.408Q30.262-41.406 30.267-41.402Q30.152-41.569 29.944-41.648Q29.735-41.727 29.511-41.727Q29.067-41.727 28.709-41.426Q28.351-41.125 28.162-40.672Q27.929-40.066 27.929-39.033Q28.100-39.398 28.401-39.626Q28.702-39.855 29.089-39.855Q29.493-39.855 29.838-39.688Q30.183-39.521 30.420-39.240Q30.658-38.958 30.787-38.596Q30.917-38.233 30.917-37.829Q30.917-37.284 30.673-36.818Q30.429-36.352 29.990-36.073Q29.550-35.794 28.997-35.794M28.997-36.080Q29.458-36.080 29.693-36.337Q29.928-36.594 29.994-36.968Q30.060-37.341 30.060-37.811L30.060-37.846Q30.060-38.334 30.003-38.699Q29.946-39.064 29.717-39.327Q29.489-39.591 29.045-39.591Q28.676-39.591 28.425-39.347Q28.175-39.103 28.060-38.739Q27.946-38.374 27.946-38.027Q27.946-37.908 27.955-37.846Q27.955-37.829 27.953-37.818Q27.951-37.807 27.946-37.794Q27.946-37.143 28.184-36.612Q28.421-36.080 28.997-36.080",[3503],[3489,4311],{"fill":3491,"d":4312},"M-20.079-22.989v14.672",[3489,4314],{"stroke":3491,"d":4315},"m-20.079-6.317 1.6-3.2-1.6 1.2-1.6-1.2",[2039,4317,4319,4326,4332,4338,4344,4350],{"stroke":3491,"fontFamily":4318,"fontSize":3689},"cmr8",[2039,4320,4322],{"transform":4321},"translate(6.378 24.117)",[3489,4323],{"d":4324,"fill":3486,"stroke":3486,"className":4325,"style":3697},"M-17.599-37.304L-19.841-37.304L-19.841-37.601L-17.270-41.258Q-17.231-41.312-17.169-41.312L-17.024-41.312Q-16.974-41.312-16.942-41.281Q-16.911-41.250-16.911-41.199L-16.911-37.601L-16.079-37.601L-16.079-37.304L-16.911-37.304L-16.911-36.551Q-16.911-36.289-16.087-36.289L-16.087-35.992L-18.423-35.992L-18.423-36.289Q-17.599-36.289-17.599-36.551L-17.599-37.304M-17.544-40.406L-19.513-37.601L-17.544-37.601L-17.544-40.406M-15.481-37.215Q-15.481-37.711-15.155-38.076Q-14.829-38.441-14.306-38.687L-14.575-38.847Q-14.872-39.031-15.056-39.326Q-15.239-39.621-15.239-39.961Q-15.239-40.355-15.020-40.666Q-14.802-40.976-14.448-41.144Q-14.095-41.312-13.712-41.312Q-13.438-41.312-13.165-41.234Q-12.892-41.156-12.675-41.008Q-12.458-40.859-12.321-40.633Q-12.184-40.406-12.184-40.113Q-12.184-39.707-12.454-39.400Q-12.724-39.094-13.145-38.879L-12.696-38.609Q-12.477-38.472-12.309-38.279Q-12.142-38.086-12.044-37.847Q-11.946-37.609-11.946-37.351Q-11.946-37.012-12.097-36.724Q-12.247-36.437-12.493-36.240Q-12.739-36.043-13.063-35.933Q-13.388-35.824-13.712-35.824Q-14.142-35.824-14.548-35.986Q-14.954-36.148-15.218-36.467Q-15.481-36.785-15.481-37.215M-14.993-37.215Q-14.993-36.730-14.602-36.414Q-14.212-36.097-13.712-36.097Q-13.419-36.097-13.120-36.209Q-12.821-36.320-12.628-36.539Q-12.434-36.758-12.434-37.070Q-12.434-37.301-12.575-37.512Q-12.716-37.722-12.923-37.840L-14.032-38.519Q-14.450-38.316-14.722-37.980Q-14.993-37.644-14.993-37.215M-14.407-39.648L-13.419-39.047Q-13.071-39.230-12.845-39.500Q-12.618-39.769-12.618-40.113Q-12.618-40.332-12.710-40.508Q-12.802-40.683-12.956-40.806Q-13.110-40.929-13.311-41Q-13.513-41.070-13.712-41.070Q-14.118-41.070-14.464-40.859Q-14.809-40.648-14.809-40.265Q-14.809-40.082-14.698-39.920Q-14.587-39.758-14.407-39.648",[3503],[2039,4327,4328],{"transform":4321},[3489,4329],{"d":4330,"fill":3486,"stroke":3486,"className":4331,"style":3697},"M-7.050-35.992L-8.905-35.992L-8.905-36.289Q-8.632-36.289-8.464-36.336Q-8.296-36.383-8.296-36.551L-8.296-38.687Q-8.296-38.902-8.359-38.998Q-8.421-39.094-8.540-39.115Q-8.659-39.137-8.905-39.137L-8.905-39.433L-7.714-39.519L-7.714-38.785Q-7.601-39-7.407-39.168Q-7.214-39.336-6.976-39.428Q-6.738-39.519-6.484-39.519Q-5.523-39.519-5.347-38.808Q-5.163-39.137-4.835-39.328Q-4.507-39.519-4.128-39.519Q-2.952-39.519-2.952-38.441L-2.952-36.551Q-2.952-36.383-2.784-36.336Q-2.616-36.289-2.347-36.289L-2.347-35.992L-4.202-35.992L-4.202-36.289Q-3.929-36.289-3.761-36.334Q-3.593-36.379-3.593-36.551L-3.593-38.426Q-3.593-38.812-3.718-39.039Q-3.843-39.265-4.195-39.265Q-4.499-39.265-4.755-39.103Q-5.011-38.941-5.159-38.672Q-5.308-38.402-5.308-38.105L-5.308-36.551Q-5.308-36.383-5.138-36.336Q-4.968-36.289-4.698-36.289L-4.698-35.992L-6.554-35.992L-6.554-36.289Q-6.280-36.289-6.113-36.336Q-5.945-36.383-5.945-36.551L-5.945-38.426Q-5.945-38.812-6.070-39.039Q-6.195-39.265-6.546-39.265Q-6.851-39.265-7.107-39.103Q-7.363-38.941-7.511-38.672Q-7.659-38.402-7.659-38.105L-7.659-36.551Q-7.659-36.383-7.489-36.336Q-7.320-36.289-7.050-36.289L-7.050-35.992M-1.902-37.687Q-1.902-38.191-1.646-38.623Q-1.390-39.054-0.954-39.306Q-0.519-39.558-0.019-39.558Q0.368-39.558 0.710-39.414Q1.052-39.269 1.313-39.008Q1.575-38.746 1.718-38.410Q1.860-38.074 1.860-37.687Q1.860-37.195 1.596-36.785Q1.333-36.375 0.903-36.144Q0.473-35.914-0.019-35.914Q-0.511-35.914-0.945-36.146Q-1.378-36.379-1.640-36.787Q-1.902-37.195-1.902-37.687M-0.019-36.191Q0.438-36.191 0.690-36.414Q0.942-36.637 1.030-36.988Q1.118-37.340 1.118-37.785Q1.118-38.215 1.024-38.553Q0.930-38.890 0.677-39.097Q0.423-39.304-0.019-39.304Q-0.667-39.304-0.911-38.888Q-1.155-38.472-1.155-37.785Q-1.155-37.340-1.068-36.988Q-0.980-36.637-0.728-36.414Q-0.476-36.191-0.019-36.191",[3503],[2039,4333,4334],{"transform":4321},[3489,4335],{"d":4336,"fill":3486,"stroke":3486,"className":4337,"style":3697},"M4.407-35.914Q3.926-35.914 3.518-36.158Q3.110-36.402 2.872-36.816Q2.633-37.230 2.633-37.719Q2.633-38.211 2.891-38.627Q3.149-39.043 3.581-39.281Q4.012-39.519 4.504-39.519Q5.125-39.519 5.575-39.082L5.575-40.711Q5.575-40.926 5.512-41.021Q5.450-41.117 5.332-41.138Q5.215-41.160 4.969-41.160L4.969-41.457L6.192-41.543L6.192-36.734Q6.192-36.523 6.254-36.428Q6.317-36.332 6.434-36.310Q6.551-36.289 6.801-36.289L6.801-35.992L5.551-35.914L5.551-36.398Q5.086-35.914 4.407-35.914M4.473-36.168Q4.813-36.168 5.106-36.359Q5.399-36.551 5.551-36.847L5.551-38.679Q5.403-38.953 5.141-39.109Q4.879-39.265 4.567-39.265Q3.942-39.265 3.659-38.818Q3.375-38.371 3.375-37.711Q3.375-37.066 3.627-36.617Q3.879-36.168 4.473-36.168",[3503],[2039,4339,4340],{"transform":4321},[3489,4341],{"d":4342,"fill":3486,"stroke":3486,"className":4343,"style":3697},"M13.030-35.992L10.237-35.992L10.237-36.289Q11.299-36.289 11.299-36.551L11.299-40.719Q10.870-40.504 10.190-40.504L10.190-40.801Q11.209-40.801 11.725-41.312L11.870-41.312Q11.944-41.293 11.963-41.215L11.963-36.551Q11.963-36.289 13.030-36.289L13.030-35.992M14.034-37.215Q14.034-37.711 14.360-38.076Q14.686-38.441 15.209-38.687L14.940-38.847Q14.643-39.031 14.459-39.326Q14.276-39.621 14.276-39.961Q14.276-40.355 14.495-40.666Q14.713-40.976 15.067-41.144Q15.420-41.312 15.803-41.312Q16.077-41.312 16.350-41.234Q16.623-41.156 16.840-41.008Q17.057-40.859 17.194-40.633Q17.331-40.406 17.331-40.113Q17.331-39.707 17.061-39.400Q16.791-39.094 16.370-38.879L16.819-38.609Q17.038-38.472 17.206-38.279Q17.373-38.086 17.471-37.847Q17.569-37.609 17.569-37.351Q17.569-37.012 17.418-36.724Q17.268-36.437 17.022-36.240Q16.776-36.043 16.452-35.933Q16.127-35.824 15.803-35.824Q15.373-35.824 14.967-35.986Q14.561-36.148 14.297-36.467Q14.034-36.785 14.034-37.215M14.522-37.215Q14.522-36.730 14.913-36.414Q15.303-36.097 15.803-36.097Q16.096-36.097 16.395-36.209Q16.694-36.320 16.887-36.539Q17.081-36.758 17.081-37.070Q17.081-37.301 16.940-37.512Q16.799-37.722 16.592-37.840L15.483-38.519Q15.065-38.316 14.793-37.980Q14.522-37.644 14.522-37.215M15.108-39.648L16.096-39.047Q16.444-39.230 16.670-39.500Q16.897-39.769 16.897-40.113Q16.897-40.332 16.805-40.508Q16.713-40.683 16.559-40.806Q16.405-40.929 16.204-41Q16.002-41.070 15.803-41.070Q15.397-41.070 15.051-40.859Q14.706-40.648 14.706-40.265Q14.706-40.082 14.817-39.920Q14.928-39.758 15.108-39.648",[3503],[2039,4345,4346],{"transform":4321},[3489,4347],{"d":4348,"fill":3486,"stroke":3486,"className":4349,"style":3697},"M26.258-36.969L20.945-36.969Q20.867-36.976 20.818-37.025Q20.770-37.074 20.770-37.152Q20.770-37.222 20.817-37.273Q20.863-37.324 20.945-37.336L26.258-37.336Q26.332-37.324 26.379-37.273Q26.426-37.222 26.426-37.152Q26.426-37.074 26.377-37.025Q26.328-36.976 26.258-36.969M26.258-38.656L20.945-38.656Q20.867-38.664 20.818-38.713Q20.770-38.762 20.770-38.840Q20.770-38.910 20.817-38.961Q20.863-39.012 20.945-39.023L26.258-39.023Q26.332-39.012 26.379-38.961Q26.426-38.910 26.426-38.840Q26.426-38.762 26.377-38.713Q26.328-38.664 26.258-38.656",[3503],[2039,4351,4352],{"transform":4321},[3489,4353],{"d":4354,"fill":3486,"stroke":3486,"className":4355,"style":3697},"M32.863-35.992L30.070-35.992L30.070-36.289Q31.132-36.289 31.132-36.551L31.132-40.719Q30.703-40.504 30.023-40.504L30.023-40.801Q31.042-40.801 31.558-41.312L31.703-41.312Q31.777-41.293 31.796-41.215L31.796-36.551Q31.796-36.289 32.863-36.289L32.863-35.992M37.101-35.992L33.941-35.992L33.941-36.199Q33.941-36.226 33.964-36.258L35.316-37.656Q35.695-38.043 35.943-38.332Q36.191-38.621 36.365-38.978Q36.539-39.336 36.539-39.726Q36.539-40.074 36.406-40.367Q36.273-40.660 36.019-40.838Q35.765-41.015 35.410-41.015Q35.050-41.015 34.759-40.820Q34.468-40.625 34.324-40.297L34.378-40.297Q34.562-40.297 34.687-40.176Q34.812-40.054 34.812-39.863Q34.812-39.683 34.687-39.554Q34.562-39.426 34.378-39.426Q34.199-39.426 34.070-39.554Q33.941-39.683 33.941-39.863Q33.941-40.265 34.162-40.601Q34.382-40.937 34.748-41.125Q35.113-41.312 35.515-41.312Q35.996-41.312 36.412-41.125Q36.828-40.937 37.080-40.576Q37.331-40.215 37.331-39.726Q37.331-39.367 37.177-39.064Q37.023-38.762 36.771-38.502Q36.519-38.242 36.169-37.957Q35.820-37.672 35.652-37.519L34.722-36.679L35.437-36.679Q36.812-36.679 36.851-36.719Q36.921-36.797 36.964-36.982Q37.007-37.168 37.050-37.457L37.331-37.457",[3503],[3489,4357],{"fill":3491,"d":4358},"M-20.079 19.69v14.672",[3489,4360],{"stroke":3491,"d":4361},"m-20.079 36.362 1.6-3.2-1.6 1.2-1.6-1.2",[2039,4363,4364,4371,4376,4381,4387,4392],{"stroke":3491,"fontFamily":4318,"fontSize":3689},[2039,4365,4367],{"transform":4366},"translate(6.378 66.796)",[3489,4368],{"d":4369,"fill":3486,"stroke":3486,"className":4370,"style":3697},"M-16.485-35.992L-19.278-35.992L-19.278-36.289Q-18.216-36.289-18.216-36.551L-18.216-40.719Q-18.645-40.504-19.325-40.504L-19.325-40.801Q-18.306-40.801-17.790-41.312L-17.645-41.312Q-17.571-41.293-17.552-41.215L-17.552-36.551Q-17.552-36.289-16.485-36.289L-16.485-35.992M-15.481-37.215Q-15.481-37.711-15.155-38.076Q-14.829-38.441-14.306-38.687L-14.575-38.847Q-14.872-39.031-15.056-39.326Q-15.239-39.621-15.239-39.961Q-15.239-40.355-15.020-40.666Q-14.802-40.976-14.448-41.144Q-14.095-41.312-13.712-41.312Q-13.438-41.312-13.165-41.234Q-12.892-41.156-12.675-41.008Q-12.458-40.859-12.321-40.633Q-12.184-40.406-12.184-40.113Q-12.184-39.707-12.454-39.400Q-12.724-39.094-13.145-38.879L-12.696-38.609Q-12.477-38.472-12.309-38.279Q-12.142-38.086-12.044-37.847Q-11.946-37.609-11.946-37.351Q-11.946-37.012-12.097-36.724Q-12.247-36.437-12.493-36.240Q-12.739-36.043-13.063-35.933Q-13.388-35.824-13.712-35.824Q-14.142-35.824-14.548-35.986Q-14.954-36.148-15.218-36.467Q-15.481-36.785-15.481-37.215M-14.993-37.215Q-14.993-36.730-14.602-36.414Q-14.212-36.097-13.712-36.097Q-13.419-36.097-13.120-36.209Q-12.821-36.320-12.628-36.539Q-12.434-36.758-12.434-37.070Q-12.434-37.301-12.575-37.512Q-12.716-37.722-12.923-37.840L-14.032-38.519Q-14.450-38.316-14.722-37.980Q-14.993-37.644-14.993-37.215M-14.407-39.648L-13.419-39.047Q-13.071-39.230-12.845-39.500Q-12.618-39.769-12.618-40.113Q-12.618-40.332-12.710-40.508Q-12.802-40.683-12.956-40.806Q-13.110-40.929-13.311-41Q-13.513-41.070-13.712-41.070Q-14.118-41.070-14.464-40.859Q-14.809-40.648-14.809-40.265Q-14.809-40.082-14.698-39.920Q-14.587-39.758-14.407-39.648",[3503],[2039,4372,4373],{"transform":4366},[3489,4374],{"d":4330,"fill":3486,"stroke":3486,"className":4375,"style":3697},[3503],[2039,4377,4378],{"transform":4366},[3489,4379],{"d":4336,"fill":3486,"stroke":3486,"className":4380,"style":3697},[3503],[2039,4382,4383],{"transform":4366},[3489,4384],{"d":4385,"fill":3486,"stroke":3486,"className":4386,"style":3697},"M13.030-35.992L10.237-35.992L10.237-36.289Q11.299-36.289 11.299-36.551L11.299-40.719Q10.870-40.504 10.190-40.504L10.190-40.801Q11.209-40.801 11.725-41.312L11.870-41.312Q11.944-41.293 11.963-41.215L11.963-36.551Q11.963-36.289 13.030-36.289L13.030-35.992M17.268-35.992L14.108-35.992L14.108-36.199Q14.108-36.226 14.131-36.258L15.483-37.656Q15.862-38.043 16.110-38.332Q16.358-38.621 16.532-38.978Q16.706-39.336 16.706-39.726Q16.706-40.074 16.573-40.367Q16.440-40.660 16.186-40.838Q15.932-41.015 15.577-41.015Q15.217-41.015 14.926-40.820Q14.635-40.625 14.491-40.297L14.545-40.297Q14.729-40.297 14.854-40.176Q14.979-40.054 14.979-39.863Q14.979-39.683 14.854-39.554Q14.729-39.426 14.545-39.426Q14.366-39.426 14.237-39.554Q14.108-39.683 14.108-39.863Q14.108-40.265 14.329-40.601Q14.549-40.937 14.915-41.125Q15.280-41.312 15.682-41.312Q16.163-41.312 16.579-41.125Q16.995-40.937 17.247-40.576Q17.498-40.215 17.498-39.726Q17.498-39.367 17.344-39.064Q17.190-38.762 16.938-38.502Q16.686-38.242 16.336-37.957Q15.987-37.672 15.819-37.519L14.889-36.679L15.604-36.679Q16.979-36.679 17.018-36.719Q17.088-36.797 17.131-36.982Q17.174-37.168 17.217-37.457L17.498-37.457",[3503],[2039,4388,4389],{"transform":4366},[3489,4390],{"d":4348,"fill":3486,"stroke":3486,"className":4391,"style":3697},[3503],[2039,4393,4394],{"transform":4366},[3489,4395],{"d":4396,"fill":3486,"stroke":3486,"className":4397,"style":3697},"M31.390-35.824Q30.718-35.824 30.322-36.248Q29.925-36.672 29.773-37.291Q29.621-37.910 29.621-38.578Q29.621-39.238 29.892-39.871Q30.164-40.504 30.677-40.908Q31.191-41.312 31.863-41.312Q32.152-41.312 32.400-41.213Q32.648-41.113 32.794-40.912Q32.941-40.711 32.941-40.406Q32.941-40.301 32.890-40.209Q32.839-40.117 32.748-40.066Q32.656-40.015 32.550-40.015Q32.382-40.015 32.269-40.129Q32.156-40.242 32.156-40.406Q32.156-40.566 32.265-40.683Q32.374-40.801 32.542-40.801Q32.343-41.070 31.863-41.070Q31.445-41.070 31.113-40.793Q30.781-40.515 30.605-40.097Q30.406-39.597 30.406-38.695Q30.570-39.019 30.849-39.219Q31.128-39.418 31.476-39.418Q31.960-39.418 32.345-39.172Q32.730-38.926 32.943-38.517Q33.156-38.109 33.156-37.625Q33.156-37.133 32.925-36.721Q32.695-36.308 32.285-36.066Q31.874-35.824 31.390-35.824M31.390-36.097Q31.816-36.097 32.033-36.318Q32.249-36.539 32.312-36.865Q32.374-37.191 32.374-37.625Q32.374-37.937 32.349-38.187Q32.324-38.437 32.234-38.662Q32.144-38.887 31.949-39.023Q31.753-39.160 31.437-39.160Q31.109-39.160 30.876-38.951Q30.644-38.742 30.533-38.424Q30.421-38.105 30.421-37.793Q30.425-37.754 30.427-37.721Q30.429-37.687 30.429-37.633Q30.429-37.617 30.427-37.609Q30.425-37.601 30.421-37.594Q30.421-37.019 30.648-36.558Q30.874-36.097 31.390-36.097",[3503],[3489,4399],{"fill":3491,"d":4400},"M-20.079 62.37V76.64",[3489,4402],{"stroke":3491,"d":4403},"m-20.079 78.641 1.6-3.2-1.6 1.2-1.6-1.2",[2039,4405,4406,4413,4418,4423,4429,4435],{"stroke":3491,"fontFamily":4318,"fontSize":3689},[2039,4407,4409],{"transform":4408},"translate(6.378 109.276)",[3489,4410],{"d":4411,"fill":3486,"stroke":3486,"className":4412,"style":3697},"M-16.485-35.992L-19.278-35.992L-19.278-36.289Q-18.216-36.289-18.216-36.551L-18.216-40.719Q-18.645-40.504-19.325-40.504L-19.325-40.801Q-18.306-40.801-17.790-41.312L-17.645-41.312Q-17.571-41.293-17.552-41.215L-17.552-36.551Q-17.552-36.289-16.485-36.289L-16.485-35.992M-12.247-35.992L-15.407-35.992L-15.407-36.199Q-15.407-36.226-15.384-36.258L-14.032-37.656Q-13.653-38.043-13.405-38.332Q-13.157-38.621-12.983-38.978Q-12.809-39.336-12.809-39.726Q-12.809-40.074-12.942-40.367Q-13.075-40.660-13.329-40.838Q-13.583-41.015-13.938-41.015Q-14.298-41.015-14.589-40.820Q-14.880-40.625-15.024-40.297L-14.970-40.297Q-14.786-40.297-14.661-40.176Q-14.536-40.054-14.536-39.863Q-14.536-39.683-14.661-39.554Q-14.786-39.426-14.970-39.426Q-15.149-39.426-15.278-39.554Q-15.407-39.683-15.407-39.863Q-15.407-40.265-15.186-40.601Q-14.966-40.937-14.600-41.125Q-14.235-41.312-13.833-41.312Q-13.352-41.312-12.936-41.125Q-12.520-40.937-12.268-40.576Q-12.017-40.215-12.017-39.726Q-12.017-39.367-12.171-39.064Q-12.325-38.762-12.577-38.502Q-12.829-38.242-13.179-37.957Q-13.528-37.672-13.696-37.519L-14.626-36.679L-13.911-36.679Q-12.536-36.679-12.497-36.719Q-12.427-36.797-12.384-36.982Q-12.341-37.168-12.298-37.457L-12.017-37.457",[3503],[2039,4414,4415],{"transform":4408},[3489,4416],{"d":4330,"fill":3486,"stroke":3486,"className":4417,"style":3697},[3503],[2039,4419,4420],{"transform":4408},[3489,4421],{"d":4336,"fill":3486,"stroke":3486,"className":4422,"style":3697},[3503],[2039,4424,4425],{"transform":4408},[3489,4426],{"d":4427,"fill":3486,"stroke":3486,"className":4428,"style":3697},"M11.557-35.824Q10.885-35.824 10.489-36.248Q10.092-36.672 9.940-37.291Q9.788-37.910 9.788-38.578Q9.788-39.238 10.059-39.871Q10.331-40.504 10.844-40.908Q11.358-41.312 12.030-41.312Q12.319-41.312 12.567-41.213Q12.815-41.113 12.961-40.912Q13.108-40.711 13.108-40.406Q13.108-40.301 13.057-40.209Q13.006-40.117 12.915-40.066Q12.823-40.015 12.717-40.015Q12.549-40.015 12.436-40.129Q12.323-40.242 12.323-40.406Q12.323-40.566 12.432-40.683Q12.541-40.801 12.709-40.801Q12.510-41.070 12.030-41.070Q11.612-41.070 11.280-40.793Q10.948-40.515 10.772-40.097Q10.573-39.597 10.573-38.695Q10.737-39.019 11.016-39.219Q11.295-39.418 11.643-39.418Q12.127-39.418 12.512-39.172Q12.897-38.926 13.110-38.517Q13.323-38.109 13.323-37.625Q13.323-37.133 13.092-36.721Q12.862-36.308 12.452-36.066Q12.041-35.824 11.557-35.824M11.557-36.097Q11.983-36.097 12.200-36.318Q12.416-36.539 12.479-36.865Q12.541-37.191 12.541-37.625Q12.541-37.937 12.516-38.187Q12.491-38.437 12.401-38.662Q12.311-38.887 12.116-39.023Q11.920-39.160 11.604-39.160Q11.276-39.160 11.043-38.951Q10.811-38.742 10.700-38.424Q10.588-38.105 10.588-37.793Q10.592-37.754 10.594-37.721Q10.596-37.687 10.596-37.633Q10.596-37.617 10.594-37.609Q10.592-37.601 10.588-37.594Q10.588-37.019 10.815-36.558Q11.041-36.097 11.557-36.097",[3503],[2039,4430,4431],{"transform":4408},[3489,4432],{"d":4433,"fill":3486,"stroke":3486,"className":4434,"style":3697},"M22.008-36.969L16.695-36.969Q16.617-36.976 16.568-37.025Q16.520-37.074 16.520-37.152Q16.520-37.222 16.567-37.273Q16.613-37.324 16.695-37.336L22.008-37.336Q22.082-37.324 22.129-37.273Q22.176-37.222 22.176-37.152Q22.176-37.074 22.127-37.025Q22.078-36.976 22.008-36.969M22.008-38.656L16.695-38.656Q16.617-38.664 16.568-38.713Q16.520-38.762 16.520-38.840Q16.520-38.910 16.567-38.961Q16.613-39.012 16.695-39.023L22.008-39.023Q22.082-39.012 22.129-38.961Q22.176-38.910 22.176-38.840Q22.176-38.762 22.127-38.713Q22.078-38.664 22.008-38.656",[3503],[2039,4436,4437],{"transform":4408},[3489,4438],{"d":4439,"fill":3486,"stroke":3486,"className":4440,"style":3697},"M27.140-35.824Q26.437-35.824 26.037-36.224Q25.636-36.625 25.492-37.234Q25.347-37.844 25.347-38.543Q25.347-39.066 25.417-39.529Q25.488-39.992 25.681-40.404Q25.874-40.816 26.232-41.064Q26.589-41.312 27.140-41.312Q27.691-41.312 28.048-41.064Q28.406-40.816 28.597-40.406Q28.789-39.996 28.859-39.527Q28.929-39.058 28.929-38.543Q28.929-37.844 28.787-37.236Q28.644-36.629 28.244-36.226Q27.843-35.824 27.140-35.824M27.140-36.082Q27.613-36.082 27.845-36.517Q28.078-36.953 28.132-37.492Q28.187-38.031 28.187-38.672Q28.187-39.668 28.003-40.361Q27.820-41.054 27.140-41.054Q26.773-41.054 26.552-40.816Q26.331-40.578 26.236-40.221Q26.140-39.863 26.115-39.492Q26.089-39.121 26.089-38.672Q26.089-38.031 26.144-37.492Q26.199-36.953 26.431-36.517Q26.664-36.082 27.140-36.082",[3503],[3951,4442,4444,4445,4500,4501,4598,4599,4614,4615,4630],{"className":4443},[3954],"Euclid's remainder steps for ",[390,4446,4448],{"className":4447},[393],[390,4449,4451,4490],{"className":4450,"ariaHidden":398},[397],[390,4452,4454,4457,4463,4466,4469,4472,4475,4478,4481,4484,4487],{"className":4453},[402],[390,4455],{"className":4456,"style":554},[406],[390,4458,4460],{"className":4459},[692],[390,4461,697],{"className":4462},[411,696],[390,4464,702],{"className":4465},[701],[390,4467,4063],{"className":4468},[411],[390,4470,710],{"className":4471},[709],[390,4473],{"className":4474,"style":714},[561],[390,4476,4073],{"className":4477},[411],[390,4479,722],{"className":4480},[721],[390,4482],{"className":4483,"style":562},[561],[390,4485,602],{"className":4486},[566],[390,4488],{"className":4489,"style":562},[561],[390,4491,4493,4496],{"className":4492},[402],[390,4494],{"className":4495,"style":836},[406],[390,4497,4499],{"className":4498},[411],"6",". Each arrow applies ",[390,4502,4504],{"className":4503},[393],[390,4505,4507,4541,4586],{"className":4506,"ariaHidden":398},[397],[390,4508,4510,4513,4516,4519,4522,4525,4528,4531,4534,4538],{"className":4509},[402],[390,4511],{"className":4512,"style":554},[406],[390,4514,702],{"className":4515},[701],[390,4517,489],{"className":4518},[411,412],[390,4520,710],{"className":4521},[709],[390,4523],{"className":4524,"style":714},[561],[390,4526,671],{"className":4527},[411,412],[390,4529,722],{"className":4530},[721],[390,4532],{"className":4533,"style":562},[561],[390,4535,4537],{"className":4536},[566],"→",[390,4539],{"className":4540,"style":562},[561],[390,4542,4544,4547,4550,4553,4556,4559,4562,4565,4568,4571,4580,4583],{"className":4543},[402],[390,4545],{"className":4546,"style":554},[406],[390,4548,702],{"className":4549},[701],[390,4551,671],{"className":4552},[411,412],[390,4554,710],{"className":4555},[709],[390,4557,1102],{"className":4558},[561],[390,4560],{"className":4561,"style":714},[561],[390,4563,489],{"className":4564},[411,412],[390,4566],{"className":4567,"style":1112},[561],[390,4569],{"className":4570,"style":431},[561],[390,4572,4574],{"className":4573},[1119],[390,4575,4577],{"className":4576},[411],[390,4578,1126],{"className":4579},[411,696],[390,4581],{"className":4582,"style":1112},[561],[390,4584],{"className":4585,"style":431},[561],[390,4587,4589,4592,4595],{"className":4588},[402],[390,4590],{"className":4591,"style":554},[406],[390,4593,671],{"className":4594},[411,412],[390,4596,722],{"className":4597},[721],": the divisor ",[390,4600,4602],{"className":4601},[393],[390,4603,4605],{"className":4604,"ariaHidden":398},[397],[390,4606,4608,4611],{"className":4607},[402],[390,4609],{"className":4610,"style":446},[406],[390,4612,671],{"className":4613},[411,412]," slides down to become the new first argument and the remainder becomes the new second, until the second argument hits ",[390,4616,4618],{"className":4617},[393],[390,4619,4621],{"className":4620,"ariaHidden":398},[397],[390,4622,4624,4627],{"className":4623},[402],[390,4625],{"className":4626,"style":836},[406],[390,4628,757],{"className":4629},[411]," and the first is the answer.",[2151,4632,4634],{"id":4633},"euclid-geometrically","Euclid, geometrically",[381,4636,4637,4638,4683,4684,4687,4688,4722,4723,4757,4758,4827,4828,4831],{},"Replacing ",[390,4639,4641],{"className":4640},[393],[390,4642,4644,4674],{"className":4643,"ariaHidden":398},[397],[390,4645,4647,4650,4653,4656,4659,4668,4671],{"className":4646},[402],[390,4648],{"className":4649,"style":446},[406],[390,4651,489],{"className":4652},[411,412],[390,4654],{"className":4655,"style":1112},[561],[390,4657],{"className":4658,"style":431},[561],[390,4660,4662],{"className":4661},[1119],[390,4663,4665],{"className":4664},[411],[390,4666,1126],{"className":4667},[411,696],[390,4669],{"className":4670,"style":1112},[561],[390,4672],{"className":4673,"style":431},[561],[390,4675,4677,4680],{"className":4676},[402],[390,4678],{"className":4679,"style":446},[406],[390,4681,671],{"className":4682},[411,412]," by repeated subtraction gives the ",[457,4685,4686],{},"subtractive"," form of\nthe algorithm, and it has a geometric reading: tile an ",[390,4689,4691],{"className":4690},[393],[390,4692,4694,4713],{"className":4693,"ariaHidden":398},[397],[390,4695,4697,4700,4703,4706,4710],{"className":4696},[402],[390,4698],{"className":4699,"style":1672},[406],[390,4701,489],{"className":4702},[411,412],[390,4704],{"className":4705,"style":431},[561],[390,4707,4709],{"className":4708},[1119],"×",[390,4711],{"className":4712,"style":431},[561],[390,4714,4716,4719],{"className":4715},[402],[390,4717],{"className":4718,"style":446},[406],[390,4720,671],{"className":4721},[411,412],"\nrectangle greedily with the largest squares that fit. Cut off a ",[390,4724,4726],{"className":4725},[393],[390,4727,4729,4748],{"className":4728,"ariaHidden":398},[397],[390,4730,4732,4736,4739,4742,4745],{"className":4731},[402],[390,4733],{"className":4734,"style":4735},[406],"height:0.7778em;vertical-align:-0.0833em;",[390,4737,671],{"className":4738},[411,412],[390,4740],{"className":4741,"style":431},[561],[390,4743,4709],{"className":4744},[1119],[390,4746],{"className":4747,"style":431},[561],[390,4749,4751,4754],{"className":4750},[402],[390,4752],{"className":4753,"style":446},[406],[390,4755,671],{"className":4756},[411,412],"\nsquare as many times as you can, then recurse on the leftover ",[390,4759,4761],{"className":4760},[393],[390,4762,4764,4782,4815],{"className":4763,"ariaHidden":398},[397],[390,4765,4767,4770,4773,4776,4779],{"className":4766},[402],[390,4768],{"className":4769,"style":4735},[406],[390,4771,671],{"className":4772},[411,412],[390,4774],{"className":4775,"style":431},[561],[390,4777,4709],{"className":4778},[1119],[390,4780],{"className":4781,"style":431},[561],[390,4783,4785,4788,4791,4794,4797,4800,4809,4812],{"className":4784},[402],[390,4786],{"className":4787,"style":554},[406],[390,4789,702],{"className":4790},[701],[390,4792,489],{"className":4793},[411,412],[390,4795],{"className":4796,"style":1112},[561],[390,4798],{"className":4799,"style":431},[561],[390,4801,4803],{"className":4802},[1119],[390,4804,4806],{"className":4805},[411],[390,4807,1126],{"className":4808},[411,696],[390,4810],{"className":4811,"style":1112},[561],[390,4813],{"className":4814,"style":431},[561],[390,4816,4818,4821,4824],{"className":4817},[402],[390,4819],{"className":4820,"style":554},[406],[390,4822,671],{"className":4823},[411,412],[390,4825,722],{"className":4826},[721]," strip. The side of the ",[385,4829,4830],{},"last"," square is the gcd.",[3472,4833,4835,4920],{"className":4834},[3475,3476],[3478,4836,4840],{"xmlns":3480,"width":4837,"height":4838,"viewBox":4839},"236.621","163.698","-75 -75 177.466 122.774",[2039,4841,4842,4846,4849,4856,4859,4866,4869,4878,4899],{"stroke":3486,"style":3487},[3489,4843],{"fill":3491,"d":4844,"style":4845},"M-44.805 23.93v-95.6h143.4v95.6Zm143.4-95.6","stroke-width:.8",[3489,4847],{"fill":3491,"d":4848},"M-44.805 23.93v-95.6h95.6v95.6Zm95.6-95.6",[2039,4850,4852],{"transform":4851},"translate(45.488 -44.9)",[3489,4853],{"d":4854,"fill":3486,"stroke":3486,"className":4855,"style":3504},"M-44.418 22.564Q-44.418 22.006-44.058 21.593Q-43.698 21.180-43.122 20.908L-43.491 20.675Q-43.794 20.473-43.981 20.143Q-44.168 19.813-44.168 19.457Q-44.168 18.803-43.662 18.370Q-43.157 17.937-42.493 17.937Q-42.094 17.937-41.709 18.097Q-41.325 18.258-41.076 18.563Q-40.828 18.869-40.828 19.286Q-40.828 20.117-41.896 20.675L-41.342 21.022Q-40.995 21.250-40.784 21.619Q-40.573 21.989-40.573 22.402Q-40.573 22.780-40.731 23.098Q-40.889 23.417-41.166 23.650Q-41.443 23.883-41.786 24.006Q-42.129 24.129-42.493 24.129Q-42.959 24.129-43.405 23.942Q-43.851 23.755-44.135 23.401Q-44.418 23.048-44.418 22.564M-43.895 22.564Q-43.895 23.109-43.476 23.476Q-43.056 23.843-42.493 23.843Q-42.164 23.843-41.839 23.711Q-41.513 23.579-41.305 23.325Q-41.096 23.070-41.096 22.727Q-41.096 22.463-41.232 22.239Q-41.368 22.015-41.601 21.861L-42.845 21.079Q-43.306 21.316-43.601 21.703Q-43.895 22.090-43.895 22.564M-43.284 19.809L-42.168 20.512Q-41.944 20.389-41.740 20.200Q-41.535 20.011-41.415 19.778Q-41.294 19.545-41.294 19.286Q-41.294 18.978-41.465 18.728Q-41.637 18.477-41.913 18.337Q-42.190 18.196-42.502 18.196Q-42.951 18.196-43.324 18.442Q-43.698 18.688-43.698 19.115Q-43.698 19.519-43.284 19.809",[3503],[3489,4857],{"fill":3491,"d":4858},"M50.796 23.93v-47.8h47.8v47.8Zm47.8-47.8",[2039,4860,4862],{"transform":4861},"translate(117.189 -21)",[3489,4863],{"d":4864,"fill":3486,"stroke":3486,"className":4865,"style":3504},"M-42.107 22.454L-44.546 22.454L-44.546 22.138L-41.720 17.990Q-41.676 17.937-41.610 17.937L-41.456 17.937Q-41.417 17.937-41.384 17.970Q-41.351 18.003-41.351 18.047L-41.351 22.138L-40.450 22.138L-40.450 22.454L-41.351 22.454L-41.351 23.320Q-41.351 23.615-40.450 23.615L-40.450 23.931L-43.003 23.931L-43.003 23.615Q-42.643 23.615-42.375 23.560Q-42.107 23.505-42.107 23.320L-42.107 22.454M-42.050 18.965L-44.212 22.138L-42.050 22.138",[3503],[3489,4867],{"fill":3491,"stroke":3639,"d":4868,"style":3640},"M50.796-23.87v-47.8h47.8v47.8Zm47.8-47.8",[2039,4870,4871],{"fill":3639,"stroke":3639},[2039,4872,4874],{"transform":4873},"translate(112.564 -69.45)",[3489,4875],{"d":4876,"fill":3639,"stroke":3639,"className":4877,"style":3504},"M-44.546 24.625Q-44.546 24.313-44.317 24.074Q-44.089 23.834-43.768 23.733Q-43.948 23.593-44.043 23.384Q-44.137 23.175-44.137 22.942Q-44.137 22.529-43.860 22.195Q-44.273 21.791-44.273 21.277Q-44.273 20.886-44.054 20.587Q-43.834 20.288-43.482 20.121Q-43.131 19.954-42.753 19.954Q-42.199 19.954-41.782 20.266Q-41.593 20.073-41.331 19.963Q-41.070 19.853-40.784 19.853Q-40.582 19.853-40.448 19.996Q-40.314 20.139-40.314 20.332Q-40.314 20.459-40.397 20.538Q-40.481 20.618-40.604 20.618Q-40.722 20.618-40.806 20.538Q-40.889 20.459-40.889 20.332Q-40.889 20.257-40.881 20.231Q-40.863 20.196-40.841 20.163Q-40.819 20.130-40.810 20.117Q-41.254 20.117-41.601 20.420Q-41.241 20.802-41.241 21.277Q-41.241 21.571-41.368 21.817Q-41.496 22.063-41.709 22.239Q-41.922 22.415-42.201 22.512Q-42.480 22.608-42.753 22.608Q-43.263 22.608-43.671 22.340Q-43.799 22.512-43.799 22.718Q-43.799 22.960-43.640 23.131Q-43.482 23.303-43.249 23.303L-42.485 23.303Q-41.940 23.303-41.494 23.399Q-41.048 23.496-40.749 23.786Q-40.450 24.076-40.450 24.625Q-40.450 25.205-41.136 25.495Q-41.821 25.785-42.493 25.785Q-43.166 25.785-43.856 25.495Q-44.546 25.205-44.546 24.625M-44.005 24.625Q-44.005 24.920-43.753 25.118Q-43.500 25.315-43.139 25.410Q-42.779 25.504-42.493 25.504Q-41.992 25.504-41.492 25.278Q-40.991 25.052-40.991 24.625Q-40.991 24.168-41.432 24.036Q-41.874 23.905-42.485 23.905L-43.249 23.905Q-43.443 23.905-43.621 23.999Q-43.799 24.094-43.902 24.258Q-44.005 24.423-44.005 24.625M-42.762 22.327L-42.753 22.327Q-41.971 22.327-41.971 21.277Q-41.971 20.231-42.753 20.231Q-43.544 20.231-43.544 21.277Q-43.544 22.327-42.762 22.327M-37.875 24.032Q-38.424 24.032-38.883 23.753Q-39.343 23.474-39.611 23.004Q-39.879 22.534-39.879 21.989Q-39.879 21.576-39.729 21.198Q-39.580 20.820-39.305 20.525Q-39.031 20.231-38.661 20.064Q-38.292 19.897-37.875 19.897Q-37.541 19.897-37.220 19.963Q-36.899 20.029-36.671 20.215Q-36.442 20.402-36.442 20.727Q-36.442 20.903-36.570 21.031Q-36.697 21.158-36.873 21.158Q-37.057 21.158-37.187 21.033Q-37.317 20.908-37.317 20.727Q-37.317 20.591-37.242 20.479Q-37.167 20.367-37.035 20.314Q-37.343 20.187-37.875 20.187Q-38.310 20.187-38.578 20.464Q-38.846 20.741-38.958 21.156Q-39.070 21.571-39.070 21.989Q-39.070 22.419-38.932 22.821Q-38.793 23.223-38.499 23.483Q-38.204 23.742-37.765 23.742Q-37.343 23.742-37.040 23.492Q-36.737 23.241-36.631 22.832Q-36.622 22.802-36.598 22.777Q-36.574 22.753-36.543 22.753L-36.433 22.753Q-36.346 22.753-36.346 22.868Q-36.491 23.404-36.904 23.718Q-37.317 24.032-37.875 24.032M-33.832 24.032Q-34.377 24.032-34.821 23.749Q-35.264 23.465-35.519 22.993Q-35.774 22.520-35.774 21.989Q-35.774 21.435-35.497 20.969Q-35.221 20.503-34.748 20.229Q-34.276 19.954-33.731 19.954Q-33.397 19.954-33.094 20.086Q-32.790 20.218-32.571 20.455L-32.571 18.605Q-32.571 18.363-32.641 18.255Q-32.711 18.148-32.845 18.124Q-32.979 18.099-33.265 18.099L-33.265 17.783L-31.898 17.686L-31.898 23.114Q-31.898 23.351-31.828 23.459Q-31.758 23.566-31.621 23.590Q-31.485 23.615-31.204 23.615L-31.204 23.931L-32.597 24.032L-32.597 23.483Q-32.847 23.746-33.166 23.889Q-33.485 24.032-33.832 24.032M-33.770 23.768Q-33.401 23.768-33.091 23.557Q-32.782 23.347-32.597 23.004L-32.597 20.872Q-32.768 20.569-33.050 20.391Q-33.331 20.213-33.669 20.213Q-34.359 20.213-34.662 20.734Q-34.966 21.255-34.966 21.997Q-34.966 22.718-34.695 23.243Q-34.425 23.768-33.770 23.768",[3503],[2039,4879,4880,4887,4893],{"stroke":3491,"fontSize":3495},[2039,4881,4883],{"transform":4882},"translate(58.459 17.24)",[3489,4884],{"d":4885,"fill":3486,"stroke":3486,"className":4886,"style":3504},"M-43.183 24.032Q-43.579 24.032-43.865 23.828Q-44.150 23.623-44.297 23.289Q-44.445 22.955-44.445 22.564Q-44.445 22.129-44.271 21.668Q-44.097 21.206-43.785 20.815Q-43.473 20.424-43.063 20.189Q-42.652 19.954-42.212 19.954Q-41.944 19.954-41.727 20.092Q-41.509 20.231-41.377 20.477Q-41.338 20.327-41.230 20.231Q-41.122 20.134-40.982 20.134Q-40.859 20.134-40.775 20.207Q-40.692 20.279-40.692 20.402Q-40.692 20.455-40.701 20.486L-41.320 22.977Q-41.377 23.175-41.377 23.373Q-41.377 23.768-41.114 23.768Q-40.828 23.768-40.694 23.445Q-40.560 23.122-40.441 22.617Q-40.432 22.586-40.408 22.562Q-40.384 22.538-40.349 22.538L-40.243 22.538Q-40.195 22.538-40.173 22.571Q-40.151 22.604-40.151 22.652Q-40.265 23.083-40.356 23.336Q-40.446 23.588-40.639 23.810Q-40.832 24.032-41.131 24.032Q-41.439 24.032-41.687 23.861Q-41.935 23.689-42.006 23.399Q-42.261 23.685-42.557 23.858Q-42.854 24.032-43.183 24.032M-43.166 23.768Q-42.836 23.768-42.526 23.527Q-42.217 23.285-42.006 22.969Q-41.997 22.960-41.997 22.942L-41.500 20.978Q-41.557 20.661-41.749 20.437Q-41.940 20.213-42.230 20.213Q-42.599 20.213-42.898 20.532Q-43.197 20.850-43.364 21.259Q-43.500 21.606-43.625 22.116Q-43.750 22.626-43.750 22.951Q-43.750 23.276-43.612 23.522Q-43.473 23.768-43.166 23.768",[3503],[2039,4888,4889],{"transform":4882},[3489,4890],{"d":4891,"fill":3486,"stroke":3486,"className":4892,"style":3504},"M-30.836 22.788L-36.642 22.788Q-36.721 22.775-36.771 22.725Q-36.822 22.674-36.822 22.599Q-36.822 22.450-36.642 22.402L-30.836 22.402Q-30.665 22.454-30.665 22.599Q-30.665 22.753-30.836 22.788M-30.836 20.960L-36.642 20.960Q-36.822 20.930-36.822 20.771Q-36.822 20.622-36.642 20.574L-30.836 20.574Q-30.665 20.626-30.665 20.771Q-30.665 20.925-30.836 20.960",[3503],[2039,4894,4895],{"transform":4882},[3489,4896],{"d":4897,"fill":3486,"stroke":3486,"className":4898,"style":3504},"M-23.665 23.931L-26.697 23.931L-26.697 23.615Q-25.546 23.615-25.546 23.320L-25.546 18.596Q-26.034 18.829-26.755 18.829L-26.755 18.513Q-25.625 18.513-25.063 17.937L-24.918 17.937Q-24.883 17.937-24.850 17.970Q-24.817 18.003-24.817 18.038L-24.817 23.320Q-24.817 23.615-23.665 23.615L-23.665 23.931M-19.047 23.931L-22.496 23.931L-22.496 23.698Q-22.496 23.685-22.466 23.654L-21.011 22.077Q-20.545 21.580-20.292 21.275Q-20.040 20.969-19.849 20.558Q-19.657 20.147-19.657 19.708Q-19.657 19.119-19.980 18.686Q-20.303 18.253-20.884 18.253Q-21.147 18.253-21.393 18.363Q-21.639 18.473-21.815 18.660Q-21.991 18.847-22.088 19.097L-22.009 19.097Q-21.806 19.097-21.664 19.233Q-21.521 19.369-21.521 19.585Q-21.521 19.791-21.664 19.930Q-21.806 20.068-22.009 20.068Q-22.211 20.068-22.353 19.925Q-22.496 19.783-22.496 19.585Q-22.496 19.123-22.259 18.750Q-22.022 18.376-21.622 18.157Q-21.222 17.937-20.774 17.937Q-20.251 17.937-19.796 18.152Q-19.341 18.368-19.069 18.767Q-18.796 19.167-18.796 19.708Q-18.796 20.103-18.968 20.457Q-19.139 20.811-19.405 21.090Q-19.671 21.369-20.121 21.754Q-20.572 22.138-20.651 22.213L-21.675 23.175L-20.857 23.175Q-20.207 23.175-19.770 23.164Q-19.332 23.153-19.301 23.131Q-19.231 23.048-19.176 22.808Q-19.121 22.569-19.082 22.301L-18.796 22.301",[3503],[2039,4900,4901,4908,4914],{"stroke":3491,"fontSize":3495},[2039,4902,4904],{"transform":4903},"rotate(-90 -69.083 10.869)",[3489,4905],{"d":4906,"fill":3486,"stroke":3486,"className":4907,"style":3504},"M-43.183 24.032Q-43.759 24.032-44.080 23.601Q-44.401 23.171-44.401 22.591Q-44.401 22.186-44.317 21.958L-43.438 18.460Q-43.403 18.310-43.403 18.236Q-43.403 18.099-43.970 18.099Q-44.067 18.099-44.067 17.981Q-44.067 17.924-44.036 17.853Q-44.005 17.783-43.939 17.783L-42.718 17.686Q-42.665 17.686-42.632 17.715Q-42.599 17.744-42.599 17.792L-42.599 17.827L-43.258 20.437Q-42.735 19.954-42.212 19.954Q-41.826 19.954-41.535 20.158Q-41.245 20.363-41.098 20.697Q-40.951 21.031-40.951 21.422Q-40.951 22.006-41.254 22.615Q-41.557 23.223-42.078 23.628Q-42.599 24.032-43.183 24.032M-43.166 23.768Q-42.797 23.768-42.493 23.445Q-42.190 23.122-42.032 22.727Q-41.887 22.371-41.766 21.863Q-41.645 21.356-41.645 21.035Q-41.645 20.710-41.790 20.462Q-41.935 20.213-42.230 20.213Q-42.832 20.213-43.403 21.013L-43.645 22.006Q-43.790 22.630-43.790 22.894Q-43.790 23.237-43.638 23.503Q-43.487 23.768-43.166 23.768",[3503],[2039,4909,4910],{"transform":4903},[3489,4911],{"d":4912,"fill":3486,"stroke":3486,"className":4913,"style":3504},"M-31.772 22.788L-37.578 22.788Q-37.657 22.775-37.707 22.725Q-37.758 22.674-37.758 22.599Q-37.758 22.450-37.578 22.402L-31.772 22.402Q-31.601 22.454-31.601 22.599Q-31.601 22.753-31.772 22.788M-31.772 20.960L-37.578 20.960Q-37.758 20.930-37.758 20.771Q-37.758 20.622-37.578 20.574L-31.772 20.574Q-31.601 20.626-31.601 20.771Q-31.601 20.925-31.772 20.960",[3503],[2039,4915,4916],{"transform":4903},[3489,4917],{"d":4918,"fill":3486,"stroke":3486,"className":4919,"style":3504},"M-28.121 22.564Q-28.121 22.006-27.761 21.593Q-27.401 21.180-26.825 20.908L-27.194 20.675Q-27.497 20.473-27.684 20.143Q-27.871 19.813-27.871 19.457Q-27.871 18.803-27.365 18.370Q-26.860 17.937-26.196 17.937Q-25.797 17.937-25.412 18.097Q-25.028 18.258-24.779 18.563Q-24.531 18.869-24.531 19.286Q-24.531 20.117-25.599 20.675L-25.045 21.022Q-24.698 21.250-24.487 21.619Q-24.276 21.989-24.276 22.402Q-24.276 22.780-24.434 23.098Q-24.592 23.417-24.869 23.650Q-25.146 23.883-25.489 24.006Q-25.832 24.129-26.196 24.129Q-26.662 24.129-27.108 23.942Q-27.554 23.755-27.838 23.401Q-28.121 23.048-28.121 22.564M-27.598 22.564Q-27.598 23.109-27.179 23.476Q-26.759 23.843-26.196 23.843Q-25.867 23.843-25.542 23.711Q-25.216 23.579-25.008 23.325Q-24.799 23.070-24.799 22.727Q-24.799 22.463-24.935 22.239Q-25.071 22.015-25.304 21.861L-26.548 21.079Q-27.009 21.316-27.304 21.703Q-27.598 22.090-27.598 22.564M-26.987 19.809L-25.871 20.512Q-25.647 20.389-25.443 20.200Q-25.238 20.011-25.118 19.778Q-24.997 19.545-24.997 19.286Q-24.997 18.978-25.168 18.728Q-25.340 18.477-25.616 18.337Q-25.893 18.196-26.205 18.196Q-26.654 18.196-27.027 18.442Q-27.401 18.688-27.401 19.115Q-27.401 19.519-26.987 19.809",[3503],[3951,4921,4923,4959,4960,4993],{"className":4922},[3954],[390,4924,4926],{"className":4925},[393],[390,4927,4929],{"className":4928,"ariaHidden":398},[397],[390,4930,4932,4935,4941,4944,4947,4950,4953,4956],{"className":4931},[402],[390,4933],{"className":4934,"style":554},[406],[390,4936,4938],{"className":4937},[692],[390,4939,697],{"className":4940},[411,696],[390,4942,702],{"className":4943},[701],[390,4945,489],{"className":4946},[411,412],[390,4948,710],{"className":4949},[709],[390,4951],{"className":4952,"style":714},[561],[390,4954,671],{"className":4955},[411,412],[390,4957,722],{"className":4958},[721]," as the largest square that tiles an ",[390,4961,4963],{"className":4962},[393],[390,4964,4966,4984],{"className":4965,"ariaHidden":398},[397],[390,4967,4969,4972,4975,4978,4981],{"className":4968},[402],[390,4970],{"className":4971,"style":1672},[406],[390,4973,489],{"className":4974},[411,412],[390,4976],{"className":4977,"style":431},[561],[390,4979,4709],{"className":4980},[1119],[390,4982],{"className":4983,"style":431},[561],[390,4985,4987,4990],{"className":4986},[402],[390,4988],{"className":4989,"style":446},[406],[390,4991,671],{"className":4992},[411,412]," rectangle",[467,4995,4997],{"id":4996},"extended-euclid-bézouts-identity","Extended Euclid: Bézout's identity",[381,4999,5000,5001,5004,5005,5008,5009,5012,5013,490,5028,1203],{},"Euclid tells us ",[385,5002,5003],{},"what"," the gcd is; the ",[457,5006,5007],{},"extended"," algorithm tells us ",[385,5010,5011],{},"how to\nbuild it"," out of ",[390,5014,5016],{"className":5015},[393],[390,5017,5019],{"className":5018,"ariaHidden":398},[397],[390,5020,5022,5025],{"className":5021},[402],[390,5023],{"className":5024,"style":407},[406],[390,5026,489],{"className":5027},[411,412],[390,5029,5031],{"className":5030},[393],[390,5032,5034],{"className":5033,"ariaHidden":398},[397],[390,5035,5037,5040],{"className":5036},[402],[390,5038],{"className":5039,"style":446},[406],[390,5041,671],{"className":5042},[411,412],[948,5044,5045],{"type":950},[381,5046,5047,5050,5051,5075,5076,5102,5103],{},[457,5048,5049],{},"Theorem (Bézout)."," For all integers ",[390,5052,5054],{"className":5053},[393],[390,5055,5057],{"className":5056,"ariaHidden":398},[397],[390,5058,5060,5063,5066,5069,5072],{"className":5059},[402],[390,5061],{"className":5062,"style":853},[406],[390,5064,489],{"className":5065},[411,412],[390,5067,710],{"className":5068},[709],[390,5070],{"className":5071,"style":714},[561],[390,5073,671],{"className":5074},[411,412]," there exist integers ",[390,5077,5079],{"className":5078},[393],[390,5080,5082],{"className":5081,"ariaHidden":398},[397],[390,5083,5085,5088,5092,5095,5098],{"className":5084},[402],[390,5086],{"className":5087,"style":1521},[406],[390,5089,5091],{"className":5090},[411,412],"x",[390,5093,710],{"className":5094},[709],[390,5096],{"className":5097,"style":714},[561],[390,5099,5101],{"className":5100,"style":1485},[411,412],"y"," with\n",[390,5104,5106],{"className":5105},[393],[390,5107,5109,5130,5151],{"className":5108,"ariaHidden":398},[397],[390,5110,5112,5115,5118,5121,5124,5127],{"className":5111},[402],[390,5113],{"className":5114,"style":1672},[406],[390,5116,489],{"className":5117},[411,412],[390,5119,5091],{"className":5120},[411,412],[390,5122],{"className":5123,"style":431},[561],[390,5125,1495],{"className":5126},[1119],[390,5128],{"className":5129,"style":431},[561],[390,5131,5133,5136,5139,5142,5145,5148],{"className":5132},[402],[390,5134],{"className":5135,"style":853},[406],[390,5137,671],{"className":5138},[411,412],[390,5140,5101],{"className":5141,"style":1485},[411,412],[390,5143],{"className":5144,"style":562},[561],[390,5146,602],{"className":5147},[566],[390,5149],{"className":5150,"style":562},[561],[390,5152,5154,5157,5163,5166,5169,5172,5175,5178,5181],{"className":5153},[402],[390,5155],{"className":5156,"style":554},[406],[390,5158,5160],{"className":5159},[692],[390,5161,697],{"className":5162},[411,696],[390,5164,702],{"className":5165},[701],[390,5167,489],{"className":5168},[411,412],[390,5170,710],{"className":5171},[709],[390,5173],{"className":5174,"style":714},[561],[390,5176,671],{"className":5177},[411,412],[390,5179,722],{"className":5180},[721],[390,5182,1203],{"className":5183},[411],[381,5185,5186,5187,5211,5212,5266,5267,5357,5358,5421,5422,5485,5486,5102,5577,5759,5760,5859,5860,490,5875,5890],{},"The coefficients ",[390,5188,5190],{"className":5189},[393],[390,5191,5193],{"className":5192,"ariaHidden":398},[397],[390,5194,5196,5199,5202,5205,5208],{"className":5195},[402],[390,5197],{"className":5198,"style":1521},[406],[390,5200,5091],{"className":5201},[411,412],[390,5203,710],{"className":5204},[709],[390,5206],{"className":5207,"style":714},[561],[390,5209,5101],{"className":5210,"style":1485},[411,412]," fall out of running Euclid in reverse. At the base case\n",[390,5213,5215],{"className":5214},[393],[390,5216,5218,5257],{"className":5217,"ariaHidden":398},[397],[390,5219,5221,5224,5230,5233,5236,5239,5242,5245,5248,5251,5254],{"className":5220},[402],[390,5222],{"className":5223,"style":554},[406],[390,5225,5227],{"className":5226},[692],[390,5228,697],{"className":5229},[411,696],[390,5231,702],{"className":5232},[701],[390,5234,489],{"className":5235},[411,412],[390,5237,710],{"className":5238},[709],[390,5240],{"className":5241,"style":714},[561],[390,5243,757],{"className":5244},[411],[390,5246,722],{"className":5247},[721],[390,5249],{"className":5250,"style":562},[561],[390,5252,602],{"className":5253},[566],[390,5255],{"className":5256,"style":562},[561],[390,5258,5260,5263],{"className":5259},[402],[390,5261],{"className":5262,"style":407},[406],[390,5264,489],{"className":5265},[411,412]," we have the trivial identity ",[390,5268,5270],{"className":5269},[393],[390,5271,5273,5293,5312,5330,5348],{"className":5272,"ariaHidden":398},[397],[390,5274,5276,5280,5283,5286,5290],{"className":5275},[402],[390,5277],{"className":5278,"style":5279},[406],"height:0.4445em;",[390,5281,489],{"className":5282},[411,412],[390,5284],{"className":5285,"style":431},[561],[390,5287,5289],{"className":5288},[1119],"⋅",[390,5291],{"className":5292,"style":431},[561],[390,5294,5296,5300,5303,5306,5309],{"className":5295},[402],[390,5297],{"className":5298,"style":5299},[406],"height:0.7278em;vertical-align:-0.0833em;",[390,5301,895],{"className":5302},[411],[390,5304],{"className":5305,"style":431},[561],[390,5307,1495],{"className":5308},[1119],[390,5310],{"className":5311,"style":431},[561],[390,5313,5315,5318,5321,5324,5327],{"className":5314},[402],[390,5316],{"className":5317,"style":836},[406],[390,5319,757],{"className":5320},[411],[390,5322],{"className":5323,"style":431},[561],[390,5325,5289],{"className":5326},[1119],[390,5328],{"className":5329,"style":431},[561],[390,5331,5333,5336,5339,5342,5345],{"className":5332},[402],[390,5334],{"className":5335,"style":836},[406],[390,5337,757],{"className":5338},[411],[390,5340],{"className":5341,"style":562},[561],[390,5343,602],{"className":5344},[566],[390,5346],{"className":5347,"style":562},[561],[390,5349,5351,5354],{"className":5350},[402],[390,5352],{"className":5353,"style":407},[406],[390,5355,489],{"className":5356},[411,412],", so\n",[390,5359,5361],{"className":5360},[393],[390,5362,5364,5397],{"className":5363,"ariaHidden":398},[397],[390,5365,5367,5370,5373,5376,5379,5382,5385,5388,5391,5394],{"className":5366},[402],[390,5368],{"className":5369,"style":554},[406],[390,5371,702],{"className":5372},[701],[390,5374,5091],{"className":5375},[411,412],[390,5377,710],{"className":5378},[709],[390,5380],{"className":5381,"style":714},[561],[390,5383,5101],{"className":5384,"style":1485},[411,412],[390,5386,722],{"className":5387},[721],[390,5389],{"className":5390,"style":562},[561],[390,5392,602],{"className":5393},[566],[390,5395],{"className":5396,"style":562},[561],[390,5398,5400,5403,5406,5409,5412,5415,5418],{"className":5399},[402],[390,5401],{"className":5402,"style":554},[406],[390,5404,702],{"className":5405},[701],[390,5407,895],{"className":5408},[411],[390,5410,710],{"className":5411},[709],[390,5413],{"className":5414,"style":714},[561],[390,5416,757],{"className":5417},[411],[390,5419,722],{"className":5420},[721],". For the recursive step, suppose the recursive call on\n",[390,5423,5425],{"className":5424},[393],[390,5426,5428,5473],{"className":5427,"ariaHidden":398},[397],[390,5429,5431,5434,5437,5440,5443,5446,5449,5452,5455,5458,5467,5470],{"className":5430},[402],[390,5432],{"className":5433,"style":554},[406],[390,5435,702],{"className":5436},[701],[390,5438,671],{"className":5439},[411,412],[390,5441,710],{"className":5442},[709],[390,5444,1102],{"className":5445},[561],[390,5447],{"className":5448,"style":714},[561],[390,5450,489],{"className":5451},[411,412],[390,5453],{"className":5454,"style":1112},[561],[390,5456],{"className":5457,"style":431},[561],[390,5459,5461],{"className":5460},[1119],[390,5462,5464],{"className":5463},[411],[390,5465,1126],{"className":5466},[411,696],[390,5468],{"className":5469,"style":1112},[561],[390,5471],{"className":5472,"style":431},[561],[390,5474,5476,5479,5482],{"className":5475},[402],[390,5477],{"className":5478,"style":554},[406],[390,5480,671],{"className":5481},[411,412],[390,5483,722],{"className":5484},[721]," has already returned ",[390,5487,5489],{"className":5488},[393],[390,5490,5492],{"className":5491,"ariaHidden":398},[397],[390,5493,5495,5499,5502,5536,5539,5542,5574],{"className":5494},[402],[390,5496],{"className":5497,"style":5498},[406],"height:1.0019em;vertical-align:-0.25em;",[390,5500,702],{"className":5501},[701],[390,5503,5505,5508],{"className":5504},[411],[390,5506,5091],{"className":5507},[411,412],[390,5509,5511],{"className":5510},[2905],[390,5512,5514],{"className":5513},[2909],[390,5515,5517],{"className":5516},[2914],[390,5518,5521],{"className":5519,"style":5520},[2918],"height:0.7519em;",[390,5522,5523,5526],{"style":3315},[390,5524],{"className":5525,"style":2927},[2926],[390,5527,5529],{"className":5528},[2931,2932,2933,2934],[390,5530,5532],{"className":5531},[411,2934],[390,5533,5535],{"className":5534},[411,2934],"′",[390,5537,710],{"className":5538},[709],[390,5540],{"className":5541,"style":714},[561],[390,5543,5545,5548],{"className":5544},[411],[390,5546,5101],{"className":5547,"style":1485},[411,412],[390,5549,5551],{"className":5550},[2905],[390,5552,5554],{"className":5553},[2909],[390,5555,5557],{"className":5556},[2914],[390,5558,5560],{"className":5559,"style":5520},[2918],[390,5561,5562,5565],{"style":3315},[390,5563],{"className":5564,"style":2927},[2926],[390,5566,5568],{"className":5567},[2931,2932,2933,2934],[390,5569,5571],{"className":5570},[411,2934],[390,5572,5535],{"className":5573},[411,2934],[390,5575,722],{"className":5576},[721],[390,5578,5580],{"className":5579},[393],[390,5581,5583,5637,5670,5726],{"className":5582,"ariaHidden":398},[397],[390,5584,5586,5590,5593,5596,5628,5631,5634],{"className":5585},[402],[390,5587],{"className":5588,"style":5589},[406],"height:0.8352em;vertical-align:-0.0833em;",[390,5591,671],{"className":5592},[411,412],[390,5594],{"className":5595,"style":714},[561],[390,5597,5599,5602],{"className":5598},[411],[390,5600,5091],{"className":5601},[411,412],[390,5603,5605],{"className":5604},[2905],[390,5606,5608],{"className":5607},[2909],[390,5609,5611],{"className":5610},[2914],[390,5612,5614],{"className":5613,"style":5520},[2918],[390,5615,5616,5619],{"style":3315},[390,5617],{"className":5618,"style":2927},[2926],[390,5620,5622],{"className":5621},[2931,2932,2933,2934],[390,5623,5625],{"className":5624},[411,2934],[390,5626,5535],{"className":5627},[411,2934],[390,5629],{"className":5630,"style":431},[561],[390,5632,1495],{"className":5633},[1119],[390,5635],{"className":5636,"style":431},[561],[390,5638,5640,5643,5646,5649,5652,5655,5664,5667],{"className":5639},[402],[390,5641],{"className":5642,"style":554},[406],[390,5644,702],{"className":5645},[701],[390,5647,489],{"className":5648},[411,412],[390,5650],{"className":5651,"style":1112},[561],[390,5653],{"className":5654,"style":431},[561],[390,5656,5658],{"className":5657},[1119],[390,5659,5661],{"className":5660},[411],[390,5662,1126],{"className":5663},[411,696],[390,5665],{"className":5666,"style":1112},[561],[390,5668],{"className":5669,"style":431},[561],[390,5671,5673,5676,5679,5682,5685,5717,5720,5723],{"className":5672},[402],[390,5674],{"className":5675,"style":5498},[406],[390,5677,671],{"className":5678},[411,412],[390,5680,722],{"className":5681},[721],[390,5683],{"className":5684,"style":714},[561],[390,5686,5688,5691],{"className":5687},[411],[390,5689,5101],{"className":5690,"style":1485},[411,412],[390,5692,5694],{"className":5693},[2905],[390,5695,5697],{"className":5696},[2909],[390,5698,5700],{"className":5699},[2914],[390,5701,5703],{"className":5702,"style":5520},[2918],[390,5704,5705,5708],{"style":3315},[390,5706],{"className":5707,"style":2927},[2926],[390,5709,5711],{"className":5710},[2931,2932,2933,2934],[390,5712,5714],{"className":5713},[411,2934],[390,5715,5535],{"className":5716},[411,2934],[390,5718],{"className":5719,"style":562},[561],[390,5721,602],{"className":5722},[566],[390,5724],{"className":5725,"style":562},[561],[390,5727,5729,5732,5738,5741,5744,5747,5750,5753,5756],{"className":5728},[402],[390,5730],{"className":5731,"style":554},[406],[390,5733,5735],{"className":5734},[692],[390,5736,697],{"className":5737},[411,696],[390,5739,702],{"className":5740},[701],[390,5742,489],{"className":5743},[411,412],[390,5745,710],{"className":5746},[709],[390,5748],{"className":5749,"style":714},[561],[390,5751,671],{"className":5752},[411,412],[390,5754,722],{"className":5755},[721],[390,5757,1203],{"className":5758},[411],"\nSubstitute ",[390,5761,5763],{"className":5762},[393],[390,5764,5766,5796,5814,5832],{"className":5765,"ariaHidden":398},[397],[390,5767,5769,5772,5775,5778,5781,5790,5793],{"className":5768},[402],[390,5770],{"className":5771,"style":446},[406],[390,5773,489],{"className":5774},[411,412],[390,5776],{"className":5777,"style":1112},[561],[390,5779],{"className":5780,"style":431},[561],[390,5782,5784],{"className":5783},[1119],[390,5785,5787],{"className":5786},[411],[390,5788,1126],{"className":5789},[411,696],[390,5791],{"className":5792,"style":1112},[561],[390,5794],{"className":5795,"style":431},[561],[390,5797,5799,5802,5805,5808,5811],{"className":5798},[402],[390,5800],{"className":5801,"style":446},[406],[390,5803,671],{"className":5804},[411,412],[390,5806],{"className":5807,"style":562},[561],[390,5809,602],{"className":5810},[566],[390,5812],{"className":5813,"style":562},[561],[390,5815,5817,5820,5823,5826,5829],{"className":5816},[402],[390,5818],{"className":5819,"style":1672},[406],[390,5821,489],{"className":5822},[411,412],[390,5824],{"className":5825,"style":431},[561],[390,5827,1682],{"className":5828},[1119],[390,5830],{"className":5831,"style":431},[561],[390,5833,5835,5838,5841,5844,5847,5850,5853,5856],{"className":5834},[402],[390,5836],{"className":5837,"style":554},[406],[390,5839,1543],{"className":5840},[701],[390,5842,489],{"className":5843},[411,412],[390,5845,1550],{"className":5846},[411],[390,5848,671],{"className":5849},[411,412],[390,5851,1557],{"className":5852},[721],[390,5854],{"className":5855,"style":714},[561],[390,5857,671],{"className":5858},[411,412]," and regroup by ",[390,5861,5863],{"className":5862},[393],[390,5864,5866],{"className":5865,"ariaHidden":398},[397],[390,5867,5869,5872],{"className":5868},[402],[390,5870],{"className":5871,"style":407},[406],[390,5873,489],{"className":5874},[411,412],[390,5876,5878],{"className":5877},[393],[390,5879,5881],{"className":5880,"ariaHidden":398},[397],[390,5882,5884,5887],{"className":5883},[402],[390,5885],{"className":5886,"style":446},[406],[390,5888,671],{"className":5889},[411,412],":",[390,5892,5895],{"className":5893},[5894],"katex-display",[390,5896,5898],{"className":5897},[393],[390,5899,5901,5957,6015,6161],{"className":5900,"ariaHidden":398},[397],[390,5902,5904,5908,5911,5914,5948,5951,5954],{"className":5903},[402],[390,5905],{"className":5906,"style":5907},[406],"height:0.9963em;vertical-align:-0.1944em;",[390,5909,489],{"className":5910},[411,412],[390,5912],{"className":5913,"style":714},[561],[390,5915,5917,5920],{"className":5916},[411],[390,5918,5101],{"className":5919,"style":1485},[411,412],[390,5921,5923],{"className":5922},[2905],[390,5924,5926],{"className":5925},[2909],[390,5927,5929],{"className":5928},[2914],[390,5930,5933],{"className":5931,"style":5932},[2918],"height:0.8019em;",[390,5934,5936,5939],{"style":5935},"top:-3.113em;margin-right:0.05em;",[390,5937],{"className":5938,"style":2927},[2926],[390,5940,5942],{"className":5941},[2931,2932,2933,2934],[390,5943,5945],{"className":5944},[411,2934],[390,5946,5535],{"className":5947},[411,2934],[390,5949],{"className":5950,"style":431},[561],[390,5952,1495],{"className":5953},[1119],[390,5955],{"className":5956,"style":431},[561],[390,5958,5960,5964,5967,5974,6006,6009,6012],{"className":5959},[402],[390,5961],{"className":5962,"style":5963},[406],"height:1.8em;vertical-align:-0.65em;",[390,5965,671],{"className":5966},[411,412],[390,5968,5970],{"className":5969},[701],[390,5971,702],{"className":5972},[1091,5973],"size2",[390,5975,5977,5980],{"className":5976},[411],[390,5978,5091],{"className":5979},[411,412],[390,5981,5983],{"className":5982},[2905],[390,5984,5986],{"className":5985},[2909],[390,5987,5989],{"className":5988},[2914],[390,5990,5992],{"className":5991,"style":5932},[2918],[390,5993,5994,5997],{"style":5935},[390,5995],{"className":5996,"style":2927},[2926],[390,5998,6000],{"className":5999},[2931,2932,2933,2934],[390,6001,6003],{"className":6002},[411,2934],[390,6004,5535],{"className":6005},[411,2934],[390,6007],{"className":6008,"style":431},[561],[390,6010,1682],{"className":6011},[1119],[390,6013],{"className":6014,"style":431},[561],[390,6016,6018,6021,6027,6105,6111,6114,6146,6152,6155,6158],{"className":6017},[402],[390,6019],{"className":6020,"style":5963},[406],[390,6022,6024],{"className":6023},[701],[390,6025,1543],{"className":6026},[1091,5973],[390,6028,6030,6034,6102],{"className":6029},[411],[390,6031],{"className":6032},[701,6033],"nulldelimiter",[390,6035,6038],{"className":6036},[6037],"mfrac",[390,6039,6041,6093],{"className":6040},[2909,2910],[390,6042,6044,6090],{"className":6043},[2914],[390,6045,6048,6064,6075],{"className":6046,"style":6047},[2918],"height:0.6954em;",[390,6049,6051,6055],{"style":6050},"top:-2.655em;",[390,6052],{"className":6053,"style":6054},[2926],"height:3em;",[390,6056,6058],{"className":6057},[2931,2932,2933,2934],[390,6059,6061],{"className":6060},[411,2934],[390,6062,671],{"className":6063},[411,412,2934],[390,6065,6067,6070],{"style":6066},"top:-3.23em;",[390,6068],{"className":6069,"style":6054},[2926],[390,6071],{"className":6072,"style":6074},[6073],"frac-line","border-bottom-width:0.04em;",[390,6076,6078,6081],{"style":6077},"top:-3.394em;",[390,6079],{"className":6080,"style":6054},[2926],[390,6082,6084],{"className":6083},[2931,2932,2933,2934],[390,6085,6087],{"className":6086},[411,2934],[390,6088,489],{"className":6089},[411,412,2934],[390,6091,2951],{"className":6092},[2950],[390,6094,6096],{"className":6095},[2914],[390,6097,6100],{"className":6098,"style":6099},[2918],"height:0.345em;",[390,6101],{},[390,6103],{"className":6104},[721,6033],[390,6106,6108],{"className":6107},[721],[390,6109,1557],{"className":6110},[1091,5973],[390,6112],{"className":6113,"style":714},[561],[390,6115,6117,6120],{"className":6116},[411],[390,6118,5101],{"className":6119,"style":1485},[411,412],[390,6121,6123],{"className":6122},[2905],[390,6124,6126],{"className":6125},[2909],[390,6127,6129],{"className":6128},[2914],[390,6130,6132],{"className":6131,"style":5932},[2918],[390,6133,6134,6137],{"style":5935},[390,6135],{"className":6136,"style":2927},[2926],[390,6138,6140],{"className":6139},[2931,2932,2933,2934],[390,6141,6143],{"className":6142},[411,2934],[390,6144,5535],{"className":6145},[411,2934],[390,6147,6149],{"className":6148},[721],[390,6150,722],{"className":6151},[1091,5973],[390,6153],{"className":6154,"style":562},[561],[390,6156,602],{"className":6157},[566],[390,6159],{"className":6160,"style":562},[561],[390,6162,6164,6167,6173,6176,6179,6182,6185,6188,6191],{"className":6163},[402],[390,6165],{"className":6166,"style":554},[406],[390,6168,6170],{"className":6169},[692],[390,6171,697],{"className":6172},[411,696],[390,6174,702],{"className":6175},[701],[390,6177,489],{"className":6178},[411,412],[390,6180,710],{"className":6181},[709],[390,6183],{"className":6184,"style":714},[561],[390,6186,671],{"className":6187},[411,412],[390,6189,722],{"className":6190},[721],[390,6192,1203],{"className":6193},[411],[381,6195,6196,6197,6200],{},"So the ",[457,6198,6199],{},"back-substitution recurrence"," is",[390,6202,6204],{"className":6203},[5894],[390,6205,6207],{"className":6206},[393],[390,6208,6210,6228,6287,6335],{"className":6209,"ariaHidden":398},[397],[390,6211,6213,6216,6219,6222,6225],{"className":6212},[402],[390,6214],{"className":6215,"style":407},[406],[390,6217,5091],{"className":6218},[411,412],[390,6220],{"className":6221,"style":562},[561],[390,6223,602],{"className":6224},[566],[390,6226],{"className":6227,"style":562},[561],[390,6229,6231,6234,6266,6269,6272,6275,6278,6281,6284],{"className":6230},[402],[390,6232],{"className":6233,"style":5907},[406],[390,6235,6237,6240],{"className":6236},[411],[390,6238,5101],{"className":6239,"style":1485},[411,412],[390,6241,6243],{"className":6242},[2905],[390,6244,6246],{"className":6245},[2909],[390,6247,6249],{"className":6248},[2914],[390,6250,6252],{"className":6251,"style":5932},[2918],[390,6253,6254,6257],{"style":5935},[390,6255],{"className":6256,"style":2927},[2926],[390,6258,6260],{"className":6259},[2931,2932,2933,2934],[390,6261,6263],{"className":6262},[411,2934],[390,6264,5535],{"className":6265},[411,2934],[390,6267,710],{"className":6268},[709],[390,6270],{"className":6271,"style":1154},[561],[390,6273],{"className":6274,"style":714},[561],[390,6276,5101],{"className":6277,"style":1485},[411,412],[390,6279],{"className":6280,"style":562},[561],[390,6282,602],{"className":6283},[566],[390,6285],{"className":6286,"style":562},[561],[390,6288,6290,6294,6326,6329,6332],{"className":6289},[402],[390,6291],{"className":6292,"style":6293},[406],"height:0.8852em;vertical-align:-0.0833em;",[390,6295,6297,6300],{"className":6296},[411],[390,6298,5091],{"className":6299},[411,412],[390,6301,6303],{"className":6302},[2905],[390,6304,6306],{"className":6305},[2909],[390,6307,6309],{"className":6308},[2914],[390,6310,6312],{"className":6311,"style":5932},[2918],[390,6313,6314,6317],{"style":5935},[390,6315],{"className":6316,"style":2927},[2926],[390,6318,6320],{"className":6319},[2931,2932,2933,2934],[390,6321,6323],{"className":6322},[411,2934],[390,6324,5535],{"className":6325},[411,2934],[390,6327],{"className":6328,"style":431},[561],[390,6330,1682],{"className":6331},[1119],[390,6333],{"className":6334,"style":431},[561],[390,6336,6338,6341,6347,6415,6421,6424,6456],{"className":6337},[402],[390,6339],{"className":6340,"style":5963},[406],[390,6342,6344],{"className":6343},[701],[390,6345,1543],{"className":6346},[1091,5973],[390,6348,6350,6353,6412],{"className":6349},[411],[390,6351],{"className":6352},[701,6033],[390,6354,6356],{"className":6355},[6037],[390,6357,6359,6404],{"className":6358},[2909,2910],[390,6360,6362,6401],{"className":6361},[2914],[390,6363,6365,6379,6387],{"className":6364,"style":6047},[2918],[390,6366,6367,6370],{"style":6050},[390,6368],{"className":6369,"style":6054},[2926],[390,6371,6373],{"className":6372},[2931,2932,2933,2934],[390,6374,6376],{"className":6375},[411,2934],[390,6377,671],{"className":6378},[411,412,2934],[390,6380,6381,6384],{"style":6066},[390,6382],{"className":6383,"style":6054},[2926],[390,6385],{"className":6386,"style":6074},[6073],[390,6388,6389,6392],{"style":6077},[390,6390],{"className":6391,"style":6054},[2926],[390,6393,6395],{"className":6394},[2931,2932,2933,2934],[390,6396,6398],{"className":6397},[411,2934],[390,6399,489],{"className":6400},[411,412,2934],[390,6402,2951],{"className":6403},[2950],[390,6405,6407],{"className":6406},[2914],[390,6408,6410],{"className":6409,"style":6099},[2918],[390,6411],{},[390,6413],{"className":6414},[721,6033],[390,6416,6418],{"className":6417},[721],[390,6419,1557],{"className":6420},[1091,5973],[390,6422],{"className":6423,"style":714},[561],[390,6425,6427,6430],{"className":6426},[411],[390,6428,5101],{"className":6429,"style":1485},[411,412],[390,6431,6433],{"className":6432},[2905],[390,6434,6436],{"className":6435},[2909],[390,6437,6439],{"className":6438},[2914],[390,6440,6442],{"className":6441,"style":5932},[2918],[390,6443,6444,6447],{"style":5935},[390,6445],{"className":6446,"style":2927},[2926],[390,6448,6450],{"className":6449},[2931,2932,2933,2934],[390,6451,6453],{"className":6452},[411,2934],[390,6454,5535],{"className":6455},[411,2934],[390,6457,1203],{"className":6458},[411],[2111,6460,6462],{"className":2113,"code":6461,"language":2115,"meta":376,"style":376},"caption: $\\textsc{Extended-Euclid}(a, b)$ — returns $(g, x, y)$ with $ax+by=g=\\gcd(a,b)$\nif $b = 0$ then\n  return $(a,\\ 1,\\ 0)$\n$(g,\\ x',\\ y') \\gets \\textsc{Extended-Euclid}(b,\\ a \\bmod b)$\n$x \\gets y'$\n$y \\gets x' - \\lfloor a \u002F b \\rfloor \\cdot y'$\nreturn $(g,\\ x,\\ y)$\n",[2117,6463,6464,6469,6474,6479,6484,6489,6494],{"__ignoreMap":376},[390,6465,6466],{"class":2121,"line":6},[390,6467,6468],{},"caption: $\\textsc{Extended-Euclid}(a, b)$ — returns $(g, x, y)$ with $ax+by=g=\\gcd(a,b)$\n",[390,6470,6471],{"class":2121,"line":18},[390,6472,6473],{},"if $b = 0$ then\n",[390,6475,6476],{"class":2121,"line":24},[390,6477,6478],{},"  return $(a,\\ 1,\\ 0)$\n",[390,6480,6481],{"class":2121,"line":73},[390,6482,6483],{},"$(g,\\ x',\\ y') \\gets \\textsc{Extended-Euclid}(b,\\ a \\bmod b)$\n",[390,6485,6486],{"class":2121,"line":102},[390,6487,6488],{},"$x \\gets y'$\n",[390,6490,6491],{"class":2121,"line":108},[390,6492,6493],{},"$y \\gets x' - \\lfloor a \u002F b \\rfloor \\cdot y'$\n",[390,6495,6496],{"class":2121,"line":116},[390,6497,6498],{},"return $(g,\\ x,\\ y)$\n",[381,6500,6501,6502,6553,6554,6592,6593,6623],{},"It performs the same divisions as plain Euclid, so it is also\n",[390,6503,6505],{"className":6504},[393],[390,6506,6508],{"className":6507,"ariaHidden":398},[397],[390,6509,6511,6514,6517,6520,6526,6529,6535,6538,6541,6544,6547,6550],{"className":6510},[402],[390,6512],{"className":6513,"style":554},[406],[390,6515,2731],{"className":6516,"style":1401},[411,412],[390,6518,702],{"className":6519},[701],[390,6521,6523],{"className":6522},[692],[390,6524,2742],{"className":6525,"style":2741},[411,696],[390,6527],{"className":6528,"style":714},[561],[390,6530,6532],{"className":6531},[692],[390,6533,2788],{"className":6534},[411,696],[390,6536,702],{"className":6537},[701],[390,6539,489],{"className":6540},[411,412],[390,6542,710],{"className":6543},[709],[390,6545],{"className":6546,"style":714},[561],[390,6548,671],{"className":6549},[411,412],[390,6551,2807],{"className":6552},[721],". The table below traces ",[390,6555,6557],{"className":6556},[393],[390,6558,6560],{"className":6559,"ariaHidden":398},[397],[390,6561,6563,6566,6572,6575,6579,6582,6585,6589],{"className":6562},[402],[390,6564],{"className":6565,"style":554},[406],[390,6567,6569],{"className":6568},[692],[390,6570,697],{"className":6571},[411,696],[390,6573,702],{"className":6574},[701],[390,6576,6578],{"className":6577},[411],"240",[390,6580,710],{"className":6581},[709],[390,6583],{"className":6584,"style":714},[561],[390,6586,6588],{"className":6587},[411],"46",[390,6590,722],{"className":6591},[721],": the forward pass\nfills the remainder\u002Fquotient columns top-down, and the coefficients ",[390,6594,6596],{"className":6595},[393],[390,6597,6599],{"className":6598,"ariaHidden":398},[397],[390,6600,6602,6605,6608,6611,6614,6617,6620],{"className":6601},[402],[390,6603],{"className":6604,"style":554},[406],[390,6606,702],{"className":6607},[701],[390,6609,5091],{"className":6610},[411,412],[390,6612,710],{"className":6613},[709],[390,6615],{"className":6616,"style":714},[561],[390,6618,5101],{"className":6619,"style":1485},[411,412],[390,6621,722],{"className":6622},[721]," are\nfilled bottom-up by the back-substitution recurrence, landing on Bézout\ncoefficients for the original pair in the top row.",[3472,6625,6627,7065],{"className":6626},[3475,3476],[3478,6628,6632],{"xmlns":3480,"width":6629,"height":6630,"viewBox":6631},"329.039","226.160","-75 -75 246.779 169.620",[2039,6633,6634,6641,6648,6681,6688,6695,6702,6705,6712,6719,6726,6733,6748,6755,6761,6767,6774,6781,6788,6801,6807,6813,6820,6826,6840,6846,6852,6858,6864,6870,6876,6889,6895,6901,6907,6914,6920,6926,6932,6938,6944,6950,6956,6962,6965],{"stroke":3486,"style":3487},[2039,6635,6637],{"transform":6636},"translate(-2.45 1.937)",[3489,6638],{"d":6639,"fill":3486,"stroke":3486,"className":6640,"style":3504},"M-46.510-64.336Q-46.906-64.336-47.192-64.540Q-47.477-64.745-47.624-65.079Q-47.772-65.413-47.772-65.804Q-47.772-66.239-47.598-66.700Q-47.424-67.162-47.112-67.553Q-46.800-67.944-46.390-68.179Q-45.979-68.414-45.539-68.414Q-45.271-68.414-45.054-68.276Q-44.836-68.137-44.704-67.891Q-44.665-68.041-44.557-68.137Q-44.449-68.234-44.309-68.234Q-44.186-68.234-44.102-68.161Q-44.019-68.089-44.019-67.966Q-44.019-67.913-44.028-67.882L-44.647-65.391Q-44.704-65.193-44.704-64.995Q-44.704-64.600-44.441-64.600Q-44.155-64.600-44.021-64.923Q-43.887-65.246-43.768-65.751Q-43.759-65.782-43.735-65.806Q-43.711-65.830-43.676-65.830L-43.570-65.830Q-43.522-65.830-43.500-65.797Q-43.478-65.764-43.478-65.716Q-43.592-65.285-43.683-65.032Q-43.773-64.780-43.966-64.558Q-44.159-64.336-44.458-64.336Q-44.766-64.336-45.014-64.507Q-45.262-64.679-45.333-64.969Q-45.588-64.683-45.884-64.510Q-46.181-64.336-46.510-64.336M-46.493-64.600Q-46.163-64.600-45.853-64.841Q-45.544-65.083-45.333-65.399Q-45.324-65.408-45.324-65.426L-44.827-67.390Q-44.884-67.707-45.076-67.931Q-45.267-68.155-45.557-68.155Q-45.926-68.155-46.225-67.836Q-46.524-67.518-46.691-67.109Q-46.827-66.762-46.952-66.252Q-47.077-65.742-47.077-65.417Q-47.077-65.092-46.939-64.846Q-46.800-64.600-46.493-64.600",[3503],[2039,6642,6644],{"transform":6643},"translate(37.852 3.125)",[3489,6645],{"d":6646,"fill":3486,"stroke":3486,"className":6647,"style":3504},"M-46.510-64.336Q-47.086-64.336-47.407-64.767Q-47.728-65.197-47.728-65.777Q-47.728-66.182-47.644-66.410L-46.765-69.908Q-46.730-70.058-46.730-70.132Q-46.730-70.269-47.297-70.269Q-47.394-70.269-47.394-70.387Q-47.394-70.444-47.363-70.515Q-47.332-70.585-47.266-70.585L-46.045-70.682Q-45.992-70.682-45.959-70.653Q-45.926-70.624-45.926-70.576L-45.926-70.541L-46.585-67.931Q-46.062-68.414-45.539-68.414Q-45.153-68.414-44.862-68.210Q-44.572-68.005-44.425-67.671Q-44.278-67.337-44.278-66.946Q-44.278-66.362-44.581-65.753Q-44.884-65.145-45.405-64.740Q-45.926-64.336-46.510-64.336M-46.493-64.600Q-46.124-64.600-45.820-64.923Q-45.517-65.246-45.359-65.641Q-45.214-65.997-45.093-66.505Q-44.972-67.012-44.972-67.333Q-44.972-67.658-45.117-67.906Q-45.262-68.155-45.557-68.155Q-46.159-68.155-46.730-67.355L-46.972-66.362Q-47.117-65.738-47.117-65.474Q-47.117-65.131-46.965-64.865Q-46.814-64.600-46.493-64.600",[3503],[2039,6649,6650,6657,6663,6669,6675],{"stroke":3491,"fontSize":3495},[2039,6651,6653],{"transform":6652},"translate(60.418 2.25)",[3489,6654],{"d":6655,"fill":3486,"stroke":3486,"className":6656,"style":3504},"M-46.730-62.798Q-46.730-62.868-46.697-62.936Q-46.664-63.004-46.603-63.004Q-46.242-63.004-46.089-63.035Q-46.005-63.053-45.961-63.092Q-45.917-63.132-45.895-63.180Q-45.873-63.229-45.847-63.338L-45.478-64.824Q-46.001-64.336-46.510-64.336Q-46.906-64.336-47.192-64.540Q-47.477-64.745-47.624-65.079Q-47.772-65.413-47.772-65.804Q-47.772-66.239-47.598-66.700Q-47.424-67.162-47.112-67.553Q-46.800-67.944-46.390-68.179Q-45.979-68.414-45.539-68.414Q-45.262-68.414-45.029-68.251Q-44.797-68.089-44.678-67.830Q-44.586-67.975-44.364-68.194Q-44.142-68.414-44.036-68.414Q-43.992-68.414-43.962-68.383Q-43.931-68.353-43.931-68.309L-43.931-68.269L-45.179-63.277Q-45.188-63.224-45.196-63.182Q-45.205-63.141-45.205-63.114Q-45.205-63.004-44.630-63.004Q-44.586-63.004-44.559-62.974Q-44.533-62.943-44.533-62.890Q-44.533-62.692-44.695-62.692L-46.629-62.692Q-46.664-62.692-46.697-62.730Q-46.730-62.767-46.730-62.798M-46.493-64.600Q-46.159-64.600-45.853-64.837Q-45.548-65.074-45.333-65.399L-44.827-67.390Q-44.884-67.707-45.076-67.931Q-45.267-68.155-45.557-68.155Q-45.926-68.155-46.225-67.836Q-46.524-67.518-46.691-67.109Q-46.827-66.762-46.952-66.252Q-47.077-65.742-47.077-65.417Q-47.077-65.092-46.939-64.846Q-46.800-64.600-46.493-64.600",[3503],[2039,6658,6659],{"transform":6652},[3489,6660],{"d":6661,"fill":3486,"stroke":3486,"className":6662,"style":3504},"M-34.606-65.580L-40.412-65.580Q-40.491-65.593-40.541-65.643Q-40.592-65.694-40.592-65.769Q-40.592-65.918-40.412-65.966L-34.606-65.966Q-34.435-65.914-34.435-65.769Q-34.435-65.615-34.606-65.580M-34.606-67.408L-40.412-67.408Q-40.592-67.438-40.592-67.597Q-40.592-67.746-40.412-67.794L-34.606-67.794Q-34.435-67.742-34.435-67.597Q-34.435-67.443-34.606-67.408",[3503],[2039,6664,6665],{"transform":6652},[3489,6666],{"d":6667,"fill":3486,"stroke":3486,"className":6668,"style":3504},"M-29.738-62.350L-29.738-71.016Q-29.707-71.187-29.540-71.187Q-29.466-71.187-29.415-71.139Q-29.364-71.090-29.351-71.016L-29.351-62.565L-27.598-62.565Q-27.426-62.530-27.426-62.367Q-27.426-62.213-27.598-62.178L-29.558-62.178Q-29.703-62.178-29.738-62.350",[3503],[2039,6670,6671],{"transform":6652},[3489,6672],{"d":6673,"fill":3486,"stroke":3486,"className":6674,"style":3504},"M-25.609-64.336Q-26.005-64.336-26.291-64.540Q-26.576-64.745-26.723-65.079Q-26.871-65.413-26.871-65.804Q-26.871-66.239-26.697-66.700Q-26.523-67.162-26.211-67.553Q-25.899-67.944-25.489-68.179Q-25.078-68.414-24.638-68.414Q-24.370-68.414-24.153-68.276Q-23.935-68.137-23.803-67.891Q-23.764-68.041-23.656-68.137Q-23.548-68.234-23.408-68.234Q-23.285-68.234-23.201-68.161Q-23.118-68.089-23.118-67.966Q-23.118-67.913-23.127-67.882L-23.746-65.391Q-23.803-65.193-23.803-64.995Q-23.803-64.600-23.540-64.600Q-23.254-64.600-23.120-64.923Q-22.986-65.246-22.867-65.751Q-22.858-65.782-22.834-65.806Q-22.810-65.830-22.775-65.830L-22.669-65.830Q-22.621-65.830-22.599-65.797Q-22.577-65.764-22.577-65.716Q-22.691-65.285-22.782-65.032Q-22.872-64.780-23.065-64.558Q-23.258-64.336-23.557-64.336Q-23.865-64.336-24.113-64.507Q-24.361-64.679-24.432-64.969Q-24.687-64.683-24.983-64.510Q-25.280-64.336-25.609-64.336M-25.592-64.600Q-25.262-64.600-24.952-64.841Q-24.643-65.083-24.432-65.399Q-24.423-65.408-24.423-65.426L-23.926-67.390Q-23.983-67.707-24.175-67.931Q-24.366-68.155-24.656-68.155Q-25.025-68.155-25.324-67.836Q-25.623-67.518-25.790-67.109Q-25.926-66.762-26.051-66.252Q-26.176-65.742-26.176-65.417Q-26.176-65.092-26.038-64.846Q-25.899-64.600-25.592-64.600M-21.821-62.376Q-21.821-62.420-21.813-62.437L-18.600-71.068Q-18.556-71.187-18.420-71.187Q-18.345-71.187-18.288-71.130Q-18.231-71.073-18.231-70.998Q-18.231-70.954-18.240-70.937L-21.443-62.306Q-21.501-62.187-21.624-62.187Q-21.707-62.187-21.764-62.244Q-21.821-62.301-21.821-62.376M-16.095-64.336Q-16.671-64.336-16.992-64.767Q-17.313-65.197-17.313-65.777Q-17.313-66.182-17.229-66.410L-16.350-69.908Q-16.315-70.058-16.315-70.132Q-16.315-70.269-16.882-70.269Q-16.979-70.269-16.979-70.387Q-16.979-70.444-16.948-70.515Q-16.917-70.585-16.851-70.585L-15.629-70.682Q-15.577-70.682-15.544-70.653Q-15.511-70.624-15.511-70.576L-15.511-70.541L-16.170-67.931Q-15.647-68.414-15.124-68.414Q-14.737-68.414-14.447-68.210Q-14.157-68.005-14.010-67.671Q-13.863-67.337-13.863-66.946Q-13.863-66.362-14.166-65.753Q-14.469-65.145-14.990-64.740Q-15.511-64.336-16.095-64.336M-16.078-64.600Q-15.709-64.600-15.405-64.923Q-15.102-65.246-14.944-65.641Q-14.799-65.997-14.678-66.505Q-14.557-67.012-14.557-67.333Q-14.557-67.658-14.702-67.906Q-14.847-68.155-15.142-68.155Q-15.744-68.155-16.315-67.355L-16.557-66.362Q-16.702-65.738-16.702-65.474Q-16.702-65.131-16.550-64.865Q-16.398-64.600-16.078-64.600",[3503],[2039,6676,6677],{"transform":6652},[3489,6678],{"d":6679,"fill":3486,"stroke":3486,"className":6680,"style":3504},"M-11.413-62.178L-13.382-62.178Q-13.452-62.191-13.502-62.246Q-13.553-62.301-13.553-62.367Q-13.553-62.534-13.382-62.565L-11.628-62.565L-11.628-71.016Q-11.597-71.187-11.430-71.187Q-11.356-71.187-11.305-71.136Q-11.255-71.086-11.242-71.016L-11.242-62.350Q-11.242-62.213-11.413-62.178",[3503],[2039,6682,6684],{"transform":6683},"translate(134.358 1.937)",[3489,6685],{"d":6686,"fill":3486,"stroke":3486,"className":6687,"style":3504},"M-47.394-64.608Q-47.394-64.661-47.385-64.696L-46.717-67.364Q-46.664-67.562-46.664-67.759Q-46.664-68.155-46.928-68.155Q-47.214-68.155-47.348-67.832Q-47.482-67.509-47.600-67.003Q-47.618-66.920-47.693-66.920L-47.798-66.920Q-47.846-66.920-47.868-66.959Q-47.890-66.999-47.890-67.039Q-47.728-67.658-47.528-68.036Q-47.328-68.414-46.906-68.414Q-46.598-68.414-46.352-68.240Q-46.106-68.067-46.036-67.777Q-45.535-68.414-44.867-68.414Q-44.568-68.414-44.348-68.238Q-44.129-68.062-44.129-67.768Q-44.129-67.535-44.276-67.364Q-44.423-67.192-44.647-67.192Q-44.788-67.192-44.893-67.285Q-44.999-67.377-44.999-67.522Q-44.999-67.720-44.865-67.867Q-44.731-68.014-44.533-68.036Q-44.669-68.155-44.884-68.155Q-45.561-68.155-46.080-67.210L-46.708-64.661Q-46.739-64.525-46.855-64.430Q-46.972-64.336-47.108-64.336Q-47.227-64.336-47.310-64.411Q-47.394-64.485-47.394-64.608",[3503],[2039,6689,6691],{"transform":6690},"translate(168.095 1.937)",[3489,6692],{"d":6693,"fill":3486,"stroke":3486,"className":6694,"style":3504},"M-47.403-64.727Q-47.227-64.600-46.954-64.600Q-46.664-64.600-46.451-64.854Q-46.238-65.109-46.159-65.426L-45.755-67.039Q-45.667-67.416-45.667-67.605Q-45.667-67.830-45.794-67.992Q-45.922-68.155-46.141-68.155Q-46.559-68.155-46.891-67.805Q-47.222-67.456-47.341-67.003Q-47.359-66.920-47.429-66.920L-47.539-66.920Q-47.627-66.920-47.627-67.039Q-47.495-67.579-47.073-67.997Q-46.651-68.414-46.124-68.414Q-45.790-68.414-45.515-68.243Q-45.240-68.071-45.126-67.777Q-44.968-68.049-44.722-68.232Q-44.476-68.414-44.190-68.414Q-43.852-68.414-43.579-68.247Q-43.307-68.080-43.307-67.759Q-43.307-67.531-43.450-67.362Q-43.592-67.192-43.830-67.192Q-43.970-67.192-44.076-67.285Q-44.181-67.377-44.181-67.522Q-44.181-67.707-44.058-67.849Q-43.935-67.992-43.751-68.027Q-43.931-68.155-44.208-68.155Q-44.498-68.155-44.709-67.898Q-44.920-67.641-44.999-67.324L-45.403-65.716Q-45.495-65.355-45.495-65.158Q-45.495-64.925-45.366-64.762Q-45.236-64.600-45.007-64.600Q-44.722-64.600-44.474-64.769Q-44.225-64.938-44.052-65.210Q-43.878-65.483-43.812-65.751Q-43.803-65.782-43.779-65.806Q-43.755-65.830-43.720-65.830L-43.614-65.830Q-43.575-65.830-43.549-65.793Q-43.522-65.755-43.522-65.716Q-43.610-65.369-43.830-65.050Q-44.049-64.731-44.366-64.534Q-44.682-64.336-45.025-64.336Q-45.363-64.336-45.638-64.505Q-45.913-64.674-46.036-64.978Q-46.185-64.709-46.434-64.523Q-46.682-64.336-46.963-64.336Q-47.306-64.336-47.580-64.503Q-47.855-64.670-47.855-64.995Q-47.855-65.219-47.706-65.391Q-47.556-65.562-47.323-65.562Q-47.178-65.562-47.075-65.470Q-46.972-65.377-46.972-65.228Q-46.972-65.052-47.095-64.905Q-47.218-64.758-47.403-64.727",[3503],[2039,6696,6698],{"transform":6697},"translate(196.73 1.062)",[3489,6699],{"d":6700,"fill":3486,"stroke":3486,"className":6701,"style":3504},"M-47.275-63.141Q-47.187-62.987-47.014-62.921Q-46.840-62.855-46.638-62.855Q-46.313-62.855-46.049-63.031Q-45.785-63.207-45.603-63.477Q-45.421-63.747-45.289-64.077Q-45.157-64.406-45.082-64.705Q-45.482-64.336-45.952-64.336Q-46.317-64.336-46.581-64.463Q-46.844-64.591-46.989-64.837Q-47.134-65.083-47.134-65.435Q-47.134-65.720-47.058-66.039Q-46.981-66.357-46.866-66.658Q-46.752-66.959-46.594-67.364Q-46.475-67.649-46.475-67.882Q-46.475-68.001-46.521-68.078Q-46.568-68.155-46.673-68.155Q-47.025-68.155-47.260-67.794Q-47.495-67.434-47.600-67.003Q-47.618-66.920-47.693-66.920L-47.798-66.920Q-47.846-66.920-47.868-66.959Q-47.890-66.999-47.890-67.039Q-47.802-67.381-47.642-67.687Q-47.482-67.992-47.231-68.203Q-46.981-68.414-46.655-68.414Q-46.317-68.414-46.086-68.208Q-45.856-68.001-45.856-67.658Q-45.856-67.478-45.917-67.324Q-45.948-67.236-46.100-66.841Q-46.251-66.445-46.321-66.215Q-46.392-65.984-46.438-65.760Q-46.484-65.536-46.484-65.312Q-46.484-65.013-46.354-64.806Q-46.225-64.600-45.944-64.600Q-45.368-64.600-44.937-65.294L-44.260-68.001Q-44.225-68.142-44.111-68.229Q-43.997-68.317-43.856-68.317Q-43.742-68.317-43.661-68.240Q-43.579-68.164-43.579-68.045Q-43.579-67.992-43.588-67.966L-44.467-64.419Q-44.594-63.932-44.920-63.514Q-45.245-63.097-45.702-62.844Q-46.159-62.591-46.647-62.591Q-46.897-62.591-47.128-62.681Q-47.359-62.771-47.501-62.952Q-47.644-63.132-47.644-63.382Q-47.644-63.633-47.497-63.811Q-47.350-63.989-47.117-63.989Q-46.972-63.989-46.869-63.896Q-46.765-63.804-46.765-63.655Q-46.765-63.453-46.917-63.297Q-47.069-63.141-47.275-63.141",[3503],[3489,6703],{"fill":3491,"d":6704,"style":4845},"M-65.203-54.478h233.312",[2039,6706,6708],{"transform":6707},"translate(-6.937 28.507)",[3489,6709],{"d":6710,"fill":3486,"stroke":3486,"className":6711,"style":3504},"M-44.225-64.437L-47.675-64.437L-47.675-64.670Q-47.675-64.683-47.644-64.714L-46.190-66.291Q-45.724-66.788-45.471-67.093Q-45.218-67.399-45.027-67.810Q-44.836-68.221-44.836-68.660Q-44.836-69.249-45.159-69.682Q-45.482-70.115-46.062-70.115Q-46.326-70.115-46.572-70.005Q-46.818-69.895-46.994-69.708Q-47.170-69.521-47.266-69.271L-47.187-69.271Q-46.985-69.271-46.842-69.135Q-46.699-68.999-46.699-68.783Q-46.699-68.577-46.842-68.438Q-46.985-68.300-47.187-68.300Q-47.389-68.300-47.532-68.443Q-47.675-68.585-47.675-68.783Q-47.675-69.245-47.438-69.618Q-47.200-69.992-46.800-70.211Q-46.401-70.431-45.952-70.431Q-45.429-70.431-44.975-70.216Q-44.520-70-44.247-69.601Q-43.975-69.201-43.975-68.660Q-43.975-68.265-44.146-67.911Q-44.318-67.557-44.583-67.278Q-44.849-66.999-45.300-66.614Q-45.750-66.230-45.829-66.155L-46.853-65.193L-46.036-65.193Q-45.385-65.193-44.948-65.204Q-44.511-65.215-44.480-65.237Q-44.410-65.320-44.355-65.560Q-44.300-65.799-44.260-66.067L-43.975-66.067L-44.225-64.437M-40.815-65.914L-43.254-65.914L-43.254-66.230L-40.428-70.378Q-40.384-70.431-40.319-70.431L-40.165-70.431Q-40.125-70.431-40.092-70.398Q-40.059-70.365-40.059-70.321L-40.059-66.230L-39.158-66.230L-39.158-65.914L-40.059-65.914L-40.059-65.048Q-40.059-64.753-39.158-64.753L-39.158-64.437L-41.712-64.437L-41.712-64.753Q-41.351-64.753-41.083-64.808Q-40.815-64.863-40.815-65.048L-40.815-65.914M-40.758-69.403L-42.920-66.230L-40.758-66.230L-40.758-69.403M-36.583-64.239Q-37.708-64.239-38.121-65.136Q-38.534-66.032-38.534-67.307Q-38.534-68.080-38.385-68.779Q-38.236-69.478-37.800-69.954Q-37.365-70.431-36.583-70.431Q-35.805-70.431-35.370-69.952Q-34.935-69.473-34.786-68.777Q-34.636-68.080-34.636-67.307Q-34.636-66.028-35.049-65.134Q-35.463-64.239-36.583-64.239M-36.583-64.499Q-36.065-64.499-35.814-65.010Q-35.564-65.522-35.507-66.133Q-35.449-66.744-35.449-67.452Q-35.449-68.137-35.507-68.697Q-35.564-69.258-35.816-69.715Q-36.069-70.172-36.583-70.172Q-36.987-70.172-37.225-69.895Q-37.462-69.618-37.570-69.177Q-37.677-68.735-37.702-68.342Q-37.726-67.948-37.726-67.452Q-37.726-66.946-37.702-66.518Q-37.677-66.089-37.570-65.606Q-37.462-65.123-37.223-64.811Q-36.983-64.499-36.583-64.499",[3503],[2039,6713,6715],{"transform":6714},"translate(35.209 28.507)",[3489,6716],{"d":6717,"fill":3486,"stroke":3486,"className":6718,"style":3504},"M-45.434-65.914L-47.873-65.914L-47.873-66.230L-45.047-70.378Q-45.003-70.431-44.937-70.431L-44.783-70.431Q-44.744-70.431-44.711-70.398Q-44.678-70.365-44.678-70.321L-44.678-66.230L-43.777-66.230L-43.777-65.914L-44.678-65.914L-44.678-65.048Q-44.678-64.753-43.777-64.753L-43.777-64.437L-46.330-64.437L-46.330-64.753Q-45.970-64.753-45.702-64.808Q-45.434-64.863-45.434-65.048L-45.434-65.914M-45.377-69.403L-47.539-66.230L-45.377-66.230L-45.377-69.403M-41.202-64.239Q-41.936-64.239-42.366-64.720Q-42.797-65.202-42.962-65.894Q-43.127-66.586-43.127-67.333Q-43.127-68.062-42.834-68.785Q-42.542-69.508-41.988-69.970Q-41.435-70.431-40.688-70.431Q-40.191-70.431-39.855-70.165Q-39.519-69.899-39.519-69.416Q-39.519-69.236-39.646-69.108Q-39.774-68.981-39.949-68.981Q-40.130-68.981-40.259-69.106Q-40.389-69.231-40.389-69.416Q-40.389-69.530-40.332-69.634Q-40.275-69.737-40.174-69.796Q-40.072-69.855-39.949-69.855Q-39.945-69.855-39.941-69.853Q-39.936-69.851-39.932-69.847Q-40.046-70.014-40.255-70.093Q-40.464-70.172-40.688-70.172Q-41.132-70.172-41.490-69.871Q-41.848-69.570-42.037-69.117Q-42.270-68.511-42.270-67.478Q-42.098-67.843-41.797-68.071Q-41.496-68.300-41.110-68.300Q-40.705-68.300-40.360-68.133Q-40.015-67.966-39.778-67.685Q-39.541-67.403-39.411-67.041Q-39.281-66.678-39.281-66.274Q-39.281-65.729-39.525-65.263Q-39.769-64.797-40.209-64.518Q-40.648-64.239-41.202-64.239M-41.202-64.525Q-40.740-64.525-40.505-64.782Q-40.270-65.039-40.204-65.413Q-40.138-65.786-40.138-66.256L-40.138-66.291Q-40.138-66.779-40.195-67.144Q-40.253-67.509-40.481-67.772Q-40.710-68.036-41.153-68.036Q-41.523-68.036-41.773-67.792Q-42.024-67.548-42.138-67.184Q-42.252-66.819-42.252-66.472Q-42.252-66.353-42.243-66.291Q-42.243-66.274-42.246-66.263Q-42.248-66.252-42.252-66.239Q-42.252-65.588-42.015-65.057Q-41.778-64.525-41.202-64.525",[3503],[2039,6720,6722],{"transform":6721},"translate(77.355 28.507)",[3489,6723],{"d":6724,"fill":3486,"stroke":3486,"className":6725,"style":3504},"M-47.306-65.443Q-47.165-65.030-46.805-64.778Q-46.444-64.525-46.009-64.525Q-45.557-64.525-45.291-64.778Q-45.025-65.030-44.922-65.415Q-44.819-65.799-44.819-66.256Q-44.819-67.957-45.728-67.957Q-46.049-67.957-46.278-67.863Q-46.506-67.768-46.636-67.649Q-46.765-67.531-46.877-67.392Q-46.989-67.254-47.025-67.245L-47.108-67.245Q-47.152-67.245-47.183-67.276Q-47.214-67.307-47.214-67.355L-47.214-70.352Q-47.214-70.383-47.178-70.407Q-47.143-70.431-47.117-70.431L-47.077-70.431Q-46.444-70.141-45.772-70.141Q-45.100-70.141-44.458-70.431L-44.432-70.431Q-44.401-70.431-44.368-70.409Q-44.335-70.387-44.335-70.352L-44.335-70.251Q-44.335-70.247-44.344-70.229Q-44.353-70.211-44.353-70.207Q-44.669-69.812-45.139-69.590Q-45.610-69.368-46.106-69.368Q-46.515-69.368-46.897-69.478L-46.897-67.759Q-46.440-68.216-45.728-68.216Q-45.218-68.216-44.819-67.935Q-44.419-67.654-44.197-67.199Q-43.975-66.744-43.975-66.239Q-43.975-65.689-44.254-65.230Q-44.533-64.771-44.999-64.505Q-45.465-64.239-46.009-64.239Q-46.449-64.239-46.833-64.466Q-47.218-64.692-47.446-65.072Q-47.675-65.452-47.675-65.896Q-47.675-66.089-47.543-66.221Q-47.411-66.353-47.214-66.353Q-47.082-66.353-46.978-66.294Q-46.875-66.234-46.816-66.131Q-46.757-66.028-46.757-65.896Q-46.757-65.698-46.884-65.566Q-47.011-65.435-47.214-65.435Q-47.275-65.435-47.306-65.443",[3503],[2039,6727,6729],{"transform":6728},"translate(131.948 28.507)",[3489,6730],{"d":6731,"fill":3486,"stroke":3486,"className":6732,"style":3504},"M-44.225-64.437L-47.257-64.437L-47.257-64.753Q-46.106-64.753-46.106-65.048L-46.106-69.772Q-46.594-69.539-47.315-69.539L-47.315-69.855Q-46.185-69.855-45.623-70.431L-45.478-70.431Q-45.443-70.431-45.410-70.398Q-45.377-70.365-45.377-70.330L-45.377-65.048Q-45.377-64.753-44.225-64.753L-44.225-64.437M-41.202-64.239Q-42.327-64.239-42.740-65.136Q-43.153-66.032-43.153-67.307Q-43.153-68.080-43.004-68.779Q-42.854-69.478-42.419-69.954Q-41.984-70.431-41.202-70.431Q-40.424-70.431-39.989-69.952Q-39.554-69.473-39.404-68.777Q-39.255-68.080-39.255-67.307Q-39.255-66.028-39.668-65.134Q-40.081-64.239-41.202-64.239M-41.202-64.499Q-40.683-64.499-40.433-65.010Q-40.182-65.522-40.125-66.133Q-40.068-66.744-40.068-67.452Q-40.068-68.137-40.125-68.697Q-40.182-69.258-40.435-69.715Q-40.688-70.172-41.202-70.172Q-41.606-70.172-41.843-69.895Q-42.081-69.618-42.188-69.177Q-42.296-68.735-42.320-68.342Q-42.344-67.948-42.344-67.452Q-42.344-66.946-42.320-66.518Q-42.296-66.089-42.188-65.606Q-42.081-65.123-41.841-64.811Q-41.602-64.499-41.202-64.499",[3503],[2039,6734,6735,6742],{"stroke":3491,"fontSize":3495},[2039,6736,6738],{"transform":6737},"translate(164.807 28.09)",[3489,6739],{"d":6740,"fill":3486,"stroke":3486,"className":6741,"style":3504},"M-41.896-66.489L-47.178-66.489Q-47.253-66.502-47.306-66.555Q-47.359-66.608-47.359-66.687Q-47.359-66.753-47.304-66.808Q-47.249-66.863-47.178-66.876L-41.896-66.876Q-41.826-66.863-41.775-66.812Q-41.725-66.762-41.725-66.687Q-41.725-66.520-41.896-66.489",[3503],[2039,6743,6744],{"transform":6737},[3489,6745],{"d":6746,"fill":3486,"stroke":3486,"className":6747,"style":3504},"M-39.874-64.824Q-39.627-64.525-39.021-64.525Q-38.740-64.525-38.500-64.663Q-38.261-64.802-38.083-65.024Q-37.905-65.246-37.795-65.509Q-37.562-66.085-37.562-67.201Q-37.729-66.836-38.034-66.612Q-38.340-66.388-38.722-66.388Q-39.258-66.388-39.674-66.667Q-40.089-66.946-40.320-67.412Q-40.550-67.878-40.550-68.405Q-40.550-68.818-40.403-69.187Q-40.256-69.557-39.992-69.833Q-39.729-70.110-39.359-70.271Q-38.990-70.431-38.577-70.431Q-38.019-70.431-37.645-70.139Q-37.272-69.847-37.068-69.383Q-36.863-68.919-36.784-68.403Q-36.705-67.887-36.705-67.355Q-36.705-66.639-36.973-65.916Q-37.241-65.193-37.764-64.716Q-38.287-64.239-39.012-64.239Q-39.562-64.239-39.939-64.488Q-40.317-64.736-40.317-65.254Q-40.317-65.373-40.260-65.476Q-40.203-65.580-40.102-65.639Q-40.001-65.698-39.874-65.698Q-39.689-65.698-39.566-65.566Q-39.443-65.435-39.443-65.254Q-39.443-65.079-39.570-64.951Q-39.698-64.824-39.874-64.824M-38.678-66.652Q-38.309-66.652-38.061-66.894Q-37.812-67.135-37.696-67.493Q-37.580-67.852-37.580-68.225Q-37.580-68.335-37.588-68.388Q-37.584-68.401-37.582-68.412Q-37.580-68.423-37.580-68.440Q-37.580-69.095-37.795-69.634Q-38.010-70.172-38.577-70.172Q-38.937-70.172-39.166-70.022Q-39.395-69.873-39.511-69.616Q-39.627-69.359-39.660-69.078Q-39.693-68.796-39.693-68.423L-39.693-68.388Q-39.693-68.062-39.667-67.775Q-39.641-67.487-39.542-67.228Q-39.443-66.968-39.232-66.810Q-39.021-66.652-38.678-66.652",[3503],[2039,6749,6751],{"transform":6750},"translate(194.544 28.507)",[3489,6752],{"d":6753,"fill":3486,"stroke":3486,"className":6754,"style":3504},"M-45.434-65.914L-47.873-65.914L-47.873-66.230L-45.047-70.378Q-45.003-70.431-44.937-70.431L-44.783-70.431Q-44.744-70.431-44.711-70.398Q-44.678-70.365-44.678-70.321L-44.678-66.230L-43.777-66.230L-43.777-65.914L-44.678-65.914L-44.678-65.048Q-44.678-64.753-43.777-64.753L-43.777-64.437L-46.330-64.437L-46.330-64.753Q-45.970-64.753-45.702-64.808Q-45.434-64.863-45.434-65.048L-45.434-65.914M-45.377-69.403L-47.539-66.230L-45.377-66.230L-45.377-69.403M-41.892-64.679Q-41.892-65.316-41.736-65.962Q-41.580-66.608-41.288-67.214Q-40.995-67.821-40.587-68.370L-39.769-69.478L-40.798-69.478Q-42.441-69.478-42.489-69.434Q-42.595-69.306-42.714-68.603L-42.999-68.603L-42.705-70.519L-42.415-70.519L-42.415-70.493Q-42.415-70.330-41.850-70.282Q-41.285-70.233-40.740-70.233L-39.022-70.233L-39.022-70.027Q-39.022-70.009-39.024-70Q-39.027-69.992-39.031-69.983L-40.319-68.234Q-40.569-67.882-40.716-67.456Q-40.863-67.030-40.929-66.566Q-40.995-66.103-41.008-65.692Q-41.022-65.281-41.022-64.679Q-41.022-64.499-41.147-64.369Q-41.272-64.239-41.452-64.239Q-41.571-64.239-41.674-64.296Q-41.778-64.354-41.835-64.457Q-41.892-64.560-41.892-64.679",[3503],[2039,6756,6758],{"transform":6757},"translate(-4.625 48.425)",[3489,6759],{"d":6717,"fill":3486,"stroke":3486,"className":6760,"style":3504},[3503],[2039,6762,6764],{"transform":6763},"translate(35.209 48.425)",[3489,6765],{"d":6731,"fill":3486,"stroke":3486,"className":6766,"style":3504},[3503],[2039,6768,6770],{"transform":6769},"translate(77.355 48.425)",[3489,6771],{"d":6772,"fill":3486,"stroke":3486,"className":6773,"style":3504},"M-45.434-65.914L-47.873-65.914L-47.873-66.230L-45.047-70.378Q-45.003-70.431-44.937-70.431L-44.783-70.431Q-44.744-70.431-44.711-70.398Q-44.678-70.365-44.678-70.321L-44.678-66.230L-43.777-66.230L-43.777-65.914L-44.678-65.914L-44.678-65.048Q-44.678-64.753-43.777-64.753L-43.777-64.437L-46.330-64.437L-46.330-64.753Q-45.970-64.753-45.702-64.808Q-45.434-64.863-45.434-65.048L-45.434-65.914M-45.377-69.403L-47.539-66.230L-45.377-66.230",[3503],[2039,6775,6777],{"transform":6776},"translate(134.26 48.425)",[3489,6778],{"d":6779,"fill":3486,"stroke":3486,"className":6780,"style":3504},"M-45.820-64.239Q-46.554-64.239-46.985-64.720Q-47.416-65.202-47.580-65.894Q-47.745-66.586-47.745-67.333Q-47.745-68.062-47.453-68.785Q-47.161-69.508-46.607-69.970Q-46.053-70.431-45.306-70.431Q-44.810-70.431-44.474-70.165Q-44.137-69.899-44.137-69.416Q-44.137-69.236-44.265-69.108Q-44.392-68.981-44.568-68.981Q-44.748-68.981-44.878-69.106Q-45.007-69.231-45.007-69.416Q-45.007-69.530-44.950-69.634Q-44.893-69.737-44.792-69.796Q-44.691-69.855-44.568-69.855Q-44.564-69.855-44.559-69.853Q-44.555-69.851-44.550-69.847Q-44.665-70.014-44.873-70.093Q-45.082-70.172-45.306-70.172Q-45.750-70.172-46.108-69.871Q-46.466-69.570-46.655-69.117Q-46.888-68.511-46.888-67.478Q-46.717-67.843-46.416-68.071Q-46.115-68.300-45.728-68.300Q-45.324-68.300-44.979-68.133Q-44.634-67.966-44.397-67.685Q-44.159-67.403-44.030-67.041Q-43.900-66.678-43.900-66.274Q-43.900-65.729-44.144-65.263Q-44.388-64.797-44.827-64.518Q-45.267-64.239-45.820-64.239M-45.820-64.525Q-45.359-64.525-45.124-64.782Q-44.889-65.039-44.823-65.413Q-44.757-65.786-44.757-66.256L-44.757-66.291Q-44.757-66.779-44.814-67.144Q-44.871-67.509-45.100-67.772Q-45.328-68.036-45.772-68.036Q-46.141-68.036-46.392-67.792Q-46.642-67.548-46.757-67.184Q-46.871-66.819-46.871-66.472Q-46.871-66.353-46.862-66.291Q-46.862-66.274-46.864-66.263Q-46.866-66.252-46.871-66.239Q-46.871-65.588-46.633-65.057Q-46.396-64.525-45.820-64.525",[3503],[2039,6782,6784],{"transform":6783},"translate(168.404 48.425)",[3489,6785],{"d":6786,"fill":3486,"stroke":3486,"className":6787,"style":3504},"M-44.225-64.437L-47.675-64.437L-47.675-64.670Q-47.675-64.683-47.644-64.714L-46.190-66.291Q-45.724-66.788-45.471-67.093Q-45.218-67.399-45.027-67.810Q-44.836-68.221-44.836-68.660Q-44.836-69.249-45.159-69.682Q-45.482-70.115-46.062-70.115Q-46.326-70.115-46.572-70.005Q-46.818-69.895-46.994-69.708Q-47.170-69.521-47.266-69.271L-47.187-69.271Q-46.985-69.271-46.842-69.135Q-46.699-68.999-46.699-68.783Q-46.699-68.577-46.842-68.438Q-46.985-68.300-47.187-68.300Q-47.389-68.300-47.532-68.443Q-47.675-68.585-47.675-68.783Q-47.675-69.245-47.438-69.618Q-47.200-69.992-46.800-70.211Q-46.401-70.431-45.952-70.431Q-45.429-70.431-44.975-70.216Q-44.520-70-44.247-69.601Q-43.975-69.201-43.975-68.660Q-43.975-68.265-44.146-67.911Q-44.318-67.557-44.583-67.278Q-44.849-66.999-45.300-66.614Q-45.750-66.230-45.829-66.155L-46.853-65.193L-46.036-65.193Q-45.385-65.193-44.948-65.204Q-44.511-65.215-44.480-65.237Q-44.410-65.320-44.355-65.560Q-44.300-65.799-44.260-66.067L-43.975-66.067",[3503],[2039,6789,6790,6796],{"stroke":3491,"fontSize":3495},[2039,6791,6793],{"transform":6792},"translate(193.26 48.008)",[3489,6794],{"d":6740,"fill":3486,"stroke":3486,"className":6795,"style":3504},[3503],[2039,6797,6798],{"transform":6792},[3489,6799],{"d":6746,"fill":3486,"stroke":3486,"className":6800,"style":3504},[3503],[2039,6802,6804],{"transform":6803},"translate(-4.625 68.341)",[3489,6805],{"d":6731,"fill":3486,"stroke":3486,"className":6806,"style":3504},[3503],[2039,6808,6810],{"transform":6809},"translate(37.521 68.341)",[3489,6811],{"d":6779,"fill":3486,"stroke":3486,"className":6812,"style":3504},[3503],[2039,6814,6816],{"transform":6815},"translate(77.355 68.341)",[3489,6817],{"d":6818,"fill":3486,"stroke":3486,"className":6819,"style":3504},"M-44.225-64.437L-47.257-64.437L-47.257-64.753Q-46.106-64.753-46.106-65.048L-46.106-69.772Q-46.594-69.539-47.315-69.539L-47.315-69.855Q-46.185-69.855-45.623-70.431L-45.478-70.431Q-45.443-70.431-45.410-70.398Q-45.377-70.365-45.377-70.330L-45.377-65.048Q-45.377-64.753-44.225-64.753",[3503],[2039,6821,6823],{"transform":6822},"translate(134.26 68.341)",[3489,6824],{"d":6772,"fill":3486,"stroke":3486,"className":6825,"style":3504},[3503],[2039,6827,6828,6834],{"stroke":3491,"fontSize":3495},[2039,6829,6831],{"transform":6830},"translate(164.807 67.925)",[3489,6832],{"d":6740,"fill":3486,"stroke":3486,"className":6833,"style":3504},[3503],[2039,6835,6836],{"transform":6830},[3489,6837],{"d":6838,"fill":3486,"stroke":3486,"className":6839,"style":3504},"M-37.030-64.437L-40.062-64.437L-40.062-64.753Q-38.911-64.753-38.911-65.048L-38.911-69.772Q-39.399-69.539-40.120-69.539L-40.120-69.855Q-38.990-69.855-38.428-70.431L-38.283-70.431Q-38.248-70.431-38.215-70.398Q-38.182-70.365-38.182-70.330L-38.182-65.048Q-38.182-64.753-37.030-64.753",[3503],[2039,6841,6843],{"transform":6842},"translate(196.857 68.341)",[3489,6844],{"d":6786,"fill":3486,"stroke":3486,"className":6845,"style":3504},[3503],[2039,6847,6849],{"transform":6848},"translate(-2.312 88.258)",[3489,6850],{"d":6779,"fill":3486,"stroke":3486,"className":6851,"style":3504},[3503],[2039,6853,6855],{"transform":6854},"translate(37.521 88.258)",[3489,6856],{"d":6772,"fill":3486,"stroke":3486,"className":6857,"style":3504},[3503],[2039,6859,6861],{"transform":6860},"translate(77.355 88.258)",[3489,6862],{"d":6818,"fill":3486,"stroke":3486,"className":6863,"style":3504},[3503],[2039,6865,6867],{"transform":6866},"translate(134.26 88.258)",[3489,6868],{"d":6786,"fill":3486,"stroke":3486,"className":6869,"style":3504},[3503],[2039,6871,6873],{"transform":6872},"translate(168.404 88.258)",[3489,6874],{"d":6818,"fill":3486,"stroke":3486,"className":6875,"style":3504},[3503],[2039,6877,6878,6884],{"stroke":3491,"fontSize":3495},[2039,6879,6881],{"transform":6880},"translate(193.26 87.842)",[3489,6882],{"d":6740,"fill":3486,"stroke":3486,"className":6883,"style":3504},[3503],[2039,6885,6886],{"transform":6880},[3489,6887],{"d":6838,"fill":3486,"stroke":3486,"className":6888,"style":3504},[3503],[2039,6890,6892],{"transform":6891},"translate(-2.312 108.175)",[3489,6893],{"d":6772,"fill":3486,"stroke":3486,"className":6894,"style":3504},[3503],[2039,6896,6898],{"transform":6897},"translate(37.521 108.175)",[3489,6899],{"d":6786,"fill":3486,"stroke":3486,"className":6900,"style":3504},[3503],[2039,6902,6904],{"transform":6903},"translate(77.355 108.175)",[3489,6905],{"d":6786,"fill":3486,"stroke":3486,"className":6906,"style":3504},[3503],[2039,6908,6910],{"transform":6909},"translate(134.26 108.175)",[3489,6911],{"d":6912,"fill":3486,"stroke":3486,"className":6913,"style":3504},"M-45.820-64.239Q-46.945-64.239-47.359-65.136Q-47.772-66.032-47.772-67.307Q-47.772-68.080-47.622-68.779Q-47.473-69.478-47.038-69.954Q-46.603-70.431-45.820-70.431Q-45.043-70.431-44.608-69.952Q-44.173-69.473-44.023-68.777Q-43.874-68.080-43.874-67.307Q-43.874-66.028-44.287-65.134Q-44.700-64.239-45.820-64.239M-45.820-64.499Q-45.302-64.499-45.051-65.010Q-44.801-65.522-44.744-66.133Q-44.687-66.744-44.687-67.452Q-44.687-68.137-44.744-68.697Q-44.801-69.258-45.054-69.715Q-45.306-70.172-45.820-70.172Q-46.225-70.172-46.462-69.895Q-46.699-69.618-46.807-69.177Q-46.915-68.735-46.939-68.342Q-46.963-67.948-46.963-67.452Q-46.963-66.946-46.939-66.518Q-46.915-66.089-46.807-65.606Q-46.699-65.123-46.460-64.811Q-46.220-64.499-45.820-64.499",[3503],[2039,6915,6917],{"transform":6916},"translate(168.404 108.175)",[3489,6918],{"d":6912,"fill":3486,"stroke":3486,"className":6919,"style":3504},[3503],[2039,6921,6923],{"transform":6922},"translate(196.857 108.175)",[3489,6924],{"d":6818,"fill":3486,"stroke":3486,"className":6925,"style":3504},[3503],[2039,6927,6929],{"transform":6928},"translate(-2.312 128.092)",[3489,6930],{"d":6786,"fill":3486,"stroke":3486,"className":6931,"style":3504},[3503],[2039,6933,6935],{"transform":6934},"translate(37.521 128.092)",[3489,6936],{"d":6912,"fill":3486,"stroke":3486,"className":6937,"style":3504},[3503],[2039,6939,6941],{"transform":6940},"translate(76.07 127.442)",[3489,6942],{"d":6740,"fill":3486,"stroke":3486,"className":6943,"style":3504},[3503],[2039,6945,6947],{"transform":6946},"translate(132.976 127.442)",[3489,6948],{"d":6740,"fill":3486,"stroke":3486,"className":6949,"style":3504},[3503],[2039,6951,6953],{"transform":6952},"translate(168.404 128.092)",[3489,6954],{"d":6818,"fill":3486,"stroke":3486,"className":6955,"style":3504},[3503],[2039,6957,6959],{"transform":6958},"translate(196.857 128.092)",[3489,6960],{"d":6912,"fill":3486,"stroke":3486,"className":6961,"style":3504},[3503],[3489,6963],{"fill":3491,"stroke":3639,"d":6964,"style":3640},"M109.781-47.365v17.071h54.06v-17.071Zm54.06 17.071",[2039,6966,6967],{"fill":3639,"stroke":3639},[2039,6968,6969,6975,6981,6987,6993,6999,7005,7011,7017,7023,7029,7035,7041,7047,7053,7059],{"fill":3639,"stroke":3491,"fontSize":3495},[2039,6970,6972],{"transform":6971},"translate(25.604 150.204)",[3489,6973],{"d":6710,"fill":3639,"stroke":3639,"className":6974,"style":3504},[3503],[2039,6976,6977],{"transform":6971},[3489,6978],{"d":6979,"fill":3639,"stroke":3639,"className":6980,"style":3504},"M-31.428-66.687Q-31.428-66.885-31.283-67.039Q-31.138-67.192-30.922-67.192Q-30.786-67.192-30.670-67.124Q-30.553-67.056-30.485-66.940Q-30.417-66.823-30.417-66.687Q-30.417-66.485-30.568-66.333Q-30.720-66.182-30.922-66.182Q-31.129-66.182-31.278-66.335Q-31.428-66.489-31.428-66.687",[3503],[2039,6982,6983],{"transform":6971},[3489,6984],{"d":6985,"fill":3639,"stroke":3639,"className":6986,"style":3504},"M-24.724-62.196Q-25.229-62.583-25.598-63.088Q-25.968-63.593-26.211-64.193Q-26.455-64.793-26.570-65.410Q-26.684-66.028-26.684-66.687Q-26.684-67.346-26.570-67.961Q-26.455-68.577-26.216-69.170Q-25.976-69.763-25.603-70.273Q-25.229-70.783-24.724-71.169Q-24.689-71.187-24.667-71.187L-24.588-71.187Q-24.500-71.187-24.500-71.086Q-24.500-71.051-24.535-71.016Q-25.097-70.493-25.442-69.787Q-25.787-69.082-25.935-68.300Q-26.082-67.518-26.082-66.687Q-26.082-66.063-26.003-65.479Q-25.924-64.894-25.746-64.327Q-25.568-63.760-25.269-63.259Q-24.970-62.758-24.535-62.350Q-24.500-62.314-24.500-62.275Q-24.500-62.178-24.588-62.178L-24.667-62.178Q-24.689-62.178-24.724-62.196",[3503],[2039,6988,6989],{"transform":6971},[3489,6990],{"d":6991,"fill":3639,"stroke":3639,"className":6992,"style":3504},"M-17.743-66.489L-23.025-66.489Q-23.100-66.502-23.153-66.555Q-23.206-66.608-23.206-66.687Q-23.206-66.753-23.151-66.808Q-23.096-66.863-23.025-66.876L-17.743-66.876Q-17.673-66.863-17.622-66.812Q-17.572-66.762-17.572-66.687Q-17.572-66.520-17.743-66.489",[3503],[2039,6994,6995],{"transform":6971},[3489,6996],{"d":6997,"fill":3639,"stroke":3639,"className":6998,"style":3504},"M-15.722-64.824Q-15.475-64.525-14.869-64.525Q-14.588-64.525-14.348-64.663Q-14.109-64.802-13.931-65.024Q-13.753-65.246-13.643-65.509Q-13.410-66.085-13.410-67.201Q-13.577-66.836-13.882-66.612Q-14.188-66.388-14.570-66.388Q-15.106-66.388-15.522-66.667Q-15.937-66.946-16.168-67.412Q-16.398-67.878-16.398-68.405Q-16.398-68.818-16.251-69.187Q-16.104-69.557-15.840-69.833Q-15.577-70.110-15.207-70.271Q-14.838-70.431-14.425-70.431Q-13.867-70.431-13.493-70.139Q-13.120-69.847-12.916-69.383Q-12.711-68.919-12.632-68.403Q-12.553-67.887-12.553-67.355Q-12.553-66.639-12.821-65.916Q-13.089-65.193-13.612-64.716Q-14.135-64.239-14.860-64.239Q-15.410-64.239-15.787-64.488Q-16.165-64.736-16.165-65.254Q-16.165-65.373-16.108-65.476Q-16.051-65.580-15.950-65.639Q-15.849-65.698-15.722-65.698Q-15.537-65.698-15.414-65.566Q-15.291-65.435-15.291-65.254Q-15.291-65.079-15.418-64.951Q-15.546-64.824-15.722-64.824M-14.526-66.652Q-14.157-66.652-13.909-66.894Q-13.660-67.135-13.544-67.493Q-13.428-67.852-13.428-68.225Q-13.428-68.335-13.436-68.388Q-13.432-68.401-13.430-68.412Q-13.428-68.423-13.428-68.440Q-13.428-69.095-13.643-69.634Q-13.858-70.172-14.425-70.172Q-14.785-70.172-15.014-70.022Q-15.243-69.873-15.359-69.616Q-15.475-69.359-15.508-69.078Q-15.541-68.796-15.541-68.423L-15.541-68.388Q-15.541-68.062-15.515-67.775Q-15.489-67.487-15.390-67.228Q-15.291-66.968-15.080-66.810Q-14.869-66.652-14.526-66.652M-11.481-62.178L-11.564-62.178Q-11.652-62.178-11.652-62.275Q-11.652-62.314-11.617-62.350Q-10.782-63.123-10.422-64.257Q-10.061-65.391-10.061-66.687Q-10.061-67.307-10.140-67.898Q-10.220-68.489-10.400-69.047Q-10.580-69.605-10.881-70.113Q-11.182-70.620-11.617-71.016Q-11.652-71.051-11.652-71.086Q-11.652-71.187-11.564-71.187L-11.481-71.187Q-11.463-71.187-11.428-71.169Q-10.923-70.787-10.549-70.273Q-10.176-69.759-9.938-69.181Q-9.701-68.603-9.585-67.975Q-9.468-67.346-9.468-66.687Q-9.468-66.028-9.585-65.397Q-9.701-64.767-9.941-64.182Q-10.180-63.598-10.551-63.088Q-10.923-62.578-11.428-62.196Q-11.463-62.178-11.481-62.178",[3503],[2039,7000,7001],{"transform":6971},[3489,7002],{"d":7003,"fill":3639,"stroke":3639,"className":7004,"style":3504},"M-3.106-63.760L-3.106-66.489L-5.813-66.489Q-5.993-66.520-5.993-66.687Q-5.993-66.753-5.942-66.808Q-5.892-66.863-5.813-66.876L-3.106-66.876L-3.106-69.605Q-3.092-69.680-3.038-69.726Q-2.983-69.772-2.908-69.772Q-2.838-69.772-2.785-69.724Q-2.732-69.675-2.719-69.605L-2.719-66.876L-0.007-66.876Q0.164-66.841 0.164-66.687Q0.164-66.524-0.007-66.489L-2.719-66.489L-2.719-63.760Q-2.754-63.589-2.908-63.589Q-2.978-63.589-3.035-63.637Q-3.092-63.686-3.106-63.760",[3503],[2039,7006,7007],{"transform":6971},[3489,7008],{"d":7009,"fill":3639,"stroke":3639,"className":7010,"style":3504},"M5.441-65.914L3.002-65.914L3.002-66.230L5.828-70.378Q5.872-70.431 5.938-70.431L6.092-70.431Q6.131-70.431 6.164-70.398Q6.197-70.365 6.197-70.321L6.197-66.230L7.098-66.230L7.098-65.914L6.197-65.914L6.197-65.048Q6.197-64.753 7.098-64.753L7.098-64.437L4.545-64.437L4.545-64.753Q4.905-64.753 5.173-64.808Q5.441-64.863 5.441-65.048L5.441-65.914M5.498-69.403L3.336-66.230L5.498-66.230L5.498-69.403M9.673-64.239Q8.939-64.239 8.509-64.720Q8.078-65.202 7.913-65.894Q7.748-66.586 7.748-67.333Q7.748-68.062 8.041-68.785Q8.333-69.508 8.887-69.970Q9.440-70.431 10.187-70.431Q10.684-70.431 11.020-70.165Q11.356-69.899 11.356-69.416Q11.356-69.236 11.229-69.108Q11.101-68.981 10.926-68.981Q10.745-68.981 10.616-69.106Q10.486-69.231 10.486-69.416Q10.486-69.530 10.543-69.634Q10.600-69.737 10.701-69.796Q10.803-69.855 10.926-69.855Q10.930-69.855 10.934-69.853Q10.939-69.851 10.943-69.847Q10.829-70.014 10.620-70.093Q10.411-70.172 10.187-70.172Q9.743-70.172 9.385-69.871Q9.027-69.570 8.838-69.117Q8.605-68.511 8.605-67.478Q8.777-67.843 9.078-68.071Q9.379-68.300 9.765-68.300Q10.170-68.300 10.515-68.133Q10.860-67.966 11.097-67.685Q11.334-67.403 11.464-67.041Q11.594-66.678 11.594-66.274Q11.594-65.729 11.350-65.263Q11.106-64.797 10.666-64.518Q10.227-64.239 9.673-64.239M9.673-64.525Q10.135-64.525 10.370-64.782Q10.605-65.039 10.671-65.413Q10.737-65.786 10.737-66.256L10.737-66.291Q10.737-66.779 10.680-67.144Q10.622-67.509 10.394-67.772Q10.165-68.036 9.722-68.036Q9.352-68.036 9.102-67.792Q8.851-67.548 8.737-67.184Q8.623-66.819 8.623-66.472Q8.623-66.353 8.632-66.291Q8.632-66.274 8.629-66.263Q8.627-66.252 8.623-66.239Q8.623-65.588 8.860-65.057Q9.097-64.525 9.673-64.525",[3503],[2039,7012,7013],{"transform":6971},[3489,7014],{"d":7015,"fill":3639,"stroke":3639,"className":7016,"style":3504},"M14.822-66.687Q14.822-66.885 14.967-67.039Q15.112-67.192 15.328-67.192Q15.464-67.192 15.580-67.124Q15.697-67.056 15.765-66.940Q15.833-66.823 15.833-66.687Q15.833-66.485 15.682-66.333Q15.530-66.182 15.328-66.182Q15.121-66.182 14.972-66.335Q14.822-66.489 14.822-66.687",[3503],[2039,7018,7019],{"transform":6971},[3489,7020],{"d":7021,"fill":3639,"stroke":3639,"className":7022,"style":3504},"M21.372-65.914L18.933-65.914L18.933-66.230L21.759-70.378Q21.803-70.431 21.869-70.431L22.023-70.431Q22.062-70.431 22.095-70.398Q22.128-70.365 22.128-70.321L22.128-66.230L23.029-66.230L23.029-65.914L22.128-65.914L22.128-65.048Q22.128-64.753 23.029-64.753L23.029-64.437L20.476-64.437L20.476-64.753Q20.836-64.753 21.104-64.808Q21.372-64.863 21.372-65.048L21.372-65.914M21.429-69.403L19.267-66.230L21.429-66.230L21.429-69.403M24.914-64.679Q24.914-65.316 25.070-65.962Q25.226-66.608 25.518-67.214Q25.811-67.821 26.219-68.370L27.037-69.478L26.008-69.478Q24.365-69.478 24.317-69.434Q24.211-69.306 24.092-68.603L23.807-68.603L24.101-70.519L24.391-70.519L24.391-70.493Q24.391-70.330 24.956-70.282Q25.521-70.233 26.066-70.233L27.784-70.233L27.784-70.027Q27.784-70.009 27.782-70Q27.779-69.992 27.775-69.983L26.487-68.234Q26.237-67.882 26.090-67.456Q25.943-67.030 25.877-66.566Q25.811-66.103 25.798-65.692Q25.784-65.281 25.784-64.679Q25.784-64.499 25.659-64.369Q25.534-64.239 25.354-64.239Q25.235-64.239 25.132-64.296Q25.028-64.354 24.971-64.457Q24.914-64.560 24.914-64.679",[3503],[2039,7024,7025],{"transform":6971},[3489,7026],{"d":7027,"fill":3639,"stroke":3639,"className":7028,"style":3504},"M36.993-65.580L31.187-65.580Q31.108-65.593 31.058-65.643Q31.007-65.694 31.007-65.769Q31.007-65.918 31.187-65.966L36.993-65.966Q37.164-65.914 37.164-65.769Q37.164-65.615 36.993-65.580M36.993-67.408L31.187-67.408Q31.007-67.438 31.007-67.597Q31.007-67.746 31.187-67.794L36.993-67.794Q37.164-67.742 37.164-67.597Q37.164-67.443 36.993-67.408",[3503],[2039,7030,7031],{"transform":6971},[3489,7032],{"d":7033,"fill":3639,"stroke":3639,"className":7034,"style":3504},"M44.164-64.437L40.714-64.437L40.714-64.670Q40.714-64.683 40.745-64.714L42.199-66.291Q42.665-66.788 42.918-67.093Q43.171-67.399 43.362-67.810Q43.553-68.221 43.553-68.660Q43.553-69.249 43.230-69.682Q42.907-70.115 42.327-70.115Q42.063-70.115 41.817-70.005Q41.571-69.895 41.395-69.708Q41.219-69.521 41.123-69.271L41.202-69.271Q41.404-69.271 41.547-69.135Q41.690-68.999 41.690-68.783Q41.690-68.577 41.547-68.438Q41.404-68.300 41.202-68.300Q41-68.300 40.857-68.443Q40.714-68.585 40.714-68.783Q40.714-69.245 40.951-69.618Q41.189-69.992 41.589-70.211Q41.988-70.431 42.437-70.431Q42.960-70.431 43.414-70.216Q43.869-70 44.142-69.601Q44.414-69.201 44.414-68.660Q44.414-68.265 44.243-67.911Q44.071-67.557 43.806-67.278Q43.540-66.999 43.089-66.614Q42.639-66.230 42.560-66.155L41.536-65.193L42.353-65.193Q43.004-65.193 43.441-65.204Q43.878-65.215 43.909-65.237Q43.979-65.320 44.034-65.560Q44.089-65.799 44.129-66.067L44.414-66.067",[3503],[2039,7036,7037],{"transform":6971},[3489,7038],{"d":7039,"fill":3639,"stroke":3639,"className":7040,"style":3504},"M53.951-65.580L48.145-65.580Q48.066-65.593 48.016-65.643Q47.965-65.694 47.965-65.769Q47.965-65.918 48.145-65.966L53.951-65.966Q54.122-65.914 54.122-65.769Q54.122-65.615 53.951-65.580M53.951-67.408L48.145-67.408Q47.965-67.438 47.965-67.597Q47.965-67.746 48.145-67.794L53.951-67.794Q54.122-67.742 54.122-67.597Q54.122-67.443 53.951-67.408",[3503],[2039,7042,7043],{"transform":6971},[3489,7044],{"d":7045,"fill":3639,"stroke":3639,"className":7046,"style":3504},"M57.474-63.743Q57.474-64.055 57.703-64.294Q57.931-64.534 58.252-64.635Q58.072-64.775 57.977-64.984Q57.883-65.193 57.883-65.426Q57.883-65.839 58.160-66.173Q57.747-66.577 57.747-67.091Q57.747-67.482 57.966-67.781Q58.186-68.080 58.538-68.247Q58.889-68.414 59.267-68.414Q59.821-68.414 60.238-68.102Q60.427-68.295 60.689-68.405Q60.950-68.515 61.236-68.515Q61.438-68.515 61.572-68.372Q61.706-68.229 61.706-68.036Q61.706-67.909 61.623-67.830Q61.539-67.750 61.416-67.750Q61.298-67.750 61.214-67.830Q61.131-67.909 61.131-68.036Q61.131-68.111 61.139-68.137Q61.157-68.172 61.179-68.205Q61.201-68.238 61.210-68.251Q60.766-68.251 60.419-67.948Q60.779-67.566 60.779-67.091Q60.779-66.797 60.652-66.551Q60.524-66.305 60.311-66.129Q60.098-65.953 59.819-65.856Q59.540-65.760 59.267-65.760Q58.757-65.760 58.349-66.028Q58.221-65.856 58.221-65.650Q58.221-65.408 58.380-65.237Q58.538-65.065 58.771-65.065L59.535-65.065Q60.080-65.065 60.526-64.969Q60.972-64.872 61.271-64.582Q61.570-64.292 61.570-63.743Q61.570-63.163 60.884-62.873Q60.199-62.583 59.527-62.583Q58.854-62.583 58.164-62.873Q57.474-63.163 57.474-63.743M58.015-63.743Q58.015-63.448 58.267-63.250Q58.520-63.053 58.881-62.958Q59.241-62.864 59.527-62.864Q60.028-62.864 60.528-63.090Q61.029-63.316 61.029-63.743Q61.029-64.200 60.588-64.332Q60.146-64.463 59.535-64.463L58.771-64.463Q58.577-64.463 58.399-64.369Q58.221-64.274 58.118-64.110Q58.015-63.945 58.015-63.743M59.258-66.041L59.267-66.041Q60.049-66.041 60.049-67.091Q60.049-68.137 59.267-68.137Q58.476-68.137 58.476-67.091Q58.476-66.041 59.258-66.041M64.145-64.336Q63.596-64.336 63.137-64.615Q62.677-64.894 62.409-65.364Q62.141-65.834 62.141-66.379Q62.141-66.792 62.291-67.170Q62.440-67.548 62.715-67.843Q62.989-68.137 63.359-68.304Q63.728-68.471 64.145-68.471Q64.479-68.471 64.800-68.405Q65.121-68.339 65.349-68.153Q65.578-67.966 65.578-67.641Q65.578-67.465 65.450-67.337Q65.323-67.210 65.147-67.210Q64.963-67.210 64.833-67.335Q64.703-67.460 64.703-67.641Q64.703-67.777 64.778-67.889Q64.853-68.001 64.985-68.054Q64.677-68.181 64.145-68.181Q63.710-68.181 63.442-67.904Q63.174-67.627 63.062-67.212Q62.950-66.797 62.950-66.379Q62.950-65.949 63.088-65.547Q63.227-65.145 63.521-64.885Q63.816-64.626 64.255-64.626Q64.677-64.626 64.980-64.876Q65.283-65.127 65.389-65.536Q65.398-65.566 65.422-65.591Q65.446-65.615 65.477-65.615L65.587-65.615Q65.674-65.615 65.674-65.500Q65.529-64.964 65.116-64.650Q64.703-64.336 64.145-64.336M68.188-64.336Q67.643-64.336 67.199-64.619Q66.756-64.903 66.501-65.375Q66.246-65.848 66.246-66.379Q66.246-66.933 66.523-67.399Q66.799-67.865 67.272-68.139Q67.744-68.414 68.289-68.414Q68.623-68.414 68.926-68.282Q69.230-68.150 69.449-67.913L69.449-69.763Q69.449-70.005 69.379-70.113Q69.309-70.220 69.175-70.244Q69.041-70.269 68.755-70.269L68.755-70.585L70.122-70.682L70.122-65.254Q70.122-65.017 70.192-64.909Q70.262-64.802 70.399-64.778Q70.535-64.753 70.816-64.753L70.816-64.437L69.423-64.336L69.423-64.885Q69.173-64.622 68.854-64.479Q68.535-64.336 68.188-64.336M68.250-64.600Q68.619-64.600 68.929-64.811Q69.238-65.021 69.423-65.364L69.423-67.496Q69.252-67.799 68.970-67.977Q68.689-68.155 68.351-68.155Q67.661-68.155 67.358-67.634Q67.054-67.113 67.054-66.371Q67.054-65.650 67.325-65.125Q67.595-64.600 68.250-64.600",[3503],[2039,7048,7049],{"transform":6971},[3489,7050],{"d":7051,"fill":3639,"stroke":3639,"className":7052,"style":3504},"M73.942-62.196Q73.437-62.583 73.068-63.088Q72.698-63.593 72.455-64.193Q72.211-64.793 72.096-65.410Q71.982-66.028 71.982-66.687Q71.982-67.346 72.096-67.961Q72.211-68.577 72.450-69.170Q72.690-69.763 73.063-70.273Q73.437-70.783 73.942-71.169Q73.977-71.187 73.999-71.187L74.078-71.187Q74.166-71.187 74.166-71.086Q74.166-71.051 74.131-71.016Q73.569-70.493 73.224-69.787Q72.879-69.082 72.731-68.300Q72.584-67.518 72.584-66.687Q72.584-66.063 72.663-65.479Q72.742-64.894 72.920-64.327Q73.098-63.760 73.397-63.259Q73.696-62.758 74.131-62.350Q74.166-62.314 74.166-62.275Q74.166-62.178 74.078-62.178L73.999-62.178Q73.977-62.178 73.942-62.196M78.587-64.437L75.137-64.437L75.137-64.670Q75.137-64.683 75.168-64.714L76.623-66.291Q77.089-66.788 77.341-67.093Q77.594-67.399 77.785-67.810Q77.976-68.221 77.976-68.660Q77.976-69.249 77.653-69.682Q77.330-70.115 76.750-70.115Q76.486-70.115 76.240-70.005Q75.994-69.895 75.819-69.708Q75.643-69.521 75.546-69.271L75.625-69.271Q75.827-69.271 75.970-69.135Q76.113-68.999 76.113-68.783Q76.113-68.577 75.970-68.438Q75.827-68.300 75.625-68.300Q75.423-68.300 75.280-68.443Q75.137-68.585 75.137-68.783Q75.137-69.245 75.375-69.618Q75.612-69.992 76.012-70.211Q76.412-70.431 76.860-70.431Q77.383-70.431 77.838-70.216Q78.293-70 78.565-69.601Q78.838-69.201 78.838-68.660Q78.838-68.265 78.666-67.911Q78.495-67.557 78.229-67.278Q77.963-66.999 77.513-66.614Q77.062-66.230 76.983-66.155L75.959-65.193L76.777-65.193Q77.427-65.193 77.864-65.204Q78.301-65.215 78.332-65.237Q78.403-65.320 78.457-65.560Q78.512-65.799 78.552-66.067L78.838-66.067L78.587-64.437M81.997-65.914L79.558-65.914L79.558-66.230L82.384-70.378Q82.428-70.431 82.494-70.431L82.648-70.431Q82.687-70.431 82.720-70.398Q82.753-70.365 82.753-70.321L82.753-66.230L83.654-66.230L83.654-65.914L82.753-65.914L82.753-65.048Q82.753-64.753 83.654-64.753L83.654-64.437L81.101-64.437L81.101-64.753Q81.461-64.753 81.729-64.808Q81.997-64.863 81.997-65.048L81.997-65.914M82.054-69.403L79.892-66.230L82.054-66.230L82.054-69.403M86.229-64.239Q85.104-64.239 84.691-65.136Q84.278-66.032 84.278-67.307Q84.278-68.080 84.427-68.779Q84.577-69.478 85.012-69.954Q85.447-70.431 86.229-70.431Q87.007-70.431 87.442-69.952Q87.877-69.473 88.027-68.777Q88.176-68.080 88.176-67.307Q88.176-66.028 87.763-65.134Q87.350-64.239 86.229-64.239M86.229-64.499Q86.748-64.499 86.998-65.010Q87.249-65.522 87.306-66.133Q87.363-66.744 87.363-67.452Q87.363-68.137 87.306-68.697Q87.249-69.258 86.996-69.715Q86.743-70.172 86.229-70.172Q85.825-70.172 85.588-69.895Q85.350-69.618 85.243-69.177Q85.135-68.735 85.111-68.342Q85.087-67.948 85.087-67.452Q85.087-66.946 85.111-66.518Q85.135-66.089 85.243-65.606Q85.350-65.123 85.590-64.811Q85.829-64.499 86.229-64.499",[3503],[2039,7054,7055],{"transform":6971},[3489,7056],{"d":7057,"fill":3639,"stroke":3639,"className":7058,"style":3504},"M89.463-62.833Q89.463-62.873 89.498-62.908Q89.823-63.220 90.003-63.626Q90.184-64.033 90.184-64.481L90.184-64.564Q90.043-64.437 89.841-64.437Q89.696-64.437 89.582-64.503Q89.467-64.569 89.401-64.681Q89.335-64.793 89.335-64.942Q89.335-65.162 89.476-65.303Q89.617-65.443 89.841-65.443Q90.162-65.443 90.302-65.145Q90.443-64.846 90.443-64.481Q90.443-63.971 90.239-63.516Q90.034-63.062 89.669-62.710Q89.634-62.692 89.608-62.692Q89.551-62.692 89.507-62.736Q89.463-62.780 89.463-62.833",[3503],[2039,7060,7061],{"transform":6971},[3489,7062],{"d":7063,"fill":3639,"stroke":3639,"className":7064,"style":3504},"M95.371-65.914L92.932-65.914L92.932-66.230L95.758-70.378Q95.802-70.431 95.868-70.431L96.022-70.431Q96.061-70.431 96.094-70.398Q96.127-70.365 96.127-70.321L96.127-66.230L97.028-66.230L97.028-65.914L96.127-65.914L96.127-65.048Q96.127-64.753 97.028-64.753L97.028-64.437L94.475-64.437L94.475-64.753Q94.835-64.753 95.103-64.808Q95.371-64.863 95.371-65.048L95.371-65.914M95.428-69.403L93.266-66.230L95.428-66.230L95.428-69.403M99.603-64.239Q98.869-64.239 98.439-64.720Q98.008-65.202 97.843-65.894Q97.678-66.586 97.678-67.333Q97.678-68.062 97.971-68.785Q98.263-69.508 98.817-69.970Q99.370-70.431 100.117-70.431Q100.614-70.431 100.950-70.165Q101.286-69.899 101.286-69.416Q101.286-69.236 101.159-69.108Q101.031-68.981 100.856-68.981Q100.675-68.981 100.546-69.106Q100.416-69.231 100.416-69.416Q100.416-69.530 100.473-69.634Q100.530-69.737 100.631-69.796Q100.733-69.855 100.856-69.855Q100.860-69.855 100.864-69.853Q100.869-69.851 100.873-69.847Q100.759-70.014 100.550-70.093Q100.341-70.172 100.117-70.172Q99.673-70.172 99.315-69.871Q98.957-69.570 98.768-69.117Q98.535-68.511 98.535-67.478Q98.707-67.843 99.008-68.071Q99.309-68.300 99.695-68.300Q100.100-68.300 100.445-68.133Q100.790-67.966 101.027-67.685Q101.264-67.403 101.394-67.041Q101.524-66.678 101.524-66.274Q101.524-65.729 101.280-65.263Q101.036-64.797 100.596-64.518Q100.157-64.239 99.603-64.239M99.603-64.525Q100.065-64.525 100.300-64.782Q100.535-65.039 100.601-65.413Q100.667-65.786 100.667-66.256L100.667-66.291Q100.667-66.779 100.610-67.144Q100.552-67.509 100.324-67.772Q100.095-68.036 99.652-68.036Q99.282-68.036 99.032-67.792Q98.781-67.548 98.667-67.184Q98.553-66.819 98.553-66.472Q98.553-66.353 98.562-66.291Q98.562-66.274 98.559-66.263Q98.557-66.252 98.553-66.239Q98.553-65.588 98.790-65.057Q99.027-64.525 99.603-64.525M102.596-62.178L102.512-62.178Q102.424-62.178 102.424-62.275Q102.424-62.314 102.460-62.350Q103.295-63.123 103.655-64.257Q104.015-65.391 104.015-66.687Q104.015-67.307 103.936-67.898Q103.857-68.489 103.677-69.047Q103.497-69.605 103.196-70.113Q102.895-70.620 102.460-71.016Q102.424-71.051 102.424-71.086Q102.424-71.187 102.512-71.187L102.596-71.187Q102.613-71.187 102.649-71.169Q103.154-70.787 103.527-70.273Q103.901-69.759 104.138-69.181Q104.376-68.603 104.492-67.975Q104.609-67.346 104.609-66.687Q104.609-66.028 104.492-65.397Q104.376-64.767 104.136-64.182Q103.897-63.598 103.525-63.088Q103.154-62.578 102.649-62.196Q102.613-62.178 102.596-62.178",[3503],[3951,7066,7068,7069,7129,7130],{"className":7067},[3954],"back-substitution yields ",[390,7070,7072],{"className":7071},[393],[390,7073,7075,7096,7117],{"className":7074,"ariaHidden":398},[397],[390,7076,7078,7081,7084,7087,7090,7093],{"className":7077},[402],[390,7079],{"className":7080,"style":1672},[406],[390,7082,489],{"className":7083},[411,412],[390,7085,5091],{"className":7086},[411,412],[390,7088],{"className":7089,"style":431},[561],[390,7091,1495],{"className":7092},[1119],[390,7094],{"className":7095,"style":431},[561],[390,7097,7099,7102,7105,7108,7111,7114],{"className":7098},[402],[390,7100],{"className":7101,"style":853},[406],[390,7103,671],{"className":7104},[411,412],[390,7106,5101],{"className":7107,"style":1485},[411,412],[390,7109],{"className":7110,"style":562},[561],[390,7112,602],{"className":7113},[566],[390,7115],{"className":7116,"style":562},[561],[390,7118,7120,7123],{"className":7119},[402],[390,7121],{"className":7122,"style":853},[406],[390,7124,7126],{"className":7125},[692],[390,7127,697],{"className":7128},[411,696]," for ",[390,7131,7133],{"className":7132},[393],[390,7134,7136,7175],{"className":7135,"ariaHidden":398},[397],[390,7137,7139,7142,7148,7151,7154,7157,7160,7163,7166,7169,7172],{"className":7138},[402],[390,7140],{"className":7141,"style":554},[406],[390,7143,7145],{"className":7144},[692],[390,7146,697],{"className":7147},[411,696],[390,7149,702],{"className":7150},[701],[390,7152,6578],{"className":7153},[411],[390,7155,710],{"className":7156},[709],[390,7158],{"className":7159,"style":714},[561],[390,7161,6588],{"className":7162},[411],[390,7164,722],{"className":7165},[721],[390,7167],{"className":7168,"style":562},[561],[390,7170,602],{"className":7171},[566],[390,7173],{"className":7174,"style":562},[561],[390,7176,7178,7181],{"className":7177},[402],[390,7179],{"className":7180,"style":836},[406],[390,7182,2816],{"className":7183},[411],[2151,7185,7187,7188,7246],{"id":7186},"when-does-axbyc-have-a-solution","When does ",[390,7189,7191],{"className":7190},[393],[390,7192,7194,7215,7236],{"className":7193,"ariaHidden":398},[397],[390,7195,7197,7200,7203,7206,7209,7212],{"className":7196},[402],[390,7198],{"className":7199,"style":1672},[406],[390,7201,489],{"className":7202},[411,412],[390,7204,5091],{"className":7205},[411,412],[390,7207],{"className":7208,"style":431},[561],[390,7210,1495],{"className":7211},[1119],[390,7213],{"className":7214,"style":431},[561],[390,7216,7218,7221,7224,7227,7230,7233],{"className":7217},[402],[390,7219],{"className":7220,"style":853},[406],[390,7222,671],{"className":7223},[411,412],[390,7225,5101],{"className":7226,"style":1485},[411,412],[390,7228],{"className":7229,"style":562},[561],[390,7231,602],{"className":7232},[566],[390,7234],{"className":7235,"style":562},[561],[390,7237,7239,7242],{"className":7238},[402],[390,7240],{"className":7241,"style":407},[406],[390,7243,7245],{"className":7244},[411,412],"c"," have a solution?",[381,7248,7249,7250,1203],{},"Bézout pins down solvability of the general ",[457,7251,7252],{},"linear Diophantine equation",[948,7254,7256],{"type":7255},"corollary",[381,7257,7258,676,7261,7318,7319,676,7349,7352,1203],{},[457,7259,7260],{},"Corollary.",[390,7262,7264],{"className":7263},[393],[390,7265,7267,7288,7309],{"className":7266,"ariaHidden":398},[397],[390,7268,7270,7273,7276,7279,7282,7285],{"className":7269},[402],[390,7271],{"className":7272,"style":1672},[406],[390,7274,489],{"className":7275},[411,412],[390,7277,5091],{"className":7278},[411,412],[390,7280],{"className":7281,"style":431},[561],[390,7283,1495],{"className":7284},[1119],[390,7286],{"className":7287,"style":431},[561],[390,7289,7291,7294,7297,7300,7303,7306],{"className":7290},[402],[390,7292],{"className":7293,"style":853},[406],[390,7295,671],{"className":7296},[411,412],[390,7298,5101],{"className":7299,"style":1485},[411,412],[390,7301],{"className":7302,"style":562},[561],[390,7304,602],{"className":7305},[566],[390,7307],{"className":7308,"style":562},[561],[390,7310,7312,7315],{"className":7311},[402],[390,7313],{"className":7314,"style":407},[406],[390,7316,7245],{"className":7317},[411,412]," has an integer solution ",[390,7320,7322],{"className":7321},[393],[390,7323,7325],{"className":7324,"ariaHidden":398},[397],[390,7326,7328,7331,7334,7337,7340,7343,7346],{"className":7327},[402],[390,7329],{"className":7330,"style":554},[406],[390,7332,702],{"className":7333},[701],[390,7335,5091],{"className":7336},[411,412],[390,7338,710],{"className":7339},[709],[390,7341],{"className":7342,"style":714},[561],[390,7344,5101],{"className":7345,"style":1485},[411,412],[390,7347,722],{"className":7348},[721],[457,7350,7351],{},"if and only if",[390,7353,7355],{"className":7354},[393],[390,7356,7358,7397],{"className":7357,"ariaHidden":398},[397],[390,7359,7361,7364,7370,7373,7376,7379,7382,7385,7388,7391,7394],{"className":7360},[402],[390,7362],{"className":7363,"style":554},[406],[390,7365,7367],{"className":7366},[692],[390,7368,697],{"className":7369},[411,696],[390,7371,702],{"className":7372},[701],[390,7374,489],{"className":7375},[411,412],[390,7377,710],{"className":7378},[709],[390,7380],{"className":7381,"style":714},[561],[390,7383,671],{"className":7384},[411,412],[390,7386,722],{"className":7387},[721],[390,7389],{"className":7390,"style":562},[561],[390,7392,567],{"className":7393},[566],[390,7395],{"className":7396,"style":562},[561],[390,7398,7400,7403],{"className":7399},[402],[390,7401],{"className":7402,"style":407},[406],[390,7404,7245],{"className":7405},[411,412],[381,7407,7408,7411,7412,7466,7467,7506,7507,5357,7522,7555,7556,7592,7593,7608,7609,7744,7745,7894,7895,7898,7899,7914,7915,490,7930,7945,7946,490,7979,8030,8031,8034],{},[385,7409,7410],{},"Why."," Let ",[390,7413,7415],{"className":7414},[393],[390,7416,7418,7436],{"className":7417,"ariaHidden":398},[397],[390,7419,7421,7424,7427,7430,7433],{"className":7420},[402],[390,7422],{"className":7423,"style":1521},[406],[390,7425,2039],{"className":7426,"style":1485},[411,412],[390,7428],{"className":7429,"style":562},[561],[390,7431,602],{"className":7432},[566],[390,7434],{"className":7435,"style":562},[561],[390,7437,7439,7442,7448,7451,7454,7457,7460,7463],{"className":7438},[402],[390,7440],{"className":7441,"style":554},[406],[390,7443,7445],{"className":7444},[692],[390,7446,697],{"className":7447},[411,696],[390,7449,702],{"className":7450},[701],[390,7452,489],{"className":7453},[411,412],[390,7455,710],{"className":7456},[709],[390,7458],{"className":7459,"style":714},[561],[390,7461,671],{"className":7462},[411,412],[390,7464,722],{"className":7465},[721],". Any combination ",[390,7468,7470],{"className":7469},[393],[390,7471,7473,7494],{"className":7472,"ariaHidden":398},[397],[390,7474,7476,7479,7482,7485,7488,7491],{"className":7475},[402],[390,7477],{"className":7478,"style":1672},[406],[390,7480,489],{"className":7481},[411,412],[390,7483,5091],{"className":7484},[411,412],[390,7486],{"className":7487,"style":431},[561],[390,7489,1495],{"className":7490},[1119],[390,7492],{"className":7493,"style":431},[561],[390,7495,7497,7500,7503],{"className":7496},[402],[390,7498],{"className":7499,"style":853},[406],[390,7501,671],{"className":7502},[411,412],[390,7504,5101],{"className":7505,"style":1485},[411,412]," is a multiple of ",[390,7508,7510],{"className":7509},[393],[390,7511,7513],{"className":7512,"ariaHidden":398},[397],[390,7514,7516,7519],{"className":7515},[402],[390,7517],{"className":7518,"style":1521},[406],[390,7520,2039],{"className":7521,"style":1485},[411,412],[390,7523,7525],{"className":7524},[393],[390,7526,7528,7546],{"className":7527,"ariaHidden":398},[397],[390,7529,7531,7534,7537,7540,7543],{"className":7530},[402],[390,7532],{"className":7533,"style":554},[406],[390,7535,2039],{"className":7536,"style":1485},[411,412],[390,7538],{"className":7539,"style":562},[561],[390,7541,567],{"className":7542},[566],[390,7544],{"className":7545,"style":562},[561],[390,7547,7549,7552],{"className":7548},[402],[390,7550],{"className":7551,"style":407},[406],[390,7553,7245],{"className":7554},[411,412]," is necessary. Conversely, if ",[390,7557,7559],{"className":7558},[393],[390,7560,7562,7580],{"className":7561,"ariaHidden":398},[397],[390,7563,7565,7568,7571,7574,7577],{"className":7564},[402],[390,7566],{"className":7567,"style":407},[406],[390,7569,7245],{"className":7570},[411,412],[390,7572],{"className":7573,"style":562},[561],[390,7575,602],{"className":7576},[566],[390,7578],{"className":7579,"style":562},[561],[390,7581,7583,7586,7589],{"className":7582},[402],[390,7584],{"className":7585,"style":853},[406],[390,7587,616],{"className":7588,"style":615},[411,412],[390,7590,2039],{"className":7591,"style":1485},[411,412],", scale Bézout's coefficients by\n",[390,7594,7596],{"className":7595},[393],[390,7597,7599],{"className":7598,"ariaHidden":398},[397],[390,7600,7602,7605],{"className":7601},[402],[390,7603],{"className":7604,"style":446},[406],[390,7606,616],{"className":7607,"style":615},[411,412],": from ",[390,7610,7612],{"className":7611},[393],[390,7613,7615,7676,7735],{"className":7614,"ariaHidden":398},[397],[390,7616,7618,7622,7625,7667,7670,7673],{"className":7617},[402],[390,7619],{"className":7620,"style":7621},[406],"height:0.7333em;vertical-align:-0.15em;",[390,7623,489],{"className":7624},[411,412],[390,7626,7628,7631],{"className":7627},[411],[390,7629,5091],{"className":7630},[411,412],[390,7632,7634],{"className":7633},[2905],[390,7635,7637,7659],{"className":7636},[2909,2910],[390,7638,7640,7656],{"className":7639},[2914],[390,7641,7644],{"className":7642,"style":7643},[2918],"height:0.3011em;",[390,7645,7647,7650],{"style":7646},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[390,7648],{"className":7649,"style":2927},[2926],[390,7651,7653],{"className":7652},[2931,2932,2933,2934],[390,7654,757],{"className":7655},[411,2934],[390,7657,2951],{"className":7658},[2950],[390,7660,7662],{"className":7661},[2914],[390,7663,7665],{"className":7664,"style":3005},[2918],[390,7666],{},[390,7668],{"className":7669,"style":431},[561],[390,7671,1495],{"className":7672},[1119],[390,7674],{"className":7675,"style":431},[561],[390,7677,7679,7682,7685,7726,7729,7732],{"className":7678},[402],[390,7680],{"className":7681,"style":853},[406],[390,7683,671],{"className":7684},[411,412],[390,7686,7688,7691],{"className":7687},[411],[390,7689,5101],{"className":7690,"style":1485},[411,412],[390,7692,7694],{"className":7693},[2905],[390,7695,7697,7718],{"className":7696},[2909,2910],[390,7698,7700,7715],{"className":7699},[2914],[390,7701,7703],{"className":7702,"style":7643},[2918],[390,7704,7706,7709],{"style":7705},"top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;",[390,7707],{"className":7708,"style":2927},[2926],[390,7710,7712],{"className":7711},[2931,2932,2933,2934],[390,7713,757],{"className":7714},[411,2934],[390,7716,2951],{"className":7717},[2950],[390,7719,7721],{"className":7720},[2914],[390,7722,7724],{"className":7723,"style":3005},[2918],[390,7725],{},[390,7727],{"className":7728,"style":562},[561],[390,7730,602],{"className":7731},[566],[390,7733],{"className":7734,"style":562},[561],[390,7736,7738,7741],{"className":7737},[402],[390,7739],{"className":7740,"style":1521},[406],[390,7742,2039],{"className":7743,"style":1485},[411,412]," we get ",[390,7746,7748],{"className":7747},[393],[390,7749,7751,7818,7885],{"className":7750,"ariaHidden":398},[397],[390,7752,7754,7757,7760,7763,7766,7806,7809,7812,7815],{"className":7753},[402],[390,7755],{"className":7756,"style":554},[406],[390,7758,489],{"className":7759},[411,412],[390,7761,702],{"className":7762},[701],[390,7764,616],{"className":7765,"style":615},[411,412],[390,7767,7769,7772],{"className":7768},[411],[390,7770,5091],{"className":7771},[411,412],[390,7773,7775],{"className":7774},[2905],[390,7776,7778,7798],{"className":7777},[2909,2910],[390,7779,7781,7795],{"className":7780},[2914],[390,7782,7784],{"className":7783,"style":7643},[2918],[390,7785,7786,7789],{"style":7646},[390,7787],{"className":7788,"style":2927},[2926],[390,7790,7792],{"className":7791},[2931,2932,2933,2934],[390,7793,757],{"className":7794},[411,2934],[390,7796,2951],{"className":7797},[2950],[390,7799,7801],{"className":7800},[2914],[390,7802,7804],{"className":7803,"style":3005},[2918],[390,7805],{},[390,7807,722],{"className":7808},[721],[390,7810],{"className":7811,"style":431},[561],[390,7813,1495],{"className":7814},[1119],[390,7816],{"className":7817,"style":431},[561],[390,7819,7821,7824,7827,7830,7833,7873,7876,7879,7882],{"className":7820},[402],[390,7822],{"className":7823,"style":554},[406],[390,7825,671],{"className":7826},[411,412],[390,7828,702],{"className":7829},[701],[390,7831,616],{"className":7832,"style":615},[411,412],[390,7834,7836,7839],{"className":7835},[411],[390,7837,5101],{"className":7838,"style":1485},[411,412],[390,7840,7842],{"className":7841},[2905],[390,7843,7845,7865],{"className":7844},[2909,2910],[390,7846,7848,7862],{"className":7847},[2914],[390,7849,7851],{"className":7850,"style":7643},[2918],[390,7852,7853,7856],{"style":7705},[390,7854],{"className":7855,"style":2927},[2926],[390,7857,7859],{"className":7858},[2931,2932,2933,2934],[390,7860,757],{"className":7861},[411,2934],[390,7863,2951],{"className":7864},[2950],[390,7866,7868],{"className":7867},[2914],[390,7869,7871],{"className":7870,"style":3005},[2918],[390,7872],{},[390,7874,722],{"className":7875},[721],[390,7877],{"className":7878,"style":562},[561],[390,7880,602],{"className":7881},[566],[390,7883],{"className":7884,"style":562},[561],[390,7886,7888,7891],{"className":7887},[402],[390,7889],{"className":7890,"style":407},[406],[390,7892,7245],{"className":7893},[411,412],". This is exactly the\npredicate behind the ",[457,7896,7897],{},"Water and Jug Problem"," (can we measure ",[390,7900,7902],{"className":7901},[393],[390,7903,7905],{"className":7904,"ariaHidden":398},[397],[390,7906,7908,7911],{"className":7907},[402],[390,7909],{"className":7910,"style":407},[406],[390,7912,7245],{"className":7913},[411,412]," liters using\njugs of capacity ",[390,7916,7918],{"className":7917},[393],[390,7919,7921],{"className":7920,"ariaHidden":398},[397],[390,7922,7924,7927],{"className":7923},[402],[390,7925],{"className":7926,"style":407},[406],[390,7928,489],{"className":7929},[411,412],[390,7931,7933],{"className":7932},[393],[390,7934,7936],{"className":7935,"ariaHidden":398},[397],[390,7937,7939,7942],{"className":7938},[402],[390,7940],{"className":7941,"style":446},[406],[390,7943,671],{"className":7944},[411,412],"? iff ",[390,7947,7949],{"className":7948},[393],[390,7950,7952,7970],{"className":7951,"ariaHidden":398},[397],[390,7953,7955,7958,7961,7964,7967],{"className":7954},[402],[390,7956],{"className":7957,"style":554},[406],[390,7959,2039],{"className":7960,"style":1485},[411,412],[390,7962],{"className":7963,"style":562},[561],[390,7965,567],{"className":7966},[566],[390,7968],{"className":7969,"style":562},[561],[390,7971,7973,7976],{"className":7972},[402],[390,7974],{"className":7975,"style":407},[406],[390,7977,7245],{"className":7978},[411,412],[390,7980,7982],{"className":7981},[393],[390,7983,7985,8003,8021],{"className":7984,"ariaHidden":398},[397],[390,7986,7988,7991,7994,7997,8000],{"className":7987},[402],[390,7989],{"className":7990,"style":969},[406],[390,7992,7245],{"className":7993},[411,412],[390,7995],{"className":7996,"style":562},[561],[390,7998,2409],{"className":7999},[566],[390,8001],{"className":8002,"style":562},[561],[390,8004,8006,8009,8012,8015,8018],{"className":8005},[402],[390,8007],{"className":8008,"style":1672},[406],[390,8010,489],{"className":8011},[411,412],[390,8013],{"className":8014,"style":431},[561],[390,8016,1495],{"className":8017},[1119],[390,8019],{"className":8020,"style":431},[561],[390,8022,8024,8027],{"className":8023},[402],[390,8025],{"className":8026,"style":446},[406],[390,8028,671],{"className":8029},[411,412],") and ",[457,8032,8033],{},"Check if\nPoint Is Reachable",", where the reachable lattice is governed by the gcd of the\nallowed steps.",[467,8036,8038],{"id":8037},"modular-arithmetic","Modular arithmetic",[381,8040,8041,8042,8076,8077,1253,8092,8095,8096,8111,8112,8127,8128,8269,8270,490,8285,8300,8301,8316,8317,676,8332,8335,8408,8409,8412,8413,490,8475,8537,8538,8951,8952,8967,8968,8983,8984,8983,8999,9014,9015,9083,9084,1203,9087],{},"Fix a modulus ",[390,8043,8045],{"className":8044},[393],[390,8046,8048,8067],{"className":8047,"ariaHidden":398},[397],[390,8049,8051,8054,8058,8061,8064],{"className":8050},[402],[390,8052],{"className":8053,"style":2273},[406],[390,8055,8057],{"className":8056},[411,412],"m",[390,8059],{"className":8060,"style":562},[561],[390,8062,1013],{"className":8063},[566],[390,8065],{"className":8066,"style":562},[561],[390,8068,8070,8073],{"className":8069},[402],[390,8071],{"className":8072,"style":836},[406],[390,8074,757],{"className":8075},[411],". We say ",[390,8078,8080],{"className":8079},[393],[390,8081,8083],{"className":8082,"ariaHidden":398},[397],[390,8084,8086,8089],{"className":8085},[402],[390,8087],{"className":8088,"style":407},[406],[390,8090,489],{"className":8091},[411,412],[457,8093,8094],{},"congruent"," to ",[390,8097,8099],{"className":8098},[393],[390,8100,8102],{"className":8101,"ariaHidden":398},[397],[390,8103,8105,8108],{"className":8104},[402],[390,8106],{"className":8107,"style":446},[406],[390,8109,671],{"className":8110},[411,412]," modulo ",[390,8113,8115],{"className":8114},[393],[390,8116,8118],{"className":8117,"ariaHidden":398},[397],[390,8119,8121,8124],{"className":8120},[402],[390,8122],{"className":8123,"style":407},[406],[390,8125,8057],{"className":8126},[411,412],", written\n",[390,8129,8131],{"className":8130},[393],[390,8132,8134,8154,8171,8215,8233,8254],{"className":8133,"ariaHidden":398},[397],[390,8135,8137,8141,8144,8147,8151],{"className":8136},[402],[390,8138],{"className":8139,"style":8140},[406],"height:0.4637em;",[390,8142,489],{"className":8143},[411,412],[390,8145],{"className":8146,"style":562},[561],[390,8148,8150],{"className":8149},[566],"≡",[390,8152],{"className":8153,"style":562},[561],[390,8155,8157,8160,8163,8167],{"className":8156},[402],[390,8158],{"className":8159,"style":446},[406],[390,8161,671],{"className":8162},[411,412],[390,8164],{"className":8165},[561,8166],"allowbreak",[390,8168],{"className":8169,"style":8170},[561],"margin-right:0.4444em;",[390,8172,8174,8177,8180,8189,8193,8196,8199,8202,8205,8209,8212],{"className":8173},[402],[390,8175],{"className":8176,"style":554},[406],[390,8178,702],{"className":8179},[701],[390,8181,8183],{"className":8182},[411],[390,8184,8186],{"className":8185},[411],[390,8187,1126],{"className":8188},[411,696],[390,8190],{"className":8191,"style":8192},[561],"margin-right:0.3333em;",[390,8194,8057],{"className":8195},[411,412],[390,8197,722],{"className":8198},[721],[390,8200],{"className":8201,"style":562},[561],[390,8203],{"className":8204,"style":562},[561],[390,8206,8208],{"className":8207},[566],"↔",[390,8210],{"className":8211,"style":562},[561],[390,8213],{"className":8214,"style":562},[561],[390,8216,8218,8221,8224,8227,8230],{"className":8217},[402],[390,8219],{"className":8220,"style":554},[406],[390,8222,8057],{"className":8223},[411,412],[390,8225],{"className":8226,"style":562},[561],[390,8228,567],{"className":8229},[566],[390,8231],{"className":8232,"style":562},[561],[390,8234,8236,8239,8242,8245,8248,8251],{"className":8235},[402],[390,8237],{"className":8238,"style":554},[406],[390,8240,702],{"className":8241},[701],[390,8243,489],{"className":8244},[411,412],[390,8246],{"className":8247,"style":431},[561],[390,8249,1682],{"className":8250},[1119],[390,8252],{"className":8253,"style":431},[561],[390,8255,8257,8260,8263,8266],{"className":8256},[402],[390,8258],{"className":8259,"style":554},[406],[390,8261,671],{"className":8262},[411,412],[390,8264,722],{"className":8265},[721],[390,8267,710],{"className":8268},[709],"\ni.e. ",[390,8271,8273],{"className":8272},[393],[390,8274,8276],{"className":8275,"ariaHidden":398},[397],[390,8277,8279,8282],{"className":8278},[402],[390,8280],{"className":8281,"style":407},[406],[390,8283,489],{"className":8284},[411,412],[390,8286,8288],{"className":8287},[393],[390,8289,8291],{"className":8290,"ariaHidden":398},[397],[390,8292,8294,8297],{"className":8293},[402],[390,8295],{"className":8296,"style":446},[406],[390,8298,671],{"className":8299},[411,412]," leave the same remainder on division by ",[390,8302,8304],{"className":8303},[393],[390,8305,8307],{"className":8306,"ariaHidden":398},[397],[390,8308,8310,8313],{"className":8309},[402],[390,8311],{"className":8312,"style":407},[406],[390,8314,8057],{"className":8315},[411,412],". Congruence is an\nequivalence relation, and it partitions the integers into ",[390,8318,8320],{"className":8319},[393],[390,8321,8323],{"className":8322,"ariaHidden":398},[397],[390,8324,8326,8329],{"className":8325},[402],[390,8327],{"className":8328,"style":407},[406],[390,8330,8057],{"className":8331},[411,412],[457,8333,8334],{},"residue classes",[390,8336,8338],{"className":8337},[393],[390,8339,8341,8395],{"className":8340,"ariaHidden":398},[397],[390,8342,8344,8347,8351,8354,8357,8360,8363,8366,8369,8374,8377,8380,8383,8386,8389,8392],{"className":8343},[402],[390,8345],{"className":8346,"style":554},[406],[390,8348,8350],{"className":8349},[701],"{",[390,8352,757],{"className":8353},[411],[390,8355,710],{"className":8356},[709],[390,8358],{"className":8359,"style":714},[561],[390,8361,895],{"className":8362},[411],[390,8364,710],{"className":8365},[709],[390,8367],{"className":8368,"style":714},[561],[390,8370,8373],{"className":8371},[8372],"minner","…",[390,8375],{"className":8376,"style":714},[561],[390,8378,710],{"className":8379},[709],[390,8381],{"className":8382,"style":714},[561],[390,8384,8057],{"className":8385},[411,412],[390,8387],{"className":8388,"style":431},[561],[390,8390,1682],{"className":8391},[1119],[390,8393],{"className":8394,"style":431},[561],[390,8396,8398,8401,8404],{"className":8397},[402],[390,8399],{"className":8400,"style":554},[406],[390,8402,895],{"className":8403},[411],[390,8405,8407],{"className":8406},[721],"}",". The decisive property is that the class operations are\n",[457,8410,8411],{},"well-defined",": if ",[390,8414,8416],{"className":8415},[393],[390,8417,8419,8437],{"className":8418,"ariaHidden":398},[397],[390,8420,8422,8425,8428,8431,8434],{"className":8421},[402],[390,8423],{"className":8424,"style":8140},[406],[390,8426,489],{"className":8427},[411,412],[390,8429],{"className":8430,"style":562},[561],[390,8432,8150],{"className":8433},[566],[390,8435],{"className":8436,"style":562},[561],[390,8438,8440,8443],{"className":8439},[402],[390,8441],{"className":8442,"style":5520},[406],[390,8444,8446,8449],{"className":8445},[411],[390,8447,489],{"className":8448},[411,412],[390,8450,8452],{"className":8451},[2905],[390,8453,8455],{"className":8454},[2909],[390,8456,8458],{"className":8457},[2914],[390,8459,8461],{"className":8460,"style":5520},[2918],[390,8462,8463,8466],{"style":3315},[390,8464],{"className":8465,"style":2927},[2926],[390,8467,8469],{"className":8468},[2931,2932,2933,2934],[390,8470,8472],{"className":8471},[411,2934],[390,8473,5535],{"className":8474},[411,2934],[390,8476,8478],{"className":8477},[393],[390,8479,8481,8499],{"className":8480,"ariaHidden":398},[397],[390,8482,8484,8487,8490,8493,8496],{"className":8483},[402],[390,8485],{"className":8486,"style":446},[406],[390,8488,671],{"className":8489},[411,412],[390,8491],{"className":8492,"style":562},[561],[390,8494,8150],{"className":8495},[566],[390,8497],{"className":8498,"style":562},[561],[390,8500,8502,8505],{"className":8501},[402],[390,8503],{"className":8504,"style":5520},[406],[390,8506,8508,8511],{"className":8507},[411],[390,8509,671],{"className":8510},[411,412],[390,8512,8514],{"className":8513},[2905],[390,8515,8517],{"className":8516},[2909],[390,8518,8520],{"className":8519},[2914],[390,8521,8523],{"className":8522,"style":5520},[2918],[390,8524,8525,8528],{"style":3315},[390,8526],{"className":8527,"style":2927},[2926],[390,8529,8531],{"className":8530},[2931,2932,2933,2934],[390,8532,8534],{"className":8533},[411,2934],[390,8535,5535],{"className":8536},[411,2934],", then\n",[390,8539,8541],{"className":8540},[393],[390,8542,8544,8562,8580,8627,8688,8706,8753,8812,8830,8877,8921],{"className":8543,"ariaHidden":398},[397],[390,8545,8547,8550,8553,8556,8559],{"className":8546},[402],[390,8548],{"className":8549,"style":1672},[406],[390,8551,489],{"className":8552},[411,412],[390,8554],{"className":8555,"style":431},[561],[390,8557,1495],{"className":8558},[1119],[390,8560],{"className":8561,"style":431},[561],[390,8563,8565,8568,8571,8574,8577],{"className":8564},[402],[390,8566],{"className":8567,"style":446},[406],[390,8569,671],{"className":8570},[411,412],[390,8572],{"className":8573,"style":562},[561],[390,8575,8150],{"className":8576},[566],[390,8578],{"className":8579,"style":562},[561],[390,8581,8583,8586,8618,8621,8624],{"className":8582},[402],[390,8584],{"className":8585,"style":5589},[406],[390,8587,8589,8592],{"className":8588},[411],[390,8590,489],{"className":8591},[411,412],[390,8593,8595],{"className":8594},[2905],[390,8596,8598],{"className":8597},[2909],[390,8599,8601],{"className":8600},[2914],[390,8602,8604],{"className":8603,"style":5520},[2918],[390,8605,8606,8609],{"style":3315},[390,8607],{"className":8608,"style":2927},[2926],[390,8610,8612],{"className":8611},[2931,2932,2933,2934],[390,8613,8615],{"className":8614},[411,2934],[390,8616,5535],{"className":8617},[411,2934],[390,8619],{"className":8620,"style":431},[561],[390,8622,1495],{"className":8623},[1119],[390,8625],{"className":8626,"style":431},[561],[390,8628,8630,8634,8666,8669,8673,8676,8679,8682,8685],{"className":8629},[402],[390,8631],{"className":8632,"style":8633},[406],"height:0.9463em;vertical-align:-0.1944em;",[390,8635,8637,8640],{"className":8636},[411],[390,8638,671],{"className":8639},[411,412],[390,8641,8643],{"className":8642},[2905],[390,8644,8646],{"className":8645},[2909],[390,8647,8649],{"className":8648},[2914],[390,8650,8652],{"className":8651,"style":5520},[2918],[390,8653,8654,8657],{"style":3315},[390,8655],{"className":8656,"style":2927},[2926],[390,8658,8660],{"className":8659},[2931,2932,2933,2934],[390,8661,8663],{"className":8662},[411,2934],[390,8664,5535],{"className":8665},[411,2934],[390,8667,710],{"className":8668},[709],[390,8670],{"className":8671,"style":8672},[561],"margin-right:1em;",[390,8674],{"className":8675,"style":714},[561],[390,8677,489],{"className":8678},[411,412],[390,8680],{"className":8681,"style":431},[561],[390,8683,1682],{"className":8684},[1119],[390,8686],{"className":8687,"style":431},[561],[390,8689,8691,8694,8697,8700,8703],{"className":8690},[402],[390,8692],{"className":8693,"style":446},[406],[390,8695,671],{"className":8696},[411,412],[390,8698],{"className":8699,"style":562},[561],[390,8701,8150],{"className":8702},[566],[390,8704],{"className":8705,"style":562},[561],[390,8707,8709,8712,8744,8747,8750],{"className":8708},[402],[390,8710],{"className":8711,"style":5589},[406],[390,8713,8715,8718],{"className":8714},[411],[390,8716,489],{"className":8717},[411,412],[390,8719,8721],{"className":8720},[2905],[390,8722,8724],{"className":8723},[2909],[390,8725,8727],{"className":8726},[2914],[390,8728,8730],{"className":8729,"style":5520},[2918],[390,8731,8732,8735],{"style":3315},[390,8733],{"className":8734,"style":2927},[2926],[390,8736,8738],{"className":8737},[2931,2932,2933,2934],[390,8739,8741],{"className":8740},[411,2934],[390,8742,5535],{"className":8743},[411,2934],[390,8745],{"className":8746,"style":431},[561],[390,8748,1682],{"className":8749},[1119],[390,8751],{"className":8752,"style":431},[561],[390,8754,8756,8759,8791,8794,8797,8800,8803,8806,8809],{"className":8755},[402],[390,8757],{"className":8758,"style":8633},[406],[390,8760,8762,8765],{"className":8761},[411],[390,8763,671],{"className":8764},[411,412],[390,8766,8768],{"className":8767},[2905],[390,8769,8771],{"className":8770},[2909],[390,8772,8774],{"className":8773},[2914],[390,8775,8777],{"className":8776,"style":5520},[2918],[390,8778,8779,8782],{"style":3315},[390,8780],{"className":8781,"style":2927},[2926],[390,8783,8785],{"className":8784},[2931,2932,2933,2934],[390,8786,8788],{"className":8787},[411,2934],[390,8789,5535],{"className":8790},[411,2934],[390,8792,710],{"className":8793},[709],[390,8795],{"className":8796,"style":8672},[561],[390,8798],{"className":8799,"style":714},[561],[390,8801,489],{"className":8802},[411,412],[390,8804],{"className":8805,"style":431},[561],[390,8807,5289],{"className":8808},[1119],[390,8810],{"className":8811,"style":431},[561],[390,8813,8815,8818,8821,8824,8827],{"className":8814},[402],[390,8816],{"className":8817,"style":446},[406],[390,8819,671],{"className":8820},[411,412],[390,8822],{"className":8823,"style":562},[561],[390,8825,8150],{"className":8826},[566],[390,8828],{"className":8829,"style":562},[561],[390,8831,8833,8836,8868,8871,8874],{"className":8832},[402],[390,8834],{"className":8835,"style":5520},[406],[390,8837,8839,8842],{"className":8838},[411],[390,8840,489],{"className":8841},[411,412],[390,8843,8845],{"className":8844},[2905],[390,8846,8848],{"className":8847},[2909],[390,8849,8851],{"className":8850},[2914],[390,8852,8854],{"className":8853,"style":5520},[2918],[390,8855,8856,8859],{"style":3315},[390,8857],{"className":8858,"style":2927},[2926],[390,8860,8862],{"className":8861},[2931,2932,2933,2934],[390,8863,8865],{"className":8864},[411,2934],[390,8866,5535],{"className":8867},[411,2934],[390,8869],{"className":8870,"style":431},[561],[390,8872,5289],{"className":8873},[1119],[390,8875],{"className":8876,"style":431},[561],[390,8878,8880,8883,8915,8918],{"className":8879},[402],[390,8881],{"className":8882,"style":5520},[406],[390,8884,8886,8889],{"className":8885},[411],[390,8887,671],{"className":8888},[411,412],[390,8890,8892],{"className":8891},[2905],[390,8893,8895],{"className":8894},[2909],[390,8896,8898],{"className":8897},[2914],[390,8899,8901],{"className":8900,"style":5520},[2918],[390,8902,8903,8906],{"style":3315},[390,8904],{"className":8905,"style":2927},[2926],[390,8907,8909],{"className":8908},[2931,2932,2933,2934],[390,8910,8912],{"className":8911},[411,2934],[390,8913,5535],{"className":8914},[411,2934],[390,8916],{"className":8917},[561,8166],[390,8919],{"className":8920,"style":8170},[561],[390,8922,8924,8927,8930,8939,8942,8945,8948],{"className":8923},[402],[390,8925],{"className":8926,"style":554},[406],[390,8928,702],{"className":8929},[701],[390,8931,8933],{"className":8932},[411],[390,8934,8936],{"className":8935},[411],[390,8937,1126],{"className":8938},[411,696],[390,8940],{"className":8941,"style":8192},[561],[390,8943,8057],{"className":8944},[411,412],[390,8946,722],{"className":8947},[721],[390,8949,1203],{"className":8950},[411],"\nSo you may reduce mod ",[390,8953,8955],{"className":8954},[393],[390,8956,8958],{"className":8957,"ariaHidden":398},[397],[390,8959,8961,8964],{"className":8960},[402],[390,8962],{"className":8963,"style":407},[406],[390,8965,8057],{"className":8966},[411,412]," at any point in a chain of ",[390,8969,8971],{"className":8970},[393],[390,8972,8974],{"className":8973,"ariaHidden":398},[397],[390,8975,8977,8980],{"className":8976},[402],[390,8978],{"className":8979,"style":1672},[406],[390,8981,1495],{"className":8982},[411],", ",[390,8985,8987],{"className":8986},[393],[390,8988,8990],{"className":8989,"ariaHidden":398},[397],[390,8991,8993,8996],{"className":8992},[402],[390,8994],{"className":8995,"style":1672},[406],[390,8997,1682],{"className":8998},[411],[390,9000,9002],{"className":9001},[393],[390,9003,9005],{"className":9004,"ariaHidden":398},[397],[390,9006,9008,9011],{"className":9007},[402],[390,9009],{"className":9010,"style":1672},[406],[390,9012,4709],{"className":9013},[411]," without\nchanging the final residue, the foundation of every ",[462,9016,9017,9018],{},"answer modulo ",[390,9019,9021],{"className":9020},[393],[390,9022,9024,9073],{"className":9023,"ariaHidden":398},[397],[390,9025,9027,9031,9034,9064,9067,9070],{"className":9026},[402],[390,9028],{"className":9029,"style":9030},[406],"height:0.8974em;vertical-align:-0.0833em;",[390,9032,895],{"className":9033},[411],[390,9035,9037,9040],{"className":9036},[411],[390,9038,757],{"className":9039},[411],[390,9041,9043],{"className":9042},[2905],[390,9044,9046],{"className":9045},[2909],[390,9047,9049],{"className":9048},[2914],[390,9050,9053],{"className":9051,"style":9052},[2918],"height:0.8141em;",[390,9054,9055,9058],{"style":3315},[390,9056],{"className":9057,"style":2927},[2926],[390,9059,9061],{"className":9060},[2931,2932,2933,2934],[390,9062,3495],{"className":9063},[411,2934],[390,9065],{"className":9066,"style":431},[561],[390,9068,1495],{"className":9069},[1119],[390,9071],{"className":9072,"style":431},[561],[390,9074,9076,9079],{"className":9075},[402],[390,9077],{"className":9078,"style":836},[406],[390,9080,9082],{"className":9081},[411],"7","\nproblem and of ",[489,9085,9086],{"href":328},"combinatorics modulo a prime",[887,9088,9089],{},[489,9090,9094],{"href":9091,"ariaDescribedBy":9092,"dataFootnoteRef":376,"id":9093},"#user-content-fn-skiena-mod",[893],"user-content-fnref-skiena-mod","3",[381,9096,9097,9098,9101,9102,9196,9197,9212,9213,9229,9230,9366,9367,1203],{},"When two ",[457,9099,9100],{},"coprime"," moduli are at play, the residue classes interlock perfectly:\nthe pair ",[390,9103,9105],{"className":9104},[393],[390,9106,9108,9141,9183],{"className":9107,"ariaHidden":398},[397],[390,9109,9111,9114,9117,9120,9123,9126,9135,9138],{"className":9110},[402],[390,9112],{"className":9113,"style":554},[406],[390,9115,702],{"className":9116},[701],[390,9118,5091],{"className":9119},[411,412],[390,9121],{"className":9122,"style":1112},[561],[390,9124],{"className":9125,"style":431},[561],[390,9127,9129],{"className":9128},[1119],[390,9130,9132],{"className":9131},[411],[390,9133,1126],{"className":9134},[411,696],[390,9136],{"className":9137,"style":1112},[561],[390,9139],{"className":9140,"style":431},[561],[390,9142,9144,9147,9150,9153,9156,9159,9162,9165,9168,9177,9180],{"className":9143},[402],[390,9145],{"className":9146,"style":853},[406],[390,9148,9094],{"className":9149},[411],[390,9151,710],{"className":9152},[709],[390,9154,1102],{"className":9155},[561],[390,9157],{"className":9158,"style":714},[561],[390,9160,5091],{"className":9161},[411,412],[390,9163],{"className":9164,"style":1112},[561],[390,9166],{"className":9167,"style":431},[561],[390,9169,9171],{"className":9170},[1119],[390,9172,9174],{"className":9173},[411],[390,9175,1126],{"className":9176},[411,696],[390,9178],{"className":9179,"style":1112},[561],[390,9181],{"className":9182,"style":431},[561],[390,9184,9186,9189,9193],{"className":9185},[402],[390,9187],{"className":9188,"style":554},[406],[390,9190,9192],{"className":9191},[411],"5",[390,9194,722],{"className":9195},[721]," pins ",[390,9198,9200],{"className":9199},[393],[390,9201,9203],{"className":9202,"ariaHidden":398},[397],[390,9204,9206,9209],{"className":9205},[402],[390,9207],{"className":9208,"style":407},[406],[390,9210,5091],{"className":9211},[411,412]," down uniquely modulo ",[390,9214,9216],{"className":9215},[393],[390,9217,9219],{"className":9218,"ariaHidden":398},[397],[390,9220,9222,9225],{"className":9221},[402],[390,9223],{"className":9224,"style":836},[406],[390,9226,9228],{"className":9227},[411],"15",". The grid\nbelow tabulates that bijection, with ",[390,9231,9233],{"className":9232},[393],[390,9234,9236,9254,9294,9315,9354],{"className":9235,"ariaHidden":398},[397],[390,9237,9239,9242,9245,9248,9251],{"className":9238},[402],[390,9240],{"className":9241,"style":407},[406],[390,9243,5091],{"className":9244},[411,412],[390,9246],{"className":9247,"style":562},[561],[390,9249,602],{"className":9250},[566],[390,9252],{"className":9253,"style":562},[561],[390,9255,9257,9260,9264,9267,9270,9273,9276,9279,9288,9291],{"className":9256},[402],[390,9258],{"className":9259,"style":554},[406],[390,9261,9263],{"className":9262},[411],"10",[390,9265],{"className":9266,"style":714},[561],[390,9268,702],{"className":9269},[701],[390,9271,5091],{"className":9272},[411,412],[390,9274],{"className":9275,"style":1112},[561],[390,9277],{"className":9278,"style":431},[561],[390,9280,9282],{"className":9281},[1119],[390,9283,9285],{"className":9284},[411],[390,9286,1126],{"className":9287},[411,696],[390,9289],{"className":9290,"style":1112},[561],[390,9292],{"className":9293,"style":431},[561],[390,9295,9297,9300,9303,9306,9309,9312],{"className":9296},[402],[390,9298],{"className":9299,"style":554},[406],[390,9301,9094],{"className":9302},[411],[390,9304,722],{"className":9305},[721],[390,9307],{"className":9308,"style":431},[561],[390,9310,1495],{"className":9311},[1119],[390,9313],{"className":9314,"style":431},[561],[390,9316,9318,9321,9324,9327,9330,9333,9336,9339,9348,9351],{"className":9317},[402],[390,9319],{"className":9320,"style":554},[406],[390,9322,4499],{"className":9323},[411],[390,9325],{"className":9326,"style":714},[561],[390,9328,702],{"className":9329},[701],[390,9331,5091],{"className":9332},[411,412],[390,9334],{"className":9335,"style":1112},[561],[390,9337],{"className":9338,"style":431},[561],[390,9340,9342],{"className":9341},[1119],[390,9343,9345],{"className":9344},[411],[390,9346,1126],{"className":9347},[411,696],[390,9349],{"className":9350,"style":1112},[561],[390,9352],{"className":9353,"style":431},[561],[390,9355,9357,9360,9363],{"className":9356},[402],[390,9358],{"className":9359,"style":554},[406],[390,9361,9192],{"className":9362},[411],[390,9364,722],{"className":9365},[721]," landing in\neach cell, the constructive heart of the Chinese Remainder Theorem we revisit in\n",[489,9368,9369],{"href":328},"combinatorics",[3472,9371,9373,9715],{"className":9372},[3475,3476],[3478,9374,9378],{"xmlns":3480,"width":9375,"height":9376,"viewBox":9377},"222.576","189.813","-75 -75 166.932 142.359",[2039,9379,9380,9389,9398,9407,9416,9425,9433,9441,9449,9478,9504,9507,9510,9516,9519,9526,9529,9536,9539,9545,9548,9555,9558,9565,9568,9574,9577,9584,9587,9594,9597,9603,9606,9613,9616,9623,9626,9632,9635,9642,9645,9652,9656],{"stroke":3486,"style":3487},[2039,9381,9382],{"fill":3639,"stroke":3639},[2039,9383,9385],{"transform":9384},"translate(20.45 -19.862)",[3489,9386],{"d":9387,"fill":3639,"stroke":3639,"className":9388,"style":3504},"M-34.418-20.437Q-35.543-20.437-35.957-21.334Q-36.370-22.230-36.370-23.505Q-36.370-24.278-36.220-24.977Q-36.071-25.676-35.636-26.152Q-35.201-26.629-34.418-26.629Q-33.641-26.629-33.206-26.150Q-32.771-25.671-32.621-24.975Q-32.472-24.278-32.472-23.505Q-32.472-22.226-32.885-21.332Q-33.298-20.437-34.418-20.437M-34.418-20.697Q-33.900-20.697-33.649-21.208Q-33.399-21.720-33.342-22.331Q-33.285-22.942-33.285-23.650Q-33.285-24.335-33.342-24.895Q-33.399-25.456-33.652-25.913Q-33.904-26.370-34.418-26.370Q-34.823-26.370-35.060-26.093Q-35.297-25.816-35.405-25.375Q-35.513-24.933-35.537-24.540Q-35.561-24.146-35.561-23.650Q-35.561-23.144-35.537-22.716Q-35.513-22.287-35.405-21.804Q-35.297-21.321-35.058-21.009Q-34.818-20.697-34.418-20.697",[3503],[2039,9390,9391],{"fill":3639,"stroke":3639},[2039,9392,9394],{"transform":9393},"translate(43.212 -19.862)",[3489,9395],{"d":9396,"fill":3639,"stroke":3639,"className":9397,"style":3504},"M-32.823-20.635L-35.855-20.635L-35.855-20.951Q-34.704-20.951-34.704-21.246L-34.704-25.970Q-35.192-25.737-35.913-25.737L-35.913-26.053Q-34.783-26.053-34.221-26.629L-34.076-26.629Q-34.041-26.629-34.008-26.596Q-33.975-26.563-33.975-26.528L-33.975-21.246Q-33.975-20.951-32.823-20.951",[3503],[2039,9399,9400],{"fill":3639,"stroke":3639},[2039,9401,9403],{"transform":9402},"translate(65.974 -19.862)",[3489,9404],{"d":9405,"fill":3639,"stroke":3639,"className":9406,"style":3504},"M-32.823-20.635L-36.273-20.635L-36.273-20.868Q-36.273-20.881-36.242-20.912L-34.788-22.489Q-34.322-22.986-34.069-23.291Q-33.816-23.597-33.625-24.008Q-33.434-24.419-33.434-24.858Q-33.434-25.447-33.757-25.880Q-34.080-26.313-34.660-26.313Q-34.924-26.313-35.170-26.203Q-35.416-26.093-35.592-25.906Q-35.768-25.719-35.864-25.469L-35.785-25.469Q-35.583-25.469-35.440-25.333Q-35.297-25.197-35.297-24.981Q-35.297-24.775-35.440-24.636Q-35.583-24.498-35.785-24.498Q-35.987-24.498-36.130-24.641Q-36.273-24.783-36.273-24.981Q-36.273-25.443-36.036-25.816Q-35.798-26.190-35.398-26.409Q-34.999-26.629-34.550-26.629Q-34.027-26.629-33.573-26.414Q-33.118-26.198-32.845-25.799Q-32.573-25.399-32.573-24.858Q-32.573-24.463-32.744-24.109Q-32.916-23.755-33.181-23.476Q-33.447-23.197-33.898-22.812Q-34.348-22.428-34.427-22.353L-35.451-21.391L-34.634-21.391Q-33.983-21.391-33.546-21.402Q-33.109-21.413-33.078-21.435Q-33.008-21.518-32.953-21.758Q-32.898-21.997-32.858-22.265L-32.573-22.265",[3503],[2039,9408,9409],{"fill":3639,"stroke":3639},[2039,9410,9412],{"transform":9411},"translate(88.736 -19.862)",[3489,9413],{"d":9414,"fill":3639,"stroke":3639,"className":9415,"style":3504},"M-35.829-21.356L-35.873-21.356Q-35.671-21.039-35.284-20.881Q-34.897-20.723-34.471-20.723Q-33.935-20.723-33.696-21.158Q-33.456-21.593-33.456-22.173Q-33.456-22.753-33.702-23.193Q-33.948-23.632-34.480-23.632L-35.100-23.632Q-35.126-23.632-35.159-23.661Q-35.192-23.689-35.192-23.711L-35.192-23.812Q-35.192-23.843-35.163-23.867Q-35.135-23.891-35.100-23.891L-34.581-23.931Q-34.115-23.931-33.869-24.403Q-33.623-24.876-33.623-25.394Q-33.623-25.821-33.836-26.095Q-34.049-26.370-34.471-26.370Q-34.814-26.370-35.139-26.240Q-35.464-26.111-35.649-25.856L-35.623-25.856Q-35.420-25.856-35.284-25.715Q-35.148-25.574-35.148-25.377Q-35.148-25.179-35.282-25.045Q-35.416-24.911-35.614-24.911Q-35.816-24.911-35.954-25.045Q-36.093-25.179-36.093-25.377Q-36.093-25.966-35.590-26.297Q-35.086-26.629-34.471-26.629Q-34.093-26.629-33.691-26.489Q-33.289-26.348-33.021-26.069Q-32.753-25.790-32.753-25.394Q-32.753-24.845-33.107-24.408Q-33.460-23.970-34.001-23.786Q-33.610-23.707-33.265-23.483Q-32.920-23.259-32.709-22.918Q-32.498-22.577-32.498-22.182Q-32.498-21.800-32.661-21.477Q-32.823-21.154-33.115-20.918Q-33.408-20.683-33.755-20.560Q-34.102-20.437-34.471-20.437Q-34.919-20.437-35.350-20.598Q-35.781-20.758-36.062-21.085Q-36.343-21.413-36.343-21.870Q-36.343-22.085-36.196-22.228Q-36.049-22.371-35.829-22.371Q-35.618-22.371-35.473-22.226Q-35.328-22.081-35.328-21.870Q-35.328-21.659-35.475-21.507Q-35.623-21.356-35.829-21.356",[3503],[2039,9417,9418],{"fill":3639,"stroke":3639},[2039,9419,9421],{"transform":9420},"translate(111.498 -19.862)",[3489,9422],{"d":9423,"fill":3639,"stroke":3639,"className":9424,"style":3504},"M-34.032-22.112L-36.471-22.112L-36.471-22.428L-33.645-26.576Q-33.601-26.629-33.535-26.629L-33.381-26.629Q-33.342-26.629-33.309-26.596Q-33.276-26.563-33.276-26.519L-33.276-22.428L-32.375-22.428L-32.375-22.112L-33.276-22.112L-33.276-21.246Q-33.276-20.951-32.375-20.951L-32.375-20.635L-34.928-20.635L-34.928-20.951Q-34.568-20.951-34.300-21.006Q-34.032-21.061-34.032-21.246L-34.032-22.112M-33.975-25.601L-36.137-22.428L-33.975-22.428",[3503],[2039,9426,9427],{"fill":3639,"stroke":3639},[2039,9428,9430],{"transform":9429},"translate(-2.312 2.9)",[3489,9431],{"d":9387,"fill":3639,"stroke":3639,"className":9432,"style":3504},[3503],[2039,9434,9435],{"fill":3639,"stroke":3639},[2039,9436,9438],{"transform":9437},"translate(-2.312 25.662)",[3489,9439],{"d":9396,"fill":3639,"stroke":3639,"className":9440,"style":3504},[3503],[2039,9442,9443],{"fill":3639,"stroke":3639},[2039,9444,9446],{"transform":9445},"translate(-2.312 48.424)",[3489,9447],{"d":9405,"fill":3639,"stroke":3639,"className":9448,"style":3504},[3503],[2039,9450,9451],{"fill":3639,"stroke":3639},[2039,9452,9453,9460,9466,9472],{"fill":3639,"stroke":3491,"fontSize":3689},[2039,9454,9456],{"transform":9455},"translate(53.262 -42.747)",[3489,9457],{"d":9458,"fill":3639,"stroke":3639,"className":9459,"style":3697},"M-36.042-20.924Q-35.875-20.811-35.632-20.811Q-35.382-20.811-35.185-21.037Q-34.988-21.264-34.929-21.522L-34.570-22.963Q-34.492-23.268-34.492-23.428Q-34.492-23.639-34.609-23.774Q-34.726-23.908-34.937-23.908Q-35.191-23.908-35.419-23.762Q-35.648-23.615-35.804-23.385Q-35.960-23.155-36.019-22.908Q-36.031-22.834-36.097-22.834L-36.203-22.834Q-36.234-22.834-36.261-22.869Q-36.289-22.905-36.289-22.932L-36.289-22.963Q-36.210-23.276-36.011-23.549Q-35.812-23.823-35.523-23.992Q-35.234-24.162-34.921-24.162Q-34.625-24.162-34.365-24.018Q-34.105-23.873-33.996-23.612Q-33.847-23.854-33.628-24.008Q-33.410-24.162-33.156-24.162Q-32.957-24.162-32.769-24.096Q-32.582-24.030-32.460-23.891Q-32.339-23.752-32.339-23.557Q-32.339-23.346-32.470-23.190Q-32.601-23.033-32.808-23.033Q-32.941-23.033-33.035-23.117Q-33.128-23.201-33.128-23.338Q-33.128-23.502-33.021-23.631Q-32.914-23.760-32.753-23.795Q-32.929-23.908-33.171-23.908Q-33.339-23.908-33.486-23.799Q-33.632-23.690-33.732-23.526Q-33.832-23.362-33.875-23.194L-34.234-21.756Q-34.304-21.412-34.304-21.291Q-34.304-21.076-34.187-20.944Q-34.070-20.811-33.859-20.811Q-33.480-20.811-33.179-21.117Q-32.878-21.424-32.785-21.811Q-32.757-21.881-32.699-21.881L-32.593-21.881Q-32.554-21.881-32.531-21.852Q-32.507-21.823-32.507-21.787Q-32.507-21.772-32.515-21.756Q-32.593-21.444-32.792-21.170Q-32.992-20.897-33.277-20.727Q-33.562-20.557-33.875-20.557Q-34.175-20.557-34.435-20.701Q-34.695-20.846-34.808-21.108Q-34.953-20.873-35.169-20.715Q-35.386-20.557-35.640-20.557Q-35.839-20.557-36.027-20.623Q-36.214-20.690-36.335-20.828Q-36.457-20.967-36.457-21.162Q-36.457-21.373-36.324-21.528Q-36.191-21.682-35.988-21.682Q-35.843-21.682-35.755-21.600Q-35.667-21.518-35.667-21.377Q-35.667-21.217-35.773-21.088Q-35.878-20.959-36.042-20.924",[3503],[2039,9461,9462],{"transform":9455},[3489,9463],{"d":9464,"fill":3639,"stroke":3639,"className":9465,"style":3697},"M-27.416-20.635L-29.271-20.635L-29.271-20.932Q-28.998-20.932-28.830-20.979Q-28.662-21.026-28.662-21.194L-28.662-23.330Q-28.662-23.545-28.725-23.641Q-28.787-23.737-28.906-23.758Q-29.025-23.780-29.271-23.780L-29.271-24.076L-28.080-24.162L-28.080-23.428Q-27.967-23.643-27.773-23.811Q-27.580-23.979-27.342-24.071Q-27.104-24.162-26.850-24.162Q-25.889-24.162-25.713-23.451Q-25.529-23.780-25.201-23.971Q-24.873-24.162-24.494-24.162Q-23.318-24.162-23.318-23.084L-23.318-21.194Q-23.318-21.026-23.150-20.979Q-22.982-20.932-22.713-20.932L-22.713-20.635L-24.568-20.635L-24.568-20.932Q-24.295-20.932-24.127-20.977Q-23.959-21.022-23.959-21.194L-23.959-23.069Q-23.959-23.455-24.084-23.682Q-24.209-23.908-24.561-23.908Q-24.865-23.908-25.121-23.746Q-25.377-23.584-25.525-23.315Q-25.674-23.045-25.674-22.748L-25.674-21.194Q-25.674-21.026-25.504-20.979Q-25.334-20.932-25.064-20.932L-25.064-20.635L-26.920-20.635L-26.920-20.932Q-26.646-20.932-26.479-20.979Q-26.311-21.026-26.311-21.194L-26.311-23.069Q-26.311-23.455-26.436-23.682Q-26.561-23.908-26.912-23.908Q-27.217-23.908-27.473-23.746Q-27.729-23.584-27.877-23.315Q-28.025-23.045-28.025-22.748L-28.025-21.194Q-28.025-21.026-27.855-20.979Q-27.686-20.932-27.416-20.932L-27.416-20.635M-22.268-22.330Q-22.268-22.834-22.012-23.266Q-21.756-23.698-21.320-23.949Q-20.885-24.201-20.385-24.201Q-19.998-24.201-19.656-24.057Q-19.314-23.912-19.053-23.651Q-18.791-23.389-18.648-23.053Q-18.506-22.717-18.506-22.330Q-18.506-21.838-18.770-21.428Q-19.033-21.018-19.463-20.787Q-19.893-20.557-20.385-20.557Q-20.877-20.557-21.311-20.789Q-21.744-21.022-22.006-21.430Q-22.268-21.838-22.268-22.330M-20.385-20.834Q-19.928-20.834-19.676-21.057Q-19.424-21.280-19.336-21.631Q-19.248-21.983-19.248-22.428Q-19.248-22.858-19.342-23.196Q-19.436-23.533-19.689-23.740Q-19.943-23.948-20.385-23.948Q-21.033-23.948-21.277-23.531Q-21.521-23.115-21.521-22.428Q-21.521-21.983-21.434-21.631Q-21.346-21.280-21.094-21.057Q-20.842-20.834-20.385-20.834",[3503],[2039,9467,9468],{"transform":9455},[3489,9469],{"d":9470,"fill":3639,"stroke":3639,"className":9471,"style":3697},"M-15.960-20.557Q-16.441-20.557-16.849-20.801Q-17.257-21.045-17.495-21.459Q-17.734-21.873-17.734-22.362Q-17.734-22.854-17.476-23.270Q-17.218-23.686-16.786-23.924Q-16.355-24.162-15.863-24.162Q-15.242-24.162-14.792-23.725L-14.792-25.354Q-14.792-25.569-14.855-25.664Q-14.917-25.760-15.035-25.781Q-15.152-25.803-15.398-25.803L-15.398-26.100L-14.175-26.186L-14.175-21.377Q-14.175-21.166-14.113-21.071Q-14.050-20.975-13.933-20.953Q-13.816-20.932-13.566-20.932L-13.566-20.635L-14.816-20.557L-14.816-21.041Q-15.281-20.557-15.960-20.557M-15.894-20.811Q-15.554-20.811-15.261-21.002Q-14.968-21.194-14.816-21.490L-14.816-23.323Q-14.964-23.596-15.226-23.752Q-15.488-23.908-15.800-23.908Q-16.425-23.908-16.708-23.461Q-16.992-23.014-16.992-22.354Q-16.992-21.709-16.740-21.260Q-16.488-20.811-15.894-20.811",[3503],[2039,9473,9474],{"transform":9455},[3489,9475],{"d":9476,"fill":3639,"stroke":3639,"className":9477,"style":3697},"M-10.091-21.514L-10.154-21.514Q-10.013-21.162-9.689-20.951Q-9.365-20.740-8.978-20.740Q-8.384-20.740-8.134-21.174Q-7.884-21.608-7.884-22.244Q-7.884-22.838-8.054-23.285Q-8.224-23.733-8.724-23.733Q-9.021-23.733-9.226-23.653Q-9.431-23.573-9.533-23.481Q-9.634-23.389-9.749-23.256Q-9.865-23.123-9.915-23.108L-9.986-23.108Q-10.072-23.131-10.091-23.209L-10.091-25.858Q-10.060-25.955-9.986-25.955Q-9.970-25.955-9.962-25.953Q-9.954-25.951-9.947-25.948Q-9.361-25.698-8.763-25.698Q-8.181-25.698-7.564-25.955L-7.540-25.955Q-7.497-25.955-7.470-25.930Q-7.443-25.905-7.443-25.865L-7.443-25.787Q-7.443-25.756-7.466-25.733Q-7.763-25.381-8.185-25.184Q-8.607-24.987-9.068-24.987Q-9.415-24.987-9.794-25.092L-9.794-23.596Q-9.576-23.791-9.300-23.889Q-9.025-23.987-8.724-23.987Q-8.267-23.987-7.898-23.739Q-7.529-23.490-7.322-23.086Q-7.115-22.682-7.115-22.237Q-7.115-21.748-7.370-21.340Q-7.626-20.932-8.058-20.699Q-8.490-20.467-8.978-20.467Q-9.372-20.467-9.728-20.658Q-10.083-20.850-10.294-21.184Q-10.505-21.518-10.505-21.932Q-10.505-22.112-10.388-22.225Q-10.271-22.338-10.091-22.338Q-9.974-22.338-9.882-22.285Q-9.790-22.233-9.738-22.141Q-9.685-22.049-9.685-21.932Q-9.685-21.748-9.798-21.631Q-9.911-21.514-10.091-21.514",[3503],[2039,9479,9480],{"fill":3639,"stroke":3639},[2039,9481,9482,9488,9493,9498],{"fill":3639,"stroke":3491,"fontSize":3689},[2039,9483,9485],{"transform":9484},"rotate(-90 -27.83 8.25)",[3489,9486],{"d":9458,"fill":3639,"stroke":3639,"className":9487,"style":3697},[3503],[2039,9489,9490],{"transform":9484},[3489,9491],{"d":9464,"fill":3639,"stroke":3639,"className":9492,"style":3697},[3503],[2039,9494,9495],{"transform":9484},[3489,9496],{"d":9470,"fill":3639,"stroke":3639,"className":9497,"style":3697},[3503],[2039,9499,9500],{"transform":9484},[3489,9501],{"d":9502,"fill":3639,"stroke":3639,"className":9503,"style":3697},"M-10.138-21.268Q-9.947-20.994-9.591-20.867Q-9.236-20.740-8.853-20.740Q-8.517-20.740-8.308-20.926Q-8.099-21.112-8.003-21.405Q-7.908-21.698-7.908-22.010Q-7.908-22.334-8.005-22.629Q-8.103-22.924-8.316-23.108Q-8.529-23.291-8.861-23.291L-9.427-23.291Q-9.458-23.291-9.488-23.321Q-9.517-23.350-9.517-23.377L-9.517-23.459Q-9.517-23.494-9.488-23.520Q-9.458-23.545-9.427-23.545L-8.947-23.580Q-8.661-23.580-8.464-23.785Q-8.267-23.990-8.171-24.285Q-8.076-24.580-8.076-24.858Q-8.076-25.237-8.275-25.475Q-8.474-25.713-8.853-25.713Q-9.173-25.713-9.462-25.606Q-9.751-25.498-9.915-25.276Q-9.736-25.276-9.613-25.149Q-9.490-25.022-9.490-24.850Q-9.490-24.678-9.615-24.553Q-9.740-24.428-9.915-24.428Q-10.087-24.428-10.212-24.553Q-10.337-24.678-10.337-24.850Q-10.337-25.217-10.113-25.465Q-9.888-25.713-9.548-25.834Q-9.208-25.955-8.853-25.955Q-8.505-25.955-8.142-25.834Q-7.779-25.713-7.531-25.463Q-7.283-25.213-7.283-24.858Q-7.283-24.373-7.601-23.990Q-7.919-23.608-8.396-23.436Q-7.845-23.326-7.445-22.940Q-7.044-22.553-7.044-22.018Q-7.044-21.561-7.308-21.205Q-7.572-20.850-7.993-20.658Q-8.415-20.467-8.853-20.467Q-9.263-20.467-9.656-20.602Q-10.048-20.737-10.314-21.022Q-10.579-21.307-10.579-21.725Q-10.579-21.920-10.447-22.049Q-10.314-22.178-10.122-22.178Q-9.997-22.178-9.894-22.119Q-9.790-22.061-9.728-21.955Q-9.665-21.850-9.665-21.725Q-9.665-21.530-9.800-21.399Q-9.935-21.268-10.138-21.268",[3503],[3489,9505],{"fill":3638,"stroke":3491,"d":9506},"M42.937 36.27V13.509H65.7v22.763ZM65.7 13.509",[3489,9508],{"fill":3491,"d":9509},"M-25.35-9.254h22.763v-22.762H-25.35Z",[2039,9511,9513],{"transform":9512},"translate(20.45 2.9)",[3489,9514],{"d":9387,"fill":3486,"stroke":3486,"className":9515,"style":3504},[3503],[3489,9517],{"fill":3491,"d":9518},"M-2.587-9.254h22.762v-22.762H-2.587Z",[2039,9520,9522],{"transform":9521},"translate(43.212 2.9)",[3489,9523],{"d":9524,"fill":3486,"stroke":3486,"className":9525,"style":3504},"M-34.418-20.437Q-35.152-20.437-35.583-20.918Q-36.014-21.400-36.178-22.092Q-36.343-22.784-36.343-23.531Q-36.343-24.260-36.051-24.983Q-35.759-25.706-35.205-26.168Q-34.651-26.629-33.904-26.629Q-33.408-26.629-33.072-26.363Q-32.735-26.097-32.735-25.614Q-32.735-25.434-32.863-25.306Q-32.990-25.179-33.166-25.179Q-33.346-25.179-33.476-25.304Q-33.605-25.429-33.605-25.614Q-33.605-25.728-33.548-25.832Q-33.491-25.935-33.390-25.994Q-33.289-26.053-33.166-26.053Q-33.162-26.053-33.157-26.051Q-33.153-26.049-33.148-26.045Q-33.263-26.212-33.471-26.291Q-33.680-26.370-33.904-26.370Q-34.348-26.370-34.706-26.069Q-35.064-25.768-35.253-25.315Q-35.486-24.709-35.486-23.676Q-35.315-24.041-35.014-24.269Q-34.713-24.498-34.326-24.498Q-33.922-24.498-33.577-24.331Q-33.232-24.164-32.995-23.883Q-32.757-23.601-32.628-23.239Q-32.498-22.876-32.498-22.472Q-32.498-21.927-32.742-21.461Q-32.986-20.995-33.425-20.716Q-33.865-20.437-34.418-20.437M-34.418-20.723Q-33.957-20.723-33.722-20.980Q-33.487-21.237-33.421-21.611Q-33.355-21.984-33.355-22.454L-33.355-22.489Q-33.355-22.977-33.412-23.342Q-33.469-23.707-33.698-23.970Q-33.926-24.234-34.370-24.234Q-34.739-24.234-34.990-23.990Q-35.240-23.746-35.355-23.382Q-35.469-23.017-35.469-22.670Q-35.469-22.551-35.460-22.489Q-35.460-22.472-35.462-22.461Q-35.464-22.450-35.469-22.437Q-35.469-21.786-35.231-21.255Q-34.994-20.723-34.418-20.723",[3503],[3489,9527],{"fill":3491,"d":9528},"M20.175-9.254h22.762v-22.762H20.175Z",[2039,9530,9532],{"transform":9531},"translate(63.662 2.9)",[3489,9533],{"d":9534,"fill":3486,"stroke":3486,"className":9535,"style":3504},"M-32.823-20.635L-35.855-20.635L-35.855-20.951Q-34.704-20.951-34.704-21.246L-34.704-25.970Q-35.192-25.737-35.913-25.737L-35.913-26.053Q-34.783-26.053-34.221-26.629L-34.076-26.629Q-34.041-26.629-34.008-26.596Q-33.975-26.563-33.975-26.528L-33.975-21.246Q-33.975-20.951-32.823-20.951L-32.823-20.635M-28.205-20.635L-31.654-20.635L-31.654-20.868Q-31.654-20.881-31.624-20.912L-30.169-22.489Q-29.703-22.986-29.450-23.291Q-29.198-23.597-29.007-24.008Q-28.815-24.419-28.815-24.858Q-28.815-25.447-29.138-25.880Q-29.461-26.313-30.042-26.313Q-30.305-26.313-30.551-26.203Q-30.797-26.093-30.973-25.906Q-31.149-25.719-31.246-25.469L-31.167-25.469Q-30.964-25.469-30.822-25.333Q-30.679-25.197-30.679-24.981Q-30.679-24.775-30.822-24.636Q-30.964-24.498-31.167-24.498Q-31.369-24.498-31.511-24.641Q-31.654-24.783-31.654-24.981Q-31.654-25.443-31.417-25.816Q-31.180-26.190-30.780-26.409Q-30.380-26.629-29.932-26.629Q-29.409-26.629-28.954-26.414Q-28.499-26.198-28.227-25.799Q-27.954-25.399-27.954-24.858Q-27.954-24.463-28.126-24.109Q-28.297-23.755-28.563-23.476Q-28.829-23.197-29.279-22.812Q-29.730-22.428-29.809-22.353L-30.833-21.391L-30.015-21.391Q-29.365-21.391-28.928-21.402Q-28.490-21.413-28.459-21.435Q-28.389-21.518-28.334-21.758Q-28.279-21.997-28.240-22.265L-27.954-22.265",[3503],[3489,9537],{"fill":3491,"d":9538},"M42.937-9.254H65.7v-22.762H42.937Z",[2039,9540,9542],{"transform":9541},"translate(88.736 2.9)",[3489,9543],{"d":9414,"fill":3486,"stroke":3486,"className":9544,"style":3504},[3503],[3489,9546],{"fill":3491,"d":9547},"M65.7-9.254h22.762v-22.762H65.699Z",[2039,9549,9551],{"transform":9550},"translate(111.498 2.9)",[3489,9552],{"d":9553,"fill":3486,"stroke":3486,"className":9554,"style":3504},"M-35.667-21.022Q-35.420-20.723-34.814-20.723Q-34.533-20.723-34.293-20.861Q-34.054-21-33.876-21.222Q-33.698-21.444-33.588-21.707Q-33.355-22.283-33.355-23.399Q-33.522-23.034-33.827-22.810Q-34.133-22.586-34.515-22.586Q-35.051-22.586-35.467-22.865Q-35.882-23.144-36.113-23.610Q-36.343-24.076-36.343-24.603Q-36.343-25.016-36.196-25.385Q-36.049-25.755-35.785-26.031Q-35.522-26.308-35.152-26.469Q-34.783-26.629-34.370-26.629Q-33.812-26.629-33.438-26.337Q-33.065-26.045-32.861-25.581Q-32.656-25.117-32.577-24.601Q-32.498-24.085-32.498-23.553Q-32.498-22.837-32.766-22.114Q-33.034-21.391-33.557-20.914Q-34.080-20.437-34.805-20.437Q-35.355-20.437-35.732-20.686Q-36.110-20.934-36.110-21.452Q-36.110-21.571-36.053-21.674Q-35.996-21.778-35.895-21.837Q-35.794-21.896-35.667-21.896Q-35.482-21.896-35.359-21.764Q-35.236-21.633-35.236-21.452Q-35.236-21.277-35.363-21.149Q-35.491-21.022-35.667-21.022M-34.471-22.850Q-34.102-22.850-33.854-23.092Q-33.605-23.333-33.489-23.691Q-33.373-24.050-33.373-24.423Q-33.373-24.533-33.381-24.586Q-33.377-24.599-33.375-24.610Q-33.373-24.621-33.373-24.638Q-33.373-25.293-33.588-25.832Q-33.803-26.370-34.370-26.370Q-34.730-26.370-34.959-26.220Q-35.188-26.071-35.304-25.814Q-35.420-25.557-35.453-25.276Q-35.486-24.994-35.486-24.621L-35.486-24.586Q-35.486-24.260-35.460-23.973Q-35.434-23.685-35.335-23.426Q-35.236-23.166-35.025-23.008Q-34.814-22.850-34.471-22.850",[3503],[3489,9556],{"fill":3491,"d":9557},"M-25.35 13.508h22.763V-9.254H-25.35Z",[2039,9559,9561],{"transform":9560},"translate(18.137 25.662)",[3489,9562],{"d":9563,"fill":3486,"stroke":3486,"className":9564,"style":3504},"M-32.823-20.635L-35.855-20.635L-35.855-20.951Q-34.704-20.951-34.704-21.246L-34.704-25.970Q-35.192-25.737-35.913-25.737L-35.913-26.053Q-34.783-26.053-34.221-26.629L-34.076-26.629Q-34.041-26.629-34.008-26.596Q-33.975-26.563-33.975-26.528L-33.975-21.246Q-33.975-20.951-32.823-20.951L-32.823-20.635M-29.800-20.437Q-30.925-20.437-31.338-21.334Q-31.751-22.230-31.751-23.505Q-31.751-24.278-31.602-24.977Q-31.452-25.676-31.017-26.152Q-30.582-26.629-29.800-26.629Q-29.022-26.629-28.587-26.150Q-28.152-25.671-28.002-24.975Q-27.853-24.278-27.853-23.505Q-27.853-22.226-28.266-21.332Q-28.679-20.437-29.800-20.437M-29.800-20.697Q-29.281-20.697-29.031-21.208Q-28.780-21.720-28.723-22.331Q-28.666-22.942-28.666-23.650Q-28.666-24.335-28.723-24.895Q-28.780-25.456-29.033-25.913Q-29.286-26.370-29.800-26.370Q-30.204-26.370-30.441-26.093Q-30.679-25.816-30.786-25.375Q-30.894-24.933-30.918-24.540Q-30.942-24.146-30.942-23.650Q-30.942-23.144-30.918-22.716Q-30.894-22.287-30.786-21.804Q-30.679-21.321-30.439-21.009Q-30.200-20.697-29.800-20.697",[3503],[3489,9566],{"fill":3491,"d":9567},"M-2.587 13.508h22.762V-9.254H-2.587Z",[2039,9569,9571],{"transform":9570},"translate(43.212 25.662)",[3489,9572],{"d":9396,"fill":3486,"stroke":3486,"className":9573,"style":3504},[3503],[3489,9575],{"fill":3491,"d":9576},"M20.175 13.508h22.762V-9.254H20.175Z",[2039,9578,9580],{"transform":9579},"translate(65.974 25.662)",[3489,9581],{"d":9582,"fill":3486,"stroke":3486,"className":9583,"style":3504},"M-35.108-20.877Q-35.108-21.514-34.952-22.160Q-34.796-22.806-34.504-23.412Q-34.212-24.019-33.803-24.568L-32.986-25.676L-34.014-25.676Q-35.658-25.676-35.706-25.632Q-35.812-25.504-35.930-24.801L-36.216-24.801L-35.921-26.717L-35.631-26.717L-35.631-26.691Q-35.631-26.528-35.067-26.480Q-34.502-26.431-33.957-26.431L-32.239-26.431L-32.239-26.225Q-32.239-26.207-32.241-26.198Q-32.243-26.190-32.248-26.181L-33.535-24.432Q-33.786-24.080-33.933-23.654Q-34.080-23.228-34.146-22.764Q-34.212-22.301-34.225-21.890Q-34.238-21.479-34.238-20.877Q-34.238-20.697-34.364-20.567Q-34.489-20.437-34.669-20.437Q-34.788-20.437-34.891-20.494Q-34.994-20.552-35.051-20.655Q-35.108-20.758-35.108-20.877",[3503],[3489,9585],{"fill":3491,"d":9586},"M42.937 13.508H65.7V-9.254H42.937Z",[2039,9588,9590],{"transform":9589},"translate(86.424 25.662)",[3489,9591],{"d":9592,"fill":3486,"stroke":3486,"className":9593,"style":3504},"M-32.823-20.635L-35.855-20.635L-35.855-20.951Q-34.704-20.951-34.704-21.246L-34.704-25.970Q-35.192-25.737-35.913-25.737L-35.913-26.053Q-34.783-26.053-34.221-26.629L-34.076-26.629Q-34.041-26.629-34.008-26.596Q-33.975-26.563-33.975-26.528L-33.975-21.246Q-33.975-20.951-32.823-20.951L-32.823-20.635M-31.210-21.356L-31.254-21.356Q-31.052-21.039-30.666-20.881Q-30.279-20.723-29.853-20.723Q-29.316-20.723-29.077-21.158Q-28.837-21.593-28.837-22.173Q-28.837-22.753-29.084-23.193Q-29.330-23.632-29.861-23.632L-30.481-23.632Q-30.507-23.632-30.540-23.661Q-30.573-23.689-30.573-23.711L-30.573-23.812Q-30.573-23.843-30.545-23.867Q-30.516-23.891-30.481-23.891L-29.962-23.931Q-29.497-23.931-29.251-24.403Q-29.004-24.876-29.004-25.394Q-29.004-25.821-29.218-26.095Q-29.431-26.370-29.853-26.370Q-30.195-26.370-30.521-26.240Q-30.846-26.111-31.030-25.856L-31.004-25.856Q-30.802-25.856-30.666-25.715Q-30.529-25.574-30.529-25.377Q-30.529-25.179-30.663-25.045Q-30.797-24.911-30.995-24.911Q-31.197-24.911-31.336-25.045Q-31.474-25.179-31.474-25.377Q-31.474-25.966-30.971-26.297Q-30.468-26.629-29.853-26.629Q-29.475-26.629-29.073-26.489Q-28.670-26.348-28.402-26.069Q-28.134-25.790-28.134-25.394Q-28.134-24.845-28.488-24.408Q-28.842-23.970-29.382-23.786Q-28.991-23.707-28.646-23.483Q-28.301-23.259-28.090-22.918Q-27.879-22.577-27.879-22.182Q-27.879-21.800-28.042-21.477Q-28.205-21.154-28.497-20.918Q-28.789-20.683-29.136-20.560Q-29.483-20.437-29.853-20.437Q-30.301-20.437-30.731-20.598Q-31.162-20.758-31.443-21.085Q-31.725-21.413-31.725-21.870Q-31.725-22.085-31.577-22.228Q-31.430-22.371-31.210-22.371Q-31-22.371-30.855-22.226Q-30.709-22.081-30.709-21.870Q-30.709-21.659-30.857-21.507Q-31.004-21.356-31.210-21.356",[3503],[3489,9595],{"fill":3491,"d":9596},"M65.7 13.508h22.762V-9.254H65.699Z",[2039,9598,9600],{"transform":9599},"translate(111.498 25.662)",[3489,9601],{"d":9423,"fill":3486,"stroke":3486,"className":9602,"style":3504},[3503],[3489,9604],{"fill":3491,"d":9605},"M-25.35 36.27h22.763V13.509H-25.35Z",[2039,9607,9609],{"transform":9608},"translate(20.45 48.424)",[3489,9610],{"d":9611,"fill":3486,"stroke":3486,"className":9612,"style":3504},"M-35.904-21.641Q-35.763-21.228-35.403-20.976Q-35.042-20.723-34.607-20.723Q-34.155-20.723-33.889-20.976Q-33.623-21.228-33.520-21.613Q-33.417-21.997-33.417-22.454Q-33.417-24.155-34.326-24.155Q-34.647-24.155-34.876-24.061Q-35.104-23.966-35.234-23.847Q-35.363-23.729-35.475-23.590Q-35.587-23.452-35.623-23.443L-35.706-23.443Q-35.750-23.443-35.781-23.474Q-35.812-23.505-35.812-23.553L-35.812-26.550Q-35.812-26.581-35.776-26.605Q-35.741-26.629-35.715-26.629L-35.675-26.629Q-35.042-26.339-34.370-26.339Q-33.698-26.339-33.056-26.629L-33.030-26.629Q-32.999-26.629-32.966-26.607Q-32.933-26.585-32.933-26.550L-32.933-26.449Q-32.933-26.445-32.942-26.427Q-32.951-26.409-32.951-26.405Q-33.267-26.010-33.737-25.788Q-34.208-25.566-34.704-25.566Q-35.113-25.566-35.495-25.676L-35.495-23.957Q-35.038-24.414-34.326-24.414Q-33.816-24.414-33.417-24.133Q-33.017-23.852-32.795-23.397Q-32.573-22.942-32.573-22.437Q-32.573-21.887-32.852-21.428Q-33.131-20.969-33.597-20.703Q-34.063-20.437-34.607-20.437Q-35.047-20.437-35.431-20.664Q-35.816-20.890-36.044-21.270Q-36.273-21.650-36.273-22.094Q-36.273-22.287-36.141-22.419Q-36.009-22.551-35.812-22.551Q-35.680-22.551-35.576-22.492Q-35.473-22.432-35.414-22.329Q-35.355-22.226-35.355-22.094Q-35.355-21.896-35.482-21.764Q-35.609-21.633-35.812-21.633Q-35.873-21.633-35.904-21.641",[3503],[3489,9614],{"fill":3491,"d":9615},"M-2.587 36.27h22.762V13.509H-2.587Z",[2039,9617,9619],{"transform":9618},"translate(40.9 48.424)",[3489,9620],{"d":9621,"fill":3486,"stroke":3486,"className":9622,"style":3504},"M-32.823-20.635L-35.855-20.635L-35.855-20.951Q-34.704-20.951-34.704-21.246L-34.704-25.970Q-35.192-25.737-35.913-25.737L-35.913-26.053Q-34.783-26.053-34.221-26.629L-34.076-26.629Q-34.041-26.629-34.008-26.596Q-33.975-26.563-33.975-26.528L-33.975-21.246Q-33.975-20.951-32.823-20.951L-32.823-20.635M-28.205-20.635L-31.237-20.635L-31.237-20.951Q-30.085-20.951-30.085-21.246L-30.085-25.970Q-30.573-25.737-31.294-25.737L-31.294-26.053Q-30.165-26.053-29.602-26.629L-29.457-26.629Q-29.422-26.629-29.389-26.596Q-29.356-26.563-29.356-26.528L-29.356-21.246Q-29.356-20.951-28.205-20.951",[3503],[3489,9624],{"fill":3491,"d":9625},"M20.175 36.27h22.762V13.509H20.175Z",[2039,9627,9629],{"transform":9628},"translate(65.974 48.424)",[3489,9630],{"d":9405,"fill":3486,"stroke":3486,"className":9631,"style":3504},[3503],[3489,9633],{"fill":3491,"d":9634},"M42.937 36.27H65.7V13.509H42.937Z",[2039,9636,9638],{"transform":9637},"translate(88.736 48.424)",[3489,9639],{"d":9640,"fill":3486,"stroke":3486,"className":9641,"style":3504},"M-36.343-22.002Q-36.343-22.560-35.983-22.973Q-35.623-23.386-35.047-23.658L-35.416-23.891Q-35.719-24.093-35.906-24.423Q-36.093-24.753-36.093-25.109Q-36.093-25.763-35.587-26.196Q-35.082-26.629-34.418-26.629Q-34.019-26.629-33.634-26.469Q-33.250-26.308-33.001-26.003Q-32.753-25.698-32.753-25.280Q-32.753-24.449-33.821-23.891L-33.267-23.544Q-32.920-23.316-32.709-22.947Q-32.498-22.577-32.498-22.164Q-32.498-21.786-32.656-21.468Q-32.814-21.149-33.091-20.916Q-33.368-20.683-33.711-20.560Q-34.054-20.437-34.418-20.437Q-34.884-20.437-35.330-20.624Q-35.776-20.811-36.060-21.165Q-36.343-21.518-36.343-22.002M-35.820-22.002Q-35.820-21.457-35.401-21.090Q-34.981-20.723-34.418-20.723Q-34.089-20.723-33.764-20.855Q-33.438-20.987-33.230-21.241Q-33.021-21.496-33.021-21.839Q-33.021-22.103-33.157-22.327Q-33.293-22.551-33.526-22.705L-34.770-23.487Q-35.231-23.250-35.526-22.863Q-35.820-22.476-35.820-22.002M-35.209-24.757L-34.093-24.054Q-33.869-24.177-33.665-24.366Q-33.460-24.555-33.340-24.788Q-33.219-25.021-33.219-25.280Q-33.219-25.588-33.390-25.838Q-33.562-26.089-33.838-26.229Q-34.115-26.370-34.427-26.370Q-34.876-26.370-35.249-26.124Q-35.623-25.878-35.623-25.451Q-35.623-25.047-35.209-24.757",[3503],[3489,9643],{"fill":3491,"d":9644},"M65.7 36.27h22.762V13.509H65.699Z",[2039,9646,9648],{"transform":9647},"translate(109.186 48.424)",[3489,9649],{"d":9650,"fill":3486,"stroke":3486,"className":9651,"style":3504},"M-32.823-20.635L-35.855-20.635L-35.855-20.951Q-34.704-20.951-34.704-21.246L-34.704-25.970Q-35.192-25.737-35.913-25.737L-35.913-26.053Q-34.783-26.053-34.221-26.629L-34.076-26.629Q-34.041-26.629-34.008-26.596Q-33.975-26.563-33.975-26.528L-33.975-21.246Q-33.975-20.951-32.823-20.951L-32.823-20.635M-29.413-22.112L-31.852-22.112L-31.852-22.428L-29.026-26.576Q-28.982-26.629-28.917-26.629L-28.763-26.629Q-28.723-26.629-28.690-26.596Q-28.657-26.563-28.657-26.519L-28.657-22.428L-27.756-22.428L-27.756-22.112L-28.657-22.112L-28.657-21.246Q-28.657-20.951-27.756-20.951L-27.756-20.635L-30.310-20.635L-30.310-20.951Q-29.949-20.951-29.681-21.006Q-29.413-21.061-29.413-21.246L-29.413-22.112M-29.356-25.601L-31.518-22.428L-29.356-22.428",[3503],[2039,9653,9654],{"stroke":3639,"style":3640},[3489,9655],{"fill":3491,"d":9634},[2039,9657,9658],{"fill":3639,"stroke":3639},[2039,9659,9660,9667,9673,9679,9685,9691,9697,9703,9709],{"fill":3639,"stroke":3491,"fontSize":3689},[2039,9661,9663],{"transform":9662},"translate(28.62 79.391)",[3489,9664],{"d":9665,"fill":3639,"stroke":3639,"className":9666,"style":3697},"M-36.378-21.858Q-36.378-22.354-36.052-22.719Q-35.726-23.084-35.203-23.330L-35.472-23.490Q-35.769-23.674-35.953-23.969Q-36.136-24.264-36.136-24.604Q-36.136-24.998-35.917-25.309Q-35.699-25.619-35.345-25.787Q-34.992-25.955-34.609-25.955Q-34.335-25.955-34.062-25.877Q-33.789-25.799-33.572-25.651Q-33.355-25.502-33.218-25.276Q-33.082-25.049-33.082-24.756Q-33.082-24.350-33.351-24.043Q-33.621-23.737-34.042-23.522L-33.593-23.252Q-33.375-23.115-33.207-22.922Q-33.039-22.729-32.941-22.490Q-32.843-22.252-32.843-21.994Q-32.843-21.655-32.994-21.367Q-33.144-21.080-33.390-20.883Q-33.636-20.686-33.960-20.576Q-34.285-20.467-34.609-20.467Q-35.039-20.467-35.445-20.629Q-35.851-20.791-36.115-21.110Q-36.378-21.428-36.378-21.858M-35.890-21.858Q-35.890-21.373-35.500-21.057Q-35.109-20.740-34.609-20.740Q-34.316-20.740-34.017-20.852Q-33.718-20.963-33.525-21.182Q-33.332-21.401-33.332-21.713Q-33.332-21.944-33.472-22.155Q-33.613-22.365-33.820-22.483L-34.929-23.162Q-35.347-22.959-35.619-22.623Q-35.890-22.287-35.890-21.858M-35.304-24.291L-34.316-23.690Q-33.968-23.873-33.742-24.143Q-33.515-24.412-33.515-24.756Q-33.515-24.975-33.607-25.151Q-33.699-25.326-33.853-25.449Q-34.007-25.573-34.209-25.643Q-34.410-25.713-34.609-25.713Q-35.015-25.713-35.361-25.502Q-35.707-25.291-35.707-24.908Q-35.707-24.725-35.595-24.563Q-35.484-24.401-35.304-24.291",[3503],[2039,9668,9669],{"transform":9662},[3489,9670],{"d":9671,"fill":3639,"stroke":3639,"className":9672,"style":3697},"M-24.158-20.764L-29.471-20.764Q-29.549-20.776-29.598-20.824Q-29.646-20.873-29.646-20.948Q-29.646-21.022-29.598-21.071Q-29.549-21.119-29.471-21.131L-24.158-21.131Q-23.990-21.100-23.990-20.948Q-23.990-20.795-24.158-20.764M-24.158-22.451L-29.471-22.451Q-29.549-22.463-29.598-22.512Q-29.646-22.561-29.646-22.635Q-29.646-22.709-29.598-22.758Q-29.549-22.807-29.471-22.819L-24.158-22.819Q-23.990-22.787-23.990-22.635Q-23.990-22.483-24.158-22.451M-24.158-24.139L-29.471-24.139Q-29.549-24.151-29.598-24.199Q-29.646-24.248-29.646-24.323Q-29.646-24.397-29.598-24.446Q-29.549-24.494-29.471-24.506L-24.158-24.506Q-23.990-24.475-23.990-24.323Q-23.990-24.170-24.158-24.139",[3503],[2039,9674,9675],{"transform":9662},[3489,9676],{"d":9677,"fill":3639,"stroke":3639,"className":9678,"style":3697},"M-17.561-20.635L-20.721-20.635L-20.721-20.842Q-20.721-20.869-20.698-20.901L-19.346-22.299Q-18.967-22.686-18.719-22.975Q-18.471-23.264-18.297-23.621Q-18.124-23.979-18.124-24.369Q-18.124-24.717-18.256-25.010Q-18.389-25.303-18.643-25.481Q-18.897-25.658-19.252-25.658Q-19.612-25.658-19.903-25.463Q-20.194-25.268-20.338-24.940L-20.284-24.940Q-20.100-24.940-19.975-24.819Q-19.850-24.698-19.850-24.506Q-19.850-24.326-19.975-24.198Q-20.100-24.069-20.284-24.069Q-20.463-24.069-20.592-24.198Q-20.721-24.326-20.721-24.506Q-20.721-24.908-20.501-25.244Q-20.280-25.580-19.915-25.768Q-19.549-25.955-19.147-25.955Q-18.667-25.955-18.251-25.768Q-17.834-25.580-17.583-25.219Q-17.331-24.858-17.331-24.369Q-17.331-24.010-17.485-23.707Q-17.639-23.405-17.891-23.145Q-18.143-22.885-18.493-22.600Q-18.842-22.315-19.010-22.162L-19.940-21.323L-19.225-21.323Q-17.850-21.323-17.811-21.362Q-17.741-21.440-17.698-21.625Q-17.655-21.811-17.612-22.100L-17.331-22.100",[3503],[2039,9680,9681],{"transform":9662},[3489,9682],{"d":9683,"fill":3639,"stroke":3639,"className":9684,"style":3697},"M-11.446-18.643Q-12.059-19.100-12.461-19.735Q-12.864-20.369-13.059-21.115Q-13.254-21.862-13.254-22.635Q-13.254-23.408-13.059-24.155Q-12.864-24.901-12.461-25.535Q-12.059-26.170-11.446-26.627Q-11.434-26.631-11.426-26.633Q-11.418-26.635-11.407-26.635L-11.329-26.635Q-11.290-26.635-11.264-26.608Q-11.239-26.580-11.239-26.537Q-11.239-26.487-11.270-26.467Q-11.778-26.014-12.100-25.391Q-12.422-24.768-12.563-24.073Q-12.704-23.377-12.704-22.635Q-12.704-21.901-12.565-21.201Q-12.426-20.502-12.102-19.877Q-11.778-19.252-11.270-18.803Q-11.239-18.783-11.239-18.733Q-11.239-18.690-11.264-18.662Q-11.290-18.635-11.329-18.635L-11.407-18.635Q-11.415-18.639-11.424-18.641Q-11.434-18.643-11.446-18.643M-9.965-21.268Q-9.774-20.994-9.418-20.867Q-9.063-20.740-8.680-20.740Q-8.344-20.740-8.135-20.926Q-7.926-21.112-7.831-21.405Q-7.735-21.698-7.735-22.010Q-7.735-22.334-7.833-22.629Q-7.930-22.924-8.143-23.108Q-8.356-23.291-8.688-23.291L-9.254-23.291Q-9.286-23.291-9.315-23.321Q-9.344-23.350-9.344-23.377L-9.344-23.459Q-9.344-23.494-9.315-23.520Q-9.286-23.545-9.254-23.545L-8.774-23.580Q-8.489-23.580-8.292-23.785Q-8.094-23.990-7.999-24.285Q-7.903-24.580-7.903-24.858Q-7.903-25.237-8.102-25.475Q-8.301-25.713-8.680-25.713Q-9.001-25.713-9.290-25.606Q-9.579-25.498-9.743-25.276Q-9.563-25.276-9.440-25.149Q-9.317-25.022-9.317-24.850Q-9.317-24.678-9.442-24.553Q-9.567-24.428-9.743-24.428Q-9.915-24.428-10.040-24.553Q-10.165-24.678-10.165-24.850Q-10.165-25.217-9.940-25.465Q-9.715-25.713-9.376-25.834Q-9.036-25.955-8.680-25.955Q-8.333-25.955-7.969-25.834Q-7.606-25.713-7.358-25.463Q-7.110-25.213-7.110-24.858Q-7.110-24.373-7.428-23.990Q-7.747-23.608-8.223-23.436Q-7.672-23.326-7.272-22.940Q-6.872-22.553-6.872-22.018Q-6.872-21.561-7.135-21.205Q-7.399-20.850-7.821-20.658Q-8.243-20.467-8.680-20.467Q-9.090-20.467-9.483-20.602Q-9.876-20.737-10.141-21.022Q-10.407-21.307-10.407-21.725Q-10.407-21.920-10.274-22.049Q-10.141-22.178-9.950-22.178Q-9.825-22.178-9.721-22.119Q-9.618-22.061-9.555-21.955Q-9.493-21.850-9.493-21.725Q-9.493-21.530-9.627-21.399Q-9.762-21.268-9.965-21.268M-5.872-18.635L-5.954-18.635Q-5.989-18.635-6.014-18.664Q-6.040-18.694-6.040-18.733Q-6.040-18.783-6.008-18.803Q-5.622-19.139-5.338-19.588Q-5.055-20.037-4.889-20.537Q-4.723-21.037-4.649-21.555Q-4.575-22.073-4.575-22.635Q-4.575-23.205-4.649-23.721Q-4.723-24.237-4.889-24.733Q-5.055-25.229-5.334-25.676Q-5.614-26.123-6.008-26.467Q-6.040-26.487-6.040-26.537Q-6.040-26.576-6.014-26.606Q-5.989-26.635-5.954-26.635L-5.872-26.635Q-5.860-26.635-5.850-26.633Q-5.840-26.631-5.833-26.627Q-5.219-26.170-4.817-25.535Q-4.415-24.901-4.219-24.155Q-4.024-23.408-4.024-22.635Q-4.024-21.862-4.219-21.115Q-4.415-20.369-4.817-19.735Q-5.219-19.100-5.833-18.643Q-5.844-18.643-5.852-18.641Q-5.860-18.639-5.872-18.635",[3503],[2039,9686,9687],{"transform":9662},[3489,9688],{"d":9689,"fill":3639,"stroke":3639,"className":9690,"style":3697},"M-2.378-19.229Q-2.378-19.252-2.347-19.299Q-2.054-19.561-1.888-19.928Q-1.722-20.295-1.722-20.682L-1.722-20.740Q-1.850-20.635-2.018-20.635Q-2.210-20.635-2.347-20.768Q-2.483-20.901-2.483-21.100Q-2.483-21.291-2.347-21.424Q-2.210-21.557-2.018-21.557Q-1.718-21.557-1.593-21.287Q-1.468-21.018-1.468-20.682Q-1.468-20.233-1.649-19.819Q-1.831-19.405-2.171-19.108Q-2.194-19.084-2.233-19.084Q-2.280-19.084-2.329-19.129Q-2.378-19.174-2.378-19.229",[3503],[2039,9692,9693],{"transform":9662},[3489,9694],{"d":9695,"fill":3639,"stroke":3639,"className":9696,"style":3697},"M9.428-21.858Q9.428-22.354 9.754-22.719Q10.080-23.084 10.603-23.330L10.334-23.490Q10.037-23.674 9.853-23.969Q9.670-24.264 9.670-24.604Q9.670-24.998 9.889-25.309Q10.107-25.619 10.461-25.787Q10.814-25.955 11.197-25.955Q11.471-25.955 11.744-25.877Q12.017-25.799 12.234-25.651Q12.451-25.502 12.588-25.276Q12.724-25.049 12.724-24.756Q12.724-24.350 12.455-24.043Q12.185-23.737 11.764-23.522L12.213-23.252Q12.431-23.115 12.599-22.922Q12.767-22.729 12.865-22.490Q12.963-22.252 12.963-21.994Q12.963-21.655 12.812-21.367Q12.662-21.080 12.416-20.883Q12.170-20.686 11.846-20.576Q11.521-20.467 11.197-20.467Q10.767-20.467 10.361-20.629Q9.955-20.791 9.691-21.110Q9.428-21.428 9.428-21.858M9.916-21.858Q9.916-21.373 10.306-21.057Q10.697-20.740 11.197-20.740Q11.490-20.740 11.789-20.852Q12.088-20.963 12.281-21.182Q12.474-21.401 12.474-21.713Q12.474-21.944 12.334-22.155Q12.193-22.365 11.986-22.483L10.877-23.162Q10.459-22.959 10.187-22.623Q9.916-22.287 9.916-21.858M10.502-24.291L11.490-23.690Q11.838-23.873 12.064-24.143Q12.291-24.412 12.291-24.756Q12.291-24.975 12.199-25.151Q12.107-25.326 11.953-25.449Q11.799-25.573 11.597-25.643Q11.396-25.713 11.197-25.713Q10.791-25.713 10.445-25.502Q10.099-25.291 10.099-24.908Q10.099-24.725 10.211-24.563Q10.322-24.401 10.502-24.291",[3503],[2039,9698,9699],{"transform":9662},[3489,9700],{"d":9701,"fill":3639,"stroke":3639,"className":9702,"style":3697},"M21.648-20.764L16.335-20.764Q16.257-20.776 16.208-20.824Q16.160-20.873 16.160-20.948Q16.160-21.022 16.208-21.071Q16.257-21.119 16.335-21.131L21.648-21.131Q21.816-21.100 21.816-20.948Q21.816-20.795 21.648-20.764M21.648-22.451L16.335-22.451Q16.257-22.463 16.208-22.512Q16.160-22.561 16.160-22.635Q16.160-22.709 16.208-22.758Q16.257-22.807 16.335-22.819L21.648-22.819Q21.816-22.787 21.816-22.635Q21.816-22.483 21.648-22.451M21.648-24.139L16.335-24.139Q16.257-24.151 16.208-24.199Q16.160-24.248 16.160-24.323Q16.160-24.397 16.208-24.446Q16.257-24.494 16.335-24.506L21.648-24.506Q21.816-24.475 21.816-24.323Q21.816-24.170 21.648-24.139",[3503],[2039,9704,9705],{"transform":9662},[3489,9706],{"d":9707,"fill":3639,"stroke":3639,"className":9708,"style":3697},"M25.452-21.268Q25.643-20.994 25.999-20.867Q26.354-20.740 26.737-20.740Q27.073-20.740 27.282-20.926Q27.491-21.112 27.587-21.405Q27.682-21.698 27.682-22.010Q27.682-22.334 27.585-22.629Q27.487-22.924 27.274-23.108Q27.061-23.291 26.729-23.291L26.163-23.291Q26.132-23.291 26.102-23.321Q26.073-23.350 26.073-23.377L26.073-23.459Q26.073-23.494 26.102-23.520Q26.132-23.545 26.163-23.545L26.643-23.580Q26.929-23.580 27.126-23.785Q27.323-23.990 27.419-24.285Q27.514-24.580 27.514-24.858Q27.514-25.237 27.315-25.475Q27.116-25.713 26.737-25.713Q26.417-25.713 26.128-25.606Q25.839-25.498 25.675-25.276Q25.854-25.276 25.977-25.149Q26.100-25.022 26.100-24.850Q26.100-24.678 25.975-24.553Q25.850-24.428 25.675-24.428Q25.503-24.428 25.378-24.553Q25.253-24.678 25.253-24.850Q25.253-25.217 25.477-25.465Q25.702-25.713 26.042-25.834Q26.382-25.955 26.737-25.955Q27.085-25.955 27.448-25.834Q27.811-25.713 28.059-25.463Q28.307-25.213 28.307-24.858Q28.307-24.373 27.989-23.990Q27.671-23.608 27.194-23.436Q27.745-23.326 28.145-22.940Q28.546-22.553 28.546-22.018Q28.546-21.561 28.282-21.205Q28.018-20.850 27.596-20.658Q27.175-20.467 26.737-20.467Q26.327-20.467 25.934-20.602Q25.542-20.737 25.276-21.022Q25.011-21.307 25.011-21.725Q25.011-21.920 25.143-22.049Q25.276-22.178 25.468-22.178Q25.593-22.178 25.696-22.119Q25.800-22.061 25.862-21.955Q25.925-21.850 25.925-21.725Q25.925-21.530 25.790-21.399Q25.655-21.268 25.452-21.268",[3503],[2039,9710,9711],{"transform":9662},[3489,9712],{"d":9713,"fill":3639,"stroke":3639,"className":9714,"style":3697},"M34.360-18.643Q33.747-19.100 33.345-19.735Q32.942-20.369 32.747-21.115Q32.552-21.862 32.552-22.635Q32.552-23.408 32.747-24.155Q32.942-24.901 33.345-25.535Q33.747-26.170 34.360-26.627Q34.372-26.631 34.380-26.633Q34.388-26.635 34.399-26.635L34.477-26.635Q34.516-26.635 34.542-26.608Q34.567-26.580 34.567-26.537Q34.567-26.487 34.536-26.467Q34.028-26.014 33.706-25.391Q33.384-24.768 33.243-24.073Q33.102-23.377 33.102-22.635Q33.102-21.901 33.241-21.201Q33.380-20.502 33.704-19.877Q34.028-19.252 34.536-18.803Q34.567-18.783 34.567-18.733Q34.567-18.690 34.542-18.662Q34.516-18.635 34.477-18.635L34.399-18.635Q34.391-18.639 34.382-18.641Q34.372-18.643 34.360-18.643M35.888-21.514L35.825-21.514Q35.966-21.162 36.290-20.951Q36.614-20.740 37.001-20.740Q37.595-20.740 37.845-21.174Q38.095-21.608 38.095-22.244Q38.095-22.838 37.925-23.285Q37.755-23.733 37.255-23.733Q36.958-23.733 36.753-23.653Q36.548-23.573 36.446-23.481Q36.345-23.389 36.229-23.256Q36.114-23.123 36.063-23.108L35.993-23.108Q35.907-23.131 35.888-23.209L35.888-25.858Q35.919-25.955 35.993-25.955Q36.009-25.955 36.016-25.953Q36.024-25.951 36.032-25.948Q36.618-25.698 37.216-25.698Q37.798-25.698 38.415-25.955L38.438-25.955Q38.481-25.955 38.509-25.930Q38.536-25.905 38.536-25.865L38.536-25.787Q38.536-25.756 38.513-25.733Q38.216-25.381 37.794-25.184Q37.372-24.987 36.911-24.987Q36.563-24.987 36.184-25.092L36.184-23.596Q36.403-23.791 36.679-23.889Q36.954-23.987 37.255-23.987Q37.712-23.987 38.081-23.739Q38.450-23.490 38.657-23.086Q38.864-22.682 38.864-22.237Q38.864-21.748 38.608-21.340Q38.352-20.932 37.921-20.699Q37.489-20.467 37.001-20.467Q36.606-20.467 36.251-20.658Q35.895-20.850 35.684-21.184Q35.473-21.518 35.473-21.932Q35.473-22.112 35.591-22.225Q35.708-22.338 35.888-22.338Q36.005-22.338 36.097-22.285Q36.188-22.233 36.241-22.141Q36.294-22.049 36.294-21.932Q36.294-21.748 36.180-21.631Q36.067-21.514 35.888-21.514M39.934-18.635L39.852-18.635Q39.817-18.635 39.792-18.664Q39.766-18.694 39.766-18.733Q39.766-18.783 39.798-18.803Q40.184-19.139 40.468-19.588Q40.751-20.037 40.917-20.537Q41.083-21.037 41.157-21.555Q41.231-22.073 41.231-22.635Q41.231-23.205 41.157-23.721Q41.083-24.237 40.917-24.733Q40.751-25.229 40.472-25.676Q40.192-26.123 39.798-26.467Q39.766-26.487 39.766-26.537Q39.766-26.576 39.792-26.606Q39.817-26.635 39.852-26.635L39.934-26.635Q39.946-26.635 39.956-26.633Q39.966-26.631 39.973-26.627Q40.587-26.170 40.989-25.535Q41.391-24.901 41.587-24.155Q41.782-23.408 41.782-22.635Q41.782-21.862 41.587-21.115Q41.391-20.369 40.989-19.735Q40.587-19.100 39.973-18.643Q39.962-18.643 39.954-18.641Q39.946-18.639 39.934-18.635",[3503],[3951,9716,9718,9763,9764,9857],{"className":9717},[3954],[390,9719,9721],{"className":9720},[393],[390,9722,9724,9754],{"className":9723,"ariaHidden":398},[397],[390,9725,9727,9730,9733,9736,9739,9748,9751],{"className":9726},[402],[390,9728],{"className":9729,"style":446},[406],[390,9731,5091],{"className":9732},[411,412],[390,9734],{"className":9735,"style":1112},[561],[390,9737],{"className":9738,"style":431},[561],[390,9740,9742],{"className":9741},[1119],[390,9743,9745],{"className":9744},[411],[390,9746,1126],{"className":9747},[411,696],[390,9749],{"className":9750,"style":1112},[561],[390,9752],{"className":9753,"style":431},[561],[390,9755,9757,9760],{"className":9756},[402],[390,9758],{"className":9759,"style":836},[406],[390,9761,9228],{"className":9762},[411]," recovered from ",[390,9765,9767],{"className":9766},[393],[390,9768,9770,9803,9845],{"className":9769,"ariaHidden":398},[397],[390,9771,9773,9776,9779,9782,9785,9788,9797,9800],{"className":9772},[402],[390,9774],{"className":9775,"style":554},[406],[390,9777,702],{"className":9778},[701],[390,9780,5091],{"className":9781},[411,412],[390,9783],{"className":9784,"style":1112},[561],[390,9786],{"className":9787,"style":431},[561],[390,9789,9791],{"className":9790},[1119],[390,9792,9794],{"className":9793},[411],[390,9795,1126],{"className":9796},[411,696],[390,9798],{"className":9799,"style":1112},[561],[390,9801],{"className":9802,"style":431},[561],[390,9804,9806,9809,9812,9815,9818,9821,9824,9827,9830,9839,9842],{"className":9805},[402],[390,9807],{"className":9808,"style":853},[406],[390,9810,9094],{"className":9811},[411],[390,9813,710],{"className":9814},[709],[390,9816,1102],{"className":9817},[561],[390,9819],{"className":9820,"style":714},[561],[390,9822,5091],{"className":9823},[411,412],[390,9825],{"className":9826,"style":1112},[561],[390,9828],{"className":9829,"style":431},[561],[390,9831,9833],{"className":9832},[1119],[390,9834,9836],{"className":9835},[411],[390,9837,1126],{"className":9838},[411,696],[390,9840],{"className":9841,"style":1112},[561],[390,9843],{"className":9844,"style":431},[561],[390,9846,9848,9851,9854],{"className":9847},[402],[390,9849],{"className":9850,"style":554},[406],[390,9852,9192],{"className":9853},[411],[390,9855,722],{"className":9856},[721]," — a bijection of residues",[948,9859,9861,9866],{"type":9860},"warning",[381,9862,9863],{},[457,9864,9865],{},"Warning (Pitfalls).",[9867,9868,9869,10165,10205],"ol",{},[9870,9871,9872,9875,9876,9948,9949,9952,9953,9986,9987,10089,10090,10160,10161,10164],"li",{},[457,9873,9874],{},"Division is not generally legal."," From ",[390,9877,9879],{"className":9878},[393],[390,9880,9882,9903,9921],{"className":9881,"ariaHidden":398},[397],[390,9883,9885,9888,9891,9894,9897,9900],{"className":9884},[402],[390,9886],{"className":9887,"style":8140},[406],[390,9889,489],{"className":9890},[411,412],[390,9892,5091],{"className":9893},[411,412],[390,9895],{"className":9896,"style":562},[561],[390,9898,8150],{"className":9899},[566],[390,9901],{"className":9902,"style":562},[561],[390,9904,9906,9909,9912,9915,9918],{"className":9905},[402],[390,9907],{"className":9908,"style":1521},[406],[390,9910,489],{"className":9911},[411,412],[390,9913,5101],{"className":9914,"style":1485},[411,412],[390,9916],{"className":9917},[561,8166],[390,9919],{"className":9920,"style":8170},[561],[390,9922,9924,9927,9930,9939,9942,9945],{"className":9923},[402],[390,9925],{"className":9926,"style":554},[406],[390,9928,702],{"className":9929},[701],[390,9931,9933],{"className":9932},[411],[390,9934,9936],{"className":9935},[411],[390,9937,1126],{"className":9938},[411,696],[390,9940],{"className":9941,"style":8192},[561],[390,9943,8057],{"className":9944},[411,412],[390,9946,722],{"className":9947},[721]," you may\n",[385,9950,9951],{},"not"," conclude ",[390,9954,9956],{"className":9955},[393],[390,9957,9959,9977],{"className":9958,"ariaHidden":398},[397],[390,9960,9962,9965,9968,9971,9974],{"className":9961},[402],[390,9963],{"className":9964,"style":8140},[406],[390,9966,5091],{"className":9967},[411,412],[390,9969],{"className":9970,"style":562},[561],[390,9972,8150],{"className":9973},[566],[390,9975],{"className":9976,"style":562},[561],[390,9978,9980,9983],{"className":9979},[402],[390,9981],{"className":9982,"style":1521},[406],[390,9984,5101],{"className":9985,"style":1485},[411,412],". For example ",[390,9988,9990],{"className":9989},[393],[390,9991,9993,10011,10029,10047,10062],{"className":9992,"ariaHidden":398},[397],[390,9994,9996,9999,10002,10005,10008],{"className":9995},[402],[390,9997],{"className":9998,"style":836},[406],[390,10000,2816],{"className":10001},[411],[390,10003],{"className":10004,"style":431},[561],[390,10006,5289],{"className":10007},[1119],[390,10009],{"className":10010,"style":431},[561],[390,10012,10014,10017,10020,10023,10026],{"className":10013},[402],[390,10015],{"className":10016,"style":836},[406],[390,10018,9094],{"className":10019},[411],[390,10021],{"className":10022,"style":562},[561],[390,10024,8150],{"className":10025},[566],[390,10027],{"className":10028,"style":562},[561],[390,10030,10032,10035,10038,10041,10044],{"className":10031},[402],[390,10033],{"className":10034,"style":836},[406],[390,10036,2816],{"className":10037},[411],[390,10039],{"className":10040,"style":431},[561],[390,10042,5289],{"className":10043},[1119],[390,10045],{"className":10046,"style":431},[561],[390,10048,10050,10053,10056,10059],{"className":10049},[402],[390,10051],{"className":10052,"style":836},[406],[390,10054,757],{"className":10055},[411],[390,10057],{"className":10058},[561,8166],[390,10060],{"className":10061,"style":8170},[561],[390,10063,10065,10068,10071,10080,10083,10086],{"className":10064},[402],[390,10066],{"className":10067,"style":554},[406],[390,10069,702],{"className":10070},[701],[390,10072,10074],{"className":10073},[411],[390,10075,10077],{"className":10076},[411],[390,10078,1126],{"className":10079},[411,696],[390,10081],{"className":10082,"style":8192},[561],[390,10084,4499],{"className":10085},[411],[390,10087,722],{"className":10088},[721],"\nbut ",[390,10091,10093],{"className":10092},[393],[390,10094,10096,10151],{"className":10095,"ariaHidden":398},[397],[390,10097,10099,10102,10105,10108,10141,10145,10148],{"className":10098},[402],[390,10100],{"className":10101,"style":853},[406],[390,10103,9094],{"className":10104},[411],[390,10106],{"className":10107,"style":562},[561],[390,10109,10111],{"className":10110},[566],[390,10112,10115],{"className":10113},[411,10114],"vbox",[390,10116,10119],{"className":10117},[10118],"thinbox",[390,10120,10123,10126,10137],{"className":10121},[10122],"rlap",[390,10124],{"className":10125,"style":853},[406],[390,10127,10130],{"className":10128},[10129],"inner",[390,10131,10133],{"className":10132},[411],[390,10134,10136],{"className":10135},[566],"",[390,10138],{"className":10139},[10140],"fix",[390,10142],{"className":10143},[561,10144],"nobreak",[390,10146,8150],{"className":10147},[566],[390,10149],{"className":10150,"style":562},[561],[390,10152,10154,10157],{"className":10153},[402],[390,10155],{"className":10156,"style":836},[406],[390,10158,757],{"className":10159},[411],". Cancellation needs a ",[385,10162,10163],{},"modular inverse"," (next section).",[9870,10166,10167,10170,10171,10204],{},[457,10168,10169],{},"Overflow."," Even when each operand fits in a machine word, ",[390,10172,10174],{"className":10173},[393],[390,10175,10177,10195],{"className":10176,"ariaHidden":398},[397],[390,10178,10180,10183,10186,10189,10192],{"className":10179},[402],[390,10181],{"className":10182,"style":5279},[406],[390,10184,489],{"className":10185},[411,412],[390,10187],{"className":10188,"style":431},[561],[390,10190,5289],{"className":10191},[1119],[390,10193],{"className":10194,"style":431},[561],[390,10196,10198,10201],{"className":10197},[402],[390,10199],{"className":10200,"style":446},[406],[390,10202,671],{"className":10203},[411,412]," can\noverflow before you reduce. Reduce operands first, use a wider type, or\nmultiply with care.",[9870,10206,10207,10210,10211,10214,10215,10218,10219,1203],{},[457,10208,10209],{},"Negative remainders."," In many languages ",[2117,10212,10213],{},"a % m"," can be negative; normalize\nwith ",[2117,10216,10217],{},"((a % m) + m) % m"," when you need a representative in ",[390,10220,10222],{"className":10221},[393],[390,10223,10225],{"className":10224,"ariaHidden":398},[397],[390,10226,10228,10231,10235,10238,10241,10244,10247],{"className":10227},[402],[390,10229],{"className":10230,"style":554},[406],[390,10232,10234],{"className":10233},[701],"[",[390,10236,757],{"className":10237},[411],[390,10239,710],{"className":10240},[709],[390,10242],{"className":10243,"style":714},[561],[390,10245,8057],{"className":10246},[411,412],[390,10248,722],{"className":10249},[721],[467,10251,10253],{"id":10252},"modular-inverse-and-linear-congruences","Modular inverse and linear congruences",[381,10255,10256,10257,640,10259,8111,10274,10289,10290,5102,10337,10453,10454,10457,10458,1203],{},"A ",[457,10258,10163],{},[390,10260,10262],{"className":10261},[393],[390,10263,10265],{"className":10264,"ariaHidden":398},[397],[390,10266,10268,10271],{"className":10267},[402],[390,10269],{"className":10270,"style":407},[406],[390,10272,489],{"className":10273},[411,412],[390,10275,10277],{"className":10276},[393],[390,10278,10280],{"className":10279,"ariaHidden":398},[397],[390,10281,10283,10286],{"className":10282},[402],[390,10284],{"className":10285,"style":407},[406],[390,10287,8057],{"className":10288},[411,412]," is an integer ",[390,10291,10293],{"className":10292},[393],[390,10294,10296],{"className":10295,"ariaHidden":398},[397],[390,10297,10299,10302],{"className":10298},[402],[390,10300],{"className":10301,"style":9052},[406],[390,10303,10305,10308],{"className":10304},[411],[390,10306,489],{"className":10307},[411,412],[390,10309,10311],{"className":10310},[2905],[390,10312,10314],{"className":10313},[2909],[390,10315,10317],{"className":10316},[2914],[390,10318,10320],{"className":10319,"style":9052},[2918],[390,10321,10322,10325],{"style":3315},[390,10323],{"className":10324,"style":2927},[2926],[390,10326,10328],{"className":10327},[2931,2932,2933,2934],[390,10329,10331,10334],{"className":10330},[411,2934],[390,10332,1682],{"className":10333},[411,2934],[390,10335,895],{"className":10336},[411,2934],[390,10338,10340],{"className":10339},[393],[390,10341,10343,10361,10411,10426],{"className":10342,"ariaHidden":398},[397],[390,10344,10346,10349,10352,10355,10358],{"className":10345},[402],[390,10347],{"className":10348,"style":5279},[406],[390,10350,489],{"className":10351},[411,412],[390,10353],{"className":10354,"style":431},[561],[390,10356,5289],{"className":10357},[1119],[390,10359],{"className":10360,"style":431},[561],[390,10362,10364,10367,10402,10405,10408],{"className":10363},[402],[390,10365],{"className":10366,"style":9052},[406],[390,10368,10370,10373],{"className":10369},[411],[390,10371,489],{"className":10372},[411,412],[390,10374,10376],{"className":10375},[2905],[390,10377,10379],{"className":10378},[2909],[390,10380,10382],{"className":10381},[2914],[390,10383,10385],{"className":10384,"style":9052},[2918],[390,10386,10387,10390],{"style":3315},[390,10388],{"className":10389,"style":2927},[2926],[390,10391,10393],{"className":10392},[2931,2932,2933,2934],[390,10394,10396,10399],{"className":10395},[411,2934],[390,10397,1682],{"className":10398},[411,2934],[390,10400,895],{"className":10401},[411,2934],[390,10403],{"className":10404,"style":562},[561],[390,10406,8150],{"className":10407},[566],[390,10409],{"className":10410,"style":562},[561],[390,10412,10414,10417,10420,10423],{"className":10413},[402],[390,10415],{"className":10416,"style":836},[406],[390,10418,895],{"className":10419},[411],[390,10421],{"className":10422},[561,8166],[390,10424],{"className":10425,"style":8170},[561],[390,10427,10429,10432,10435,10444,10447,10450],{"className":10428},[402],[390,10430],{"className":10431,"style":554},[406],[390,10433,702],{"className":10434},[701],[390,10436,10438],{"className":10437},[411],[390,10439,10441],{"className":10440},[411],[390,10442,1126],{"className":10443},[411,696],[390,10445],{"className":10446,"style":8192},[561],[390,10448,8057],{"className":10449},[411,412],[390,10451,722],{"className":10452},[721],". It is exactly what lets you ",[462,10455,10456],{},"divide"," by ",[390,10459,10461],{"className":10460},[393],[390,10462,10464],{"className":10463,"ariaHidden":398},[397],[390,10465,10467,10470],{"className":10466},[402],[390,10468],{"className":10469,"style":407},[406],[390,10471,489],{"className":10472},[411,412],[948,10474,10475],{"type":950},[381,10476,10477,676,10480,10557,10558,676,10560,10614,10615,1253,10630,8095,10632,10647,10648,1203],{},[457,10478,10479],{},"Theorem.",[390,10481,10483],{"className":10482},[393],[390,10484,10486,10548],{"className":10485,"ariaHidden":398},[397],[390,10487,10489,10492,10527,10530,10533,10542,10545],{"className":10488},[402],[390,10490],{"className":10491,"style":9052},[406],[390,10493,10495,10498],{"className":10494},[411],[390,10496,489],{"className":10497},[411,412],[390,10499,10501],{"className":10500},[2905],[390,10502,10504],{"className":10503},[2909],[390,10505,10507],{"className":10506},[2914],[390,10508,10510],{"className":10509,"style":9052},[2918],[390,10511,10512,10515],{"style":3315},[390,10513],{"className":10514,"style":2927},[2926],[390,10516,10518],{"className":10517},[2931,2932,2933,2934],[390,10519,10521,10524],{"className":10520},[411,2934],[390,10522,1682],{"className":10523},[411,2934],[390,10525,895],{"className":10526},[411,2934],[390,10528],{"className":10529,"style":1112},[561],[390,10531],{"className":10532,"style":431},[561],[390,10534,10536],{"className":10535},[1119],[390,10537,10539],{"className":10538},[411],[390,10540,1126],{"className":10541},[411,696],[390,10543],{"className":10544,"style":1112},[561],[390,10546],{"className":10547,"style":431},[561],[390,10549,10551,10554],{"className":10550},[402],[390,10552],{"className":10553,"style":407},[406],[390,10555,8057],{"className":10556},[411,412]," exists ",[457,10559,7351],{},[390,10561,10563],{"className":10562},[393],[390,10564,10566,10605],{"className":10565,"ariaHidden":398},[397],[390,10567,10569,10572,10578,10581,10584,10587,10590,10593,10596,10599,10602],{"className":10568},[402],[390,10570],{"className":10571,"style":554},[406],[390,10573,10575],{"className":10574},[692],[390,10576,697],{"className":10577},[411,696],[390,10579,702],{"className":10580},[701],[390,10582,489],{"className":10583},[411,412],[390,10585,710],{"className":10586},[709],[390,10588],{"className":10589,"style":714},[561],[390,10591,8057],{"className":10592},[411,412],[390,10594,722],{"className":10595},[721],[390,10597],{"className":10598,"style":562},[561],[390,10600,602],{"className":10601},[566],[390,10603],{"className":10604,"style":562},[561],[390,10606,10608,10611],{"className":10607},[402],[390,10609],{"className":10610,"style":836},[406],[390,10612,895],{"className":10613},[411]," (we\nsay ",[390,10616,10618],{"className":10617},[393],[390,10619,10621],{"className":10620,"ariaHidden":398},[397],[390,10622,10624,10627],{"className":10623},[402],[390,10625],{"className":10626,"style":407},[406],[390,10628,489],{"className":10629},[411,412],[385,10631,9100],{},[390,10633,10635],{"className":10634},[393],[390,10636,10638],{"className":10637,"ariaHidden":398},[397],[390,10639,10641,10644],{"className":10640},[402],[390,10642],{"className":10643,"style":407},[406],[390,10645,8057],{"className":10646},[411,412],"), and when it exists it is unique modulo ",[390,10649,10651],{"className":10650},[393],[390,10652,10654],{"className":10653,"ariaHidden":398},[397],[390,10655,10657,10660],{"className":10656},[402],[390,10658],{"className":10659,"style":407},[406],[390,10661,8057],{"className":10662},[411,412],[381,10664,10665,10667,10668,10737,10738,10795,10796,10850,10851,10905],{},[385,10666,7410],{}," The congruence ",[390,10669,10671],{"className":10670},[393],[390,10672,10674,10695,10710],{"className":10673,"ariaHidden":398},[397],[390,10675,10677,10680,10683,10686,10689,10692],{"className":10676},[402],[390,10678],{"className":10679,"style":8140},[406],[390,10681,489],{"className":10682},[411,412],[390,10684,5091],{"className":10685},[411,412],[390,10687],{"className":10688,"style":562},[561],[390,10690,8150],{"className":10691},[566],[390,10693],{"className":10694,"style":562},[561],[390,10696,10698,10701,10704,10707],{"className":10697},[402],[390,10699],{"className":10700,"style":836},[406],[390,10702,895],{"className":10703},[411],[390,10705],{"className":10706},[561,8166],[390,10708],{"className":10709,"style":8170},[561],[390,10711,10713,10716,10719,10728,10731,10734],{"className":10712},[402],[390,10714],{"className":10715,"style":554},[406],[390,10717,702],{"className":10718},[701],[390,10720,10722],{"className":10721},[411],[390,10723,10725],{"className":10724},[411],[390,10726,1126],{"className":10727},[411,696],[390,10729],{"className":10730,"style":8192},[561],[390,10732,8057],{"className":10733},[411,412],[390,10735,722],{"className":10736},[721]," is the Diophantine equation\n",[390,10739,10741],{"className":10740},[393],[390,10742,10744,10765,10786],{"className":10743,"ariaHidden":398},[397],[390,10745,10747,10750,10753,10756,10759,10762],{"className":10746},[402],[390,10748],{"className":10749,"style":1672},[406],[390,10751,489],{"className":10752},[411,412],[390,10754,5091],{"className":10755},[411,412],[390,10757],{"className":10758,"style":431},[561],[390,10760,1495],{"className":10761},[1119],[390,10763],{"className":10764,"style":431},[561],[390,10766,10768,10771,10774,10777,10780,10783],{"className":10767},[402],[390,10769],{"className":10770,"style":1521},[406],[390,10772,8057],{"className":10773},[411,412],[390,10775,5101],{"className":10776,"style":1485},[411,412],[390,10778],{"className":10779,"style":562},[561],[390,10781,602],{"className":10782},[566],[390,10784],{"className":10785,"style":562},[561],[390,10787,10789,10792],{"className":10788},[402],[390,10790],{"className":10791,"style":836},[406],[390,10793,895],{"className":10794},[411],", which by the corollary above is solvable iff ",[390,10797,10799],{"className":10798},[393],[390,10800,10802,10841],{"className":10801,"ariaHidden":398},[397],[390,10803,10805,10808,10814,10817,10820,10823,10826,10829,10832,10835,10838],{"className":10804},[402],[390,10806],{"className":10807,"style":554},[406],[390,10809,10811],{"className":10810},[692],[390,10812,697],{"className":10813},[411,696],[390,10815,702],{"className":10816},[701],[390,10818,489],{"className":10819},[411,412],[390,10821,710],{"className":10822},[709],[390,10824],{"className":10825,"style":714},[561],[390,10827,8057],{"className":10828},[411,412],[390,10830,722],{"className":10831},[721],[390,10833],{"className":10834,"style":562},[561],[390,10836,567],{"className":10837},[566],[390,10839],{"className":10840,"style":562},[561],[390,10842,10844,10847],{"className":10843},[402],[390,10845],{"className":10846,"style":836},[406],[390,10848,895],{"className":10849},[411],",\ni.e. ",[390,10852,10854],{"className":10853},[393],[390,10855,10857,10896],{"className":10856,"ariaHidden":398},[397],[390,10858,10860,10863,10869,10872,10875,10878,10881,10884,10887,10890,10893],{"className":10859},[402],[390,10861],{"className":10862,"style":554},[406],[390,10864,10866],{"className":10865},[692],[390,10867,697],{"className":10868},[411,696],[390,10870,702],{"className":10871},[701],[390,10873,489],{"className":10874},[411,412],[390,10876,710],{"className":10877},[709],[390,10879],{"className":10880,"style":714},[561],[390,10882,8057],{"className":10883},[411,412],[390,10885,722],{"className":10886},[721],[390,10888],{"className":10889,"style":562},[561],[390,10891,602],{"className":10892},[566],[390,10894],{"className":10895,"style":562},[561],[390,10897,10899,10902],{"className":10898},[402],[390,10900],{"className":10901,"style":836},[406],[390,10903,895],{"className":10904},[411],". There are two standard ways to produce the inverse:",[9867,10907,10908,11202],{},[9870,10909,10910,10913,10914,10956,10957,11014,11015,11030,11031,11049,11050,1451,11119,11164,11165,11168,11169,1203],{},[457,10911,10912],{},"Extended Euclid."," Run ",[390,10915,10917],{"className":10916},[393],[390,10918,10920],{"className":10919,"ariaHidden":398},[397],[390,10921,10923,10926,10938,10941,10944,10947,10950,10953],{"className":10922},[402],[390,10924],{"className":10925,"style":554},[406],[390,10927,10930],{"className":10928},[1943,10929],"textsc",[390,10931,10934],{"className":10932},[411,10933],"text",[390,10935,10937],{"className":10936},[411],"Extended-Euclid",[390,10939,702],{"className":10940},[701],[390,10942,489],{"className":10943},[411,412],[390,10945,710],{"className":10946},[709],[390,10948],{"className":10949,"style":714},[561],[390,10951,8057],{"className":10952},[411,412],[390,10954,722],{"className":10955},[721]," to get\n",[390,10958,10960],{"className":10959},[393],[390,10961,10963,10984,11005],{"className":10962,"ariaHidden":398},[397],[390,10964,10966,10969,10972,10975,10978,10981],{"className":10965},[402],[390,10967],{"className":10968,"style":1672},[406],[390,10970,489],{"className":10971},[411,412],[390,10973,5091],{"className":10974},[411,412],[390,10976],{"className":10977,"style":431},[561],[390,10979,1495],{"className":10980},[1119],[390,10982],{"className":10983,"style":431},[561],[390,10985,10987,10990,10993,10996,10999,11002],{"className":10986},[402],[390,10988],{"className":10989,"style":1521},[406],[390,10991,8057],{"className":10992},[411,412],[390,10994,5101],{"className":10995,"style":1485},[411,412],[390,10997],{"className":10998,"style":562},[561],[390,11000,602],{"className":11001},[566],[390,11003],{"className":11004,"style":562},[561],[390,11006,11008,11011],{"className":11007},[402],[390,11009],{"className":11010,"style":836},[406],[390,11012,895],{"className":11013},[411],". Reducing mod ",[390,11016,11018],{"className":11017},[393],[390,11019,11021],{"className":11020,"ariaHidden":398},[397],[390,11022,11024,11027],{"className":11023},[402],[390,11025],{"className":11026,"style":407},[406],[390,11028,8057],{"className":11029},[411,412]," kills the ",[390,11032,11034],{"className":11033},[393],[390,11035,11037],{"className":11036,"ariaHidden":398},[397],[390,11038,11040,11043,11046],{"className":11039},[402],[390,11041],{"className":11042,"style":1521},[406],[390,11044,8057],{"className":11045},[411,412],[390,11047,5101],{"className":11048,"style":1485},[411,412]," term, leaving\n",[390,11051,11053],{"className":11052},[393],[390,11054,11056,11077,11092],{"className":11055,"ariaHidden":398},[397],[390,11057,11059,11062,11065,11068,11071,11074],{"className":11058},[402],[390,11060],{"className":11061,"style":8140},[406],[390,11063,489],{"className":11064},[411,412],[390,11066,5091],{"className":11067},[411,412],[390,11069],{"className":11070,"style":562},[561],[390,11072,8150],{"className":11073},[566],[390,11075],{"className":11076,"style":562},[561],[390,11078,11080,11083,11086,11089],{"className":11079},[402],[390,11081],{"className":11082,"style":836},[406],[390,11084,895],{"className":11085},[411],[390,11087],{"className":11088},[561,8166],[390,11090],{"className":11091,"style":8170},[561],[390,11093,11095,11098,11101,11110,11113,11116],{"className":11094},[402],[390,11096],{"className":11097,"style":554},[406],[390,11099,702],{"className":11100},[701],[390,11102,11104],{"className":11103},[411],[390,11105,11107],{"className":11106},[411],[390,11108,1126],{"className":11109},[411,696],[390,11111],{"className":11112,"style":8192},[561],[390,11114,8057],{"className":11115},[411,412],[390,11117,722],{"className":11118},[721],[390,11120,11122],{"className":11121},[393],[390,11123,11125,11155],{"className":11124,"ariaHidden":398},[397],[390,11126,11128,11131,11134,11137,11140,11149,11152],{"className":11127},[402],[390,11129],{"className":11130,"style":446},[406],[390,11132,5091],{"className":11133},[411,412],[390,11135],{"className":11136,"style":1112},[561],[390,11138],{"className":11139,"style":431},[561],[390,11141,11143],{"className":11142},[1119],[390,11144,11146],{"className":11145},[411],[390,11147,1126],{"className":11148},[411,696],[390,11150],{"className":11151,"style":1112},[561],[390,11153],{"className":11154,"style":431},[561],[390,11156,11158,11161],{"className":11157},[402],[390,11159],{"className":11160,"style":407},[406],[390,11162,8057],{"className":11163},[411,412]," is the inverse. This works for ",[385,11166,11167],{},"any","\ncoprime modulus and costs ",[390,11170,11172],{"className":11171},[393],[390,11173,11175],{"className":11174,"ariaHidden":398},[397],[390,11176,11178,11181,11184,11187,11193,11196,11199],{"className":11177},[402],[390,11179],{"className":11180,"style":554},[406],[390,11182,2731],{"className":11183,"style":1401},[411,412],[390,11185,702],{"className":11186},[701],[390,11188,11190],{"className":11189},[692],[390,11191,2742],{"className":11192,"style":2741},[411,696],[390,11194],{"className":11195,"style":714},[561],[390,11197,8057],{"className":11198},[411,412],[390,11200,722],{"className":11201},[721],[9870,11203,11204,11207,11208,1253,11223,11226,11227,11290,11291,11306,11307,11408,11409,11542,11543,11576,11577,1203],{},[457,11205,11206],{},"Fermat's little theorem."," When ",[390,11209,11211],{"className":11210},[393],[390,11212,11214],{"className":11213,"ariaHidden":398},[397],[390,11215,11217,11220],{"className":11216},[402],[390,11218],{"className":11219,"style":407},[406],[390,11221,8057],{"className":11222},[411,412],[457,11224,11225],{},"prime",", every ",[390,11228,11230],{"className":11229},[393],[390,11231,11233,11281],{"className":11232,"ariaHidden":398},[397],[390,11234,11236,11239,11242,11245,11272,11275,11278],{"className":11235},[402],[390,11237],{"className":11238,"style":853},[406],[390,11240,489],{"className":11241},[411,412],[390,11243],{"className":11244,"style":562},[561],[390,11246,11248],{"className":11247},[566],[390,11249,11251],{"className":11250},[411,10114],[390,11252,11254],{"className":11253},[10118],[390,11255,11257,11260,11269],{"className":11256},[10122],[390,11258],{"className":11259,"style":853},[406],[390,11261,11263],{"className":11262},[10129],[390,11264,11266],{"className":11265},[411],[390,11267,10136],{"className":11268},[566],[390,11270],{"className":11271},[10140],[390,11273],{"className":11274},[561,10144],[390,11276,8150],{"className":11277},[566],[390,11279],{"className":11280,"style":562},[561],[390,11282,11284,11287],{"className":11283},[402],[390,11285],{"className":11286,"style":836},[406],[390,11288,757],{"className":11289},[411]," is\ncoprime to ",[390,11292,11294],{"className":11293},[393],[390,11295,11297],{"className":11296,"ariaHidden":398},[397],[390,11298,11300,11303],{"className":11299},[402],[390,11301],{"className":11302,"style":407},[406],[390,11304,8057],{"className":11305},[411,412],", and ",[390,11308,11310],{"className":11309},[393],[390,11311,11313,11366,11381],{"className":11312,"ariaHidden":398},[397],[390,11314,11316,11319,11357,11360,11363],{"className":11315},[402],[390,11317],{"className":11318,"style":9052},[406],[390,11320,11322,11325],{"className":11321},[411],[390,11323,489],{"className":11324},[411,412],[390,11326,11328],{"className":11327},[2905],[390,11329,11331],{"className":11330},[2909],[390,11332,11334],{"className":11333},[2914],[390,11335,11337],{"className":11336,"style":9052},[2918],[390,11338,11339,11342],{"style":3315},[390,11340],{"className":11341,"style":2927},[2926],[390,11343,11345],{"className":11344},[2931,2932,2933,2934],[390,11346,11348,11351,11354],{"className":11347},[411,2934],[390,11349,8057],{"className":11350},[411,412,2934],[390,11352,1682],{"className":11353},[1119,2934],[390,11355,895],{"className":11356},[411,2934],[390,11358],{"className":11359,"style":562},[561],[390,11361,8150],{"className":11362},[566],[390,11364],{"className":11365,"style":562},[561],[390,11367,11369,11372,11375,11378],{"className":11368},[402],[390,11370],{"className":11371,"style":836},[406],[390,11373,895],{"className":11374},[411],[390,11376],{"className":11377},[561,8166],[390,11379],{"className":11380,"style":8170},[561],[390,11382,11384,11387,11390,11399,11402,11405],{"className":11383},[402],[390,11385],{"className":11386,"style":554},[406],[390,11388,702],{"className":11389},[701],[390,11391,11393],{"className":11392},[411],[390,11394,11396],{"className":11395},[411],[390,11397,1126],{"className":11398},[411,696],[390,11400],{"className":11401,"style":8192},[561],[390,11403,8057],{"className":11404},[411,412],[390,11406,722],{"className":11407},[721],", hence\n",[390,11410,11412],{"className":11411},[393],[390,11413,11415,11465,11515],{"className":11414,"ariaHidden":398},[397],[390,11416,11418,11421,11456,11459,11462],{"className":11417},[402],[390,11419],{"className":11420,"style":9052},[406],[390,11422,11424,11427],{"className":11423},[411],[390,11425,489],{"className":11426},[411,412],[390,11428,11430],{"className":11429},[2905],[390,11431,11433],{"className":11432},[2909],[390,11434,11436],{"className":11435},[2914],[390,11437,11439],{"className":11438,"style":9052},[2918],[390,11440,11441,11444],{"style":3315},[390,11442],{"className":11443,"style":2927},[2926],[390,11445,11447],{"className":11446},[2931,2932,2933,2934],[390,11448,11450,11453],{"className":11449},[411,2934],[390,11451,1682],{"className":11452},[411,2934],[390,11454,895],{"className":11455},[411,2934],[390,11457],{"className":11458,"style":562},[561],[390,11460,8150],{"className":11461},[566],[390,11463],{"className":11464,"style":562},[561],[390,11466,11468,11471,11509,11512],{"className":11467},[402],[390,11469],{"className":11470,"style":9052},[406],[390,11472,11474,11477],{"className":11473},[411],[390,11475,489],{"className":11476},[411,412],[390,11478,11480],{"className":11479},[2905],[390,11481,11483],{"className":11482},[2909],[390,11484,11486],{"className":11485},[2914],[390,11487,11489],{"className":11488,"style":9052},[2918],[390,11490,11491,11494],{"style":3315},[390,11492],{"className":11493,"style":2927},[2926],[390,11495,11497],{"className":11496},[2931,2932,2933,2934],[390,11498,11500,11503,11506],{"className":11499},[411,2934],[390,11501,8057],{"className":11502},[411,412,2934],[390,11504,1682],{"className":11505},[1119,2934],[390,11507,2816],{"className":11508},[411,2934],[390,11510],{"className":11511},[561,8166],[390,11513],{"className":11514,"style":8170},[561],[390,11516,11518,11521,11524,11533,11536,11539],{"className":11517},[402],[390,11519],{"className":11520,"style":554},[406],[390,11522,702],{"className":11523},[701],[390,11525,11527],{"className":11526},[411],[390,11528,11530],{"className":11529},[411],[390,11531,1126],{"className":11532},[411,696],[390,11534],{"className":11535,"style":8192},[561],[390,11537,8057],{"className":11538},[411,412],[390,11540,722],{"className":11541},[721],". Computed by fast exponentiation in\n",[390,11544,11546],{"className":11545},[393],[390,11547,11549],{"className":11548,"ariaHidden":398},[397],[390,11550,11552,11555,11558,11561,11567,11570,11573],{"className":11551},[402],[390,11553],{"className":11554,"style":554},[406],[390,11556,2731],{"className":11557,"style":1401},[411,412],[390,11559,702],{"className":11560},[701],[390,11562,11564],{"className":11563},[692],[390,11565,2742],{"className":11566,"style":2741},[411,696],[390,11568],{"className":11569,"style":714},[561],[390,11571,8057],{"className":11572},[411,412],[390,11574,722],{"className":11575},[721]," multiplications, the subject of the next lesson, on\n",[489,11578,11579],{"href":318},"modular exponentiation and primality",[381,11581,11582,11583,11637,11638,676,11653,11656,11657,11672,11673,11720,11721,11763,11764,8111,11779,11794,11795,11810,11811,5357,11826,1203],{},"The reason an inverse exists exactly when ",[390,11584,11586],{"className":11585},[393],[390,11587,11589,11628],{"className":11588,"ariaHidden":398},[397],[390,11590,11592,11595,11601,11604,11607,11610,11613,11616,11619,11622,11625],{"className":11591},[402],[390,11593],{"className":11594,"style":554},[406],[390,11596,11598],{"className":11597},[692],[390,11599,697],{"className":11600},[411,696],[390,11602,702],{"className":11603},[701],[390,11605,489],{"className":11606},[411,412],[390,11608,710],{"className":11609},[709],[390,11611],{"className":11612,"style":714},[561],[390,11614,8057],{"className":11615},[411,412],[390,11617,722],{"className":11618},[721],[390,11620],{"className":11621,"style":562},[561],[390,11623,602],{"className":11624},[566],[390,11626],{"className":11627,"style":562},[561],[390,11629,11631,11634],{"className":11630},[402],[390,11632],{"className":11633,"style":836},[406],[390,11635,895],{"className":11636},[411]," is visible directly:\nmultiplying every nonzero residue by such an ",[390,11639,11641],{"className":11640},[393],[390,11642,11644],{"className":11643,"ariaHidden":398},[397],[390,11645,11647,11650],{"className":11646},[402],[390,11648],{"className":11649,"style":407},[406],[390,11651,489],{"className":11652},[411,412],[457,11654,11655],{},"permutes"," them, so some residue\nmust land on ",[390,11658,11660],{"className":11659},[393],[390,11661,11663],{"className":11662,"ariaHidden":398},[397],[390,11664,11666,11669],{"className":11665},[402],[390,11667],{"className":11668,"style":836},[406],[390,11670,895],{"className":11671},[411],", and that residue is ",[390,11674,11676],{"className":11675},[393],[390,11677,11679],{"className":11678,"ariaHidden":398},[397],[390,11680,11682,11685],{"className":11681},[402],[390,11683],{"className":11684,"style":9052},[406],[390,11686,11688,11691],{"className":11687},[411],[390,11689,489],{"className":11690},[411,412],[390,11692,11694],{"className":11693},[2905],[390,11695,11697],{"className":11696},[2909],[390,11698,11700],{"className":11699},[2914],[390,11701,11703],{"className":11702,"style":9052},[2918],[390,11704,11705,11708],{"style":3315},[390,11706],{"className":11707,"style":2927},[2926],[390,11709,11711],{"className":11710},[2931,2932,2933,2934],[390,11712,11714,11717],{"className":11713},[411,2934],[390,11715,1682],{"className":11716},[411,2934],[390,11718,895],{"className":11719},[411,2934],". Below, multiplying ",[390,11722,11724],{"className":11723},[393],[390,11725,11727],{"className":11726,"ariaHidden":398},[397],[390,11728,11730,11733,11736,11739,11742,11745,11748,11751,11754,11757,11760],{"className":11729},[402],[390,11731],{"className":11732,"style":554},[406],[390,11734,8350],{"className":11735},[701],[390,11737,895],{"className":11738},[411],[390,11740,710],{"className":11741},[709],[390,11743],{"className":11744,"style":714},[561],[390,11746,8373],{"className":11747},[8372],[390,11749],{"className":11750,"style":714},[561],[390,11752,710],{"className":11753},[709],[390,11755],{"className":11756,"style":714},[561],[390,11758,4499],{"className":11759},[411],[390,11761,8407],{"className":11762},[721]," by\n",[390,11765,11767],{"className":11766},[393],[390,11768,11770],{"className":11769,"ariaHidden":398},[397],[390,11771,11773,11776],{"className":11772},[402],[390,11774],{"className":11775,"style":836},[406],[390,11777,9094],{"className":11778},[411],[390,11780,11782],{"className":11781},[393],[390,11783,11785],{"className":11784,"ariaHidden":398},[397],[390,11786,11788,11791],{"className":11787},[402],[390,11789],{"className":11790,"style":836},[406],[390,11792,9082],{"className":11793},[411]," shuffles the set, and the arrow into ",[390,11796,11798],{"className":11797},[393],[390,11799,11801],{"className":11800,"ariaHidden":398},[397],[390,11802,11804,11807],{"className":11803},[402],[390,11805],{"className":11806,"style":836},[406],[390,11808,895],{"className":11809},[411]," comes from ",[390,11812,11814],{"className":11813},[393],[390,11815,11817],{"className":11816,"ariaHidden":398},[397],[390,11818,11820,11823],{"className":11819},[402],[390,11821],{"className":11822,"style":836},[406],[390,11824,9192],{"className":11825},[411],[390,11827,11829],{"className":11828},[393],[390,11830,11832,11882],{"className":11831,"ariaHidden":398},[397],[390,11833,11835,11838,11873,11876,11879],{"className":11834},[402],[390,11836],{"className":11837,"style":9052},[406],[390,11839,11841,11844],{"className":11840},[411],[390,11842,9094],{"className":11843},[411],[390,11845,11847],{"className":11846},[2905],[390,11848,11850],{"className":11849},[2909],[390,11851,11853],{"className":11852},[2914],[390,11854,11856],{"className":11855,"style":9052},[2918],[390,11857,11858,11861],{"style":3315},[390,11859],{"className":11860,"style":2927},[2926],[390,11862,11864],{"className":11863},[2931,2932,2933,2934],[390,11865,11867,11870],{"className":11866},[411,2934],[390,11868,1682],{"className":11869},[411,2934],[390,11871,895],{"className":11872},[411,2934],[390,11874],{"className":11875,"style":562},[561],[390,11877,8150],{"className":11878},[566],[390,11880],{"className":11881,"style":562},[561],[390,11883,11885,11888],{"className":11884},[402],[390,11886],{"className":11887,"style":836},[406],[390,11889,9192],{"className":11890},[411],[3472,11892,11894,12136],{"className":11893},[3475,3476],[3478,11895,11899],{"xmlns":3480,"width":11896,"height":11897,"viewBox":11898},"309.845","157.048","-75 -75 232.384 117.786",[2039,11900,11901,11904,11907,11914,11917,11924,11927,11934,11937,11944,11947,11954,11957,11964,11967,11973,11976,11979,11982,11988,11991,11994,11997,12003,12006,12009,12012,12018,12021,12024,12027,12033,12036,12039,12042,12048,12051,12054,12058,12062,12097,12104],{"stroke":3486,"style":3487},[3489,11902],{"fill":3638,"stroke":3491,"d":11903},"M125.46-60.289c0-6.286-5.095-11.381-11.38-11.381s-11.381 5.095-11.381 11.381 5.095 11.381 11.38 11.381 11.382-5.095 11.382-11.38M125.46-3.383c0-6.286-5.095-11.382-11.38-11.382s-11.381 5.096-11.381 11.382 5.095 11.38 11.38 11.38 11.382-5.095 11.382-11.38m-11.38 0",[3489,11905],{"fill":3491,"d":11906},"M11.65-60.289c0-6.286-5.096-11.381-11.381-11.381s-11.381 5.095-11.381 11.381S-6.017-48.908.268-48.908s11.382-5.095 11.382-11.38Zm-11.381 0",[2039,11908,11910],{"transform":11909},"translate(26.14 -25.553)",[3489,11911],{"d":11912,"fill":3486,"stroke":3486,"className":11913,"style":3504},"M-24.277-31.836L-27.309-31.836L-27.309-32.152Q-26.158-32.152-26.158-32.447L-26.158-37.171Q-26.646-36.938-27.367-36.938L-27.367-37.254Q-26.237-37.254-25.675-37.830L-25.530-37.830Q-25.495-37.830-25.462-37.797Q-25.429-37.764-25.429-37.729L-25.429-32.447Q-25.429-32.152-24.277-32.152",[3503],[3489,11915],{"fill":3491,"d":11916},"M40.103-60.289c0-6.286-5.096-11.381-11.381-11.381S17.34-66.575 17.34-60.289s5.096 11.381 11.382 11.381 11.38-5.095 11.38-11.38Zm-11.381 0",[2039,11918,11920],{"transform":11919},"translate(54.593 -25.553)",[3489,11921],{"d":11922,"fill":3486,"stroke":3486,"className":11923,"style":3504},"M-24.277-31.836L-27.727-31.836L-27.727-32.069Q-27.727-32.082-27.696-32.113L-26.242-33.690Q-25.776-34.187-25.523-34.492Q-25.270-34.798-25.079-35.209Q-24.888-35.620-24.888-36.059Q-24.888-36.648-25.211-37.081Q-25.534-37.514-26.114-37.514Q-26.378-37.514-26.624-37.404Q-26.870-37.294-27.046-37.107Q-27.222-36.920-27.318-36.670L-27.239-36.670Q-27.037-36.670-26.894-36.534Q-26.751-36.398-26.751-36.182Q-26.751-35.976-26.894-35.837Q-27.037-35.699-27.239-35.699Q-27.441-35.699-27.584-35.842Q-27.727-35.984-27.727-36.182Q-27.727-36.644-27.490-37.017Q-27.252-37.391-26.852-37.610Q-26.453-37.830-26.004-37.830Q-25.481-37.830-25.027-37.615Q-24.572-37.399-24.299-37Q-24.027-36.600-24.027-36.059Q-24.027-35.664-24.198-35.310Q-24.370-34.956-24.635-34.677Q-24.901-34.398-25.352-34.013Q-25.802-33.629-25.881-33.554L-26.905-32.592L-26.088-32.592Q-25.437-32.592-25-32.603Q-24.563-32.614-24.532-32.636Q-24.462-32.719-24.407-32.959Q-24.352-33.198-24.312-33.466L-24.027-33.466",[3503],[3489,11925],{"fill":3491,"d":11926},"M68.555-60.289c0-6.286-5.095-11.381-11.38-11.381s-11.382 5.095-11.382 11.381 5.096 11.381 11.381 11.381 11.381-5.095 11.381-11.38Zm-11.38 0",[2039,11928,11930],{"transform":11929},"translate(83.046 -25.553)",[3489,11931],{"d":11932,"fill":3486,"stroke":3486,"className":11933,"style":3504},"M-27.283-32.557L-27.327-32.557Q-27.125-32.240-26.738-32.082Q-26.351-31.924-25.925-31.924Q-25.389-31.924-25.150-32.359Q-24.910-32.794-24.910-33.374Q-24.910-33.954-25.156-34.394Q-25.402-34.833-25.934-34.833L-26.554-34.833Q-26.580-34.833-26.613-34.862Q-26.646-34.890-26.646-34.912L-26.646-35.013Q-26.646-35.044-26.617-35.068Q-26.589-35.092-26.554-35.092L-26.035-35.132Q-25.569-35.132-25.323-35.604Q-25.077-36.077-25.077-36.595Q-25.077-37.022-25.290-37.296Q-25.503-37.571-25.925-37.571Q-26.268-37.571-26.593-37.441Q-26.918-37.312-27.103-37.057L-27.077-37.057Q-26.874-37.057-26.738-36.916Q-26.602-36.775-26.602-36.578Q-26.602-36.380-26.736-36.246Q-26.870-36.112-27.068-36.112Q-27.270-36.112-27.408-36.246Q-27.547-36.380-27.547-36.578Q-27.547-37.167-27.044-37.498Q-26.540-37.830-25.925-37.830Q-25.547-37.830-25.145-37.690Q-24.743-37.549-24.475-37.270Q-24.207-36.991-24.207-36.595Q-24.207-36.046-24.561-35.609Q-24.914-35.171-25.455-34.987Q-25.064-34.908-24.719-34.684Q-24.374-34.460-24.163-34.119Q-23.952-33.778-23.952-33.383Q-23.952-33.001-24.115-32.678Q-24.277-32.355-24.569-32.119Q-24.862-31.884-25.209-31.761Q-25.556-31.638-25.925-31.638Q-26.373-31.638-26.804-31.799Q-27.235-31.959-27.516-32.286Q-27.797-32.614-27.797-33.071Q-27.797-33.286-27.650-33.429Q-27.503-33.572-27.283-33.572Q-27.072-33.572-26.927-33.427Q-26.782-33.282-26.782-33.071Q-26.782-32.860-26.929-32.708Q-27.077-32.557-27.283-32.557",[3503],[3489,11935],{"fill":3491,"d":11936},"M97.008-60.289c0-6.286-5.095-11.381-11.381-11.381s-11.381 5.095-11.381 11.381 5.095 11.381 11.381 11.381 11.381-5.095 11.381-11.38Zm-11.381 0",[2039,11938,11940],{"transform":11939},"translate(111.498 -25.553)",[3489,11941],{"d":11942,"fill":3486,"stroke":3486,"className":11943,"style":3504},"M-25.486-33.313L-27.925-33.313L-27.925-33.629L-25.099-37.777Q-25.055-37.830-24.989-37.830L-24.835-37.830Q-24.796-37.830-24.763-37.797Q-24.730-37.764-24.730-37.720L-24.730-33.629L-23.829-33.629L-23.829-33.313L-24.730-33.313L-24.730-32.447Q-24.730-32.152-23.829-32.152L-23.829-31.836L-26.382-31.836L-26.382-32.152Q-26.022-32.152-25.754-32.207Q-25.486-32.262-25.486-32.447L-25.486-33.313M-25.429-36.802L-27.591-33.629L-25.429-33.629",[3503],[3489,11945],{"fill":3491,"d":11946},"M125.46-60.289c0-6.286-5.095-11.381-11.38-11.381s-11.381 5.095-11.381 11.381 5.095 11.381 11.38 11.381 11.382-5.095 11.382-11.38Zm-11.38 0",[2039,11948,11950],{"transform":11949},"translate(139.951 -25.553)",[3489,11951],{"d":11952,"fill":3486,"stroke":3486,"className":11953,"style":3504},"M-27.358-32.842Q-27.217-32.429-26.857-32.177Q-26.497-31.924-26.061-31.924Q-25.609-31.924-25.343-32.177Q-25.077-32.429-24.974-32.814Q-24.871-33.198-24.871-33.655Q-24.871-35.356-25.780-35.356Q-26.101-35.356-26.330-35.262Q-26.558-35.167-26.688-35.048Q-26.817-34.930-26.929-34.791Q-27.041-34.653-27.077-34.644L-27.160-34.644Q-27.204-34.644-27.235-34.675Q-27.266-34.706-27.266-34.754L-27.266-37.751Q-27.266-37.782-27.230-37.806Q-27.195-37.830-27.169-37.830L-27.129-37.830Q-26.497-37.540-25.824-37.540Q-25.152-37.540-24.510-37.830L-24.484-37.830Q-24.453-37.830-24.420-37.808Q-24.387-37.786-24.387-37.751L-24.387-37.650Q-24.387-37.646-24.396-37.628Q-24.405-37.610-24.405-37.606Q-24.721-37.211-25.191-36.989Q-25.662-36.767-26.158-36.767Q-26.567-36.767-26.949-36.877L-26.949-35.158Q-26.492-35.615-25.780-35.615Q-25.270-35.615-24.871-35.334Q-24.471-35.053-24.249-34.598Q-24.027-34.143-24.027-33.638Q-24.027-33.088-24.306-32.629Q-24.585-32.170-25.051-31.904Q-25.517-31.638-26.061-31.638Q-26.501-31.638-26.885-31.865Q-27.270-32.091-27.498-32.471Q-27.727-32.851-27.727-33.295Q-27.727-33.488-27.595-33.620Q-27.463-33.752-27.266-33.752Q-27.134-33.752-27.030-33.693Q-26.927-33.633-26.868-33.530Q-26.809-33.427-26.809-33.295Q-26.809-33.097-26.936-32.965Q-27.063-32.834-27.266-32.834Q-27.327-32.834-27.358-32.842",[3503],[3489,11955],{"fill":3491,"d":11956},"M153.914-60.289c0-6.286-5.096-11.381-11.382-11.381s-11.38 5.095-11.38 11.381 5.095 11.381 11.38 11.381 11.382-5.095 11.382-11.38Zm-11.382 0",[2039,11958,11960],{"transform":11959},"translate(168.404 -25.553)",[3489,11961],{"d":11962,"fill":3486,"stroke":3486,"className":11963,"style":3504},"M-25.872-31.638Q-26.606-31.638-27.037-32.119Q-27.468-32.601-27.632-33.293Q-27.797-33.985-27.797-34.732Q-27.797-35.461-27.505-36.184Q-27.213-36.907-26.659-37.369Q-26.105-37.830-25.358-37.830Q-24.862-37.830-24.526-37.564Q-24.189-37.298-24.189-36.815Q-24.189-36.635-24.317-36.507Q-24.444-36.380-24.620-36.380Q-24.800-36.380-24.930-36.505Q-25.059-36.630-25.059-36.815Q-25.059-36.929-25.002-37.033Q-24.945-37.136-24.844-37.195Q-24.743-37.254-24.620-37.254Q-24.616-37.254-24.611-37.252Q-24.607-37.250-24.602-37.246Q-24.717-37.413-24.925-37.492Q-25.134-37.571-25.358-37.571Q-25.802-37.571-26.160-37.270Q-26.518-36.969-26.707-36.516Q-26.940-35.910-26.940-34.877Q-26.769-35.242-26.468-35.470Q-26.167-35.699-25.780-35.699Q-25.376-35.699-25.031-35.532Q-24.686-35.365-24.449-35.084Q-24.211-34.802-24.082-34.440Q-23.952-34.077-23.952-33.673Q-23.952-33.128-24.196-32.662Q-24.440-32.196-24.879-31.917Q-25.319-31.638-25.872-31.638M-25.872-31.924Q-25.411-31.924-25.176-32.181Q-24.941-32.438-24.875-32.812Q-24.809-33.185-24.809-33.655L-24.809-33.690Q-24.809-34.178-24.866-34.543Q-24.923-34.908-25.152-35.171Q-25.380-35.435-25.824-35.435Q-26.193-35.435-26.444-35.191Q-26.694-34.947-26.809-34.583Q-26.923-34.218-26.923-33.871Q-26.923-33.752-26.914-33.690Q-26.914-33.673-26.916-33.662Q-26.918-33.651-26.923-33.638Q-26.923-32.987-26.685-32.456Q-26.448-31.924-25.872-31.924",[3503],[3489,11965],{"fill":3491,"d":11966},"M11.65-3.383c0-6.286-5.096-11.382-11.381-11.382S-11.112-9.669-11.112-3.383-6.017 7.997.268 7.997 11.65 2.903 11.65-3.382Zm-11.381 0",[2039,11968,11970],{"transform":11969},"translate(26.14 31.353)",[3489,11971],{"d":11932,"fill":3486,"stroke":3486,"className":11972,"style":3504},[3503],[3489,11974],{"fill":3491,"d":11975},"M.269-48.708v31.744",[3489,11977],{"stroke":3491,"d":11978},"m.269-14.965 1.6-3.2-1.6 1.2-1.6-1.2",[3489,11980],{"fill":3491,"d":11981},"M40.103-3.383c0-6.286-5.096-11.382-11.381-11.382S17.34-9.669 17.34-3.383s5.096 11.38 11.382 11.38 11.38-5.095 11.38-11.38Zm-11.381 0",[2039,11983,11985],{"transform":11984},"translate(54.593 31.353)",[3489,11986],{"d":11962,"fill":3486,"stroke":3486,"className":11987,"style":3504},[3503],[3489,11989],{"fill":3491,"d":11990},"M28.722-48.708v31.744",[3489,11992],{"stroke":3491,"d":11993},"m28.722-14.965 1.6-3.2-1.6 1.2-1.6-1.2",[3489,11995],{"fill":3491,"d":11996},"M68.555-3.383c0-6.286-5.095-11.382-11.38-11.382S45.792-9.669 45.792-3.383s5.096 11.38 11.381 11.38 11.381-5.095 11.381-11.38Zm-11.38 0",[2039,11998,12000],{"transform":11999},"translate(83.046 31.353)",[3489,12001],{"d":11922,"fill":3486,"stroke":3486,"className":12002,"style":3504},[3503],[3489,12004],{"fill":3491,"d":12005},"M57.174-48.708v31.744",[3489,12007],{"stroke":3491,"d":12008},"m57.174-14.965 1.6-3.2-1.6 1.2-1.6-1.2",[3489,12010],{"fill":3491,"d":12011},"M97.008-3.383c0-6.286-5.095-11.382-11.381-11.382S74.246-9.669 74.246-3.383s5.095 11.38 11.381 11.38 11.381-5.095 11.381-11.38Zm-11.381 0",[2039,12013,12015],{"transform":12014},"translate(111.498 31.353)",[3489,12016],{"d":11952,"fill":3486,"stroke":3486,"className":12017,"style":3504},[3503],[3489,12019],{"fill":3491,"d":12020},"M85.627-48.708v31.744",[3489,12022],{"stroke":3491,"d":12023},"m85.627-14.965 1.6-3.2-1.6 1.2-1.6-1.2",[3489,12025],{"fill":3491,"d":12026},"M125.46-3.383c0-6.286-5.095-11.382-11.38-11.382s-11.381 5.096-11.381 11.382 5.095 11.38 11.38 11.38 11.382-5.095 11.382-11.38Zm-11.38 0",[2039,12028,12030],{"transform":12029},"translate(139.951 31.353)",[3489,12031],{"d":11912,"fill":3486,"stroke":3486,"className":12032,"style":3504},[3503],[3489,12034],{"fill":3491,"d":12035},"M114.08-48.708v31.744",[3489,12037],{"stroke":3491,"d":12038},"m114.08-14.965 1.6-3.2-1.6 1.2-1.6-1.2",[3489,12040],{"fill":3491,"d":12041},"M153.914-3.383c0-6.286-5.096-11.382-11.382-11.382s-11.38 5.096-11.38 11.382 5.095 11.38 11.38 11.38 11.382-5.095 11.382-11.38Zm-11.382 0",[2039,12043,12045],{"transform":12044},"translate(168.404 31.353)",[3489,12046],{"d":11942,"fill":3486,"stroke":3486,"className":12047,"style":3504},[3503],[3489,12049],{"fill":3491,"d":12050},"M142.532-48.708v31.744",[3489,12052],{"stroke":3491,"d":12053},"m142.532-14.965 1.6-3.2-1.6 1.2-1.6-1.2",[2039,12055,12056],{"stroke":3639,"style":3640},[3489,12057],{"fill":3491,"d":11946},[2039,12059,12060],{"stroke":3639,"style":3640},[3489,12061],{"fill":3491,"d":12026},[2039,12063,12064],{"fill":3639,"stroke":3639},[2039,12065,12066,12073,12079,12085,12091],{"fill":3639,"stroke":3491,"fontSize":3689},[2039,12067,12069],{"transform":12068},"translate(127.152 68.02)",[3489,12070],{"d":12071,"fill":3639,"stroke":3639,"className":12072,"style":3697},"M-27.391-32.469Q-27.200-32.195-26.844-32.068Q-26.489-31.941-26.106-31.941Q-25.770-31.941-25.561-32.127Q-25.352-32.313-25.256-32.606Q-25.161-32.898-25.161-33.211Q-25.161-33.535-25.258-33.830Q-25.356-34.125-25.569-34.309Q-25.782-34.492-26.114-34.492L-26.680-34.492Q-26.711-34.492-26.741-34.522Q-26.770-34.551-26.770-34.578L-26.770-34.660Q-26.770-34.695-26.741-34.721Q-26.711-34.746-26.680-34.746L-26.200-34.781Q-25.914-34.781-25.717-34.986Q-25.520-35.191-25.424-35.486Q-25.329-35.781-25.329-36.059Q-25.329-36.438-25.528-36.676Q-25.727-36.914-26.106-36.914Q-26.426-36.914-26.715-36.807Q-27.004-36.699-27.168-36.477Q-26.989-36.477-26.866-36.350Q-26.743-36.223-26.743-36.051Q-26.743-35.879-26.868-35.754Q-26.993-35.629-27.168-35.629Q-27.340-35.629-27.465-35.754Q-27.590-35.879-27.590-36.051Q-27.590-36.418-27.366-36.666Q-27.141-36.914-26.801-37.035Q-26.461-37.156-26.106-37.156Q-25.758-37.156-25.395-37.035Q-25.032-36.914-24.784-36.664Q-24.536-36.414-24.536-36.059Q-24.536-35.574-24.854-35.191Q-25.172-34.809-25.649-34.637Q-25.098-34.527-24.698-34.141Q-24.297-33.754-24.297-33.219Q-24.297-32.762-24.561-32.406Q-24.825-32.051-25.247-31.859Q-25.668-31.668-26.106-31.668Q-26.516-31.668-26.909-31.803Q-27.301-31.938-27.567-32.223Q-27.832-32.508-27.832-32.926Q-27.832-33.121-27.700-33.250Q-27.567-33.379-27.375-33.379Q-27.250-33.379-27.147-33.320Q-27.043-33.262-26.981-33.156Q-26.918-33.051-26.918-32.926Q-26.918-32.731-27.053-32.600Q-27.188-32.469-27.391-32.469",[3503],[2039,12074,12075],{"transform":12068},[3489,12076],{"d":12077,"fill":3639,"stroke":3639,"className":12078,"style":3697},"M-21.326-33.844Q-21.326-34.027-21.190-34.164Q-21.053-34.301-20.861-34.301Q-20.670-34.301-20.537-34.168Q-20.404-34.035-20.404-33.844Q-20.404-33.652-20.541-33.516Q-20.678-33.379-20.861-33.379Q-21.045-33.379-21.186-33.520Q-21.326-33.660-21.326-33.844",[3503],[2039,12080,12081],{"transform":12068},[3489,12082],{"d":12083,"fill":3639,"stroke":3639,"className":12084,"style":3697},"M-16.955-32.715L-17.018-32.715Q-16.877-32.363-16.553-32.152Q-16.229-31.941-15.842-31.941Q-15.248-31.941-14.998-32.375Q-14.748-32.809-14.748-33.445Q-14.748-34.039-14.918-34.486Q-15.088-34.934-15.588-34.934Q-15.885-34.934-16.090-34.854Q-16.295-34.773-16.397-34.682Q-16.498-34.590-16.613-34.457Q-16.729-34.324-16.779-34.309L-16.850-34.309Q-16.936-34.332-16.955-34.410L-16.955-37.059Q-16.924-37.156-16.850-37.156Q-16.834-37.156-16.826-37.154Q-16.818-37.152-16.811-37.148Q-16.225-36.898-15.627-36.898Q-15.045-36.898-14.428-37.156L-14.404-37.156Q-14.361-37.156-14.334-37.131Q-14.307-37.106-14.307-37.066L-14.307-36.988Q-14.307-36.957-14.330-36.934Q-14.627-36.582-15.049-36.385Q-15.471-36.188-15.932-36.188Q-16.279-36.188-16.658-36.293L-16.658-34.797Q-16.440-34.992-16.164-35.090Q-15.889-35.188-15.588-35.188Q-15.131-35.188-14.762-34.940Q-14.393-34.691-14.186-34.287Q-13.979-33.883-13.979-33.438Q-13.979-32.949-14.234-32.541Q-14.490-32.133-14.922-31.900Q-15.354-31.668-15.842-31.668Q-16.236-31.668-16.592-31.859Q-16.947-32.051-17.158-32.385Q-17.369-32.719-17.369-33.133Q-17.369-33.313-17.252-33.426Q-17.135-33.539-16.955-33.539Q-16.838-33.539-16.746-33.486Q-16.654-33.434-16.602-33.342Q-16.549-33.250-16.549-33.133Q-16.549-32.949-16.662-32.832Q-16.775-32.715-16.955-32.715",[3503],[2039,12086,12087],{"transform":12068},[3489,12088],{"d":12089,"fill":3639,"stroke":3639,"className":12090,"style":3697},"M-5.223-31.965L-10.536-31.965Q-10.614-31.977-10.663-32.025Q-10.711-32.074-10.711-32.148Q-10.711-32.223-10.663-32.272Q-10.614-32.320-10.536-32.332L-5.223-32.332Q-5.055-32.301-5.055-32.148Q-5.055-31.996-5.223-31.965M-5.223-33.652L-10.536-33.652Q-10.614-33.664-10.663-33.713Q-10.711-33.762-10.711-33.836Q-10.711-33.910-10.663-33.959Q-10.614-34.008-10.536-34.020L-5.223-34.020Q-5.055-33.988-5.055-33.836Q-5.055-33.684-5.223-33.652M-5.223-35.340L-10.536-35.340Q-10.614-35.352-10.663-35.400Q-10.711-35.449-10.711-35.523Q-10.711-35.598-10.663-35.647Q-10.614-35.695-10.536-35.707L-5.223-35.707Q-5.055-35.676-5.055-35.523Q-5.055-35.371-5.223-35.340",[3503],[2039,12092,12093],{"transform":12068},[3489,12094],{"d":12095,"fill":3639,"stroke":3639,"className":12096,"style":3697},"M1.383-31.836L-1.410-31.836L-1.410-32.133Q-0.348-32.133-0.348-32.395L-0.348-36.563Q-0.777-36.348-1.457-36.348L-1.457-36.645Q-0.438-36.645 0.078-37.156L0.223-37.156Q0.297-37.137 0.316-37.059L0.316-32.395Q0.316-32.133 1.383-32.133",[3503],[2039,12098,12100],{"transform":12099},"translate(-10.793 -26.73)",[3489,12101],{"d":12102,"fill":3486,"stroke":3486,"className":12103,"style":3697},"M-26.680-31.758Q-27.036-31.758-27.305-31.938Q-27.575-32.117-27.715-32.412Q-27.856-32.707-27.856-33.066Q-27.856-33.453-27.694-33.867Q-27.532-34.281-27.248-34.619Q-26.965-34.957-26.596-35.160Q-26.227-35.363-25.825-35.363Q-25.332-35.363-25.055-34.914Q-25.024-35.047-24.920-35.129Q-24.817-35.211-24.688-35.211Q-24.575-35.211-24.495-35.141Q-24.414-35.070-24.414-34.957Q-24.414-34.930-24.430-34.867L-24.985-32.668Q-25.024-32.422-25.024-32.371Q-25.024-32.012-24.778-32.012Q-24.633-32.012-24.532-32.119Q-24.430-32.227-24.366-32.381Q-24.301-32.535-24.252-32.725Q-24.204-32.914-24.184-33.012Q-24.157-33.082-24.094-33.082L-23.993-33.082Q-23.954-33.082-23.928-33.049Q-23.903-33.016-23.903-32.988Q-23.903-32.973-23.911-32.957Q-24.024-32.465-24.223-32.111Q-24.422-31.758-24.793-31.758Q-25.075-31.758-25.301-31.900Q-25.528-32.043-25.610-32.301Q-25.832-32.059-26.106-31.908Q-26.379-31.758-26.680-31.758M-26.664-32.012Q-26.454-32.012-26.245-32.125Q-26.036-32.238-25.866-32.412Q-25.696-32.586-25.567-32.781Q-25.579-32.766-25.588-32.752Q-25.598-32.738-25.610-32.723L-25.176-34.445Q-25.215-34.625-25.301-34.775Q-25.387-34.926-25.524-35.018Q-25.661-35.109-25.840-35.109Q-26.176-35.109-26.448-34.828Q-26.719-34.547-26.879-34.172Q-27.004-33.852-27.102-33.432Q-27.200-33.012-27.200-32.731Q-27.200-32.441-27.067-32.227Q-26.934-32.012-26.664-32.012",[3503],[2039,12105,12106,12112,12118,12124,12130],{"stroke":3491,"fontSize":3689},[2039,12107,12109],{"transform":12108},"translate(-34.086 31.23)",[3489,12110],{"d":12071,"fill":3486,"stroke":3486,"className":12111,"style":3697},[3503],[2039,12113,12114],{"transform":12108},[3489,12115],{"d":12116,"fill":3486,"stroke":3486,"className":12117,"style":3697},"M-22.430-31.758Q-22.786-31.758-23.055-31.938Q-23.325-32.117-23.465-32.412Q-23.606-32.707-23.606-33.066Q-23.606-33.453-23.444-33.867Q-23.282-34.281-22.998-34.619Q-22.715-34.957-22.346-35.160Q-21.977-35.363-21.575-35.363Q-21.082-35.363-20.805-34.914Q-20.774-35.047-20.670-35.129Q-20.567-35.211-20.438-35.211Q-20.325-35.211-20.245-35.141Q-20.164-35.070-20.164-34.957Q-20.164-34.930-20.180-34.867L-20.735-32.668Q-20.774-32.422-20.774-32.371Q-20.774-32.012-20.528-32.012Q-20.383-32.012-20.282-32.119Q-20.180-32.227-20.116-32.381Q-20.051-32.535-20.002-32.725Q-19.954-32.914-19.934-33.012Q-19.907-33.082-19.844-33.082L-19.743-33.082Q-19.704-33.082-19.678-33.049Q-19.653-33.016-19.653-32.988Q-19.653-32.973-19.661-32.957Q-19.774-32.465-19.973-32.111Q-20.172-31.758-20.543-31.758Q-20.825-31.758-21.051-31.900Q-21.278-32.043-21.360-32.301Q-21.582-32.059-21.856-31.908Q-22.129-31.758-22.430-31.758M-22.414-32.012Q-22.204-32.012-21.995-32.125Q-21.786-32.238-21.616-32.412Q-21.446-32.586-21.317-32.781Q-21.329-32.766-21.338-32.752Q-21.348-32.738-21.360-32.723L-20.926-34.445Q-20.965-34.625-21.051-34.775Q-21.137-34.926-21.274-35.018Q-21.411-35.109-21.590-35.109Q-21.926-35.109-22.198-34.828Q-22.469-34.547-22.629-34.172Q-22.754-33.852-22.852-33.432Q-22.950-33.012-22.950-32.731Q-22.950-32.441-22.817-32.227Q-22.684-32.012-22.414-32.012",[3503],[2039,12119,12120],{"transform":12108},[3489,12121],{"d":12122,"fill":3486,"stroke":3486,"className":12123,"style":3697},"M-14.890-31.836L-16.745-31.836L-16.745-32.133Q-16.472-32.133-16.304-32.180Q-16.136-32.227-16.136-32.395L-16.136-34.531Q-16.136-34.746-16.199-34.842Q-16.261-34.938-16.380-34.959Q-16.499-34.981-16.745-34.981L-16.745-35.277L-15.554-35.363L-15.554-34.629Q-15.441-34.844-15.247-35.012Q-15.054-35.180-14.816-35.272Q-14.578-35.363-14.324-35.363Q-13.363-35.363-13.187-34.652Q-13.003-34.981-12.675-35.172Q-12.347-35.363-11.968-35.363Q-10.792-35.363-10.792-34.285L-10.792-32.395Q-10.792-32.227-10.624-32.180Q-10.456-32.133-10.187-32.133L-10.187-31.836L-12.042-31.836L-12.042-32.133Q-11.769-32.133-11.601-32.178Q-11.433-32.223-11.433-32.395L-11.433-34.270Q-11.433-34.656-11.558-34.883Q-11.683-35.109-12.035-35.109Q-12.339-35.109-12.595-34.947Q-12.851-34.785-12.999-34.516Q-13.148-34.246-13.148-33.949L-13.148-32.395Q-13.148-32.227-12.978-32.180Q-12.808-32.133-12.538-32.133L-12.538-31.836L-14.394-31.836L-14.394-32.133Q-14.120-32.133-13.953-32.180Q-13.785-32.227-13.785-32.395L-13.785-34.270Q-13.785-34.656-13.910-34.883Q-14.035-35.109-14.386-35.109Q-14.691-35.109-14.947-34.947Q-15.203-34.785-15.351-34.516Q-15.499-34.246-15.499-33.949L-15.499-32.395Q-15.499-32.227-15.329-32.180Q-15.160-32.133-14.890-32.133L-14.890-31.836M-9.742-33.531Q-9.742-34.035-9.486-34.467Q-9.230-34.898-8.794-35.150Q-8.359-35.402-7.859-35.402Q-7.472-35.402-7.130-35.258Q-6.788-35.113-6.527-34.852Q-6.265-34.590-6.122-34.254Q-5.980-33.918-5.980-33.531Q-5.980-33.039-6.244-32.629Q-6.507-32.219-6.937-31.988Q-7.367-31.758-7.859-31.758Q-8.351-31.758-8.785-31.990Q-9.218-32.223-9.480-32.631Q-9.742-33.039-9.742-33.531M-7.859-32.035Q-7.402-32.035-7.150-32.258Q-6.898-32.481-6.810-32.832Q-6.722-33.184-6.722-33.629Q-6.722-34.059-6.816-34.397Q-6.910-34.734-7.163-34.941Q-7.417-35.148-7.859-35.148Q-8.507-35.148-8.751-34.732Q-8.995-34.316-8.995-33.629Q-8.995-33.184-8.908-32.832Q-8.820-32.481-8.568-32.258Q-8.316-32.035-7.859-32.035",[3503],[2039,12125,12126],{"transform":12108},[3489,12127],{"d":12128,"fill":3486,"stroke":3486,"className":12129,"style":3697},"M-3.433-31.758Q-3.914-31.758-4.322-32.002Q-4.730-32.246-4.968-32.660Q-5.207-33.074-5.207-33.563Q-5.207-34.055-4.949-34.471Q-4.691-34.887-4.259-35.125Q-3.828-35.363-3.336-35.363Q-2.715-35.363-2.265-34.926L-2.265-36.555Q-2.265-36.770-2.328-36.865Q-2.390-36.961-2.508-36.982Q-2.625-37.004-2.871-37.004L-2.871-37.301L-1.648-37.387L-1.648-32.578Q-1.648-32.367-1.586-32.272Q-1.523-32.176-1.406-32.154Q-1.289-32.133-1.039-32.133L-1.039-31.836L-2.289-31.758L-2.289-32.242Q-2.754-31.758-3.433-31.758M-3.367-32.012Q-3.027-32.012-2.734-32.203Q-2.441-32.395-2.289-32.691L-2.289-34.523Q-2.437-34.797-2.699-34.953Q-2.961-35.109-3.273-35.109Q-3.898-35.109-4.181-34.662Q-4.465-34.215-4.465-33.555Q-4.465-32.910-4.213-32.461Q-3.961-32.012-3.367-32.012",[3503],[2039,12131,12132],{"transform":12108},[3489,12133],{"d":12134,"fill":3486,"stroke":3486,"className":12135,"style":3697},"M3.091-32.059Q3.091-32.484 3.175-32.934Q3.259-33.383 3.415-33.801Q3.572-34.219 3.786-34.606Q4.001-34.992 4.275-35.348L5.001-36.301L4.091-36.301Q2.595-36.301 2.556-36.262Q2.486-36.180 2.439-35.990Q2.392-35.801 2.349-35.523L2.068-35.523L2.337-37.242L2.618-37.242L2.618-37.219Q2.618-37.074 3.136-37.031Q3.654-36.988 4.146-36.988L5.716-36.988L5.716-36.797Q5.708-36.758 5.693-36.731L4.517-35.195Q4.216-34.777 4.077-34.270Q3.939-33.762 3.907-33.268Q3.876-32.773 3.876-32.059Q3.876-31.953 3.825-31.861Q3.775-31.770 3.683-31.719Q3.591-31.668 3.482-31.668Q3.376-31.668 3.284-31.719Q3.193-31.770 3.142-31.861Q3.091-31.953 3.091-32.059",[3503],[3951,12137,12139,1451,12223,12288,12289,12304,12305],{"className":12138},[3954],[390,12140,12142],{"className":12141},[393],[390,12143,12145,12163,12181,12196],{"className":12144,"ariaHidden":398},[397],[390,12146,12148,12151,12154,12157,12160],{"className":12147},[402],[390,12149],{"className":12150,"style":836},[406],[390,12152,9094],{"className":12153},[411],[390,12155],{"className":12156,"style":431},[561],[390,12158,5289],{"className":12159},[1119],[390,12161],{"className":12162,"style":431},[561],[390,12164,12166,12169,12172,12175,12178],{"className":12165},[402],[390,12167],{"className":12168,"style":836},[406],[390,12170,9192],{"className":12171},[411],[390,12173],{"className":12174,"style":562},[561],[390,12176,8150],{"className":12177},[566],[390,12179],{"className":12180,"style":562},[561],[390,12182,12184,12187,12190,12193],{"className":12183},[402],[390,12185],{"className":12186,"style":836},[406],[390,12188,895],{"className":12189},[411],[390,12191],{"className":12192},[561,8166],[390,12194],{"className":12195,"style":8170},[561],[390,12197,12199,12202,12205,12214,12217,12220],{"className":12198},[402],[390,12200],{"className":12201,"style":554},[406],[390,12203,702],{"className":12204},[701],[390,12206,12208],{"className":12207},[411],[390,12209,12211],{"className":12210},[411],[390,12212,1126],{"className":12213},[411,696],[390,12215],{"className":12216,"style":8192},[561],[390,12218,9082],{"className":12219},[411],[390,12221,722],{"className":12222},[721],[390,12224,12226],{"className":12225},[393],[390,12227,12229,12279],{"className":12228,"ariaHidden":398},[397],[390,12230,12232,12235,12270,12273,12276],{"className":12231},[402],[390,12233],{"className":12234,"style":9052},[406],[390,12236,12238,12241],{"className":12237},[411],[390,12239,9094],{"className":12240},[411],[390,12242,12244],{"className":12243},[2905],[390,12245,12247],{"className":12246},[2909],[390,12248,12250],{"className":12249},[2914],[390,12251,12253],{"className":12252,"style":9052},[2918],[390,12254,12255,12258],{"style":3315},[390,12256],{"className":12257,"style":2927},[2926],[390,12259,12261],{"className":12260},[2931,2932,2933,2934],[390,12262,12264,12267],{"className":12263},[411,2934],[390,12265,1682],{"className":12266},[411,2934],[390,12268,895],{"className":12269},[411,2934],[390,12271],{"className":12272,"style":562},[561],[390,12274,8150],{"className":12275},[566],[390,12277],{"className":12278,"style":562},[561],[390,12280,12282,12285],{"className":12281},[402],[390,12283],{"className":12284,"style":836},[406],[390,12286,9192],{"className":12287},[411],"; multiplying by ",[390,12290,12292],{"className":12291},[393],[390,12293,12295],{"className":12294,"ariaHidden":398},[397],[390,12296,12298,12301],{"className":12297},[402],[390,12299],{"className":12300,"style":836},[406],[390,12302,9094],{"className":12303},[411]," permutes ",[390,12306,12308],{"className":12307},[393],[390,12309,12311],{"className":12310,"ariaHidden":398},[397],[390,12312,12314,12317,12320,12323,12326,12329,12332,12335,12338,12341,12344],{"className":12313},[402],[390,12315],{"className":12316,"style":554},[406],[390,12318,8350],{"className":12319},[701],[390,12321,895],{"className":12322},[411],[390,12324,710],{"className":12325},[709],[390,12327],{"className":12328,"style":714},[561],[390,12330,8373],{"className":12331},[8372],[390,12333],{"className":12334,"style":714},[561],[390,12336,710],{"className":12337},[709],[390,12339],{"className":12340,"style":714},[561],[390,12342,4499],{"className":12343},[411],[390,12345,8407],{"className":12346},[721],[2111,12348,12350],{"className":2113,"code":12349,"language":2115,"meta":376,"style":376},"caption: $\\textsc{Mod-Inverse}(a, m)$ — inverse of $a$ modulo $m$, or \"none\"\n$(g,\\ x,\\ y) \\gets \\textsc{Extended-Euclid}(a \\bmod m,\\ m)$\nif $g \\ne 1$ then\n  return \"no inverse\"   \u002F\u002F not coprime\nreturn $((x \\bmod m) + m) \\bmod m$   \u002F\u002F normalize into $[0, m)$\n",[2117,12351,12352,12357,12362,12367,12372],{"__ignoreMap":376},[390,12353,12354],{"class":2121,"line":6},[390,12355,12356],{},"caption: $\\textsc{Mod-Inverse}(a, m)$ — inverse of $a$ modulo $m$, or \"none\"\n",[390,12358,12359],{"class":2121,"line":18},[390,12360,12361],{},"$(g,\\ x,\\ y) \\gets \\textsc{Extended-Euclid}(a \\bmod m,\\ m)$\n",[390,12363,12364],{"class":2121,"line":24},[390,12365,12366],{},"if $g \\ne 1$ then\n",[390,12368,12369],{"class":2121,"line":73},[390,12370,12371],{},"  return \"no inverse\"   \u002F\u002F not coprime\n",[390,12373,12374],{"class":2121,"line":102},[390,12375,12376],{},"return $((x \\bmod m) + m) \\bmod m$   \u002F\u002F normalize into $[0, m)$\n",[381,12378,12379,12380,676,12383,12452,12453,1203],{},"The same machinery solves the general ",[457,12381,12382],{},"linear congruence",[390,12384,12386],{"className":12385},[393],[390,12387,12389,12410,12425],{"className":12388,"ariaHidden":398},[397],[390,12390,12392,12395,12398,12401,12404,12407],{"className":12391},[402],[390,12393],{"className":12394,"style":8140},[406],[390,12396,489],{"className":12397},[411,412],[390,12399,5091],{"className":12400},[411,412],[390,12402],{"className":12403,"style":562},[561],[390,12405,8150],{"className":12406},[566],[390,12408],{"className":12409,"style":562},[561],[390,12411,12413,12416,12419,12422],{"className":12412},[402],[390,12414],{"className":12415,"style":446},[406],[390,12417,671],{"className":12418},[411,412],[390,12420],{"className":12421},[561,8166],[390,12423],{"className":12424,"style":8170},[561],[390,12426,12428,12431,12434,12443,12446,12449],{"className":12427},[402],[390,12429],{"className":12430,"style":554},[406],[390,12432,702],{"className":12433},[701],[390,12435,12437],{"className":12436},[411],[390,12438,12440],{"className":12439},[411],[390,12441,1126],{"className":12442},[411,696],[390,12444],{"className":12445,"style":8192},[561],[390,12447,8057],{"className":12448},[411,412],[390,12450,722],{"className":12451},[721],". Let ",[390,12454,12456],{"className":12455},[393],[390,12457,12459,12477],{"className":12458,"ariaHidden":398},[397],[390,12460,12462,12465,12468,12471,12474],{"className":12461},[402],[390,12463],{"className":12464,"style":1521},[406],[390,12466,2039],{"className":12467,"style":1485},[411,412],[390,12469],{"className":12470,"style":562},[561],[390,12472,602],{"className":12473},[566],[390,12475],{"className":12476,"style":562},[561],[390,12478,12480,12483,12489,12492,12495,12498,12501,12504],{"className":12479},[402],[390,12481],{"className":12482,"style":554},[406],[390,12484,12486],{"className":12485},[692],[390,12487,697],{"className":12488},[411,696],[390,12490,702],{"className":12491},[701],[390,12493,489],{"className":12494},[411,412],[390,12496,710],{"className":12497},[709],[390,12499],{"className":12500,"style":714},[561],[390,12502,8057],{"className":12503},[411,412],[390,12505,722],{"className":12506},[721],[948,12508,12509],{"type":950},[381,12510,12511,676,12513,12582,12583,676,12586,12619,12620,12638,12639,12654,12655,12836,12837,12905,12906,7129,12994,1203],{},[457,12512,10479],{},[390,12514,12516],{"className":12515},[393],[390,12517,12519,12540,12555],{"className":12518,"ariaHidden":398},[397],[390,12520,12522,12525,12528,12531,12534,12537],{"className":12521},[402],[390,12523],{"className":12524,"style":8140},[406],[390,12526,489],{"className":12527},[411,412],[390,12529,5091],{"className":12530},[411,412],[390,12532],{"className":12533,"style":562},[561],[390,12535,8150],{"className":12536},[566],[390,12538],{"className":12539,"style":562},[561],[390,12541,12543,12546,12549,12552],{"className":12542},[402],[390,12544],{"className":12545,"style":446},[406],[390,12547,671],{"className":12548},[411,412],[390,12550],{"className":12551},[561,8166],[390,12553],{"className":12554,"style":8170},[561],[390,12556,12558,12561,12564,12573,12576,12579],{"className":12557},[402],[390,12559],{"className":12560,"style":554},[406],[390,12562,702],{"className":12563},[701],[390,12565,12567],{"className":12566},[411],[390,12568,12570],{"className":12569},[411],[390,12571,1126],{"className":12572},[411,696],[390,12574],{"className":12575,"style":8192},[561],[390,12577,8057],{"className":12578},[411,412],[390,12580,722],{"className":12581},[721]," is solvable ",[457,12584,12585],{},"iff",[390,12587,12589],{"className":12588},[393],[390,12590,12592,12610],{"className":12591,"ariaHidden":398},[397],[390,12593,12595,12598,12601,12604,12607],{"className":12594},[402],[390,12596],{"className":12597,"style":554},[406],[390,12599,2039],{"className":12600,"style":1485},[411,412],[390,12602],{"className":12603,"style":562},[561],[390,12605,567],{"className":12606},[566],[390,12608],{"className":12609,"style":562},[561],[390,12611,12613,12616],{"className":12612},[402],[390,12614],{"className":12615,"style":446},[406],[390,12617,671],{"className":12618},[411,412],". When it is,\nthere are ",[457,12621,12622,12623],{},"exactly ",[390,12624,12626],{"className":12625},[393],[390,12627,12629],{"className":12628,"ariaHidden":398},[397],[390,12630,12632,12635],{"className":12631},[402],[390,12633],{"className":12634,"style":1521},[406],[390,12636,2039],{"className":12637,"style":1485},[411,412]," solutions modulo ",[390,12640,12642],{"className":12641},[393],[390,12643,12645],{"className":12644,"ariaHidden":398},[397],[390,12646,12648,12651],{"className":12647},[402],[390,12649],{"className":12650,"style":407},[406],[390,12652,8057],{"className":12653},[411,412],". A particular solution is\n",[390,12656,12658],{"className":12657},[393],[390,12659,12661,12717,12747,12815],{"className":12660,"ariaHidden":398},[397],[390,12662,12664,12668,12708,12711,12714],{"className":12663},[402],[390,12665],{"className":12666,"style":12667},[406],"height:0.5806em;vertical-align:-0.15em;",[390,12669,12671,12674],{"className":12670},[411],[390,12672,5091],{"className":12673},[411,412],[390,12675,12677],{"className":12676},[2905],[390,12678,12680,12700],{"className":12679},[2909,2910],[390,12681,12683,12697],{"className":12682},[2914],[390,12684,12686],{"className":12685,"style":7643},[2918],[390,12687,12688,12691],{"style":7646},[390,12689],{"className":12690,"style":2927},[2926],[390,12692,12694],{"className":12693},[2931,2932,2933,2934],[390,12695,757],{"className":12696},[411,2934],[390,12698,2951],{"className":12699},[2950],[390,12701,12703],{"className":12702},[2914],[390,12704,12706],{"className":12705,"style":3005},[2918],[390,12707],{},[390,12709],{"className":12710,"style":562},[561],[390,12712,602],{"className":12713},[566],[390,12715],{"className":12716,"style":562},[561],[390,12718,12720,12723,12726,12729,12732,12735,12738,12741,12744],{"className":12719},[402],[390,12721],{"className":12722,"style":554},[406],[390,12724,702],{"className":12725},[701],[390,12727,671],{"className":12728},[411,412],[390,12730,1550],{"className":12731},[411],[390,12733,2039],{"className":12734,"style":1485},[411,412],[390,12736,722],{"className":12737},[721],[390,12739],{"className":12740,"style":431},[561],[390,12742,5289],{"className":12743},[1119],[390,12745],{"className":12746,"style":431},[561],[390,12748,12750,12753,12794,12797,12800,12809,12812],{"className":12749},[402],[390,12751],{"className":12752,"style":9052},[406],[390,12754,12756,12759],{"className":12755},[411],[390,12757,489],{"className":12758},[411,412],[390,12760,12762],{"className":12761},[2905],[390,12763,12765],{"className":12764},[2909],[390,12766,12768],{"className":12767},[2914],[390,12769,12771],{"className":12770,"style":9052},[2918],[390,12772,12773,12776],{"style":3315},[390,12774],{"className":12775,"style":2927},[2926],[390,12777,12779],{"className":12778},[2931,2932,2933,2934],[390,12780,12782,12785],{"className":12781},[411,2934],[390,12783,5535],{"className":12784},[411,2934],[390,12786,12788,12791],{"className":12787},[411,2934],[390,12789,1682],{"className":12790},[411,2934],[390,12792,895],{"className":12793},[411,2934],[390,12795],{"className":12796,"style":1112},[561],[390,12798],{"className":12799,"style":431},[561],[390,12801,12803],{"className":12802},[1119],[390,12804,12806],{"className":12805},[411],[390,12807,1126],{"className":12808},[411,696],[390,12810],{"className":12811,"style":1112},[561],[390,12813],{"className":12814,"style":431},[561],[390,12816,12818,12821,12824,12827,12830,12833],{"className":12817},[402],[390,12819],{"className":12820,"style":554},[406],[390,12822,702],{"className":12823},[701],[390,12825,8057],{"className":12826},[411,412],[390,12828,1550],{"className":12829},[411],[390,12831,2039],{"className":12832,"style":1485},[411,412],[390,12834,722],{"className":12835},[721],", where ",[390,12838,12840],{"className":12839},[393],[390,12841,12843,12890],{"className":12842,"ariaHidden":398},[397],[390,12844,12846,12849,12881,12884,12887],{"className":12845},[402],[390,12847],{"className":12848,"style":5520},[406],[390,12850,12852,12855],{"className":12851},[411],[390,12853,489],{"className":12854},[411,412],[390,12856,12858],{"className":12857},[2905],[390,12859,12861],{"className":12860},[2909],[390,12862,12864],{"className":12863},[2914],[390,12865,12867],{"className":12866,"style":5520},[2918],[390,12868,12869,12872],{"style":3315},[390,12870],{"className":12871,"style":2927},[2926],[390,12873,12875],{"className":12874},[2931,2932,2933,2934],[390,12876,12878],{"className":12877},[411,2934],[390,12879,5535],{"className":12880},[411,2934],[390,12882],{"className":12883,"style":562},[561],[390,12885,602],{"className":12886},[566],[390,12888],{"className":12889,"style":562},[561],[390,12891,12893,12896,12899,12902],{"className":12892},[402],[390,12894],{"className":12895,"style":554},[406],[390,12897,489],{"className":12898},[411,412],[390,12900,1550],{"className":12901},[411],[390,12903,2039],{"className":12904,"style":1485},[411,412],"; the full solution set\nis ",[390,12907,12909],{"className":12908},[393],[390,12910,12912,12967],{"className":12911,"ariaHidden":398},[397],[390,12913,12915,12918,12958,12961,12964],{"className":12914},[402],[390,12916],{"className":12917,"style":7621},[406],[390,12919,12921,12924],{"className":12920},[411],[390,12922,5091],{"className":12923},[411,412],[390,12925,12927],{"className":12926},[2905],[390,12928,12930,12950],{"className":12929},[2909,2910],[390,12931,12933,12947],{"className":12932},[2914],[390,12934,12936],{"className":12935,"style":7643},[2918],[390,12937,12938,12941],{"style":7646},[390,12939],{"className":12940,"style":2927},[2926],[390,12942,12944],{"className":12943},[2931,2932,2933,2934],[390,12945,757],{"className":12946},[411,2934],[390,12948,2951],{"className":12949},[2950],[390,12951,12953],{"className":12952},[2914],[390,12954,12956],{"className":12955,"style":3005},[2918],[390,12957],{},[390,12959],{"className":12960,"style":431},[561],[390,12962,1495],{"className":12963},[1119],[390,12965],{"className":12966,"style":431},[561],[390,12968,12970,12973,12976,12979,12982,12985,12988,12991],{"className":12969},[402],[390,12971],{"className":12972,"style":554},[406],[390,12974,616],{"className":12975,"style":615},[411,412],[390,12977],{"className":12978,"style":714},[561],[390,12980,702],{"className":12981},[701],[390,12983,8057],{"className":12984},[411,412],[390,12986,1550],{"className":12987},[411],[390,12989,2039],{"className":12990,"style":1485},[411,412],[390,12992,722],{"className":12993},[721],[390,12995,12997],{"className":12996},[393],[390,12998,13000,13018,13067],{"className":12999,"ariaHidden":398},[397],[390,13001,13003,13006,13009,13012,13015],{"className":13002},[402],[390,13004],{"className":13005,"style":446},[406],[390,13007,616],{"className":13008,"style":615},[411,412],[390,13010],{"className":13011,"style":562},[561],[390,13013,602],{"className":13014},[566],[390,13016],{"className":13017,"style":562},[561],[390,13019,13021,13025,13028,13031,13034,13037,13040,13043,13046,13049,13052,13055,13058,13061,13064],{"className":13020},[402],[390,13022],{"className":13023,"style":13024},[406],"height:0.8389em;vertical-align:-0.1944em;",[390,13026,757],{"className":13027},[411],[390,13029,710],{"className":13030},[709],[390,13032],{"className":13033,"style":714},[561],[390,13035,895],{"className":13036},[411],[390,13038,710],{"className":13039},[709],[390,13041],{"className":13042,"style":714},[561],[390,13044,8373],{"className":13045},[8372],[390,13047],{"className":13048,"style":714},[561],[390,13050,710],{"className":13051},[709],[390,13053],{"className":13054,"style":714},[561],[390,13056,2039],{"className":13057,"style":1485},[411,412],[390,13059],{"className":13060,"style":431},[561],[390,13062,1682],{"className":13063},[1119],[390,13065],{"className":13066,"style":431},[561],[390,13068,13070,13073],{"className":13069},[402],[390,13071],{"className":13072,"style":836},[406],[390,13074,895],{"className":13075},[411],[381,13077,13078,13079,13112,13113,13163,13164,13265,13266,13281],{},"When ",[390,13080,13082],{"className":13081},[393],[390,13083,13085,13103],{"className":13084,"ariaHidden":398},[397],[390,13086,13088,13091,13094,13097,13100],{"className":13087},[402],[390,13089],{"className":13090,"style":1521},[406],[390,13092,2039],{"className":13093,"style":1485},[411,412],[390,13095],{"className":13096,"style":562},[561],[390,13098,602],{"className":13099},[566],[390,13101],{"className":13102,"style":562},[561],[390,13104,13106,13109],{"className":13105},[402],[390,13107],{"className":13108,"style":836},[406],[390,13110,895],{"className":13111},[411]," this reduces to ",[462,13114,13115,13116],{},"multiply both sides by ",[390,13117,13119],{"className":13118},[393],[390,13120,13122],{"className":13121,"ariaHidden":398},[397],[390,13123,13125,13128],{"className":13124},[402],[390,13126],{"className":13127,"style":9052},[406],[390,13129,13131,13134],{"className":13130},[411],[390,13132,489],{"className":13133},[411,412],[390,13135,13137],{"className":13136},[2905],[390,13138,13140],{"className":13139},[2909],[390,13141,13143],{"className":13142},[2914],[390,13144,13146],{"className":13145,"style":9052},[2918],[390,13147,13148,13151],{"style":3315},[390,13149],{"className":13150,"style":2927},[2926],[390,13152,13154],{"className":13153},[2931,2932,2933,2934],[390,13155,13157,13160],{"className":13156},[411,2934],[390,13158,1682],{"className":13159},[411,2934],[390,13161,895],{"className":13162},[411,2934]," and yields the\nsingle solution ",[390,13165,13167],{"className":13166},[393],[390,13168,13170,13188,13238],{"className":13169,"ariaHidden":398},[397],[390,13171,13173,13176,13179,13182,13185],{"className":13172},[402],[390,13174],{"className":13175,"style":8140},[406],[390,13177,5091],{"className":13178},[411,412],[390,13180],{"className":13181,"style":562},[561],[390,13183,8150],{"className":13184},[566],[390,13186],{"className":13187,"style":562},[561],[390,13189,13191,13194,13229,13232,13235],{"className":13190},[402],[390,13192],{"className":13193,"style":9052},[406],[390,13195,13197,13200],{"className":13196},[411],[390,13198,489],{"className":13199},[411,412],[390,13201,13203],{"className":13202},[2905],[390,13204,13206],{"className":13205},[2909],[390,13207,13209],{"className":13208},[2914],[390,13210,13212],{"className":13211,"style":9052},[2918],[390,13213,13214,13217],{"style":3315},[390,13215],{"className":13216,"style":2927},[2926],[390,13218,13220],{"className":13219},[2931,2932,2933,2934],[390,13221,13223,13226],{"className":13222},[411,2934],[390,13224,1682],{"className":13225},[411,2934],[390,13227,895],{"className":13228},[411,2934],[390,13230,671],{"className":13231},[411,412],[390,13233],{"className":13234},[561,8166],[390,13236],{"className":13237,"style":8170},[561],[390,13239,13241,13244,13247,13256,13259,13262],{"className":13240},[402],[390,13242],{"className":13243,"style":554},[406],[390,13245,702],{"className":13246},[701],[390,13248,13250],{"className":13249},[411],[390,13251,13253],{"className":13252},[411],[390,13254,1126],{"className":13255},[411,696],[390,13257],{"className":13258,"style":8192},[561],[390,13260,8057],{"className":13261},[411,412],[390,13263,722],{"className":13264},[721],", the everyday case. The general count\n",[390,13267,13269],{"className":13268},[393],[390,13270,13272],{"className":13271,"ariaHidden":398},[397],[390,13273,13275,13278],{"className":13274},[402],[390,13276],{"className":13277,"style":1521},[406],[390,13279,2039],{"className":13280,"style":1485},[411,412]," is what you reach for when the modulus and coefficient share a factor.",[467,13283,13285],{"id":13284},"takeaways","Takeaways",[13287,13288,13289,13594,13654,13877,13927],"ul",{},[9870,13290,13291,13329,13330,13332,13333,13441,13442,13496,13497,490,13527,13590,13591,1203],{},[457,13292,13293],{},[390,13294,13296],{"className":13295},[393],[390,13297,13299],{"className":13298,"ariaHidden":398},[397],[390,13300,13302,13305,13311,13314,13317,13320,13323,13326],{"className":13301},[402],[390,13303],{"className":13304,"style":554},[406],[390,13306,13308],{"className":13307},[692],[390,13309,697],{"className":13310},[411,696],[390,13312,702],{"className":13313},[701],[390,13315,489],{"className":13316},[411,412],[390,13318,710],{"className":13319},[709],[390,13321],{"className":13322,"style":714},[561],[390,13324,671],{"className":13325},[411,412],[390,13327,722],{"className":13328},[721]," is computed by ",[457,13331,943],{}," via\n",[390,13334,13336],{"className":13335},[393],[390,13337,13339,13378,13429],{"className":13338,"ariaHidden":398},[397],[390,13340,13342,13345,13351,13354,13357,13360,13363,13366,13369,13372,13375],{"className":13341},[402],[390,13343],{"className":13344,"style":554},[406],[390,13346,13348],{"className":13347},[692],[390,13349,697],{"className":13350},[411,696],[390,13352,702],{"className":13353},[701],[390,13355,489],{"className":13356},[411,412],[390,13358,710],{"className":13359},[709],[390,13361],{"className":13362,"style":714},[561],[390,13364,671],{"className":13365},[411,412],[390,13367,722],{"className":13368},[721],[390,13370],{"className":13371,"style":562},[561],[390,13373,602],{"className":13374},[566],[390,13376],{"className":13377,"style":562},[561],[390,13379,13381,13384,13390,13393,13396,13399,13402,13405,13408,13411,13414,13423,13426],{"className":13380},[402],[390,13382],{"className":13383,"style":554},[406],[390,13385,13387],{"className":13386},[692],[390,13388,697],{"className":13389},[411,696],[390,13391,702],{"className":13392},[701],[390,13394,671],{"className":13395},[411,412],[390,13397,710],{"className":13398},[709],[390,13400],{"className":13401,"style":714},[561],[390,13403],{"className":13404,"style":714},[561],[390,13406,489],{"className":13407},[411,412],[390,13409],{"className":13410,"style":1112},[561],[390,13412],{"className":13413,"style":431},[561],[390,13415,13417],{"className":13416},[1119],[390,13418,13420],{"className":13419},[411],[390,13421,1126],{"className":13422},[411,696],[390,13424],{"className":13425,"style":1112},[561],[390,13427],{"className":13428,"style":431},[561],[390,13430,13432,13435,13438],{"className":13431},[402],[390,13433],{"className":13434,"style":554},[406],[390,13436,671],{"className":13437},[411,412],[390,13439,722],{"className":13440},[721],", base ",[390,13443,13445],{"className":13444},[393],[390,13446,13448,13487],{"className":13447,"ariaHidden":398},[397],[390,13449,13451,13454,13460,13463,13466,13469,13472,13475,13478,13481,13484],{"className":13450},[402],[390,13452],{"className":13453,"style":554},[406],[390,13455,13457],{"className":13456},[692],[390,13458,697],{"className":13459},[411,696],[390,13461,702],{"className":13462},[701],[390,13464,489],{"className":13465},[411,412],[390,13467,710],{"className":13468},[709],[390,13470],{"className":13471,"style":714},[561],[390,13473,757],{"className":13474},[411],[390,13476,722],{"className":13477},[721],[390,13479],{"className":13480,"style":562},[561],[390,13482,602],{"className":13483},[566],[390,13485],{"className":13486,"style":562},[561],[390,13488,13490,13493],{"className":13489},[402],[390,13491],{"className":13492,"style":407},[406],[390,13494,489],{"className":13495},[411,412],"; the recurrence is exact\nbecause ",[390,13498,13500],{"className":13499},[393],[390,13501,13503],{"className":13502,"ariaHidden":398},[397],[390,13504,13506,13509,13512,13515,13518,13521,13524],{"className":13505},[402],[390,13507],{"className":13508,"style":554},[406],[390,13510,702],{"className":13511},[701],[390,13513,489],{"className":13514},[411,412],[390,13516,710],{"className":13517},[709],[390,13519],{"className":13520,"style":714},[561],[390,13522,671],{"className":13523},[411,412],[390,13525,722],{"className":13526},[721],[390,13528,13530],{"className":13529},[393],[390,13531,13533,13578],{"className":13532,"ariaHidden":398},[397],[390,13534,13536,13539,13542,13545,13548,13551,13554,13557,13560,13563,13572,13575],{"className":13535},[402],[390,13537],{"className":13538,"style":554},[406],[390,13540,702],{"className":13541},[701],[390,13543,671],{"className":13544},[411,412],[390,13546,710],{"className":13547},[709],[390,13549],{"className":13550,"style":714},[561],[390,13552],{"className":13553,"style":714},[561],[390,13555,489],{"className":13556},[411,412],[390,13558],{"className":13559,"style":1112},[561],[390,13561],{"className":13562,"style":431},[561],[390,13564,13566],{"className":13565},[1119],[390,13567,13569],{"className":13568},[411],[390,13570,1126],{"className":13571},[411,696],[390,13573],{"className":13574,"style":1112},[561],[390,13576],{"className":13577,"style":431},[561],[390,13579,13581,13584,13587],{"className":13580},[402],[390,13582],{"className":13583,"style":554},[406],[390,13585,671],{"className":13586},[411,412],[390,13588,722],{"className":13589},[721]," have ",[457,13592,13593],{},"identical common divisors",[9870,13595,13596,13597,13650,13651,1203],{},"Euclid runs in ",[457,13598,13599],{},[390,13600,13602],{"className":13601},[393],[390,13603,13605],{"className":13604,"ariaHidden":398},[397],[390,13606,13608,13611,13614,13617,13623,13626,13632,13635,13638,13641,13644,13647],{"className":13607},[402],[390,13609],{"className":13610,"style":554},[406],[390,13612,2731],{"className":13613,"style":1401},[411,412],[390,13615,702],{"className":13616},[701],[390,13618,13620],{"className":13619},[692],[390,13621,2742],{"className":13622,"style":2741},[411,696],[390,13624],{"className":13625,"style":714},[561],[390,13627,13629],{"className":13628},[692],[390,13630,2788],{"className":13631},[411,696],[390,13633,702],{"className":13634},[701],[390,13636,489],{"className":13637},[411,412],[390,13639,710],{"className":13640},[709],[390,13642],{"className":13643,"style":714},[561],[390,13645,671],{"className":13646},[411,412],[390,13648,2807],{"className":13649},[721]," iterations because two steps at least\nhalve the argument; the ",[457,13652,13653],{},"worst case is consecutive Fibonacci numbers",[9870,13655,13656,13659,13660,5102,13684,11306,13762,12582,13819,13876],{},[457,13657,13658],{},"Extended Euclid"," returns Bézout coefficients ",[390,13661,13663],{"className":13662},[393],[390,13664,13666],{"className":13665,"ariaHidden":398},[397],[390,13667,13669,13672,13675,13678,13681],{"className":13668},[402],[390,13670],{"className":13671,"style":1521},[406],[390,13673,5091],{"className":13674},[411,412],[390,13676,710],{"className":13677},[709],[390,13679],{"className":13680,"style":714},[561],[390,13682,5101],{"className":13683,"style":1485},[411,412],[390,13685,13687],{"className":13686},[393],[390,13688,13690,13711,13732],{"className":13689,"ariaHidden":398},[397],[390,13691,13693,13696,13699,13702,13705,13708],{"className":13692},[402],[390,13694],{"className":13695,"style":1672},[406],[390,13697,489],{"className":13698},[411,412],[390,13700,5091],{"className":13701},[411,412],[390,13703],{"className":13704,"style":431},[561],[390,13706,1495],{"className":13707},[1119],[390,13709],{"className":13710,"style":431},[561],[390,13712,13714,13717,13720,13723,13726,13729],{"className":13713},[402],[390,13715],{"className":13716,"style":853},[406],[390,13718,671],{"className":13719},[411,412],[390,13721,5101],{"className":13722,"style":1485},[411,412],[390,13724],{"className":13725,"style":562},[561],[390,13727,602],{"className":13728},[566],[390,13730],{"className":13731,"style":562},[561],[390,13733,13735,13738,13744,13747,13750,13753,13756,13759],{"className":13734},[402],[390,13736],{"className":13737,"style":554},[406],[390,13739,13741],{"className":13740},[692],[390,13742,697],{"className":13743},[411,696],[390,13745,702],{"className":13746},[701],[390,13748,489],{"className":13749},[411,412],[390,13751,710],{"className":13752},[709],[390,13754],{"className":13755,"style":714},[561],[390,13757,671],{"className":13758},[411,412],[390,13760,722],{"className":13761},[721],[390,13763,13765],{"className":13764},[393],[390,13766,13768,13789,13810],{"className":13767,"ariaHidden":398},[397],[390,13769,13771,13774,13777,13780,13783,13786],{"className":13770},[402],[390,13772],{"className":13773,"style":1672},[406],[390,13775,489],{"className":13776},[411,412],[390,13778,5091],{"className":13779},[411,412],[390,13781],{"className":13782,"style":431},[561],[390,13784,1495],{"className":13785},[1119],[390,13787],{"className":13788,"style":431},[561],[390,13790,13792,13795,13798,13801,13804,13807],{"className":13791},[402],[390,13793],{"className":13794,"style":853},[406],[390,13796,671],{"className":13797},[411,412],[390,13799,5101],{"className":13800,"style":1485},[411,412],[390,13802],{"className":13803,"style":562},[561],[390,13805,602],{"className":13806},[566],[390,13808],{"className":13809,"style":562},[561],[390,13811,13813,13816],{"className":13812},[402],[390,13814],{"className":13815,"style":407},[406],[390,13817,7245],{"className":13818},[411,412],[457,13820,13821,13822],{},"iff ",[390,13823,13825],{"className":13824},[393],[390,13826,13828,13867],{"className":13827,"ariaHidden":398},[397],[390,13829,13831,13834,13840,13843,13846,13849,13852,13855,13858,13861,13864],{"className":13830},[402],[390,13832],{"className":13833,"style":554},[406],[390,13835,13837],{"className":13836},[692],[390,13838,697],{"className":13839},[411,696],[390,13841,702],{"className":13842},[701],[390,13844,489],{"className":13845},[411,412],[390,13847,710],{"className":13848},[709],[390,13850],{"className":13851,"style":714},[561],[390,13853,671],{"className":13854},[411,412],[390,13856,722],{"className":13857},[721],[390,13859],{"className":13860,"style":562},[561],[390,13862,567],{"className":13863},[566],[390,13865],{"className":13866,"style":562},[561],[390,13868,13870,13873],{"className":13869},[402],[390,13871],{"className":13872,"style":407},[406],[390,13874,7245],{"className":13875},[411,412],", the\ntest behind Water-and-Jug and Check-if-Point-Is-Reachable.",[9870,13878,13879,13881,13882,13884,13885,13919,13920,490,13923,13926],{},[457,13880,8038],{}," is arithmetic on ",[457,13883,8334],{},"; ",[390,13886,13888],{"className":13887},[393],[390,13889,13891],{"className":13890,"ariaHidden":398},[397],[390,13892,13894,13898,13901,13904,13907,13910,13913,13916],{"className":13893},[402],[390,13895],{"className":13896,"style":13897},[406],"height:0.7778em;vertical-align:-0.1944em;",[390,13899,1495],{"className":13900},[411],[390,13902,710],{"className":13903},[709],[390,13905],{"className":13906,"style":714},[561],[390,13908,1682],{"className":13909},[411],[390,13911,710],{"className":13912},[709],[390,13914],{"className":13915,"style":714},[561],[390,13917,4709],{"className":13918},[411]," are\nwell-defined, but ",[457,13921,13922],{},"division requires an inverse",[457,13924,13925],{},"overflow"," must be\nguarded.",[9870,13928,10256,13929,676,13931,10557,14008,14064,14065,14118,14119,14134,14135,14204,14205,14259,14260,14296],{},[457,13930,10163],{},[390,13932,13934],{"className":13933},[393],[390,13935,13937,13999],{"className":13936,"ariaHidden":398},[397],[390,13938,13940,13943,13978,13981,13984,13993,13996],{"className":13939},[402],[390,13941],{"className":13942,"style":9052},[406],[390,13944,13946,13949],{"className":13945},[411],[390,13947,489],{"className":13948},[411,412],[390,13950,13952],{"className":13951},[2905],[390,13953,13955],{"className":13954},[2909],[390,13956,13958],{"className":13957},[2914],[390,13959,13961],{"className":13960,"style":9052},[2918],[390,13962,13963,13966],{"style":3315},[390,13964],{"className":13965,"style":2927},[2926],[390,13967,13969],{"className":13968},[2931,2932,2933,2934],[390,13970,13972,13975],{"className":13971},[411,2934],[390,13973,1682],{"className":13974},[411,2934],[390,13976,895],{"className":13977},[411,2934],[390,13979],{"className":13980,"style":1112},[561],[390,13982],{"className":13983,"style":431},[561],[390,13985,13987],{"className":13986},[1119],[390,13988,13990],{"className":13989},[411],[390,13991,1126],{"className":13992},[411,696],[390,13994],{"className":13995,"style":1112},[561],[390,13997],{"className":13998,"style":431},[561],[390,14000,14002,14005],{"className":14001},[402],[390,14003],{"className":14004,"style":407},[406],[390,14006,8057],{"className":14007},[411,412],[457,14009,13821,14010],{},[390,14011,14013],{"className":14012},[393],[390,14014,14016,14055],{"className":14015,"ariaHidden":398},[397],[390,14017,14019,14022,14028,14031,14034,14037,14040,14043,14046,14049,14052],{"className":14018},[402],[390,14020],{"className":14021,"style":554},[406],[390,14023,14025],{"className":14024},[692],[390,14026,697],{"className":14027},[411,696],[390,14029,702],{"className":14030},[701],[390,14032,489],{"className":14033},[411,412],[390,14035,710],{"className":14036},[709],[390,14038],{"className":14039,"style":714},[561],[390,14041,8057],{"className":14042},[411,412],[390,14044,722],{"className":14045},[721],[390,14047],{"className":14048,"style":562},[561],[390,14050,602],{"className":14051},[566],[390,14053],{"className":14054,"style":562},[561],[390,14056,14058,14061],{"className":14057},[402],[390,14059],{"className":14060,"style":836},[406],[390,14062,895],{"className":14063},[411],", found by\nextended Euclid, or by ",[457,14066,14067,14068,722],{},"Fermat (",[390,14069,14071],{"className":14070},[393],[390,14072,14074],{"className":14073,"ariaHidden":398},[397],[390,14075,14077,14080],{"className":14076},[402],[390,14078],{"className":14079,"style":9052},[406],[390,14081,14083,14086],{"className":14082},[411],[390,14084,489],{"className":14085},[411,412],[390,14087,14089],{"className":14088},[2905],[390,14090,14092],{"className":14091},[2909],[390,14093,14095],{"className":14094},[2914],[390,14096,14098],{"className":14097,"style":9052},[2918],[390,14099,14100,14103],{"style":3315},[390,14101],{"className":14102,"style":2927},[2926],[390,14104,14106],{"className":14105},[2931,2932,2933,2934],[390,14107,14109,14112,14115],{"className":14108},[411,2934],[390,14110,8057],{"className":14111},[411,412,2934],[390,14113,1682],{"className":14114},[1119,2934],[390,14116,2816],{"className":14117},[411,2934]," when ",[390,14120,14122],{"className":14121},[393],[390,14123,14125],{"className":14124,"ariaHidden":398},[397],[390,14126,14128,14131],{"className":14127},[402],[390,14129],{"className":14130,"style":407},[406],[390,14132,8057],{"className":14133},[411,412]," is prime; the linear\ncongruence ",[390,14136,14138],{"className":14137},[393],[390,14139,14141,14162,14177],{"className":14140,"ariaHidden":398},[397],[390,14142,14144,14147,14150,14153,14156,14159],{"className":14143},[402],[390,14145],{"className":14146,"style":8140},[406],[390,14148,489],{"className":14149},[411,412],[390,14151,5091],{"className":14152},[411,412],[390,14154],{"className":14155,"style":562},[561],[390,14157,8150],{"className":14158},[566],[390,14160],{"className":14161,"style":562},[561],[390,14163,14165,14168,14171,14174],{"className":14164},[402],[390,14166],{"className":14167,"style":446},[406],[390,14169,671],{"className":14170},[411,412],[390,14172],{"className":14173},[561,8166],[390,14175],{"className":14176,"style":8170},[561],[390,14178,14180,14183,14186,14195,14198,14201],{"className":14179},[402],[390,14181],{"className":14182,"style":554},[406],[390,14184,702],{"className":14185},[701],[390,14187,14189],{"className":14188},[411],[390,14190,14192],{"className":14191},[411],[390,14193,1126],{"className":14194},[411,696],[390,14196],{"className":14197,"style":8192},[561],[390,14199,8057],{"className":14200},[411,412],[390,14202,722],{"className":14203},[721]," is solvable iff ",[390,14206,14208],{"className":14207},[393],[390,14209,14211,14250],{"className":14210,"ariaHidden":398},[397],[390,14212,14214,14217,14223,14226,14229,14232,14235,14238,14241,14244,14247],{"className":14213},[402],[390,14215],{"className":14216,"style":554},[406],[390,14218,14220],{"className":14219},[692],[390,14221,697],{"className":14222},[411,696],[390,14224,702],{"className":14225},[701],[390,14227,489],{"className":14228},[411,412],[390,14230,710],{"className":14231},[709],[390,14233],{"className":14234,"style":714},[561],[390,14236,8057],{"className":14237},[411,412],[390,14239,722],{"className":14240},[721],[390,14242],{"className":14243,"style":562},[561],[390,14245,567],{"className":14246},[566],[390,14248],{"className":14249,"style":562},[561],[390,14251,14253,14256],{"className":14252},[402],[390,14254],{"className":14255,"style":446},[406],[390,14257,671],{"className":14258},[411,412],", with exactly\n",[390,14261,14263],{"className":14262},[393],[390,14264,14266],{"className":14265,"ariaHidden":398},[397],[390,14267,14269,14272,14278,14281,14284,14287,14290,14293],{"className":14268},[402],[390,14270],{"className":14271,"style":554},[406],[390,14273,14275],{"className":14274},[692],[390,14276,697],{"className":14277},[411,696],[390,14279,702],{"className":14280},[701],[390,14282,489],{"className":14283},[411,412],[390,14285,710],{"className":14286},[709],[390,14288],{"className":14289,"style":714},[561],[390,14291,8057],{"className":14292},[411,412],[390,14294,722],{"className":14295},[721]," solutions.",[14298,14299,14302,14307],"section",{"className":14300,"dataFootnotes":376},[14301],"footnotes",[467,14303,14306],{"className":14304,"id":893},[14305],"sr-only","Footnotes",[9867,14308,14309,14323,14385],{},[9870,14310,14312,14315,14316],{"id":14311},"user-content-fn-clrs-gcd",[457,14313,14314],{},"CLRS",", Ch. 31 — Number-Theoretic Algorithms (§31.1–31.2): divisibility, common divisors, and the recursive characterization of the gcd. ",[489,14317,14322],{"href":14318,"ariaLabel":14319,"className":14320,"dataFootnoteBackref":376},"#user-content-fnref-clrs-gcd","Back to reference 1",[14321],"data-footnote-backref","↩",[9870,14324,14326,14328,14329,2694,14380],{"id":14325},"user-content-fn-clrs-euclid",[457,14327,14314],{},", Ch. 31 — Number-Theoretic Algorithms (§31.2): Euclid's and the extended algorithm; the Fibonacci worst case bounds the iteration count to ",[390,14330,14332],{"className":14331},[393],[390,14333,14335],{"className":14334,"ariaHidden":398},[397],[390,14336,14338,14341,14344,14347,14353,14356,14362,14365,14368,14371,14374,14377],{"className":14337},[402],[390,14339],{"className":14340,"style":554},[406],[390,14342,2731],{"className":14343,"style":1401},[411,412],[390,14345,702],{"className":14346},[701],[390,14348,14350],{"className":14349},[692],[390,14351,2742],{"className":14352,"style":2741},[411,696],[390,14354],{"className":14355,"style":714},[561],[390,14357,14359],{"className":14358},[692],[390,14360,2788],{"className":14361},[411,696],[390,14363,702],{"className":14364},[701],[390,14366,489],{"className":14367},[411,412],[390,14369,710],{"className":14370},[709],[390,14372],{"className":14373,"style":714},[561],[390,14375,671],{"className":14376},[411,412],[390,14378,2807],{"className":14379},[721],[489,14381,14322],{"href":14382,"ariaLabel":14383,"className":14384,"dataFootnoteBackref":376},"#user-content-fnref-clrs-euclid","Back to reference 2",[14321],[9870,14386,14388,14391,14392],{"id":14387},"user-content-fn-skiena-mod",[457,14389,14390],{},"Skiena",", § — Number Theory: residue classes, congruences, and practical modular-arithmetic pitfalls (overflow, negative remainders). ",[489,14393,14322],{"href":14394,"ariaLabel":14395,"className":14396,"dataFootnoteBackref":376},"#user-content-fnref-skiena-mod","Back to reference 3",[14321],[14398,14399,14400],"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":14402},[14403,14404,14408,14412,14413,14414,14415],{"id":469,"depth":18,"text":470},{"id":942,"depth":18,"text":943,"children":14405},[14406,14407],{"id":2153,"depth":24,"text":2154},{"id":4633,"depth":24,"text":4634},{"id":4996,"depth":18,"text":4997,"children":14409},[14410],{"id":7186,"depth":24,"text":14411},"When does ax+by=c have a solution?",{"id":8037,"depth":18,"text":8038},{"id":10252,"depth":18,"text":10253},{"id":13284,"depth":18,"text":13285},{"id":893,"depth":18,"text":14306},"Most of this course has measured algorithms against the size of their input:\nn elements, V vertices, h levels of a tree. Number-theoretic algorithms\nbreak that habit. Their inputs are single integers, and the interesting cost is\nmeasured against the magnitude of those integers, or equivalently the number\nof bits needed to write them down. The oldest non-trivial algorithm we know,\nEuclid's, from around 300 BCE, lives here, and it is still the right way to\ncompute a greatest common divisor. This lesson develops it carefully, extends it\nto solve linear Diophantine equations, and uses both to lay the foundations of\nmodular arithmetic, the arithmetic that underlies hashing, cryptography, and\nthe math problems you will meet in practice.","md",{"moduleNumber":283,"lessonNumber":6,"order":14419},1001,true,[14422,14426,14429,14432],{"title":14423,"slug":14424,"difficulty":14425},"Greatest Common Divisor of Strings","greatest-common-divisor-of-strings","Easy",{"title":14427,"slug":14428,"difficulty":14425},"Find Greatest Common Divisor of Array","find-greatest-common-divisor-of-array",{"title":7897,"slug":14430,"difficulty":14431},"water-and-jug-problem","Medium",{"title":14433,"slug":14434,"difficulty":14435},"Check if Point Is Reachable","check-if-point-is-reachable","Hard","---\ntitle: \"Number Theory: GCD & Modular Arithmetic\"\nmodule: Mathematical Algorithms\nmoduleNumber: 10\nlessonNumber: 1\norder: 1001\nsummary: >-\n  This lesson opens the mathematical-algorithms module with the bedrock of\n  computational number theory. We prove Euclid's recurrence\n  $\\gcd(a,b)=\\gcd(b,\\,a\\bmod b)$ and its $O(\\log\\min(a,b))$ running time, extend\n  it to recover Bézout coefficients $x,y$ with $ax+by=\\gcd(a,b)$, and build\n  modular arithmetic on residue classes — including when a modular inverse\n  $a^{-1}\\bmod m$ exists and how to compute it.\ntopics: [Number Theory]\nsources:\n  - book: CLRS\n    ref: \"Ch. 31 — Number-Theoretic Algorithms\"\n  - book: Skiena\n    ref: \"§ — Number Theory\"\n  - book: Erickson\n    ref: \"Ch. — (number theory)\"\npractice:\n  - title: 'Greatest Common Divisor of Strings'\n    slug: greatest-common-divisor-of-strings\n    difficulty: Easy\n  - title: 'Find Greatest Common Divisor of Array'\n    slug: find-greatest-common-divisor-of-array\n    difficulty: Easy\n  - title: 'Water and Jug Problem'\n    slug: water-and-jug-problem\n    difficulty: Medium\n  - title: 'Check if Point Is Reachable'\n    slug: check-if-point-is-reachable\n    difficulty: Hard\n---\n\nMost of this course has measured algorithms against the _size_ of their input:\n$n$ elements, $V$ vertices, $h$ levels of a tree. Number-theoretic algorithms\nbreak that habit. Their inputs are single integers, and the interesting cost is\nmeasured against the _magnitude_ of those integers, or equivalently the number\nof bits needed to write them down. The oldest non-trivial algorithm we know,\nEuclid's, from around 300 BCE, lives here, and it is still the right way to\ncompute a greatest common divisor. This lesson develops it carefully, extends it\nto solve linear Diophantine equations, and uses both to lay the foundations of\n**modular arithmetic**, the arithmetic that underlies hashing, cryptography, and\nthe \"math\" problems you will meet in practice.\n\n## Divisibility and the greatest common divisor\n\nFor integers $a$ and $d$ we say **$d$ divides $a$** (written $d \\mid a$) if\n$a = kd$ for some integer $k$. A **common divisor** of $a$ and $b$ is an integer\ndividing both. The **greatest common divisor** $\\gcd(a,b)$ is the largest such\ninteger, with the conventions $\\gcd(a,0) = |a|$ and $\\gcd(0,0)=0$. Throughout we\ntake $a,b \\ge 0$; signs only flip the answer's sign.[^clrs-gcd]\n\nThe naive way to compute $\\gcd(a,b)$, factoring both numbers and multiplying the\nshared prime powers, is a trap: integer factorization is believed to be hard, and\nthe [sieve and factorization methods](\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization)\nthat find those prime powers are themselves a separate study. Euclid's insight is\nthat you never need the factorization at all.\n\n## Euclid's algorithm\n\nThe entire algorithm rests on one recurrence.\n\n> **Theorem (Euclid).** For $a \\ge 0$ and $b > 0$,\n> $$\\gcd(a,b) = \\gcd\\bigl(b,\\ a \\bmod b\\bigr), \\qquad \\gcd(a,0) = a.$$\n\nThe base case is immediate: every integer divides $0$, so the largest divisor of\n$a$ and $0$ is $a$ itself. The recurrence follows from a sharper claim: the\ntwo pairs share _exactly the same set_ of common divisors, hence the same\ngreatest one.\n\n> **Lemma.** The common divisors of $(a,b)$ are precisely the common divisors of\n> $(b,\\ a \\bmod b)$.\n>\n\n> **Proof.** Write $r = a \\bmod b$, so $a = qb + r$ for the quotient $q =\n> \\lfloor a\u002Fb \\rfloor$. Suppose $d \\mid a$ and $d \\mid b$. Then $d$ divides the\n> integer combination $r = a - qb$, so $d$ is a common divisor of $b$ and $r$.\n> Conversely, suppose $d \\mid b$ and $d \\mid r$. Then $d$ divides $a = qb + r$,\n> so $d$ is a common divisor of $a$ and $b$. The two divisor sets thus contain\n> each other and are equal; their maxima coincide. $\\qed$\n\nBecause the second argument strictly shrinks ($a \\bmod b \u003C b$) and stays\nnon-negative, the recursion must terminate, and it terminates at a pair\n$(\\,g, 0\\,)$ whose answer is $g = \\gcd(a,b)$.\n\n```algorithm\ncaption: $\\textsc{Euclid}(a, b)$ — greatest common divisor, $O(\\log\\min(a,b))$\nwhile $b \\ne 0$ do\n  $r \\gets a \\bmod b$\n  $a \\gets b$\n  $b \\gets r$\nreturn $a$\n```\n\n### Why it is fast\n\nEach iteration replaces $(a,b)$ with $(b, a \\bmod b)$. The key fact is that two\niterations _at least halve_ the larger argument.\n\n> **Lemma.** If $a > b > 0$ then $a \\bmod b \u003C a\u002F2$.\n>\n\n> **Proof.** If $b \\le a\u002F2$ then $a \\bmod b \u003C b \\le a\u002F2$. If $b > a\u002F2$ then\n> $\\lfloor a\u002Fb\\rfloor = 1$, so $a \\bmod b = a - b \u003C a\u002F2$. $\\qed$\n\nSo after every two steps the first argument drops below half its value; the\nnumber of iterations is therefore $O(\\log a) = O(\\log\\min(a,b))$ once the first\nswap orders the arguments.[^clrs-euclid] Each iteration does one division on\nnumbers of $O(\\log a)$ bits, so the bit-complexity is polynomial in the input\nsize, exponentially better than factoring. (For a refresher on this kind of\nlogarithmic bound, see [asymptotic analysis](\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis).)\n\n> **Intuition.** The _worst case_ is the slowest possible shrinkage, and it is\n> achieved by **consecutive Fibonacci numbers**: $\\gcd(F_{k+1}, F_k)$ runs for\n> exactly $k$ iterations, because $F_{k+1} \\bmod F_k = F_{k-1}$ reproduces the\n> next Fibonacci pair. Since $F_k \\approx \\varphi^k$, the iteration count is\n> $\\Theta(\\log_\\varphi a)$; the constant in the logarithm is as bad as it can\n> get precisely on Fibonacci inputs.\n\nThe worst case is slow precisely because every quotient is the smallest it can\nbe, $\\lfloor a\u002Fb\\rfloor = 1$, so each step subtracts $b$ only **once** and the\npair merely slides to the previous Fibonacci pair. A single larger quotient would\ncollapse the chain far faster.\n\n$$\n% caption: Fibonacci inputs are the worst case: every quotient is $1$, so the pair steps\n%          down through every Fibonacci number one rung at a time.\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  box\u002F.style={draw, minimum width=22mm, minimum height=8mm, inner sep=2pt},\n  >=stealth, y=12mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\useasboundingbox (-2.7,0.6) rectangle (3.0,-5.3);\n  \\node[box] (r0) at (0,0) {$\\gcd(13,8)$};\n  \\node[box] (r1) at (0,-1) {$\\gcd(8,5)$};\n  \\node[box] (r2) at (0,-2) {$\\gcd(5,3)$};\n  \\node[box] (r3) at (0,-3) {$\\gcd(3,2)$};\n  \\node[box] (r4) at (0,-4) {$\\gcd(2,1)$};\n  \\node[box, fill=acc!15, draw=acc, very thick] (r5) at (0,-5) {$\\gcd(1,0)=1$};\n  \\draw[->] (r0) -- node[right=1mm, font=\\footnotesize] {$q{=}1,\\ r{=}5$} (r1);\n  \\draw[->] (r1) -- node[right=1mm, font=\\footnotesize] {$q{=}1,\\ r{=}3$} (r2);\n  \\draw[->] (r2) -- node[right=1mm, font=\\footnotesize] {$q{=}1,\\ r{=}2$} (r3);\n  \\draw[->] (r3) -- node[right=1mm, font=\\footnotesize] {$q{=}1,\\ r{=}1$} (r4);\n  \\draw[->] (r4) -- node[right=1mm, font=\\footnotesize] {$q{=}2,\\ r{=}0$} (r5);\n  \\node[acc, font=\\footnotesize, align=center] at (-1.55,-2.5) {every\\\\ $q{=}1$};\n\\end{tikzpicture}\n$$\n\nEach iteration simply replaces the pair by $(b,\\ a \\bmod b)$ and recurses; tracing\n$\\gcd(48,18)$ shows the second argument collapsing to $0$ in three steps.\n\n$$\n% caption: Euclid's remainder steps for $\\gcd(48,18)=6$. Each arrow applies\n%          $(a,b)\\to(b,\\ a\\bmod b)$: the divisor $b$ slides down to become the new first\n%          argument and the remainder becomes the new second, until the second argument\n%          hits $0$ and the first is the answer.\n\\begin{tikzpicture}[\n  every node\u002F.style={font=\\small},\n  box\u002F.style={draw, minimum width=24mm, minimum height=9mm, inner sep=2pt},\n  >=stealth, y=15mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\useasboundingbox (-1.6,0.85) rectangle (3.6,-3.35);\n  \\node[font=\\footnotesize, acc] at (0,0.7) {$(a,b)\\to(b,\\ a\\bmod b)$};\n  \\node[box] (r0) at (0,0) {$\\gcd(48,18)$};\n  \\node[box] (r1) at (0,-1) {$\\gcd(18,12)$};\n  \\node[box] (r2) at (0,-2) {$\\gcd(12,6)$};\n  \\node[box, fill=acc!15, draw=acc, very thick] (r3) at (0,-3) {$\\gcd(6,0)=6$};\n  \\draw[->] (r0) -- node[right=1mm, font=\\footnotesize] {$48\\bmod 18=12$} (r1);\n  \\draw[->] (r1) -- node[right=1mm, font=\\footnotesize] {$18\\bmod 12=6$} (r2);\n  \\draw[->] (r2) -- node[right=1mm, font=\\footnotesize] {$12\\bmod 6=0$} (r3);\n\\end{tikzpicture}\n$$\n\n### Euclid, geometrically\n\nReplacing $a \\bmod b$ by repeated subtraction gives the **subtractive** form of\nthe algorithm, and it has a geometric reading: tile an $a \\times b$\nrectangle greedily with the largest squares that fit. Cut off a $b \\times b$\nsquare as many times as you can, then recurse on the leftover $b \\times (a \\bmod\nb)$ strip. The side of the _last_ square is the gcd.\n\n$$\n% caption: $\\gcd(a,b)$ as the largest square that tiles an $a\\times b$ rectangle\n\\begin{tikzpicture}[scale=0.42, every node\u002F.style={font=\\small}]\n  \\definecolor{acc}{HTML}{2348F2}\n  % a x b rectangle, a = 13 wide, b = 8 tall ; squares of side 8, 5, 3, 2, 2(gcd? gcd=1) -> use 12x8 gcd 4\n  % Use 12 x 8: squares 8, then 4x4 twice ; gcd = 4\n  \\draw[thick] (0,0) rectangle (12,8);\n  % first 8x8 square\n  \\draw (0,0) rectangle (8,8);\n  \\node at (4,4) {$8$};\n  % remaining 4 x 8 strip -> two 4x4 squares\n  \\draw (8,0) rectangle (12,4);\n  \\node at (10,2) {$4$};\n  % the final square = gcd, highlighted\n  \\draw[acc, very thick] (8,4) rectangle (12,8);\n  \\node[acc] at (10,6) {$\\gcd$};\n  \\node at (6,-1.2) {$a = 12$};\n  \\node[rotate=90] at (-1.2,4) {$b = 8$};\n\\end{tikzpicture}\n$$\n\n## Extended Euclid: Bézout's identity\n\nEuclid tells us _what_ the gcd is; the **extended** algorithm tells us _how to\nbuild it_ out of $a$ and $b$.\n\n> **Theorem (Bézout).** For all integers $a,b$ there exist integers $x,y$ with\n> $$ax + by = \\gcd(a,b).$$\n\nThe coefficients $x,y$ fall out of running Euclid in reverse. At the base case\n$\\gcd(a,0) = a$ we have the trivial identity $a\\cdot 1 + 0\\cdot 0 = a$, so\n$(x,y) = (1,0)$. For the recursive step, suppose the recursive call on\n$(b,\\ a \\bmod b)$ has already returned $(x', y')$ with\n$$b\\,x' + (a \\bmod b)\\,y' = \\gcd(a,b).$$\nSubstitute $a \\bmod b = a - \\lfloor a\u002Fb\\rfloor\\, b$ and regroup by $a$ and $b$:\n$$\na\\,y' + b\\Bigl(x' - \\Bigl\\lfloor \\tfrac{a}{b}\\Bigr\\rfloor\\,y'\\Bigr) = \\gcd(a,b).\n$$\nSo the **back-substitution recurrence** is\n$$\nx = y', \\qquad y = x' - \\Bigl\\lfloor \\tfrac{a}{b}\\Bigr\\rfloor\\, y'.\n$$\n\n```algorithm\ncaption: $\\textsc{Extended-Euclid}(a, b)$ — returns $(g, x, y)$ with $ax+by=g=\\gcd(a,b)$\nif $b = 0$ then\n  return $(a,\\ 1,\\ 0)$\n$(g,\\ x',\\ y') \\gets \\textsc{Extended-Euclid}(b,\\ a \\bmod b)$\n$x \\gets y'$\n$y \\gets x' - \\lfloor a \u002F b \\rfloor \\cdot y'$\nreturn $(g,\\ x,\\ y)$\n```\n\nIt performs the same divisions as plain Euclid, so it is also\n$O(\\log\\min(a,b))$. The table below traces $\\gcd(240, 46)$: the forward pass\nfills the remainder\u002Fquotient columns top-down, and the coefficients $(x,y)$ are\nfilled bottom-up by the back-substitution recurrence, landing on Bézout\ncoefficients for the original pair in the top row.\n\n$$\n% caption: back-substitution yields $ax+by=\\gcd$ for $\\gcd(240,46)=2$\n\\begin{tikzpicture}[scale=1, every node\u002F.style={font=\\small}]\n  \\definecolor{acc}{HTML}{2348F2}\n  % header\n  \\node at (0,0) {$a$};\n  \\node at (1.4,0) {$b$};\n  \\node at (2.8,0) {$q=\\lfloor a\u002Fb\\rfloor$};\n  \\node at (4.8,0) {$r$};\n  \\node at (6.0,0) {$x$};\n  \\node at (7.0,0) {$y$};\n  \\draw[thick] (-0.6,-0.35) -- (7.6,-0.35);\n  % rows\n  \\node at (0,-0.9) {$240$};  \\node at (1.4,-0.9) {$46$};  \\node at (2.8,-0.9) {$5$};  \\node at (4.8,-0.9) {$10$};  \\node at (6.0,-0.9) {$-9$}; \\node at (7.0,-0.9) {$47$};\n  \\node at (0,-1.6) {$46$};   \\node at (1.4,-1.6) {$10$};  \\node at (2.8,-1.6) {$4$};  \\node at (4.8,-1.6) {$6$};   \\node at (6.0,-1.6) {$2$};  \\node at (7.0,-1.6) {$-9$};\n  \\node at (0,-2.3) {$10$};   \\node at (1.4,-2.3) {$6$};   \\node at (2.8,-2.3) {$1$};  \\node at (4.8,-2.3) {$4$};   \\node at (6.0,-2.3) {$-1$}; \\node at (7.0,-2.3) {$2$};\n  \\node at (0,-3.0) {$6$};    \\node at (1.4,-3.0) {$4$};   \\node at (2.8,-3.0) {$1$};  \\node at (4.8,-3.0) {$2$};   \\node at (6.0,-3.0) {$1$};  \\node at (7.0,-3.0) {$-1$};\n  \\node at (0,-3.7) {$4$};    \\node at (1.4,-3.7) {$2$};   \\node at (2.8,-3.7) {$2$};  \\node at (4.8,-3.7) {$0$};   \\node at (6.0,-3.7) {$0$};  \\node at (7.0,-3.7) {$1$};\n  \\node at (0,-4.4) {$2$};    \\node at (1.4,-4.4) {$0$};   \\node at (2.8,-4.4) {$-$};  \\node at (4.8,-4.4) {$-$};   \\node at (6.0,-4.4) {$1$};  \\node at (7.0,-4.4) {$0$};\n  % highlight the Bezout coefficients in the top row\n  \\draw[acc, very thick] (5.55,-0.6) rectangle (7.45,-1.2);\n  \\node[acc] at (3.6,-5.2) {$240\\cdot(-9) + 46\\cdot 47 = 2 = \\gcd(240,46)$};\n\\end{tikzpicture}\n$$\n\n### When does $ax + by = c$ have a solution?\n\nBézout pins down solvability of the general **linear Diophantine equation**.\n\n> **Corollary.** $ax + by = c$ has an integer solution $(x,y)$ **if and only if**\n> $\\gcd(a,b) \\mid c$.\n\n_Why._ Let $g = \\gcd(a,b)$. Any combination $ax+by$ is a multiple of $g$, so\n$g \\mid c$ is necessary. Conversely, if $c = kg$, scale Bézout's coefficients by\n$k$: from $ax_0 + by_0 = g$ we get $a(kx_0) + b(ky_0) = c$. This is exactly the\npredicate behind the **Water and Jug Problem** (can we measure $c$ liters using\njugs of capacity $a$ and $b$? iff $g \\mid c$ and $c \\le a+b$) and **Check if\nPoint Is Reachable**, where the reachable lattice is governed by the gcd of the\nallowed steps.\n\n## Modular arithmetic\n\nFix a modulus $m > 0$. We say $a$ is **congruent** to $b$ modulo $m$, written\n$$a \\equiv b \\pmod m \\iff m \\mid (a - b),$$\ni.e. $a$ and $b$ leave the same remainder on division by $m$. Congruence is an\nequivalence relation, and it partitions the integers into $m$ **residue classes**\n$\\{0,1,\\dots,m-1\\}$. The decisive property is that the class operations are\n**well-defined**: if $a \\equiv a'$ and $b \\equiv b'$, then\n$$a + b \\equiv a' + b', \\quad a - b \\equiv a' - b', \\quad a\\cdot b \\equiv a'\\cdot b' \\pmod m.$$\nSo you may reduce mod $m$ at any point in a chain of $+$, $-$, $\\times$ without\nchanging the final residue, the foundation of every \"answer modulo $10^9+7$\"\nproblem and of [combinatorics modulo a prime](\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics).[^skiena-mod]\n\nWhen two **coprime** moduli are at play, the residue classes interlock perfectly:\nthe pair $(x \\bmod 3,\\ x \\bmod 5)$ pins $x$ down uniquely modulo $15$. The grid\nbelow tabulates that bijection, with $x = 10\\,(x\\bmod 3) + 6\\,(x\\bmod 5)$ landing in\neach cell, the constructive heart of the Chinese Remainder Theorem we revisit in\n[combinatorics](\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics).\n\n$$\n% caption: $x\\bmod 15$ recovered from $(x\\bmod 3,\\ x\\bmod 5)$ — a bijection of residues\n\\begin{tikzpicture}[every node\u002F.style={font=\\small}, x=8mm, y=8mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\foreach \\c\u002F\\lab in {0\u002F0,1\u002F1,2\u002F2,3\u002F3,4\u002F4}{\n    \\node[acc] at (\\c+1,1) {$\\lab$};\n  }\n  \\foreach \\r\u002F\\lab in {0\u002F0,1\u002F1,2\u002F2}{\n    \\node[acc] at (0,-\\r) {$\\lab$};\n  }\n  \\node[acc, font=\\footnotesize] at (3,2) {$x\\bmod 5$};\n  \\node[acc, font=\\footnotesize, rotate=90] at (-1,-1) {$x\\bmod 3$};\n  \\fill[acc!15] (3.5,-2.5) rectangle (4.5,-1.5);\n  \\foreach \\r in {0,1,2}{\n    \\foreach \\c in {0,1,2,3,4}{\n      \\node[draw, minimum size=8mm, inner sep=0] at (\\c+1,-\\r) {$\\pgfmathparse{int(mod(10*\\r + 6*\\c, 15))}\\pgfmathresult$};\n    }\n  }\n  \\node[draw=acc, very thick, minimum size=8mm, inner sep=0] at (4,-2) {};\n  \\node[acc, font=\\footnotesize] at (3,-3.4) {$8\\equiv 2\\ (3),\\quad 8\\equiv 3\\ (5)$};\n\\end{tikzpicture}\n$$\n\n> **Warning (Pitfalls).**\n> 1. **Division is not generally legal.** From $ax \\equiv ay \\pmod m$ you may\n>    _not_ conclude $x \\equiv y$. For example $2\\cdot 3 \\equiv 2\\cdot 0 \\pmod 6$\n>    but $3 \\not\\equiv 0$. Cancellation needs a _modular inverse_ (next section).\n> 2. **Overflow.** Even when each operand fits in a machine word, $a\\cdot b$ can\n>    overflow before you reduce. Reduce operands first, use a wider type, or\n>    multiply with care.\n> 3. **Negative remainders.** In many languages `a % m` can be negative; normalize\n>    with `((a % m) + m) % m` when you need a representative in $[0,m)$.\n\n## Modular inverse and linear congruences\n\nA **modular inverse** of $a$ modulo $m$ is an integer $a^{-1}$ with\n$a\\cdot a^{-1} \\equiv 1 \\pmod m$. It is exactly what lets you \"divide\" by $a$.\n\n> **Theorem.** $a^{-1} \\bmod m$ exists **if and only if** $\\gcd(a,m) = 1$ (we\n> say $a$ is _coprime_ to $m$), and when it exists it is unique modulo $m$.\n\n_Why._ The congruence $ax \\equiv 1 \\pmod m$ is the Diophantine equation\n$ax + my = 1$, which by the corollary above is solvable iff $\\gcd(a,m) \\mid 1$,\ni.e. $\\gcd(a,m) = 1$. There are two standard ways to produce the inverse:\n\n1. **Extended Euclid.** Run $\\textsc{Extended-Euclid}(a, m)$ to get\n   $ax + my = 1$. Reducing mod $m$ kills the $my$ term, leaving\n   $ax \\equiv 1 \\pmod m$, so $x \\bmod m$ is the inverse. This works for _any_\n   coprime modulus and costs $O(\\log m)$.\n2. **Fermat's little theorem.** When $m$ is **prime**, every $a \\not\\equiv 0$ is\n   coprime to $m$, and $a^{m-1} \\equiv 1 \\pmod m$, hence\n   $a^{-1} \\equiv a^{m-2} \\pmod m$. Computed by fast exponentiation in\n   $O(\\log m)$ multiplications, the subject of the next lesson, on\n   [modular exponentiation and primality](\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality).\n\nThe reason an inverse exists exactly when $\\gcd(a,m)=1$ is visible directly:\nmultiplying every nonzero residue by such an $a$ **permutes** them, so some residue\nmust land on $1$, and that residue is $a^{-1}$. Below, multiplying $\\{1,\\dots,6\\}$ by\n$3$ modulo $7$ shuffles the set, and the arrow into $1$ comes from $5$, so\n$3^{-1}\\equiv 5$.\n\n$$\n% caption: $3\\cdot 5\\equiv 1\\pmod 7$, so $3^{-1}\\equiv 5$; multiplying by $3$ permutes\n%          $\\{1,\\dots,6\\}$\n\\begin{tikzpicture}[every node\u002F.style={font=\\small}, >=stealth, x=10mm, y=10mm]\n  \\definecolor{acc}{HTML}{2348F2}\n  \\fill[acc!15] (5,1) circle (4mm);\n  \\fill[acc!15] (5,-1) circle (4mm);\n  \\foreach \\a in {1,2,3,4,5,6}{\n    \\node[draw, circle, minimum size=8mm, inner sep=0] (t\\a) at (\\a,1) {$\\a$};\n  }\n  \\foreach \\a\u002F\\b in {1\u002F3,2\u002F6,3\u002F2,4\u002F5,5\u002F1,6\u002F4}{\n    \\node[draw, circle, minimum size=8mm, inner sep=0] (b\\a) at (\\a,-1) {$\\b$};\n    \\draw[->] (t\\a) -- (b\\a);\n  }\n  \\node[draw=acc, circle, very thick, minimum size=8mm, inner sep=0] at (5,1) {};\n  \\node[draw=acc, circle, very thick, minimum size=8mm, inner sep=0] at (5,-1) {};\n  \\node[acc, font=\\footnotesize] at (5,-2.3) {$3\\cdot 5\\equiv 1$};\n  \\node[font=\\footnotesize] at (-0.3,1) {$a$};\n  \\node[font=\\footnotesize] at (-0.6,-1) {$3a\\bmod 7$};\n\\end{tikzpicture}\n$$\n\n```algorithm\ncaption: $\\textsc{Mod-Inverse}(a, m)$ — inverse of $a$ modulo $m$, or \"none\"\n$(g,\\ x,\\ y) \\gets \\textsc{Extended-Euclid}(a \\bmod m,\\ m)$\nif $g \\ne 1$ then\n  return \"no inverse\"   \u002F\u002F not coprime\nreturn $((x \\bmod m) + m) \\bmod m$   \u002F\u002F normalize into $[0, m)$\n```\n\nThe same machinery solves the general **linear congruence** $ax \\equiv b\n\\pmod m$. Let $g = \\gcd(a,m)$.\n\n> **Theorem.** $ax \\equiv b \\pmod m$ is solvable **iff** $g \\mid b$. When it is,\n> there are **exactly $g$** solutions modulo $m$. A particular solution is\n> $x_0 = (b\u002Fg)\\cdot a'^{-1} \\bmod (m\u002Fg)$, where $a' = a\u002Fg$; the full solution set\n> is $x_0 + k\\,(m\u002Fg)$ for $k = 0, 1, \\dots, g-1$.\n\nWhen $g = 1$ this reduces to \"multiply both sides by $a^{-1}$\" and yields the\nsingle solution $x \\equiv a^{-1}b \\pmod m$, the everyday case. The general count\n$g$ is what you reach for when the modulus and coefficient share a factor.\n\n## Takeaways\n\n- **$\\gcd(a,b)$** is computed by **Euclid's algorithm** via\n  $\\gcd(a,b)=\\gcd(b,\\,a\\bmod b)$, base $\\gcd(a,0)=a$; the recurrence is exact\n  because $(a,b)$ and $(b,\\,a\\bmod b)$ have **identical common divisors**.\n- Euclid runs in **$O(\\log\\min(a,b))$** iterations because two steps at least\n  halve the argument; the **worst case is consecutive Fibonacci numbers**.\n- **Extended Euclid** returns Bézout coefficients $x,y$ with\n  $ax+by=\\gcd(a,b)$, and $ax+by=c$ is solvable **iff $\\gcd(a,b)\\mid c$**, the\n  test behind Water-and-Jug and Check-if-Point-Is-Reachable.\n- **Modular arithmetic** is arithmetic on **residue classes**; $+,-,\\times$ are\n  well-defined, but **division requires an inverse** and **overflow** must be\n  guarded.\n- A **modular inverse** $a^{-1}\\bmod m$ exists **iff $\\gcd(a,m)=1$**, found by\n  extended Euclid, or by **Fermat ($a^{m-2}$)** when $m$ is prime; the linear\n  congruence $ax\\equiv b\\pmod m$ is solvable iff $\\gcd(a,m)\\mid b$, with exactly\n  $\\gcd(a,m)$ solutions.\n\n[^clrs-gcd]: **CLRS**, Ch. 31 — Number-Theoretic Algorithms (§31.1–31.2): divisibility, common divisors, and the recursive characterization of the gcd.\n[^clrs-euclid]: **CLRS**, Ch. 31 — Number-Theoretic Algorithms (§31.2): Euclid's and the extended algorithm; the Fibonacci worst case bounds the iteration count to $O(\\log\\min(a,b))$.\n[^skiena-mod]: **Skiena**, § — Number Theory: residue classes, congruences, and practical modular-arithmetic pitfalls (overflow, negative remainders).\n[^erickson-bezout]: **Erickson**, Ch. — (number theory): Bézout's identity and the solvability of $ax+by=c$ as the gcd-divides-$c$ condition.\n[^clrs-inverse]: **CLRS**, Ch. 31 — Number-Theoretic Algorithms (§31.4): solving modular linear equations $ax\\equiv b\\pmod m$ and the existence of modular inverses.\n",{"text":14438,"minutes":14439,"time":14440,"words":14441},"8 min read",7.665,459900,1533,{"title":311,"description":14416},[14444,14446,14448],{"book":14314,"ref":14445},"Ch. 31 — Number-Theoretic Algorithms",{"book":14390,"ref":14447},"§ — Number Theory",{"book":14449,"ref":14450},"Erickson","Ch. — (number theory)","available","01.algorithms\u002F10.mathematical-algorithms\u002F01.number-theory-basics",[314],"yC6NEqM0n58XFW5o-gZl8g9PbzJJG_pr170qfnDFIXM",{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":14456,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":14457,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":14458,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":14459,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":14460,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":14461,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":14462,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":14463,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":14464,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":14465,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":14466,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":14467,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":14468,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":14469,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":14470,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":14471,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":14441,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":14472,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":14473,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":14474,"\u002Falgorithms\u002Fsequences\u002Ftries":14475,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":14476,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":14477,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":14478,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":14479,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":14480,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":14481,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":14482,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":14483,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":14484,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":14485,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":14486,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":14487,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":14488,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":14489,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":14490,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":14491,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":14492,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":14493,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":14494,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":14495,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":14496,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":14497,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":14498,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":14499,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":14500,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":14501,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":14441,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":14502,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":14503,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":14504,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":14505,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":14487,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":14506,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":14507,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":14468,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":14508,"\u002Falgorithms":14509,"\u002Ftheory-of-computation":14510,"\u002Fcomputer-architecture":14510,"\u002Fphysical-computing":14510,"\u002Fdatabases":14510,"\u002Fdeep-learning":14510},1763,2107,1738,2628,1723,2048,1697,1044,1542,1565,1679,1586,1388,1465,1971,1455,1483,1578,1791,1481,2704,1658,2070,1978,2080,1568,1451,1291,1543,1883,1443,1599,2038,2241,1744,1678,2288,1929,1657,1412,1554,1418,1713,1798,1694,1762,1534,1595,1262,1495,1630,2306,2142,107,0,{"\u002Falgorithms\u002Ffoundations\u002Fwhat-is-an-algorithm":14512,"\u002Falgorithms\u002Ffoundations\u002Fasymptotic-analysis":14513,"\u002Falgorithms\u002Ffoundations\u002Frecurrences":14514,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fmergesort":14515,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fquicksort":14516,"\u002Falgorithms\u002Fdivide-and-conquer\u002Fselection":14517,"\u002Falgorithms\u002Fsorting\u002Fheaps-and-heapsort":14518,"\u002Falgorithms\u002Fsorting\u002Fsorting-lower-bounds":14519,"\u002Falgorithms\u002Fsorting\u002Flinear-time-sorting":14520,"\u002Falgorithms\u002Fdata-structures\u002Felementary-structures":14521,"\u002Falgorithms\u002Fdata-structures\u002Fhash-tables":14522,"\u002Falgorithms\u002Fdata-structures\u002Fbinary-search-trees":14523,"\u002Falgorithms\u002Fdata-structures\u002Favl-trees":14524,"\u002Falgorithms\u002Fdata-structures\u002Fbalanced-trees":14525,"\u002Falgorithms\u002Fdata-structures\u002Funion-find":14526,"\u002Falgorithms\u002Fdata-structures\u002Ffenwick-and-segment-trees":14527,"\u002Falgorithms\u002Fsequences\u002Ftwo-pointers-and-windows":14528,"\u002Falgorithms\u002Fsequences\u002Fmonotonic-stacks":14529,"\u002Falgorithms\u002Fsequences\u002Fbinary-search-on-the-answer":14530,"\u002Falgorithms\u002Fsequences\u002Fstring-matching":14531,"\u002Falgorithms\u002Fsequences\u002Ftries":14532,"\u002Falgorithms\u002Fgraphs\u002Frepresentations-and-traversal":14533,"\u002Falgorithms\u002Fgraphs\u002Ftopological-sort-and-scc":14534,"\u002Falgorithms\u002Fgraphs\u002Fminimum-spanning-trees":14535,"\u002Falgorithms\u002Fgraphs\u002Fshortest-paths":14536,"\u002Falgorithms\u002Fgraphs\u002Fnetwork-flow":14537,"\u002Falgorithms\u002Fgraphs\u002Fbridges-and-articulation-points":14538,"\u002Falgorithms\u002Fgraphs\u002Flowest-common-ancestor":14539,"\u002Falgorithms\u002Fgraphs\u002Ftwo-sat":14540,"\u002Falgorithms\u002Fgraphs\u002Feulerian-tours":14541,"\u002Falgorithms\u002Fgreedy\u002Fthe-greedy-method":14542,"\u002Falgorithms\u002Fgreedy\u002Fscheduling-and-intervals":14543,"\u002Falgorithms\u002Fgreedy\u002Fhuffman-codes":14544,"\u002Falgorithms\u002Fgreedy\u002Fmatroids":14545,"\u002Falgorithms\u002Fdynamic-programming\u002Fprinciples":14546,"\u002Falgorithms\u002Fdynamic-programming\u002Fsequence-dp":14547,"\u002Falgorithms\u002Fdynamic-programming\u002Flongest-increasing-subsequence":14548,"\u002Falgorithms\u002Fdynamic-programming\u002Fknapsack":14549,"\u002Falgorithms\u002Fdynamic-programming\u002Fcoin-change-and-unbounded":14550,"\u002Falgorithms\u002Fdynamic-programming\u002Finterval-dp":14551,"\u002Falgorithms\u002Fdynamic-programming\u002Ftree-dp":14552,"\u002Falgorithms\u002Fdynamic-programming\u002Fbitmask-dp":14553,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-optimizations":14554,"\u002Falgorithms\u002Fdynamic-programming\u002Fdp-on-graphs":14555,"\u002Falgorithms\u002Fbacktracking\u002Fbacktracking-fundamentals":14556,"\u002Falgorithms\u002Fbacktracking\u002Fconstraint-search":14557,"\u002Falgorithms\u002Fbacktracking\u002Fbranch-and-bound":14558,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fnumber-theory-basics":14559,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fmodular-exponentiation-and-primality":14560,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fsieve-and-factorization":14561,"\u002Falgorithms\u002Fmathematical-algorithms\u002Fcombinatorics":14562,"\u002Falgorithms\u002Fcomputational-geometry\u002Fgeometric-primitives":14563,"\u002Falgorithms\u002Fcomputational-geometry\u002Fconvex-hull":14564,"\u002Falgorithms\u002Fcomputational-geometry\u002Fsweep-line":14565,"\u002Falgorithms\u002Fintractability\u002Fp-np-reductions":14566,"\u002Falgorithms\u002Fintractability\u002Fnp-completeness":14567,"\u002Falgorithms\u002Fintractability\u002Fcoping-with-hardness":14568,"\u002Falgorithms":14569,"\u002Ftheory-of-computation":14572,"\u002Fcomputer-architecture":14575,"\u002Fphysical-computing":14578,"\u002Fdatabases":14581,"\u002Fdeep-learning":14584},{"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":14570,"title":14571,"module":376,"summary":376},"\u002Falgorithms","Algorithms",{"path":14573,"title":14574,"module":376,"summary":376},"\u002Ftheory-of-computation","Theory of Computation",{"path":14576,"title":14577,"module":376,"summary":376},"\u002Fcomputer-architecture","Computer Architecture",{"path":14579,"title":14580,"module":376,"summary":376},"\u002Fphysical-computing","Physical Computing",{"path":14582,"title":14583,"module":376,"summary":376},"\u002Fdatabases","Databases",{"path":14585,"title":14586,"module":376,"summary":376},"\u002Fdeep-learning","Deep Learning",1781560527387]