@stdlib/math-iter-sequences-continued-fraction 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +481 -0
- package/NOTICE +1 -0
- package/README.md +384 -0
- package/docs/img/equation_continued_fraction.svg +82 -0
- package/docs/img/equation_simple_continued_fraction.svg +69 -0
- package/docs/img/equation_simple_continued_fraction_convergents.svg +100 -0
- package/docs/repl.txt +77 -0
- package/docs/types/index.d.ts +87 -0
- package/docs/types/test.ts +98 -0
- package/lib/index.js +54 -0
- package/lib/main.js +349 -0
- package/lib/validate.js +89 -0
- package/package.json +95 -0
package/README.md
ADDED
|
@@ -0,0 +1,384 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
|
|
3
|
+
@license Apache-2.0
|
|
4
|
+
|
|
5
|
+
Copyright (c) 2022 The Stdlib Authors.
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
|
|
19
|
+
-->
|
|
20
|
+
|
|
21
|
+
# iterContinuedFractionSeq
|
|
22
|
+
|
|
23
|
+
[![NPM version][npm-image]][npm-url] [![Build Status][test-image]][test-url] [![Coverage Status][coverage-image]][coverage-url] <!-- [![dependencies][dependencies-image]][dependencies-url] -->
|
|
24
|
+
|
|
25
|
+
> Create an iterator which generates a list of all continued fraction terms which can be obtained given the precision of a provided number.
|
|
26
|
+
|
|
27
|
+
<!-- Section to include introductory text. Make sure to keep an empty line after the intro `section` element and another before the `/section` close. -->
|
|
28
|
+
|
|
29
|
+
<section class="intro">
|
|
30
|
+
|
|
31
|
+
A **generalized continued fraction** has the form
|
|
32
|
+
|
|
33
|
+
<!-- <equation class="equation" label="eq:continued_fraction" align="center" raw="x = b_0 + \frac{a_1}{b_1+\frac{a_2}{b_2+\frac{a_3}{b_3+\frac{a_4}{b_4+\ldots}}}}" alt="Continued fraction"> -->
|
|
34
|
+
|
|
35
|
+
<div class="equation" align="center" data-raw-text="x = b_0 + \frac{a_1}{b_1+\frac{a_2}{b_2+\frac{a_3}{b_3+\frac{a_4}{b_4+\ldots}}}}" data-equation="eq:continued_fraction">
|
|
36
|
+
<img src="https://cdn.jsdelivr.net/gh/stdlib-js/stdlib@b05b08e74e5706e091431f99b26166caea11fed9/lib/node_modules/@stdlib/math/iter/sequences/continued-fraction/docs/img/equation_continued_fraction.svg" alt="Continued fraction">
|
|
37
|
+
<br>
|
|
38
|
+
</div>
|
|
39
|
+
|
|
40
|
+
<!-- </equation> -->
|
|
41
|
+
|
|
42
|
+
If `a_i = 1` for all `i`, the above expression reduces to a **simple continued fraction**.
|
|
43
|
+
|
|
44
|
+
<!-- <equation class="equation" label="eq:simple_continued_fraction" align="center" raw="x = b_0 + \frac{1}{b_1+\frac{1}{b_2+\frac{1}{b_3+\frac{1}{b_4+\ldots}}}}" alt="Simple continued fraction"> -->
|
|
45
|
+
|
|
46
|
+
<div class="equation" align="center" data-raw-text="x = b_0 + \frac{1}{b_1+\frac{1}{b_2+\frac{1}{b_3+\frac{1}{b_4+\ldots}}}}" data-equation="eq:simple_continued_fraction">
|
|
47
|
+
<img src="https://cdn.jsdelivr.net/gh/stdlib-js/stdlib@b05b08e74e5706e091431f99b26166caea11fed9/lib/node_modules/@stdlib/math/iter/sequences/continued-fraction/docs/img/equation_simple_continued_fraction.svg" alt="Simple continued fraction">
|
|
48
|
+
<br>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
<!-- </equation> -->
|
|
52
|
+
|
|
53
|
+
where the values `b_i` are called the **coefficients** or **terms** of the continued fraction and the rationals
|
|
54
|
+
|
|
55
|
+
<!-- <equation class="equation" label="eq:simple_continued_fraction_convergents" align="center" raw="b_0, b_0 + \frac{1}{b_1},b_0 + \frac{1}{b_1 + \frac{1}{b2}},b_0 + \frac{1}{b_1 + \frac{1}{b2+\frac{1}{b3}}},\ldots" alt="Simple continued fraction convergents"> -->
|
|
56
|
+
|
|
57
|
+
<div class="equation" align="center" data-raw-text="b_0, b_0 + \frac{1}{b_1},b_0 + \frac{1}{b_1 + \frac{1}{b2}},b_0 + \frac{1}{b_1 + \frac{1}{b2+\frac{1}{b3}}},\ldots" data-equation="eq:simple_continued_fraction_convergents">
|
|
58
|
+
<img src="https://cdn.jsdelivr.net/gh/stdlib-js/stdlib@6be2d95d94757e01f8e07117664fdf14b5f82777/lib/node_modules/@stdlib/math/iter/sequences/continued-fraction/docs/img/equation_simple_continued_fraction_convergents.svg" alt="Simple continued fraction convergents">
|
|
59
|
+
<br>
|
|
60
|
+
</div>
|
|
61
|
+
|
|
62
|
+
<!-- </equation> -->
|
|
63
|
+
|
|
64
|
+
are called **convergents**.
|
|
65
|
+
|
|
66
|
+
</section>
|
|
67
|
+
|
|
68
|
+
<!-- /.intro -->
|
|
69
|
+
|
|
70
|
+
<!-- Package usage documentation. -->
|
|
71
|
+
|
|
72
|
+
<section class="installation">
|
|
73
|
+
|
|
74
|
+
## Installation
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
npm install @stdlib/math-iter-sequences-continued-fraction
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
</section>
|
|
81
|
+
|
|
82
|
+
<section class="usage">
|
|
83
|
+
|
|
84
|
+
## Usage
|
|
85
|
+
|
|
86
|
+
```javascript
|
|
87
|
+
var iterContinuedFractionSeq = require( '@stdlib/math-iter-sequences-continued-fraction' );
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
#### iterContinuedFractionSeq( x, \[options] )
|
|
91
|
+
|
|
92
|
+
Returns an iterator which generates a list of all continued fraction terms (`b_i`) which can be obtained given the precision of `x`.
|
|
93
|
+
|
|
94
|
+
```javascript
|
|
95
|
+
var it = iterContinuedFractionSeq( 3.245 );
|
|
96
|
+
// returns <Object>
|
|
97
|
+
|
|
98
|
+
var v = it.next().value;
|
|
99
|
+
// returns 3
|
|
100
|
+
|
|
101
|
+
v = it.next().value;
|
|
102
|
+
// returns 4
|
|
103
|
+
|
|
104
|
+
v = it.next().value;
|
|
105
|
+
// returns 12
|
|
106
|
+
|
|
107
|
+
v = it.next().value;
|
|
108
|
+
// returns 4
|
|
109
|
+
|
|
110
|
+
var bool = it.next().done;
|
|
111
|
+
// returns true
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
The returned iterator protocol-compliant object has the following properties:
|
|
115
|
+
|
|
116
|
+
- **next**: function which returns an iterator protocol-compliant object containing the next iterated value (if one exists) assigned to a `value` property and a `done` property having a `boolean` value indicating whether the iterator is finished.
|
|
117
|
+
- **return**: function which closes an iterator and returns a single (optional) argument in an iterator protocol-compliant object.
|
|
118
|
+
|
|
119
|
+
The function supports the following `options`:
|
|
120
|
+
|
|
121
|
+
- **iter**: maximum number of iterations. Default: `1e308`.
|
|
122
|
+
|
|
123
|
+
- **tol**: tolerance at which to terminate further evaluation of the continued fraction. Default: [floating-point epsilon][@stdlib/constants/float64/eps].
|
|
124
|
+
|
|
125
|
+
- **returns**: specifies the type of result to return. Must be one of the following options:
|
|
126
|
+
|
|
127
|
+
- **terms**: return continued fraction terms.
|
|
128
|
+
- **convergents**: return continued fraction convergents.
|
|
129
|
+
- **\***: return both continued fraction terms and their associated convergents as a two-element array: `[ <term>, <convergent> ]`.
|
|
130
|
+
|
|
131
|
+
Default: `'terms'`.
|
|
132
|
+
|
|
133
|
+
By default, in theory, the function returns an infinite iterator; however, in practice, due to limited precision, every floating-point number is a rational number, and, thus, every returned iterator will end in a finite number of iterations. To explicitly cap the maximum number of iterations, set the `iter` option.
|
|
134
|
+
|
|
135
|
+
```javascript
|
|
136
|
+
var opts = {
|
|
137
|
+
'iter': 2
|
|
138
|
+
};
|
|
139
|
+
var it = iterContinuedFractionSeq( 3.245, opts );
|
|
140
|
+
// returns <Object>
|
|
141
|
+
|
|
142
|
+
var v = it.next().value;
|
|
143
|
+
// returns 3
|
|
144
|
+
|
|
145
|
+
v = it.next().value;
|
|
146
|
+
// returns 4
|
|
147
|
+
|
|
148
|
+
var bool = it.next().done;
|
|
149
|
+
// returns true
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
The returned iterator terminates once the difference between the input value `x` and a continued fraction approximation is sufficiently small. The default tolerance is [floating-point epsilon][@stdlib/constants/float64/eps] (`~2.22e-16`). Once an update to a continued fraction approximation is less than or equal to this tolerance, the iterator terminates. To adjust the tolerance (e.g., to return a rough approximation of an input value `x`), set the `tol` option.
|
|
153
|
+
|
|
154
|
+
```javascript
|
|
155
|
+
var opts = {
|
|
156
|
+
'tol': 1.0e-7
|
|
157
|
+
};
|
|
158
|
+
var it = iterContinuedFractionSeq( 3.141592653589793, opts );
|
|
159
|
+
// returns <Object>
|
|
160
|
+
|
|
161
|
+
var v = it.next().value;
|
|
162
|
+
// returns 3
|
|
163
|
+
|
|
164
|
+
v = it.next().value;
|
|
165
|
+
// returns 7
|
|
166
|
+
|
|
167
|
+
v = it.next().value;
|
|
168
|
+
// returns 16
|
|
169
|
+
|
|
170
|
+
var bool = it.next().done;
|
|
171
|
+
// returns true
|
|
172
|
+
|
|
173
|
+
// The returned terms [3; 7, 16] evaluate to 3.1415929203539825
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
By default, the returned iterator returns continued fraction terms. To return convergents, set the `returns` option to `'convergents'`.
|
|
177
|
+
|
|
178
|
+
```javascript
|
|
179
|
+
var it = iterContinuedFractionSeq( 3.245, {
|
|
180
|
+
'returns': 'convergents'
|
|
181
|
+
});
|
|
182
|
+
// returns <Object>
|
|
183
|
+
|
|
184
|
+
var v = it.next().value;
|
|
185
|
+
// returns 3.0
|
|
186
|
+
|
|
187
|
+
v = it.next().value;
|
|
188
|
+
// returns 3.25
|
|
189
|
+
|
|
190
|
+
v = it.next().value;
|
|
191
|
+
// returns ~3.2449
|
|
192
|
+
|
|
193
|
+
v = it.next().value;
|
|
194
|
+
// returns 3.245
|
|
195
|
+
|
|
196
|
+
var bool = it.next().done;
|
|
197
|
+
// returns true
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
To return both continued fraction terms and their associated convergents, set the `returns` option to `*`.
|
|
201
|
+
|
|
202
|
+
```javascript
|
|
203
|
+
var it = iterContinuedFractionSeq( 3.245, {
|
|
204
|
+
'returns': '*'
|
|
205
|
+
});
|
|
206
|
+
// returns <Object>
|
|
207
|
+
|
|
208
|
+
var v = it.next().value;
|
|
209
|
+
// returns [ 3, 3.0 ]
|
|
210
|
+
|
|
211
|
+
v = it.next().value;
|
|
212
|
+
// returns [ 4, 3.25 ]
|
|
213
|
+
|
|
214
|
+
v = it.next().value;
|
|
215
|
+
// returns [ 12, ~3.2449 ]
|
|
216
|
+
|
|
217
|
+
v = it.next().value;
|
|
218
|
+
// returns [ 4, 3.245 ]
|
|
219
|
+
|
|
220
|
+
var bool = it.next().done;
|
|
221
|
+
// returns true
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
</section>
|
|
225
|
+
|
|
226
|
+
<!-- /.usage -->
|
|
227
|
+
|
|
228
|
+
<!-- Package usage notes. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->
|
|
229
|
+
|
|
230
|
+
<section class="notes">
|
|
231
|
+
|
|
232
|
+
## Notes
|
|
233
|
+
|
|
234
|
+
- The returned iterator returns the terms for a **simple continued fraction**.
|
|
235
|
+
- For `x < 0`, the returned iterator returns negated terms for `|x|` (i.e., if the terms for `|x|` are `[b0; b1, b2, ..., bn]`, the returned iterator returns `[-b0; -b1, -b2, ..., -bn]`). While other continued fraction representations are possible, floating-point rounding error can introduce asymmetries when evaluating terms to recover the original values for `|x|` and `x < 0`. Accordingly, alternative continued fraction representations for negative input values are not supported.
|
|
236
|
+
- If an environment supports `Symbol.iterator`, the returned iterator is iterable.
|
|
237
|
+
|
|
238
|
+
</section>
|
|
239
|
+
|
|
240
|
+
<!-- /.notes -->
|
|
241
|
+
|
|
242
|
+
<!-- Package usage examples. -->
|
|
243
|
+
|
|
244
|
+
<section class="examples">
|
|
245
|
+
|
|
246
|
+
## Examples
|
|
247
|
+
|
|
248
|
+
<!-- eslint no-undef: "error" -->
|
|
249
|
+
|
|
250
|
+
```javascript
|
|
251
|
+
var PI = require( '@stdlib/constants-float64-pi' );
|
|
252
|
+
var iterContinuedFractionSeq = require( '@stdlib/math-iter-sequences-continued-fraction' );
|
|
253
|
+
|
|
254
|
+
function evaluate( terms ) {
|
|
255
|
+
var sum;
|
|
256
|
+
var N;
|
|
257
|
+
var i;
|
|
258
|
+
|
|
259
|
+
N = terms.length;
|
|
260
|
+
sum = 0.0;
|
|
261
|
+
if ( N > 1 ) {
|
|
262
|
+
sum = 1.0 / terms[ N-1 ];
|
|
263
|
+
for ( i = N-2; i > 0; i-- ) {
|
|
264
|
+
sum = 1.0 / ( terms[ i ] + sum );
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
sum += terms[ 0 ];
|
|
268
|
+
return sum;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
// Create an iterator:
|
|
272
|
+
var opts = {
|
|
273
|
+
'iter': 20
|
|
274
|
+
};
|
|
275
|
+
var it = iterContinuedFractionSeq( PI, opts );
|
|
276
|
+
|
|
277
|
+
// Perform manual iteration...
|
|
278
|
+
var terms = [];
|
|
279
|
+
var v;
|
|
280
|
+
while ( true ) {
|
|
281
|
+
v = it.next();
|
|
282
|
+
if ( v.done ) {
|
|
283
|
+
break;
|
|
284
|
+
}
|
|
285
|
+
terms.push( v.value );
|
|
286
|
+
}
|
|
287
|
+
console.log( 'original: %d', PI );
|
|
288
|
+
console.log( terms );
|
|
289
|
+
console.log( 'computed: %d', evaluate( terms ) );
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
</section>
|
|
293
|
+
|
|
294
|
+
<!-- /.examples -->
|
|
295
|
+
|
|
296
|
+
<!-- Section to include cited references. If references are included, add a horizontal rule *before* the section. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->
|
|
297
|
+
|
|
298
|
+
<section class="references">
|
|
299
|
+
|
|
300
|
+
</section>
|
|
301
|
+
|
|
302
|
+
<!-- /.references -->
|
|
303
|
+
|
|
304
|
+
<!-- Section for related `stdlib` packages. Do not manually edit this section, as it is automatically populated. -->
|
|
305
|
+
|
|
306
|
+
<section class="related">
|
|
307
|
+
|
|
308
|
+
</section>
|
|
309
|
+
|
|
310
|
+
<!-- /.related -->
|
|
311
|
+
|
|
312
|
+
<!-- Section for all links. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
<section class="main-repo" >
|
|
316
|
+
|
|
317
|
+
* * *
|
|
318
|
+
|
|
319
|
+
## Notice
|
|
320
|
+
|
|
321
|
+
This package is part of [stdlib][stdlib], a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.
|
|
322
|
+
|
|
323
|
+
For more information on the project, filing bug reports and feature requests, and guidance on how to develop [stdlib][stdlib], see the main project [repository][stdlib].
|
|
324
|
+
|
|
325
|
+
#### Community
|
|
326
|
+
|
|
327
|
+
[![Chat][chat-image]][chat-url]
|
|
328
|
+
|
|
329
|
+
---
|
|
330
|
+
|
|
331
|
+
## License
|
|
332
|
+
|
|
333
|
+
See [LICENSE][stdlib-license].
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
## Copyright
|
|
337
|
+
|
|
338
|
+
Copyright © 2016-2022. The Stdlib [Authors][stdlib-authors].
|
|
339
|
+
|
|
340
|
+
</section>
|
|
341
|
+
|
|
342
|
+
<!-- /.stdlib -->
|
|
343
|
+
|
|
344
|
+
<!-- Section for all links. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->
|
|
345
|
+
|
|
346
|
+
<section class="links">
|
|
347
|
+
|
|
348
|
+
[npm-image]: http://img.shields.io/npm/v/@stdlib/math-iter-sequences-continued-fraction.svg
|
|
349
|
+
[npm-url]: https://npmjs.org/package/@stdlib/math-iter-sequences-continued-fraction
|
|
350
|
+
|
|
351
|
+
[test-image]: https://github.com/stdlib-js/math-iter-sequences-continued-fraction/actions/workflows/test.yml/badge.svg?branch=v0.0.1
|
|
352
|
+
[test-url]: https://github.com/stdlib-js/math-iter-sequences-continued-fraction/actions/workflows/test.yml?branch=v0.0.1
|
|
353
|
+
|
|
354
|
+
[coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/math-iter-sequences-continued-fraction/main.svg
|
|
355
|
+
[coverage-url]: https://codecov.io/github/stdlib-js/math-iter-sequences-continued-fraction?branch=main
|
|
356
|
+
|
|
357
|
+
<!--
|
|
358
|
+
|
|
359
|
+
[dependencies-image]: https://img.shields.io/david/stdlib-js/math-iter-sequences-continued-fraction.svg
|
|
360
|
+
[dependencies-url]: https://david-dm.org/stdlib-js/math-iter-sequences-continued-fraction/main
|
|
361
|
+
|
|
362
|
+
-->
|
|
363
|
+
|
|
364
|
+
[umd]: https://github.com/umdjs/umd
|
|
365
|
+
[es-module]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules
|
|
366
|
+
|
|
367
|
+
[deno-url]: https://github.com/stdlib-js/math-iter-sequences-continued-fraction/tree/deno
|
|
368
|
+
[umd-url]: https://github.com/stdlib-js/math-iter-sequences-continued-fraction/tree/umd
|
|
369
|
+
[esm-url]: https://github.com/stdlib-js/math-iter-sequences-continued-fraction/tree/esm
|
|
370
|
+
|
|
371
|
+
[chat-image]: https://img.shields.io/gitter/room/stdlib-js/stdlib.svg
|
|
372
|
+
[chat-url]: https://gitter.im/stdlib-js/stdlib/
|
|
373
|
+
|
|
374
|
+
[stdlib]: https://github.com/stdlib-js/stdlib
|
|
375
|
+
|
|
376
|
+
[stdlib-authors]: https://github.com/stdlib-js/stdlib/graphs/contributors
|
|
377
|
+
|
|
378
|
+
[stdlib-license]: https://raw.githubusercontent.com/stdlib-js/math-iter-sequences-continued-fraction/main/LICENSE
|
|
379
|
+
|
|
380
|
+
[@stdlib/constants/float64/eps]: https://www.npmjs.com/package/@stdlib/constants-float64-eps
|
|
381
|
+
|
|
382
|
+
</section>
|
|
383
|
+
|
|
384
|
+
<!-- /.links -->
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="26.759ex" height="10.343ex" style="vertical-align: -7.505ex;" viewBox="0 -1221.9 11521 4453.1" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg" aria-labelledby="MathJax-SVG-1-Title">
|
|
2
|
+
<title id="MathJax-SVG-1-Title">x equals b 0 plus ContinuedFraction a 1 Over b 1 plus StartFraction a 2 Over b 2 plus StartFraction a 3 Over b 3 plus StartFraction a 4 Over b 4 plus ellipsis</title>
|
|
3
|
+
<defs aria-hidden="true">
|
|
4
|
+
<path stroke-width="1" id="E1-MJMATHI-78" d="M52 289Q59 331 106 386T222 442Q257 442 286 424T329 379Q371 442 430 442Q467 442 494 420T522 361Q522 332 508 314T481 292T458 288Q439 288 427 299T415 328Q415 374 465 391Q454 404 425 404Q412 404 406 402Q368 386 350 336Q290 115 290 78Q290 50 306 38T341 26Q378 26 414 59T463 140Q466 150 469 151T485 153H489Q504 153 504 145Q504 144 502 134Q486 77 440 33T333 -11Q263 -11 227 52Q186 -10 133 -10H127Q78 -10 57 16T35 71Q35 103 54 123T99 143Q142 143 142 101Q142 81 130 66T107 46T94 41L91 40Q91 39 97 36T113 29T132 26Q168 26 194 71Q203 87 217 139T245 247T261 313Q266 340 266 352Q266 380 251 392T217 404Q177 404 142 372T93 290Q91 281 88 280T72 278H58Q52 284 52 289Z"></path>
|
|
5
|
+
<path stroke-width="1" id="E1-MJMAIN-3D" d="M56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153Z"></path>
|
|
6
|
+
<path stroke-width="1" id="E1-MJMATHI-62" d="M73 647Q73 657 77 670T89 683Q90 683 161 688T234 694Q246 694 246 685T212 542Q204 508 195 472T180 418L176 399Q176 396 182 402Q231 442 283 442Q345 442 383 396T422 280Q422 169 343 79T173 -11Q123 -11 82 27T40 150V159Q40 180 48 217T97 414Q147 611 147 623T109 637Q104 637 101 637H96Q86 637 83 637T76 640T73 647ZM336 325V331Q336 405 275 405Q258 405 240 397T207 376T181 352T163 330L157 322L136 236Q114 150 114 114Q114 66 138 42Q154 26 178 26Q211 26 245 58Q270 81 285 114T318 219Q336 291 336 325Z"></path>
|
|
7
|
+
<path stroke-width="1" id="E1-MJMAIN-30" d="M96 585Q152 666 249 666Q297 666 345 640T423 548Q460 465 460 320Q460 165 417 83Q397 41 362 16T301 -15T250 -22Q224 -22 198 -16T137 16T82 83Q39 165 39 320Q39 494 96 585ZM321 597Q291 629 250 629Q208 629 178 597Q153 571 145 525T137 333Q137 175 145 125T181 46Q209 16 250 16Q290 16 318 46Q347 76 354 130T362 333Q362 478 354 524T321 597Z"></path>
|
|
8
|
+
<path stroke-width="1" id="E1-MJMAIN-2B" d="M56 237T56 250T70 270H369V420L370 570Q380 583 389 583Q402 583 409 568V270H707Q722 262 722 250T707 230H409V-68Q401 -82 391 -82H389H387Q375 -82 369 -68V230H70Q56 237 56 250Z"></path>
|
|
9
|
+
<path stroke-width="1" id="E1-MJMATHI-61" d="M33 157Q33 258 109 349T280 441Q331 441 370 392Q386 422 416 422Q429 422 439 414T449 394Q449 381 412 234T374 68Q374 43 381 35T402 26Q411 27 422 35Q443 55 463 131Q469 151 473 152Q475 153 483 153H487Q506 153 506 144Q506 138 501 117T481 63T449 13Q436 0 417 -8Q409 -10 393 -10Q359 -10 336 5T306 36L300 51Q299 52 296 50Q294 48 292 46Q233 -10 172 -10Q117 -10 75 30T33 157ZM351 328Q351 334 346 350T323 385T277 405Q242 405 210 374T160 293Q131 214 119 129Q119 126 119 118T118 106Q118 61 136 44T179 26Q217 26 254 59T298 110Q300 114 325 217T351 328Z"></path>
|
|
10
|
+
<path stroke-width="1" id="E1-MJMAIN-31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path>
|
|
11
|
+
<path stroke-width="1" id="E1-MJMAIN-32" d="M109 429Q82 429 66 447T50 491Q50 562 103 614T235 666Q326 666 387 610T449 465Q449 422 429 383T381 315T301 241Q265 210 201 149L142 93L218 92Q375 92 385 97Q392 99 409 186V189H449V186Q448 183 436 95T421 3V0H50V19V31Q50 38 56 46T86 81Q115 113 136 137Q145 147 170 174T204 211T233 244T261 278T284 308T305 340T320 369T333 401T340 431T343 464Q343 527 309 573T212 619Q179 619 154 602T119 569T109 550Q109 549 114 549Q132 549 151 535T170 489Q170 464 154 447T109 429Z"></path>
|
|
12
|
+
<path stroke-width="1" id="E1-MJMAIN-33" d="M127 463Q100 463 85 480T69 524Q69 579 117 622T233 665Q268 665 277 664Q351 652 390 611T430 522Q430 470 396 421T302 350L299 348Q299 347 308 345T337 336T375 315Q457 262 457 175Q457 96 395 37T238 -22Q158 -22 100 21T42 130Q42 158 60 175T105 193Q133 193 151 175T169 130Q169 119 166 110T159 94T148 82T136 74T126 70T118 67L114 66Q165 21 238 21Q293 21 321 74Q338 107 338 175V195Q338 290 274 322Q259 328 213 329L171 330L168 332Q166 335 166 348Q166 366 174 366Q202 366 232 371Q266 376 294 413T322 525V533Q322 590 287 612Q265 626 240 626Q208 626 181 615T143 592T132 580H135Q138 579 143 578T153 573T165 566T175 555T183 540T186 520Q186 498 172 481T127 463Z"></path>
|
|
13
|
+
<path stroke-width="1" id="E1-MJMAIN-34" d="M462 0Q444 3 333 3Q217 3 199 0H190V46H221Q241 46 248 46T265 48T279 53T286 61Q287 63 287 115V165H28V211L179 442Q332 674 334 675Q336 677 355 677H373L379 671V211H471V165H379V114Q379 73 379 66T385 54Q393 47 442 46H471V0H462ZM293 211V545L74 212L183 211H293Z"></path>
|
|
14
|
+
<path stroke-width="1" id="E1-MJMAIN-2026" d="M78 60Q78 84 95 102T138 120Q162 120 180 104T199 61Q199 36 182 18T139 0T96 17T78 60ZM525 60Q525 84 542 102T585 120Q609 120 627 104T646 61Q646 36 629 18T586 0T543 17T525 60ZM972 60Q972 84 989 102T1032 120Q1056 120 1074 104T1093 61Q1093 36 1076 18T1033 0T990 17T972 60Z"></path>
|
|
15
|
+
</defs>
|
|
16
|
+
<g stroke="currentColor" fill="currentColor" stroke-width="0" transform="matrix(1 0 0 -1 0 0)" aria-hidden="true">
|
|
17
|
+
<use xlink:href="#E1-MJMATHI-78" x="0" y="0"></use>
|
|
18
|
+
<use xlink:href="#E1-MJMAIN-3D" x="850" y="0"></use>
|
|
19
|
+
<g transform="translate(1906,0)">
|
|
20
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
21
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-30" x="607" y="-213"></use>
|
|
22
|
+
</g>
|
|
23
|
+
<use xlink:href="#E1-MJMAIN-2B" x="3012" y="0"></use>
|
|
24
|
+
<g transform="translate(3790,0)">
|
|
25
|
+
<g transform="translate(342,0)">
|
|
26
|
+
<rect stroke="none" width="7268" height="60" x="0" y="220"></rect>
|
|
27
|
+
<g transform="translate(3142,676)">
|
|
28
|
+
<use xlink:href="#E1-MJMATHI-61" x="0" y="0"></use>
|
|
29
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="748" y="-213"></use>
|
|
30
|
+
</g>
|
|
31
|
+
<g transform="translate(60,-917)">
|
|
32
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
33
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="607" y="-213"></use>
|
|
34
|
+
<use xlink:href="#E1-MJMAIN-2B" x="1105" y="0"></use>
|
|
35
|
+
<g transform="translate(1884,0)">
|
|
36
|
+
<g transform="translate(342,0)">
|
|
37
|
+
<rect stroke="none" width="4801" height="60" x="0" y="220"></rect>
|
|
38
|
+
<g transform="translate(2034,584)">
|
|
39
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMATHI-61" x="0" y="0"></use>
|
|
40
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-32" x="652" y="-243"></use>
|
|
41
|
+
</g>
|
|
42
|
+
<g transform="translate(60,-768)">
|
|
43
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
44
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-32" x="529" y="-243"></use>
|
|
45
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-2B" x="935" y="0"></use>
|
|
46
|
+
<g transform="translate(1212,0)">
|
|
47
|
+
<g transform="translate(120,0)">
|
|
48
|
+
<rect stroke="none" width="3229" height="60" x="0" y="146"></rect>
|
|
49
|
+
<g transform="translate(1290,569)">
|
|
50
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-61" x="0" y="0"></use>
|
|
51
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-33" x="529" y="-322"></use>
|
|
52
|
+
</g>
|
|
53
|
+
<g transform="translate(60,-802)">
|
|
54
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
55
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-33" x="429" y="-322"></use>
|
|
56
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-2B" x="1030" y="0"></use>
|
|
57
|
+
<g transform="translate(1038,0)">
|
|
58
|
+
<g transform="translate(120,0)">
|
|
59
|
+
<rect stroke="none" width="1831" height="60" x="0" y="113"></rect>
|
|
60
|
+
<g transform="translate(591,530)">
|
|
61
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-61" x="0" y="0"></use>
|
|
62
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-34" x="529" y="-334"></use>
|
|
63
|
+
</g>
|
|
64
|
+
<g transform="translate(60,-451)">
|
|
65
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
66
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-34" x="429" y="-334"></use>
|
|
67
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-2B" x="1030" y="0"></use>
|
|
68
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-2026" x="1808" y="0"></use>
|
|
69
|
+
</g>
|
|
70
|
+
</g>
|
|
71
|
+
</g>
|
|
72
|
+
</g>
|
|
73
|
+
</g>
|
|
74
|
+
</g>
|
|
75
|
+
</g>
|
|
76
|
+
</g>
|
|
77
|
+
</g>
|
|
78
|
+
</g>
|
|
79
|
+
</g>
|
|
80
|
+
</g>
|
|
81
|
+
</g>
|
|
82
|
+
</svg>
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="26.759ex" height="10.676ex" style="vertical-align: -7.338ex;" viewBox="0 -1437.2 11521 4596.6" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg" aria-labelledby="MathJax-SVG-1-Title">
|
|
2
|
+
<title id="MathJax-SVG-1-Title">x equals b 0 plus ContinuedFraction 1 Over b 1 plus StartFraction 1 Over b 2 plus StartFraction 1 Over b 3 plus StartFraction 1 Over b 4 plus ellipsis</title>
|
|
3
|
+
<defs aria-hidden="true">
|
|
4
|
+
<path stroke-width="1" id="E1-MJMATHI-78" d="M52 289Q59 331 106 386T222 442Q257 442 286 424T329 379Q371 442 430 442Q467 442 494 420T522 361Q522 332 508 314T481 292T458 288Q439 288 427 299T415 328Q415 374 465 391Q454 404 425 404Q412 404 406 402Q368 386 350 336Q290 115 290 78Q290 50 306 38T341 26Q378 26 414 59T463 140Q466 150 469 151T485 153H489Q504 153 504 145Q504 144 502 134Q486 77 440 33T333 -11Q263 -11 227 52Q186 -10 133 -10H127Q78 -10 57 16T35 71Q35 103 54 123T99 143Q142 143 142 101Q142 81 130 66T107 46T94 41L91 40Q91 39 97 36T113 29T132 26Q168 26 194 71Q203 87 217 139T245 247T261 313Q266 340 266 352Q266 380 251 392T217 404Q177 404 142 372T93 290Q91 281 88 280T72 278H58Q52 284 52 289Z"></path>
|
|
5
|
+
<path stroke-width="1" id="E1-MJMAIN-3D" d="M56 347Q56 360 70 367H707Q722 359 722 347Q722 336 708 328L390 327H72Q56 332 56 347ZM56 153Q56 168 72 173H708Q722 163 722 153Q722 140 707 133H70Q56 140 56 153Z"></path>
|
|
6
|
+
<path stroke-width="1" id="E1-MJMATHI-62" d="M73 647Q73 657 77 670T89 683Q90 683 161 688T234 694Q246 694 246 685T212 542Q204 508 195 472T180 418L176 399Q176 396 182 402Q231 442 283 442Q345 442 383 396T422 280Q422 169 343 79T173 -11Q123 -11 82 27T40 150V159Q40 180 48 217T97 414Q147 611 147 623T109 637Q104 637 101 637H96Q86 637 83 637T76 640T73 647ZM336 325V331Q336 405 275 405Q258 405 240 397T207 376T181 352T163 330L157 322L136 236Q114 150 114 114Q114 66 138 42Q154 26 178 26Q211 26 245 58Q270 81 285 114T318 219Q336 291 336 325Z"></path>
|
|
7
|
+
<path stroke-width="1" id="E1-MJMAIN-30" d="M96 585Q152 666 249 666Q297 666 345 640T423 548Q460 465 460 320Q460 165 417 83Q397 41 362 16T301 -15T250 -22Q224 -22 198 -16T137 16T82 83Q39 165 39 320Q39 494 96 585ZM321 597Q291 629 250 629Q208 629 178 597Q153 571 145 525T137 333Q137 175 145 125T181 46Q209 16 250 16Q290 16 318 46Q347 76 354 130T362 333Q362 478 354 524T321 597Z"></path>
|
|
8
|
+
<path stroke-width="1" id="E1-MJMAIN-2B" d="M56 237T56 250T70 270H369V420L370 570Q380 583 389 583Q402 583 409 568V270H707Q722 262 722 250T707 230H409V-68Q401 -82 391 -82H389H387Q375 -82 369 -68V230H70Q56 237 56 250Z"></path>
|
|
9
|
+
<path stroke-width="1" id="E1-MJMAIN-31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path>
|
|
10
|
+
<path stroke-width="1" id="E1-MJMAIN-32" d="M109 429Q82 429 66 447T50 491Q50 562 103 614T235 666Q326 666 387 610T449 465Q449 422 429 383T381 315T301 241Q265 210 201 149L142 93L218 92Q375 92 385 97Q392 99 409 186V189H449V186Q448 183 436 95T421 3V0H50V19V31Q50 38 56 46T86 81Q115 113 136 137Q145 147 170 174T204 211T233 244T261 278T284 308T305 340T320 369T333 401T340 431T343 464Q343 527 309 573T212 619Q179 619 154 602T119 569T109 550Q109 549 114 549Q132 549 151 535T170 489Q170 464 154 447T109 429Z"></path>
|
|
11
|
+
<path stroke-width="1" id="E1-MJMAIN-33" d="M127 463Q100 463 85 480T69 524Q69 579 117 622T233 665Q268 665 277 664Q351 652 390 611T430 522Q430 470 396 421T302 350L299 348Q299 347 308 345T337 336T375 315Q457 262 457 175Q457 96 395 37T238 -22Q158 -22 100 21T42 130Q42 158 60 175T105 193Q133 193 151 175T169 130Q169 119 166 110T159 94T148 82T136 74T126 70T118 67L114 66Q165 21 238 21Q293 21 321 74Q338 107 338 175V195Q338 290 274 322Q259 328 213 329L171 330L168 332Q166 335 166 348Q166 366 174 366Q202 366 232 371Q266 376 294 413T322 525V533Q322 590 287 612Q265 626 240 626Q208 626 181 615T143 592T132 580H135Q138 579 143 578T153 573T165 566T175 555T183 540T186 520Q186 498 172 481T127 463Z"></path>
|
|
12
|
+
<path stroke-width="1" id="E1-MJMAIN-34" d="M462 0Q444 3 333 3Q217 3 199 0H190V46H221Q241 46 248 46T265 48T279 53T286 61Q287 63 287 115V165H28V211L179 442Q332 674 334 675Q336 677 355 677H373L379 671V211H471V165H379V114Q379 73 379 66T385 54Q393 47 442 46H471V0H462ZM293 211V545L74 212L183 211H293Z"></path>
|
|
13
|
+
<path stroke-width="1" id="E1-MJMAIN-2026" d="M78 60Q78 84 95 102T138 120Q162 120 180 104T199 61Q199 36 182 18T139 0T96 17T78 60ZM525 60Q525 84 542 102T585 120Q609 120 627 104T646 61Q646 36 629 18T586 0T543 17T525 60ZM972 60Q972 84 989 102T1032 120Q1056 120 1074 104T1093 61Q1093 36 1076 18T1033 0T990 17T972 60Z"></path>
|
|
14
|
+
</defs>
|
|
15
|
+
<g stroke="currentColor" fill="currentColor" stroke-width="0" transform="matrix(1 0 0 -1 0 0)" aria-hidden="true">
|
|
16
|
+
<use xlink:href="#E1-MJMATHI-78" x="0" y="0"></use>
|
|
17
|
+
<use xlink:href="#E1-MJMAIN-3D" x="850" y="0"></use>
|
|
18
|
+
<g transform="translate(1906,0)">
|
|
19
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
20
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-30" x="607" y="-213"></use>
|
|
21
|
+
</g>
|
|
22
|
+
<use xlink:href="#E1-MJMAIN-2B" x="3012" y="0"></use>
|
|
23
|
+
<g transform="translate(3790,0)">
|
|
24
|
+
<g transform="translate(342,0)">
|
|
25
|
+
<rect stroke="none" width="7268" height="60" x="0" y="220"></rect>
|
|
26
|
+
<use xlink:href="#E1-MJMAIN-31" x="3383" y="676"></use>
|
|
27
|
+
<g transform="translate(60,-937)">
|
|
28
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
29
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="607" y="-213"></use>
|
|
30
|
+
<use xlink:href="#E1-MJMAIN-2B" x="1105" y="0"></use>
|
|
31
|
+
<g transform="translate(1884,0)">
|
|
32
|
+
<g transform="translate(342,0)">
|
|
33
|
+
<rect stroke="none" width="4801" height="60" x="0" y="220"></rect>
|
|
34
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="3145" y="629"></use>
|
|
35
|
+
<g transform="translate(60,-700)">
|
|
36
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
37
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-32" x="529" y="-243"></use>
|
|
38
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-2B" x="935" y="0"></use>
|
|
39
|
+
<g transform="translate(1212,0)">
|
|
40
|
+
<g transform="translate(120,0)">
|
|
41
|
+
<rect stroke="none" width="3229" height="60" x="0" y="146"></rect>
|
|
42
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-31" x="2562" y="647"></use>
|
|
43
|
+
<g transform="translate(60,-740)">
|
|
44
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
45
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-33" x="429" y="-322"></use>
|
|
46
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-2B" x="1030" y="0"></use>
|
|
47
|
+
<g transform="translate(1038,0)">
|
|
48
|
+
<g transform="translate(120,0)">
|
|
49
|
+
<rect stroke="none" width="1831" height="60" x="0" y="113"></rect>
|
|
50
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-31" x="1344" y="589"></use>
|
|
51
|
+
<g transform="translate(60,-451)">
|
|
52
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
53
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-34" x="429" y="-334"></use>
|
|
54
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-2B" x="1030" y="0"></use>
|
|
55
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-2026" x="1808" y="0"></use>
|
|
56
|
+
</g>
|
|
57
|
+
</g>
|
|
58
|
+
</g>
|
|
59
|
+
</g>
|
|
60
|
+
</g>
|
|
61
|
+
</g>
|
|
62
|
+
</g>
|
|
63
|
+
</g>
|
|
64
|
+
</g>
|
|
65
|
+
</g>
|
|
66
|
+
</g>
|
|
67
|
+
</g>
|
|
68
|
+
</g>
|
|
69
|
+
</svg>
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="46.014ex" height="8.343ex" style="vertical-align: -5.005ex;" viewBox="0 -1437.2 19811.3 3591.9" role="img" focusable="false" xmlns="http://www.w3.org/2000/svg" aria-labelledby="MathJax-SVG-1-Title">
|
|
2
|
+
<title id="MathJax-SVG-1-Title">b 0 comma b 0 plus StartFraction 1 Over b 1 EndFraction comma b 0 plus StartStartFraction 1 OverOver b 1 plus StartFraction 1 Over b Baseline 2 EndFraction EndEndFraction comma b 0 plus StartStartStartFraction 1 OverOverOver b 1 plus StartStartFraction 1 OverOver b Baseline 2 plus StartFraction 1 Over b Baseline 3 EndFraction EndEndFraction EndEndEndFraction comma ellipsis</title>
|
|
3
|
+
<defs aria-hidden="true">
|
|
4
|
+
<path stroke-width="1" id="E1-MJMATHI-62" d="M73 647Q73 657 77 670T89 683Q90 683 161 688T234 694Q246 694 246 685T212 542Q204 508 195 472T180 418L176 399Q176 396 182 402Q231 442 283 442Q345 442 383 396T422 280Q422 169 343 79T173 -11Q123 -11 82 27T40 150V159Q40 180 48 217T97 414Q147 611 147 623T109 637Q104 637 101 637H96Q86 637 83 637T76 640T73 647ZM336 325V331Q336 405 275 405Q258 405 240 397T207 376T181 352T163 330L157 322L136 236Q114 150 114 114Q114 66 138 42Q154 26 178 26Q211 26 245 58Q270 81 285 114T318 219Q336 291 336 325Z"></path>
|
|
5
|
+
<path stroke-width="1" id="E1-MJMAIN-30" d="M96 585Q152 666 249 666Q297 666 345 640T423 548Q460 465 460 320Q460 165 417 83Q397 41 362 16T301 -15T250 -22Q224 -22 198 -16T137 16T82 83Q39 165 39 320Q39 494 96 585ZM321 597Q291 629 250 629Q208 629 178 597Q153 571 145 525T137 333Q137 175 145 125T181 46Q209 16 250 16Q290 16 318 46Q347 76 354 130T362 333Q362 478 354 524T321 597Z"></path>
|
|
6
|
+
<path stroke-width="1" id="E1-MJMAIN-2C" d="M78 35T78 60T94 103T137 121Q165 121 187 96T210 8Q210 -27 201 -60T180 -117T154 -158T130 -185T117 -194Q113 -194 104 -185T95 -172Q95 -168 106 -156T131 -126T157 -76T173 -3V9L172 8Q170 7 167 6T161 3T152 1T140 0Q113 0 96 17Z"></path>
|
|
7
|
+
<path stroke-width="1" id="E1-MJMAIN-2B" d="M56 237T56 250T70 270H369V420L370 570Q380 583 389 583Q402 583 409 568V270H707Q722 262 722 250T707 230H409V-68Q401 -82 391 -82H389H387Q375 -82 369 -68V230H70Q56 237 56 250Z"></path>
|
|
8
|
+
<path stroke-width="1" id="E1-MJMAIN-31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path>
|
|
9
|
+
<path stroke-width="1" id="E1-MJMAIN-32" d="M109 429Q82 429 66 447T50 491Q50 562 103 614T235 666Q326 666 387 610T449 465Q449 422 429 383T381 315T301 241Q265 210 201 149L142 93L218 92Q375 92 385 97Q392 99 409 186V189H449V186Q448 183 436 95T421 3V0H50V19V31Q50 38 56 46T86 81Q115 113 136 137Q145 147 170 174T204 211T233 244T261 278T284 308T305 340T320 369T333 401T340 431T343 464Q343 527 309 573T212 619Q179 619 154 602T119 569T109 550Q109 549 114 549Q132 549 151 535T170 489Q170 464 154 447T109 429Z"></path>
|
|
10
|
+
<path stroke-width="1" id="E1-MJMAIN-33" d="M127 463Q100 463 85 480T69 524Q69 579 117 622T233 665Q268 665 277 664Q351 652 390 611T430 522Q430 470 396 421T302 350L299 348Q299 347 308 345T337 336T375 315Q457 262 457 175Q457 96 395 37T238 -22Q158 -22 100 21T42 130Q42 158 60 175T105 193Q133 193 151 175T169 130Q169 119 166 110T159 94T148 82T136 74T126 70T118 67L114 66Q165 21 238 21Q293 21 321 74Q338 107 338 175V195Q338 290 274 322Q259 328 213 329L171 330L168 332Q166 335 166 348Q166 366 174 366Q202 366 232 371Q266 376 294 413T322 525V533Q322 590 287 612Q265 626 240 626Q208 626 181 615T143 592T132 580H135Q138 579 143 578T153 573T165 566T175 555T183 540T186 520Q186 498 172 481T127 463Z"></path>
|
|
11
|
+
<path stroke-width="1" id="E1-MJMAIN-2026" d="M78 60Q78 84 95 102T138 120Q162 120 180 104T199 61Q199 36 182 18T139 0T96 17T78 60ZM525 60Q525 84 542 102T585 120Q609 120 627 104T646 61Q646 36 629 18T586 0T543 17T525 60ZM972 60Q972 84 989 102T1032 120Q1056 120 1074 104T1093 61Q1093 36 1076 18T1033 0T990 17T972 60Z"></path>
|
|
12
|
+
</defs>
|
|
13
|
+
<g stroke="currentColor" fill="currentColor" stroke-width="0" transform="matrix(1 0 0 -1 0 0)" aria-hidden="true">
|
|
14
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
15
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-30" x="607" y="-213"></use>
|
|
16
|
+
<use xlink:href="#E1-MJMAIN-2C" x="883" y="0"></use>
|
|
17
|
+
<g transform="translate(1328,0)">
|
|
18
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
19
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-30" x="607" y="-213"></use>
|
|
20
|
+
</g>
|
|
21
|
+
<use xlink:href="#E1-MJMAIN-2B" x="2434" y="0"></use>
|
|
22
|
+
<g transform="translate(3212,0)">
|
|
23
|
+
<g transform="translate(342,0)">
|
|
24
|
+
<rect stroke="none" width="1003" height="60" x="0" y="220"></rect>
|
|
25
|
+
<use xlink:href="#E1-MJMAIN-31" x="251" y="676"></use>
|
|
26
|
+
<g transform="translate(60,-715)">
|
|
27
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
28
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="607" y="-213"></use>
|
|
29
|
+
</g>
|
|
30
|
+
</g>
|
|
31
|
+
</g>
|
|
32
|
+
<use xlink:href="#E1-MJMAIN-2C" x="4678" y="0"></use>
|
|
33
|
+
<g transform="translate(5123,0)">
|
|
34
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
35
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-30" x="607" y="-213"></use>
|
|
36
|
+
</g>
|
|
37
|
+
<use xlink:href="#E1-MJMAIN-2B" x="6229" y="0"></use>
|
|
38
|
+
<g transform="translate(7007,0)">
|
|
39
|
+
<g transform="translate(342,0)">
|
|
40
|
+
<rect stroke="none" width="3243" height="60" x="0" y="220"></rect>
|
|
41
|
+
<use xlink:href="#E1-MJMAIN-31" x="1371" y="676"></use>
|
|
42
|
+
<g transform="translate(60,-937)">
|
|
43
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
44
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="607" y="-213"></use>
|
|
45
|
+
<use xlink:href="#E1-MJMAIN-2B" x="1105" y="0"></use>
|
|
46
|
+
<g transform="translate(1884,0)">
|
|
47
|
+
<g transform="translate(342,0)">
|
|
48
|
+
<rect stroke="none" width="777" height="60" x="0" y="220"></rect>
|
|
49
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="299" y="629"></use>
|
|
50
|
+
<g transform="translate(60,-436)">
|
|
51
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
52
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-32" x="429" y="0"></use>
|
|
53
|
+
</g>
|
|
54
|
+
</g>
|
|
55
|
+
</g>
|
|
56
|
+
</g>
|
|
57
|
+
</g>
|
|
58
|
+
</g>
|
|
59
|
+
<use xlink:href="#E1-MJMAIN-2C" x="10713" y="0"></use>
|
|
60
|
+
<g transform="translate(11158,0)">
|
|
61
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
62
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-30" x="607" y="-213"></use>
|
|
63
|
+
</g>
|
|
64
|
+
<use xlink:href="#E1-MJMAIN-2B" x="12264" y="0"></use>
|
|
65
|
+
<g transform="translate(13043,0)">
|
|
66
|
+
<g transform="translate(342,0)">
|
|
67
|
+
<rect stroke="none" width="4688" height="60" x="0" y="220"></rect>
|
|
68
|
+
<use xlink:href="#E1-MJMAIN-31" x="2093" y="676"></use>
|
|
69
|
+
<g transform="translate(60,-937)">
|
|
70
|
+
<use xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
71
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="607" y="-213"></use>
|
|
72
|
+
<use xlink:href="#E1-MJMAIN-2B" x="1105" y="0"></use>
|
|
73
|
+
<g transform="translate(1884,0)">
|
|
74
|
+
<g transform="translate(342,0)">
|
|
75
|
+
<rect stroke="none" width="2221" height="60" x="0" y="220"></rect>
|
|
76
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-31" x="1320" y="629"></use>
|
|
77
|
+
<g transform="translate(60,-700)">
|
|
78
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
79
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-32" x="429" y="0"></use>
|
|
80
|
+
<use transform="scale(0.707)" xlink:href="#E1-MJMAIN-2B" x="930" y="0"></use>
|
|
81
|
+
<g transform="translate(1208,0)">
|
|
82
|
+
<g transform="translate(120,0)">
|
|
83
|
+
<rect stroke="none" width="653" height="60" x="0" y="146"></rect>
|
|
84
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-31" x="319" y="647"></use>
|
|
85
|
+
<g transform="translate(60,-417)">
|
|
86
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMATHI-62" x="0" y="0"></use>
|
|
87
|
+
<use transform="scale(0.574)" xlink:href="#E1-MJMAIN-33" x="429" y="0"></use>
|
|
88
|
+
</g>
|
|
89
|
+
</g>
|
|
90
|
+
</g>
|
|
91
|
+
</g>
|
|
92
|
+
</g>
|
|
93
|
+
</g>
|
|
94
|
+
</g>
|
|
95
|
+
</g>
|
|
96
|
+
</g>
|
|
97
|
+
<use xlink:href="#E1-MJMAIN-2C" x="18193" y="0"></use>
|
|
98
|
+
<use xlink:href="#E1-MJMAIN-2026" x="18638" y="0"></use>
|
|
99
|
+
</g>
|
|
100
|
+
</svg>
|