@ludeo/cloud-common 1.1.69 → 1.1.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/v2/types/pools.d.ts +1 -0
- package/dist/v2/types/pools.js +1 -0
- package/dist/v2/types/pools.js.map +1 -1
- package/dist/v3/contexts/getCloudContextType.d.ts +1 -1
- package/dist/v3/types/pools.d.ts +1 -0
- package/dist/v3/types/pools.js +1 -0
- package/dist/v3/types/pools.js.map +1 -1
- package/package.json +1 -1
- package/src/v2/types/pools.ts +1 -0
- package/src/v3/types/pools.ts +1 -0
- package/dist/v3/events/game-status-changed.d.ts +0 -16
- package/dist/v3/events/game-status-changed.js +0 -59
- package/dist/v3/events/game-status-changed.js.map +0 -1
- package/dist/v3/events/monitor-game-task.d.ts +0 -14
- package/dist/v3/events/monitor-game-task.js +0 -48
- package/dist/v3/events/monitor-game-task.js.map +0 -1
package/dist/v2/types/pools.d.ts
CHANGED
package/dist/v2/types/pools.js
CHANGED
|
@@ -27,6 +27,7 @@ var CloudResourceStatus;
|
|
|
27
27
|
var CloudPoolStatus;
|
|
28
28
|
(function (CloudPoolStatus) {
|
|
29
29
|
CloudPoolStatus["Active"] = "active";
|
|
30
|
+
CloudPoolStatus["Created"] = "created";
|
|
30
31
|
CloudPoolStatus["Scaling"] = "scaling";
|
|
31
32
|
CloudPoolStatus["Terminated"] = "terminated";
|
|
32
33
|
})(CloudPoolStatus || (exports.CloudPoolStatus = CloudPoolStatus = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pools.js","sourceRoot":"","sources":["../../../src/v2/types/pools.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAuE;AACvE,mCAIiB;AACjB,iDAAsD;AAEtD,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;IACnB,gDAAyB,CAAA;IACzB,sCAAe,CAAA;IACf,gDAAyB,CAAA;IACzB,kDAA2B,CAAA;AAC7B,CAAC,EATW,mBAAmB,mCAAnB,mBAAmB,QAS9B;AAED,IAAY,
|
|
1
|
+
{"version":3,"file":"pools.js","sourceRoot":"","sources":["../../../src/v2/types/pools.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAuE;AACvE,mCAIiB;AACjB,iDAAsD;AAEtD,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;IACnB,gDAAyB,CAAA;IACzB,sCAAe,CAAA;IACf,gDAAyB,CAAA;IACzB,kDAA2B,CAAA;AAC7B,CAAC,EATW,mBAAmB,mCAAnB,mBAAmB,QAS9B;AAED,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,sCAAmB,CAAA;IACnB,4CAAyB,CAAA;AAC3B,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B;AAED,MAAa,sBAAsB;CAGlC;AAHD,wDAGC;AADC;IADC,IAAA,0BAAQ,GAAE;;oDACE;AAGf,MAAa,sBAAsB;CAelC;AAfD,wDAeC;AAXC;IADC,IAAA,wBAAM,EAAC,qBAAa,CAAC;;6DACO;AAG7B;IADC,IAAA,wBAAM,GAAE;;sDACM;AAGf;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC;8BACzB,sBAAsB;sEAAC;AAI/C;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;sDACO;AAYlB,MAAa,SAAS;CAOrB;AAPD,8BAOC;AAED,MAAa,aAAa;CAMzB;AAND,sCAMC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TypeHelpOptions } from "class-transformer";
|
|
2
2
|
import { CloudPoolContext } from "./cloud-pool-context";
|
|
3
3
|
import { CloudResourceContext } from "./cloud-resource-context";
|
|
4
|
-
export declare const getCloudContextType: ({ object }: TypeHelpOptions) => typeof
|
|
4
|
+
export declare const getCloudContextType: ({ object }: TypeHelpOptions) => typeof CloudPoolContext | typeof CloudResourceContext;
|
package/dist/v3/types/pools.d.ts
CHANGED
package/dist/v3/types/pools.js
CHANGED
|
@@ -27,6 +27,7 @@ var CloudResourceStatus;
|
|
|
27
27
|
var CloudPoolStatus;
|
|
28
28
|
(function (CloudPoolStatus) {
|
|
29
29
|
CloudPoolStatus["Active"] = "active";
|
|
30
|
+
CloudPoolStatus["Created"] = "created";
|
|
30
31
|
CloudPoolStatus["Scaling"] = "scaling";
|
|
31
32
|
CloudPoolStatus["Terminated"] = "terminated";
|
|
32
33
|
})(CloudPoolStatus || (exports.CloudPoolStatus = CloudPoolStatus = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pools.js","sourceRoot":"","sources":["../../../src/v3/types/pools.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,iDAAsD;AACtD,mCAIiB;AAEjB,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;IACnB,gDAAyB,CAAA;IACzB,sCAAe,CAAA;IACf,kDAA2B,CAAA;IAC3B,gDAAyB,CAAA;AAC3B,CAAC,EATW,mBAAmB,mCAAnB,mBAAmB,QAS9B;AAED,IAAY,
|
|
1
|
+
{"version":3,"file":"pools.js","sourceRoot":"","sources":["../../../src/v3/types/pools.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAMyB;AAEzB,iDAAsD;AACtD,mCAIiB;AAEjB,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;IACnB,gDAAyB,CAAA;IACzB,sCAAe,CAAA;IACf,kDAA2B,CAAA;IAC3B,gDAAyB,CAAA;AAC3B,CAAC,EATW,mBAAmB,mCAAnB,mBAAmB,QAS9B;AAED,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,sCAAmB,CAAA;IACnB,4CAAyB,CAAA;AAC3B,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B;AACD,MAAa,sBAAsB;CAGlC;AAHD,wDAGC;AADC;IADC,IAAA,0BAAQ,GAAE;;oDACE;AAGf,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,oCAAmB,CAAA;AACrB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED,MAAa,0BAA0B;CActC;AAdD,gEAcC;AAVC;IADC,IAAA,wBAAM,EAAC,qBAAa,CAAC;;iEACO;AAG7B;IADC,IAAA,wBAAM,GAAE;;0DACM;AAGf;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC;8BACzB,sBAAsB;0EAAC;AAG/C;IADC,IAAA,wBAAM,EAAC,aAAa,CAAC;;wDACF;AAGtB,MAAa,qBAAsB,SAAQ,0BAA0B;CASpE;AATD,sDASC;AAPC;IADC,IAAA,wBAAM,EAAC,aAAa,CAAC;;mDACG;AAGzB;IADC,IAAA,wBAAM,GAAE;;qDACM;AAGf;IADC,IAAA,wBAAM,GAAE;;4DACa;AAGxB,MAAa,wBAAyB,SAAQ,0BAA0B;CAGvE;AAHD,4DAGC;AADC;IADC,IAAA,wBAAM,EAAC,aAAa,CAAC;;sDACM;AAY9B,MAAa,iBAAiB;CAgB7B;AAhBD,8CAgBC;AAdC;IADC,IAAA,wBAAM,GAAE;;6CACE;AAGX;IADC,IAAA,wBAAM,EAAC,mBAAmB,CAAC;;iDACA;AAG5B;IADC,IAAA,0BAAQ,GAAE;;oDACO;AAIlB;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;oDACM;AAGnB;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,mCAA2B,CAAC;8BAC3C,mCAA2B;mDAAC;AAGzC,MAAa,oBAAqB,SAAQ,iBAAiB;CAAG;AAA9D,oDAA8D;AAE9D,MAAa,iBAAkB,SAAQ,iBAAiB;CAIvD;AAJD,8CAIC;AADC;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;4DACc;AAgB7B,MAAa,SAAS;CAOrB;AAPD,8BAOC"}
|
package/package.json
CHANGED
package/src/v2/types/pools.ts
CHANGED
package/src/v3/types/pools.ts
CHANGED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
2
|
-
import { CloudResourceContext } from "../contexts/cloud-resource-context";
|
|
3
|
-
import { AWSResourceProviderSettings, CloudResourceStatus } from "../types";
|
|
4
|
-
export declare class GameStatusChangedEventPayload {
|
|
5
|
-
gameResourceId: string;
|
|
6
|
-
gamePoolId: string;
|
|
7
|
-
providerSettings: AWSResourceProviderSettings;
|
|
8
|
-
status: CloudResourceStatus;
|
|
9
|
-
error?: string;
|
|
10
|
-
}
|
|
11
|
-
export declare class GameStatusChangedEvent extends LudeoEvent {
|
|
12
|
-
static readonly EVENT_NAME = "cloud-resource-monitor.game-status-changed";
|
|
13
|
-
constructor(payload: GameStatusChangedEventPayload, context: CloudResourceContext);
|
|
14
|
-
context: CloudResourceContext;
|
|
15
|
-
payload: GameStatusChangedEventPayload;
|
|
16
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.GameStatusChangedEvent = exports.GameStatusChangedEventPayload = void 0;
|
|
13
|
-
const class_validator_1 = require("class-validator");
|
|
14
|
-
const ludeo_event_1 = require("../../infra/ludeo-event");
|
|
15
|
-
const cloud_resource_context_1 = require("../contexts/cloud-resource-context");
|
|
16
|
-
const types_1 = require("../types");
|
|
17
|
-
const validate_nested_type_decorator_1 = require("../../decorators/validate-nested-type.decorator");
|
|
18
|
-
class GameStatusChangedEventPayload {
|
|
19
|
-
}
|
|
20
|
-
exports.GameStatusChangedEventPayload = GameStatusChangedEventPayload;
|
|
21
|
-
__decorate([
|
|
22
|
-
(0, class_validator_1.IsUUID)(),
|
|
23
|
-
__metadata("design:type", String)
|
|
24
|
-
], GameStatusChangedEventPayload.prototype, "gameResourceId", void 0);
|
|
25
|
-
__decorate([
|
|
26
|
-
(0, class_validator_1.IsUUID)(),
|
|
27
|
-
__metadata("design:type", String)
|
|
28
|
-
], GameStatusChangedEventPayload.prototype, "gamePoolId", void 0);
|
|
29
|
-
__decorate([
|
|
30
|
-
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => types_1.AWSResourceProviderSettings),
|
|
31
|
-
__metadata("design:type", types_1.AWSResourceProviderSettings)
|
|
32
|
-
], GameStatusChangedEventPayload.prototype, "providerSettings", void 0);
|
|
33
|
-
__decorate([
|
|
34
|
-
(0, class_validator_1.IsString)(),
|
|
35
|
-
__metadata("design:type", String)
|
|
36
|
-
], GameStatusChangedEventPayload.prototype, "status", void 0);
|
|
37
|
-
__decorate([
|
|
38
|
-
(0, class_validator_1.IsOptional)(),
|
|
39
|
-
(0, class_validator_1.IsString)(),
|
|
40
|
-
__metadata("design:type", String)
|
|
41
|
-
], GameStatusChangedEventPayload.prototype, "error", void 0);
|
|
42
|
-
class GameStatusChangedEvent extends ludeo_event_1.LudeoEvent {
|
|
43
|
-
constructor(payload, context) {
|
|
44
|
-
super(GameStatusChangedEvent.EVENT_NAME);
|
|
45
|
-
this.payload = payload;
|
|
46
|
-
this.context = context;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.GameStatusChangedEvent = GameStatusChangedEvent;
|
|
50
|
-
GameStatusChangedEvent.EVENT_NAME = "cloud-resource-monitor.game-status-changed";
|
|
51
|
-
__decorate([
|
|
52
|
-
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => cloud_resource_context_1.CloudResourceContext),
|
|
53
|
-
__metadata("design:type", cloud_resource_context_1.CloudResourceContext)
|
|
54
|
-
], GameStatusChangedEvent.prototype, "context", void 0);
|
|
55
|
-
__decorate([
|
|
56
|
-
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => GameStatusChangedEventPayload),
|
|
57
|
-
__metadata("design:type", GameStatusChangedEventPayload)
|
|
58
|
-
], GameStatusChangedEvent.prototype, "payload", void 0);
|
|
59
|
-
//# sourceMappingURL=game-status-changed.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"game-status-changed.js","sourceRoot":"","sources":["../../../src/v3/events/game-status-changed.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA+D;AAC/D,yDAAqD;AACrD,+EAA0E;AAC1E,oCAA4E;AAC5E,oGAAqF;AAErF,MAAa,6BAA6B;CAgBzC;AAhBD,sEAgBC;AAdC;IADC,IAAA,wBAAM,GAAE;;qEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;iEACU;AAGnB;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,mCAA2B,CAAC;8BACpC,mCAA2B;uEAAC;AAG9C;IADC,IAAA,0BAAQ,GAAE;;6DACiB;AAI5B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACI;AAGjB,MAAa,sBAAuB,SAAQ,wBAAU;IAGpD,YACE,OAAsC,EACtC,OAA6B;QAE7B,KAAK,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAVH,wDAiBC;AAhBiB,iCAAU,GAAG,4CAA4C,CAAC;AAY1E;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,6CAAoB,CAAC;8BACtC,6CAAoB;uDAAC;AAG9B;IADC,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC;8BAC/C,6BAA6B;uDAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
2
|
-
import { AWSResourceProviderSettings, CloudProvider } from "../types";
|
|
3
|
-
export declare class MonitorGameTaskEventPayload {
|
|
4
|
-
gameResourceId: string;
|
|
5
|
-
gamePoolId: string;
|
|
6
|
-
providerSettings: AWSResourceProviderSettings;
|
|
7
|
-
cloudProvider: CloudProvider;
|
|
8
|
-
}
|
|
9
|
-
export declare class MonitorGameTaskEvent extends LudeoEvent {
|
|
10
|
-
static readonly EVENT_NAME = "cloud-resources.monitor-game-task";
|
|
11
|
-
constructor(payload: MonitorGameTaskEventPayload);
|
|
12
|
-
context: never;
|
|
13
|
-
payload: MonitorGameTaskEventPayload;
|
|
14
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.MonitorGameTaskEvent = exports.MonitorGameTaskEventPayload = void 0;
|
|
13
|
-
const class_validator_1 = require("class-validator");
|
|
14
|
-
const ludeo_event_1 = require("../../infra/ludeo-event");
|
|
15
|
-
const types_1 = require("../types");
|
|
16
|
-
const decorators_1 = require("../../decorators");
|
|
17
|
-
class MonitorGameTaskEventPayload {
|
|
18
|
-
}
|
|
19
|
-
exports.MonitorGameTaskEventPayload = MonitorGameTaskEventPayload;
|
|
20
|
-
__decorate([
|
|
21
|
-
(0, class_validator_1.IsUUID)(),
|
|
22
|
-
__metadata("design:type", String)
|
|
23
|
-
], MonitorGameTaskEventPayload.prototype, "gameResourceId", void 0);
|
|
24
|
-
__decorate([
|
|
25
|
-
(0, class_validator_1.IsUUID)(),
|
|
26
|
-
__metadata("design:type", String)
|
|
27
|
-
], MonitorGameTaskEventPayload.prototype, "gamePoolId", void 0);
|
|
28
|
-
__decorate([
|
|
29
|
-
(0, decorators_1.ValidateNestedType)(() => types_1.AWSResourceProviderSettings),
|
|
30
|
-
__metadata("design:type", types_1.AWSResourceProviderSettings)
|
|
31
|
-
], MonitorGameTaskEventPayload.prototype, "providerSettings", void 0);
|
|
32
|
-
__decorate([
|
|
33
|
-
(0, class_validator_1.IsEnum)(types_1.CloudProvider),
|
|
34
|
-
__metadata("design:type", String)
|
|
35
|
-
], MonitorGameTaskEventPayload.prototype, "cloudProvider", void 0);
|
|
36
|
-
class MonitorGameTaskEvent extends ludeo_event_1.LudeoEvent {
|
|
37
|
-
constructor(payload) {
|
|
38
|
-
super(MonitorGameTaskEvent.EVENT_NAME);
|
|
39
|
-
this.payload = payload;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
exports.MonitorGameTaskEvent = MonitorGameTaskEvent;
|
|
43
|
-
MonitorGameTaskEvent.EVENT_NAME = "cloud-resources.monitor-game-task";
|
|
44
|
-
__decorate([
|
|
45
|
-
(0, decorators_1.ValidateNestedType)(() => MonitorGameTaskEventPayload),
|
|
46
|
-
__metadata("design:type", MonitorGameTaskEventPayload)
|
|
47
|
-
], MonitorGameTaskEvent.prototype, "payload", void 0);
|
|
48
|
-
//# sourceMappingURL=monitor-game-task.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"monitor-game-task.js","sourceRoot":"","sources":["../../../src/v3/events/monitor-game-task.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAiD;AACjD,yDAAqD;AACrD,oCAAsE;AACtE,iDAAsD;AAEtD,MAAa,2BAA2B;CAYvC;AAZD,kEAYC;AAVC;IADC,IAAA,wBAAM,GAAE;;mEACc;AAGvB;IADC,IAAA,wBAAM,GAAE;;+DACU;AAGnB;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,mCAA2B,CAAC;8BACpC,mCAA2B;qEAAC;AAG9C;IADC,IAAA,wBAAM,EAAC,qBAAa,CAAC;;kEACO;AAG/B,MAAa,oBAAqB,SAAQ,wBAAU;IAGlD,YAAY,OAAoC;QAC9C,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AANH,oDAYC;AAXiB,+BAAU,GAAG,mCAAmC,CAAC;AAUjE;IADC,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC;8BAC7C,2BAA2B;qDAAC"}
|