teeworlds 2.5.10 → 2.5.12
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/README.md +103 -103
- package/index.d.ts +2 -1
- package/index.js +25 -3
- package/index.js.map +1 -1
- package/lib/client.d.ts +23 -4
- package/lib/client.js +131 -54
- package/lib/client.js.map +1 -1
- package/lib/snapshot.d.ts +1 -0
- package/lib/snapshot.js +11 -11
- package/lib/snapshot.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
# Teeworlds Client
|
|
2
|
-
Library to connect a bot to a Teeworlds server.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
# Links
|
|
6
|
-
https://github.com/swarfeya/teeworlds-library-ts/tree/main
|
|
7
|
-
https://www.npmjs.com/package/teeworlds
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
# Documentation
|
|
11
|
-
You can find an documentation to what most components do in the [docs/documentation.md](https://github.com/swarfeya/teeworlds-library-ts/blob/main/docs/documentation.md).
|
|
12
|
-
You can also find a few examples inside of the [docs/examples](https://github.com/swarfeya/teeworlds-library-ts/tree/main/docs/examples) directory.
|
|
13
|
-
|
|
14
|
-
# Projects using this library
|
|
15
|
-
Note: If you have or know any projects running using this library, please contact me so i can add them, or PR them yourself.
|
|
16
|
-
|
|
17
|
-
A discord which is bridging all discord messages and ingame messages (currently closed source): https://discord.gg/MSYcjYvU6e
|
|
18
|
-
|
|
19
|
-
You can find more projects [here](https://github.com/swarfeya/teeworlds-library-ts/blob/main/docs/documentation.md#projects-using-this-library)
|
|
20
|
-
|
|
21
|
-
# Usage
|
|
22
|
-
Example file:
|
|
23
|
-
```js
|
|
24
|
-
const teeworlds = require('teeworlds')
|
|
25
|
-
let client = new teeworlds.Client("127.0.0.1", 8303, "nameless tee");
|
|
26
|
-
|
|
27
|
-
client.connect();
|
|
28
|
-
|
|
29
|
-
client.on("connected", () => {
|
|
30
|
-
console.log("Connected!");
|
|
31
|
-
})
|
|
32
|
-
|
|
33
|
-
client.on("disconnect", reason => {
|
|
34
|
-
// you got kicked from the server
|
|
35
|
-
console.log("Disconnected: " + reason);
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
client.on("message", message => {
|
|
39
|
-
/* {
|
|
40
|
-
team: 0,
|
|
41
|
-
client_id: 14,
|
|
42
|
-
message: 'a',
|
|
43
|
-
author: {
|
|
44
|
-
ClientInfo: {
|
|
45
|
-
name: 'Nudelsaft c:',
|
|
46
|
-
clan: '',
|
|
47
|
-
country: 276,
|
|
48
|
-
skin: 'coala_toptri',
|
|
49
|
-
use_custom_color: 0,
|
|
50
|
-
color_body: 4718592,
|
|
51
|
-
color_feet: 5046016
|
|
52
|
-
},
|
|
53
|
-
PlayerInfo: { local: 0, client_id: 4, team: 0, score: 36, latency: 0 }
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
*/
|
|
57
|
-
console.log(message);
|
|
58
|
-
})
|
|
59
|
-
|
|
60
|
-
client.on("kill", info => {
|
|
61
|
-
/* {
|
|
62
|
-
killer_id: 14,
|
|
63
|
-
victim_id: 14,
|
|
64
|
-
weapon: -3,
|
|
65
|
-
special_mode: 0,
|
|
66
|
-
victim: {
|
|
67
|
-
ClientInfo: {
|
|
68
|
-
name: 'Nudelsaft c:',
|
|
69
|
-
clan: '',
|
|
70
|
-
country: 276,
|
|
71
|
-
skin: 'coala_toptri',
|
|
72
|
-
use_custom_color: 0,
|
|
73
|
-
color_body: 4718592,
|
|
74
|
-
color_feet: 5046016
|
|
75
|
-
},
|
|
76
|
-
PlayerInfo: { local: 0, client_id: 4, team: 0, score: 36, latency: 0 }
|
|
77
|
-
},
|
|
78
|
-
killer: {
|
|
79
|
-
ClientInfo: {
|
|
80
|
-
name: 'Nudelsaft c:',
|
|
81
|
-
clan: '',
|
|
82
|
-
country: 276,
|
|
83
|
-
skin: 'coala_toptri',
|
|
84
|
-
use_custom_color: 0,
|
|
85
|
-
color_body: 4718592,
|
|
86
|
-
color_feet: 5046016
|
|
87
|
-
},
|
|
88
|
-
PlayerInfo: { local: 0, client_id: 4, team: 0, score: 36, latency: 0 }
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
*/
|
|
92
|
-
console.log(info)
|
|
93
|
-
})
|
|
94
|
-
|
|
95
|
-
process.on("SIGINT", () => {
|
|
96
|
-
client.Disconnect().then(() => process.exit(0)); // disconnect on ctrl + c
|
|
97
|
-
// process.exit()
|
|
98
|
-
})
|
|
99
|
-
process.stdin.on("data", data => {
|
|
100
|
-
client.game.Say(data.toString()); // write input in chat
|
|
101
|
-
|
|
102
|
-
})
|
|
103
|
-
```
|
|
1
|
+
# Teeworlds Client
|
|
2
|
+
Library to connect a bot to a Teeworlds server.
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
# Links
|
|
6
|
+
https://github.com/swarfeya/teeworlds-library-ts/tree/main
|
|
7
|
+
https://www.npmjs.com/package/teeworlds
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
# Documentation
|
|
11
|
+
You can find an documentation to what most components do in the [docs/documentation.md](https://github.com/swarfeya/teeworlds-library-ts/blob/main/docs/documentation.md).
|
|
12
|
+
You can also find a few examples inside of the [docs/examples](https://github.com/swarfeya/teeworlds-library-ts/tree/main/docs/examples) directory.
|
|
13
|
+
|
|
14
|
+
# Projects using this library
|
|
15
|
+
Note: If you have or know any projects running using this library, please contact me so i can add them, or PR them yourself.
|
|
16
|
+
|
|
17
|
+
A discord which is bridging all discord messages and ingame messages (currently closed source): https://discord.gg/MSYcjYvU6e
|
|
18
|
+
|
|
19
|
+
You can find more projects [here](https://github.com/swarfeya/teeworlds-library-ts/blob/main/docs/documentation.md#projects-using-this-library)
|
|
20
|
+
|
|
21
|
+
# Usage
|
|
22
|
+
Example file:
|
|
23
|
+
```js
|
|
24
|
+
const teeworlds = require('teeworlds')
|
|
25
|
+
let client = new teeworlds.Client("127.0.0.1", 8303, "nameless tee");
|
|
26
|
+
|
|
27
|
+
client.connect();
|
|
28
|
+
|
|
29
|
+
client.on("connected", () => {
|
|
30
|
+
console.log("Connected!");
|
|
31
|
+
})
|
|
32
|
+
|
|
33
|
+
client.on("disconnect", reason => {
|
|
34
|
+
// you got kicked from the server
|
|
35
|
+
console.log("Disconnected: " + reason);
|
|
36
|
+
})
|
|
37
|
+
|
|
38
|
+
client.on("message", message => {
|
|
39
|
+
/* {
|
|
40
|
+
team: 0,
|
|
41
|
+
client_id: 14,
|
|
42
|
+
message: 'a',
|
|
43
|
+
author: {
|
|
44
|
+
ClientInfo: {
|
|
45
|
+
name: 'Nudelsaft c:',
|
|
46
|
+
clan: '',
|
|
47
|
+
country: 276,
|
|
48
|
+
skin: 'coala_toptri',
|
|
49
|
+
use_custom_color: 0,
|
|
50
|
+
color_body: 4718592,
|
|
51
|
+
color_feet: 5046016
|
|
52
|
+
},
|
|
53
|
+
PlayerInfo: { local: 0, client_id: 4, team: 0, score: 36, latency: 0 }
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
*/
|
|
57
|
+
console.log(message);
|
|
58
|
+
})
|
|
59
|
+
|
|
60
|
+
client.on("kill", info => {
|
|
61
|
+
/* {
|
|
62
|
+
killer_id: 14,
|
|
63
|
+
victim_id: 14,
|
|
64
|
+
weapon: -3,
|
|
65
|
+
special_mode: 0,
|
|
66
|
+
victim: {
|
|
67
|
+
ClientInfo: {
|
|
68
|
+
name: 'Nudelsaft c:',
|
|
69
|
+
clan: '',
|
|
70
|
+
country: 276,
|
|
71
|
+
skin: 'coala_toptri',
|
|
72
|
+
use_custom_color: 0,
|
|
73
|
+
color_body: 4718592,
|
|
74
|
+
color_feet: 5046016
|
|
75
|
+
},
|
|
76
|
+
PlayerInfo: { local: 0, client_id: 4, team: 0, score: 36, latency: 0 }
|
|
77
|
+
},
|
|
78
|
+
killer: {
|
|
79
|
+
ClientInfo: {
|
|
80
|
+
name: 'Nudelsaft c:',
|
|
81
|
+
clan: '',
|
|
82
|
+
country: 276,
|
|
83
|
+
skin: 'coala_toptri',
|
|
84
|
+
use_custom_color: 0,
|
|
85
|
+
color_body: 4718592,
|
|
86
|
+
color_feet: 5046016
|
|
87
|
+
},
|
|
88
|
+
PlayerInfo: { local: 0, client_id: 4, team: 0, score: 36, latency: 0 }
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
*/
|
|
92
|
+
console.log(info)
|
|
93
|
+
})
|
|
94
|
+
|
|
95
|
+
process.on("SIGINT", () => {
|
|
96
|
+
client.Disconnect().then(() => process.exit(0)); // disconnect on ctrl + c
|
|
97
|
+
// process.exit()
|
|
98
|
+
})
|
|
99
|
+
process.stdin.on("data", data => {
|
|
100
|
+
client.game.Say(data.toString()); // write input in chat
|
|
101
|
+
|
|
102
|
+
})
|
|
103
|
+
```
|
package/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export
|
|
1
|
+
export * from "./lib/client";
|
|
2
2
|
export * from "./lib/MsgPacker";
|
|
3
3
|
export * from "./lib/MsgUnpacker";
|
|
4
4
|
export * from "./lib/snapshot";
|
|
5
5
|
export * from "./lib/huffman";
|
|
6
6
|
export * from "./lib/UUIDManager";
|
|
7
|
+
export * as Protocol from "./lib/enums_types/protocol";
|
package/index.js
CHANGED
|
@@ -10,16 +10,38 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
10
10
|
if (k2 === undefined) k2 = k;
|
|
11
11
|
o[k2] = m[k];
|
|
12
12
|
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
13
18
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
19
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
20
|
};
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
16
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
18
|
-
|
|
19
|
-
Object.defineProperty(exports, "Client", { enumerable: true, get: function () { return client_1.Client; } });
|
|
39
|
+
exports.Protocol = void 0;
|
|
40
|
+
__exportStar(require("./lib/client"), exports);
|
|
20
41
|
__exportStar(require("./lib/MsgPacker"), exports);
|
|
21
42
|
__exportStar(require("./lib/MsgUnpacker"), exports);
|
|
22
43
|
__exportStar(require("./lib/snapshot"), exports);
|
|
23
44
|
__exportStar(require("./lib/huffman"), exports);
|
|
24
45
|
__exportStar(require("./lib/UUIDManager"), exports);
|
|
46
|
+
exports.Protocol = __importStar(require("./lib/enums_types/protocol"));
|
|
25
47
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,oDAAkC;AAClC,iDAA+B;AAC/B,gDAA6B;AAC7B,oDAAiC;AACjC,uEAAsD"}
|
package/lib/client.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { MsgPacker } from './MsgPacker';
|
|
|
5
5
|
import { Snapshot } from './snapshot';
|
|
6
6
|
import { Game } from "./components/game";
|
|
7
7
|
import { SnapshotWrapper } from "./components/snapshot";
|
|
8
|
+
import { States } from "./enums_types/protocol";
|
|
8
9
|
import { Rcon } from "./components/rcon";
|
|
9
10
|
declare interface iMessage {
|
|
10
11
|
team: number;
|
|
@@ -37,6 +38,10 @@ declare interface iKillMsg {
|
|
|
37
38
|
weapon: number;
|
|
38
39
|
special_mode: number;
|
|
39
40
|
}
|
|
41
|
+
declare interface iKillMsgTeam {
|
|
42
|
+
team: number;
|
|
43
|
+
first: number;
|
|
44
|
+
}
|
|
40
45
|
declare interface iMapChange {
|
|
41
46
|
map_name: string;
|
|
42
47
|
crc: number;
|
|
@@ -52,17 +57,19 @@ declare interface iOptions {
|
|
|
52
57
|
timeout?: number;
|
|
53
58
|
NET_VERSION?: string;
|
|
54
59
|
lightweight?: boolean;
|
|
60
|
+
timeout_on_connecting?: boolean;
|
|
55
61
|
}
|
|
56
62
|
interface ClientEvents {
|
|
57
63
|
connected: () => void;
|
|
58
64
|
map_change: (message: iMapChange) => void;
|
|
59
|
-
disconnect: (reason: string) => void;
|
|
65
|
+
disconnect: (reason: string, fromServer: boolean) => void;
|
|
60
66
|
emote: (message: iEmoticon) => void;
|
|
61
67
|
message: (message: iMessage) => void;
|
|
62
68
|
broadcast: (message: string) => void;
|
|
63
69
|
kill: (kill: iKillMsg) => void;
|
|
64
70
|
motd: (message: string) => void;
|
|
65
71
|
teams: (teams: Array<number>) => void;
|
|
72
|
+
teamkill: (teamkill: iKillMsgTeam) => void;
|
|
66
73
|
map_details: (message: {
|
|
67
74
|
map_name: string;
|
|
68
75
|
map_sha256: Buffer;
|
|
@@ -86,7 +93,7 @@ export declare class Client extends EventEmitter {
|
|
|
86
93
|
private host;
|
|
87
94
|
private port;
|
|
88
95
|
private name;
|
|
89
|
-
private
|
|
96
|
+
private _State;
|
|
90
97
|
private ack;
|
|
91
98
|
private clientAck;
|
|
92
99
|
private lastCheckedChunkAck;
|
|
@@ -112,8 +119,17 @@ export declare class Client extends EventEmitter {
|
|
|
112
119
|
readonly options?: iOptions;
|
|
113
120
|
private requestResend;
|
|
114
121
|
private UUIDManager;
|
|
122
|
+
private predTimer?;
|
|
123
|
+
private connectInterval?;
|
|
124
|
+
private inputInterval?;
|
|
125
|
+
private resendTimeout?;
|
|
126
|
+
private timeoutChecker?;
|
|
115
127
|
constructor(ip: string, port: number, nickname: string, options?: iOptions);
|
|
116
128
|
private OnEnterGame;
|
|
129
|
+
/** Clear all intervals and timers */
|
|
130
|
+
private clearAllIntervals;
|
|
131
|
+
/** Reset client state for a fresh connection */
|
|
132
|
+
private resetState;
|
|
117
133
|
private ResendAfter;
|
|
118
134
|
private Unpack;
|
|
119
135
|
/** Send a Control Msg to the server. (used for disconnect)*/
|
|
@@ -126,16 +142,19 @@ export declare class Client extends EventEmitter {
|
|
|
126
142
|
SendMsgRaw(chunks: Buffer[]): void;
|
|
127
143
|
private MsgToChunk;
|
|
128
144
|
Flush(): void;
|
|
129
|
-
/** Connect the client to the server.
|
|
145
|
+
/** Connect the client to the server. Throws an error if client.State is equal to teeworlds.Protocol.States.STATE_ONLINE or STATE_CONNECTING.*/
|
|
130
146
|
connect(): Promise<void>;
|
|
131
147
|
/** Sending the input. (automatically done unless options.lightweight is on) */
|
|
132
148
|
sendInput(input?: import("./components/movement").NetObj_PlayerInput): void;
|
|
133
149
|
/** returns the movement object of the client */
|
|
134
150
|
get input(): import("./components/movement").NetObj_PlayerInput;
|
|
135
|
-
/** Disconnect the client. */
|
|
151
|
+
/** Disconnect the client. Throws an error if client.State == teeworlds.Protocol.States.STATE_OFFLINE. */
|
|
152
|
+
private _Disconnect;
|
|
153
|
+
/** Disconnect the client. Throws an error if client.State == teeworlds.Protocol.States.STATE_OFFLINE. */
|
|
136
154
|
Disconnect(): Promise<unknown>;
|
|
137
155
|
/** Get all available vote options (for example for map voting) */
|
|
138
156
|
get VoteOptionList(): string[];
|
|
139
157
|
get rawSnapUnpacker(): Snapshot;
|
|
158
|
+
get State(): States;
|
|
140
159
|
}
|
|
141
160
|
export {};
|
package/lib/client.js
CHANGED
|
@@ -59,7 +59,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
59
59
|
this.snaps = [];
|
|
60
60
|
this.sentChunkQueue = [];
|
|
61
61
|
this.queueChunkEx = [];
|
|
62
|
-
this.
|
|
62
|
+
this._State = protocol_1.States.STATE_OFFLINE; // 0 = offline; 1 = STATE_CONNECTING = 1, STATE_LOADING = 2, STATE_ONLINE = 3
|
|
63
63
|
this.ack = 0; // ack of messages the client has received
|
|
64
64
|
this.clientAck = 0; // ack of messages the client has sent
|
|
65
65
|
this.lastCheckedChunkAck = 0; // this.ack gets reset to this when flushing - used for resetting tick on e.g. map change
|
|
@@ -95,6 +95,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
95
95
|
this.UUIDManager.RegisterName("sv-maplist-add@ddnet.org", 65553 /* NETMSG.System.NETMSG_MAPLIST_ADD */); // not implemented
|
|
96
96
|
this.UUIDManager.RegisterName("sv-maplist-start@ddnet.org", 65554 /* NETMSG.System.NETMSG_MAPLIST_GROUP_START */); // not implemented
|
|
97
97
|
this.UUIDManager.RegisterName("sv-maplist-end@ddnet.org", 65555 /* NETMSG.System.NETMSG_MAPLIST_GROUP_END */); // not implemented
|
|
98
|
+
this.UUIDManager.RegisterName("killmsgteam@netmsg.ddnet.tw", 65581 /* NETMSG.UUID.SV_KILLMSGTEAM */);
|
|
98
99
|
this.UUIDManager.RegisterName("teamsstate@netmsg.ddnet.tw", 65578 /* NETMSG.UUID.SV_TEAMSSTATE */);
|
|
99
100
|
this.UUIDManager.RegisterName("i-am-npm-package@swarfey.gitlab.io", 65556 /* NETMSG.System.NETMSG_I_AM_NPM_PACKAGE */);
|
|
100
101
|
}
|
|
@@ -108,6 +109,52 @@ class Client extends stream_1.EventEmitter {
|
|
|
108
109
|
this.AckGameTick = -1;
|
|
109
110
|
this.PredGameTick = 0;
|
|
110
111
|
}
|
|
112
|
+
/** Clear all intervals and timers */
|
|
113
|
+
clearAllIntervals() {
|
|
114
|
+
if (this.predTimer) {
|
|
115
|
+
clearInterval(this.predTimer);
|
|
116
|
+
this.predTimer = undefined;
|
|
117
|
+
}
|
|
118
|
+
if (this.connectInterval) {
|
|
119
|
+
clearInterval(this.connectInterval);
|
|
120
|
+
this.connectInterval = undefined;
|
|
121
|
+
}
|
|
122
|
+
if (this.inputInterval) {
|
|
123
|
+
clearInterval(this.inputInterval);
|
|
124
|
+
this.inputInterval = undefined;
|
|
125
|
+
}
|
|
126
|
+
if (this.resendTimeout) {
|
|
127
|
+
clearInterval(this.resendTimeout);
|
|
128
|
+
this.resendTimeout = undefined;
|
|
129
|
+
}
|
|
130
|
+
if (this.timeoutChecker) {
|
|
131
|
+
clearInterval(this.timeoutChecker);
|
|
132
|
+
this.timeoutChecker = undefined;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/** Reset client state for a fresh connection */
|
|
136
|
+
resetState() {
|
|
137
|
+
this.ack = 0;
|
|
138
|
+
this.clientAck = 0;
|
|
139
|
+
this.lastCheckedChunkAck = 0;
|
|
140
|
+
this.receivedSnaps = 0;
|
|
141
|
+
this.AckGameTick = 0;
|
|
142
|
+
this.PredGameTick = 0;
|
|
143
|
+
this.currentSnapshotGameTick = 0;
|
|
144
|
+
this.SnapshotParts = 0;
|
|
145
|
+
this.snaps = [];
|
|
146
|
+
this.sentChunkQueue = [];
|
|
147
|
+
this.queueChunkEx = [];
|
|
148
|
+
this.lastSentMessages = [];
|
|
149
|
+
this.VoteList = [];
|
|
150
|
+
this.requestResend = false;
|
|
151
|
+
this.TKEN = Buffer.from([255, 255, 255, 255]);
|
|
152
|
+
this.time = new Date().getTime() + 2000;
|
|
153
|
+
this.lastSendTime = new Date().getTime();
|
|
154
|
+
this.lastRecvTime = new Date().getTime();
|
|
155
|
+
this.SnapUnpacker = new snapshot_1.Snapshot(this);
|
|
156
|
+
this.SnapshotUnpacker = new snapshot_2.SnapshotWrapper(this);
|
|
157
|
+
}
|
|
111
158
|
ResendAfter(lastAck) {
|
|
112
159
|
this.clientAck = lastAck;
|
|
113
160
|
let toResend = [];
|
|
@@ -180,7 +227,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
180
227
|
}
|
|
181
228
|
/** Send a Msg (or Msg[]) to the server.*/
|
|
182
229
|
SendMsgEx(Msgs, flags = 0) {
|
|
183
|
-
if (this.
|
|
230
|
+
if (this._State == protocol_1.States.STATE_OFFLINE)
|
|
184
231
|
return;
|
|
185
232
|
if (!this.socket)
|
|
186
233
|
return;
|
|
@@ -256,7 +303,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
256
303
|
}
|
|
257
304
|
/** Send a Raw Buffer (as chunk) to the server. */
|
|
258
305
|
SendMsgRaw(chunks) {
|
|
259
|
-
if (this.
|
|
306
|
+
if (this._State == protocol_1.States.STATE_OFFLINE)
|
|
260
307
|
return;
|
|
261
308
|
if (!this.socket)
|
|
262
309
|
return;
|
|
@@ -299,10 +346,25 @@ class Client extends stream_1.EventEmitter {
|
|
|
299
346
|
this.queueChunkEx = [];
|
|
300
347
|
this.ack = this.lastCheckedChunkAck;
|
|
301
348
|
}
|
|
302
|
-
/** Connect the client to the server.
|
|
349
|
+
/** Connect the client to the server. Throws an error if client.State is equal to teeworlds.Protocol.States.STATE_ONLINE or STATE_CONNECTING.*/
|
|
303
350
|
connect() {
|
|
304
351
|
return __awaiter(this, void 0, void 0, function* () {
|
|
305
352
|
var _a;
|
|
353
|
+
if (this._State == protocol_1.States.STATE_CONNECTING || this._State == protocol_1.States.STATE_ONLINE) {
|
|
354
|
+
throw new Error(`The client is already ${this._State == protocol_1.States.STATE_CONNECTING ? "connecting" : "connected"}.`);
|
|
355
|
+
}
|
|
356
|
+
// Clean up any existing connection state
|
|
357
|
+
this.clearAllIntervals();
|
|
358
|
+
this.resetState();
|
|
359
|
+
// Recreate socket if it was closed
|
|
360
|
+
if (!this.socket) {
|
|
361
|
+
this.socket = dgram_1.default.createSocket("udp4");
|
|
362
|
+
this.socket.bind();
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
365
|
+
// Remove old listeners to prevent duplicates
|
|
366
|
+
this.socket.removeAllListeners("message");
|
|
367
|
+
}
|
|
306
368
|
// test via regex whether or not this.host is a domain or an ip
|
|
307
369
|
// if not, resolve it
|
|
308
370
|
if (!this.host.match(/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/)) {
|
|
@@ -312,66 +374,61 @@ class Client extends stream_1.EventEmitter {
|
|
|
312
374
|
this.host = address;
|
|
313
375
|
});
|
|
314
376
|
}
|
|
315
|
-
this.
|
|
316
|
-
|
|
317
|
-
if (this.
|
|
377
|
+
this._State = protocol_1.States.STATE_CONNECTING;
|
|
378
|
+
this.predTimer = setInterval(() => {
|
|
379
|
+
if (this._State == protocol_1.States.STATE_ONLINE) {
|
|
318
380
|
if (this.AckGameTick > 0)
|
|
319
381
|
this.PredGameTick++;
|
|
320
382
|
}
|
|
321
|
-
else if (this.State == protocol_1.States.STATE_OFFLINE)
|
|
322
|
-
clearInterval(predTimer);
|
|
323
383
|
}, 1000 / 50); // 50 ticks per second
|
|
324
384
|
this.SendControlMsg(1, "TKEN");
|
|
325
|
-
|
|
326
|
-
if (this.
|
|
385
|
+
this.connectInterval = setInterval(() => {
|
|
386
|
+
if (this._State == protocol_1.States.STATE_CONNECTING)
|
|
327
387
|
this.SendControlMsg(1, "TKEN");
|
|
328
|
-
else
|
|
329
|
-
clearInterval(connectInterval);
|
|
388
|
+
else if (this.connectInterval) {
|
|
389
|
+
clearInterval(this.connectInterval);
|
|
390
|
+
this.connectInterval = undefined;
|
|
391
|
+
}
|
|
330
392
|
}, 500);
|
|
331
|
-
let inputInterval;
|
|
332
393
|
if (!((_a = this.options) === null || _a === void 0 ? void 0 : _a.lightweight)) {
|
|
333
|
-
inputInterval = setInterval(() => {
|
|
334
|
-
if (this.
|
|
335
|
-
clearInterval(inputInterval);
|
|
336
|
-
// console.log("???");
|
|
337
|
-
}
|
|
338
|
-
if (this.State != protocol_1.States.STATE_ONLINE)
|
|
394
|
+
this.inputInterval = setInterval(() => {
|
|
395
|
+
if (this._State != protocol_1.States.STATE_ONLINE)
|
|
339
396
|
return;
|
|
340
397
|
this.time = new Date().getTime();
|
|
341
398
|
this.sendInput();
|
|
342
399
|
}, 50);
|
|
343
400
|
}
|
|
344
|
-
|
|
345
|
-
if (this.
|
|
401
|
+
this.resendTimeout = setInterval(() => {
|
|
402
|
+
if (this._State != protocol_1.States.STATE_OFFLINE) {
|
|
346
403
|
if (((new Date().getTime()) - this.lastSendTime) > 900 && this.sentChunkQueue.length > 0) {
|
|
347
404
|
this.SendMsgRaw([this.sentChunkQueue[0]]);
|
|
348
405
|
}
|
|
349
406
|
}
|
|
350
|
-
else
|
|
351
|
-
clearInterval(resendTimeout);
|
|
352
407
|
}, 1000);
|
|
353
|
-
|
|
354
|
-
var _a;
|
|
408
|
+
this.timeoutChecker = setInterval(() => {
|
|
409
|
+
var _a, _b;
|
|
355
410
|
let timeoutTime = ((_a = this.options) === null || _a === void 0 ? void 0 : _a.timeout) ? this.options.timeout : 15000;
|
|
356
411
|
if ((new Date().getTime() - this.lastRecvTime) > timeoutTime) {
|
|
357
|
-
this.
|
|
358
|
-
|
|
359
|
-
|
|
412
|
+
if (((_b = this.options) === null || _b === void 0 ? void 0 : _b.timeout_on_connecting) && this._State == protocol_1.States.STATE_CONNECTING) {
|
|
413
|
+
this.clearAllIntervals();
|
|
414
|
+
}
|
|
415
|
+
this._State = protocol_1.States.STATE_OFFLINE;
|
|
416
|
+
this.emit("disconnect", "Timed Out. (no packets received for " + (new Date().getTime() - this.lastRecvTime) + "ms)", false);
|
|
360
417
|
}
|
|
361
418
|
}, 5000);
|
|
362
419
|
this.time = new Date().getTime() + 2000; // start sending keepalives after 2s
|
|
363
420
|
if (this.socket)
|
|
364
421
|
this.socket.on("message", (packet, rinfo) => {
|
|
365
422
|
var _a, _b, _c, _d, _e, _f;
|
|
366
|
-
if (this.
|
|
423
|
+
if (this._State == protocol_1.States.STATE_OFFLINE || rinfo.address != this.host || rinfo.port != this.port)
|
|
367
424
|
return;
|
|
368
|
-
clearInterval(connectInterval);
|
|
425
|
+
clearInterval(this.connectInterval);
|
|
369
426
|
if (packet[0] == 0x10) {
|
|
370
427
|
if (packet.toString().includes("TKEN") || packet[3] == 0x2) {
|
|
371
|
-
clearInterval(connectInterval);
|
|
428
|
+
clearInterval(this.connectInterval);
|
|
372
429
|
this.TKEN = packet.slice(-4);
|
|
373
430
|
this.SendControlMsg(3);
|
|
374
|
-
this.
|
|
431
|
+
this._State = protocol_1.States.STATE_LOADING; // loading state
|
|
375
432
|
this.receivedSnaps = 0;
|
|
376
433
|
var info = new MsgPacker_1.MsgPacker(1, true, 1);
|
|
377
434
|
info.AddString(((_a = this.options) === null || _a === void 0 ? void 0 : _a.NET_VERSION) ? this.options.NET_VERSION : "0.6 626fce9a778df4d4");
|
|
@@ -395,9 +452,9 @@ class Client extends stream_1.EventEmitter {
|
|
|
395
452
|
}
|
|
396
453
|
else if (packet[3] == 0x4) {
|
|
397
454
|
// disconnected
|
|
398
|
-
this.
|
|
455
|
+
this._State = protocol_1.States.STATE_OFFLINE;
|
|
399
456
|
let reason = ((0, MsgUnpacker_1.unpackString)(packet.slice(4)).result);
|
|
400
|
-
this.emit("disconnect", reason);
|
|
457
|
+
this.emit("disconnect", reason, true);
|
|
401
458
|
}
|
|
402
459
|
if (packet[3] !== 0x0) { // keepalive
|
|
403
460
|
this.lastRecvTime = new Date().getTime();
|
|
@@ -417,7 +474,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
417
474
|
}
|
|
418
475
|
});
|
|
419
476
|
unpacked.chunks.forEach(chunk => {
|
|
420
|
-
var _a
|
|
477
|
+
var _a;
|
|
421
478
|
if (!(((chunk.flags & 2) && (chunk.flags & 1)) ? chunk.seq > this.ack : true))
|
|
422
479
|
return; // filter out already received chunks
|
|
423
480
|
if (chunk.flags & 1 && (chunk.flags !== 15)) { // vital and not connless
|
|
@@ -489,9 +546,9 @@ class Client extends stream_1.EventEmitter {
|
|
|
489
546
|
if (chunk.msgid >= 5 /* NETMSG.System.NETMSG_SNAP */ && chunk.msgid <= 7 /* NETMSG.System.NETMSG_SNAPSINGLE */) {
|
|
490
547
|
this.receivedSnaps++; /* wait for 2 ss before seeing self as connected */
|
|
491
548
|
if (this.receivedSnaps == 2) {
|
|
492
|
-
if (this.
|
|
549
|
+
if (this._State != protocol_1.States.STATE_ONLINE)
|
|
493
550
|
this.emit('connected');
|
|
494
|
-
this.
|
|
551
|
+
this._State = protocol_1.States.STATE_ONLINE;
|
|
495
552
|
}
|
|
496
553
|
if (Math.abs(this.PredGameTick - this.AckGameTick) > 10)
|
|
497
554
|
this.PredGameTick = this.AckGameTick + 1;
|
|
@@ -608,13 +665,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
608
665
|
this.SendMsgEx(packer, 2);
|
|
609
666
|
}
|
|
610
667
|
else if (chunk.msgid == 65552 /* NETMSG.System.NETMSG_RECONNECT */) {
|
|
611
|
-
this.
|
|
612
|
-
clearInterval(predTimer);
|
|
613
|
-
clearInterval(inputInterval);
|
|
614
|
-
clearInterval(resendTimeout);
|
|
615
|
-
clearInterval(Timeout);
|
|
616
|
-
(_b = this.socket) === null || _b === void 0 ? void 0 : _b.removeAllListeners("message");
|
|
617
|
-
this.connect();
|
|
668
|
+
this._Disconnect(false).then(() => this.connect());
|
|
618
669
|
return;
|
|
619
670
|
}
|
|
620
671
|
}
|
|
@@ -703,6 +754,13 @@ class Client extends stream_1.EventEmitter {
|
|
|
703
754
|
const teams = Array.from({ length: 64 }).map(() => unpacker.unpackInt());
|
|
704
755
|
this.emit("teams", teams);
|
|
705
756
|
}
|
|
757
|
+
else if (chunk.msgid == 65581 /* NETMSG.UUID.SV_KILLMSGTEAM */) {
|
|
758
|
+
let unpacked = {};
|
|
759
|
+
let unpacker = new MsgUnpacker_1.MsgUnpacker(chunk.raw);
|
|
760
|
+
unpacked.team = unpacker.unpackInt();
|
|
761
|
+
unpacked.first = unpacker.unpackInt();
|
|
762
|
+
this.emit("teamkill", unpacked);
|
|
763
|
+
}
|
|
706
764
|
// packets neccessary for connection
|
|
707
765
|
// https://ddnet.org/docs/libtw2/connection/
|
|
708
766
|
if (chunk.msgid == 8 /* NETMSG.Game.SV_READYTOENTER */) {
|
|
@@ -712,7 +770,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
712
770
|
}
|
|
713
771
|
}
|
|
714
772
|
});
|
|
715
|
-
if (this.
|
|
773
|
+
if (this._State == protocol_1.States.STATE_ONLINE) {
|
|
716
774
|
if (new Date().getTime() - this.time >= 500) {
|
|
717
775
|
this.Flush();
|
|
718
776
|
}
|
|
@@ -726,7 +784,7 @@ class Client extends stream_1.EventEmitter {
|
|
|
726
784
|
}
|
|
727
785
|
/** Sending the input. (automatically done unless options.lightweight is on) */
|
|
728
786
|
sendInput(input = this.movement.input) {
|
|
729
|
-
if (this.
|
|
787
|
+
if (this._State != protocol_1.States.STATE_ONLINE)
|
|
730
788
|
return;
|
|
731
789
|
let inputMsg = new MsgPacker_1.MsgPacker(16, true, 0);
|
|
732
790
|
inputMsg.AddInt(this.AckGameTick);
|
|
@@ -748,15 +806,31 @@ class Client extends stream_1.EventEmitter {
|
|
|
748
806
|
get input() {
|
|
749
807
|
return this.movement.input;
|
|
750
808
|
}
|
|
751
|
-
/** Disconnect the client. */
|
|
752
|
-
|
|
753
|
-
return new Promise((resolve) => {
|
|
809
|
+
/** Disconnect the client. Throws an error if client.State == teeworlds.Protocol.States.STATE_OFFLINE. */
|
|
810
|
+
_Disconnect(closeSocket = true) {
|
|
811
|
+
return new Promise((resolve, reject) => {
|
|
812
|
+
if (this._State == protocol_1.States.STATE_OFFLINE) {
|
|
813
|
+
reject("The client is already offline.");
|
|
814
|
+
}
|
|
815
|
+
this.clearAllIntervals();
|
|
816
|
+
this._State = protocol_1.States.STATE_OFFLINE;
|
|
754
817
|
this.SendControlMsg(4).then(() => {
|
|
755
|
-
|
|
756
|
-
|
|
818
|
+
if (closeSocket && this.socket) {
|
|
819
|
+
this.socket.removeAllListeners("message");
|
|
757
820
|
this.socket.close();
|
|
758
|
-
|
|
759
|
-
|
|
821
|
+
this.socket = undefined;
|
|
822
|
+
}
|
|
823
|
+
resolve(true);
|
|
824
|
+
});
|
|
825
|
+
});
|
|
826
|
+
}
|
|
827
|
+
/** Disconnect the client. Throws an error if client.State == teeworlds.Protocol.States.STATE_OFFLINE. */
|
|
828
|
+
Disconnect() {
|
|
829
|
+
return new Promise((resolve, reject) => {
|
|
830
|
+
this._Disconnect(true)
|
|
831
|
+
.then(() => {
|
|
832
|
+
this.emit("disconnect", "", false);
|
|
833
|
+
resolve(true);
|
|
760
834
|
});
|
|
761
835
|
});
|
|
762
836
|
}
|
|
@@ -767,6 +841,9 @@ class Client extends stream_1.EventEmitter {
|
|
|
767
841
|
get rawSnapUnpacker() {
|
|
768
842
|
return this.SnapUnpacker;
|
|
769
843
|
}
|
|
844
|
+
get State() {
|
|
845
|
+
return this._State;
|
|
846
|
+
}
|
|
770
847
|
}
|
|
771
848
|
exports.Client = Client;
|
|
772
849
|
//# sourceMappingURL=client.js.map
|
package/lib/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../lib/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../lib/client.ts"],"names":[],"mappings":"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"}
|
package/lib/snapshot.d.ts
CHANGED
package/lib/snapshot.js
CHANGED
|
@@ -74,21 +74,21 @@ var items;
|
|
|
74
74
|
items[items["EVENT_SOUND_WORLD"] = 19] = "EVENT_SOUND_WORLD";
|
|
75
75
|
items[items["EVENT_DAMAGE_INDICATOR"] = 20] = "EVENT_DAMAGE_INDICATOR";
|
|
76
76
|
})(items || (exports.items = items = {}));
|
|
77
|
-
// https://github.com/ddnet/ddnet/blob/571b0b36de83d18f2524ee371fc3223d04b94135/datasrc/network.py#L236
|
|
78
|
-
let supported_uuids = [
|
|
79
|
-
"my-own-object@heinrich5991.de",
|
|
80
|
-
"character@netobj.ddnet.tw", // validate_size=False
|
|
81
|
-
"player@netobj.ddnet.tw",
|
|
82
|
-
"gameinfo@netobj.ddnet.tw", // validate_size=False
|
|
83
|
-
"projectile@netobj.ddnet.tw",
|
|
84
|
-
"laser@netobj.ddnet.tw",
|
|
85
|
-
];
|
|
86
77
|
class Snapshot {
|
|
87
78
|
constructor(_client) {
|
|
88
79
|
this.deltas = [];
|
|
89
80
|
this.eSnapHolder = [];
|
|
90
81
|
this.crc_errors = 0;
|
|
91
82
|
this.uuid_manager = new UUIDManager_1.UUIDManager(32767, true); // snapshot max_type
|
|
83
|
+
// https://github.com/ddnet/ddnet/blob/571b0b36de83d18f2524ee371fc3223d04b94135/datasrc/network.py#L236
|
|
84
|
+
this.supported_uuids = [
|
|
85
|
+
"my-own-object@heinrich5991.de",
|
|
86
|
+
"character@netobj.ddnet.tw", // validate_size=False
|
|
87
|
+
"player@netobj.ddnet.tw",
|
|
88
|
+
"gameinfo@netobj.ddnet.tw", // validate_size=False
|
|
89
|
+
"projectile@netobj.ddnet.tw",
|
|
90
|
+
"laser@netobj.ddnet.tw",
|
|
91
|
+
];
|
|
92
92
|
this.client = _client;
|
|
93
93
|
}
|
|
94
94
|
IntsToStr(pInts) {
|
|
@@ -521,11 +521,11 @@ class Snapshot {
|
|
|
521
521
|
let test2 = (ints) => ints.map(a => test(a)).flat();
|
|
522
522
|
let targetUUID = Buffer.from(test2(data));
|
|
523
523
|
if (!this.uuid_manager.LookupType(id)) {
|
|
524
|
-
supported_uuids.forEach((a, i) => {
|
|
524
|
+
this.supported_uuids.forEach((a, i) => {
|
|
525
525
|
let uuid = (0, UUIDManager_1.createTwMD5Hash)(a);
|
|
526
526
|
if (targetUUID.compare(uuid) == 0) {
|
|
527
527
|
this.uuid_manager.RegisterName(a, id);
|
|
528
|
-
supported_uuids.splice(i, 1);
|
|
528
|
+
this.supported_uuids.splice(i, 1);
|
|
529
529
|
}
|
|
530
530
|
});
|
|
531
531
|
}
|
package/lib/snapshot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../lib/snapshot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../lib/snapshot.ts"],"names":[],"mappings":";;;AAAA,+CAA6D;AAE7D,+CAA4C;AAE5C,IAAI,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;AAEvC,MAAM,eAAe,GAA0D;IAC9E,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAC;IAC3C,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAC;IACtD,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAC;IACnD,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAC;IAC9C,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAC;IAC/C,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAC;IAC7C,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,EAAC;IAClD,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,EAAC;IAClD,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAC;IACxD,EAAC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,eAAe,EAAC;IACnD,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAC;IACrD,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAC;IACtD,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAC;IACxD,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAC,EAAE,eAAe;IAC7D,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAC,EAAE,kBAAkB;IACnE,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAC,EAAE,cAAc;IAC3D,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAC,EAAE,kBAAkB;IACnE,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAC,EAAE,cAAc;IAC3D,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,cAAc,EAAC,EAAE,qBAAqB;IACzE,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAC,EAAE,oBAAoB;IACvE,EAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAC,CAAC,yBAAyB;CAChF,CAAA;AACD,MAAM,YAAY,GAAa;IAC9B,CAAC;IACD,EAAE;IACF,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,EAAE;IACF,EAAE;IACF,CAAC;IACD,EAAE;IACF,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;IACD,CAAC;CACD,CAAA;AAED,IAAY,KAsBX;AAtBD,WAAY,KAAK;IAChB,qCAAM,CAAA;IACN,yDAAgB,CAAA;IAChB,qDAAc,CAAA;IACd,2CAAS,CAAA;IACT,6CAAU,CAAA;IACV,yCAAQ,CAAA;IACR,mDAAa,CAAA;IACb,mDAAa,CAAA;IACb,6DAAkB,CAAA;IAClB,mDAAa,CAAA;IACb,wDAAe,CAAA;IACf,wDAAe,CAAA;IACf,8DAAkB,CAAA;IAClB,kDAAY,CAAA;IACZ,wDAAe,CAAA;IACf,gDAAW,CAAA;IACX,wDAAe,CAAA;IACf,gDAAW,CAAA;IACX,8DAAkB,CAAA;IAClB,4DAAiB,CAAA;IACjB,sEAAsB,CAAA;AACvB,CAAC,EAtBW,KAAK,qBAAL,KAAK,QAsBhB;AAOD,MAAa,QAAQ;IAiBpB,YAAY,OAAe;QAhB3B,WAAM,GAAgB,EAAE,CAAC;QACzB,gBAAW,GAAY,EAAE,CAAC;QAC1B,eAAU,GAAW,CAAC,CAAC;QAEvB,iBAAY,GAAgB,IAAI,yBAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB;QAE9E,uGAAuG;QACvG,oBAAe,GAAG;YACjB,+BAA+B;YAC/B,2BAA2B,EAAE,sBAAsB;YACnD,wBAAwB;YACxB,0BAA0B,EAAE,sBAAsB;YAClD,4BAA4B;YAC5B,uBAAuB;SACvB,CAAA;QAGA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;IACvB,CAAC;IAEO,SAAS,CAAC,KAAe;QAChC,IAAI,KAAK,GAAa,EAAE,CAAC;QACzB,gBAAgB;QAChB,KAAK,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;YACrB,2DAA2D;YAC3D,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACvC,2DAA2D;YAC3D,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACvC,0DAA0D;YAC1D,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACtC,mDAAmD;YACnD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAChC,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACnB,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAE9C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,8CAA8C;QACnF,OAAO,IAAI,CAAC;IACb,CAAC;IACO,SAAS,CAAC,IAAc,EAAE,IAAY,EAAE,EAAU;;QACzD,IAAI,KAAK,GAAG,EAAsB,CAAC;QACnC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC,mBAAmB;YACxC,IAAI,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,0CAAE,IAAI,KAAI,+BAA+B,EAAE,CAAC;gBACjF,KAAK,GAAG;oBACP,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;iBACkB,CAAC;YACpC,CAAC;iBAAM,IAAI,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,0CAAE,IAAI,KAAI,2BAA2B,EAAE,CAAC;gBACpF,KAAK,GAAG;oBACP,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;oBACpB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;oBACzB,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;oBAEvB,+DAA+D;oBAC/D,iEAAiE;oBACjE,aAAa,EAAE,MAAA,IAAI,CAAC,CAAC,CAAC,mCAAI,IAAI;oBAC9B,qBAAqB,EAAE,MAAA,IAAI,CAAC,CAAC,CAAC,mCAAI,IAAI;oBACtC,aAAa,EAAE,MAAA,IAAI,CAAC,CAAC,CAAC,mCAAI,IAAI;oBAC9B,iDAAiD;oBACjD,SAAS,EAAE,MAAA,IAAI,CAAC,CAAC,CAAC,mCAAI,IAAI;oBAC1B,SAAS,EAAE,MAAA,IAAI,CAAC,CAAC,CAAC,mCAAI,IAAI;oBAC1B,EAAE,EAAE,EAAE;iBAE8B,CAAC;YACvC,CAAC;iBACI,IAAI,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,0CAAE,IAAI,KAAI,wBAAwB,EAAE,CAAC;gBAC/E,KAAK,GAAG;oBACP,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;oBACpB,EAAE,EAAE,EAAE;iBAC2B,CAAA;YACnC,CAAC;iBACI,IAAI,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,0CAAE,IAAI,KAAI,0BAA0B,EAAE,CAAC;gBACjF,KAAK,GAAG;oBACP,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;iBACe,CAAA;YAClC,CAAC;iBACI,IAAI,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,0CAAE,IAAI,KAAI,4BAA4B,EAAE,CAAC;gBACnF,KAAK,GAAG;oBACP,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;oBACZ,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;oBACZ,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACf,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACf,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;iBACiB,CAAA;YACvC,CAAC;iBACI,IAAI,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,0CAAE,IAAI,KAAI,uBAAuB,EAAE,CAAC;gBAC9E,KAAK,GAAG;oBACP,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;iBACiB,CAAA;YAClC,CAAC;YACD,OAAO,KAAK,CAAC;QACd,CAAC;QACD,QAAQ,IAAI,EAAE,CAAC;YACd,KAAK,KAAK,CAAC,MAAM;gBAChB,MAAM;YACP,KAAK,KAAK,CAAC,gBAAgB;gBAC1B,KAAK,GAAG;oBACP,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;oBACjB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;oBACjB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACb,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACb,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACb,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;oBACrB,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;oBACtB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;oBACpB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;iBACa,CAAA;gBAClC,MAAM;YACP,KAAK,KAAK,CAAC,cAAc;gBACxB,KAAK,GAAG;oBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;iBACa,CAAA;gBACjC,MAAM;YACP,KAAK,KAAK,CAAC,SAAS;gBACnB,KAAK,GAAG;oBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACf,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACf,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;iBACQ,CAAA;gBAC5B,MAAM;YACP,KAAK,KAAK,CAAC,UAAU;gBACpB,KAAK,GAAG;oBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;iBACY,CAAA;gBAC7B,MAAM;YACP,KAAK,KAAK,CAAC,QAAQ;gBAClB,KAAK,GAAG;oBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;iBACa,CAAA;gBAC3B,MAAM;YACP,KAAK,KAAK,CAAC,aAAa;gBACvB,KAAK,GAAG;oBACP,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;oBACnB,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;oBACzB,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;oBACzB,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;oBACrB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;oBACpB,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;oBACnB,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClB,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;iBAEQ,CAAA;gBAC/B,MAAM;YACP,KAAK,KAAK,CAAC,aAAa;gBACvB,KAAK,GAAG;oBACP,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;oBACtB,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;oBACvB,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;oBACzB,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC;iBACI,CAAA;gBAC/B,MAAM;YACP,KAAK,KAAK,CAAC,kBAAkB;gBAC5B,KAAK,GAAG;oBACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACb,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACf,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;oBACtB,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;oBACnB,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;oBACnB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;oBAChB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;oBAChB,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;oBACjB,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;iBACkB,CAAA;gBACpC,MAAM;YACP,KAAK,KAAK,CAAC,aAAa;gBACvB,KAAK,GAAG;oBACP,cAAc,EAAE;wBACf,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;wBACb,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;wBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;wBACd,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;wBACd,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;wBAClB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;wBACf,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;wBACtB,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;wBACnB,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;wBACnB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;wBAChB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;wBAChB,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;wBACjB,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;qBACkB;oBACpC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC;oBACtB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;oBAChB,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;oBACf,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;oBACpB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;oBAChB,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;oBACf,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;oBAErB,SAAS,EAAE,EAAE;iBACkB,CAAA;gBAChC,MAAM;YACP,KAAK,KAAK,CAAC,eAAe;gBACzB,KAAK,GAAG;oBACP,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACb,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;iBACgB,CAAA;gBACjC,MAAM;YACP,KAAK,KAAK,CAAC,eAAe;gBACzB,KAAK,GAAG;oBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;oBAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAChF,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC5C,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACtC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACtC,EAAE,EAAE,EAAE;iBAC0B,CAAA;gBACjC,MAAM;YACP,KAAK,KAAK,CAAC,kBAAkB;gBAC5B,KAAK,GAAG;oBACP,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;oBACrB,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;iBACyB,CAAA;gBACpC,MAAM;YACP,KAAK,KAAK,CAAC,YAAY;gBACtB,KAAK,GAAG;oBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;oBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;iBACkB,CAAA;gBAC7B,MAAM;YACP,KAAK,KAAK,CAAC,eAAe;gBACzB,KAAK,GAAG;oBACP,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;iBACE,CAAA;gBAChC,MAAM;YACP,KAAK,KAAK,CAAC,WAAW;gBACrB,KAAK,GAAG;oBACP,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;iBACF,CAAA;gBAC5B,MAAM;YACP,KAAK,KAAK,CAAC,eAAe;gBACzB,KAAK,GAAG;oBACP,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;iBACE,CAAA;gBAChC,MAAM;YACP,KAAK,KAAK,CAAC,WAAW;gBACrB,KAAK,GAAG;oBACP,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAClB,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;iBACF,CAAA;gBAC5B,MAAM;YACP,KAAK,KAAK,CAAC,kBAAkB;gBAC5B,KAAK,GAAG;oBACP,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;oBAC7B,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;iBACgB,CAAA;gBAClC,MAAM;YACP,KAAK,KAAK,CAAC,iBAAiB;gBAC3B,KAAK,GAAG;oBACP,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;oBAC7B,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;iBACe,CAAA;gBACjC,MAAM;YACP,KAAK,KAAK,CAAC,sBAAsB;gBAChC,KAAK,GAAG;oBACP,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBACd,MAAM,EAAE;wBACP,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBACV,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBACkB;iBACE,CAAA;gBAChC,MAAM;QAER,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED,GAAG;QACF,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,qCAAqC;QACrC,yBAAyB;QACzB,sDAAsD;QACtD,KAAK;QACL,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC1B,wBAAwB;YACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAA;QAEF,OAAO,QAAQ,GAAG,UAAU,CAAC;IAC9B,CAAC;IACD,cAAc,CAAC,IAAY,EAAE,SAAiB,EAAE,QAAgB,EAAE,SAAiB;QAClF,IAAI,QAAQ,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,UAAU,GAAY,EAAE,CAAC;QAC7B,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QAClB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC9C,IAAI,CAAC,CAAC,GAAG,IAAI,SAAS;oBACrB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,OAAO,CAAC,CAAC,GAAG,IAAI,SAAS,CAAA;YAC1B,CAAC,CAAC,CAAA;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACtB,wCAAwC;YACxC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC/B,IAAI,IAAI,CAAC,GAAG,IAAI,SAAS;oBACxB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAC,CAAC,CAAC;YAElE,CAAC,CAAC,CAAA;YACF,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC;QACxC,CAAC;QACD,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB;;;;;UAKE;QACF,IAAI,OAAO,GAAkD,EAAE,CAAC;QAEhE,IAAI,iBAAiB,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAI,eAAe,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC3C,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,gBAAgB;QACtC;;;;;;UAME;QAEF,IAAI,OAAO,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,IAAI,WAAW,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,oBAAoB;YAC5D,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC1B,CAAC;QACD;;;;6BAIkB;QAElB,iQAAiQ;QAEjQ,sEAAsE;QAEtE,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAC,CAAC;QAClC,CAAC;QAGD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,IAAI,OAAO,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YACnC,IAAI,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;YAEtC,IAAI,KAAK,CAAC;YACV,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;gBAClD,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;;gBACA,KAAK,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YAE9B,IAAI,IAAI,GAAa,EAAE,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChC,wCAAwC;gBACvC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;gBAClC,mCAAmC;YACpC,CAAC;YACD,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;gBACpB,uEAAuE;gBACvE,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;gBACjE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACzB,IAAI,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;oBAC/C,IAAI,GAAG,GAAG,CAAC;oBACX,OAAO,GAAG,IAAI,CAAC;gBAChB,CAAC,CAAC,iCAAiC;YACpC,CAAC;YACD,IAAI,MAAwB,CAAC;YAC7B,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;oBACzD,IAAI,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;oBAE1B,CAAC;;wBACA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;gBAE5C,CAAC;;oBACA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;gBAE1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAC,EAAE,GAAG,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAEzE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBAChB,IAAI;oBACJ,GAAG;oBACH,EAAE;oBACF,OAAO;oBACP,MAAM;iBACN,CAAC,CAAC;gBACH,IAAI,OAAO,IAAI,KAAK,CAAC,YAAY,IAAI,OAAO,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;oBAC9E,gCAAgC;oBAEhC,OAAO,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,MAAM,EAAC,CAAC,CAAC;oBAChC,4EAA4E;gBAC7E,CAAC;YACH,CAAC;iBAAM,CAAC;gBAEP,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAC,EAAE,GAAG,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAEzE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBAChB,IAAI;oBACJ,GAAG;oBACH,EAAE;oBACF,OAAO;oBACP,MAAM,EAAE,EAAU;iBAClB,CAAC,CAAC;gBAEH,IAAI,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAE,CAAC;gBACvG,IAAI,KAAK,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAE9D,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;oBAEvC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;wBACrC,IAAI,IAAI,GAAG,IAAA,6BAAe,EAAC,CAAC,CAAC,CAAC;wBAC9B,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;4BACnC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACtC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnC,CAAC;oBACF,CAAC,CAAC,CAAA;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAGD,KAAK,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;YAChC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5C,SAAS;YACV,CAAC;YACD,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,gEAAgE;gBAC1K,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,EAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAC,EAAE,GAAG,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC3G,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC1E,IAAI,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAE5B,CAAC;qBAAM,CAAC;oBACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;wBAChB,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;wBAC3B,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;wBACzB,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,GAAG,MAAM;wBACjC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;wBAChD,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;qBACzH,CAAC,CAAC;gBAEJ,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBACzB,QAAQ,GAAG,CAAC,CAAC,CAAC;gBACd,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;gBACtB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACP,QAAQ,GAAG,SAAS,CAAC;YAEtB,CAAC;QACF,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC;YAC7B,IAAI,CAAC,UAAU,EAAE,CAAC;QACnB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;QAClG,OAAO,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAC,CAAC;IACvC,CAAC;CACD;AA9gBD,4BA8gBC;AACD,SAAS,aAAa,CAAC,KAAe,EAAE,MAAgB;IACvD,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;QACjC,OAAO,KAAK,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,OAAiB,EAAE,OAAiB;IACvD,IAAI,GAAG,GAAa,OAAO,CAAC;IAC5B,2DAA2D;IAC1D,kBAAkB;IACnB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC7C,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACb,CAAC;aAAM,CAAC;YACP,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC;IACF,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAC;AACZ,CAAC"}
|