@ai-table/state 0.0.10 → 0.0.12
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2022/types/view.mjs +1 -1
- package/esm2022/utils/build.mjs +6 -11
- package/esm2022/utils/field/date.mjs +19 -1
- package/esm2022/utils/field/field.mjs +32 -1
- package/esm2022/utils/field/number.mjs +19 -1
- package/esm2022/utils/field/rate.mjs +19 -1
- package/esm2022/utils/field/select.mjs +23 -1
- package/esm2022/utils/field/text.mjs +7 -1
- package/esm2022/utils/sort-records.mjs +34 -0
- package/esm2022/utils/view.mjs +8 -1
- package/fesm2022/ai-table-state.mjs +153 -9
- package/fesm2022/ai-table-state.mjs.map +1 -1
- package/package.json +1 -1
- package/types/view.d.ts +7 -3
- package/types/view.d.ts.map +1 -1
- package/utils/build.d.ts +2 -2
- package/utils/build.d.ts.map +1 -1
- package/utils/field/date.d.ts +3 -0
- package/utils/field/date.d.ts.map +1 -1
- package/utils/field/field.d.ts +5 -1
- package/utils/field/field.d.ts.map +1 -1
- package/utils/field/number.d.ts +3 -0
- package/utils/field/number.d.ts.map +1 -1
- package/utils/field/rate.d.ts +3 -0
- package/utils/field/rate.d.ts.map +1 -1
- package/utils/field/select.d.ts +6 -1
- package/utils/field/select.d.ts.map +1 -1
- package/utils/field/text.d.ts +2 -0
- package/utils/field/text.d.ts.map +1 -1
- package/utils/sort-records.d.ts +5 -0
- package/utils/sort-records.d.ts.map +1 -0
- package/utils/view.d.ts +2 -1
- package/utils/view.d.ts.map +1 -1
package/utils/build.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../packages/state/src/utils/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../packages/state/src/utils/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAIzC,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,kFAGnI;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,kFAEnF"}
|
package/utils/field/date.d.ts
CHANGED
@@ -4,5 +4,8 @@ import { AITableFilterCondition } from '../../types';
|
|
4
4
|
export declare class DateField extends Field {
|
5
5
|
isMeetFilter(condition: AITableFilterCondition<string>, cellValue: DateFieldValue): boolean;
|
6
6
|
getTimeRange(value: string | number | number[]): number[];
|
7
|
+
cellValueToString(_cellValue: DateFieldValue): string | null;
|
8
|
+
static _compare(cellValue1: DateFieldValue, cellValue2: DateFieldValue): number;
|
9
|
+
compare(cellValue1: DateFieldValue, cellValue2: DateFieldValue): number;
|
7
10
|
}
|
8
11
|
//# sourceMappingURL=date.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/date.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAA;AAG5E,qBAAa,SAAU,SAAQ,KAAK;IACvB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc;IAoB1F,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE;
|
1
|
+
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/date.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAA;AAG5E,qBAAa,SAAU,SAAQ,KAAK;IACvB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,cAAc;IAoB1F,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE;IA8B9C,iBAAiB,CAAC,UAAU,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IAI5D,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,GAAG,MAAM;IActE,OAAO,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,GAAG,MAAM;CAGnF"}
|
package/utils/field/field.d.ts
CHANGED
@@ -1,8 +1,12 @@
|
|
1
|
-
import { FieldValue } from '@ai-table/grid';
|
1
|
+
import { AITableField, FieldValue } from '@ai-table/grid';
|
2
2
|
import { AITableFilterCondition, AITableFilterOperation } from '../../types';
|
3
|
+
export declare const zhIntlCollator: Intl.Collator | undefined;
|
3
4
|
export declare abstract class Field {
|
4
5
|
protected stringInclude(str: string, searchStr: string): boolean;
|
6
|
+
abstract cellValueToString(cellValue: FieldValue, field: AITableField): string | null;
|
5
7
|
isMeetFilter(condition: AITableFilterCondition, cellValue: FieldValue): boolean;
|
6
8
|
isEmptyOrNot(operation: AITableFilterOperation.empty | AITableFilterOperation.exists, cellValue: FieldValue): boolean;
|
9
|
+
eq(cv1: FieldValue, cv2: FieldValue): boolean;
|
10
|
+
compare(cellValue1: FieldValue, cellValue2: FieldValue, field: AITableField): number;
|
7
11
|
}
|
8
12
|
//# sourceMappingURL=field.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
1
|
+
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAI7E,eAAO,MAAM,cAAc,2BAAuE,CAAC;AAEnG,8BAAsB,KAAK;IACvB,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAItD,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI;IAErF,YAAY,CAAC,SAAS,EAAE,sBAAsB,EAAE,SAAS,EAAE,UAAU;IAYrE,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,KAAK,GAAG,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU;IAc3G,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO;IAI7C,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM;CA8BvF"}
|
package/utils/field/number.d.ts
CHANGED
@@ -3,5 +3,8 @@ import { Field } from './field';
|
|
3
3
|
import { FieldValue } from '@ai-table/grid';
|
4
4
|
export declare class NumberField extends Field {
|
5
5
|
isMeetFilter(condition: AITableFilterCondition<number>, cellValue: FieldValue): boolean;
|
6
|
+
cellValueToString(_cellValue: FieldValue): string | null;
|
7
|
+
static _compare(cellValue1: number, cellValue2: number): number;
|
8
|
+
compare(cellValue1: number, cellValue2: number): number;
|
6
9
|
}
|
7
10
|
//# sourceMappingURL=number.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/number.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,qBAAa,WAAY,SAAQ,KAAK;IACzB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU;
|
1
|
+
{"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/number.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,qBAAa,WAAY,SAAQ,KAAK;IACzB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU;IAuBtF,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAIxD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAatD,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;CAGnE"}
|
package/utils/field/rate.d.ts
CHANGED
@@ -3,5 +3,8 @@ import { Field } from './field';
|
|
3
3
|
import { RateFieldValue } from '@ai-table/grid';
|
4
4
|
export declare class RateField extends Field {
|
5
5
|
isMeetFilter(condition: AITableFilterCondition<string[]>, cellValue: RateFieldValue | string): boolean;
|
6
|
+
cellValueToString(_cellValue: RateFieldValue): string | null;
|
7
|
+
static _compare(cellValue1: number, cellValue2: number): number;
|
8
|
+
compare(cellValue1: number, cellValue2: number): number;
|
6
9
|
}
|
7
10
|
//# sourceMappingURL=rate.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rate.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/rate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,qBAAa,SAAU,SAAQ,KAAK;IACvB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,GAAG,MAAM;
|
1
|
+
{"version":3,"file":"rate.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/rate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,qBAAa,SAAU,SAAQ,KAAK;IACvB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,GAAG,MAAM;IAerG,iBAAiB,CAAC,UAAU,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IAI5D,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAatD,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;CAGnE"}
|
package/utils/field/select.d.ts
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
import { AITableFilterCondition } from '../../types';
|
2
2
|
import { Field } from './field';
|
3
|
-
import { SelectFieldValue } from '@ai-table/grid';
|
3
|
+
import { AITableField, AITableSelectOption, SelectFieldValue } from '@ai-table/grid';
|
4
|
+
import { Id } from 'ngx-tethys/types';
|
4
5
|
export declare class SelectField extends Field {
|
5
6
|
isMeetFilter(condition: AITableFilterCondition<string>, cellValue: SelectFieldValue): boolean;
|
7
|
+
cellValueToString(cellValue: SelectFieldValue, field: AITableField): string | null;
|
8
|
+
cellValueToArray(cellValue: SelectFieldValue, field: AITableField): string[] | null;
|
9
|
+
findOptionById(field: AITableField, id: Id): AITableSelectOption | null;
|
10
|
+
arrayValueToString(cellValues: string[] | null): string | null;
|
6
11
|
}
|
7
12
|
//# sourceMappingURL=select.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/select.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/select.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAkB,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,qBAAa,WAAY,SAAQ,KAAK;IACzB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,gBAAgB;IAe5F,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI;IAIlF,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,EAAE,GAAG,IAAI;IAcnF,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,GAAG,mBAAmB,GAAG,IAAI;IAIvE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI;CAGjE"}
|
package/utils/field/text.d.ts
CHANGED
@@ -4,5 +4,7 @@ import { FieldValue } from '@ai-table/grid';
|
|
4
4
|
export declare class TextField extends Field {
|
5
5
|
isMeetFilter(condition: AITableFilterCondition<string>, cellValue: FieldValue): boolean;
|
6
6
|
static stringInclude(str: string, searchStr: string): boolean;
|
7
|
+
eq(cv1: string | null, cv2: string | null): boolean;
|
8
|
+
cellValueToString(cellValue: string | null): string | null;
|
7
9
|
}
|
8
10
|
//# sourceMappingURL=text.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/text.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,qBAAa,SAAU,SAAQ,KAAK;IACvB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU;IAatF,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../../packages/state/src/utils/field/text.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,qBAAa,SAAU,SAAQ,KAAK;IACvB,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU;IAatF,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAI1C,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAI5D,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI;CAG7D"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import { AITable } from '@ai-table/grid';
|
2
|
+
import { AITableView, AITableViewRecords } from '../types';
|
3
|
+
export declare function getSortRecords(aiTable: AITable, records: AITableViewRecords, activeView: AITableView): (import("../types").AITableViewRecord | import("../types").AITableViewField)[];
|
4
|
+
export declare function sortRecordsBySortInfo(aiTable: AITable, records: AITableViewRecords, activeView: AITableView): import("../types").AITableViewRecord[];
|
5
|
+
//# sourceMappingURL=sort-records.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"sort-records.d.ts","sourceRoot":"","sources":["../../../packages/state/src/utils/sort-records.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAG3D,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,WAAW,kFASpG;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,WAAW,0CAoB3G"}
|
package/utils/view.d.ts
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
-
import { AITableView, AITableViewFields, AITableViewRecords, AIViewTable, Positions } from '../types';
|
1
|
+
import { AITableView, AITableViewField, AITableViewFields, AITableViewRecords, AIViewTable, Positions } from '../types';
|
2
2
|
export declare function createDefaultPositions(views: AITableView[], activeId: string, data: AITableViewRecords | AITableViewFields, index: number): Positions;
|
3
3
|
export declare function getPosition(data: AITableViewRecords | AITableViewFields, activeViewId: string, index: number): number;
|
4
4
|
export declare function addView(aiTable: AIViewTable, type: 'add' | 'copy'): AITableView;
|
5
5
|
export declare function removeView(aiTable: AIViewTable, records: AITableViewRecords, fields: AITableViewFields, activeViewId: string): void;
|
6
|
+
export declare function sortByViewPosition(data: AITableViewRecords | AITableViewFields, activeView: AITableView): (import("../types").AITableViewRecord | AITableViewField)[];
|
6
7
|
//# sourceMappingURL=view.d.ts.map
|
package/utils/view.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../packages/state/src/utils/view.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../packages/state/src/utils/view.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGxH,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,WAAW,EAAE,EACpB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,kBAAkB,GAAG,iBAAiB,EAC5C,KAAK,EAAE,MAAM,aAShB;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,iBAAiB,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAU5G;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,GAAG,MAAM,eAmCjE;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,QAgB5H;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,iBAAiB,EAAE,UAAU,EAAE,WAAW,+DAMvG"}
|