fleethub-core 1.3.2 → 1.3.3

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.
@@ -9,6 +9,20 @@ heap.push(undefined, null, true, false);
9
9
 
10
10
  function getObject(idx) { return heap[idx]; }
11
11
 
12
+ let heap_next = heap.length;
13
+
14
+ function dropObject(idx) {
15
+ if (idx < 36) return;
16
+ heap[idx] = heap_next;
17
+ heap_next = idx;
18
+ }
19
+
20
+ function takeObject(idx) {
21
+ const ret = getObject(idx);
22
+ dropObject(idx);
23
+ return ret;
24
+ }
25
+
12
26
  let WASM_VECTOR_LEN = 0;
13
27
 
14
28
  let cachegetUint8Memory0 = null;
@@ -80,20 +94,6 @@ function getInt32Memory0() {
80
94
  return cachegetInt32Memory0;
81
95
  }
82
96
 
83
- let heap_next = heap.length;
84
-
85
- function dropObject(idx) {
86
- if (idx < 36) return;
87
- heap[idx] = heap_next;
88
- heap_next = idx;
89
- }
90
-
91
- function takeObject(idx) {
92
- const ret = getObject(idx);
93
- dropObject(idx);
94
- return ret;
95
- }
96
-
97
97
  let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
98
98
 
99
99
  cachedTextDecoder.decode();
@@ -187,10 +187,6 @@ function _assertClass(instance, klass) {
187
187
  return instance.ptr;
188
188
  }
189
189
 
190
- function isLikeNone(x) {
191
- return x === undefined || x === null;
192
- }
193
-
194
190
  let cachegetFloat64Memory0 = null;
