@dashkite/joy 0.3.15 → 0.4.0

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.
@@ -1,429 +1,466 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.wrap = exports.wait = exports.unary = exports.ternary = exports.tee = exports.substitute = exports.stack = exports.spread = exports.send = exports.rtee = exports.proxy = exports.pipeWith = exports.pipe = exports.partial = exports.once = exports.memoize = exports.identity = exports.flowWith = exports.flow = exports.flip = exports.detach = exports.curry = exports.compose = exports.chain = exports.bind = exports.binary = exports.arity = exports.apply = exports._ = void 0;
7
-
8
- var _,
9
- apply,
10
- arity,
11
- binary,
12
- bind,
13
- chain,
14
- compose,
15
- curry,
16
- detach,
17
- flip,
18
- flow,
19
- flowWith,
20
- identity,
21
- isPromise,
22
- memoize,
23
- once,
24
- partial,
25
- pipe,
26
- pipeWith,
27
- proxy,
28
- rtee,
29
- send,
30
- spread,
31
- stack,
32
- substitute,
33
- tee,
34
- ternary,
35
- unary,
36
- wait,
37
- wrap,
38
- splice = [].splice;
39
-
40
- exports.wrap = wrap;
41
- exports.wait = wait;
42
- exports.unary = unary;
43
- exports.ternary = ternary;
44
- exports.tee = tee;
45
- exports.substitute = substitute;
46
- exports.stack = stack;
47
- exports.spread = spread;
48
- exports.send = send;
49
- exports.rtee = rtee;
50
- exports.proxy = proxy;
51
- exports.pipeWith = pipeWith;
52
- exports.pipe = pipe;
53
- exports.partial = partial;
54
- exports.once = once;
55
- exports.memoize = memoize;
56
- exports.identity = identity;
57
- exports.flowWith = flowWith;
58
- exports.flow = flow;
59
- exports.flip = flip;
60
- exports.detach = detach;
61
- exports.curry = curry;
62
- exports.compose = compose;
63
- exports.chain = chain;
64
- exports.bind = bind;
65
- exports.binary = binary;
66
- exports.arity = arity;
67
- exports.apply = apply;
68
- exports._ = _;
69
-
70
- exports.identity = identity = function (x) {
71
- return x;
72
- };
73
-
74
- exports.wrap = wrap = function (x) {
75
- return function () {
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ _: function() {
13
+ return _;
14
+ },
15
+ apply: function() {
16
+ return apply;
17
+ },
18
+ arity: function() {
19
+ return arity;
20
+ },
21
+ binary: function() {
22
+ return binary;
23
+ },
24
+ bind: function() {
25
+ return bind;
26
+ },
27
+ chain: function() {
28
+ return chain;
29
+ },
30
+ compose: function() {
31
+ return compose;
32
+ },
33
+ curry: function() {
34
+ return curry;
35
+ },
36
+ default: function() {
37
+ return _default //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL2Z1bmN0aW9uLmNvZmZlZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxJQUFBLENBQUEsRUFBQSxLQUFBLEVBQUEsS0FBQSxFQUFBLE1BQUEsRUFBQSxJQUFBLEVBQUEsS0FBQSxFQUFBLE9BQUEsRUFBQSxLQUFBLEVBQUEsTUFBQSxFQUFBLElBQUEsRUFBQSxJQUFBLEVBQUEsUUFBQSxFQUFBLFNBQUEsRUFBQSxHQUFBLEVBQUEsT0FBQSxFQUFBLElBQUEsRUFBQSxPQUFBLEVBQUEsSUFBQSxFQUFBLEtBQUEsRUFBQSxJQUFBLEVBQUEsSUFBQSxFQUFBLE1BQUEsRUFBQSxLQUFBLEVBQUEsVUFBQSxFQUFBLEdBQUEsRUFBQSxPQUFBLEVBQUEsS0FBQSxFQUFBLElBQUEsRUFBQSxJQUFBO0VBQUE7O0FBQUEsUUFBQSxHQUFXLFFBQUEsQ0FBQyxDQUFELENBQUE7U0FBTztBQUFQOztBQUVYLElBQUEsR0FBTyxRQUFBLENBQUMsQ0FBRCxDQUFBO1NBQU8sUUFBQSxDQUFBLENBQUE7V0FBRztFQUFIO0FBQVAsRUFGUDs7OztBQU1BLEtBQUEsR0FBUyxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtBQUNQLFVBQU8sQ0FBUDtBQUFBLFNBQ08sQ0FEUDthQUVJLFFBQUEsQ0FBQSxHQUFDLEVBQUQsQ0FBQTtlQUFXLENBQUMsQ0FBQyxLQUFGLENBQVEsSUFBUixFQUFXLEVBQVg7TUFBWDtBQUZKLFNBR08sQ0FIUDthQUlJLFFBQUEsQ0FBQyxFQUFELENBQUE7ZUFBUSxDQUFDLENBQUMsS0FBRixDQUFRLElBQVIsRUFBVyxTQUFYO01BQVI7QUFKSixTQUtPLENBTFA7YUFNSSxRQUFBLENBQUMsRUFBRCxFQUFLLEVBQUwsQ0FBQTtlQUFhLENBQUMsQ0FBQyxLQUFGLENBQVEsSUFBUixFQUFXLFNBQVg7TUFBYjtBQU5KLFNBT08sQ0FQUDthQVFJLFFBQUEsQ0FBQyxFQUFE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QTNCYSxFQTRCYixLQTVCYSIsInNvdXJjZXNDb250ZW50IjpbImlkZW50aXR5ID0gKHgpIC0+IHhcblxud3JhcCA9ICh4KSAtPiAtPiB4XG5cbiMgQmFzZWQgb24gX2FyaXR5IGZyb20gUmFtYmRhOlxuIyBodHRwczovL2dpdGh1Yi5jb20vcmFtZGEvcmFtZGEvYmxvYi92MC4yNi4xL3NvdXJjZS9pbnRlcm5hbC9fYXJpdHkuanNcbmFyaXR5ICA9IChOLCBmKSAtPlxuICBzd2l0Y2ggTlxuICAgIHdoZW4gMFxuICAgICAgKGF4Li4uKSAtPiBmLmFwcGx5IEAsIGF4XG4gICAgd2hlbiAxXG4gICAgICAoYTApIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiAyXG4gICAgICAoYTAsIGExKSAgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDNcbiAgICAgIChhMCwgYTEsIGEyKSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gNFxuICAgICAgKGEwLCBhMSwgYTIsIGEzKSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gNVxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCkgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDZcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gN1xuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gOFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNykgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDlcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1LCBhNiwgYTcsIGE4KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gMTBcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1LCBhNiwgYTcsIGE4LCBhOSkgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICBlbHNlXG4gICAgICB0aHJvdyBuZXcgRXJyb3IgXCJGaXJzdCBhcmd1bWVudCB0byBhcml0eSBtdXN0IGJlIGFuIGludGVnZXIgYmV0d2VlbiAwIGFuZCAxMCwgaW5jbHVzaXZlLlwiXG5cbnVuYXJ5ID0gKGYpIC0+IGFyaXR5IDEsIGZcblxuYmluYXJ5ID0gKGYpIC0+IGFyaXR5IDIsIGZcblxudGVybmFyeSA9IChmKSAtPiBhcml0eSAzLCBmXG5cbmZsaXAgPSAoZikgLT5cbiAgc3dpdGNoIGYubGVuZ3RoXG4gICAgd2hlbiAwXG4gICAgICBmXG4gICAgd2hlbiAxXG4gICAgICAoYTApIC0+IGYuY2FsbCBALCBhMFxuICAgIHdoZW4gMlxuICAgICAgKGEwLCBhMSkgIC0+IGYuY2FsbCBALCBhMSwgYTBcbiAgICB3aGVuIDNcbiAgICAgIChhMCwgYTEsIGEyKSAtPiBmLmNhbGwgQCwgYTIsIGExLCBhMFxuICAgIHdoZW4gNFxuICAgICAgKGEwLCBhMSwgYTIsIGEzKSAtPiBmLmNhbGwgQCwgYTMsIGEyLCBhMSwgYTBcbiAgICB3aGVuIDVcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQpIC0+IGYuY2FsbCBALCBhNCwgYTMsIGEyLCBhMSwgYTBcbiAgICB3aGVuIDZcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSAtPiBmLmNhbGwgQCwgYTUsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gN1xuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KSAtPiBmLmNhbGwgQCwgYTYsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gOFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNykgLT5cbiAgICAgICAgZi5jYWxsIEAsIGE3LCBhNiwgYTUsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gOVxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNywgYTgpIC0+XG4gICAgICAgIGYuY2FsbCBALCBhOCwgYTcsIGE2LCBhNSwgYTQsIGEzLCBhMiwgYTEsIGEwXG4gICAgd2hlbiAxMFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNywgYTgsIGE5KSAtPlxuICAgICAgICBmLmNhbGwgQCwgYTksIGE4LCBhNywgYTYsIGE1LCBhNCwgYTMsIGEyLCBhMSwgYTBcbiAgICBlbHNlXG4gICAgICAoYXguLi4pIC0+IGYuYXBwbHkgQCwgYXgucmV2ZXJzZSgpXG5cbmN1cnJ5ID0gKGYpIC0+XG4gIGlmIGYubGVuZ3RoID4gMVxuICAgIGFyaXR5IGYubGVuZ3RoLCAoYXguLi4pIC0+XG4gICAgICBzZWxmID0gQFxuICAgICAgaWYgYXgubGVuZ3RoID49IGYubGVuZ3RoXG4gICAgICAgIGYuYXBwbHkgc2VsZiwgYXhcbiAgICAgIGVsc2VcbiAgICAgICAgbGVuZ3RoID0gZi5sZW5ndGggLSBheC5sZW5ndGhcbiAgICAgICAgaWYgbGVuZ3RoID09IDFcbiAgICAgICAgICAoeCkgLT4gZi5hcHBseSBzZWxmLCBbIGF4Li4uLCB4IF1cbiAgICAgICAgZWxzZVxuICAgICAgICAgIGN1cnJ5IGFyaXR5IGxlbmd0aCwgKGJ4Li4uKSAtPiBmLmFwcGx5IHNlbGYsIFsgYXguLi4sIGJ4Li4uIF1cbiAgZWxzZSBmXG5cbl8gPSB7fVxuXG5zdWJzdGl0dXRlID0gY3VycnkgKGF4LCBieCkgLT5cbiAgaSA9IDBcbiAgZm9yIGEgaW4gYXhcbiAgICBpZiBhID09IF9cbiAgICAgIGJ4W2krK11cbiAgICBlbHNlXG4gICAgICBhXG5cbnBhcnRpYWwgPSAoZiwgYXgpIC0+XG4gIG4gPSAwXG4gIGZvciBhIGluIGF4IHdoZW4gYSA9PSBfXG4gICAgbisrXG4gIGFyaXR5IG4sIChieC4uLikgLT4gZiAoc3Vic3RpdHV0ZSBheCwgYngpLi4uXG5cbnNwcmVhZCA9IChmKSAtPiAoYXgpIC0+IGYgYXguLi5cblxuc3RhY2sgPSAoZikgLT4gKGF4Li4uKSAtPiBmIGF4XG5cbnBpcGUgPSAoIGZ4ICkgLT5cbiAgZG8gKCBuID0gZnhbIDAgXS5sZW5ndGggKSAtPiAgICBcbiAgICBhcml0eSBuLCAoIGFyZ3MuLi4gKSAtPlxuICAgICAgZm9yIGYgaW4gZnhcbiAgICAgICAgYXJncyA9IFsgZiBhcmdzLi4uIF1cbiAgICAgIGFyZ3NbIDAgXVxuXG5mbG93ID0gKCBmeCApIC0+XG4gIGRvICggbiA9IGZ4WyAwIF0ubGVuZ3RoICkgLT4gICAgXG4gICAgYXJpdHkgbiwgKCBhcmdzLi4uICkgLT5cbiAgICAgIGZvciBmIGluIGZ4XG4gICAgICAgIGFyZ3MgPSBbIGF3YWl0IGYgYXJncy4uLiBdXG4gICAgICBhcmdzWyAwIF1cblxuY29tcG9zZSA9IChmeCkgLT4gcGlwZSBmeC5yZXZlcnNlKClcblxud2FpdCA9IChmKSAtPlxuICBhcml0eSBmLmxlbmd0aCwgKGF4Li4uKSAtPlxuICAgIFByb21pc2UuYWxsIGF4XG4gICAgICAudGhlbiAoYXgpIC0+IGYgYXguLi5cblxudGVlID0gKGYpIC0+XG4gIGFyaXR5IChNYXRoLm1heCBmLmxlbmd0aCwgMSksIChhLCBieC4uLikgLT5cbiAgICBzZWxmID0gQFxuICAgIGlmIChrID0gKGYuYXBwbHkgc2VsZiwgWyBhLCBieC4uLiBdKSk/LnRoZW4/XG4gICAgICBrLnRoZW4gLT4gYVxuICAgIGVsc2VcbiAgICAgIGFcblxucnRlZSA9IChmKSAtPlxuICBhcml0eSAoTWF0aC5tYXggZi5sZW5ndGgsIDEpLCAoYXguLi4sIGIpIC0+XG4gICAgc2VsZiA9IEBcbiAgICBpZiAoayA9IChmLmFwcGx5IHNlbGYsIFsgYXguLi4sIGIgXSkpPy50aGVuP1xuICAgICAgay50aGVuIC0+IGJcbiAgICBlbHNlXG4gICAgICBiXG5cbm9uY2UgPSAoZikgLT5cbiAgZG8gKGs9dW5kZWZpbmVkKSAtPlxuICAgIGFyaXR5IGYubGVuZ3RoLFxuICAgICAgKGF4Li4uKSAtPiBpZiBrPyB0aGVuIGsgZWxzZSAoayA9IGFwcGx5IGYsIGF4KVxuXG5tZW1vaXplID0gKGYpIC0+XG4gIGRvIChjYWNoZSA9IHt9KSAtPlxuICAgIGFyaXR5IGYubGVuZ3RoLCAoYXguLi4pIC0+XG4gICAgICBjYWNoZVsgSlNPTi5zdHJpbmdpZnkgYXggXSA/PSBhcHBseSBmLCBheFxuXG5hcHBseSA9IGN1cnJ5IChmLCBheCkgLT4gZi5hcHBseSBudWxsLCBheFxuXG5iaW5kID0gY3VycnkgKGYsIHgpIC0+IGYuYmluZCB4XG5cbmRldGFjaCA9IChmKSAtPlxuICBjdXJyeSBhcml0eSAoZi5sZW5ndGggKyAxKSwgXG4gICAgKHgsIGFyZ3MuLi4pIC0+IGYuYXBwbHkgeCwgYXJnc1xuXG5zZW5kID0gY3VycnkgKG5hbWUsIGF4LCBvYmplY3QpIC0+IG9iamVjdFtuYW1lXS5hcHBseSBvYmplY3QsIGF4XG5cbmlzUHJvbWlzZSA9IChrKSAtPiBrIGluc3RhbmNlb2YgUHJvbWlzZVxuXG5jaGFpbiA9IChmKSAtPlxuICBhcml0eSAoTWF0aC5tYXggZi5sZW5ndGgsIDEpLCAoYXguLi4pIC0+XG4gICAgc2VsZiA9IEBcbiAgICBpZiAoaXNQcm9taXNlIChrID0gKGYuYXBwbHkgc2VsZiwgYXgpKSlcbiAgICAgIGsudGhlbiAtPiBzZWxmXG4gICAgZWxzZVxuICAgICAgc2VsZlxuXG5tYXAgPSAoIGZ4ICkgLT5cbiAgZG8gKHsgbGVuZ3RocywgbGVuZ3RoIH0gPSB7fSkgLT5cbiAgICBsZW5ndGhzID0gZngubWFwICggZiApIC0+IGYubGVuZ3RoXG4gICAgbGVuZ3RoID0gTWF0aC5tYXggbGVuZ3Rocy4uLlxuICAgIGFyaXR5IGxlbmd0aCwgKCBhcmdzLi4uICkgLT5cbiAgICAgICggZiBhcmdzLi4uICkgZm9yIGYgaW4gZnhcblxucHJveHkgPSBjdXJyeSAobmFtZSwgYXgpIC0+XG4gIChieC4uLikgLT4gQFtuYW1lXS5hcHBseSBALCBbIGF4Li4uLCBieC4uLiBdXG5cbmV4cG9ydCB7XG4gIGlkZW50aXR5XG4gIHdyYXBcbiAgYXJpdHlcbiAgdW5hcnlcbiAgYmluYXJ5XG4gIHRlcm5hcnlcbiAgZmxpcFxuICBjdXJyeVxuICBfXG4gIHN1YnN0aXR1dGVcbiAgcGFydGlhbFxuICBzcHJlYWRcbiAgc3RhY2tcbiAgcGlwZVxuICBjb21wb3NlXG4gIHdhaXRcbiAgZmxvd1xuICB0ZWVcbiAgcnRlZVxuICBvbmNlXG4gIG1lbW9pemVcbiAgYXBwbHlcbiAgYmluZFxuICBkZXRhY2hcbiAgc2VuZFxuICBjaGFpblxuICBtYXBcbiAgcHJveHlcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBpZGVudGl0eVxuICB3cmFwXG4gIGFyaXR5XG4gIHVuYXJ5XG4gIGJpbmFyeVxuICB0ZXJuYXJ5XG4gIGZsaXBcbiAgY3VycnlcbiAgX1xuICBzdWJzdGl0dXRlXG4gIHBhcnRpYWxcbiAgc3ByZWFkXG4gIHN0YWNrXG4gIHBpcGVcbiAgY29tcG9zZVxuICB3YWl0XG4gIGZsb3dcbiAgdGVlXG4gIHJ0ZWVcbiAgb25jZVxuICBtZW1vaXplXG4gIGFwcGx5XG4gIGJpbmRcbiAgZGV0YWNoXG4gIHNlbmRcbiAgY2hhaW5cbiAgbWFwXG4gIHByb3h5XG59XG4iXX0=
38
+ //# sourceURL=/@dashkite/joy/src/function.coffee
39
+ ;
40
+ },
41
+ detach: function() {
42
+ return detach;
43
+ },
44
+ flip: function() {
45
+ return flip;
46
+ },
47
+ flow: function() {
48
+ return flow;
49
+ },
50
+ identity: function() {
51
+ return identity;
52
+ },
53
+ map: function() {
54
+ return map;
55
+ },
56
+ memoize: function() {
57
+ return memoize;
58
+ },
59
+ once: function() {
60
+ return once;
61
+ },
62
+ partial: function() {
63
+ return partial;
64
+ },
65
+ pipe: function() {
66
+ return pipe;
67
+ },
68
+ proxy: function() {
69
+ return proxy;
70
+ },
71
+ rtee: function() {
72
+ return rtee;
73
+ },
74
+ send: function() {
75
+ return send;
76
+ },
77
+ spread: function() {
78
+ return spread;
79
+ },
80
+ stack: function() {
81
+ return stack;
82
+ },
83
+ substitute: function() {
84
+ return substitute;
85
+ },
86
+ tee: function() {
87
+ return tee;
88
+ },
89
+ ternary: function() {
90
+ return ternary;
91
+ },
92
+ unary: function() {
93
+ return unary;
94
+ },
95
+ wait: function() {
96
+ return wait;
97
+ },
98
+ wrap: function() {
99
+ return wrap;
100
+ }
101
+ });
102
+ var _, apply, arity, binary, bind, chain, compose, curry, detach, flip, flow, identity, isPromise, map, memoize, once, partial, pipe, proxy, rtee, send, spread, stack, substitute, tee, ternary, unary, wait, wrap, splice = [].splice;
103
+ identity = function(x) {
76
104
  return x;
77
- };
78
- }; // Based on _arity from Rambda:
79
- // https://github.com/ramda/ramda/blob/v0.26.1/source/internal/_arity.js
80
-
81
-
82
- exports.arity = arity = function (N, f) {
83
- switch (N) {
84
- case 0:
85
- return function (...ax) {
86
- return f.apply(this, ax);
87
- };
88
-
89
- case 1:
90
- return function (a0) {
91
- return f.apply(this, arguments);
92
- };
93
-
94
- case 2:
95
- return function (a0, a1) {
96
- return f.apply(this, arguments);
97
- };
98
-
99
- case 3:
100
- return function (a0, a1, a2) {
101
- return f.apply(this, arguments);
102
- };
103
-
104
- case 4:
105
- return function (a0, a1, a2, a3) {
106
- return f.apply(this, arguments);
107
- };
108
-
109
- case 5:
110
- return function (a0, a1, a2, a3, a4) {
111
- return f.apply(this, arguments);
112
- };
113
-
114
- case 6:
115
- return function (a0, a1, a2, a3, a4, a5) {
116
- return f.apply(this, arguments);
117
- };
118
-
119
- case 7:
120
- return function (a0, a1, a2, a3, a4, a5, a6) {
121
- return f.apply(this, arguments);
122
- };
123
-
124
- case 8:
125
- return function (a0, a1, a2, a3, a4, a5, a6, a7) {
126
- return f.apply(this, arguments);
127
- };
128
-
129
- case 9:
130
- return function (a0, a1, a2, a3, a4, a5, a6, a7, a8) {
131
- return f.apply(this, arguments);
132
- };
133
-
134
- case 10:
135
- return function (a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
136
- return f.apply(this, arguments);
137
- };
138
-
139
- default:
140
- throw new Error("First argument to arity must be an integer between 0 and 10, inclusive.");
141
- }
142
105
  };
