@pie-lib/graphing 3.2.0-next.2 → 3.2.0-next.4

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.
Files changed (114) hide show
  1. package/CHANGELOG.md +18 -30
  2. package/LICENSE.md +5 -0
  3. package/lib/axis/arrow.js +1 -1
  4. package/lib/axis/axes.js +1 -1
  5. package/lib/axis/index.js +1 -1
  6. package/lib/bg.js +1 -1
  7. package/lib/container/actions.js +1 -1
  8. package/lib/container/index.js +1 -1
  9. package/lib/container/marks.js +1 -1
  10. package/lib/container/middleware.js +1 -1
  11. package/lib/container/reducer.js +1 -1
  12. package/lib/coordinates-label.js +1 -1
  13. package/lib/graph-with-controls.js +1 -1
  14. package/lib/graph.js +1 -1
  15. package/lib/grid-setup.js +1 -1
  16. package/lib/grid.js +1 -1
  17. package/lib/index.js +1 -1
  18. package/lib/key-legend.js +1 -1
  19. package/lib/label-svg-icon.js +1 -1
  20. package/lib/labels.js +1 -1
  21. package/lib/mark-label.js +1 -1
  22. package/lib/toggle-bar.js +1 -1
  23. package/lib/tool-menu.js +1 -1
  24. package/lib/tools/absolute/component.js +1 -1
  25. package/lib/tools/absolute/index.js +1 -1
  26. package/lib/tools/circle/bg-circle.js +1 -1
  27. package/lib/tools/circle/component.js +1 -1
  28. package/lib/tools/circle/index.js +1 -1
  29. package/lib/tools/exponential/component.js +1 -1
  30. package/lib/tools/exponential/index.js +1 -1
  31. package/lib/tools/index.js +1 -1
  32. package/lib/tools/line/component.js +1 -1
  33. package/lib/tools/line/index.js +1 -1
  34. package/lib/tools/parabola/component.js +1 -1
  35. package/lib/tools/parabola/index.js +1 -1
  36. package/lib/tools/point/component.js +1 -1
  37. package/lib/tools/point/index.js +1 -1
  38. package/lib/tools/polygon/component.js +1 -1
  39. package/lib/tools/polygon/index.js +1 -1
  40. package/lib/tools/polygon/line.js +1 -1
  41. package/lib/tools/polygon/polygon.js +1 -1
  42. package/lib/tools/ray/component.js +1 -1
  43. package/lib/tools/ray/index.js +1 -1
  44. package/lib/tools/segment/component.js +1 -1
  45. package/lib/tools/segment/index.js +1 -1
  46. package/lib/tools/shared/arrow-head.js +1 -1
  47. package/lib/tools/shared/icons/CorrectSVG.js +1 -1
  48. package/lib/tools/shared/icons/IncorrectSVG.js +1 -1
  49. package/lib/tools/shared/icons/MissingSVG.js +1 -1
  50. package/lib/tools/shared/line/index.js +1 -1
  51. package/lib/tools/shared/line/line-path.js +1 -1
  52. package/lib/tools/shared/line/with-root-edge.js +1 -1
  53. package/lib/tools/shared/point/arrow-point.js +1 -1
  54. package/lib/tools/shared/point/arrow.js +1 -1
  55. package/lib/tools/shared/point/base-point.js +1 -1
  56. package/lib/tools/shared/point/index.js +1 -1
  57. package/lib/tools/shared/styles.js +1 -1
  58. package/lib/tools/shared/types.js +1 -1
  59. package/lib/tools/sine/component.js +1 -1
  60. package/lib/tools/sine/index.js +1 -1
  61. package/lib/tools/vector/component.js +1 -1
  62. package/lib/tools/vector/index.js +1 -1
  63. package/lib/undo-redo.js +1 -1
  64. package/lib/use-debounce.js +1 -1
  65. package/lib/utils.js +1 -1
  66. package/package.json +4 -4
  67. package/lib/__tests__/bg.test.js +0 -282
  68. package/lib/__tests__/coordinates-label.test.js +0 -276
  69. package/lib/__tests__/graph-with-controls.test.js +0 -275
  70. package/lib/__tests__/graph.test.js +0 -927
  71. package/lib/__tests__/grid-setup.test.js +0 -729
  72. package/lib/__tests__/grid.test.js +0 -29
  73. package/lib/__tests__/key-legend.test.js +0 -321
  74. package/lib/__tests__/label-svg-icon.test.js +0 -373
  75. package/lib/__tests__/labels.test.js +0 -61
  76. package/lib/__tests__/mark-label.test.js +0 -133
  77. package/lib/__tests__/toggle-bar.test.js +0 -197
  78. package/lib/__tests__/tool-menu.test.js +0 -151
  79. package/lib/__tests__/undo-redo.test.js +0 -31
  80. package/lib/__tests__/use-debounce.test.js +0 -24
  81. package/lib/__tests__/utils.js +0 -70
  82. package/lib/__tests__/utils.test.js +0 -123
  83. package/lib/axis/__tests__/arrow.test.js +0 -60
  84. package/lib/axis/__tests__/axes.test.js +0 -195
  85. package/lib/container/__tests__/actions.test.js +0 -108
  86. package/lib/container/__tests__/index.test.js +0 -503
  87. package/lib/container/__tests__/marks.test.js +0 -259
  88. package/lib/container/__tests__/middleware.test.js +0 -244
  89. package/lib/container/__tests__/reducer.test.js +0 -450
  90. package/lib/tools/absolute/__tests__/component.test.js +0 -65
  91. package/lib/tools/circle/__tests__/bg-circle.test.js +0 -33
  92. package/lib/tools/circle/__tests__/component.test.js +0 -615
  93. package/lib/tools/circle/__tests__/index.test.js +0 -576
  94. package/lib/tools/exponential/__tests__/component.test.js +0 -64
  95. package/lib/tools/exponential/__tests__/index.test.js +0 -828
  96. package/lib/tools/line/__tests__/component.test.js +0 -45
  97. package/lib/tools/parabola/__tests__/component.test.js +0 -64
  98. package/lib/tools/parabola/__tests__/index.test.js +0 -564
  99. package/lib/tools/point/__tests__/component.test.js +0 -434
  100. package/lib/tools/point/__tests__/index.test.js +0 -262
  101. package/lib/tools/polygon/__tests__/component.test.js +0 -485
  102. package/lib/tools/polygon/__tests__/index.test.js +0 -303
  103. package/lib/tools/polygon/__tests__/line.test.js +0 -50
  104. package/lib/tools/polygon/__tests__/polygon.test.js +0 -85
  105. package/lib/tools/ray/__tests__/component.test.js +0 -35
  106. package/lib/tools/segment/__tests__/component.test.js +0 -35
  107. package/lib/tools/shared/__tests__/arrow-head.test.js +0 -45
  108. package/lib/tools/shared/line/__tests__/index.test.js +0 -124
  109. package/lib/tools/shared/line/__tests__/line-path.test.js +0 -62
  110. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -90
  111. package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -127
  112. package/lib/tools/shared/point/__tests__/base-point.test.js +0 -122
  113. package/lib/tools/sine/__tests__/component.test.js +0 -72
  114. package/lib/tools/vector/__tests__/component.test.js +0 -32
