n8n-nodes-artsoft-cloud 0.0.0-stage → 2.0.2

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 (65) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +99 -2
  3. package/dist/credentials/ArtsoftCloudApi.credentials.d.ts +10 -0
  4. package/dist/credentials/ArtsoftCloudApi.credentials.js +56 -0
  5. package/dist/credentials/ArtsoftCloudApi.credentials.js.map +1 -0
  6. package/dist/nodes/ArtsoftCloud/ArtsoftCloud.node.d.ts +5 -0
  7. package/dist/nodes/ArtsoftCloud/ArtsoftCloud.node.js +160 -0
  8. package/dist/nodes/ArtsoftCloud/ArtsoftCloud.node.js.map +1 -0
  9. package/dist/nodes/ArtsoftCloud/ArtsoftCloud.node.json +14 -0
  10. package/dist/nodes/ArtsoftCloud/artsoft.png +0 -0
  11. package/dist/nodes/ArtsoftCloud/artsoft.svg +1 -0
  12. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/GenericFunctions.d.ts +18 -0
  13. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/GenericFunctions.js +66 -0
  14. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/GenericFunctions.js.map +1 -0
  15. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/curr-account/curr-account.properties.d.ts +8 -0
  16. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/curr-account/curr-account.properties.js +573 -0
  17. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/curr-account/curr-account.properties.js.map +1 -0
  18. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/curr-account/index.d.ts +8 -0
  19. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/curr-account/index.js +223 -0
  20. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/curr-account/index.js.map +1 -0
  21. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/customers/customers.properties.d.ts +8 -0
  22. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/customers/customers.properties.js +355 -0
  23. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/customers/customers.properties.js.map +1 -0
  24. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/customers/index.d.ts +6 -0
  25. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/customers/index.js +186 -0
  26. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/customers/index.js.map +1 -0
  27. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/document-lines/document-lines.properties.d.ts +8 -0
  28. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/document-lines/document-lines.properties.js +169 -0
  29. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/document-lines/document-lines.properties.js.map +1 -0
  30. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/document-lines/index.d.ts +6 -0
  31. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/document-lines/index.js +56 -0
  32. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/document-lines/index.js.map +1 -0
  33. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/documents/documents.properties.d.ts +8 -0
  34. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/documents/documents.properties.js +500 -0
  35. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/documents/documents.properties.js.map +1 -0
  36. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/documents/index.d.ts +9 -0
  37. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/documents/index.js +112 -0
  38. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/documents/index.js.map +1 -0
  39. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/products/index.d.ts +6 -0
  40. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/products/index.js +193 -0
  41. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/products/index.js.map +1 -0
  42. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/products/products.properties.d.ts +8 -0
  43. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/products/products.properties.js +331 -0
  44. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/products/products.properties.js.map +1 -0
  45. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/salespersons/index.d.ts +6 -0
  46. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/salespersons/index.js +146 -0
  47. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/salespersons/index.js.map +1 -0
  48. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/salespersons/salespersons.properties.d.ts +8 -0
  49. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/salespersons/salespersons.properties.js +272 -0
  50. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/salespersons/salespersons.properties.js.map +1 -0
  51. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/suppliers/index.d.ts +6 -0
  52. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/suppliers/index.js +174 -0
  53. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/suppliers/index.js.map +1 -0
  54. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/suppliers/suppliers.properties.d.ts +8 -0
  55. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/suppliers/suppliers.properties.js +324 -0
  56. package/dist/nodes/ArtsoftCloud/resolver/artsoft-cloud/suppliers/suppliers.properties.js.map +1 -0
  57. package/dist/nodes/ArtsoftCloud/resolver/handler.d.ts +3 -0
  58. package/dist/nodes/ArtsoftCloud/resolver/handler.js +53 -0
  59. package/dist/nodes/ArtsoftCloud/resolver/handler.js.map +1 -0
  60. package/dist/nodes/ArtsoftCloud/resolver/index.d.ts +6 -0
  61. package/dist/nodes/ArtsoftCloud/resolver/index.js +21 -0
  62. package/dist/nodes/ArtsoftCloud/resolver/index.js.map +1 -0
  63. package/dist/package.json +63 -0
  64. package/dist/tsconfig.tsbuildinfo +1 -0
  65. package/package.json +62 -5
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 ARTSOFT Business Software
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,100 @@
1
- # Temporary Holding Version
1
+ # n8n-nodes-artsoft-cloud
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ [n8n](https://n8n.io) community node for **ARTSOFT Cloud Invoice** (by ARTSOFT Business Software). It lets workflows list, read, create, update and delete customers, suppliers, products, salespersons, documents, document lines and current account entries through the ARTSOFT Cloud Invoice REST API.
4
+
5
+ - [Installation](#installation)
6
+ - [Prerequisites](#prerequisites)
7
+ - [Credentials](#credentials)
8
+ - [Operations](#operations)
9
+ - [Example workflow](#example-workflow)
10
+ - [Response format](#response-format)
11
+ - [Compatibility and limitations](#compatibility-and-limitations)
12
+ - [Resources](#resources)
13
+ - [Version history](#version-history)
14
+
15
+ ## Installation
16
+
17
+ Follow the [n8n community nodes installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) and install the package `n8n-nodes-artsoft-cloud`.
18
+
19
+ For a self-hosted instance you can also install it from the command line in your n8n user folder:
20
+
21
+ ```bash
22
+ npm install n8n-nodes-artsoft-cloud
23
+ ```
24
+
25
+ ## Prerequisites
26
+
27
+ - An ARTSOFT Cloud Invoice subscription. Your tax ID (NIF) identifies your instance (`https://{nif}.artsoft.cloud`).
28
+ - An ARTSOFT Cloud Invoice API key.
29
+
30
+ ## Credentials
31
+
32
+ Create an **ARTSOFT Cloud Invoice API** credential with:
33
+
34
+ | Field | Description |
35
+ |---|---|
36
+ | NIF | Tax ID of your ARTSOFT Cloud Invoice instance, used to build the URL, e.g. `123456789` |
37
+ | API Key | API key, sent in the `x-api-key` header |
38
+ | Development | Use the development environment instead of production. Leave off unless you work against a local ARTSOFT Cloud Invoice |
39
+
40
+ Generated base URLs:
41
+
42
+ | Environment | URL |
43
+ |---|---|
44
+ | Production | `https://{nif}.artsoft.cloud/api` |
45
+ | Development | `https://{nif}.local.artsoft.cloud:3000/api` (local use only; TLS certificate validation is skipped in this mode, so local CAs such as mkcert work without extra setup) |
46
+
47
+ The credential test calls `GET /customers/?$size=1`, so it also requires read access to customers.
48
+
49
+ ## Operations
50
+
51
+ | Resource | Operations |
52
+ |---|---|
53
+ | **Customer** | List, Get, Create, Update, Delete |
54
+ | **Supplier** | List, Get, Create, Update, Delete |
55
+ | **Product** | List, Get, Create, Update, Delete |
56
+ | **Salesperson** | List, Get, Create, Update, Delete |
57
+ | **Document** | List Invoices, List Invoices by SAFT Type, List Purchases, List Purchases by SAFT Type, Get, Create Header, Update, Delete |
58
+ | **Document Line** | List, Get, Create, Update, Delete |
59
+ | **Current Account** | List Customers, List Suppliers, Get, Create Debit, Create Credit, Update, Delete |
60
+
61
+ *List* operations accept the API paging and filtering parameters: `$search`, `$filter`, `$sort`, `$direction`, `$size`, `$cursor` and `$navigate`.
62
+
63
+ Detailed field reference per module (currently in Portuguese): [`docs/modules/`](docs/modules/).
64
+
65
+ ## Example workflow
66
+
67
+ Create a customer and then a document header for it:
68
+
69
+ 1. **ARTSOFT** node: *Customer → Create*, with the customer data. The response contains the new customer.
70
+ 2. **ARTSOFT** node: *Document → Create Header*, using an expression to pass the customer ID from step 1.
71
+ 3. **ARTSOFT** node: *Document Line → Create*, to add lines to the document.
72
+
73
+ Enable **Continue On Fail** on any step if you want the workflow to keep going when the API rejects an item.
74
+
75
+ ## Response format
76
+
77
+ The node returns the JSON answer of the ARTSOFT Cloud Invoice API as the item `json`. It sends one request per input item.
78
+
79
+ When the API answers with an error, the item fails with a `NodeApiError` that includes the API error code and message (or it is returned as an error item when *Continue On Fail* is on).
80
+
81
+ ## Compatibility and limitations
82
+
83
+ - Requires an n8n version that supports community nodes with `n8nNodesApiVersion` 1.
84
+ - The node is usable as an AI agent tool (`usableAsTool`).
85
+ - The UI labels are in English. Some field descriptions mirror ARTSOFT terminology (for example *Third Party*, *SAFT*, *MB References*).
86
+ - Parameter names and option values are kept stable between versions, so saved workflows keep working. Labels may change.
87
+
88
+ ## Resources
89
+
90
+ - [Source code and issues](https://github.com/ARTSOFT-TI/n8n-node-artsoft-cloud)
91
+ - [n8n community nodes documentation](https://docs.n8n.io/integrations/community-nodes/)
92
+ - [ARTSOFT Cloud Invoice manual](https://artsoft-cloud.eniston.com/)
93
+
94
+ ## Version history
95
+
96
+ See [CHANGELOG.md](CHANGELOG.md).
97
+
98
+ ## License
99
+
100
+ [MIT](LICENSE)
@@ -0,0 +1,10 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class ArtsoftCloudApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ icon: "file:../nodes/ArtsoftCloud/artsoft.svg";
6
+ documentationUrl: string;
7
+ properties: INodeProperties[];
8
+ authenticate: IAuthenticateGeneric;
9
+ test: ICredentialTestRequest;
10
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ArtsoftCloudApi = void 0;
4
+ const BASE_URL_EXPRESSION = "={{$credentials.development ? 'https://' + $credentials.nif + '.local.artsoft.cloud:3000/api' : 'https://' + $credentials.nif + '.artsoft.cloud/api'}}";
5
+ class ArtsoftCloudApi {
6
+ constructor() {
7
+ this.name = 'artsoftCloudApi';
8
+ this.displayName = 'ARTSOFT Cloud Invoice API';
9
+ this.icon = 'file:../nodes/ArtsoftCloud/artsoft.svg';
10
+ this.documentationUrl = 'https://artsoft-cloud.eniston.com/';
11
+ this.properties = [
12
+ {
13
+ displayName: 'NIF',
14
+ name: 'nif',
15
+ type: 'string',
16
+ default: '',
17
+ placeholder: '123456789',
18
+ required: true,
19
+ },
20
+ {
21
+ displayName: 'API Key',
22
+ name: 'apiKey',
23
+ type: 'string',
24
+ typeOptions: { password: true },
25
+ default: '',
26
+ required: true,
27
+ },
28
+ {
29
+ displayName: 'Development',
30
+ name: 'development',
31
+ type: 'boolean',
32
+ default: false,
33
+ description: 'Whether to use the development environment instead of production',
34
+ },
35
+ ];
36
+ this.authenticate = {
37
+ type: 'generic',
38
+ properties: {
39
+ headers: {
40
+ 'x-api-key': '={{$credentials.apiKey}}',
41
+ },
42
+ },
43
+ };
44
+ this.test = {
45
+ request: {
46
+ baseURL: BASE_URL_EXPRESSION,
47
+ url: '/customers/',
48
+ method: 'GET',
49
+ qs: { $size: 1 },
50
+ skipSslCertificateValidation: '={{$credentials.development}}',
51
+ },
52
+ };
53
+ }
54
+ }
55
+ exports.ArtsoftCloudApi = ArtsoftCloudApi;
56
+ //# sourceMappingURL=ArtsoftCloudApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArtsoftCloudApi.credentials.js","sourceRoot":"","sources":["../../credentials/ArtsoftCloudApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAM,mBAAmB,GACxB,wJAAwJ,CAAC;AAE1J,MAAa,eAAe;IAA5B;QACC,SAAI,GAAG,iBAAiB,CAAC;QACzB,gBAAW,GAAG,2BAA2B,CAAC;QAC1C,SAAI,GAAG,wCAAiD,CAAC;QACzD,qBAAgB,GAAG,oCAAoC,CAAC;QACxD,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,aAAa;gBAC1B,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,kEAAkE;aAC/E;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,WAAW,EAAE,0BAA0B;iBACvC;aACD;SACD,CAAC;QAIF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,mBAAmB;gBAC5B,GAAG,EAAE,aAAa;gBAClB,MAAM,EAAE,KAAK;gBACb,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;gBAChB,4BAA4B,EAAE,+BAA+B;aAC7D;SACD,CAAC;IACH,CAAC;CAAA;AAnDD,0CAmDC"}
@@ -0,0 +1,5 @@
1
+ import { INodeType, INodeTypeDescription, IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
2
+ export declare class ArtsoftCloud implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
5
+ }
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ArtsoftCloud = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const products_properties_1 = require("./resolver/artsoft-cloud/products/products.properties");
6
+ const customers_properties_1 = require("./resolver/artsoft-cloud/customers/customers.properties");
7
+ const suppliers_properties_1 = require("./resolver/artsoft-cloud/suppliers/suppliers.properties");
8
+ const salespersons_properties_1 = require("./resolver/artsoft-cloud/salespersons/salespersons.properties");
9
+ const documents_properties_1 = require("./resolver/artsoft-cloud/documents/documents.properties");
10
+ const document_lines_properties_1 = require("./resolver/artsoft-cloud/document-lines/document-lines.properties");
11
+ const curr_account_properties_1 = require("./resolver/artsoft-cloud/curr-account/curr-account.properties");
12
+ const resolver_1 = require("./resolver");
13
+ class ArtsoftCloud {
14
+ constructor() {
15
+ this.description = {
16
+ displayName: 'ARTSOFT',
17
+ name: 'artsoftCloud',
18
+ icon: { light: 'file:artsoft.svg', dark: 'file:artsoft.svg' },
19
+ group: ['transform'],
20
+ version: 1,
21
+ usableAsTool: true,
22
+ subtitle: '={{$parameter["resource"] + ": " + $parameter["operation"]}}',
23
+ description: 'Interact with the ARTSOFT Cloud Invoice API',
24
+ defaults: {
25
+ name: 'ARTSOFT',
26
+ },
27
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
28
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
29
+ credentials: [
30
+ {
31
+ name: 'artsoftCloudApi',
32
+ required: true,
33
+ },
34
+ ],
35
+ properties: [
36
+ {
37
+ displayName: 'Resource',
38
+ name: 'resource',
39
+ type: 'options',
40
+ noDataExpression: true,
41
+ options: [
42
+ { name: 'Cloud — Current Account', value: 'cloudCurrAccount' },
43
+ { name: 'Cloud — Customer', value: 'cloudCustomers' },
44
+ { name: 'Cloud — Document', value: 'cloudDocuments' },
45
+ { name: 'Cloud — Document Line', value: 'cloudDocumentLines' },
46
+ { name: 'Cloud — Product', value: 'cloudProducts' },
47
+ { name: 'Cloud — Salesperson', value: 'cloudSalespersons' },
48
+ { name: 'Cloud — Supplier', value: 'cloudSuppliers' },
49
+ ],
50
+ default: 'cloudCustomers',
51
+ },
52
+ {
53
+ displayName: 'Operation',
54
+ name: 'operation',
55
+ type: 'options',
56
+ noDataExpression: true,
57
+ displayOptions: { show: { resource: ['cloudCustomers'] } },
58
+ options: customers_properties_1.cloudCustomerOperations,
59
+ default: 'cloudListCustomers',
60
+ },
61
+ ...customers_properties_1.cloudCustomerProperties,
62
+ {
63
+ displayName: 'Operation',
64
+ name: 'operation',
65
+ type: 'options',
66
+ noDataExpression: true,
67
+ displayOptions: { show: { resource: ['cloudSuppliers'] } },
68
+ options: suppliers_properties_1.cloudSupplierOperations,
69
+ default: 'cloudListSuppliers',
70
+ },
71
+ ...suppliers_properties_1.cloudSupplierProperties,
72
+ {
73
+ displayName: 'Operation',
74
+ name: 'operation',
75
+ type: 'options',
76
+ noDataExpression: true,
77
+ displayOptions: { show: { resource: ['cloudProducts'] } },
78
+ options: products_properties_1.cloudProductOperations,
79
+ default: 'cloudListProducts',
80
+ },
81
+ ...products_properties_1.cloudProductProperties,
82
+ {
83
+ displayName: 'Operation',
84
+ name: 'operation',
85
+ type: 'options',
86
+ noDataExpression: true,
87
+ displayOptions: { show: { resource: ['cloudDocuments'] } },
88
+ options: documents_properties_1.cloudDocumentOperations,
89
+ default: 'cloudListBillings',
90
+ },
91
+ ...documents_properties_1.cloudDocumentProperties,
92
+ {
93
+ displayName: 'Operation',
94
+ name: 'operation',
95
+ type: 'options',
96
+ noDataExpression: true,
97
+ displayOptions: { show: { resource: ['cloudDocumentLines'] } },
98
+ options: document_lines_properties_1.cloudDocumentLineOperations,
99
+ default: 'cloudListDocumentLines',
100
+ },
101
+ ...document_lines_properties_1.cloudDocumentLineProperties,
102
+ {
103
+ displayName: 'Operation',
104
+ name: 'operation',
105
+ type: 'options',
106
+ noDataExpression: true,
107
+ displayOptions: { show: { resource: ['cloudSalespersons'] } },
108
+ options: salespersons_properties_1.cloudSalespersonOperations,
109
+ default: 'cloudListSalespersons',
110
+ },
111
+ ...salespersons_properties_1.cloudSalespersonProperties,
112
+ {
113
+ displayName: 'Operation',
114
+ name: 'operation',
115
+ type: 'options',
116
+ noDataExpression: true,
117
+ displayOptions: { show: { resource: ['cloudCurrAccount'] } },
118
+ options: curr_account_properties_1.cloudCurrAccountOperations,
119
+ default: 'cloudListCustomerAccounts',
120
+ },
121
+ ...curr_account_properties_1.cloudCurrAccountProperties,
122
+ ],
123
+ };
124
+ }
125
+ async execute() {
126
+ const items = this.getInputData();
127
+ const returnData = [];
128
+ const artResolver = new resolver_1.ArtResolver(this);
129
+ for (let i = 0; i < items.length; i++) {
130
+ try {
131
+ const operation = this.getNodeParameter('operation', i);
132
+ const parsed = await artResolver.resolve(operation, i);
133
+ const root = parsed['message'] ||
134
+ parsed['document'] ||
135
+ parsed['Entity'] ||
136
+ {};
137
+ const err = root['@_err'];
138
+ if (err !== undefined && err !== null && err !== '') {
139
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), { message: `ARTSOFT error: ${err}` }, { itemIndex: i });
140
+ }
141
+ returnData.push({ json: parsed, pairedItem: i });
142
+ }
143
+ catch (error) {
144
+ if (this.continueOnFail()) {
145
+ returnData.push({
146
+ json: { error: error.message },
147
+ pairedItem: i,
148
+ });
149
+ continue;
150
+ }
151
+ throw error instanceof n8n_workflow_1.NodeApiError
152
+ ? error
153
+ : new n8n_workflow_1.NodeApiError(this.getNode(), error, { itemIndex: i });
154
+ }
155
+ }
156
+ return [returnData];
157
+ }
158
+ }
159
+ exports.ArtsoftCloud = ArtsoftCloud;
160
+ //# sourceMappingURL=ArtsoftCloud.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArtsoftCloud.node.js","sourceRoot":"","sources":["../../../nodes/ArtsoftCloud/ArtsoftCloud.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ {
2
+ "node": "n8n-nodes-artsoft-cloud.artsoftCloud",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": ["Miscellaneous"],
6
+ "resources": {
7
+ "credentialDocumentation": [
8
+ { "url": "https://artsoft-cloud.eniston.com/" }
9
+ ],
10
+ "primaryDocumentation": [
11
+ { "url": "https://github.com/ARTSOFT-TI/n8n-node-artsoft-cloud#readme" }
12
+ ]
13
+ }
14
+ }
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="359" height="432" viewBox="0 0 359 432"><image width="359" height="432" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWcAAAGwCAYAAAB1g6QaAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAaFpJREFUeJztnQmYHWWZ/WURVHaQRbaw7zsIKEQCaCCQDAiCsgmigWSC4IKSmEwirrRiIhEYhlE0mTAus6AYBRGQzQWXGf84OuroKDqIiiAiArKk/+dU3VP11Xer7tLdt+t29znP8z6319v31q369XvP977v97znWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlWZZlBVpywu1rLp5x2/q43QQxafH027bH5/vg9tWXH3frq3F7Im5PvHzardnth475ahivRkz/0NSv7jrwqlu2R2yF2ACxHmL1up+fZVlWX+uKk762BmKrj554+/6IoxFvQAwAyJ8CjG/H7XcQjwDGj+PzJ3D7rAJAfhZgTgMfA8bZLaDM22dw+xfA+HHErxB3Im5B/ANiPuIMxOGIPRCb130sLMuyatPSk782CXE0gHwBYiniy4hfAsiDCsA4CwC5GNPzAIjTOO7WQYA4+Zi3YQC6SQDS2ccl8VfETxCfRlyGOB9xGGKjuo+XZVlWT/SxU+7YHPEaAHkJ4iuIXyBWAciDYZTBmTAuAHp6CZyPuzWDdAxmArkNlFvFk4j7EDci3o84hpZI3cfTsixrSLry1Ds2RBwEIL8bt3fj9v8QqwDkwTA6gXNT9hzD+bgSOE9thvMwAB3GU4hfIr6ImNPwsV9Q9/G2LMuq1FWvu3NjgPiVuH0fbn+CGASQC9EpmFtaG2Vg7iBzHiE4x/E04muIv0XsX/drYFmWlQkwPgpxGeI/CWTcDvJWcA4/JpRDSLcDdJO10SprPi73nUMwd+A1j1Q8h1iJeCdi37pfF8uyJqCuPu2uDRHvAojvQjxNIIdQLos4cx6SrSEwz6jOnkfYcx5q/KFhfZyJWLPu18uyrHGsq0+/a3UA+SDEVYjfIAYF5So4x5lzbG8MGc4NKGdwntazBcGRCFaAXIzYuu7X0LKscSaAeSriswDyM4SyogzOsa0RQzmGcwjpVnBu6TtPq8icpxZL6WqORwfSio/D6n49Lcsa4wKQX4+4ETEYQrkKznH23GpBsNvMuSp7Dv3m0uy5/sy5LD6FeEXdr69lWWNM15x594kA8ncTKIfRAs5VPrOsjXYVG60qNUqbUVqV0kXldH0A47J4AvFZxCF1v96WZfW5AOUpiK8hnm0H5k4956GW05XCuc1iYJ96zu2CreXXIibV/fpbltVnAoz3RXyCEMZtFt1kzu2y5xjQIZT1ebe2RqcLgn0A4E6CnvQixKZ1nw+WZdWsa866e23EewDiR0th3EXm3KqErtWCYBWcO6nYaLsgODYy5zh+gDi37nPDGufCRbHWB195056IF9f9WKyiAOWTED8KM+VuAd2trdHK0ugYzm26BMdw5hwH/eh96j5PrHGm1+71zq3mHLz0FFwYd+AEewJw/jUulLe9+ZArd6n7sU10XXv2PdsgrgSYVyFSKJ/ViAacKyE9BFuj3WKgPu9qQbATOE8d83BmcMwpZ3isUfd5Y41xAcKHzTn4ikVn7DP//rP2XTh4yeHLkovjg6+8Obm9+LDrnjhn//dcd+4B7z++7sc6EXXtOff8DcD8AGKQUYBzBOZeeM7dlNJVTqarauEef5lzGF90Fm11rUVT/nVNXADnvv/olV8AhJ96z1FfGHzTgZcNnrHPgkGAeHDBEZ/JLpD3H/2lwfMPunzwDfu/dxCAvuOtL/uHN+MC8rzcHgsgXh9xFeA8WABzkDF3ZG208ZxjSMeldIJyVZdgW1tjepvMOZ6tMTY956pgS/hb6j6XrDGgt7zsmh1O3uMtlwLEP1k45V8y+PJ2/is+PXjWvosA6PmDbzzgA4PvPerG7GL5uyM+m8CZMfuli/E7K+/H16/BBbQ7vuetg0ZYgO8UwPhHCZg7hPNIVGuEYK6ardEKzsO2NeoZfjQa8c+Izeo+r6w+E06KFwKmRyNDXn7J4csfP23vuYOn7Pn2BLTvPvLfk5Png6+8KbkQkBUPnrb3vATQs1+6JLU2GhcMwJ7Am7930aFXJz+PC+sZwPlfAfsZ5x304Y3rfq7jQQDvmxFPC8ghnAuAHgKYh7sg2C2c285zblOtMY7gzGBFhzsMrec976TdL9oZEH0HTvY7mQUD0MlJ8vaXf3yQgH7tXu9MMmR9nYBmMDOmvcEghPk9XkD8Hu2Ns/e7NLE+6E3zQiPA33zIlYMzDxz4TwD67bjP3ep+7mNRAO4LEdcJvhmYyzLnEiCP9IJgLwYf9flUutEI7tLy1rrPNasmAbZHnXvA+5cDzv/HTBfZcgJWQpgWBmHKLJgZMgNATSwMnUD0nwlt/i5B/I7DPpnu84YLifYG7juBM3+G1ggvwkuPvCHxrAFoxoP4m9fj60fXfSzGigDWPQHd7xTAXALnVplzJwuC7YYedVPn3FNbY3xaG2Fwo9q16j7vrFEQ4Ls5APsGgPWbgPAT8o9P3uMtCYAvPuy65KRI4XxTckvbQoBmRkxAq0KDv0/7QjYGP9dFROuDcCakmWXz/njxve3l/5h8jYBu2B5PIu6Zc/AVZ+Pn7LdVCEA9BvFQE5i7yJw7tTbaDT0a6cFHQ86c+3e2xkjG5xHb1H3+WT3SCbtdcChAuejdR/777wlWAjaF7E1Jlku40l8mgAlP/oyyZ2bSBCktDmXQ/J6yFtofLK3jfTBLpj/Niymq3khAzK/LEmEGzZ9nxs0LkfYHfv43+GfwLnx/v7qPWT8JMH0D4i+FuuUyQLfInFvaGjXP1hiO59wH8ByNoA/tHVjGiy498oYXAMBnA7Y3nrrXOwZfvfuFCUTnTV4xWAT0zYOLpvxrAtfX7Pm2Qf4s7Qx+PfWXb07sCIKUC4DpImCaCScXDC4Qesm8b9obhC7vlxcd7Qz+HoOATkCMi5AZNn+OoCf4ef/8O8zSGYD0k8jiP437fl3dx7FuAZ5zs4z3rOaIodwKzpWZ8zBqnKu2qRqtao0JBOg/D3he9NgWgLgzstYPIYO9j9BjBqvFvRN2m5PAl5YDv84QoAlSwpWA5iLgnIOvyLJnnhz0mJkFh4BmVq1smKDl7zOYMfNrvOgIZIKZIf+ZFx4fA8HM3yPc+TcIbX6N982/z8eGjPpbuL8Fcw5eukXdx3a0BXAOFKDaKmsuy5w7qdQYZildO1ujrEMwbkLJoDwMz3mCBKfcvb7u89LqQsh0N5yx66wpgOrnAcM/puBdmVgMhCpByQU/QpWApsdMAArMuqXFQbimFsfcJIvl7/PE4EXAphP6yKzQYKbM7/Nv8eLh3yJ8+X0GYKoyuuRjgp3fF7hV1cEgoLWgSFDzc36dHjizev4+4iHEdRcdevV+eC7jest6wHEtAPOjcbZblj0PxXPu1WyNVpDuqENwiJnzBAM0Y3bd56jVRgDXboDn2wGr/yBMZ+w6OwMvoUZwMnsmYPkxs1ZmsCftflGSIfNjApkvOGGuDJpwZfbM+yRQeR+6APjzMaD5e7yYtEDI+83qnHERyX+Wz6z65zBTJpD5mPn3+XHD3hicN/n6BNzMpAnpCw+9iv9obsHHrwfIx13NNED4IsDxy6VgroLz2e3h3DZ7HuE65+HuhNLRTOeJCWbFeXWfq1aJ8MLMADD/Ednq71LrYmUCNoLuhN0uAKRnJVkyF9lkXaSAXpl8TOgxOw6rNMJFQJXJCdCEMaGsTDit8lgYAHpxcsJoYY8/Tzjzlv41v87HpzI63jcXHlXVwa/xMfF++Lf5eNLPlySZNDN23grQ/F3eLz7+T8R78b29635NRkKA4LqIWxJABuAccuZc4jkPZWRoqz0EqzznrqfSDcXWmNhwZnj8aD8I4Nr4mJ3OeRtg+A1kjqsIMYKWcBagGYQWfWUCWlk0LQdBWmVyzEAJX2bRBDWhF1oY/FnCNK3SmJvYHbRGku/jwuDCIr/GhUQGwakMmvDk95RBJ40oM25Lfl9ldAQ0s+K0emNJtjjIrJqPl49HC4S8PwJbcGY04Kyv0fK4AXE8Pn9+3a/VUATIrQ34rSQAY3hWwbmqWmM4Nc61Z84tdkOx51waM+s+dyekkG2ugTgQ8L0SGeZDhO60nd+Y+MaEGTPY0F8WfAk9wpE/x2B2S7hpETC1MG5K7AJmv4Q475swls3BIKz5d9SqzfshFJMMGhdMCGjehouEhL+aUAhk/iwvMMKXn/N++feYUfNvplZGam8Q5gQ5s2cBmYuavE/COoR0FM/ie9/B7Szcbl/369eNALwrEzALkCGc4/GfncK5wnfuha0x7G2qWtkaHWxTNcEhbQ96tIQTbzNA60zEjYQXg6AkxAg7esvH7zIzy3iVGYdZNL9G2NFbptXBW8KO95UvAt6UDSsinBmEMEGYnPANv5gwZPactmvPT/4m7yMENEFMSBOuyQwO/K4WAglhApn/TMI6Z3nLfMz85xFWahDO/EfAz2Vv0AJJwXxFBOgrgtvs40fwex9ETKn79WwngG2xoJeB+bTWi4EdNaGU1Dl3Uq1RZWmU2RqtMueqXVA6bER5rsVOKKucNTfFq+s+j8e1jt353D1fu9c7PwQI/VCVFrxVyDdmZsksltaF/GWCTN/PIf2l7GdpXzAIWNoEsjfkMROCtDkI6LSULrU5eBGolVseM2/VLcgLSZm6KjXUqMKThmAlmAljgpr/DOR7y8ogePl1/k15z/waM/s8U85hnH5taQTkNPTzskTw8Src30rc75vqfn3LBID9XejfhpDsakGwrM65ZJ5zr/cP7ATOAZR/jrgT8QmcR+8HoGcizsXHUxGvAJSnZDHt1ik4FxWvQJzEcbY4x96G+DDinxDfRDzQB6CsIx5GTKn7fB5XWjjlX9ZFNvuaBUd85lZkng8xIwakk6xY0FLDCLPeMEvm23zClL+T2heLEhjLj1Z2zN8j9Jg9sxmFt4Qi75vf54vL+6TlQAtDgE7tiOuznSfybsAU0GHdMrNiwZlBGKtKhBBWnTO/zuegqgw+Lj4Wwp9/i2AWoPn8Um/5ioqMeWkTmGM46/4a8UP8zQ/g721b9+tOAV4zQ7gpQ+1qQfCc7myNoVgaVXXOXXjOzwDKjyBuR7wfcSqAvA9iC8Q6I3U8cR6vh9gasR/iNYj3Ir7WANezfQDQXgfroN1JOFwhw90TgLoI8d8ElewLApBgJKCP2emc5GNCkz9D0Cmb5i1D5WiE7vG7nJf4x+li24psiJGqNJgxp7XOqc1BwBJ+msnMDDnNtBdlgNbP8MXnW0t+n1myPGhmw4QqAa06aFVqEL58jPxHwo8FZ4KSz4eZsRpRGHx8fP6yMhgEdLg42Azq5oy5DM76G/x7eAyP47Fcj3gFHusL63j9AaxjVOGgEAgr4dyqjK6Lec6jVOf8RzzHexFXIo4DkDdBjPpMb5y3qyM2RMxA/D3iW4hH+gCkvYr/Qmw+2sd5XGjGrrNOAjz+AUB8muDSgpgATZARvqmNMH9QmTQ9X0KHPxtDmvAl6MJFQMKVYFJ2LFDzbxBShLNCfrAyZDWUpHCenw094mMLs2TN1GAQqppIp4H7sjP03FRKx1s+Nn6dz1Of83Hxc/4zyuG6JMuQi18rB3RzLI7BnNVbNx7nHXguF+I5jNoJDVjtiXg43D2kkDmXZcztfOey1u2S/QOHU63RznNu3H4ZsRDP76DROp7dCvA6ALEA8ZU+gGkv4m7EenUf5zEhgGlrAG0hYPc1Zrdc0FOLNEEnIKsJI7Uu0tplgoqAZJUGI4XukgSCyp7lL8vqIMiZSRPSgrp+hi8eYU2YMiumfZJm0fOT300aThoLgbRV0nbtBVm9MxfqmEFryypVahDUasPWTA1ZGSqb00wNQZrPg1/n31W1hrLlMouiNYgXN2XL6dcWZ2BWCV8470NZPh7/fyOuwfM9sJfnArLHjRHfp/cawlnQ68bWaDv4qNNKjSFmzgGk7yeQEUf18tj1QjhfJyMWIn7RB1Adyfh43ce2bwXIrQ1IHQyIXot4kMAiUNNdROYmGXFaFndBAitCT1UZBGTuL69MYEdIE+iCtHxjWgkqoVN2zL/D7xG8/EfAv0GI8m/zvvUCyvcl8PmzvH8NyOf3ZWMQvCqnI6gJzxTyNyeg5H0rk1Y5nTLlENB8joSxrAxVZ6iGWTBVxUZ+W4RzVYYcR9geXpE1Z1UmuZc+/1G8PnfgWPwNjvEGI31eAMrLtTBWBuewlK5sYFFXs5x7W0q3Crffxu0ZiDH/NppWAOJ1iDsRT/cBXEci+nIRvDYhY10XQDsN4LqNICQoQ9tCGTKBRDAwu6W3TFgzA+Xb+tS6WDko20Mt2LwPwokQ5c8zCydY0zbnFVn9sn6XMOTfSLPo1Gfm3+DfJtAJX8Kc0FYWnXYFzsuybVoVyoRTQKfldISdtq9Ks/sFhcVA/tPg76lKQ34zM3Z1AOaAXtIom1sSZLzNGXERzosLH+expADnMGsWmAVnPd50T8QFmYXDf548rifv8ZYf4dhdhGO350icG0tOuP0iVikQzKpmKM2cq5pQyqbSlWTNVYOPKq2NDsEcfHw3HvO4nRiIc3raQDpHeaxD+lFET98JjikhU3235h7TB5b1EHrLsi4ISEJVWS4hTX+ZYFAzRtgJqN/hfdFC4N9ROR0XApWBq1JDC4EpfOcnpXT8OUKaP5t26KX7//Ex8XHwb/N+48VAbTOVltMtyvxmtX7zuWoxUH4zv8b71Vxn3j+/zsfDxT95wWrVJmz1cRWgy7+XwzgGs5pdBGdZGQxN0VP1SQrndGsuvh48Xvynhn+gj+EYv3E458XiGbcdphIylZfxNvabhwznLmZrdFtOF2TMtyDOGqlrpd+F8/5oxGf7ALLDiR8iJtxExyYBZJsAAH9gNkzI8pYXOmFBEArKZf4yM83UL56X2BYEtewIApI/K9CHDSTyhfmzzKYJXkKSGapK2fgipdPd0mYS/gzBw48Jr6RcrlGtQaDyb6ptm49HZXdp2/b1jdGhOaQJST4mVY4I0nonwOfGn2HGqixWZXKCcwjWMvAWKzGaLYzYaxaYQ0sjzJpzMCtrXlDImnmM+I9Ms0rwLuWPeF3WH8p5ATBvivgfZc1lmXNVKV0TZDsYfFTlOQ+jfftHiNPx+NYY6WtmLGggrfT4Rh+Adqjx6bqPYe0CoM4gbAkpgTbt5jsvCTV3MFtWFqyaX1kXhKBmU/B3p+50dvK7zOQIIC0ghmVyBC//nkaCqqSOEOJ98fusxCB85fk23rZnw4/4uBIbY9qtyeNKt6fKAU0I82+oUoQQ5N9T5qlFPz4XwjGcrUGgqqFEcGakJXKLS+DcbFFU2xjNPrOAXOY1a2/DOGsWmJU187jIDkrhnFTNDGmWLsD8OY3G7AbOQ63WaGdrdAHnRxGXITYc6WtlrAmAW2cgbXj5XR/Adihxdt3HsFYBrF8nXFWzTPCGtgWhqYyagCDsCLS4yUSgpq1BoBAU/D0CghkvQUPoEoTasUQt2wSexocSLvxdZof8eX4/zZDTuRoEJzNEzW8mbJmJy4+WZx22bqd1zSsyr1rVGvJv+Zz0LkBeM4FIaGpYUVjbXJ45V0X1AmDQaNLkM4dgltfcbGcUs2YeZx6//J/rTL6b+Xq358Ti6bedng30CQAtOHfVhNLhbI0RGrZ/C2L/XlwnY1mA3PYDY9Pq+D1ih7qPXy0CTCcLyqrMkL8sz5mAJCh48dO2YBCehIVGY8pfVuUGoctsObUkUo+ZtgehQbAQdnnFRj6TmV9nFkjAqHVb2W+yz1+yGLgyeUz8euo1p3Di48l3S1mZ/G299W9UNCSA5P3weaqkTpu9EpCajaFaZ1kafJ7qCgzBXAbo5sXB5sW/GMq67zIwN2fNi7KdXXismrPmObI0kn+Or9rxrGeP3uGMl3d6Tlx+3K2bAcy/zgbJIwTmTkrpOs6cO6zWqMyei2D+Mx7DW3t5rYwHAXSnDoy98jvWda9Z97EbdQG4n5WNQFgqC5a/LNgymC2zwoFw0IVP4BKgBIiy4rzJJIVkaHmoI5AZHYHK36PPrP34+GII0oSu/FNBmsBNMumpX03+hmwRQSovq1ue/H3VKIeAlrct71sLbcqY1VAiUAqaYcYcA7oqI46rMOLfibsAQ59ZYC5mzUWvWXNFyrJmrQG8coczB4/a/rSO/TvA+XOsdlHmHGbNirhDsDD8aIgLgmWAbuk554C+G3FAL6+T8aSBtFX8n/sAut3EW+o+bqMqQG97ZFkPK8siBLXjNC2AtPU6HUgkf1nZMb9PuKQzMs7LyuqYwan0jL+jRUA1mxCa/L7sEvnMhA5BqwlwhK8WA1WxQfDw95QB8/t84TTJjl9XJq0FQf5D4d/l48l3QkkXBNNMeVk2WY7fFxDlFZfBsxWgw9swg64Cc3j/qtCoyppVaRJWaKjWW8enJGsmmAeP3P51vz1iu1PazuYAlF+jkZchnFWt0dJzHso856rNXSuy5xI4X4N40WhcL+NNuHbmI57pA/B2Eg8htqr7mI2aALWL5bNqk9TcX04rLggWwkugldURNp4wKyZE+PvM1vj7zN4ISP0+AapdS1Tlwe8RMmnDyZwELirHo7es2RmpJ51aFBqyL7+ZX+d98QWUVaGaZ0GMACT087+5ILMIZM0Q3iqdC4cdxdUT2v0k9p1b2RztGk3KOgHLs+aFTVmzOiVVPicwK2sWnAHmwcO2PbFl9nH5tFs3RPwiA/P0ZlujynOOm1DirLeTGudW+wiWxDOIWaN1rYxX4bqZjri/D+DbSUyM6g3AdgPA7D5lxAQh4casmVDSYh6rLlLQzs320ePPha3bKpMT6NVAIlATvAQKocTMOSyV433QJ+bvhNkfPyaQCE7+DXrNavNWhiw4qbQuHeKfjiYl2FStIX+W98VMWv9M1CHIv6MyOcJegAxbtnUbLwhWQTrOnuPvl1kZqmfuxM4Is+ai1zw7O+587Y7e4QyA+dTByZNOGnz5tid869BtpldOU8Mx/hiPswbGh4uBVQuCBb/5tIqsuaxDsMttqiJI/xwxZfSulvEtXIc7DKRjS+uGb7t4DnFM3cer5wJIXx1WWcT+MkGnhos0o07btnlLEBAWof2ResbpnGVVeygzJjTUvp1aGKl3rIoPWhiEqipECB15p2ldc2pRaAcV/i0CndAKIRX+HB8Tf4aQk9/M7+N3foC/cxke4z14fM8qU5alIZjKWgjhHAK1KmNuFyHUW5XNdVuhkWbNpV6zsuZBgHnwpVsdO7XsfMA7lAP4LqWQNUfVGq2aUJLsuUNbo6M652pb417EjqN9vYx3DaRjSz/dBwBuF/8xMN6HIwF+N6iEjBYCgaaFPHnLyo6ZKcuXlVesrsC8+uKKJGPV9DkeSJXJ0TIgdNI9AmdnW1apLVvNKtqolfch+yFdEEx/VhUZWkDkY+VjJ8i0I4pK69KZGMv0T+JRwO0r+IdyCu5zbT5/gGhN/DM5Hv9gvgwI/kFAFJBDMLfLnMv8507hLCiHzSZlWbPeAZTVNadwnpPBOcyaj9z+dciaT2bWPHjI1scNHrTl1BVl5wMy5i8kcA4z5wDO4bZNceY8pHnO7fYQLN8N5S7EZqN7pUws4br9eB8AuF2M38VBZKz74qJ+TmM96VOqcoJVEoSaOgDDrkAtDBKOBIuy4hzUs7IxncxaaXOE+/8RuqojJmz58xoVStgQUJrRwReBWTU/189rz0BNo+Nj5T8V/hztknBcaOPt/3/hZ5YA4oe0Oh74u/vguX8E8d+xpRFG2IgSV290CuYqOyOuaS7vBszbtOMKjXwhcGbmNUeWxuDBW00b3P8lR/913y2O2DV8/njncrzAnG2vVFKt0XbwUYcjQ7Nh+x2U0gX3+WXcbtrbK8PCdbca4hN9AOBWwV1jXlz3seqJAL+P0lJQG7I6AlVxoYU5gkINJ+G2U5oml1ZfLEsgycxO9gXvR8Bn9ieIqp45tTCuz2ZehG/LeUsIqeJDYCd8aTfwsTJjVKcgQUXIaR5GoyrjJtzHWYiuLmbA8SX4u2fj9tYwkw0hGldsxBlx1dfKwBy3Z4dgLlZoLGyyM8q7AfMKDVoazJpDSwNZ8+C+W0wZ3HvzyZfpOQOqzwecfxDDucrWKCul67YJpW0pXbOVcR0+HvWB9xNZgN+yPoBwq/hY3cdoxAW4boRM+LdaBNQEOr79V9UGYRl6zIQmgUCYMCMmWDWXOe30uzkrryOIVfrG31UbN7M8zbMIJ9FpiBIBprpm/j2Gdj3R/GS1idPr5uNUXXMDVr/H47sSgD4IAFxrOMcIwHwB4hDEckDzD7G1EdsbVfXPZT9TNW0u9pmLU+e0CJhXaEQDjjKvOSyfU9b8sm1mJFnzgVu+KoHz7pse+sudNzkg2UkFGfDZ2qygU8+5651QurU1ipnzP4/MmW91qz63OB5D7Fz3MRpRAa5vljes9mv5zLIwaEcwE02z6rlZ40hYJqfNUlNYr8jmLRO4alghqAmZuMSOABZ0ZaEI1Mx8CSlCSJaH/GYCmWAOF/zwtXvxGOfh53viRQKcWwCkCxH/UWZplEG36nvdgjn3mttXaChrLimfy7Lm/V9yNLPmwe032os+9Cl8fsiUv1+Ac4Xn3A7OnVZrNJXStc6cv47YuBevq9WZ+tziWFz38RkxIYtdE9ns13lR80LXcB8u9hHI4Q4loYXB7xGKaXna3CRbEwh4S1AQnLQdCExZGII1P6eFQRBpkL5qm9NdT9JRpfKplYnLn9ailzJGwPpPANw1gMaobqsOoJ6Bv/sZPNanYwhXgTmemVFVmaGKEXnNIZhlaYRec3OrdtFrThcCTwoXAgHnowb33Ozlg7u9+ODBLdbdbjn+xqkEa6dwDocf9WK2RpQ534uwx9wHwnW8sg9AXBZ/GBgvczeQyR4LIDyXAnJWNpSIF7imvKmWWT5zOB5UO2Iz2yU41XiihcVwEl3awLI4G1wkr5nw5dcE6rzSYFYCfcKf90s/XAP7+fcatsd9iDfj9/aq8zgCtgcCsu/D7QNhRlyVJbcCc7y7SXPWPD+bsheCOW7V1j/LvHwutzReutWxWda8x2YvG9xx4/0GJ224+x9wTB8lXAnnzG9u4znHtc5l85zbztY4py2cf47fmTjdYH0uAHADxD19AOPxmz0jC76OwGMmS+ARwmE2q5kX2i+QXw+za/4ef18lb2pc4fe0sJh6zecloFanoe5HlkRYqseFPtknaQXH7Mz6YKYISD2Mv3Ej/tbxAFVfjYDE494cwD0ft9/E7VNlC36dZM3hzt9VO5yEpXNVTSfFrPnkBMxh1kw4777poYNbb7BL8jH/8RK8ypqzRcEKOFd1CZbN1mhbqVEN57/idw6v+7W1igIEdxroz7GjTyK2q/v4DEvIurYDVB/WLiPhnn8CNuFJSMhnVnadLgzmMzBkXxCsaVb9pWz8JzNjWhihb6wMXeNACR3ZGPKrVZGRluglW0/9ELBeit/fpe5j14nwfKYiPovH/0BZyV1V2VzsNZe1aZfVNStr1rS/Mq9ZWbMWAmlp7Pril9LSSH6egOUJrsxZC4JxKV1crdH1gmCrxcBmz/nUul9Lq1w4V07qAxiXxXvrPjbDEiA3lxd9Oiw+95nDZpNwxxJ+j/CknUBghFYIL2wCIfWu5zXqo69IFvOUWfOg8T61CSrBo/tQdqwOQN4//06jdO7fcfsG/OxGdR+zoQjHdxcuIALI364qmasqmysHc/MMjXiYPl+LsOmEcKbXnFsaR2WWxvYb7Z3YGvxHTPgmcA6z5rDOuaR9u6yFu5NqjdhTroDz5XW/flZr4XxZ1AcwjoOzQTap+9gMSRceetULcWH/r0rj0gl0c7Ipb2kt8hWJF6xKiDwjvjkBtio4lBWn3X7ZThuN2ua8/E2ZsTr/VLLH+0h3I1kQth7/Fvd1OTLqg+o+ViMlAHkDAPkkHIcb8fFzMZgFZ0G5vOEkz5pDr7msVbtYPndyU/ncXpsfniwEbrPBrgmwCWOd3GW2Rpw5xyNDY8+500qNFqV0X0JMyO2kxpoG0k1k6wZyHBfWfVyGJIDxVEKXYCSECQVCOVzp1/hOdeuFwKbdoLkb4e4lqo3m/RHW2g9QfnM+GyMdTKSZ0Y1dV5665PBl3wWIzsPPjM3/eh0Iz3tNwHl/QPlaxK9azWnOG06aR4I2dwPmcObxrpijkSwE7rvFEUnWvMsmByZ+M/8Ggav52Z0sCLaaStdNnXPTJLoUzo8gxlfN6jgWzpltEQ/2AZDDuLfu4zIkAaa3ya5QLbNmZjC7pYdMSBAEBEDoY2oOBkHBn+HPspIirJXW4qBK7gggwoWZXt4iPlsZ328Ao2V4PKUDeMazcFxeDChfDCjf0ewzL2qyNIIGm6YZGrHXHLdqcyGQWTMtDWbNXAjcceN9E0DzdSOAs8w59Jxb2Bqd7oRSuslr68z5zLpfG6s74bx5fR8AOQwuDB5Z93HpSucfdPl+AOVfaSUQnIRquJu2oC3rgdkwgc2sWXXNqggQDFSFkVZTLMy2ccobSm7OdrVO4b+EgLkPv3MB7mu3uo9JPwhwPglg/nuA+fEYzqHXXD1DIx9wFGfNYfmcFgJpaWy1/s7Ja6i65jhzrrI1ynZCiYcftWxCabUYeM49n6r7tbCGJpw7n+kDKIdxbd3HpCsBrtemM5lnFYbay2tWlx8tD2ZUajzR7iWyL7hYx44/AjvfxWRmYYFQ3XyajcEMOx1+tHIVAOTyqBIBymc1N5zMrZg8V+4151lzOn0u7wjMFwJ33uSAxNKgDUXQ8mQO4Ry2b1d5zkPe4LV6J5SfA84b1P0aWEMTzp1tEI/2AZQVv0a8pO7j0pEA200vOXz5L3lBpvvozc9GcIZvjeU5h52DYWu2hutr41bVN9NDDhf3NPiI/wzSIUrn6R/BbXUfi34WwPyduHQubjqJuwHLZjaXzdGQpbHlejsmX+c/XGbHAnMC56hao2rYfifbVDXtgNJ6QfCcuo+9NTzh/Hl7H0A5jNPrPiYdCTCdHbZkq2ROu4HQbtC+eszQVNuspgaNAdUsDGXahD1L5NRFmE+aSy0R2hzMBvPmlpln1X0s+lmA87vKRoKWZc1hq3Y8s7m4EHhUthDIrHnzdScl90m4FsDMrLlN5hx7zpXD9rvznG+u+7hbwxfOoRciftAHUFZ8DrFa3celpXCRr42L/h4uztGOUNOIrAt5zaq+oA9Nz5jQ1lZNGuept9Gh50xIaJcSviVnNQahzftQZQfv8x2HffKXuM/xvXPBMIXjvDHA/Lt4uFGruuayVu1wITAunyOk+c+T0NUkwRDQcbVG1Tznlplzia1Rtocg4knAudYWfGvkNNBfzSmPIybVfUxaCkA9XOVxsd+sWmQN14/tC8KacNVsDWbI9JxZqUHLg5ldXDHALI4fq3xO5Xi477HdvTNKApyXlU2eq/KatRAYZ83h9Dl1BNLSoDedls/dlARP5MxzPqb1yNCy1u1WcG47aP/se5bWfbytkRXOozv6AMyKc+s+Hi2FjHUZM1kClRYDYZn6zfmFHs5s5ueqSWb1AD1qVmDQvmA2rPpk7YiSjgVdkVSAyMZQrTOh3VisegJZ9k51H4uxIID5qHiXk2avubnpJJ4+p/K5fMjRvsmIUNpRadZ8UwblTuHccZ1z1R6CRTj/BnD2UKNxJpxHx/cBlBUr6z4elULmu+17j7rxMVkXitBvJngJ1XST1HmNppQLChaG5mrIdyY8aGHQ8iD0CWYNRJKfrU5CZuS4/9L96qxy4fh+IxiLWtJ0MrNQPhdnzY1tqBKvWVnzpA13T7JpTRUUnJt856iMrqqUrmoH7riULt41O4Dz++o+zlZvNNA/k+seQfTnHHBkXh8gcGlB0AsmKNU4Eu6wrS2g1JDC79O+UMZNWyIftj8zg4MAIXATIsz2aJWk4F6SWCUAweS6j8VYErLm02VphLucxF5zWfkcs2YuBMprVkcg/WaeCwRwDucioAXmMHOuKqWrgnOcOVdYGw8ixuTMFKu9cC69qg/AzFjVl9YGLuY1kWX9LB8wNGsw9J55wcsTphWRwvuKzHcOG1T4MaHNbJgZt2Zr8HfiCg+Bm+BolNF9E6Bfu+7jMZaE12RTHNP/K6vQ0DuZYtNJPrM5Xwg8Ims64YAj2hpcCE6bTirgXFKtEYK5na1RBucKW+Pv6j7GVu+Ec2lNxPf7AM6M6+o+Hk0CUN8g64IZM71jec58q1zmYeYjPWcV5mEwc6b1oUyYFgYBzYudwCa809nQy7MqDy4yppu9XjC77mMxFsUxqcWNW8sHHIWWhrLmcKC+FgKZYecw7gDObdq34wXBst23K5pQHr727Ht6spWY1T/C+fSmPgAz4zuI59d9PApC9vuFdGznykLwgqQvLE+YfjFhSvjS/mAmrNka6YahuYUh7zm0MQh71uUK4LwvWSd4DL/FP4Ut6z4WY1EA80EA859jSyPcVTtuOtFA/bB8jrXNhDPf5RCwqYX1pfIFwSo4T2+e5Vy2TVXlgmCxzvkDdR9bq/fC+bTFQH8MReKsjUPrPh6ZTtt73stwUT/FDJmWgyovmM1ytT6vvlje1PGnjV1pbRCw/DkCnFlzmn0vDCbP5ZUeYWmXII6fHR9bx9QkwPnLAnP1/oBFrznMmjVHgzYHX1dCN/0n/aVC5qwTudOpdIohtG8/AjiPiU0TrOEL59SSPoAz44K6j0UmZLGLi5PLZgdlc+dlUE2953xna7VspxlwunjI7Fqwpk2S316fdQJy4VANK4Q3s2n8/WdxvwfXfSzGsgDnM8P1giqvuax8jq3azJo3XWeb5B0OYZq/g/pS5YJgJ9tUdVrnXALnT9Z9TK3RE86pV/YBmBn/UPexSIQseHNkw7/S1lMEqHzn3LqYnw3TCasBQu9Z2bCqM4r7+S1MbAztKk04E+TpzOdlSUaOr32t7mMx1oXXZX0c9weqsuZ4jkZYPsesmeVz9JxZeUPgplMHi3CWrVHVvh0vCIbldK1ma5TAeRXilXUfU2v0hHNrLcT3+gDOdyNeUPfxeN6bDrzsb2lbCJZcqGOWS1hrwlw4aY5ZMWHKC5i/wwyY5XNpFrwoyaZV+6xqgXDmhj5OKzNmhlUgp9V9LMaDcMwHqnc6OSmyNI7Kyue0EEiAV4E5tDRka3Qyla6V59yizvkuxFp1H09rdIXz6rI+gPNfELvXfSxwMc/+rlq007ggCWa98qCZOTP7pQdNL5lZtXY6IcjVss3yuRTuqf9Mi4MQTxcRlyaZMyFOP1uT7hobjv4PgPKiuo/FeBCO4ySA+am46aRq+lxePpd2BPKdEk/Q0NLoaEGwos65VbVGmw7B/qs3tXounFcvR/y1DwB9VK0HApnvdAIzbRqZl7Vqx40Mec3zzKbWbW1RpfkbhC6DAJaNweyaVgYzdJXWEdq6xeOYV+uBGGfC6/P5VjOb481b047APZLP0z0gV0bRebVGu/bt2NZIyulOT7PnwGt+4Jqz7vY/6wmogbTm+Vd9AOeLaz0QyHw/o+lyypB0QTILZlZMgMq+IGxVgUEAM6vOy+iKjQ+aQqdyrtCPFtj5jwDxF/wtr8iPoHC8j4uzZu10wqw5HKjPhUB2BNLS4D9YngO5pZGXU1ZVa7Rr364aGdoE5+I0uvfXfQyt+oRz6+N9AOdP1HYAkNnuCqg+lma66UxgvqUlfBna84+ZLi0Mglpdf8quNBdDPrXauPl7zJJVTqeGFtVEa/5DI/P+eG0HYZwKYH4BwPz9vK45z5pzS6PYEcjMma81T0yVSjbD+eamJpRutqkqK6ULG1EacH4Kt/X7fVZtGuiPUaJ3DtS1KAgQf0DzlXPL4ryCjaGP89GhF2S+tDxpDdTXztCaAx0CmnDnhU/vmfYGAZ52DC6j/XFELQdgnAtwvjjsBgybTsoXAk/NMuZ8f8hmz7lstkbTTihd2BolpXQeejXBhXNrO8QzNcP5jwN1DEECGDdC1vtjls4xG6Z1ETaPMNROrVkYxVGUsR+de9GyM2RpxNDn7zFr5n3hfr+N+1pz1A/ABBCy5p0B5z/GWbM2bw07ArdYd7vknQ3ByndDRVuj9YJgnDl3Wufcon37xLqPnVWvcG6tM9Afu6SM/thigPa1zGSZ2WoXEmWyrMCgTUFwhyE/Wp+nszGWJaEsmfclX1qlddqElIuNqpXOZz/MvHDUn/wEErLhz5aVz8VzNAhr2lKEbms4FwHdznPuuAkl95x/gPD0OYuAvqoP4Pw3o/qkZx44wOlzN+fWxewsG+Ytg5mtMmWFZmJoQ9FwPrOybS4aEtKyLZiJy8rg9/ix/ing49/h59YZ1Sc/wYSs+ZjDtj3xmaLXnG/eyoVA7hHIc4GAVWt+0dZY2WRr6OStrNYomUoXjwxV5hzZGgvrPmZWfwjn1xv6AM5zRvVJ46I7UFPnWO6mDkBmtNpNQxPowt22Q/uiKtRwosqMomc9K/Oqef/IqK8c1Sc+QYWs+Tuh1xwP1KetwX+ayprD2Smt2rfDrLkTW6MMzhGY/4hw1Y6VCGA8qg/g/CHE6DVCXXL4sqs0Z1kzmOU983MNMtKegGrpVnOJFvfUXMIWb1oZajBhRi07Q7tCpzEvm+NMSAPge4/ak57Aetk2My4KN28N52hwyBEXClV5U545N9sapZ5zSRNK1chQZc0RoL9c97Gy+kc4v/ZAPFoznP8JscGoPGEAcQtkro9ogU/QVOOISurisjoCWLdqLNFOKQQ1Peew7I6R74yS2h38WY0bRdyErH31UXnSE1yA7xYv3erYB+NtqAhnZs58rdWaL0CXec7xomAI56Hsvl1YEEzhfHrdx8rqHxGKA/XP2bgZsfmoPOFzD3j/XNUYa5+5cMeTeApdOBMjntGcN5YUf69of5xXuH+1hgPs00blCVuJDtpy6gfLOgJ5y3dDhHF15txiZGjoN08r3307rnWuGBn6K8DZHYFWJpxfayC+XDOcf4yY1PMni8xodVx0/0l7gkHrQjtjxx+zrE4ZsIKZb7jwx5BvzfZvBrNtluAxG6N3TQ87tzXSHaIB5x/jH8P6PX/CViZkzYcia16lhUBCmeVz/AcaNhOFgG5la7TKnGM4d7RN1Wl3eaC+1SScY5+oGc4/Rezc8yd6yp5vP15lbqFdQetBVRWtgj/X7c+Gv5O2gC+lJbKo50/WKghgXhNxezjkaOsNdkn+wRK42vuxPZyjLaqGMFujZCeU5wBnz/G2moTz7PKa4fwbxLE9f6In7DZneWhJKMKmkTj4vVbfL7M7ykLzNXBff3j17hf2/m2C1aS9N588S1nzS9bbIeka5GKvdrOJbY2qag2etJ22b5fVOcet24hbAGc3IllNwjk2t2Y4/x5xUk+f5LzJ1+9xyeHL/xpbFVq4Y2bLRb6wZjm0MJhh07ZQizbtC4XsDIbmOTfHvCRO3esd1/f0iVqVAphfhKz5l5yjwdpmvi6EKsHcTeYcw7nQwl1ha7QZtv/Guo+N1Z/COXZWzXD+7UCvG1EuOXzZper+U6TbR61ozF5ennUI5p2CeYQjPrWTtibV0arI44pSwDcg/xy+d3RPn6jVUsiaP8aOQC4K8nVVqWQI5mY4d74gWJY5xzXOEZx/Czj7nZRVKpxjZ9cM598hXt2zJ3jszuduNG3nN/6iOOuiuWGkk6aS4s+fF9wWqzyav5fc37d79iStjrTzJgfss8W62z3NcaI8+VTXHmbOndQ5Z3AepucMOPudlFUpnGPn1AznJxBv7dkTPP+gy2fTsmBomBErLKqCNkVYgRFWYijSiowFWY10sVY6rJfOW71xH3772geatOEe/8Z3OIRvGZyrbI3KRcEWtkYrOF992l1PX336Xb3186wxrYG0S/DJGuH8LOI9PXuCuNB+yIuNF522kWK5XFhSp4/DEjsG7YvYn9ZtOIC/LAh4dQoCzD+/6NCr1+3Zk7Q61psOvOwSQllRZWu0a9+uypyrFgRDa4NVGgD0T/F9NyJZlcI5duBAOrqzLjhzbGnvqsteu9c7v8p5FpoEV5yZ0Tqam0uKM54j26KVZfJ/p+z59k169iStjoRseDXE9zqB81BtjVbVGgx1BR6z0zn31X08rP7WuIcz4PlKNoSoKUQRf63sZxRhxYVCm75q41fWTcfZM78eVHnM7tmTtDoS3jkdg1ilOSqdZc6hrXFz6YJgq51Q4lI6Djni35204e5/3mLd7Q6p+5hY/as+sTUu7dkTnHPw0jVwMd4bz2cOL04FL9qwSiOt3FieWBma16ymEu2mnc7YSEeFxk0uBHPD1iDQv9+zJ2l1pPmv+PS/qRN0aJlz8zZVrXbfjjsEGZ+Y+Y3kXRk7FLffaO/enfjWmNdA/QuC3AW8t5tPv/GAD5yj7Fc7bGuX7XBmc7jrdn6bjw3NLY7Zpbtwx80n8chQ3H+9241PYAHKOyIeIZjDCYQxnJubUFpPpWuXOYdwpp3Bn2MbOWutd9nkwG8g3IBilaoP4PwQ4jU9fZJn7LNgy1fvfuFDgrCG6odD9jUMKYQ1hyTl1kaxMkNVH8qWNcWOFga/zo9VIcJRovwcj+MzPX2iVqUA5rnhDJUYztVT6Zo7BGNbI6zUqNpDkLefmv3N5HzYdJ1tksFLAPOTu2966AF1HxurP4Vz7LSa4cwmlBk9f6IXH3bdR2RdyNZotjPyJhWO/2SkjSrXJ9YGKzR0mzacLMkGIBHOhDAtDJXREeoEv/4hHLvzuX9CBt/7QSJWQfNf8ekXIu5VNc5QPOdW85ybtqmaUVwQJJhZocHFQG6btcmLtkxGlrKdfO/NJ7+z7uNj9adwjr2tZjizCaX3e1oCnIcCok8yq00X9eYGt3OzTVwVscURVmtoVkY4TyOs2oh37Q53UwHY/67nT9YqCFCeqlLJMlujzNroqEMw8pzLqjWUOf/juV9P/tlzrsf2G+2VzPjgIKZ9tzjiGwdu+aq16z5GVv8J59hH+gDOvesQDAU4fiPcNTsEqCBcZm8Q3LIxtMOJLA1mywy+XdXiIFu4NatDt8yoG5u+fv/Uvd7h2b2jKLzz+UQrOHdja5TBuVX7NuGs8jn+A990na2TvQs5HY/zpbkJwCFbH+eqDatJOMeuqRnOHBm626g82Tfs/97zORsj3XLq+iRoZ7CpRJuyhvM2NFODVobGgaoqg8OQGCGwVYqnmuri/oN5Zo2M+7hRecIWwbwZ4uHQ0mi1INhJE0opnFtkziyf431y6JKyZs734M4s3Nvw0G2mf7Du42T1n3COfaFmOP8csd2oPFlcXOsgs/21WrDVzq22a9obsjXSxpW8WSUcNSorI5zXkW/qOjtbbOR9qJWbEA/+3g2479VG5UlPcAHMF4Tdn51kzh3vvl0y+KhsKh2zZp4HHLoUeM3JhrMv3epY7mP4y8mTTnph3cfK6h/h/FoXcW/NcP4a4iWj9qQBz8uKw47Oa/KHmfkS0LQzFKpX1q32EWT2zJpnLhKmE+gWJyH4p7+zMKvyYHaN+3sGf2fHUXvSE1iA8/fDNv1OPedOM+dWO6Ew2HhCSDNL5oB/WhoNr1mWRjJbevKkk0+t+1hZ/SOcX7sMpPOU64Tz6G3wSp20+0W7axsqWRX8PBwPyu/R4ggtDY0HVeefdtomcLWYGC4iCvZxZs3vNcr0vDVRjwUwH4F4mvZVWEYXV2uEw/aH075dVkp3zZl3J1YYwUxLg14z65yDrJlgHjxy+9fdUPfxsvpHOL9eVjOYGUsRo/eODgBd/cJDr/oXwlb1x7Q5wvI3LQgSpGGFRphxy+IIFxS1gMj7SIceLWwAfEGh3buRTf8Sv+tV+h4KUP6k1hbifSPjzLnTUrrw5O2kQ5BwPmK7U9V0knjNtDQO3PJVgwdvNW3w5duegO+fQjg//Kodz9q27mNm9Ydwfp3ZB3Du3bjQKgGqM+JtpQRdNaUwwiYUQlU7n6RVGUuzjV61WwqtDgFfzSiyQmhr8P54v41uwlX4J3DuqD/5CaJ5k1dsg/idwNxNtUZsaxDK8W4oIZyrmlAIZv59+szbbLBrkjWnlsaUBM6HbjM9qXsGmAdfucOZ/Gf/rrqPm9Ufwvl1RR/AubfdgWUCONcBYO+jR0zLgvWn9IwZ2u1EO59ow1b5ybI0CN7AQ25YGnOyaXZha3exXG9OAmj+HjLqr476k58gApjfEmbNYeZcNpWu1TznsgaUMlsjrNZg1nzt2fck5wWbTpg15wuBRxey5qO2P20QWTPPl//A+eKFwQkunFvPR9zeB3Deo5YDgIv3/dpSSrXKYcWGWrtz7/i8oEIjHyUq2MrO4O83wJvVRqs6JBzez7+Fv/MUft81riOsSw5fviZe37sE59DW6GRBkGAeKpy1IMgKDf4ObYyt1t+5kDXTa2bWzIVAWh5H73BGspFwY01iWt3Hz6pXOLdegvhTzWDmLiib1XIAANLdpu509mPyjjXQSNUa8p3VQUhrgoCVfZFvCLu48DUGbY3QypB33Tz7OcmqP1zLARjHApgPDveI1IJgbGtUbVNV3YTSYoPX0NZoWBo8F9R0EnvNwUJgkjVr/QLnnuevTHDh3Dq2D7LmryPqa5ZDBvsZWRa0L1SdwaoNzdBgcLVd3jLBG1oaYT102T6DwUS65OeVTWuREAB/CBdkPf+hxqkA5A+lm/iWZ85xpUbrDsHW1RoEc7wgyHZt3jI7jr3mRtNJI2s+pZA1N2rkn8A/9F3rPoZWfcK5dVkfwPlziPp6MXCxTtcQo7RBZFFiTdBD1rCifFzozGiOxnmFLJvBDJvQVau2ugg121mzPNTkot/D/by+toMwzgQob4B/rg8rY1aE2491N1ujw1K6wG/mHoEsxSSY46YTec3KmrnZrMbL6lzC+fehuo+jVZ9wbv1nH8D5kloPAoC5GqD7w2bg5j4yQU2gagwooasGFGXTyr7Vzk0I8/dS3zpfJAzL8fg9NbgA1rfXeiDGkQDnmXznk8N5xWAndc7Vu283D9xvB2fO0qBNQa85H3BUzJoJZy4ERlmzKoQexDm0Yd3H0hp94bzaZ6De3U8Ux9d9LJ6HbHk2oaqdTnhhM5uWxaExofx+uIO36qFTP3lmwVOOW7nlWaczOBZktc9p1+CC5Pu4nyl1H4vxIMD5rtTSWDEYZs9xC3crzzmGc541N89zzmyNhu/Mdm3+Lq0MZs5hhUbedHJSshDYKJ/LFpbDZADnxdvrPpbW6Avn1d/1AZifRuxb97Hg7txbzTl46e/V+adGlLA8rlipUWz75lvR9IKal0A3zKwJfbVvC8aq5uDvhfcDiP9T3cdirAtQPgTxbBWcqzLn1ttUrWyq1qjcCQXBhUC+vsya81btKdlCoLxmZs2xpaG6+rRhadGP8C5s/bqPqTW6GkjnWdQN5/9A9Mc7N0Dy78MqitjaiKs1WKGheRpcSFSFBkvmZGnI1pClIbArm5bfnJbdJSV8v0dsU/exGMvCu55rtGlCCOe4zrlV5ty6zrl1+3ayEIhb2hec28ysWa3a/JoqNJQ1p5ZGaqVFWXNyvuF8cpPSBBLOqYMQT/UBnPsnUUS2ciTAu0qbtxK6bEyhnUF7gx+HczV48RCquaecjwQVhPU2Nd+xO7/o8s7BhdluKQ1v+h11H4uxKkB5C8SvtZNNvCDYTZ1zu51QquB8zVl3J2sQnKOx48b7JnAOs2Y1nbBCIyqfi7LmhVpUvgPJwOp1H1trdIRz6t19AGZG/3AIF+EL3nHYJ+9mVhxaG2mZ3AVZ5lu2gSuzX/6sFgx1Hwq1fKsSJLczQp869Rzx/W/j4ly37uMxFoXX7w3hVmNlcG7Vvh3aGu3qnEM4y87QBDpaFdwjMM+aj84WAuU1l5TPJXDWP3A1LjUssul1H1ur98L5tMFAOty+bjBzx+2j6z4eBeGieBOzGVVuqDMwaLVOIEsAszKD2XVapZE2oailmxCWp8z7COd2pFlSuuNKmiUtaPzOwuTCbMzxcIdYlwKYV0eszOG8rCWcO2/f/lLHmTP3COT9b7/R3kn5nIbph1mzKjTirJlJAM8ZrVvwPOM/9sYmwXfhfPMO3eNcOJ/+pg/AzPgxYr26j0dBp+z59k0A2N/xbSkrM1SxEdoaGmzEC4gXk0aEhvsKhtkQPURddLrglE3za9rhO7wfxPK6j8VYE8C8O2JVu8y5lefcakGwDM4JmKfmZXT0m/lax16zWrXTrLm56aRR1xwuBBbq5NNNhJc6ex7nwjl1cx+AmfEvdR+LUgG+/0gIN/b6y6yNeJspXlyprTE7WzDUTieaSMcLSxUbvC9egPn2VbMK2bSskcY2V3/CfU6q+1iMJQHMl7LpowrOVVPpRmr3bVoa/B4tDG5FVTbgKJo+17CymrPm8DxSLT2ShbvrPsZW74RzaX/Es30AZsYFdR+PUgGWewC6T4eVG7QhBE9ePLxolF0z0ml1S4KZGgsbQJ89GN5POJJUMA9nPYdldvh73qG7QwHK6yHuDy2Nssy5rAml1R6CVYOPeALHpXSsbeY/9Ekb7pE0nYQVGtrpRFkzPem8IuiCzGtO4bwoG5KVVwUl59qqiw69+py6j7XVG+Fc+rc+gDLjccROdR+PSgGUNxO0KpVTxYa2oVLFhtqwZUcwmw4HKKkVN96pO9+2am6w6DgnLrP7OW7XqvtYjAVdfNh1ZzFrzjPncjh3W+dcbmnc1ARmZc4E8KQNd6/ImosDjsJphqqR15pG+K5LJZuNsbY/xXPtLy/QGrZwLh2CeK4PwMz4Vt3Ho6Vw4Z6qRT5eLM0lczOD5oHcWyaEdXHx99VRmM7UmBt4y3MK/rTe1oa+Y6NW+uS6j8VYEID1lSKcW9sa3XvO5QuC8pxZocF/4OnO2nsXmk7irFkLzuFCYDpmdl5WYsnzh2BOpx4uSRadlSTguV5U9/G2RlYD6YChuqGsGP2dT7oRstuNAM371REoCOfWxqJGVrMkm1aX3i5NbA3CVbZG6FWrCiTdLFZ2xoKCvaEqj8Y+hLfVfSz6XYDVfoi/VGfOrZtQyqbSNbdvt7A1kDlzbjNf1y3W3a6QNdPSiL1mNZ3IKguzZpXPyWuWpaHNIPjuDc/x//DcPMFwnGgg3SfwiT6AMmPVQF3D9bsRstz5ArB2R+HFwSxG5XPpgKO5yUUW1kGHLdmENC88bV3FW16AAjJhn5fb5XYIA5D/C2C9T93Hop+F1+QjfG3irLlV9tz94KPyPQQJaHrNvA+WzHHz1jhrDsvnwlZt1TXH5XOq0EhttbxqSHBulAh+rO7jbg1fOIfWQNzUB1BW3Ibo/5JNXAx74WJ4jHDmRRN7w6rWCL1DtXhrwVAdhdo8lvfBCzIEuTJyvb1VnXQwK9qD+CuE12cTxM8F52pbY0VTKV1ZnXO151xdSsfpc/znG2fNZQOO4vK5vCMwa9VWXbPK52JLI6vfxnM4su7jbw1POIdO7wMghzGr7mPSsZDh3EiAhmVzeiuqBT5ZG3zryVt+TWVzoU9NGPN+eB/yGLVQqGxadgj/hmZy4O/+BPe7cd3Hoh8FMM/QPo9FMLeu1ggXBTut1gg7BAVnjgblx6xhZpVGmjUfUfCaZWnEC4G5pTG3UD6nrDmEc2BpDGoDATz27+Efi9u6x6hw/qyL+FkfAFnxKGLHuo9Lx8LF81oAcxUvGPl+YeWGFvuY4ebzmvP5GgR6w57IWnGZGakOmhBn9lT0plNrQ14k7xu/dytuz8IFbUg/L3lX80K8BmfitfiWNuPtZkFQYK6Cs2yNdpkzN3DlP2SOBdUWVCqfC/cHZNYcls+Fu7prIVCWRlih0Zw1L8+eS+Oxu9xyjArnz0f6AMhhjK2t0XBxrIkL4we8QLTQp9I5LRbmpXOzsjZvXmiyNVT1IZ+Z0C12Es4KSu4WBONF52cXr3bsxs/8APEhZNcTcgsjvA474/W4DPFtzdpuBedwm6q4UqNVtUYznMsbUFhCx4yYFRrlrdrNWbPefaVec3GORpg1C8yR15y9A2g87ifxOF9a9+tidSecO1MQz/QBkMN4Xd3HpWsBnO8KqzbCt6Xh7GbtP6iKjXRz13yxkJZGamvMKnSEKVvSFlYqqdMMaXUg5otHyWazD+HjG/D1Y/D1deo+Rr0UALUeYipiJUD1ewI5fAdTbmt0P5Wu9cjQZkATzLw/+syc2Rw2nVTtqt1m+lwha9ZCYOw1NyyN5LHz8eJx/giPrz/m7lptBQiuj/ivPoBxGD9CjL2eCgB5R8DyaWY3KmsSGHjLLIdZj8Z+yqLIPeZZycWoi5A/q4uQH8cD/dNhOLkvrexKu6Vo8VDeNO77e7iPc3C7c93HaiQFOO2GY/1GAOo+bbIrWCmbjOHcia3RqpSum9karNLg8WeFRpo1T4l21S5r1Z4TZc3zs4VA/ZOPvWY+39Br1mPnYw4WLpfW/XpZnQkQXNoHMI7jg3UflyELF/kneIEQzryICM10U9ZZhdK51GOek1kbautOI7U3+Lt5W3c+q4O/RwDL/lCk21elpXWEv6IxgyPLtAHnh3F7BeIVdR+v4QhQPhZguhLxJ/4j1GxtvcUXsBTNcC7LnJtrncNqjdjaKNoaXxqMJ9OxtpmAZkUGFwLLs+a8VTtuOtG7pngj4KBVu8nS4PMJJ+o1suZsch4ez/l1v3ZWawGCZ/YBiOP4E2KHuo/NkIUL5xXKasNyKAI1bShJm1KUVafzNhYnFx2zI16Uzb+bbm2lTJoLhCqjI5C1wBjumqLZHvKjVZon26Ox+8pTiJtxH+fi9vl1H7tOBCBtiGxxNuJO7eOoChiBOVyQDQHdfkFwRVO1xnCH7XNnbUKVYOY+gfSa1aodZ816zVVuGW1DFTWdLCk872LWvCKDsx6nMvtGNs+hOYfX/Vpa5cJrsx/isT6AcRxX131shiVcWGsBkvcSflrsk8fM4Me8uLTgp2H6mrUha4PQ5e9r0hhvNdRf9c/qIMtX8+dmu6aoBVyjSsPdwTWaNPwY8TPEItzPtnUfw1icT4xjsBfiY4gH+FZeoUafEM7hzjRh1lxua7SerTGckaGap8HGEu4RyKxZu2qr6UT7A5bNbA73mozL5+KsOffSyy2NPGtOG2Pw2H6Bx7Zd3a+tVRRemxcgvtUHIC6Lves+PsMW4HgxLwot+sneCH1m1UTnPvOibDC/Fnn4uXZDkb2hOmr9TuhD8iKWzyxvWoP6NTipAeImSMv6QDyNn/0kbo/Cba3ZNN5RvBhxMo7JjbJ8VNmiUPY8dDgPbUGwEzhzbjN+9o/Ikh9nlYbK58KsOWw6CTsCNVq2fCFwSTjgKKhrXpZlzbJj4s0AMjinQ/9vWzz9trG3uDNOhddlNcQNfQDhslhR9/EZEQGMmwGev9FiX7wZrCwKgoYXl96aMyPihajyu+L40POSi1UXqNq7mVGpykNldKGFol28gy7C0NYIM+fM/hDMEbfhd9+K2HQ0jx+Ow96A8vsQ/4+WTwhmgUlgVoSec/hWfyhwriqlaw/nZr8ZJ/VSwPdNhLOyZnnN8U4n4UJg2TZUYUegnnNz08mKTrLmfELe9Ns+s+SE21cbzdfXKhdemyV9AOGy4DyPg+s+PiMmXGjXajA+IUnI8GKS70kg80LjxUdgyqbI39rOySo3CCX9PDMo/g7vN29emZNBV12E6QLhvAS02jlFb5W1g3eYNbcANH/2fxDXIXo2uwNv19dAvAb/eP4dz/OhFMqKMGu+IsueYzgLzIJWWEYXe86hpREvCA4FzmVNKIDec3gMr+Lz23Ozl/86HAva6UJguA1VuBAYNp2E/2jihcBSODfAzMye40sRn+zV62p1Jrwu8/oAwlVxfd3HZ0SFC+jlgMLTvGB48fBCUgVGam+k1oYuTFVuMEMihHXxpTujLMxGkRLIaQfZeYUtrfg76dzotP45bYCZE3QQzs0u9rBGuix7FpTzSDNvxGOcX404AfezyUgcJzy/7ZERXoTbnyCe0/jLNEOsgvPSAqBDWyPcDT22NjpbEFwxJFujbEEQJ/V9ep47b3LAJfGAIzWdhNPn8pnNc5sWArUNVXXWXGg6yao0tBBYkjUncGb34kdPvN1zWWoSXpcFfQDgqnhmXGXNEgDzXc3NCEeBavZG2CGoLIgXHSEbtnnLn+bv86INtyVKrZBFWdmc5nPwdwlVTbRTqZ2yZ9U/CwTBtlfZ56qdFigUjZGl/4XbtyL2GsqxwXM4Fhn+1QDOnwkdDYxXhJmz7Iwc0uULgt2X0lXbGoRcN9tUVczWuFjPd8eN91v/oC2nPhjvDxjO+i5mzeWWhrJmVfu0ajopZs3R0P/jmuDMfQ3njtzZb3UivCYX9wGAW8UNdR+jngiQPDPebopgZeajt9UEhuwNVW7kNc1pqzchyZ9R2R1BJq85fzuces2EqoYjEfz8Oc19FpDTxSZl0dku3gVboyJzbsSCLHAfDyM+hX8QM9odDzz3TRFvw+O7OZwdUgbnPHNeUuI5F22NMkDHpXSde87FOud2I0OrbA3EQwD05uHzR9b8Bi0E0msO52jIay4O1G/uCAyz5rjpJLQ0wsdVmI4XWRqEcgPMSSw9+Wsf+dgpd9iDHgXh9XhLH8C3VfwFsV/dx6knwgW3Li6sX/MiUnZDOBAs+SCjWYV2bS3mhQuGeZv3wsxr1lthZb9qZJENQoiq+SXc2Zvf0/dDCyT2m3NAz2vKnEsAzefzHOLriAsRG+kY4HGtjueyL2I5wPxzgob/oEI4C9DllkZsazRbGnGdc5g5h9mzLIDhtm+XwbmkWuOK+HxA1rz6Ydue+L0waw7XGMoG6utdUquFwDhrLi4Erswy57KsWXAWoFmXfeWpd3x8dK+UiSdAb24fwLddjG+rCxfKhwkSwjNsvc4X/2ZnZXGyN7RgSEDLa9Z2V/wdDT5Kt7hKL1i1hedzpFMPUxc671+NLvKZ+XfDDUPDjWOL2XOcOc/PIN8Ac7ZtUiPuR1yK53wqHtctuH1CG5EqQjCHcC5mzVVwXloJ5zLPWQuCypwJ5laA7nZBMAYz4jnAuTTjmDzp5Blh00n1NlTFhcC4tjlcCIymz0XZfMVCYABnZc0MzpwmoBGfwscvHO3rZSIIr8V7+wC87eJBxPjeRQfQ2hcX4F9y3/i8bBASgaPMh7f8XKV0oUdNIPNrqvpQjSsvWEI23xFlTmahEJK8qDVyVOBWDTRDEFDJXXm1RlnmvKAkc26GtOaDCDKKcKcXWRqxtdG6WqO95xyW0snSkEfbrgmlUzg374KSAfoWxBpV5wSy5s+3Lp+bXzkatNVCYFlHYOw3E8xBlUZsaSRwFqBx+7WrXnfn2G3X7TPhNXgR4vo+AG8n8Za6j1fPBViuhsz38wIrAaHFJn7Miy/dfmp2YfaGIM4LlNlS2F3Ii1c11LnfnHrayjzlOytbV2ODyvPSGdH5XoRhI4oy5aicrhTMga1RCAGaj0EhMCvizLk6ey4vpQuz504bUToZGVrVvl02V6OiWuP0VucE3gHtgH/Uj7Uqn4stDWXNZQuBYdNJCOdwq6zY0uAiICMEcyNjDuE8CDjff/Vpd00dretlvAqvwZ6IO/sAup3ENxFr133MRkW4yF7Li4YA4AVGyKmCQ35zmkFdkC3+ESwqwSOs0lnNFwSldDOzhT1ewLxo08x7UTYASVmZKjI0myMcORpugaSts3Qf7RYE44w5hjP/jrLn0NaIwdwpnGNAhwuCrcDc3VS6cmujFZwjW+NnAGLbExuv41wtBGrdIJyjUTUatJOsuWhplC8EBhUaCZgFZ2XODTAnATg/hbhgNK6V8Sgc/xMQv+8D6HYSLJ17Wd3HbNQE6KyPC+9n2sFEg/c1r5kgI2C0bRJBwwszrbKYkw3cJ8RTe2NhoRZa2bd28dY84BDI2mRWC4CyNrRDuIAaes5hFl3tN1dnzaG1UQbn2NYor9bIS+nadQiWwXmo1RqdZM4VC4If6eScwGu0Bl6je+LyOWXNVR2BZeVzZVlzWKXRaiGwLGsWmHnL3cIZDUh/EvHiXl8v40WA3OqI9/QBcLuJj9Z93EZduBgv59tY+c286HiR8aLiRaZFPS3+KVQDy0xVtohmdsjekLWhW/nZ4cCksJROFogqJ/h3CeG4GSXPkuc3QboM0CGUYzC3szViMLdvQmldrVFma1Q3oSwr2Brh0KMyQLdoQvkTYlKn5wRe133xev85XgjUsYpHgxbhXMya9bgqveZgIVBZc1ShEVoZBTALzg1A34fbab28VsaDcNwPQKzsA9h2ExzsP6435CgVILIDgPEkQczsixcWgaOtpeJtrFLILkp+RtUFBBKhR7jGI0UJVF7MaendFQnw0kaWWYUaWkFereDKuMNyuryyY0FpE0rQiJJVgnSTNYdRlTmXLQiW+c7tmlDCYfudtW8Pa/DRv3d7XuB1eUdsaWiQVTjkSO+SwpnNZVlzbGmEHYFVlkYIZ4G5AeLBq08vZM4ZpPEzH8Xter24Vsa6ALh3If7YB7DtNo6o+9jVJkDh04SmNmpVeVy4WzcvTAJF0CBw+LV0/sbMQgleY0PXDEDKklN7I7VQmImrxVuAC7fF0txg/YwaXDQwSV50vgBY5jsXwRx6zjGcY1ujzHNW5qy39OXdgTmcO7E1WpfSLWtaECxrQukAzpOHcl7gGH9dxzgun4trm6uaTsrmaAjOAnNZ44nsjDBrDrLk2NbIPm787I8RpyMqK1MmkgC3wxF39QFkhxKL6j5+tQpAPU5VFuE8DV6IBASzIN4SOISbZnCEO3QTpIQaAcQLlRcsL2jZFfp5wluZN++PIFP7NkPt3gSttj1K7Y1ix6BawAXsYsXG/FLPWQtaZbZGmedcVudcZWuUtW9X2RqhpdGuzrksc453Qmm1+zag+B3AeUgr3DjO++BYPhF2BLaubV5e+OcRz9EYrqURgznMmIPMObz9N9z2bChWv2sgrcTo14lynQSrM9as+zjWKoDzRQDiXSqrIxyY6RAA6hrMW7jzIER50fICVabH3yc8ZYNoDgezYcGboZ9TVYCyZcJV9oAsEFkbsjdUypWCOfedw22T2i0KCtChpRFXbMS1zgJz2MIdztdQ5lw1MrSsWqOb2RpDHHz0xuGcGziG54blc1VDjuKmk5bT51osBKpCI4JsKZjLbI34d/DxX3B7JW73Hanrpd+FY7w1YuFAf+5a0mk8jJiw/1gLAgA3wAV1Gi6i21RWp/nNRc85bSThhaksiVli2qQyJ+gum52V4GlmB3+HF7hGkfL7ag1ON59Ns850St7czNpQyZ2qBHJ7Q80o87IaaQ1U6gTMsa3RrkOw6DmX+c3dD9vvfGRoNZwrqjV+DjhfBDC+YLjnBo7XNa06AlstBMpaiWubyzoCw6xZcFXmHPrMrQAdWyBBCd4fEJ9AjKtNhEPh2G6CuBzxiz6A63CjZU3+hBQuqrUB2UMB2M8Cxg+qUYRQ40XIC4/AYLakZpJ45jNhSpAJNinsF2R2iPYuVBaswf78G1oI1J6D/CdBSCqTVhOKMmlBmY9FHYWyOFT+1Q2cwwXBEM4CUydNKGVDj1plz6GtUQ7n4rjQFnXOjwLKX0HMQGzU/tXuTDhOa+FY3BPWNocLgaGlEY4GLRtylGTNU4OseXr5QmAI1ngRsJW1EWXNTYH7fgRxLeJAxJjYn7KdmGEOpPbFA30A1ZGIJXUf074XQLo1YPYBXHDf4AXHC5GQ0l6BYW206qIJHl6gvGD1s5rfrOyb8FSLOH+e4Iy3sWJWnGZpSxvVI3Ozmltl0qocIFSLC4LzMwiHC4Gx5xxaG+0y59DW6MRzDjPnqvbtMji3m+dcMTL0p4DhRwHnA3p1LuD574Pn/6ewSiPcIzDcvDX0muPRoEnmXGJpqCMwrmkugFlwPr1YrdEqSuAcxhfxz+BUxFa9Om69Eo7j5ojXID7dBzAdybgd4dkpnQqZz+q4KM8EhK9XI4kW99ISuCVZxkT4MGPNm05mZ5kyv66Kj9AKEZg1pY7g05Q8TbEL9xgkRFUrzfvIa5/ThUBlv2nGXKzaEJzLwBzWOXdSSlf0m68oeM5lpXTx7ttxh2C7BUHZSEHmvBLH/I2A4ZajcR7gOR+L5/dc+dzm3G8mmOOB+qUdgdFCYDhDo1CdcXoE5w5857IsOm4DZzQ87p8grkK8Dv8g+rY9GMfv+YhTEVcjftgHIB3p+DFizP2j7Bsh+90fQH0voPVrXpRps8r1gyrFUzadZsnpZDtVffDiJbxSP3tO5kvLvuD3UihfkY0h1YQ6bQCgCg9+rKoNLQiquqO4ILgwy5jlSbfKnEM4qwmlqn27aGdUw7lsZGj37dsZnB8BmJciJgOEq4/264/neJ6y5ng0aFjbXDp9Lq5tjiwNTZ+LIduUObeo1miXOccZtBYgg/ghHscKxJmIF+OxjfoxlnDM1iSsEGchVgykzRh1A7RX8QfES+s61uNKgMlGyIbmAGjfAmifDi0OApcZNS9iAoWQIcw0SEk7favlmz+nbkR+HrZxM7RYqN1YZHGotE4zpsOZ0bI3CGBClj8Tz9WQV91u8FF1l2D50KOyUrpwD8FW7dux79wA3yrEdxEXA4Bb1P3a43l8uFilUW5pVMI5qm0umz7XVKHRJnPuxtZoBedwTCniETy+OxEfQPwNYnf8M+nJuEocnzUQL0HshTgR8WHE9xCP9gE4RyPc3dkLHb/LzOMA3E+fvMdbHibseMFyMYjA0aKhsmR1BhKQhBMzLoJMzSfKlFVWR8Dx5wjGsJyO9kZadrc0mzGtUjpZHPKJtVgYdgmGLeJVTSihrVHlOZdnz+XVGp3AOcqcfw/wfQbH6KS6X+NQeC5r4LH/azi3uaM5Gh3WNhcWAUMwt7E1qhYHW/nObeBcGPrfmJj3Y8S/ID6KmI3ncQbiCMRkxA6IbfD8JmUx7dZJ+Iek2BqxC47DEYijAaRzEG8dSG2KLw6MjyqLboMDjc6t+5we9wL09sEF+Q7A5sfpfI3Zg+F8DQKXECSIeDETXsqmBWbNc9bAJYJOFRyCsxYLCThCMpztrOYUglL7GIat3Np0lgDu1neuqtaIB+53Y2tU1Dn/AM99PmLPul/TKuExr4fHeku4s3Zz1lyygWuLjsBSMLeBc1nHYJeLggVIdwDnLJLZ0+mi5ircPou4H/EzPL//zWLarf+L5634KeIBHgcejz4AYz/EpXWfyxNKgNxmx+x0zomA8leRLf+F0CXUdBETXoRpPoz/gqydO7U4rk+gFvvOWgwkyAg6TbNT9yAhrKl4adldcbazBvYQvuFM57BKo6qUrv3I0KUFQHcyyzmC8+OA3Q2IGYDziOwg3mvhcb4Amf092oqqvHyuereT0G8urdI4/a7mKMmc2zWklIG5KoPuGs6K6XnoH1ASeM4JjMOYajg3Ymnd5/CEFbLl1QHUPXEB/yMyqv8llAlRAVmbvxKehBbhTVARnBp6pPI6fk0ep0aRamIaAU3AEnSpb72oMAQpbHCJvWcCWJvTxnXOsa3Retj+0sF2pXShrREA+ieIqwHn3ep+vYYivGY74l3QT1pZGhmcK2qbQziXLgJ2COeqio1WcFZddZW10QrOCaCnF+FcALPh3Cpcy9wvArA2BazfCih/NaxlJrDSgf/Lsrkd4ZwN/gyhTBuEwAutDVVrEIK0A9Lh//kwpOLA/8WFOmd+TOASrPKfw1rnslK69p5zs62hZo14QRDxRcT5iHXrfm2GK2TN2yNr/mknlsawsuYRypzDj6s8Z31cBWc9B2fOzpjHjQDc1QDmaQDbp5BlPUnoEoiyNpQtMysm6Ph9wllT7cLuQEKVnieBx++nY0UXZguD2qFDY0bDRhSVvMV7Ccr6KJuv0XqD12rPObA2fovH8wEAeUrdr8NIC2DeCq/nffH0OcGZkMoAVuE3V9Y2dwHnofjNrSDdNnOOwNwNnCcooK+s+1y1OhCyqx0A3PcA1j/V4CP6yoQg3ybT5tAsDtkcDLWS0+vUZrL5gmDaOcjvE4qaw6GFQQKYoIzBzI8JXH499JvDEZnt5zkXd0JpwPlJxHfwN89FjOsCe2TNk/Ca3tkE5xJLI86c43nN15x5dxIjCecqMA/Vc3bm3HVcUfc5anUpgHdNQHcmoPpVZMJPcnGJsFOVBuGrag1CjwtPtAaULYfznfl9bRgQLgbyZwjadDfxxU0zNgRX/kxYUqdmEwK6WLERt243NaH8BvHPAPORdR/f0RQy5w0A5y+H5XMEUpg1x12B4aAjec2lYB4hz7mVrdG159wucz6uBM7H5GCeQJD+YN3npjVM4aKegkz2yhm7zv4VoSwwE5Ya9kNo5pu/zsu6B9UQoY1i1SHIjDqdjLe80aiyqNAhyExatdJaFOStqjDCao14Mp0sjQDQ30S8C/e3S93Hsi4ha14XF+O/CUShpRGDOdzxJCyL6wjObToGW3UHjtiCoOHcScyu+5y0RlCv3v3C7QDg8wHZe5klc6GJtwRyukNKPgiJ4NVcj3CEqDoE1SxB+GookmYU8z75e9qCiaFMWjuMhxUbebZcmOf8NB7D5wDkqQDzmF/gGykBQktaLQSqXbusSqOtrVEC66HYGjGch1TnPETPuQ+g2evgllivrfs8tHokQHZdgPk4QPAL7ECUv0xAE7za+1CVGoIzIa7aak2+06Igb9N5H8uzOR1aECSYNTsi3OQ1HDKfWhoJnH+GeA9ix4sOvbq2GQz9LMDpfEDquU4WAkOvuW3m3GErd1mX4IjCeYiecx+As9fxS8TRdZ9/1iiJNdOA7kcB4R8xY2VlALNiZsma7axuQS4GsuZWg5Y021mNKoQ2QasMWmDWtDX5zgSzvOe0I3HJX/H7t+Dzmfh42IPsJ4IAqdcAYH+o2iewCs6VmXObjsFuqjW6ad8OAe1SupbxfcTudZ93Vg1CFrwJwHs+4PoFWRsaws8MmeBlzW06JGle1rrNn2FWTAtErd2CsmZ9sMojrHVOB/0v5dcfxO9cBlhPqfv5j0UBYPsAZt8u2127sNNJK0ujDZyHMvxoCLM1WlobbkK55Z8Q69R9vll9IIB5MqC7FLePEabMlgnndCfveYVuQYKXYNb0OnUL8la7eYT1zgDzKmTNt86bvOL1+N72dT/XsS7AbAMA7+8rJ9Cd3kHm3MEQpBjK4cdxtUani4EupWsbTyH+tu5zzOpDAbAvwYl/ySWHL/t+uCjIW8KXUGalR7pryoICmDVVTVk0oPwbxArEZMRadT+38SZA8DzEY6385pGAc7dDj+IOwRjOpb5zu/btsmqN8Qfn/0YcVfd5ZY0BvWbPt50BMP8r4gnaF7Q4CGAN4dcIUX7OxcQAzHcjU16E2Lru5zDeBfi9DLC8JyuhK8ma28J5BDznYTehBPXbHWfOwaLgOID0tYgR26/SmiACgF8GMF8GMN9f3PA13cqq0YX4BKB8HUB9Cr62Wt2PeSIJ8FwDcWlcPlcF5yZYD6Fao5tSuo4y5xlDgPPUcQHnBxGn1n0OWWNcFx561VaA82kA870A87Nc5AO0f4ELad5EbhbpFwGqRwC2306AfFY5nEsz6RGwNYbaIVio1ui2znnsl9Ndj5hU93ljjSMhk14LGfIrFxzxmVNwcWxY9+OxcgG2awO+CwDnP44knNs1ooRdit2U0k3QBUF6y6+r+1yxLKsGAc4HAMJfbAvmIXrO3WxT1dWCYItFwXEAZ1ZifBDhhMayJroA45MB32/GXnQ3cG6383a3cG5Z41wG52nVcO4D4HYan0ccUvf5YFlWHwkwXg8xB/HASGXOrXbfji2NCT4y9DuIqYg16j4PLMvqUwHMGwHEH0Y80OsFQcP5lu8i3mQoW5bVsQDkHRGXZ5DuoEOwHaBbbVPVcYdgma0xbcwNPrqLUK77NbYsawwLYN4JMQfxi5HInCf4Tii3Ic5EeIiXZVkjI8B4M8QZiG8i/trJgmAVnDtpROkKznHmHOwK0wdw5pzlLyCmIF5Y9+toWdY4FsB8DGIZoHx/N9UaPdtDcFoefZQ5/z/EhxF71v16WZY1wQQob4e4AHEj4tkY1GV7CHYK57IuwbDOuWxcaBOco+x5FCD9COIaxOsRL6r79bEsyyKo9wOEZyFuQzzdbZ1zWeastu3hznPuMZD/jLgBcQZi17pfB8uyrFIByGsjdgKML0LcjPgF4q/DhXNTE0rj88xvLoFz8vnIw5kw/p+BdObFiYgtBlwKZ1nWWBOg/CLEcYiPAshfQfyim3nOAnFhZOj0CM4dltINEdR/RdyH+BziEsTLEc+v+7halmWNqADiSYhpgPJbEVcj7kE8ULUgWNjYtYMFQWXLmd/cvbXxY8RXEJch3oiYPOA5F5ZlTTQByusgtgWQD0EcDyDPRfw9Pv4Sbu9DPA4gP4F4thGdV2vkC4KrEM8Csk8jHh9I5yOzO48lbh9CXIA4FrEfYnNnxpZlWSUCkFcDnNfB7WaI7QHhvQDlGYgT8fEcxPsA5UVBXAowX4u4FDBeiFiUxNTk9n24PaPhDx+Nj7fH7TaIF7uiwrIsy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Isy7Ks+vT/AQa+7whz+KjLAAAAAElFTkSuQmCC"/></svg>
@@ -0,0 +1,18 @@
1
+ import { IDataObject, IExecuteFunctions } from 'n8n-workflow';
2
+ export interface CloudCredentials {
3
+ nif: string;
4
+ apiKey: string;
5
+ development: boolean;
6
+ }
7
+ export declare function getBaseUrl(credentials: CloudCredentials): string;
8
+ export interface PaginationParams {
9
+ $search?: string;
10
+ $direction?: string;
11
+ $size?: number;
12
+ $sort?: string;
13
+ $filter?: string;
14
+ $navigate?: string;
15
+ $cursor?: string;
16
+ }
17
+ export declare function buildPaginationParams(context: IExecuteFunctions, i: number): IDataObject;
18
+ export declare function cloudApiRequest(this: IExecuteFunctions, method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, body?: IDataObject, qs?: IDataObject): Promise<Record<string, unknown>>;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBaseUrl = getBaseUrl;
4
+ exports.buildPaginationParams = buildPaginationParams;
5
+ exports.cloudApiRequest = cloudApiRequest;
6
+ const n8n_workflow_1 = require("n8n-workflow");
7
+ const PRODUCTION_BASE_URL = 'https://%s.artsoft.cloud/api';
8
+ const DEVELOPMENT_BASE_URL = 'https://%s.local.artsoft.cloud:3000/api';
9
+ function getBaseUrl(credentials) {
10
+ const template = credentials.development ? DEVELOPMENT_BASE_URL : PRODUCTION_BASE_URL;
11
+ return template.replace('%s', credentials.nif);
12
+ }
13
+ function buildPaginationParams(context, i) {
14
+ const params = {};
15
+ const search = context.getNodeParameter('$search', i, '');
16
+ const direction = context.getNodeParameter('$direction', i, '');
17
+ const size = context.getNodeParameter('$size', i, 0);
18
+ const sort = context.getNodeParameter('$sort', i, '');
19
+ const filter = context.getNodeParameter('$filter', i, '');
20
+ const navigate = context.getNodeParameter('$navigate', i, '');
21
+ const cursor = context.getNodeParameter('$cursor', i, '');
22
+ if (search)
23
+ params.$search = search;
24
+ if (direction)
25
+ params.$direction = direction;
26
+ if (size)
27
+ params.$size = size;
28
+ if (sort)
29
+ params.$sort = sort;
30
+ if (filter)
31
+ params.$filter = filter;
32
+ if (navigate)
33
+ params.$navigate = navigate;
34
+ if (cursor)
35
+ params.$cursor = cursor;
36
+ return params;
37
+ }
38
+ async function cloudApiRequest(method, path, body, qs) {
39
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
40
+ const credentials = (await this.getCredentials('artsoftCloudApi'));
41
+ const baseUrl = getBaseUrl(credentials);
42
+ try {
43
+ const response = await this.helpers.httpRequestWithAuthentication.call(this, 'artsoftCloudApi', {
44
+ method,
45
+ url: `${baseUrl}${path}`,
46
+ headers: {
47
+ 'Content-Type': 'application/json',
48
+ Accept: 'application/json',
49
+ },
50
+ body,
51
+ qs,
52
+ skipSslCertificateValidation: credentials.development,
53
+ returnFullResponse: false,
54
+ });
55
+ return (_a = response) !== null && _a !== void 0 ? _a : {};
56
+ }
57
+ catch (error) {
58
+ const err = error;
59
+ const responseData = (_b = err === null || err === void 0 ? void 0 : err.response) === null || _b === void 0 ? void 0 : _b.data;
60
+ const apiMessage = (_e = (_d = (_c = responseData === null || responseData === void 0 ? void 0 : responseData.error) === null || _c === void 0 ? void 0 : _c.message) !== null && _d !== void 0 ? _d : responseData === null || responseData === void 0 ? void 0 : responseData.message) !== null && _e !== void 0 ? _e : '';
61
+ const apiCode = (_g = (_f = responseData === null || responseData === void 0 ? void 0 : responseData.error) === null || _f === void 0 ? void 0 : _f.code) !== null && _g !== void 0 ? _g : '';
62
+ const detail = apiMessage ? `${apiCode}: ${apiMessage}` : (_h = err.message) !== null && _h !== void 0 ? _h : String(error);
63
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), { message: detail, description: JSON.stringify((_j = responseData !== null && responseData !== void 0 ? responseData : err.message) !== null && _j !== void 0 ? _j : '') }, { message: `ARTSOFT Cloud Invoice API request to ${path} failed: ${detail}` });
64
+ }
65
+ }
66
+ //# sourceMappingURL=GenericFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../../../nodes/ArtsoftCloud/resolver/artsoft-cloud/GenericFunctions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const cloudCurrAccountOperations: {
3
+ name: string;
4
+ value: string;
5
+ description: string;
6
+ action: string;
7
+ }[];
8
+ export declare const cloudCurrAccountProperties: INodeProperties[];