195
191
  function getFloat64Memory0() {
196
192
  if (cachegetFloat64Memory0 === null || cachegetFloat64Memory0.buffer !== wasm.memory.buffer) {
@@ -199,6 +195,10 @@ function getFloat64Memory0() {
199
195
  return cachegetFloat64Memory0;
200
196
  }
201
197
 
198
+ function isLikeNone(x) {
199
+ return x === undefined || x === null;
200
+ }
201
+
202
202
  let cachegetUint32Memory0 = null;
203
203
  function getUint32Memory0() {
204
204
  if (cachegetUint32Memory0 === null || cachegetUint32Memory0.buffer !== wasm.memory.buffer) {
@@ -814,7 +814,7 @@ class FhCore {
814
814
  wasm.__wbg_fhcore_free(ptr);
815
815
  }
816
816
  /**
817
- * @param {any} js_master
817
+ * @param {MasterData} js_master
818
818
  * @param {Function} js_fn
819
819
  */
820
820
  constructor(js_master, js_fn) {
@@ -3281,6 +3281,10 @@ class Ship {
3281
3281
  }
3282
3282
  module.exports.Ship = Ship;
3283
3283
 
3284
+ module.exports.__wbindgen_object_drop_ref = function(arg0) {
3285
+ takeObject(arg0);
3286
+ };
3287
+
3284
3288
  module.exports.__wbindgen_json_serialize = function(arg0, arg1) {
3285
3289
  const obj = getObject(arg1);
3286
3290
  const ret = JSON.stringify(obj === undefined ? null : obj);
@@ -3290,10 +3294,6 @@ module.exports.__wbindgen_json_serialize = function(arg0, arg1) {
3290
3294
  getInt32Memory0()[arg0 / 4 + 0] = ptr0;
3291
3295
  };
3292
3296
 
3293
- module.exports.__wbindgen_object_drop_ref = function(arg0) {
3294
- takeObject(arg0);
3295
- };
3296
-
3297
3297
  module.exports.__wbindgen_string_new = function(arg0, arg1) {
3298
3298
  const ret = getStringFromWasm0(arg0, arg1);
3299
3299
  return addHeapObject(ret);
@@ -3304,10 +3304,6 @@ module.exports.__wbindgen_json_parse = function(arg0, arg1) {
3304
3304
  return addHeapObject(ret);
3305
3305
  };
3306
3306
 
3307
- module.exports.__wbg_error_8ff19d586a987aef = function(arg0) {
3308
- console.error(getObject(arg0));
3309
- };
3310
-
3311
3307
  module.exports.__wbg_new_693216e109162396 = function() {
3312
3308
  const ret = new Error();
3313
3309
  return addHeapObject(ret);
Binary file
@@ -1,54 +1,100 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export const memory: WebAssembly.Memory;
4
- export function __wbg_airsquadron_free(a: number): void;
5
- export function __wbg_get_airsquadron_id(a: number, b: number): void;
6
- export function __wbg_set_airsquadron_id(a: number, b: number, c: number): void;
7
- export function __wbg_get_airsquadron_xxh3(a: number, b: number): void;
8
- export function __wbg_set_airsquadron_xxh3(a: number, b: number, c: number): void;
9
- export function __wbg_get_airsquadron_mode(a: number): number;
10
- export function __wbg_set_airsquadron_mode(a: number, b: number): void;
11
- export function airsquadron_get_gear(a: number, b: number, c: number): number;
12
- export function airsquadron_get_slot_size(a: number, b: number, c: number): void;
13
- export function airsquadron_get_max_slot_size(a: number, b: number, c: number): void;
14
- export function airsquadron_fighter_power(a: number): number;
15
- export function airsquadron_interception_power(a: number): number;
16
- export function airsquadron_radius(a: number): number;
17
- export function __wbg_analyzer_free(a: number): void;
18
- export function analyzer_analyze_anti_air(a: number, b: number, c: number, d: number, e: number, f: number): number;
19
- export function analyzer_analyze_day_cutin(a: number, b: number): number;
20
- export function analyzer_analyze_night_cutin(a: number, b: number, c: number, d: number): number;
21
- export function analyzer_analyze_contact_chance(a: number, b: number): number;
22
- export function analyzer_analyze_warfare(a: number, b: number, c: number, d: number): number;
23
- export function analyzer_analyze_fleet_cutin(a: number, b: number, c: number): number;
24
- export function __wbg_comp_free(a: number): void;
25
- export function __wbg_get_comp_org_type(a: number): number;
26
- export function __wbg_set_comp_org_type(a: number, b: number): void;
27
- export function __wbg_get_comp_hq_level(a: number): number;
28
- export function __wbg_set_comp_hq_level(a: number, b: number): void;
29
- export function __wbg_get_comp_main(a: number): number;
30
- export function __wbg_set_comp_main(a: number, b: number): void;
31
- export function __wbg_get_comp_escort(a: number): number;
32
- export function __wbg_set_comp_escort(a: number, b: number): void;
33
- export function __wbg_get_comp_route_sup(a: number): number;
34
- export function __wbg_set_comp_route_sup(a: number, b: number): void;
35
- export function __wbg_get_comp_boss_sup(a: number): number;
36
- export function __wbg_set_comp_boss_sup(a: number, b: number): void;
37
- export function comp_side(a: number): number;
38
- export function comp_is_combined(a: number): number;
39
- export function comp_is_player(a: number): number;
40
- export function comp_is_enemy(a: number): number;
41
- export function comp_meta(a: number): number;
42
- export function comp_get_fleet_id(a: number, b: number, c: number): void;
43
- export function comp_get_ship_with_clone(a: number, b: number, c: number, d: number): number;
44
- export function comp_get_ship_entity_id(a: number, b: number, c: number, d: number, e: number): void;
45
- export function comp_get_ship_by_eid_with_clone(a: number, b: number, c: number): number;
46
- export function comp_default_formation(a: number): number;
47
- export function comp_adjusted_anti_air(a: number, b: number): number;
48
- export function comp_fighter_power(a: number, b: number, c: number, d: number): void;
49
- export function comp_elos(a: number, b: number, c: number): void;
50
- export function comp_transport_point(a: number): number;
51
- export function comp_create_warfare_ship_environment(a: number, b: number, c: number): number;
4
+ export function __wbg_ship_free(a: number): void;
5
+ export function __wbg_get_ship_id(a: number, b: number): void;
6
+ export function __wbg_set_ship_id(a: number, b: number, c: number): void;
7
+ export function __wbg_get_ship_xxh3(a: number, b: number): void;
8
+ export function __wbg_set_ship_xxh3(a: number, b: number, c: number): void;
9
+ export function __wbg_get_ship_ship_id(a: number): number;
10
+ export function __wbg_set_ship_ship_id(a: number, b: number): void;
11
+ export function __wbg_get_ship_level(a: number): number;
12
+ export function __wbg_set_ship_level(a: number, b: number): void;
13
+ export function __wbg_get_ship_current_hp(a: number): number;
14
+ export function __wbg_set_ship_current_hp(a: number, b: number): void;
15
+ export function __wbg_get_ship_morale(a: number): number;
16
+ export function __wbg_set_ship_morale(a: number, b: number): void;
17
+ export function __wbg_get_ship_ammo(a: number): number;
18
+ export function __wbg_set_ship_ammo(a: number, b: number): void;
19
+ export function __wbg_get_ship_fuel(a: number): number;
20
+ export function __wbg_set_ship_fuel(a: number, b: number): void;
21
+ export function __wbg_get_ship_ship_type(a: number): number;
22
+ export function __wbg_set_ship_ship_type(a: number, b: number): void;
23
+ export function __wbg_get_ship_ctype(a: number): number;
24
+ export function __wbg_set_ship_ctype(a: number, b: number): void;
25
+ export function __wbg_get_ship_slots(a: number): number;
26
+ export function __wbg_set_ship_slots(a: number, b: number): void;
27
+ export function ship_naked_firepower(a: number): number;
28
+ export function ship_naked_torpedo(a: number): number;
29
+ export function ship_naked_armor(a: number): number;
30
+ export function ship_naked_anti_air(a: number): number;
31
+ export function ship_naked_evasion(a: number): number;
32
+ export function ship_naked_asw(a: number): number;
33
+ export function ship_naked_los(a: number): number;
34
+ export function ship_firepower(a: number): number;
35
+ export function ship_torpedo(a: number): number;
36
+ export function ship_armor(a: number): number;
37
+ export function ship_anti_air(a: number): number;
38
+ export function ship_evasion(a: number): number;
39
+ export function ship_asw(a: number): number;
40
+ export function ship_los(a: number): number;
41
+ export function ship_default(): number;
42
+ export function ship_eq_id(a: number, b: number, c: number): number;
43
+ export function ship_state(a: number): number;
44
+ export function ship_meta(a: number): number;
45
+ export function ship_name(a: number, b: number): void;
46
+ export function ship_yomi(a: number, b: number): void;
47
+ export function ship_stype(a: number): number;
48
+ export function ship_sort_id(a: number): number;
49
+ export function ship_remodel_rank(a: number): number;
50
+ export function ship_slotnum(a: number): number;
51
+ export function ship_next_id(a: number): number;
52
+ export function ship_useful(a: number): number;
53
+ export function ship_damage_state(a: number): number;
54
+ export function ship_morale_state(a: number): number;
55
+ export function ship_category(a: number): number;
56
+ export function ship_has_attr(a: number, b: number): number;
57
+ export function ship_gear_keys(a: number): number;
58
+ export function ship_get_gear(a: number, b: number, c: number): number;
59
+ export function ship_get_damage_bound(a: number, b: number): number;
60
+ export function ship_get_remaining_fuel(a: number, b: number, c: number): number;
61
+ export function ship_get_remaining_ammo(a: number, b: number, c: number): number;
62
+ export function ship_has_unknown_stat(a: number, b: number, c: number): number;
63
+ export function ship_get_naked_stat(a: number, b: number, c: number): number;
64
+ export function ship_get_stat_interval_left(a: number, b: number, c: number): number;
65
+ export function ship_get_stat_interval_right(a: number, b: number, c: number): number;
66
+ export function ship_get_gear_stat(a: number, b: number, c: number): number;
67
+ export function ship_get_ebonus(a: number, b: number, c: number): number;
68
+ export function ship_get_stat_mod(a: number, b: number, c: number): number;
69
+ export function ship_is_abyssal(a: number): number;
70
+ export function ship_is_submarine(a: number): number;
71
+ export function ship_can_equip(a: number, b: number, c: number, d: number): number;
72
+ export function ship_max_hp(a: number): number;
73
+ export function ship_max_ammo(a: number): number;
74
+ export function ship_max_fuel(a: number): number;
75
+ export function ship_naked_range(a: number): number;
76
+ export function ship_naked_speed(a: number): number;
77
+ export function ship_luck(a: number): number;
78
+ export function ship_range(a: number): number;
79
+ export function ship_speed(a: number): number;
80
+ export function ship_accuracy(a: number): number;
81
+ export function ship_is_installation(a: number): number;
82
+ export function ship_get_slot_size(a: number, b: number): number;
83
+ export function ship_get_max_slot_size(a: number, b: number): number;
84
+ export function ship_remaining_ammo_mod(a: number): number;
85
+ export function ship_remaining_fuel_mod(a: number): number;
86
+ export function ship_fighter_power(a: number, b: number, c: number): void;
87
+ export function ship_fleet_los_factor(a: number, b: number): void;
88
+ export function ship_fleet_anti_air_mod(a: number): number;
89
+ export function ship_cruiser_fit_bonus(a: number): number;
90
+ export function ship_fit_gun_bonus(a: number, b: number): number;
91
+ export function ship_basic_accuracy_term(a: number, b: number): void;
92
+ export function ship_basic_evasion_term(a: number, b: number): void;
93
+ export function ship_evasion_term(a: number, b: number, c: number, d: number, e: number): void;
94
+ export function ship_basic_defense_power(a: number, b: number, c: number): void;
95
+ export function ship_transport_point(a: number): number;
96
+ export function ship_elos(a: number, b: number, c: number): void;
97
+ export function ship_take_damage(a: number, b: number): void;
52
98
  export function __wbg_org_free(a: number): void;
53
99
  export function __wbg_get_org_id(a: number, b: number): void;
54
100
  export function __wbg_set_org_id(a: number, b: number, c: number): void;
@@ -88,6 +134,54 @@ export function org_interception_power(a: number): number;
88
134
  export function org_high_altitude_interception_power(a: number): number;
89
135
  export function org_create_warfare_ship_environment(a: number, b: number, c: number): number;
90
136
  export function org_default(): number;
137
+ export function __wbg_analyzer_free(a: number): void;
138
+ export function analyzer_analyze_anti_air(a: number, b: number, c: number, d: number, e: number, f: number): number;
139
+ export function analyzer_analyze_day_cutin(a: number, b: number): number;
140
+ export function analyzer_analyze_night_cutin(a: number, b: number, c: number, d: number): number;
141
+ export function analyzer_analyze_contact_chance(a: number, b: number): number;
142
+ export function analyzer_analyze_warfare(a: number, b: number, c: number, d: number): number;
143
+ export function analyzer_analyze_fleet_cutin(a: number, b: number, c: number): number;
144
+ export function __wbg_comp_free(a: number): void;
145
+ export function __wbg_get_comp_org_type(a: number): number;
146
+ export function __wbg_set_comp_org_type(a: number, b: number): void;
147
+ export function __wbg_get_comp_hq_level(a: number): number;
148
+ export function __wbg_set_comp_hq_level(a: number, b: number): void;
149
+ export function __wbg_get_comp_main(a: number): number;
150
+ export function __wbg_set_comp_main(a: number, b: number): void;
151
+ export function __wbg_get_comp_escort(a: number): number;
152
+ export function __wbg_set_comp_escort(a: number, b: number): void;
153
+ export function __wbg_get_comp_route_sup(a: number): number;
154
+ export function __wbg_set_comp_route_sup(a: number, b: number): void;
155
+ export function __wbg_get_comp_boss_sup(a: number): number;
156
+ export function __wbg_set_comp_boss_sup(a: number, b: number): void;
157
+ export function comp_side(a: number): number;
158
+ export function comp_is_combined(a: number): number;
159
+ export function comp_is_player(a: number): number;
160
+ export function comp_is_enemy(a: number): number;
161
+ export function comp_meta(a: number): number;
162
+ export function comp_get_fleet_id(a: number, b: number, c: number): void;
163
+ export function comp_get_ship_with_clone(a: number, b: number, c: number, d: number): number;
164
+ export function comp_get_ship_entity_id(a: number, b: number, c: number, d: number, e: number): void;
165
+ export function comp_get_ship_by_eid_with_clone(a: number, b: number, c: number): number;
166
+ export function comp_default_formation(a: number): number;
167
+ export function comp_adjusted_anti_air(a: number, b: number): number;
168
+ export function comp_fighter_power(a: number, b: number, c: number, d: number): void;
169
+ export function comp_elos(a: number, b: number, c: number): void;
170
+ export function comp_transport_point(a: number): number;
171
+ export function comp_create_warfare_ship_environment(a: number, b: number, c: number): number;
172
+ export function __wbg_airsquadron_free(a: number): void;
173
+ export function __wbg_get_airsquadron_id(a: number, b: number): void;
174
+ export function __wbg_set_airsquadron_id(a: number, b: number, c: number): void;
175
+ export function __wbg_get_airsquadron_xxh3(a: number, b: number): void;
176
+ export function __wbg_set_airsquadron_xxh3(a: number, b: number, c: number): void;
177
+ export function __wbg_get_airsquadron_mode(a: number): number;
178
+ export function __wbg_set_airsquadron_mode(a: number, b: number): void;
179
+ export function airsquadron_get_gear(a: number, b: number, c: number): number;
180
+ export function airsquadron_get_slot_size(a: number, b: number, c: number): void;
181
+ export function airsquadron_get_max_slot_size(a: number, b: number, c: number): void;
182
+ export function airsquadron_fighter_power(a: number): number;
183
+ export function airsquadron_interception_power(a: number): number;
184
+ export function airsquadron_radius(a: number): number;
91
185
  export function __wbg_fleet_free(a: number): void;
92
186
  export function __wbg_get_fleet_id(a: number, b: number): void;
93
187
  export function __wbg_set_fleet_id(a: number, b: number, c: number): void;
@@ -241,100 +335,6 @@ export function gear_is_abyssal_patrolling_attack_hawk(a: number): number;
241
335
  export function gear_expedition_bonus(a: number): number;
242
336
  export function gear_can_be_deployed_to_land_base(a: number): number;
243
337
  export function gear_has_proficiency(a: number): number;
244
- export function __wbg_ship_free(a: number): void;
245
- export function __wbg_get_ship_id(a: number, b: number): void;
246
- export function __wbg_set_ship_id(a: number, b: number, c: number): void;
247
- export function __wbg_get_ship_xxh3(a: number, b: number): void;
248
- export function __wbg_set_ship_xxh3(a: number, b: number, c: number): void;
249
- export function __wbg_get_ship_ship_id(a: number): number;
250
- export function __wbg_set_ship_ship_id(a: number, b: number): void;
251
- export function __wbg_get_ship_level(a: number): number;
252
- export function __wbg_set_ship_level(a: number, b: number): void;
253
- export function __wbg_get_ship_current_hp(a: number): number;
254
- export function __wbg_set_ship_current_hp(a: number, b: number): void;
255
- export function __wbg_get_ship_morale(a: number): number;
256
- export function __wbg_set_ship_morale(a: number, b: number): void;
257
- export function __wbg_get_ship_ammo(a: number): number;
258
- export function __wbg_set_ship_ammo(a: number, b: number): void;
259
- export function __wbg_get_ship_fuel(a: number): number;
260
- export function __wbg_set_ship_fuel(a: number, b: number): void;
261
- export function __wbg_get_ship_ship_type(a: number): number;
262
- export function __wbg_set_ship_ship_type(a: number, b: number): void;
263
- export function __wbg_get_ship_ctype(a: number): number;
264
- export function __wbg_set_ship_ctype(a: number, b: number): void;
265
- export function __wbg_get_ship_slots(a: number): number;
266
- export function __wbg_set_ship_slots(a: number, b: number): void;
267
- export function ship_naked_firepower(a: number): number;
268
- export function ship_naked_torpedo(a: number): number;
269
- export function ship_naked_armor(a: number): number;
270
- export function ship_naked_anti_air(a: number): number;
271
- export function ship_naked_evasion(a: number): number;
272
- export function ship_naked_asw(a: number): number;
273
- export function ship_naked_los(a: number): number;
274
- export function ship_firepower(a: number): number;
275
- export function ship_torpedo(a: number): number;
276
- export function ship_armor(a: number): number;
277
- export function ship_anti_air(a: number): number;
278
- export function ship_evasion(a: number): number;
279
- export function ship_asw(a: number): number;
280
- export function ship_los(a: number): number;
281
- export function ship_default(): number;
282
- export function ship_eq_id(a: number, b: number, c: number): number;
283
- export function ship_state(a: number): number;
284
- export function ship_meta(a: number): number;
285
- export function ship_name(a: number, b: number): void;
286
- export function ship_yomi(a: number, b: number): void;
287
- export function ship_stype(a: number): number;
288
- export function ship_sort_id(a: number): number;
289
- export function ship_remodel_rank(a: number): number;
290
- export function ship_slotnum(a: number): number;
291
- export function ship_next_id(a: number): number;
292
- export function ship_useful(a: number): number;
293
- export function ship_damage_state(a: number): number;
294
- export function ship_morale_state(a: number): number;
295
- export function ship_category(a: number): number;
296
- export function ship_has_attr(a: number, b: number): number;
297
- export function ship_gear_keys(a: number): number;
298
- export function ship_get_gear(a: number, b: number, c: number): number;
299
- export function ship_get_damage_bound(a: number, b: number): number;
300
- export function ship_get_remaining_fuel(a: number, b: number, c: number): number;
301
- export function ship_get_remaining_ammo(a: number, b: number, c: number): number;
302
- export function ship_has_unknown_stat(a: number, b: number, c: number): number;
303
- export function ship_get_naked_stat(a: number, b: number, c: number): number;
304
- export function ship_get_stat_interval_left(a: number, b: number, c: number): number;
305
- export function ship_get_stat_interval_right(a: number, b: number, c: number): number;
306
- export function ship_get_gear_stat(a: number, b: number, c: number): number;
307
- export function ship_get_ebonus(a: number, b: number, c: number): number;
308
- export function ship_get_stat_mod(a: number, b: number, c: number): number;
309
- export function ship_is_abyssal(a: number): number;
310
- export function ship_is_submarine(a: number): number;
311
- export function ship_can_equip(a: number, b: number, c: number, d: number): number;
312
- export function ship_max_hp(a: number): number;
313
- export function ship_max_ammo(a: number): number;
314
- export function ship_max_fuel(a: number): number;
315
- export function ship_naked_range(a: number): number;
316
- export function ship_naked_speed(a: number): number;
317
- export function ship_luck(a: number): number;
318
- export function ship_range(a: number): number;
319
- export function ship_speed(a: number): number;
320
- export function ship_accuracy(a: number): number;
321
- export function ship_is_installation(a: number): number;
322
- export function ship_get_slot_size(a: number, b: number): number;
323
- export function ship_get_max_slot_size(a: number, b: number): number;
324
- export function ship_remaining_ammo_mod(a: number): number;
325
- export function ship_remaining_fuel_mod(a: number): number;
326
- export function ship_fighter_power(a: number, b: number, c: number): void;
327
- export function ship_fleet_los_factor(a: number, b: number): void;
328
- export function ship_fleet_anti_air_mod(a: number): number;
329
- export function ship_cruiser_fit_bonus(a: number): number;
330
- export function ship_fit_gun_bonus(a: number, b: number): number;
331
- export function ship_basic_accuracy_term(a: number, b: number): void;
332
- export function ship_basic_evasion_term(a: number, b: number): void;
333
- export function ship_evasion_term(a: number, b: number, c: number, d: number, e: number): void;
334
- export function ship_basic_defense_power(a: number, b: number, c: number): void;
335
- export function ship_transport_point(a: number): number;
336
- export function ship_elos(a: number, b: number, c: number): void;
337
- export function ship_take_damage(a: number, b: number): void;
338
338
  export function __wbindgen_malloc(a: number): number;
339
339
  export function __wbindgen_realloc(a: number, b: number, c: number): number;
340
340
  export function __wbindgen_add_to_stack_pointer(a: number): number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleethub-core",
3
- "version": "1.3.2",
3
+ "version": "1.3.3",
4
4
  "license": "UNLICENSED",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -15,5 +15,8 @@
15
15
  ],
16
16
  "collaborators": [
17
17
  "まどの <madonoharu@gmail.com>"
18
- ]
18
+ ],
19
+ "devDependencies": {
20
+ "jest-environment-jsdom": "^28.0.2"
21
+ }
19
22
  }