@@ -1,45 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
- var _testUtils = require("@pie-lib/test-utils");
6
- var _react = _interopRequireDefault(require("react"));
7
- var _component = require("../component");
8
- var _utils = require("../../../__tests__/utils");
9
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
- jest.mock('@pie-lib/plot', function () {
12
- var a = jest.requireActual('@pie-lib/plot');
13
- return {
14
- types: a.types,
15
- gridDraggable: a.gridDraggable,
16
- utils: a.utils,
17
- trig: {
18
- edges: jest.fn(function () {
19
- return jest.fn().mockReturnValue([0, 0]);
20
- })
21
- }
22
- };
23
- });
24
- describe('ArrowedLine', function () {
25
- var onChange = jest.fn();
26
- var renderComponent = function renderComponent(extras) {
27
- var defaults = {
28
- classes: {},
29
- className: 'className',
30
- onChange: onChange,
31
- markerId: '1',
32
- graphProps: (0, _utils.graphProps)()
33
- };
34
- var props = _objectSpread(_objectSpread({}, defaults), extras);
35
- return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_component.ArrowedLine, props));
36
- };
37
- describe('rendering', function () {
38
- it('renders without crashing', function () {
39
- var _renderComponent = renderComponent(),
40
- container = _renderComponent.container;
41
- expect(container.firstChild).toBeInTheDocument();
42
- });
43
- });
44
- });
45
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29tcG9uZW50IiwiX3V0aWxzIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJqZXN0IiwibW9jayIsImEiLCJyZXF1aXJlQWN0dWFsIiwidHlwZXMiLCJncmlkRHJhZ2dhYmxlIiwidXRpbHMiLCJ0cmlnIiwiZWRnZXMiLCJmbiIsIm1vY2tSZXR1cm5WYWx1ZSIsImRlc2NyaWJlIiwib25DaGFuZ2UiLCJyZW5kZXJDb21wb25lbnQiLCJleHRyYXMiLCJkZWZhdWx0cyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJtYXJrZXJJZCIsImdyYXBoUHJvcHMiLCJnZXRHcmFwaFByb3BzIiwicHJvcHMiLCJyZW5kZXIiLCJjcmVhdGVFbGVtZW50IiwiQXJyb3dlZExpbmUiLCJpdCIsIl9yZW5kZXJDb21wb25lbnQiLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdG9vbHMvbGluZS9fX3Rlc3RzX18vY29tcG9uZW50LnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbmRlciB9IGZyb20gJ0BwaWUtbGliL3Rlc3QtdXRpbHMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEFycm93ZWRMaW5lIH0gZnJvbSAnLi4vY29tcG9uZW50JztcbmltcG9ydCB7IGdyYXBoUHJvcHMgYXMgZ2V0R3JhcGhQcm9wcyB9IGZyb20gJy4uLy4uLy4uL19fdGVzdHNfXy91dGlscyc7XG5cbmplc3QubW9jaygnQHBpZS1saWIvcGxvdCcsICgpID0+IHtcbiAgY29uc3QgYSA9IGplc3QucmVxdWlyZUFjdHVhbCgnQHBpZS1saWIvcGxvdCcpO1xuICByZXR1cm4ge1xuICAgIHR5cGVzOiBhLnR5cGVzLFxuICAgIGdyaWREcmFnZ2FibGU6IGEuZ3JpZERyYWdnYWJsZSxcbiAgICB1dGlsczogYS51dGlscyxcbiAgICB0cmlnOiB7XG4gICAgICBlZGdlczogamVzdC5mbigoKSA9PiBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKFswLCAwXSkpLFxuICAgIH0sXG4gIH07XG59KTtcblxuZGVzY3JpYmUoJ0Fycm93ZWRMaW5lJywgKCkgPT4ge1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGNvbnN0IHJlbmRlckNvbXBvbmVudCA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2xhc3NOYW1lOiAnY2xhc3NOYW1lJyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgbWFya2VySWQ6ICcxJyxcbiAgICAgIGdyYXBoUHJvcHM6IGdldEdyYXBoUHJvcHMoKSxcbiAgICB9O1xuICAgIGNvbnN0IHByb3BzID0geyAuLi5kZWZhdWx0cywgLi4uZXh0cmFzIH07XG4gICAgcmV0dXJuIHJlbmRlcig8QXJyb3dlZExpbmUgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJDb21wb25lbnQoKTtcbiAgICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUlu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
@@ -1,64 +0,0 @@
1
- "use strict";
2
-
3
- var _withRootEdge = require("../../shared/line/with-root-edge");
4
- var _graphingUtils = require("@pie-lib/graphing-utils");
5
- var _plot = require("@pie-lib/plot");
6
- var _utils = require("../../../__tests__/utils");
7
- var xy = _plot.utils.xy;
8
- jest.mock('@pie-lib/graphing-utils', function () {
9
- return {
10
- buildDataPoints: jest.fn().mockReturnValue([]),
11
- parabolaFromTwoPoints: jest.fn(function () {
12
- return jest.fn();
13
- }),
14
- getAmplitudeAndFreq: jest.fn().mockReturnValue({
15
- freq: 4,
16
- amplitude: 1
17
- })
18
- };
19
- });
20
- jest.mock('../../shared/line/with-root-edge', function () {
21
- return {
22
- withRootEdge: jest.fn(),
23
- rootEdgeComponent: jest.fn()
24
- };
25
- });
26
- describe('Parabola', function () {
27
- var fnBody;
28
- var graphProps;
29
- var root;
30
- var edge;
31
- var result;
32
- beforeEach(function () {
33
- require('../component');
34
- fnBody = _withRootEdge.withRootEdge.mock.calls[0][0];
35
- graphProps = (0, _utils.graphProps)();
36
- root = xy(0, 0);
37
- edge = xy(1, 1);
38
- result = fnBody({
39
- graphProps: graphProps,
40
- root: root,
41
- edge: edge
42
- });
43
- });
44
- it('fnBody is not null', function () {
45
- expect(fnBody).toBeDefined();
46
- });
47
- it('calls buildDataPoints', function () {
48
- var _graphProps = graphProps,
49
- domain = _graphProps.domain,
50
- range = _graphProps.range;
51
- expect(_graphingUtils.buildDataPoints).toHaveBeenCalledWith(domain, range, root, edge, expect.anything(), true);
52
- });
53
- it('calls parabolaFromTwoPoints', function () {
54
- expect(_graphingUtils.parabolaFromTwoPoints).toHaveBeenCalledWith(root, edge);
55
- });
56
- it('returns dataPoints', function () {
57
- expect(result).toEqual({
58
- root: root,
59
- edge: edge,
60
- dataPoints: []
61
- });
62
- });
63
- });
64
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2l0aFJvb3RFZGdlIiwicmVxdWlyZSIsIl9ncmFwaGluZ1V0aWxzIiwiX3Bsb3QiLCJfdXRpbHMiLCJ4eSIsInV0aWxzIiwiamVzdCIsIm1vY2siLCJidWlsZERhdGFQb2ludHMiLCJmbiIsIm1vY2tSZXR1cm5WYWx1ZSIsInBhcmFib2xhRnJvbVR3b1BvaW50cyIsImdldEFtcGxpdHVkZUFuZEZyZXEiLCJmcmVxIiwiYW1wbGl0dWRlIiwid2l0aFJvb3RFZGdlIiwicm9vdEVkZ2VDb21wb25lbnQiLCJkZXNjcmliZSIsImZuQm9keSIsImdyYXBoUHJvcHMiLCJyb290IiwiZWRnZSIsInJlc3VsdCIsImJlZm9yZUVhY2giLCJjYWxscyIsImdldEdyYXBoUHJvcHMiLCJpdCIsImV4cGVjdCIsInRvQmVEZWZpbmVkIiwiX2dyYXBoUHJvcHMiLCJkb21haW4iLCJyYW5nZSIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwiYW55dGhpbmciLCJ0b0VxdWFsIiwiZGF0YVBvaW50cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9wYXJhYm9sYS9fX3Rlc3RzX18vY29tcG9uZW50LnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHdpdGhSb290RWRnZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9saW5lL3dpdGgtcm9vdC1lZGdlJztcbmltcG9ydCB7IGJ1aWxkRGF0YVBvaW50cywgcGFyYWJvbGFGcm9tVHdvUG9pbnRzIH0gZnJvbSAnQHBpZS1saWIvZ3JhcGhpbmctdXRpbHMnO1xuaW1wb3J0IHsgdXRpbHMgfSBmcm9tICdAcGllLWxpYi9wbG90JztcblxuaW1wb3J0IHsgZ3JhcGhQcm9wcyBhcyBnZXRHcmFwaFByb3BzIH0gZnJvbSAnLi4vLi4vLi4vX190ZXN0c19fL3V0aWxzJztcblxuY29uc3QgeyB4eSB9ID0gdXRpbHM7XG5qZXN0Lm1vY2soJ0BwaWUtbGliL2dyYXBoaW5nLXV0aWxzJywgKCkgPT4gKHtcbiAgYnVpbGREYXRhUG9pbnRzOiBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKFtdKSxcbiAgcGFyYWJvbGFGcm9tVHdvUG9pbnRzOiBqZXN0LmZuKCgpID0+IGplc3QuZm4oKSksXG4gIGdldEFtcGxpdHVkZUFuZEZyZXE6IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoeyBmcmVxOiA0LCBhbXBsaXR1ZGU6IDEgfSksXG59KSk7XG5cbmplc3QubW9jaygnLi4vLi4vc2hhcmVkL2xpbmUvd2l0aC1yb290LWVkZ2UnLCAoKSA9PiAoe1xuICB3aXRoUm9vdEVkZ2U6IGplc3QuZm4oKSxcbiAgcm9vdEVkZ2VDb21wb25lbnQ6IGplc3QuZm4oKSxcbn0pKTtcbmRlc2NyaWJlKCdQYXJhYm9sYScsICgpID0+IHtcbiAgbGV0IGZuQm9keTtcbiAgbGV0IGdyYXBoUHJvcHM7XG4gIGxldCByb290O1xuICBsZXQgZWRnZTtcbiAgbGV0IHJlc3VsdDtcbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgcmVxdWlyZSgnLi4vY29tcG9uZW50Jyk7XG4gICAgZm5Cb2R5ID0gd2l0aFJvb3RFZGdlLm1vY2suY2FsbHNbMF1bMF07XG4gICAgZ3JhcGhQcm9wcyA9IGdldEdyYXBoUHJvcHMoKTtcbiAgICByb290ID0geHkoMCwgMCk7XG4gICAgZWRnZSA9IHh5KDEsIDEpO1xuXG4gICAgcmVzdWx0ID0gZm5Cb2R5KHsgZ3JhcGhQcm9wcywgcm9vdCwgZWRnZSB9KTtcbiAgfSk7XG4gIGl0KCdmbkJvZHkgaXMgbm90IG51bGwnLCAoKSA9PiB7XG4gICAgZXhwZWN0KGZuQm9keSkudG9CZURlZmluZWQoKTtcbiAgfSk7XG5cbiAgaXQoJ2NhbGxzIGJ1aWxkRGF0YVBvaW50cycsICgpID0+IHtcbiAgICBjb25zdCB7IGRvbWFpbiwgcmFuZ2UgfSA9IGdyYXBoUHJvcHM7XG4gICAgZXhwZWN0KGJ1aWxkRGF0YVBvaW50cykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZG9tYWluLCByYW5nZSwgcm9vdCwgZWRnZSwgZXhwZWN0LmFueXRoaW5nKCksIHRydWUpO1xuICB9KTtcbiAgaXQoJ2NhbGxzIHBhcmFib2xhRnJvbVR3b1BvaW50cycsICgpID0+IHtcbiAgICBleHBlY3QocGFyYWJvbGFGcm9tVHdvUG9pbnRzKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChyb290LCBlZGdlKTtcbiAgfSk7XG5cbiAgaXQoJ3JldHVybnMgZGF0YVBvaW50cycsICgpID0+IHtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKHsgcm9vdCwgZWRnZSwgZGF0YVBvaW50czogW10gfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsSUFBQUEsYUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsY0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBRixPQUFBO0FBRUEsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBRUEsSUFBUUksRUFBRSxHQUFLQyxXQUFLLENBQVpELEVBQUU7QUFDVkUsSUFBSSxDQUFDQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7RUFBQSxPQUFPO0lBQzFDQyxlQUFlLEVBQUVGLElBQUksQ0FBQ0csRUFBRSxDQUFDLENBQUMsQ0FBQ0MsZUFBZSxDQUFDLEVBQUUsQ0FBQztJQUM5Q0MscUJBQXFCLEVBQUVMLElBQUksQ0FBQ0csRUFBRSxDQUFDO01BQUEsT0FBTUgsSUFBSSxDQUFDRyxFQUFFLENBQUMsQ0FBQztJQUFBLEVBQUM7SUFDL0NHLG1CQUFtQixFQUFFTixJQUFJLENBQUNHLEVBQUUsQ0FBQyxDQUFDLENBQUNDLGVBQWUsQ0FBQztNQUFFRyxJQUFJLEVBQUUsQ0FBQztNQUFFQyxTQUFTLEVBQUU7SUFBRSxDQUFDO0VBQzFFLENBQUM7QUFBQSxDQUFDLENBQUM7QUFFSFIsSUFBSSxDQUFDQyxJQUFJLENBQUMsa0NBQWtDLEVBQUU7RUFBQSxPQUFPO0lBQ25EUSxZQUFZLEVBQUVULElBQUksQ0FBQ0csRUFBRSxDQUFDLENBQUM7SUFDdkJPLGlCQUFpQixFQUFFVixJQUFJLENBQUNHLEVBQUUsQ0FBQztFQUM3QixDQUFDO0FBQUEsQ0FBQyxDQUFDO0FBQ0hRLFFBQVEsQ0FBQyxVQUFVLEVBQUUsWUFBTTtFQUN6QixJQUFJQyxNQUFNO0VBQ1YsSUFBSUMsVUFBVTtFQUNkLElBQUlDLElBQUk7RUFDUixJQUFJQyxJQUFJO0VBQ1IsSUFBSUMsTUFBTTtFQUNWQyxVQUFVLENBQUMsWUFBTTtJQUNmdkIsT0FBTyxDQUFDLGNBQWMsQ0FBQztJQUN2QmtCLE1BQU0sR0FBR0gsMEJBQVksQ0FBQ1IsSUFBSSxDQUFDaUIsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0Q0wsVUFBVSxHQUFHLElBQUFNLGlCQUFhLEVBQUMsQ0FBQztJQUM1QkwsSUFBSSxHQUFHaEIsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDZmlCLElBQUksR0FBR2pCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRWZrQixNQUFNLEdBQUdKLE1BQU0sQ0FBQztNQUFFQyxVQUFVLEVBQVZBLFVBQVU7TUFBRUMsSUFBSSxFQUFKQSxJQUFJO01BQUVDLElBQUksRUFBSkE7SUFBSyxDQUFDLENBQUM7RUFDN0MsQ0FBQyxDQUFDO0VBQ0ZLLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxZQUFNO0lBQzdCQyxNQUFNLENBQUNULE1BQU0sQ0FBQyxDQUFDVSxXQUFXLENBQUMsQ0FBQztFQUM5QixDQUFDLENBQUM7RUFFRkYsRUFBRSxDQUFDLHVCQUF1QixFQUFFLFlBQU07SUFDaEMsSUFBQUcsV0FBQSxHQUEwQlYsVUFBVTtNQUE1QlcsTUFBTSxHQUFBRCxXQUFBLENBQU5DLE1BQU07TUFBRUMsS0FBSyxHQUFBRixXQUFBLENBQUxFLEtBQUs7SUFDckJKLE1BQU0sQ0FBQ25CLDhCQUFlLENBQUMsQ0FBQ3dCLG9CQUFvQixDQUFDRixNQUFNLEVBQUVDLEtBQUssRUFBRVgsSUFBSSxFQUFFQyxJQUFJLEVBQUVNLE1BQU0sQ0FBQ00sUUFBUSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUM7RUFDbEcsQ0FBQyxDQUFDO0VBQ0ZQLEVBQUUsQ0FBQyw2QkFBNkIsRUFBRSxZQUFNO0lBQ3RDQyxNQUFNLENBQUNoQixvQ0FBcUIsQ0FBQyxDQUFDcUIsb0JBQW9CLENBQUNaLElBQUksRUFBRUMsSUFBSSxDQUFDO0VBQ2hFLENBQUMsQ0FBQztFQUVGSyxFQUFFLENBQUMsb0JBQW9CLEVBQUUsWUFBTTtJQUM3QkMsTUFBTSxDQUFDTCxNQUFNLENBQUMsQ0FBQ1ksT0FBTyxDQUFDO01BQUVkLElBQUksRUFBSkEsSUFBSTtNQUFFQyxJQUFJLEVBQUpBLElBQUk7TUFBRWMsVUFBVSxFQUFFO0lBQUcsQ0FBQyxDQUFDO0VBQ3hELENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==