143
-
144
- exports.unary = unary = function (f) {
145
- return arity(1, f);
106
+ wrap = function(x) {
107
+ return function() {
108
+ return x;
109
+ };
146
110
  };
147
-
148
- exports.binary = binary = function (f) {
149
- return arity(2, f);
111
+ // Based on _arity from Rambda:
112
+ // https://github.com/ramda/ramda/blob/v0.26.1/source/internal/_arity.js
113
+ arity = function(N, f) {
114
+ switch(N){
115
+ case 0:
116
+ return function(...ax) {
117
+ return f.apply(this, ax);
118
+ };
119
+ case 1:
120
+ return function(a0) {
121
+ return f.apply(this, arguments);
122
+ };
123
+ case 2:
124
+ return function(a0, a1) {
125
+ return f.apply(this, arguments);
126
+ };
127
+ case 3:
128
+ return function(a0, a1, a2) {
129
+ return f.apply(this, arguments);
130
+ };
131
+ case 4:
132
+ return function(a0, a1, a2, a3) {
133
+ return f.apply(this, arguments);
134
+ };
135
+ case 5:
136
+ return function(a0, a1, a2, a3, a4) {
137
+ return f.apply(this, arguments);
138
+ };
139
+ case 6:
140
+ return function(a0, a1, a2, a3, a4, a5) {
141
+ return f.apply(this, arguments);
142
+ };
143
+ case 7:
144
+ return function(a0, a1, a2, a3, a4, a5, a6) {
145
+ return f.apply(this, arguments);
146
+ };
147
+ case 8:
148
+ return function(a0, a1, a2, a3, a4, a5, a6, a7) {
149
+ return f.apply(this, arguments);
150
+ };
151
+ case 9:
152
+ return function(a0, a1, a2, a3, a4, a5, a6, a7, a8) {
153
+ return f.apply(this, arguments);
154
+ };
155
+ case 10:
156
+ return function(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
157
+ return f.apply(this, arguments);
158
+ };
159
+ default:
160
+ throw new Error("First argument to arity must be an integer between 0 and 10, inclusive.");
161
+ }
150
162
  };
151
-
152
- exports.ternary = ternary = function (f) {
153
- return arity(3, f);
163
+ unary = function(f) {
164
+ return arity(1, f);
154
165
  };
155
-
156
- exports.flip = flip = function (f) {
157
- switch (f.length) {
158
- case 0:
159
- return f;
160
-
161
- case 1:
162
- return function (a0) {
163
- return f.call(this, a0);
164
- };
165
-
166
- case 2:
167
- return function (a0, a1) {
168
- return f.call(this, a1, a0);
169
- };
170
-
171
- case 3:
172
- return function (a0, a1, a2) {
173
- return f.call(this, a2, a1, a0);
174
- };
175
-
176
- case 4:
177
- return function (a0, a1, a2, a3) {
178
- return f.call(this, a3, a2, a1, a0);
179
- };
180
-
181
- case 5:
182
- return function (a0, a1, a2, a3, a4) {
183
- return f.call(this, a4, a3, a2, a1, a0);
184
- };
185
-
186
- case 6:
187
- return function (a0, a1, a2, a3, a4, a5) {
188
- return f.call(this, a5, a4, a3, a2, a1, a0);
189
- };
190
-
191
- case 7:
192
- return function (a0, a1, a2, a3, a4, a5, a6) {
193
- return f.call(this, a6, a4, a3, a2, a1, a0);
194
- };
195
-
196
- case 8:
197
- return function (a0, a1, a2, a3, a4, a5, a6, a7) {
198
- return f.call(this, a7, a6, a5, a4, a3, a2, a1, a0);
199
- };
200
-
201
- case 9:
202
- return function (a0, a1, a2, a3, a4, a5, a6, a7, a8) {
203
- return f.call(this, a8, a7, a6, a5, a4, a3, a2, a1, a0);
204
- };
205
-
206
- case 10:
207
- return function (a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
208
- return f.call(this, a9, a8, a7, a6, a5, a4, a3, a2, a1, a0);
209
- };
210
-
211
- default:
212
- return function (...ax) {
213
- return f.apply(this, ax.reverse());
214
- };
215
- }
166
+ binary = function(f) {
167
+ return arity(2, f);
216
168
  };
217
-
218
- exports.curry = curry = function (f) {
219
- return arity(f.length, function (...ax) {
220
- var length, self;
221
- self = this;
222
-
223
- if (ax.length >= f.length) {
224
- return f.apply(self, ax);
225
- } else {
226
- length = f.length - ax.length;
227
-
228
- if (length === 1) {
229
- return function (x) {
230
- return f.apply(self, [...ax, x]);
231
- };
232
- } else {
233
- return curry(arity(length, function (...bx) {
234
- return f.apply(self, [...ax, ...bx]);
235
- }));
236
- }
169
+ ternary = function(f) {
170
+ return arity(3, f);
171
+ };
172
+ flip = function(f) {
173
+ switch(f.length){
174
+ case 0:
175
+ return f;
176
+ case 1:
177
+ return function(a0) {
178
+ return f.call(this, a0);
179
+ };
180
+ case 2:
181
+ return function(a0, a1) {
182
+ return f.call(this, a1, a0);
183
+ };
184
+ case 3:
185
+ return function(a0, a1, a2) {
186
+ return f.call(this, a2, a1, a0);
187
+ };
188
+ case 4:
189
+ return function(a0, a1, a2, a3) {
190
+ return f.call(this, a3, a2, a1, a0);
191
+ };
192
+ case 5:
193
+ return function(a0, a1, a2, a3, a4) {
194
+ return f.call(this, a4, a3, a2, a1, a0);
195
+ };
196
+ case 6:
197
+ return function(a0, a1, a2, a3, a4, a5) {
198
+ return f.call(this, a5, a4, a3, a2, a1, a0);
199
+ };
200
+ case 7:
201
+ return function(a0, a1, a2, a3, a4, a5, a6) {
202
+ return f.call(this, a6, a4, a3, a2, a1, a0);
203
+ };
204
+ case 8:
205
+ return function(a0, a1, a2, a3, a4, a5, a6, a7) {
206
+ return f.call(this, a7, a6, a5, a4, a3, a2, a1, a0);
207
+ };
208
+ case 9:
209
+ return function(a0, a1, a2, a3, a4, a5, a6, a7, a8) {
210
+ return f.call(this, a8, a7, a6, a5, a4, a3, a2, a1, a0);
211
+ };
212
+ case 10:
213
+ return function(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
214
+ return f.call(this, a9, a8, a7, a6, a5, a4, a3, a2, a1, a0);
215
+ };
216
+ default:
217
+ return function(...ax) {
218
+ return f.apply(this, ax.reverse());
219
+ };
237
220
  }
238
- });
239
221
  };
240
-
241
- exports._ = _ = {};
242
- exports.substitute = substitute = curry(function (ax, bx) {
243
- var a, i, j, len, results;
244
- i = 0;
245
- results = [];
246
-
247
- for (j = 0, len = ax.length; j < len; j++) {
248
- a = ax[j];
249
-
250
- if (a === _) {
251
- results.push(bx[i++]);
222
+ curry = function(f) {
223
+ if (f.length > 1) {
224
+ return arity(f.length, function(...ax) {
225
+ var length, self;
226
+ self = this;
227
+ if (ax.length >= f.length) {
228
+ return f.apply(self, ax);
229
+ } else {
230
+ length = f.length - ax.length;
231
+ if (length === 1) {
232
+ return function(x) {
233
+ return f.apply(self, [
234
+ ...ax,
235
+ x
236
+ ]);
237
+ };
238
+ } else {
239
+ return curry(arity(length, function(...bx) {
240
+ return f.apply(self, [
241
+ ...ax,
242
+ ...bx
243
+ ]);
244
+ }));
245
+ }
246
+ }
247
+ });
252
248
  } else {
253
- results.push(a);
249
+ return f;
254
250
  }
255
- }
256
-
257
- return results;
258
- });
259
-
260
- exports.partial = partial = function (f, ax) {
261
- var a, j, len, n;
262
- n = 0;
263
-
264
- for (j = 0, len = ax.length; j < len; j++) {
265
- a = ax[j];
266
-
267
- if (a === _) {
268
- n++;
269
- }
270
- }
271
-
272
- return arity(n, function (...bx) {
273
- return f(...substitute(ax, bx));
274
- });
275
- };
276
-
277
- exports.spread = spread = function (f) {
278
- return function (ax) {
279
- return f(...ax);
280
- };
281
251
  };
282
-
283
- exports.stack = stack = function (f) {
284
- return function (...ax) {
285
- return f(ax);
286
- };
287
- }; // Inspired by Rambda: https://ramdajs.com/docs/#pipeWith
288
-
289
-
290
- exports.pipeWith = pipeWith = curry(function (c, fx) {
291
- var f, gx;
292
-
293
- gx = function () {
294
- var j, len, results;
252
+ _ = {};
253
+ substitute = curry(function(ax, bx) {
254
+ var a, i, j, len, results;
255
+ i = 0;
295
256
  results = [];
296
-
297
- for (j = 0, len = fx.length; j < len; j++) {
298
- f = fx[j];
299
- results.push(c(f));
257
+ for(j = 0, len = ax.length; j < len; j++){
258
+ a = ax[j];
259
+ if (a === _) {
260
+ results.push(bx[i++]);
261
+ } else {
262
+ results.push(a);
263
+ }
300
264
  }
301
-
302
265
  return results;
303
- }();
304
-
305
- return arity(fx[0].length, function (...ax) {
306
- var i, j, len;
307
-
308
- for (i = j = 0, len = gx.length; j < len; i = ++j) {
309
- f = gx[i];
310
- ax = [f(...ax)];
311
- }
312
-
313
- return ax[0];
314
- });
315
266
  });
316
- exports.pipe = pipe = pipeWith(identity);
317
-
318
- exports.compose = compose = function (fx) {
319
- return pipe(fx.reverse());
320
- };
321
-
322
- exports.wait = wait = function (f) {
323
- return arity(f.length, function (...ax) {
324
- return Promise.all(ax).then(function (ax) {
325
- return f(...ax);
267
+ partial = function(f, ax) {
268
+ var a, j, len, n;
269
+ n = 0;
270
+ for(j = 0, len = ax.length; j < len; j++){
271
+ a = ax[j];
272
+ if (a === _) {
273
+ n++;
274
+ }
275
+ }
276
+ return arity(n, function(...bx) {
277
+ return f(...substitute(ax, bx));
326
278
  });
327
- });
328
279
  };
329
-
330
- exports.flow = flow = pipeWith(wait);
331
- exports.flowWith = flowWith = curry(function (c, fx) {
332
- return pipeWith(pipe([c, wait]), fx);
333
- });
334
-
335
- exports.tee = tee = function (f) {
336
- return arity(Math.max(f.length, 1), function (a, ...bx) {
337
- var k, ref, self;
338
- self = this;
339
-
340
- if (((ref = k = f.apply(self, [a, ...bx])) != null ? ref.then : void 0) != null) {
341
- return k.then(function () {
342
- return a;
343
- });
344
- } else {
345
- return a;
346
- }
347
- });
280
+ spread = function(f) {
281
+ return function(ax) {
282
+ return f(...ax);
283
+ };
348
284
  };
349
-
350
- exports.rtee = rtee = function (f) {
351
- return arity(Math.max(f.length, 1), function (...ax) {
352
- var b, k, ref, ref1, self;
353
- ref = ax, [...ax] = ref, [b] = splice.call(ax, -1);
354
- self = this;
355
-
356
- if (((ref1 = k = f.apply(self, [...ax, b])) != null ? ref1.then : void 0) != null) {
357
- return k.then(function () {
358
- return b;
359
- });
360
- } else {
361
- return b;
362
- }
363
- });
285
+ stack = function(f) {
286
+ return function(...ax) {
287
+ return f(ax);
288
+ };
364
289
  };
365
-
366
- exports.once = once = function (f) {
367
- return function (k) {
368
- return arity(f.length, function (...ax) {
369
- if (k != null) {
370
- return k;
371
- } else {
372
- return k = apply(f, ax);
373
- }
290
+ pipe = function(fx) {
291
+ return function(n) {
292
+ return arity(n, function(...args) {
293
+ var f, j, len;
294
+ for(j = 0, len = fx.length; j < len; j++){
295
+ f = fx[j];
296
+ args = [
297
+ f(...args)
298
+ ];
299
+ }
300
+ return args[0];
301
+ });
302
+ }(fx[0].length);
303
+ };
304
+ flow = function(fx) {
305
+ return function(n) {
306
+ return arity(n, async function(...args) {
307
+ var f, j, len;
308
+ for(j = 0, len = fx.length; j < len; j++){
309
+ f = fx[j];
310
+ args = [
311
+ await f(...args)
312
+ ];
313
+ }
314
+ return args[0];
315
+ });
316
+ }(fx[0].length);
317
+ };
318
+ compose = function(fx) {
319
+ return pipe(fx.reverse());
320
+ };
321
+ wait = function(f) {
322
+ return arity(f.length, function(...ax) {
323
+ return Promise.all(ax).then(function(ax) {
324
+ return f(...ax);
325
+ });
374
326
  });
375
- }(void 0);
376
327
  };
377
-
378
- exports.memoize = memoize = function (f) {
379
- return function (cache) {
380
- return arity(f.length, function (...ax) {
381
- var name1;
382
- return cache[name1 = JSON.stringify(ax)] != null ? cache[name1] : cache[name1] = apply(f, ax);
328
+ tee = function(f) {
329
+ return arity(Math.max(f.length, 1), function(a, ...bx) {
330
+ var k, ref, self;
331
+ self = this;
332
+ if (((ref = k = f.apply(self, [
333
+ a,
334
+ ...bx
335
+ ])) != null ? ref.then : void 0) != null) {
336
+ return k.then(function() {
337
+ return a;
338
+ });
339
+ } else {
340
+ return a;
341
+ }
383
342
  });
384
- }({});
385
343
  };
386
-
387
- exports.apply = apply = curry(function (f, ax) {
388
- return f(...ax);
344
+ rtee = function(f) {
345
+ return arity(Math.max(f.length, 1), function(...ax) {
346
+ var b, k, ref, ref1, self;
347
+ ref = ax, [...ax] = ref, [b] = splice.call(ax, -1);
348
+ self = this;
349
+ if (((ref1 = k = f.apply(self, [
350
+ ...ax,
351
+ b
352
+ ])) != null ? ref1.then : void 0) != null) {
353
+ return k.then(function() {
354
+ return b;
355
+ });
356
+ } else {
357
+ return b;
358
+ }
359
+ });
360
+ };
361
+ once = function(f) {
362
+ return function(k) {
363
+ return arity(f.length, function(...ax) {
364
+ if (k != null) {
365
+ return k;
366
+ } else {
367
+ return k = apply(f, ax);
368
+ }
369
+ });
370
+ }(void 0);
371
+ };
372
+ memoize = function(f) {
373
+ return function(cache) {
374
+ return arity(f.length, function(...ax) {
375
+ var name1;
376
+ return cache[name1 = JSON.stringify(ax)] != null ? cache[name1] : cache[name1] = apply(f, ax);
377
+ });
378
+ }({});
379
+ };
380
+ apply = curry(function(f, ax) {
381
+ return f.apply(null, ax);
389
382
  });
390
- exports.bind = bind = curry(function (f, x) {
391
- return f.bind(x);
383
+ bind = curry(function(f, x) {
384
+ return f.bind(x);
392
385
  });
393
-
394
- exports.detach = detach = function (f) {
395
- return arity(f.length + 1, curry(function (x, ...args) {
396
- return f.apply(x, args);
397
- }));
386
+ detach = function(f) {
387
+ return curry(arity(f.length + 1, function(x, ...args) {
388
+ return f.apply(x, args);
389
+ }));
398
390
  };
399
-
400
- exports.send = send = curry(function (name, ax, object) {
401
- return object[name].apply(object, ax);
391
+ send = curry(function(name, ax, object) {
392
+ return object[name].apply(object, ax);
402
393
  });
403
-
404
- isPromise = function (k) {
405
- return k instanceof Promise;
394
+ isPromise = function(k) {
395
+ return k instanceof Promise;
406
396
  };
407
-
408
- exports.chain = chain = function (f) {
409
- return arity(Math.max(f.length, 1), function (...ax) {
410
- var k, self;
411
- self = this;
412
-
413
- if (isPromise(k = f.apply(self, ax))) {
414
- return k.then(function () {
415
- return self;
416
- });
417
- } else {
418
- return self;
419
- }
420
- });
397
+ chain = function(f) {
398
+ return arity(Math.max(f.length, 1), function(...ax) {
399
+ var k, self;
400
+ self = this;
401
+ if (isPromise(k = f.apply(self, ax))) {
402
+ return k.then(function() {
403
+ return self;
404
+ });
405
+ } else {
406
+ return self;
407
+ }
408
+ });
421
409
  };
422
-
423
- exports.proxy = proxy = curry(function (name, ax) {
424
- return function (...bx) {
425
- return this[name].apply(this, [...ax, ...bx]);
426
- };
410
+ map = function(fx) {
411
+ return function({ lengths, length }) {
412
+ lengths = fx.map(function(f) {
413
+ return f.length;
414
+ });
415
+ length = Math.max(...lengths);
416
+ return arity(length, function(...args) {
417
+ var f, j, len, results;
418
+ results = [];
419
+ for(j = 0, len = fx.length; j < len; j++){
420
+ f = fx[j];
421
+ results.push(f(...args));
422
+ }
423
+ return results;
424
+ });
425
+ }({});
426
+ };
427
+ proxy = curry(function(name, ax) {
428
+ return function(...bx) {
429
+ return this[name].apply(this, [
430
+ ...ax,
431
+ ...bx
432
+ ]);
433
+ };
427
434
  });
428
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9mdW5jdGlvbi5jb2ZmZWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUEsQ0FBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsTUFBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsT0FBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsTUFBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsUUFBQTtBQUFBLElBQUEsUUFBQTtBQUFBLElBQUEsU0FBQTtBQUFBLElBQUEsT0FBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsT0FBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsUUFBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsTUFBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsVUFBQTtBQUFBLElBQUEsR0FBQTtBQUFBLElBQUEsT0FBQTtBQUFBLElBQUEsS0FBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsSUFBQTtBQUFBLElBQUEsTUFBQSxHQUFBLEdBQUEsTUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtQkFBQSxRQUFBLEdBQVcsVUFBQSxDQUFBLEVBQUE7U0FBTyxDO0FBQVAsQ0FBWDs7QUFFQSxlQUFBLElBQUEsR0FBTyxVQUFBLENBQUEsRUFBQTtTQUFPLFlBQUE7V0FBRyxDO0FBQUgsRztBQUZkLENBRUEsQzs7OztBQUlBLGdCQUFBLEtBQUEsR0FBUyxVQUFBLENBQUEsRUFBQSxDQUFBLEVBQUE7QUFDUCxVQUFBLENBQUE7QUFBQSxTQUFBLENBQUE7YUFFSSxVQUFBLEdBQUEsRUFBQSxFQUFBO2VBQVcsQ0FBQyxDQUFELEtBQUEsQ0FBQSxJQUFBLEVBQUEsRUFBQSxDO0FBQVgsTzs7QUFGSixTQUFBLENBQUE7YUFJSSxVQUFBLEVBQUEsRUFB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QUMsQ0FBRCxLQUFBLENBQUEsQ0FBQSxFQUFBLElBQUEsQztBQUE1QyxHQUFzQixDQUF0QixDO0FBQVAsQ0FBVDs7QUFFQSxlQUFBLElBQUEsR0FBTyxLQUFBLENBQU0sVUFBQSxJQUFBLEVBQUEsRUFBQSxFQUFBLE1BQUEsRUFBQTtTQUFzQixNQUFNLENBQUEsSUFBQSxDQUFOLENBQUEsS0FBQSxDQUFBLE1BQUEsRUFBQSxFQUFBLEM7QUFBNUIsQ0FBQSxDQUFQOztBQUVBLFNBQUEsR0FBWSxVQUFBLENBQUEsRUFBQTtTQUFPLENBQUEsWUFBYSxPO0FBQXBCLENBQVo7O0FBRUEsZ0JBQUEsS0FBQSxHQUFRLFVBQUEsQ0FBQSxFQUFBO1NBQ04sS0FBQSxDQUFPLElBQUksQ0FBSixHQUFBLENBQVMsQ0FBQyxDQUFWLE1BQUEsRUFBUCxDQUFPLENBQVAsRUFBOEIsVUFBQSxHQUFBLEVBQUEsRUFBQTtBQUNoQyxRQUFBLENBQUEsRUFBQSxJQUFBO0FBQUksSUFBQSxJQUFBLEdBQU8sSUFBUDs7QUFDQSxRQUFJLFNBQUEsQ0FBVyxDQUFBLEdBQUssQ0FBQyxDQUFELEtBQUEsQ0FBQSxJQUFBLEVBQXBCLEVBQW9CLENBQWhCLENBQUosRUFBQTthQUNFLENBQUMsQ0FBRCxJQUFBLENBQU8sWUFBQTtlQUFHLEk7QUFEWixPQUNFLEM7QUFERixLQUFBLE1BQUE7YUFBQSxJOztBQUZGLEdBQUEsQztBQURNLENBQVI7O0FBUUEsZ0JBQUEsS0FBQSxHQUFRLEtBQUEsQ0FBTSxVQUFBLElBQUEsRUFBQSxFQUFBLEVBQUE7U0FDWixVQUFBLEdBQUEsRUFBQSxFQUFBO1dBQVcsS0FBQyxJQUFELEVBQUEsS0FBQSxDQUFBLElBQUEsRUFBaUIsQ0FBRSxHQUFGLEVBQUEsRUFBUyxHQUExQixFQUFpQixDQUFqQixDO0FBQVgsRztBQURNLENBQUEsQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImlkZW50aXR5ID0gKHgpIC0+IHhcblxud3JhcCA9ICh4KSAtPiAtPiB4XG5cbiMgQmFzZWQgb24gX2FyaXR5IGZyb20gUmFtYmRhOlxuIyBodHRwczovL2dpdGh1Yi5jb20vcmFtZGEvcmFtZGEvYmxvYi92MC4yNi4xL3NvdXJjZS9pbnRlcm5hbC9fYXJpdHkuanNcbmFyaXR5ICA9IChOLCBmKSAtPlxuICBzd2l0Y2ggTlxuICAgIHdoZW4gMFxuICAgICAgKGF4Li4uKSAtPiBmLmFwcGx5IEAsIGF4XG4gICAgd2hlbiAxXG4gICAgICAoYTApIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiAyXG4gICAgICAoYTAsIGExKSAgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDNcbiAgICAgIChhMCwgYTEsIGEyKSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gNFxuICAgICAgKGEwLCBhMSwgYTIsIGEzKSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gNVxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCkgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDZcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gN1xuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gOFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNykgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDlcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1LCBhNiwgYTcsIGE4KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gMTBcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1LCBhNiwgYTcsIGE4LCBhOSkgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICBlbHNlXG4gICAgICB0aHJvdyBuZXcgRXJyb3IgXCJGaXJzdCBhcmd1bWVudCB0byBhcml0eSBtdXN0IGJlIGFuIGludGVnZXIgYmV0d2VlbiAwIGFuZCAxMCwgaW5jbHVzaXZlLlwiXG5cbnVuYXJ5ID0gKGYpIC0+IGFyaXR5IDEsIGZcblxuYmluYXJ5ID0gKGYpIC0+IGFyaXR5IDIsIGZcblxudGVybmFyeSA9IChmKSAtPiBhcml0eSAzLCBmXG5cbmZsaXAgPSAoZikgLT5cbiAgc3dpdGNoIGYubGVuZ3RoXG4gICAgd2hlbiAwXG4gICAgICBmXG4gICAgd2hlbiAxXG4gICAgICAoYTApIC0+IGYuY2FsbCBALCBhMFxuICAgIHdoZW4gMlxuICAgICAgKGEwLCBhMSkgIC0+IGYuY2FsbCBALCBhMSwgYTBcbiAgICB3aGVuIDNcbiAgICAgIChhMCwgYTEsIGEyKSAtPiBmLmNhbGwgQCwgYTIsIGExLCBhMFxuICAgIHdoZW4gNFxuICAgICAgKGEwLCBhMSwgYTIsIGEzKSAtPiBmLmNhbGwgQCwgYTMsIGEyLCBhMSwgYTBcbiAgICB3aGVuIDVcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQpIC0+IGYuY2FsbCBALCBhNCwgYTMsIGEyLCBhMSwgYTBcbiAgICB3aGVuIDZcbiAgICAgIChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSAtPiBmLmNhbGwgQCwgYTUsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gN1xuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KSAtPiBmLmNhbGwgQCwgYTYsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gOFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNykgLT5cbiAgICAgICAgZi5jYWxsIEAsIGE3LCBhNiwgYTUsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gOVxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNywgYTgpIC0+XG4gICAgICAgIGYuY2FsbCBALCBhOCwgYTcsIGE2LCBhNSwgYTQsIGEzLCBhMiwgYTEsIGEwXG4gICAgd2hlbiAxMFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNywgYTgsIGE5KSAtPlxuICAgICAgICBmLmNhbGwgQCwgYTksIGE4LCBhNywgYTYsIGE1LCBhNCwgYTMsIGEyLCBhMSwgYTBcbiAgICBlbHNlXG4gICAgICAoYXguLi4pIC0+IGYuYXBwbHkgQCwgYXgucmV2ZXJzZSgpXG5cbmN1cnJ5ID0gKGYpIC0+XG4gIGFyaXR5IGYubGVuZ3RoLCAoYXguLi4pIC0+XG4gICAgc2VsZiA9IEBcbiAgICBpZiBheC5sZW5ndGggPj0gZi5sZW5ndGhcbiAgICAgIGYuYXBwbHkgc2VsZiwgYXhcbiAgICBlbHNlXG4gICAgICBsZW5ndGggPSBmLmxlbmd0aCAtIGF4Lmxlbmd0aFxuICAgICAgaWYgbGVuZ3RoID09IDFcbiAgICAgICAgKHgpIC0+IGYuYXBwbHkgc2VsZiwgWyBheC4uLiwgeCBdXG4gICAgICBlbHNlXG4gICAgICAgIGN1cnJ5IGFyaXR5IGxlbmd0aCwgKGJ4Li4uKSAtPiBmLmFwcGx5IHNlbGYsIFsgYXguLi4sIGJ4Li4uIF1cblxuXyA9IHt9XG5cbnN1YnN0aXR1dGUgPSBjdXJyeSAoYXgsIGJ4KSAtPlxuICBpID0gMFxuICBmb3IgYSBpbiBheFxuICAgIGlmIGEgPT0gX1xuICAgICAgYnhbaSsrXVxuICAgIGVsc2VcbiAgICAgIGFcblxucGFydGlhbCA9IChmLCBheCkgLT5cbiAgbiA9IDBcbiAgZm9yIGEgaW4gYXggd2hlbiBhID09IF9cbiAgICBuKytcbiAgYXJpdHkgbiwgKGJ4Li4uKSAtPiBmIChzdWJzdGl0dXRlIGF4LCBieCkuLi5cblxuc3ByZWFkID0gKGYpIC0+IChheCkgLT4gZiBheC4uLlxuXG5zdGFjayA9IChmKSAtPiAoYXguLi4pIC0+IGYgYXhcblxuIyBJbnNwaXJlZCBieSBSYW1iZGE6IGh0dHBzOi8vcmFtZGFqcy5jb20vZG9jcy8jcGlwZVdpdGhcbnBpcGVXaXRoID0gY3VycnkgKGMsIGZ4KSAtPlxuICBneCA9ICgoYyBmKSBmb3IgZiBpbiBmeClcbiAgYXJpdHkgZnhbMF0ubGVuZ3RoLCAoYXguLi4pIC0+XG4gICAgZm9yIGYsIGkgaW4gZ3hcbiAgICAgIGF4ID0gWyBmIGF4Li4uIF1cbiAgICBheFswXVxuXG5waXBlID0gcGlwZVdpdGggaWRlbnRpdHlcblxuY29tcG9zZSA9IChmeCkgLT4gcGlwZSBmeC5yZXZlcnNlKClcblxud2FpdCA9IChmKSAtPlxuICBhcml0eSBmLmxlbmd0aCwgKGF4Li4uKSAtPlxuICAgIFByb21pc2UuYWxsIGF4XG4gICAgICAudGhlbiAoYXgpIC0+IGYgYXguLi5cblxuZmxvdyA9IHBpcGVXaXRoIHdhaXRcblxuZmxvd1dpdGggPSBjdXJyeSAoYywgZngpIC0+IHBpcGVXaXRoIChwaXBlIFsgYywgd2FpdCBdKSwgZnhcblxudGVlID0gKGYpIC0+XG4gIGFyaXR5IChNYXRoLm1heCBmLmxlbmd0aCwgMSksIChhLCBieC4uLikgLT5cbiAgICBzZWxmID0gQFxuICAgIGlmIChrID0gKGYuYXBwbHkgc2VsZiwgWyBhLCBieC4uLiBdKSk/LnRoZW4/XG4gICAgICBrLnRoZW4gLT4gYVxuICAgIGVsc2VcbiAgICAgIGFcblxucnRlZSA9IChmKSAtPlxuICBhcml0eSAoTWF0aC5tYXggZi5sZW5ndGgsIDEpLCAoYXguLi4sIGIpIC0+XG4gICAgc2VsZiA9IEBcbiAgICBpZiAoayA9IChmLmFwcGx5IHNlbGYsIFsgYXguLi4sIGIgXSkpPy50aGVuP1xuICAgICAgay50aGVuIC0+IGJcbiAgICBlbHNlXG4gICAgICBiXG5cbm9uY2UgPSAoZikgLT5cbiAgZG8gKGs9dW5kZWZpbmVkKSAtPlxuICAgIGFyaXR5IGYubGVuZ3RoLFxuICAgICAgKGF4Li4uKSAtPiBpZiBrPyB0aGVuIGsgZWxzZSAoayA9IGFwcGx5IGYsIGF4KVxuXG5tZW1vaXplID0gKGYpIC0+XG4gIGRvIChjYWNoZSA9IHt9KSAtPlxuICAgIGFyaXR5IGYubGVuZ3RoLCAoYXguLi4pIC0+XG4gICAgICBjYWNoZVsgSlNPTi5zdHJpbmdpZnkgYXggXSA/PSBhcHBseSBmLCBheFxuXG5hcHBseSA9IGN1cnJ5IChmLCBheCkgLT4gKGYgYXguLi4pXG5cbmJpbmQgPSBjdXJyeSAoZiwgeCkgLT4gZi5iaW5kIHhcblxuZGV0YWNoID0gKGYpIC0+IGFyaXR5IChmLmxlbmd0aCArIDEpLCBjdXJyeSAoeCwgYXJncy4uLikgLT4gZi5hcHBseSB4LCBhcmdzXG5cbnNlbmQgPSBjdXJyeSAobmFtZSwgYXgsIG9iamVjdCkgLT4gb2JqZWN0W25hbWVdLmFwcGx5IG9iamVjdCwgYXhcblxuaXNQcm9taXNlID0gKGspIC0+IGsgaW5zdGFuY2VvZiBQcm9taXNlXG5cbmNoYWluID0gKGYpIC0+XG4gIGFyaXR5IChNYXRoLm1heCBmLmxlbmd0aCwgMSksIChheC4uLikgLT5cbiAgICBzZWxmID0gQFxuICAgIGlmIChpc1Byb21pc2UgKGsgPSAoZi5hcHBseSBzZWxmLCBheCkpKVxuICAgICAgay50aGVuIC0+IHNlbGZcbiAgICBlbHNlXG4gICAgICBzZWxmXG5cbnByb3h5ID0gY3VycnkgKG5hbWUsIGF4KSAtPlxuICAoYnguLi4pIC0+IEBbbmFtZV0uYXBwbHkgQCwgWyBheC4uLiwgYnguLi4gXVxuXG5leHBvcnQge1xuICBpZGVudGl0eVxuICB3cmFwXG4gIGFyaXR5XG4gIHVuYXJ5XG4gIGJpbmFyeVxuICB0ZXJuYXJ5XG4gIGZsaXBcbiAgY3VycnlcbiAgX1xuICBzdWJzdGl0dXRlXG4gIHBhcnRpYWxcbiAgc3ByZWFkXG4gIHN0YWNrXG4gIHBpcGVXaXRoXG4gIHBpcGVcbiAgY29tcG9zZVxuICB3YWl0XG4gIGZsb3dcbiAgZmxvd1dpdGhcbiAgdGVlXG4gIHJ0ZWVcbiAgb25jZVxuICBtZW1vaXplXG4gIGFwcGx5XG4gIGJpbmRcbiAgZGV0YWNoXG4gIHNlbmRcbiAgY2hhaW5cbiAgcHJveHlcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=
429
- //# sourceURL=src/function.coffee
435
+ const _default = {
436
+ identity,
437
+ wrap,
438
+ arity,
439
+ unary,
440
+ binary,
441
+ ternary,
442
+ flip,
443
+ curry,
444
+ _,
445
+ substitute,
446
+ partial,
447
+ spread,
448
+ stack,
449
+ pipe,
450
+ compose,
451
+ wait,
452
+ flow,
453
+ tee,
454
+ rtee,
455
+ once,
456
+ memoize,
457
+ apply,
458
+ bind,
459
+ detach,
460
+ send,
461
+ chain,
462
+ map,
463
+ proxy
464
+ };
465
+
466
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy9mdW5jdGlvbi5jb2ZmZWUiXSwic291cmNlc0NvbnRlbnQiOlsiaWRlbnRpdHkgPSAoeCkgLT4geFxuXG53cmFwID0gKHgpIC0+IC0+IHhcblxuIyBCYXNlZCBvbiBfYXJpdHkgZnJvbSBSYW1iZGE6XG4jIGh0dHBzOi8vZ2l0aHViLmNvbS9yYW1kYS9yYW1kYS9ibG9iL3YwLjI2LjEvc291cmNlL2ludGVybmFsL19hcml0eS5qc1xuYXJpdHkgID0gKE4sIGYpIC0+XG4gIHN3aXRjaCBOXG4gICAgd2hlbiAwXG4gICAgICAoYXguLi4pIC0+IGYuYXBwbHkgQCwgYXhcbiAgICB3aGVuIDFcbiAgICAgIChhMCkgLT4gZi5hcHBseSBALCBhcmd1bWVudHNcbiAgICB3aGVuIDJcbiAgICAgIChhMCwgYTEpICAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gM1xuICAgICAgKGEwLCBhMSwgYTIpIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiA0XG4gICAgICAoYTAsIGExLCBhMiwgYTMpIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiA1XG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gNlxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUpIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiA3XG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYpIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiA4XG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYsIGE3KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIHdoZW4gOVxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNywgYTgpIC0+IGYuYXBwbHkgQCwgYXJndW1lbnRzXG4gICAgd2hlbiAxMFxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2LCBhNywgYTgsIGE5KSAtPiBmLmFwcGx5IEAsIGFyZ3VtZW50c1xuICAgIGVsc2VcbiAgICAgIHRocm93IG5ldyBFcnJvciBcIkZpcnN0IGFyZ3VtZW50IHRvIGFyaXR5IG11c3QgYmUgYW4gaW50ZWdlciBiZXR3ZWVuIDAgYW5kIDEwLCBpbmNsdXNpdmUuXCJcblxudW5hcnkgPSAoZikgLT4gYXJpdHkgMSwgZlxuXG5iaW5hcnkgPSAoZikgLT4gYXJpdHkgMiwgZlxuXG50ZXJuYXJ5ID0gKGYpIC0+IGFyaXR5IDMsIGZcblxuZmxpcCA9IChmKSAtPlxuICBzd2l0Y2ggZi5sZW5ndGhcbiAgICB3aGVuIDBcbiAgICAgIGZcbiAgICB3aGVuIDFcbiAgICAgIChhMCkgLT4gZi5jYWxsIEAsIGEwXG4gICAgd2hlbiAyXG4gICAgICAoYTAsIGExKSAgLT4gZi5jYWxsIEAsIGExLCBhMFxuICAgIHdoZW4gM1xuICAgICAgKGEwLCBhMSwgYTIpIC0+IGYuY2FsbCBALCBhMiwgYTEsIGEwXG4gICAgd2hlbiA0XG4gICAgICAoYTAsIGExLCBhMiwgYTMpIC0+IGYuY2FsbCBALCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gNVxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCkgLT4gZi5jYWxsIEAsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIHdoZW4gNlxuICAgICAgKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUpIC0+IGYuY2FsbCBALCBhNSwgYTQsIGEzLCBhMiwgYTEsIGEwXG4gICAgd2hlbiA3XG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYpIC0+IGYuY2FsbCBALCBhNiwgYTQsIGEzLCBhMiwgYTEsIGEwXG4gICAgd2hlbiA4XG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYsIGE3KSAtPlxuICAgICAgICBmLmNhbGwgQCwgYTcsIGE2LCBhNSwgYTQsIGEzLCBhMiwgYTEsIGEwXG4gICAgd2hlbiA5XG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYsIGE3LCBhOCkgLT5cbiAgICAgICAgZi5jYWxsIEAsIGE4LCBhNywgYTYsIGE1LCBhNCwgYTMsIGEyLCBhMSwgYTBcbiAgICB3aGVuIDEwXG4gICAgICAoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYsIGE3LCBhOCwgYTkpIC0+XG4gICAgICAgIGYuY2FsbCBALCBhOSwgYTgsIGE3LCBhNiwgYTUsIGE0LCBhMywgYTIsIGExLCBhMFxuICAgIGVsc2VcbiAgICAgIChheC4uLikgLT4gZi5hcHBseSBALCBheC5yZXZlcnNlKClcblxuY3VycnkgPSAoZikgLT5cbiAgaWYgZi5sZW5ndGggPiAxXG4gICAgYXJpdHkgZi5sZW5ndGgsIChheC4uLikgLT5cbiAgICAgIHNlbGYgPSBAXG4gICAgICBpZiBheC5sZW5ndGggPj0gZi5sZW5ndGhcbiAgICAgICAgZi5hcHBseSBzZWxmLCBheFxuICAgICAgZWxzZVxuICAgICAgICBsZW5ndGggPSBmLmxlbmd0aCAtIGF4Lmxlbmd0aFxuICAgICAgICBpZiBsZW5ndGggPT0gMVxuICAgICAgICAgICh4KSAtPiBmLmFwcGx5IHNlbGYsIFsgYXguLi4sIHggXVxuICAgICAgICBlbHNlXG4gICAgICAgICAgY3VycnkgYXJpdHkgbGVuZ3RoLCAoYnguLi4pIC0+IGYuYXBwbHkgc2VsZiwgWyBheC4uLiwgYnguLi4gXVxuICBlbHNlIGZcblxuXyA9IHt9XG5cbnN1YnN0aXR1dGUgPSBjdXJyeSAoYXgsIGJ4KSAtPlxuICBpID0gMFxuICBmb3IgYSBpbiBheFxuICAgIGlmIGEgPT0gX1xuICAgICAgYnhbaSsrXVxuICAgIGVsc2VcbiAgICAgIGFcblxucGFydGlhbCA9IChmLCBheCkgLT5cbiAgbiA9IDBcbiAgZm9yIGEgaW4gYXggd2hlbiBhID09IF9cbiAgICBuKytcbiAgYXJpdHkgbiwgKGJ4Li4uKSAtPiBmIChzdWJzdGl0dXRlIGF4LCBieCkuLi5cblxuc3ByZWFkID0gKGYpIC0+IChheCkgLT4gZiBheC4uLlxuXG5zdGFjayA9IChmKSAtPiAoYXguLi4pIC0+IGYgYXhcblxucGlwZSA9ICggZnggKSAtPlxuICBkbyAoIG4gPSBmeFsgMCBdLmxlbmd0aCApIC0+ICAgIFxuICAgIGFyaXR5IG4sICggYXJncy4uLiApIC0+XG4gICAgICBmb3IgZiBpbiBmeFxuICAgICAgICBhcmdzID0gWyBmIGFyZ3MuLi4gXVxuICAgICAgYXJnc1sgMCBdXG5cbmZsb3cgPSAoIGZ4ICkgLT5cbiAgZG8gKCBuID0gZnhbIDAgXS5sZW5ndGggKSAtPiAgICBcbiAgICBhcml0eSBuLCAoIGFyZ3MuLi4gKSAtPlxuICAgICAgZm9yIGYgaW4gZnhcbiAgICAgICAgYXJncyA9IFsgYXdhaXQgZiBhcmdzLi4uIF1cbiAgICAgIGFyZ3NbIDAgXVxuXG5jb21wb3NlID0gKGZ4KSAtPiBwaXBlIGZ4LnJldmVyc2UoKVxuXG53YWl0ID0gKGYpIC0+XG4gIGFyaXR5IGYubGVuZ3RoLCAoYXguLi4pIC0+XG4gICAgUHJvbWlzZS5hbGwgYXhcbiAgICAgIC50aGVuIChheCkgLT4gZiBheC4uLlxuXG50ZWUgPSAoZikgLT5cbiAgYXJpdHkgKE1hdGgubWF4IGYubGVuZ3RoLCAxKSwgKGEsIGJ4Li4uKSAtPlxuICAgIHNlbGYgPSBAXG4gICAgaWYgKGsgPSAoZi5hcHBseSBzZWxmLCBbIGEsIGJ4Li4uIF0pKT8udGhlbj9cbiAgICAgIGsudGhlbiAtPiBhXG4gICAgZWxzZVxuICAgICAgYVxuXG5ydGVlID0gKGYpIC0+XG4gIGFyaXR5IChNYXRoLm1heCBmLmxlbmd0aCwgMSksIChheC4uLiwgYikgLT5cbiAgICBzZWxmID0gQFxuICAgIGlmIChrID0gKGYuYXBwbHkgc2VsZiwgWyBheC4uLiwgYiBdKSk/LnRoZW4/XG4gICAgICBrLnRoZW4gLT4gYlxuICAgIGVsc2VcbiAgICAgIGJcblxub25jZSA9IChmKSAtPlxuICBkbyAoaz11bmRlZmluZWQpIC0+XG4gICAgYXJpdHkgZi5sZW5ndGgsXG4gICAgICAoYXguLi4pIC0+IGlmIGs/IHRoZW4gayBlbHNlIChrID0gYXBwbHkgZiwgYXgpXG5cbm1lbW9pemUgPSAoZikgLT5cbiAgZG8gKGNhY2hlID0ge30pIC0+XG4gICAgYXJpdHkgZi5sZW5ndGgsIChheC4uLikgLT5cbiAgICAgIGNhY2hlWyBKU09OLnN0cmluZ2lmeSBheCBdID89IGFwcGx5IGYsIGF4XG5cbmFwcGx5ID0gY3VycnkgKGYsIGF4KSAtPiBmLmFwcGx5IG51bGwsIGF4XG5cbmJpbmQgPSBjdXJyeSAoZiwgeCkgLT4gZi5iaW5kIHhcblxuZGV0YWNoID0gKGYpIC0+XG4gIGN1cnJ5IGFyaXR5IChmLmxlbmd0aCArIDEpLCBcbiAgICAoeCwgYXJncy4uLikgLT4gZi5hcHBseSB4LCBhcmdzXG5cbnNlbmQgPSBjdXJyeSAobmFtZSwgYXgsIG9iamVjdCkgLT4gb2JqZWN0W25hbWVdLmFwcGx5IG9iamVjdCwgYXhcblxuaXNQcm9taXNlID0gKGspIC0+IGsgaW5zdGFuY2VvZiBQcm9taXNlXG5cbmNoYWluID0gKGYpIC0+XG4gIGFyaXR5IChNYXRoLm1heCBmLmxlbmd0aCwgMSksIChheC4uLikgLT5cbiAgICBzZWxmID0gQFxuICAgIGlmIChpc1Byb21pc2UgKGsgPSAoZi5hcHBseSBzZWxmLCBheCkpKVxuICAgICAgay50aGVuIC0+IHNlbGZcbiAgICBlbHNlXG4gICAgICBzZWxmXG5cbm1hcCA9ICggZnggKSAtPlxuICBkbyAoeyBsZW5ndGhzLCBsZW5ndGggfSA9IHt9KSAtPlxuICAgIGxlbmd0aHMgPSBmeC5tYXAgKCBmICkgLT4gZi5sZW5ndGhcbiAgICBsZW5ndGggPSBNYXRoLm1heCBsZW5ndGhzLi4uXG4gICAgYXJpdHkgbGVuZ3RoLCAoIGFyZ3MuLi4gKSAtPlxuICAgICAgKCBmIGFyZ3MuLi4gKSBmb3IgZiBpbiBmeFxuXG5wcm94eSA9IGN1cnJ5IChuYW1lLCBheCkgLT5cbiAgKGJ4Li4uKSAtPiBAW25hbWVdLmFwcGx5IEAsIFsgYXguLi4sIGJ4Li4uIF1cblxuZXhwb3J0IHtcbiAgaWRlbnRpdHlcbiAgd3JhcFxuICBhcml0eVxuICB1bmFyeVxuICBiaW5hcnlcbiAgdGVybmFyeVxuICBmbGlwXG4gIGN1cnJ5XG4gIF9cbiAgc3Vic3RpdHV0ZVxuICBwYXJ0aWFsXG4gIHNwcmVhZFxuICBzdGFja1xuICBwaXBlXG4gIGNvbXBvc2VcbiAgd2FpdFxuICBmbG93XG4gIHRlZVxuICBydGVlXG4gIG9uY2VcbiAgbWVtb2l6ZVxuICBhcHBseVxuICBiaW5kXG4gIGRldGFjaFxuICBzZW5kXG4gIGNoYWluXG4gIG1hcFxuICBwcm94eVxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGlkZW50aXR5XG4gIHdyYXBcbiAgYXJpdHlcbiAgdW5hcnlcbiAgYmluYXJ5XG4gIHRlcm5hcnlcbiAgZmxpcFxuICBjdXJyeVxuICBfXG4gIHN1YnN0aXR1dGVcbiAgcGFydGlhbFxuICBzcHJlYWRcbiAgc3RhY2tcbiAgcGlwZVxuICBjb21wb3NlXG4gIHdhaXRcbiAgZmxvd1xuICB0ZWVcbiAgcnRlZVxuICBvbmNlXG4gIG1lbW9pemVcbiAgYXBwbHlcbiAgYmluZFxuICBkZXRhY2hcbiAgc2VuZFxuICBjaGFpblxuICBtYXBcbiAgcHJveHlcbn1cbiJdLCJuYW1lcyI6WyJfIiwiYXBwbHkiLCJhcml0eSIsImJpbmFyeSIsImJpbmQiLCJjaGFpbiIsImNvbXBvc2UiLCJjdXJyeSIsImRldGFjaCIsImZsaXAiLCJmbG93IiwiaWRlbnRpdHkiLCJtYXAiLCJtZW1vaXplIiwib25jZSIsInBhcnRpYWwiLCJwaXBlIiwicHJveHkiLCJydGVlIiwic2VuZCIsInNwcmVhZCIsInN0YWNrIiwic3Vic3RpdHV0ZSIsInRlZSIsInRlcm5hcnkiLCJ1bmFyeSIsIndhaXQiLCJ3cmFwIiwiaXNQcm9taXNlIiwic3BsaWNlIiwieCIsIk4iLCJmIiwiYXgiLCJhMCIsImFyZ3VtZW50cyIsImExIiwiYTIiLCJhMyIsImE0IiwiYTUiLCJhNiIsImE3IiwiYTgiLCJhOSIsIkVycm9yIiwibGVuZ3RoIiwiY2FsbCIsInJldmVyc2UiLCJzZWxmIiwiYngiLCJhIiwiaSIsImoiLCJsZW4iLCJyZXN1bHRzIiwibiIsImZ4IiwiYXJncyIsIlByb21pc2UiLCJhbGwiLCJ0aGVuIiwiTWF0aCIsIm1heCIsImsiLCJyZWYiLCJiIiwicmVmMSIsImNhY2hlIiwibmFtZTEiLCJuYW1lIiwib2JqZWN0IiwibGVuZ3RocyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUE2TEVBLENBVEY7ZUFTRUE7O0lBYUFDLEtBdEJGO2VBc0JFQTs7SUFuQkFDLEtBSEY7ZUFHRUE7O0lBRUFDLE1BTEY7ZUFLRUE7O0lBa0JBQyxJQXZCRjtlQXVCRUE7O0lBR0FDLEtBMUJGO2VBMEJFQTs7SUFYQUMsT0FmRjtlQWVFQTs7SUFQQUMsS0FSRjtlQVFFQTs7SUF1QkYsT0FBZTtlQUFmOzs7O0lBUEVDLE1BeEJGO2VBd0JFQTs7SUFqQkFDLElBUEY7ZUFPRUE7O0lBVUFDLElBakJGO2VBaUJFQTs7SUFoQkFDLFFBREY7ZUFDRUE7O0lBMEJBQyxHQTNCRjtlQTJCRUE7O0lBTkFDLE9BckJGO2VBcUJFQTs7SUFEQUMsSUFwQkY7ZUFvQkVBOztJQVRBQyxPQVhGO2VBV0VBOztJQUdBQyxJQWRGO2VBY0VBOztJQWNBQyxLQTVCRjtlQTRCRUE7O0lBVEFDLElBbkJGO2VBbUJFQTs7SUFNQUMsSUF6QkY7ZUF5QkVBOztJQWJBQyxNQVpGO2VBWUVBOztJQUNBQyxLQWJGO2VBYUVBOztJQUhBQyxVQVZGO2VBVUVBOztJQVFBQyxHQWxCRjtlQWtCRUE7O0lBWkFDLE9BTkY7ZUFNRUE7O0lBRkFDLEtBSkY7ZUFJRUE7O0lBWUFDLElBaEJGO2VBZ0JFQTs7SUFkQUMsSUFGRjtlQUVFQTs7O0FBdExGLElBQUEzQixHQUFBQyxPQUFBQyxPQUFBQyxRQUFBQyxNQUFBQyxPQUFBQyxTQUFBQyxPQUFBQyxRQUFBQyxNQUFBQyxNQUFBQyxVQUFBaUIsV0FBQWhCLEtBQUFDLFNBQUFDLE1BQUFDLFNBQUFDLE1BQUFDLE9BQUFDLE1BQUFDLE1BQUFDLFFBQUFDLE9BQUFDLFlBQUFDLEtBQUFDLFNBQUFDLE9BQUFDLE1BQUFDLE1BQUFFLFNB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