@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.
- package/build/browser/src/array.js +121 -121
- package/build/browser/src/function.js +335 -420
- package/build/browser/src/generic.js +103 -167
- package/build/browser/src/index.js +16 -13
- package/build/browser/src/iterable.js +281 -327
- package/build/browser/src/math.js +42 -38
- package/build/browser/src/metaclass.js +64 -71
- package/build/browser/src/object.js +156 -75
- package/build/browser/src/predicate.js +122 -164
- package/build/browser/src/promise.js +18 -22
- package/build/browser/src/set.js +53 -68
- package/build/browser/src/text.js +115 -124
- package/build/browser/src/time.js +88 -30
- package/build/browser/src/type.js +65 -68
- package/build/browser/src/value.js +206 -231
- package/build/node/src/array.js +283 -161
- package/build/node/src/function.js +433 -396
- package/build/node/src/generic.js +122 -151
- package/build/node/src/index.js +32 -174
- package/build/node/src/iterable.js +366 -379
- package/build/node/src/math.js +106 -65
- package/build/node/src/metaclass.js +100 -87
- package/build/node/src/object.js +217 -86
- package/build/node/src/predicate.js +150 -156
- package/build/node/src/promise.js +49 -33
- package/build/node/src/set.js +81 -80
- package/build/node/src/text.js +253 -174
- package/build/node/src/time.js +122 -40
- package/build/node/src/type.js +230 -139
- package/build/node/src/value.js +242 -251
- package/package.json +14 -8
package/build/node/src/math.js
CHANGED
|
@@ -1,84 +1,125 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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
|
+
abs: function() {
|
|
13
|
+
return abs;
|
|
14
|
+
},
|
|
15
|
+
add: function() {
|
|
16
|
+
return add;
|
|
17
|
+
},
|
|
18
|
+
cube: function() {
|
|
19
|
+
return cube;
|
|
20
|
+
},
|
|
21
|
+
div: function() {
|
|
22
|
+
return div;
|
|
23
|
+
},
|
|
24
|
+
even: function() {
|
|
25
|
+
return even;
|
|
26
|
+
},
|
|
27
|
+
gt: function() {
|
|
28
|
+
return gt;
|
|
29
|
+
},
|
|
30
|
+
gte: function() {
|
|
31
|
+
return gte;
|
|
32
|
+
},
|
|
33
|
+
isModulo: function() {
|
|
34
|
+
return isModulo;
|
|
35
|
+
},
|
|
36
|
+
lt: function() {
|
|
37
|
+
return lt;
|
|
38
|
+
},
|
|
39
|
+
lte: function() {
|
|
40
|
+
return lte;
|
|
41
|
+
},
|
|
42
|
+
max: function() {
|
|
43
|
+
return max;
|
|
44
|
+
},
|
|
45
|
+
min: function() {
|
|
46
|
+
return min;
|
|
47
|
+
},
|
|
48
|
+
mod: function() {
|
|
49
|
+
return mod;
|
|
50
|
+
},
|
|
51
|
+
mul: function() {
|
|
52
|
+
return mul;
|
|
53
|
+
},
|
|
54
|
+
odd: function() {
|
|
55
|
+
return odd;
|
|
56
|
+
},
|
|
57
|
+
pow: function() {
|
|
58
|
+
return pow;
|
|
59
|
+
},
|
|
60
|
+
square: function() {
|
|
61
|
+
return square;
|
|
62
|
+
},
|
|
63
|
+
sub: function() {
|
|
64
|
+
return sub;
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
const _function = require("./function");
|
|
68
|
+
const _predicate = require("./predicate");
|
|
12
69
|
var abs, add, cube, div, even, gt, gte, isModulo, lt, lte, max, min, mod, mul, odd, pow, square, sub;
|
|
13
|
-
exports.sub = sub;
|
|
14
|
-
exports.square = square;
|
|
15
|
-
exports.pow = pow;
|
|
16
|
-
exports.odd = odd;
|
|
17
|
-
exports.mul = mul;
|
|
18
|
-
exports.mod = mod;
|
|
19
|
-
exports.min = min;
|
|
20
|
-
exports.max = max;
|
|
21
|
-
exports.lte = lte;
|
|
22
|
-
exports.lt = lt;
|
|
23
|
-
exports.isModulo = isModulo;
|
|
24
|
-
exports.gte = gte;
|
|
25
|
-
exports.gt = gt;
|
|
26
|
-
exports.even = even;
|
|
27
|
-
exports.div = div;
|
|
28
|
-
exports.cube = cube;
|
|
29
|
-
exports.add = add;
|
|
30
|
-
exports.abs = abs;
|
|
31
70
|
// `eq` and `neq` were here, but I moved them to the value module.
|
|
32
71
|
// TODO: How do we deal with naming overlap?
|
|
33
|
-
|
|
34
|
-
|
|
72
|
+
gte = (0, _function.curry)(function(x, y) {
|
|
73
|
+
return y >= x;
|
|
35
74
|
});
|
|
36
|
-
|
|
37
|
-
|
|
75
|
+
lte = (0, _function.curry)(function(x, y) {
|
|
76
|
+
return y <= x;
|
|
38
77
|
});
|
|
39
|
-
|
|
40
|
-
|
|
78
|
+
gt = (0, _function.curry)(function(x, y) {
|
|
79
|
+
return y > x;
|
|
41
80
|
});
|
|
42
|
-
|
|
43
|
-
|
|
81
|
+
lt = (0, _function.curry)(function(x, y) {
|
|
82
|
+
return y < x;
|
|
44
83
|
});
|
|
45
|
-
|
|
46
|
-
|
|
84
|
+
add = (0, _function.curry)(function(x, y) {
|
|
85
|
+
return x + y;
|
|
47
86
|
});
|
|
48
|
-
|
|
49
|
-
|
|
87
|
+
sub = (0, _function.curry)(function(x, y) {
|
|
88
|
+
return y - x;
|
|
50
89
|
});
|
|
51
|
-
|
|
52
|
-
|
|
90
|
+
mul = (0, _function.curry)(function(x, y) {
|
|
91
|
+
return x * y;
|
|
53
92
|
});
|
|
54
|
-
|
|
55
|
-
|
|
93
|
+
div = (0, _function.curry)(function(x, y) {
|
|
94
|
+
return y / x;
|
|
56
95
|
});
|
|
57
|
-
|
|
58
|
-
|
|
96
|
+
mod = (0, _function.curry)(function(x, y) {
|
|
97
|
+
return y % x;
|
|
59
98
|
});
|
|
60
|
-
|
|
61
|
-
|
|
99
|
+
isModulo = (0, _function.curry)(function(x, y) {
|
|
100
|
+
return y % x === 0;
|
|
62
101
|
});
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
return (0, _function.apply)(Math.min, ax);
|
|
102
|
+
even = isModulo(2);
|
|
103
|
+
odd = (0, _predicate.negate)(even);
|
|
104
|
+
min = function(ax) {
|
|
105
|
+
return (0, _function.apply)(Math.min, ax);
|
|
68
106
|
};
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
return (0, _function.apply)(Math.max, ax);
|
|
107
|
+
max = function(ax) {
|
|
108
|
+
return (0, _function.apply)(Math.max, ax);
|
|
72
109
|
};
|
|
73
|
-
|
|
74
|
-
({
|
|
75
|
-
|
|
76
|
-
} = Math);
|
|
77
|
-
exports.abs = abs;
|
|
78
|
-
exports.pow = pow = (0, _function.curry)(function (x, y) {
|
|
79
|
-
return x ** y;
|
|
110
|
+
({ abs } = Math);
|
|
111
|
+
pow = (0, _function.curry)(function(x, y) {
|
|
112
|
+
return x ** y;
|
|
80
113
|
});
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
114
|
+
square = (0, _function.partial)(pow, [
|
|
115
|
+
_function._,
|
|
116
|
+
2
|
|
117
|
+
]);
|
|
118
|
+
cube = (0, _function.partial)(pow, [
|
|
119
|
+
_function._,
|
|
120
|
+
3
|
|
121
|
+
]);
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL21hdGguY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUEsR0FBQSxFQUFBLEdBQUEsRUFBQSxJQUFBLEVBQUEsR0FBQSxFQUFBLElBQUEsRUFBQSxFQUFBLEVBQUEsR0FBQSxFQUFBLFFBQUEsRUFBQSxFQUFBLEVBQUEsR0FBQSxFQUFBLEdBQUEsRUFBQSxHQUFBLEVBQUEsR0FBQSxFQUFBLEdBQUEsRUFBQSxHQUFBLEVBQUEsR0FBQSxFQUFBLE1BQUEsRUFBQTs7QUFBQSxPQUFBO0VBQVEsQ0FBUjtFQUFXLEtBQVg7RUFBa0IsT0FBbEI7RUFBMkIsS0FBM0I7Q0FBQSxNQUFBOztBQUNBLE9BQUE7RUFBUSxNQUFSO0NBQUEsTUFBQSxjQURBOzs7O0FBTUEsR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsSUFBSztBQUFmLENBQU47O0FBQ04sR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsSUFBSztBQUFmLENBQU47O0FBQ04sRUFBQSxHQUFLLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBQ0wsRUFBQSxHQUFLLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBRUwsR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBQ04sR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBQ04sR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBQ04sR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBQ04sR0FBQSxHQUFNLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSTtBQUFkLENBQU47O0FBRU4sUUFBQSxHQUFXLEtBQUEsQ0FBTSxRQUFBLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBQTtTQUFVLENBQUEsR0FBSSxDQUFKLEtBQVM7QUFBbkIsQ0FBTjs7QUFDWCxJQUFBLEdBQU8sUUFBQSxDQUFTLENBQVQ7O0FBQ1AsR0FBQSxHQUFNLE1BQUEsQ0FBTyxJQUFQOztBQUVOLEdBQUEsR0FBTSxRQUFBLENBQUMsRUFBRCxDQUFBO1NBQVEsS0FBQSxDQUFNLElBQUksQ0FBQyxHQUFYLEVBQWdCLEVBQWhCO0FBQVI7O0FBQ04sR0FBQSxHQUFNLFFBQUEsQ0FBQyxFQUFELENBQUE7U0FBUSxLQUFBLENBQU0sSUFBSSxDQUFDLEdBQVgsRUFBZ0IsRUFBaEI7QUFBUjs7QUFFTixDQUFBLENBQUMsR0FBRCxDQUFBLEdBQVEsSUFBUjs7QUFFQSxHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxJQUFLO0FBQWYsQ0FBTjs7QUFFTixNQUFBLEdBQVMsT0FBQSxDQUFRLEdBQVIsRUFBYSxDQUFFLENBQUYsRUFBSyxDQUFMLENBQWI7O0FBQ1QsSUFBQSxHQUFPLE9BQUEsQ0FBUSxHQUFSLEVBQWEsQ0FBRSxDQUFGLEVBQUssQ0FBTCxDQUFiOztBQUVQLE9BQUE7RUFBUSxFQUFSO0VBQVksRUFBWjtFQUFnQixHQUFoQjtFQUFxQixHQUFyQjtFQUEwQixHQUExQjtFQUErQixHQUEvQjtFQUFvQyxHQUFwQztFQUF5QyxHQUF6QztFQUE4QyxHQUE5QztFQUNFLFFBREY7RUFDWSxJQURaO0VBQ2tCLEdBRGxCO0VBQ3VCLEdBRHZCO0VBQzRCLEdBRDVCO0VBQ2lDLEdBRGpDO0VBQ3NDLEdBRHRDO0VBQzJDLE1BRDNDO0VBQ21ELElBRG5EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtfLCBjdXJyeSwgcGFydGlhbCwgYXBwbHl9IGZyb20gXCIuL2Z1bmN0aW9uXCJcbmltcG9ydCB7bmVnYXRlfSBmcm9tIFwiLi9wcmVkaWNhdGVcIlxuXG4jIGBlcWAgYW5kIGBuZXFgIHdlcmUgaGVyZSwgYnV0IEkgbW92ZWQgdGhlbSB0byB0aGUgdmFsdWUgbW9kdWxlLiBcbiMgVE9ETzogSG93IGRvIHdlIGRlYWwgd2l0aCBuYW1pbmcgb3ZlcmxhcD8gXG5cbmd0ZSA9IGN1cnJ5ICh4LCB5KSAtPiB5ID49IHhcbmx0ZSA9IGN1cnJ5ICh4LCB5KSAtPiB5IDw9IHhcbmd0ID0gY3VycnkgKHgsIHkpIC0+IHkgPiB4XG5sdCA9IGN1cnJ5ICh4LCB5KSAtPiB5IDwgeFxuXG5hZGQgPSBjdXJyeSAoeCwgeSkgLT4geCArIHlcbnN1YiA9IGN1cnJ5ICh4LCB5KSAtPiB5IC0geFxubXVsID0gY3VycnkgKHgsIHkpIC0+IHggKiB5XG5kaXYgPSBjdXJyeSAoeCwgeSkgLT4geSAvIHhcbm1vZCA9IGN1cnJ5ICh4LCB5KSAtPiB5ICUgeFxuXG5pc01vZHVsbyA9IGN1cnJ5ICh4LCB5KSAtPiB5ICUgeCA9PSAwXG5ldmVuID0gaXNNb2R1bG8gMlxub2RkID0gbmVnYXRlIGV2ZW5cblxubWluID0gKGF4KSAtPiBhcHBseSBNYXRoLm1pbiwgYXhcbm1heCA9IChheCkgLT4gYXBwbHkgTWF0aC5tYXgsIGF4XG5cbnthYnN9ID0gTWF0aFxuXG5wb3cgPSBjdXJyeSAoeCwgeSkgLT4geCAqKiB5XG5cbnNxdWFyZSA9IHBhcnRpYWwgcG93LCBbIF8sIDIgXVxuY3ViZSA9IHBhcnRpYWwgcG93LCBbIF8sIDMgXVxuXG5leHBvcnQge2d0LCBsdCwgZ3RlLCBsdGUsIGFkZCwgc3ViLCBtdWwsIGRpdiwgbW9kLFxuICBpc01vZHVsbywgZXZlbiwgb2RkLCBtaW4sIG1heCwgYWJzLCBwb3csIHNxdWFyZSwgY3ViZX1cbiJdfQ==
|
|
123
|
+
//# sourceURL=/@dashkite/joy/src/math.coffee
|
|
124
|
+
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy9tYXRoLmNvZmZlZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge18sIGN1cnJ5LCBwYXJ0aWFsLCBhcHBseX0gZnJvbSBcIi4vZnVuY3Rpb25cIlxuaW1wb3J0IHtuZWdhdGV9IGZyb20gXCIuL3ByZWRpY2F0ZVwiXG5cbiMgYGVxYCBhbmQgYG5lcWAgd2VyZSBoZXJlLCBidXQgSSBtb3ZlZCB0aGVtIHRvIHRoZSB2YWx1ZSBtb2R1bGUuIFxuIyBUT0RPOiBIb3cgZG8gd2UgZGVhbCB3aXRoIG5hbWluZyBvdmVybGFwPyBcblxuZ3RlID0gY3VycnkgKHgsIHkpIC0+IHkgPj0geFxubHRlID0gY3VycnkgKHgsIHkpIC0+IHkgPD0geFxuZ3QgPSBjdXJyeSAoeCwgeSkgLT4geSA+IHhcbmx0ID0gY3VycnkgKHgsIHkpIC0+IHkgPCB4XG5cbmFkZCA9IGN1cnJ5ICh4LCB5KSAtPiB4ICsgeVxuc3ViID0gY3VycnkgKHgsIHkpIC0+IHkgLSB4XG5tdWwgPSBjdXJyeSAoeCwgeSkgLT4geCAqIHlcbmRpdiA9IGN1cnJ5ICh4LCB5KSAtPiB5IC8geFxubW9kID0gY3VycnkgKHgsIHkpIC0+IHkgJSB4XG5cbmlzTW9kdWxvID0gY3VycnkgKHgsIHkpIC0+IHkgJSB4ID09IDBcbmV2ZW4gPSBpc01vZHVsbyAyXG5vZGQgPSBuZWdhdGUgZXZlblxuXG5taW4gPSAoYXgpIC0+IGFwcGx5IE1hdGgubWluLCBheFxubWF4ID0gKGF4KSAtPiBhcHBseSBNYXRoLm1heCwgYXhcblxue2Fic30gPSBNYXRoXG5cbnBvdyA9IGN1cnJ5ICh4LCB5KSAtPiB4ICoqIHlcblxuc3F1YXJlID0gcGFydGlhbCBwb3csIFsgXywgMiBdXG5jdWJlID0gcGFydGlhbCBwb3csIFsgXywgMyBdXG5cbmV4cG9ydCB7Z3QsIGx0LCBndGUsIGx0ZSwgYWRkLCBzdWIsIG11bCwgZGl2LCBtb2QsXG4gIGlzTW9kdWxvLCBldmVuLCBvZGQsIG1pbiwgbWF4LCBhYnMsIHBvdywgc3F1YXJlLCBjdWJlfVxuIl0sIm5hbWVzIjpbImFicyIsImFkZCIsImN1YmUiLCJkaXYiLCJldmVuIiwiZ3QiLCJndGUiLCJpc01vZHVsbyIsImx0IiwibHRlIiwibWF4IiwibWluIiwibW9kIiwibXVsIiwib2RkIiwicG93Iiwic3F1YXJlIiwic3ViIiwiY3VycnkiLCJ4IiwieSIsIm5lZ2F0ZSIsImF4IiwiYXBwbHkiLCJNYXRoIiwicGFydGlhbCIsIl8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBZ0NpQ0EsR0FEakM7ZUFDaUNBOztJQURQQyxHQUExQjtlQUEwQkE7O0lBQ3lCQyxJQURuRDtlQUNtREE7O0lBRFZDLEdBQXpDO2VBQXlDQTs7SUFDN0JDLElBRFo7ZUFDWUE7O0lBREpDLEVBQVI7ZUFBUUE7O0lBQVFDLEdBQWhCO2VBQWdCQTs7SUFDZEMsUUFERjtlQUNFQTs7SUFEVUMsRUFBWjtlQUFZQTs7SUFBU0MsR0FBckI7ZUFBcUJBOztJQUNPQyxHQUQ1QjtlQUM0QkE7O0lBQUxDLEdBRHZCO2VBQ3VCQTs7SUFEdUJDLEdBQTlDO2VBQThDQTs7SUFBVkMsR0FBcEM7ZUFBb0NBOztJQUNsQkMsR0FEbEI7ZUFDa0JBOztJQUFvQkMsR0FEdEM7ZUFDc0NBOztJQUFLQyxNQUQzQztlQUMyQ0E7O0lBRFpDLEdBQS9CO2VBQStCQTs7OzBCQS9CL0I7MkJBQ0E7QUFEQSxJQUFBakIsS0FBQUMsS0FBQUMsTUFBQUMsS0FBQUMsTUFBQUMsSUFBQUMsS0FBQUMsVUFBQUMsSUFBQUMsS0FBQUMsS0FBQUMsS0FBQUMsS0FBQUMsS0FBQUMsS0FBQUMsS0FBQUMsUUFBQUM7OztBQU1BWCxNQUFNWSxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsQ0FBRCxFQUFJQyxDQUFKO1dBQVVBLEtBQUtEO0FBQWY7QUFDWlYsTUFBTVMsSUFBQUEsZUFBQSxFQUFNLFNBQUNDLENBQUQsRUFBSUMsQ0FBSjtXQUFVQSxLQUFLRDtBQUFmO0FBQ1pkLEtBQUthLElBQUFBLGVBQUEsRUFBTSxTQUFDQyxDQUFELEVBQUlDLENBQUo7V0FBVUEsSUFBSUQ7QUFBZDtBQUNYWCxLQUFLVSxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsQ0FBRCxFQUFJQyxDQUFKO1dBQVVBLElBQUlEO0FBQWQ7QUFFWGxCLE1BQU1pQixJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsQ0FBRCxFQUFJQyxDQUFKO1dBQVVELElBQUlDO0FBQWQ7QUFDWkgsTUFBTUMsSUFBQUEsZUFBQSxFQUFNLFNBQUNDLENBQUQsRUFBSUMsQ0FBSjtXQUFVQSxJQUFJRDtBQUFkO0FBQ1pOLE1BQU1LLElBQUFBLGVBQUEsRUFBTSxTQUFDQyxDQUFELEVBQUlDLENBQUo7V0FBVUQsSUFBSUM7QUFBZDtBQUNaakIsTUFBTWUsSUFBQUEsZUFBQSxFQUFNLFNBQUNDLENBQUQsRUFBSUMsQ0FBSjtXQUFVQSxJQUFJRDtBQUFkO0FBQ1pQLE1BQU1NLElBQUFBLGVBQUEsRUFBTSxTQUFDQyxDQUFELEVBQUlDLENBQUo7V0FBVUEsSUFBSUQ7QUFBZDtBQUVaWixXQUFXVyxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsQ0FBRCxFQUFJQyxDQUFKO1dBQVVBLElBQUlELE1BQUs7QUFBbkI7QUFDakJmLE9BQU9HLFNBQVM7QUFDaEJPLE1BQU1PLElBQUFBLGlCQUFBLEVBQU9qQjtBQUViTyxNQUFNLFNBQUNXLEVBQUQ7V0FBUUMsSUFBQUEsZUFBQSxFQUFNQyxLQUFLYixHQUFYLEVBQWdCVztBQUF4QjtBQUNOWixNQUFNLFNBQUNZLEVBQUQ7V0FBUUMsSUFBQUEsZUFBQSxFQUFNQyxLQUFLZCxHQUFYLEVBQWdCWTtBQUF4QjtBQUVOLENBQUEsRUFBQ3RCLEdBQUQsRUFBQSxHQUFRd0IsSUFBQTtBQUVSVCxNQUFNRyxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsQ0FBRCxFQUFJQyxDQUFKO1dBQVVELEtBQUtDO0FBQWY7QUFFWkosU0FBU1MsSUFBQUEsaUJBQUEsRUFBUVYsS0FBSztJQUFFVyxXQUFGO0lBQUs7Q0FBbEI7QUFDVHhCLE9BQU91QixJQUFBQSxpQkFBQSxFQUFRVixLQUFLO0lBQUVXLFdBQUY7SUFBSztDQUFsQiJ9
|
|
@@ -1,100 +1,113 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
2
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
3
|
+
value: true
|
|
5
4
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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
|
+
getter: function() {
|
|
13
|
+
return getter;
|
|
14
|
+
},
|
|
15
|
+
getters: function() {
|
|
16
|
+
return getters;
|
|
17
|
+
},
|
|
18
|
+
method: function() {
|
|
19
|
+
return method;
|
|
20
|
+
},
|
|
21
|
+
methods: function() {
|
|
22
|
+
return methods;
|
|
23
|
+
},
|
|
24
|
+
mixin: function() {
|
|
25
|
+
return mixin;
|
|
26
|
+
},
|
|
27
|
+
properties: function() {
|
|
28
|
+
return properties;
|
|
29
|
+
},
|
|
30
|
+
property: function() {
|
|
31
|
+
return property;
|
|
32
|
+
},
|
|
33
|
+
setter: function() {
|
|
34
|
+
return setter;
|
|
35
|
+
},
|
|
36
|
+
setters: function() {
|
|
37
|
+
return setters;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
const _function = require("./function");
|
|
41
|
+
const _object = require("./object");
|
|
12
42
|
var getter, getters, method, methods, mixin, properties, property, setter, setters;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
exports.methods = methods;
|
|
19
|
-
exports.method = method;
|
|
20
|
-
exports.getters = getters;
|
|
21
|
-
exports.getter = getter;
|
|
22
|
-
exports.property = property = (0, _function.curry)(function (key, description, target) {
|
|
23
|
-
return Object.defineProperty(target, key, (0, _object.merge)({
|
|
24
|
-
enumerable: true,
|
|
25
|
-
configurable: true
|
|
26
|
-
}, description));
|
|
43
|
+
property = (0, _function.curry)(function(key, description, target) {
|
|
44
|
+
return Object.defineProperty(target, key, (0, _object.merge)({
|
|
45
|
+
enumerable: true,
|
|
46
|
+
configurable: true
|
|
47
|
+
}, description));
|
|
27
48
|
});
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
49
|
+
getter = (0, _function.curry)(function(key, f, target) {
|
|
50
|
+
return property(key, {
|
|
51
|
+
get: f
|
|
52
|
+
}, target);
|
|
32
53
|
});
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
54
|
+
setter = (0, _function.curry)(function(key, f, target) {
|
|
55
|
+
return property(key, {
|
|
56
|
+
set: f
|
|
57
|
+
}, target);
|
|
37
58
|
});
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
59
|
+
method = (0, _function.curry)(function(key, f, target) {
|
|
60
|
+
return property(key, {
|
|
61
|
+
value: f,
|
|
62
|
+
configurable: true,
|
|
63
|
+
writeable: true
|
|
64
|
+
}, target);
|
|
44
65
|
});
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
return results;
|
|
66
|
+
properties = (0, _function.curry)(function(dictionary, target) {
|
|
67
|
+
var description, key, results;
|
|
68
|
+
results = [];
|
|
69
|
+
for(key in dictionary){
|
|
70
|
+
description = dictionary[key];
|
|
71
|
+
results.push(property(key, description, target));
|
|
72
|
+
}
|
|
73
|
+
return results;
|
|
55
74
|
});
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
return results;
|
|
75
|
+
getters = (0, _function.curry)(function(dictionary, target) {
|
|
76
|
+
var f, key, results;
|
|
77
|
+
results = [];
|
|
78
|
+
for(key in dictionary){
|
|
79
|
+
f = dictionary[key];
|
|
80
|
+
results.push(getter(key, f, target));
|
|
81
|
+
}
|
|
82
|
+
return results;
|
|
66
83
|
});
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
return results;
|
|
84
|
+
setters = (0, _function.curry)(function(dictionary, target) {
|
|
85
|
+
var f, key, results;
|
|
86
|
+
results = [];
|
|
87
|
+
for(key in dictionary){
|
|
88
|
+
f = dictionary[key];
|
|
89
|
+
results.push(setter(key, f, target));
|
|
90
|
+
}
|
|
91
|
+
return results;
|
|
77
92
|
});
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
return results;
|
|
93
|
+
methods = (0, _function.curry)(function(dictionary, target) {
|
|
94
|
+
var f, key, results;
|
|
95
|
+
results = [];
|
|
96
|
+
for(key in dictionary){
|
|
97
|
+
f = dictionary[key];
|
|
98
|
+
results.push(method(key, f, target));
|
|
99
|
+
}
|
|
100
|
+
return results;
|
|
88
101
|
});
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
return target;
|
|
102
|
+
mixin = (0, _function.curry)(function(target, fx) {
|
|
103
|
+
var f, i, len;
|
|
104
|
+
for(i = 0, len = fx.length; i < len; i++){
|
|
105
|
+
f = fx[i];
|
|
106
|
+
f(target);
|
|
107
|
+
}
|
|
108
|
+
return target;
|
|
98
109
|
});
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
100
|
-
//# sourceURL
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL21ldGFjbGFzcy5jb2ZmZWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBQSxNQUFBLEVBQUEsT0FBQSxFQUFBLE1BQUEsRUFBQSxPQUFBLEVBQUEsS0FBQSxFQUFBLFVBQUEsRUFBQSxRQUFBLEVBQUEsTUFBQSxFQUFBOztBQUFBLE9BQUE7RUFBUSxLQUFSO0NBQUEsTUFBQTs7QUFDQSxPQUFBO0VBQVEsS0FBUjtDQUFBLE1BQUE7O0FBRUEsUUFBQSxHQUFXLEtBQUEsQ0FBTSxRQUFBLENBQUMsR0FBRCxFQUFNLFdBQU4sRUFBbUIsTUFBbkIsQ0FBQTtTQUNmLE1BQU0sQ0FBQyxjQUFQLENBQXNCLE1BQXRCLEVBQThCLEdBQTlCLEVBQ0UsS0FBQSxDQUFNO0lBQUUsVUFBQSxFQUFZLElBQWQ7SUFBb0IsWUFBQSxFQUFjO0VBQWxDLENBQU4sRUFBZ0QsV0FBaEQsQ0FERjtBQURlLENBQU47O0FBSVgsTUFBQSxHQUFTLEtBQUEsQ0FBTSxRQUFBLENBQUMsR0FBRCxFQUFNLENBQU4sRUFBUyxNQUFULENBQUE7U0FBb0IsUUFBQSxDQUFTLEdBQVQsRUFBYztJQUFDLEdBQUEsRUFBSztFQUFOLENBQWQsRUFBd0IsTUFBeEI7QUFBcEIsQ0FBTjs7QUFDVCxNQUFBLEdBQVMsS0FBQSxDQUFNLFFBQUEsQ0FBQyxHQUFELEVBQU0sQ0FBTixFQUFTLE1BQVQsQ0FBQTtTQUFvQixRQUFBLENBQVMsR0FBVCxFQUFjO0lBQUMsR0FBQSxFQUFLO0VBQU4sQ0FBZCxFQUF3QixNQUF4QjtBQUFwQixDQUFOOztBQUNULE1BQUEsR0FBUyxLQUFBLENBQU0sUUFBQSxDQUFDLEdBQUQsRUFBTSxDQUFOLEVBQVMsTUFBVCxDQUFBO1NBQ2IsUUFBQSxDQUFTLEdBQVQsRUFBYztJQUFDLEtBQUEsRUFBTyxDQUFSO0lBQVcsWUFBQSxFQUFjLElBQXpCO0lBQStCLFNBQUEsRUFBVztFQUExQyxDQUFkLEVBQStELE1BQS9EO0FBRGEsQ0FBTjs7QUFHVCxVQUFBLEdBQWEsS0FBQSxDQUFNLFFBQUEsQ0FBQyxVQUFELEVBQWEsTUFBYixDQUFBO0FBQ25CLE1BQUEsV0FBQSxFQUFBLEdBQUEsRUFBQTtBQUFFO0VBQUEsS0FBQSxpQkFBQTs7aUJBQ0UsUUFBQSxDQUFTLEdBQVQsRUFBYyxXQUFkLEVBQTJCLE1BQTNCO0VBREYsQ0FBQTs7QUFEaUIsQ0FBTjs7QUFJYixPQUFBLEdBQVUsS0FBQSxDQUFNLFFBQUEsQ0FBQyxVQUFELEVBQWEsTUFBYixDQUFBO0FBQ2hCLE1BQUEsQ0FBQSxFQUFBLEdBQUEsRUFBQTtBQUFFO0VBQUEsS0FBQSxpQkFBQTs7aUJBQ0UsTUFBQSxDQUFPLEdBQVAsRUFBWSxDQUFaLEVBQWUsTUFBZjtFQURGLENBQUE7O0FBRGMsQ0FBTjs7QUFJVixPQUFBLEdBQVUsS0FBQSxDQUFNLFFBQUEsQ0FBQyxVQUFELEVBQWEsTUFBYixDQUFBO0FBQ2hCLE1BQUEsQ0FBQSxFQUFBLEdBQUEsRUFBQTtBQUFFO0VBQUEsS0FBQSxpQkFBQTs7aUJBQ0UsTUFBQSxDQUFPLEdBQVAsRUFBWSxDQUFaLEVBQWUsTUFBZjtFQURGLENBQUE7O0FBRGMsQ0FBTjs7QUFJVixPQUFBLEdBQVUsS0FBQSxDQUFNLFFBQUEsQ0FBQyxVQUFELEVBQWEsTUFBYixDQUFBO0FBQ2hCLE1BQUEsQ0FBQSxFQUFBLEdBQUEsRUFBQTtBQUFFO0VBQUEsS0FBQSxpQkFBQTs7aUJBQ0UsTUFBQSxDQUFPLEdBQVAsRUFBWSxDQUFaLEVBQWUsTUFBZjtFQURGLENBQUE7O0FBRGMsQ0FBTjs7QUFJVixLQUFBLEdBQVEsS0FBQSxDQUFNLFFBQUEsQ0FBQyxNQUFELEVBQVMsRUFBVCxDQUFBO0FBQWUsTUFBQSxDQUFBLEVBQUEsQ0FBQSxFQUFBO0VBQUMsS0FBQSxvQ0FBQTs7SUFBQSxDQUFBLENBQUUsTUFBRjtFQUFBO1NBQXVCO0FBQXZDLENBQU47O0FBRVIsT0FBQTtFQUNFLFFBREY7RUFFRSxNQUZGO0VBR0UsTUFIRjtFQUlFLE1BSkY7RUFLRSxVQUxGO0VBTUUsT0FORjtFQU9FLE9BUEY7RUFRRSxPQVJGO0VBU0UsS0FURiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y3Vycnl9IGZyb20gXCIuL2Z1bmN0aW9uXCJcbmltcG9ydCB7bWVyZ2V9IGZyb20gXCIuL29iamVjdFwiXG5cbnByb3BlcnR5ID0gY3VycnkgKGtleSwgZGVzY3JpcHRpb24sIHRhcmdldCkgLT5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5IHRhcmdldCwga2V5LFxuICAgIG1lcmdlIHsgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0sIGRlc2NyaXB0aW9uXG5cbmdldHRlciA9IGN1cnJ5IChrZXksIGYsIHRhcmdldCkgLT4gcHJvcGVydHkga2V5LCB7Z2V0OiBmfSwgdGFyZ2V0XG5zZXR0ZXIgPSBjdXJyeSAoa2V5LCBmLCB0YXJnZXQpIC0+IHByb3BlcnR5IGtleSwge3NldDogZn0sIHRhcmdldFxubWV0aG9kID0gY3VycnkgKGtleSwgZiwgdGFyZ2V0KSAtPlxuICBwcm9wZXJ0eSBrZXksIHt2YWx1ZTogZiwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0ZWFibGU6IHRydWV9LCB0YXJnZXRcblxucHJvcGVydGllcyA9IGN1cnJ5IChkaWN0aW9uYXJ5LCB0YXJnZXQpIC0+XG4gIGZvciBrZXksIGRlc2NyaXB0aW9uIG9mIGRpY3Rpb25hcnlcbiAgICBwcm9wZXJ0eSBrZXksIGRlc2NyaXB0aW9uLCB0YXJnZXRcblxuZ2V0dGVycyA9IGN1cnJ5IChkaWN0aW9uYXJ5LCB0YXJnZXQpIC0+XG4gIGZvciBrZXksIGYgb2YgZGljdGlvbmFyeVxuICAgIGdldHRlciBrZXksIGYsIHRhcmdldFxuXG5zZXR0ZXJzID0gY3VycnkgKGRpY3Rpb25hcnksIHRhcmdldCkgLT5cbiAgZm9yIGtleSwgZiBvZiBkaWN0aW9uYXJ5XG4gICAgc2V0dGVyIGtleSwgZiwgdGFyZ2V0XG5cbm1ldGhvZHMgPSBjdXJyeSAoZGljdGlvbmFyeSwgdGFyZ2V0KSAtPlxuICBmb3Iga2V5LCBmIG9mIGRpY3Rpb25hcnlcbiAgICBtZXRob2Qga2V5LCBmLCB0YXJnZXRcblxubWl4aW4gPSBjdXJyeSAodGFyZ2V0LCBmeCkgLT4gZiB0YXJnZXQgZm9yIGYgaW4gZnggOyB0YXJnZXRcblxuZXhwb3J0IHtcbiAgcHJvcGVydHlcbiAgZ2V0dGVyXG4gIHNldHRlclxuICBtZXRob2RcbiAgcHJvcGVydGllc1xuICBnZXR0ZXJzXG4gIHNldHRlcnNcbiAgbWV0aG9kc1xuICBtaXhpblxufVxuIl19
|
|
111
|
+
//# sourceURL=/@dashkite/joy/src/metaclass.coffee
|
|
112
|
+
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy9tZXRhY2xhc3MuY29mZmVlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y3Vycnl9IGZyb20gXCIuL2Z1bmN0aW9uXCJcbmltcG9ydCB7bWVyZ2V9IGZyb20gXCIuL29iamVjdFwiXG5cbnByb3BlcnR5ID0gY3VycnkgKGtleSwgZGVzY3JpcHRpb24sIHRhcmdldCkgLT5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5IHRhcmdldCwga2V5LFxuICAgIG1lcmdlIHsgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0sIGRlc2NyaXB0aW9uXG5cbmdldHRlciA9IGN1cnJ5IChrZXksIGYsIHRhcmdldCkgLT4gcHJvcGVydHkga2V5LCB7Z2V0OiBmfSwgdGFyZ2V0XG5zZXR0ZXIgPSBjdXJyeSAoa2V5LCBmLCB0YXJnZXQpIC0+IHByb3BlcnR5IGtleSwge3NldDogZn0sIHRhcmdldFxubWV0aG9kID0gY3VycnkgKGtleSwgZiwgdGFyZ2V0KSAtPlxuICBwcm9wZXJ0eSBrZXksIHt2YWx1ZTogZiwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0ZWFibGU6IHRydWV9LCB0YXJnZXRcblxucHJvcGVydGllcyA9IGN1cnJ5IChkaWN0aW9uYXJ5LCB0YXJnZXQpIC0+XG4gIGZvciBrZXksIGRlc2NyaXB0aW9uIG9mIGRpY3Rpb25hcnlcbiAgICBwcm9wZXJ0eSBrZXksIGRlc2NyaXB0aW9uLCB0YXJnZXRcblxuZ2V0dGVycyA9IGN1cnJ5IChkaWN0aW9uYXJ5LCB0YXJnZXQpIC0+XG4gIGZvciBrZXksIGYgb2YgZGljdGlvbmFyeVxuICAgIGdldHRlciBrZXksIGYsIHRhcmdldFxuXG5zZXR0ZXJzID0gY3VycnkgKGRpY3Rpb25hcnksIHRhcmdldCkgLT5cbiAgZm9yIGtleSwgZiBvZiBkaWN0aW9uYXJ5XG4gICAgc2V0dGVyIGtleSwgZiwgdGFyZ2V0XG5cbm1ldGhvZHMgPSBjdXJyeSAoZGljdGlvbmFyeSwgdGFyZ2V0KSAtPlxuICBmb3Iga2V5LCBmIG9mIGRpY3Rpb25hcnlcbiAgICBtZXRob2Qga2V5LCBmLCB0YXJnZXRcblxubWl4aW4gPSBjdXJyeSAodGFyZ2V0LCBmeCkgLT4gZiB0YXJnZXQgZm9yIGYgaW4gZnggOyB0YXJnZXRcblxuZXhwb3J0IHtcbiAgcHJvcGVydHlcbiAgZ2V0dGVyXG4gIHNldHRlclxuICBtZXRob2RcbiAgcHJvcGVydGllc1xuICBnZXR0ZXJzXG4gIHNldHRlcnNcbiAgbWV0aG9kc1xuICBtaXhpblxufVxuIl0sIm5hbWVzIjpbImdldHRlciIsImdldHRlcnMiLCJtZXRob2QiLCJtZXRob2RzIiwibWl4aW4iLCJwcm9wZXJ0aWVzIiwicHJvcGVydHkiLCJzZXR0ZXIiLCJzZXR0ZXJzIiwiY3VycnkiLCJrZXkiLCJkZXNjcmlwdGlvbiIsInRhcmdldCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwibWVyZ2UiLCJlbnVtZXJhYmxlIiwiY29uZmlndXJhYmxlIiwiZiIsImdldCIsInNldCIsInZhbHVlIiwid3JpdGVhYmxlIiwiZGljdGlvbmFyeSIsInJlc3VsdHMiLCJmeCIsImkiLCJsZW4iLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBZ0NFQSxNQUZGO2VBRUVBOztJQUlBQyxPQU5GO2VBTUVBOztJQUZBQyxNQUpGO2VBSUVBOztJQUlBQyxPQVJGO2VBUUVBOztJQUNBQyxLQVRGO2VBU0VBOztJQUpBQyxVQUxGO2VBS0VBOztJQUpBQyxRQURGO2VBQ0VBOztJQUVBQyxNQUhGO2VBR0VBOztJQUlBQyxPQVBGO2VBT0VBOzs7MEJBckNGO3dCQUNBO0FBREEsSUFBQVIsUUFBQUMsU0FBQUMsUUFBQUMsU0FBQUMsT0FBQUMsWUFBQUMsVUFBQUMsUUFBQUM7QUFHQUYsV0FBV0csSUFBQUEsZUFBQSxFQUFNLFNBQUNDLEdBQUQsRUFBTUMsV0FBTixFQUFtQkMsTUFBbkI7V0FDZkMsT0FBT0MsY0FBUCxDQUFzQkYsUUFBUUYsS0FDNUJLLElBQUFBLGFBQUEsRUFBTTtRQUFFQyxZQUFZO1FBQU1DLGNBQWM7SUFBbEMsR0FBMENOO0FBRm5DO0FBSWpCWCxTQUFTUyxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsR0FBRCxFQUFNUSxDQUFOLEVBQVNOLE1BQVQ7V0FBb0JOLFNBQVNJLEtBQUs7UUFBQ1MsS0FBS0Q7SUFBTixHQUFVTjtBQUE1QztBQUNmTCxTQUFTRSxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsR0FBRCxFQUFNUSxDQUFOLEVBQVNOLE1BQVQ7V0FBb0JOLFNBQVNJLEtBQUs7UUFBQ1UsS0FBS0Y7SUFBTixHQUFVTjtBQUE1QztBQUNmVixTQUFTTyxJQUFBQSxlQUFBLEVBQU0sU0FBQ0MsR0FBRCxFQUFNUSxDQUFOLEVBQVNOLE1BQVQ7V0FDYk4sU0FBU0ksS0FBSztRQUFDVyxPQUFPSDtRQUFHRCxjQUFjO1FBQU1LLFdBQVc7SUFBMUMsR0FBaURWO0FBRGxEO0FBR2ZQLGFBQWFJLElBQUFBLGVBQUEsRUFBTSxTQUFDYyxVQUFELEVBQWFYLE1BQWI7SUFDbkIsSUFBQUQsYUFBQUQsS0FBQWM7SUFBRUEsVUFBQSxFQUFBO0lBQUEsSUFBQWQsT0FBQWEsV0FBQTs7cUJBQ0VqQixTQUFTSSxLQUFLQyxhQUFhQztJQUQ3Qjs7QUFEaUI7QUFJbkJYLFVBQVVRLElBQUFBLGVBQUEsRUFBTSxTQUFDYyxVQUFELEVBQWFYLE1BQWI7SUFDaEIsSUFBQU0sR0FBQVIsS0FBQWM7SUFBRUEsVUFBQSxFQUFBO0lBQUEsSUFBQWQsT0FBQWEsV0FBQTs7cUJBQ0V2QixPQUFPVSxLQUFLUSxHQUFHTjtJQURqQjs7QUFEYztBQUloQkosVUFBVUMsSUFBQUEsZUFBQSxFQUFNLFNBQUNjLFVBQUQsRUFBYVgsTUFBYjtJQUNoQixJQUFBTSxHQUFBUixLQUFBYztJQUFFQSxVQUFBLEVBQUE7SUFBQSxJQUFBZCxPQUFBYSxXQUFBOztxQkFDRWhCLE9BQU9HLEtBQUtRLEdBQUdOO0lBRGpCOztBQURjO0FBSWhCVCxVQUFVTSxJQUFBQSxlQUFBLEVBQU0sU0FBQ2MsVUFBRCxFQUFhWCxNQUFiO0lBQ2hCLElBQUFNLEdBQUFSLEtBQUFjO0lBQUVBLFVBQUEsRUFBQTtJQUFBLElBQUFkLE9BQUFhLFdBQUE7O3FCQUNFckIsT0FBT1EsS0FBS1EsR0FBR047SUFEakI7O0FBRGM7QUFJaEJSLFFBQVFLLElBQUFBLGVBQUEsRUFBTSxTQUFDRyxNQUFELEVBQVNhLEVBQVQ7SUFBZSxJQUFBUCxHQUFBUSxHQUFBQztJQUFDLElBQUFELElBQUEsR0FBQUMsTUFBQUYsR0FBQUcsTUFBQSxFQUFBRixJQUFBQyxLQUFBRCxJQUFBOztRQUFBUixFQUFFTjtJQUFGO1dBQXVCQTtBQUF2QyJ9
|