@applitools/eyes-puppeteer 1.25.0 → 1.26.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,210 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.26.1](https://github.com/Applitools-Dev/sdk/compare/js/eyes-puppeteer@1.26.0...js/eyes-puppeteer@1.26.1) (2024-04-01)
4
+
5
+
6
+ ### Dependencies
7
+
8
+ * @applitools/spec-driver-selenium bumped to 1.5.74
9
+ #### Bug Fixes
10
+
11
+ * trigger JS release ([6022ac8](https://github.com/Applitools-Dev/sdk/commit/6022ac85626287a37101b65732e9d46c63bbd8b8))
12
+ * @applitools/ec-client bumped to 1.7.32
13
+
14
+ * @applitools/core-base bumped to 1.10.1
15
+ #### Bug Fixes
16
+
17
+ * trigger JS release ([6022ac8](https://github.com/Applitools-Dev/sdk/commit/6022ac85626287a37101b65732e9d46c63bbd8b8))
18
+ * @applitools/core bumped to 4.11.1
19
+
20
+ * @applitools/eyes bumped to 1.17.1
21
+ #### Bug Fixes
22
+
23
+ * trigger JS release ([6022ac8](https://github.com/Applitools-Dev/sdk/commit/6022ac85626287a37101b65732e9d46c63bbd8b8))
24
+
25
+
26
+
27
+
28
+ ## [1.26.0](https://github.com/Applitools-Dev/sdk/compare/js/eyes-puppeteer-v1.25.4...js/eyes-puppeteer@1.26.0) (2024-03-31)
29
+
30
+
31
+ ### Features
32
+
33
+ * added notification about outdated sdk version ([#2012](https://github.com/Applitools-Dev/sdk/issues/2012)) ([0f0a646](https://github.com/Applitools-Dev/sdk/commit/0f0a6462a56e7c97f9a22173c3b63af91e220adb))
34
+ * added support for puppeteer >= 22 ([#2185](https://github.com/Applitools-Dev/sdk/issues/2185)) ([59d23a9](https://github.com/Applitools-Dev/sdk/commit/59d23a9689d77c7db06df53b67fa293a3b3f166e))
35
+
36
+
37
+ ### Dependencies
38
+
39
+ * @applitools/spec-driver-selenium bumped to 1.5.73
40
+ #### Bug Fixes
41
+
42
+ * remove getSessionDetails call in JS Selenium ([#2280](https://github.com/Applitools-Dev/sdk/issues/2280)) ([d15748f](https://github.com/Applitools-Dev/sdk/commit/d15748f68c931f2f84c13efd8472399c1ff72e25))
43
+ * @applitools/ec-client bumped to 1.7.31
44
+
45
+ * @applitools/core-base bumped to 1.10.0
46
+ #### Features
47
+
48
+ * Add GitMergeBaseTimestamp support ([#2281](https://github.com/Applitools-Dev/sdk/issues/2281)) ([5489608](https://github.com/Applitools-Dev/sdk/commit/54896085445663a51b5e5595a2517e48fa8736f3))
49
+ * batch buildId ([#2263](https://github.com/Applitools-Dev/sdk/issues/2263)) ([f19ac38](https://github.com/Applitools-Dev/sdk/commit/f19ac38612bc55d870f59161a39b5b7eb01e25f3))
50
+ * send heartbeat to keep test alive ([#2246](https://github.com/Applitools-Dev/sdk/issues/2246)) ([58636e7](https://github.com/Applitools-Dev/sdk/commit/58636e7dd353f06eb2b3bee1120ab81c3f9fcc94))
51
+
52
+
53
+ #### Bug Fixes
54
+
55
+ * retry Eyes request on ECONNREFUSED to improve stability during deployment ([d1e4dca](https://github.com/Applitools-Dev/sdk/commit/d1e4dcae79185578808b4f2c5f94fa79d7d914a3))
56
+ * @applitools/core bumped to 4.11.0
57
+ #### Features
58
+
59
+ * Add GitMergeBaseTimestamp support ([#2281](https://github.com/Applitools-Dev/sdk/issues/2281)) ([5489608](https://github.com/Applitools-Dev/sdk/commit/54896085445663a51b5e5595a2517e48fa8736f3))
60
+ * batch buildId ([#2263](https://github.com/Applitools-Dev/sdk/issues/2263)) ([f19ac38](https://github.com/Applitools-Dev/sdk/commit/f19ac38612bc55d870f59161a39b5b7eb01e25f3))
61
+
62
+
63
+
64
+ * @applitools/eyes bumped to 1.17.0
65
+ #### Features
66
+
67
+ * add Eyes.getResults method ([#2046](https://github.com/Applitools-Dev/sdk/issues/2046)) ([#2069](https://github.com/Applitools-Dev/sdk/issues/2069)) ([4d263e1](https://github.com/Applitools-Dev/sdk/commit/4d263e19cb5e5708790a1a7ef90ff8f3eee50d91))
68
+ * Add GitMergeBaseTimestamp support ([#2281](https://github.com/Applitools-Dev/sdk/issues/2281)) ([5489608](https://github.com/Applitools-Dev/sdk/commit/54896085445663a51b5e5595a2517e48fa8736f3))
69
+ * added `enableEyesLogs` configuration to the eyes service ([639ca8a](https://github.com/Applitools-Dev/sdk/commit/639ca8a021008d06fc09d19ca58ac3d00a18e4c3))
70
+ * added `useExecutionCloud` configuration to the eyes service ([#2033](https://github.com/Applitools-Dev/sdk/issues/2033)) ([639ca8a](https://github.com/Applitools-Dev/sdk/commit/639ca8a021008d06fc09d19ca58ac3d00a18e4c3))
71
+ * generate more enums ([#2179](https://github.com/Applitools-Dev/sdk/issues/2179)) ([5f4f916](https://github.com/Applitools-Dev/sdk/commit/5f4f91621b791a02464191123f69b12f590b9efe))
72
+ * ios multi device target ([#2160](https://github.com/Applitools-Dev/sdk/issues/2160)) ([3874fb8](https://github.com/Applitools-Dev/sdk/commit/3874fb8ad77039abbb5ab78c00ffb45829b2db28))
73
+
74
+
75
+ #### Bug Fixes
76
+
77
+ * error to unknown type in exception ([#2035](https://github.com/Applitools-Dev/sdk/issues/2035)) ([16d78c3](https://github.com/Applitools-Dev/sdk/commit/16d78c3cce90a5cb50cc2aa4e9ab6a58b7b93f89))
78
+ * fixed default value in `useSystemScreenshot` method of check settings ([42a773c](https://github.com/Applitools-Dev/sdk/commit/42a773cc57e8e5de528a049b376159615892003b))
79
+ * fixed issue when w3c properties were added to legacy capabilities object in `Eyes.setMobileCapabilities` method ([94d785f](https://github.com/Applitools-Dev/sdk/commit/94d785f0428df101c207d6f09a55c46f2bdbf19e))
80
+
81
+
82
+
83
+
84
+ ## [1.25.3](https://github.com/Applitools-Dev/sdk/compare/js/eyes-puppeteer@1.25.2...js/eyes-puppeteer@1.25.3) (2024-03-18)
85
+
86
+
87
+ ### Dependencies
88
+
89
+ * @applitools/css-tree bumped to 1.1.2
90
+ #### Bug Fixes
91
+
92
+ * trigger js release again ([1695f3d](https://github.com/Applitools-Dev/sdk/commit/1695f3d9967c7ab7b5d8c8637e86faa935a9047f))
93
+ * @applitools/driver bumped to 1.16.5
94
+ #### Bug Fixes
95
+
96
+ * trigger js release again ([1695f3d](https://github.com/Applitools-Dev/sdk/commit/1695f3d9967c7ab7b5d8c8637e86faa935a9047f))
97
+ * @applitools/dom-snapshot bumped to 4.9.2
98
+
99
+ * @applitools/spec-driver-webdriver bumped to 1.1.3
100
+
101
+ * @applitools/spec-driver-selenium bumped to 1.5.72
102
+
103
+ * @applitools/spec-driver-puppeteer bumped to 1.4.3
104
+
105
+ * @applitools/screenshoter bumped to 3.8.27
106
+
107
+ * @applitools/nml-client bumped to 1.7.5
108
+
109
+ * @applitools/ufg-client bumped to 1.10.2
110
+
111
+ * @applitools/ec-client bumped to 1.7.30
112
+
113
+ * @applitools/core bumped to 4.10.2
114
+
115
+ * @applitools/eyes bumped to 1.16.2
116
+
117
+
118
+ ## [1.25.2](https://github.com/Applitools-Dev/sdk/compare/js/eyes-puppeteer@1.25.1...js/eyes-puppeteer@1.25.2) (2024-03-18)
119
+
120
+
121
+ ### Dependencies
122
+
123
+ * @applitools/css-tree bumped to 1.1.1
124
+ #### Bug Fixes
125
+
126
+ * trigger js release ([dbc9bf8](https://github.com/Applitools-Dev/sdk/commit/dbc9bf8da3ab5d93e570881ba2c61efa47a1b342))
127
+ * @applitools/driver bumped to 1.16.4
128
+ #### Bug Fixes
129
+
130
+ * trigger js release ([dbc9bf8](https://github.com/Applitools-Dev/sdk/commit/dbc9bf8da3ab5d93e570881ba2c61efa47a1b342))
131
+ * @applitools/dom-snapshot bumped to 4.9.1
132
+
133
+ * @applitools/spec-driver-webdriver bumped to 1.1.2
134
+
135
+ * @applitools/spec-driver-selenium bumped to 1.5.71
136
+
137
+ * @applitools/spec-driver-puppeteer bumped to 1.4.2
138
+
139
+ * @applitools/screenshoter bumped to 3.8.26
140
+
141
+ * @applitools/nml-client bumped to 1.7.4
142
+
143
+ * @applitools/ufg-client bumped to 1.10.1
144
+
145
+ * @applitools/ec-client bumped to 1.7.29
146
+
147
+ * @applitools/core bumped to 4.10.1
148
+
149
+ * @applitools/eyes bumped to 1.16.1
150
+
151
+
152
+ ## [1.25.1](https://github.com/Applitools-Dev/sdk/compare/js/eyes-puppeteer@1.25.0...js/eyes-puppeteer@1.25.1) (2024-03-17)
153
+
154
+
155
+ ### Dependencies
156
+
157
+ * @applitools/css-tree bumped to 1.1.0
158
+ #### Features
159
+
160
+ * support [@container](https://github.com/container) and [@layer](https://github.com/layer) cssom rules ([#2209](https://github.com/Applitools-Dev/sdk/issues/2209)) ([7da07c4](https://github.com/Applitools-Dev/sdk/commit/7da07c4f5b7f338fb5944ce244af8f2de928cab6))
161
+ * @applitools/dom-snapshot bumped to 4.9.0
162
+ #### Features
163
+
164
+ * support [@container](https://github.com/container) and [@layer](https://github.com/layer) cssom rules ([#2209](https://github.com/Applitools-Dev/sdk/issues/2209)) ([7da07c4](https://github.com/Applitools-Dev/sdk/commit/7da07c4f5b7f338fb5944ce244af8f2de928cab6))
165
+
166
+
167
+
168
+ * @applitools/spec-driver-webdriver bumped to 1.1.1
169
+
170
+ * @applitools/spec-driver-selenium bumped to 1.5.70
171
+
172
+ * @applitools/spec-driver-puppeteer bumped to 1.4.1
173
+
174
+ * @applitools/driver bumped to 1.16.3
175
+ #### Bug Fixes
176
+
177
+ * skip execution of getCurrentWorld and getWorlds when env var is set ([#2234](https://github.com/Applitools-Dev/sdk/issues/2234)) ([3a88602](https://github.com/Applitools-Dev/sdk/commit/3a886028b0437b73dae0474408d9bb74ba940dec))
178
+ * trigger build ([acb9c88](https://github.com/Applitools-Dev/sdk/commit/acb9c88161cf55e8b1e409425b5571d69a2e1d5c))
179
+ * @applitools/screenshoter bumped to 3.8.25
180
+
181
+ * @applitools/nml-client bumped to 1.7.3
182
+
183
+ * @applitools/ufg-client bumped to 1.10.0
184
+ #### Features
185
+
186
+ * support [@container](https://github.com/container) and [@layer](https://github.com/layer) cssom rules ([#2209](https://github.com/Applitools-Dev/sdk/issues/2209)) ([7da07c4](https://github.com/Applitools-Dev/sdk/commit/7da07c4f5b7f338fb5944ce244af8f2de928cab6))
187
+ * throttle fetching resources by default ([#2216](https://github.com/Applitools-Dev/sdk/issues/2216)) ([a2da800](https://github.com/Applitools-Dev/sdk/commit/a2da80076eb30241a168500903a9d80344900213))
188
+
189
+
190
+
191
+ * @applitools/core bumped to 4.10.0
192
+ #### Features
193
+
194
+ * support webview in nml ([#2236](https://github.com/Applitools-Dev/sdk/issues/2236)) ([b4440d8](https://github.com/Applitools-Dev/sdk/commit/b4440d86a863d1af8089f8606ac6819636fa46f4))
195
+
196
+
197
+
198
+ * @applitools/ec-client bumped to 1.7.28
199
+
200
+ * @applitools/eyes bumped to 1.16.0
201
+ #### Features
202
+
203
+ * ios multi device target ([#2160](https://github.com/Applitools-Dev/sdk/issues/2160)) ([3874fb8](https://github.com/Applitools-Dev/sdk/commit/3874fb8ad77039abbb5ab78c00ffb45829b2db28))
204
+
205
+
206
+
207
+
3
208
  ## [1.25.0](https://github.com/applitools/eyes.sdk.javascript1/compare/js/eyes-puppeteer-v1.24.1...js/eyes-puppeteer@1.25.0) (2024-02-29)
4
209
 
5
210
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/eyes-puppeteer",
3
- "version": "1.25.0",
3
+ "version": "1.26.1",
4
4
  "description": "Applitools Eyes SDK for Puppeteer",
5
5
  "keywords": [
6
6
  "eyes-puppeteer",
@@ -36,8 +36,8 @@
36
36
  "up:framework": "echo \"$(jq '.devDependencies.puppeteer = $ENV.APPLITOOLS_FRAMEWORK_VERSION' ./package.json)\" > ./package.json"
37
37
  },
38
38
  "dependencies": {
39
- "@applitools/eyes": "1.15.0",
40
- "@applitools/spec-driver-puppeteer": "1.4.0"
39
+ "@applitools/eyes": "1.17.1",
40
+ "@applitools/spec-driver-puppeteer": "1.4.3"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@applitools/api-extractor": "^1.2.22",
package/types/index.d.ts CHANGED
@@ -369,6 +369,7 @@ export type ConfigurationPlain = {
369
369
  environmentName?: undefined | string;
370
370
  branchName?: undefined | string;
371
371
  parentBranchName?: undefined | string;
372
+ gitMergeBaseTimestamp?: undefined | string;
372
373
  baselineBranchName?: undefined | string;
373
374
  compareWithParentBranch?: undefined | boolean;
374
375
  ignoreBaseline?: undefined | boolean;
@@ -390,7 +391,7 @@ export type ConfigurationPlain = {
390
391
  rotation?: undefined | ImageRotationPlain;
391
392
  scaleRatio?: undefined | number;
392
393
  concurrentSessions?: undefined | number;
393
- browsersInfo?: undefined | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
394
+ browsersInfo?: undefined | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>;
394
395
  visualGridOptions?: undefined | Record<string, any>;
395
396
  layoutBreakpoints?: undefined | boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; };
396
397
  disableBrowserFetching?: undefined | boolean;
@@ -495,6 +496,10 @@ export class Configuration implements Required<ConfigurationPlain> {
495
496
  set baselineBranchName(baselineBranchName: string);
496
497
  getBaselineBranchName(): string;
497
498
  setBaselineBranchName(baselineBranchName: string): Configuration;
499
+ get gitMergeBaseTimestamp(): string;
500
+ set gitMergeBaseTimestamp(gitMergeBaseTimestamp: string);
501
+ getGitMergeBaseTimestamp(): string;
502
+ setGitMergeBaseTimestamp(gitMergeBaseTimestamp: string): Configuration;
498
503
  get compareWithParentBranch(): boolean;
499
504
  set compareWithParentBranch(compareWithParentBranch: boolean);
500
505
  getCompareWithParentBranch(): boolean;
@@ -609,9 +614,9 @@ export class Configuration implements Required<ConfigurationPlain> {
609
614
  set concurrentSessions(concurrentSessions: number);
610
615
  getConcurrentSessions(): number;
611
616
  setConcurrentSessions(concurrentSessions: number): Configuration;
612
- get browsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
613
- set browsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>);
614
- getBrowsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }>;
617
+ get browsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>;
618
+ set browsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>);
619
+ getBrowsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>;
615
620
  setBrowsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }>): Configuration;
616
621
  addBrowsers(...browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }>): Configuration;
617
622
  addBrowser(browserInfo: DesktopBrowserInfo): Configuration;
@@ -623,6 +628,29 @@ export class Configuration implements Required<ConfigurationPlain> {
623
628
  addDeviceEmulation(deviceName: DeviceNamePlain, screenOrientation?: undefined | ScreenOrientationPlain): Configuration;
624
629
  addMobileDevice(deviceName: AndroidDeviceNamePlain, screenOrientation: ScreenOrientationPlain, version?: undefined | AndroidVersionPlain): Configuration;
625
630
  addMobileDevice(deviceName: IosDeviceNamePlain, screenOrientation: ScreenOrientationPlain, version?: undefined | AndroidVersionPlain): Configuration;
631
+ addMultiDeviceTarget(deviceName: "iPhone X"): Configuration;
632
+ addMultiDeviceTarget(deviceName: "iPhone XR"): Configuration;
633
+ addMultiDeviceTarget(deviceName: "iPhone 11"): Configuration;
634
+ addMultiDeviceTarget(deviceName: "iPhone 11 Pro Max"): Configuration;
635
+ addMultiDeviceTarget(deviceName: "iPhone 11 Pro"): Configuration;
636
+ addMultiDeviceTarget(deviceName: "iPhone 8"): Configuration;
637
+ addMultiDeviceTarget(deviceName: "iPhone 8 Plus"): Configuration;
638
+ addMultiDeviceTarget(deviceName: "iPhone Xs"): Configuration;
639
+ addMultiDeviceTarget(deviceName: "iPhone Xs Max"): Configuration;
640
+ addMultiDeviceTarget(deviceName: "iPhone 12"): Configuration;
641
+ addMultiDeviceTarget(deviceName: "iPhone 12 mini"): Configuration;
642
+ addMultiDeviceTarget(deviceName: "iPhone 12 Pro Max"): Configuration;
643
+ addMultiDeviceTarget(deviceName: "iPhone 12 Pro"): Configuration;
644
+ addMultiDeviceTarget(deviceName: "iPhone 13"): Configuration;
645
+ addMultiDeviceTarget(deviceName: "iPhone 13 mini"): Configuration;
646
+ addMultiDeviceTarget(deviceName: "iPhone 13 Pro Max"): Configuration;
647
+ addMultiDeviceTarget(deviceName: "iPhone 13 Pro"): Configuration;
648
+ addMultiDeviceTarget(deviceName: "iPhone 14"): Configuration;
649
+ addMultiDeviceTarget(deviceName: "iPhone 14 Plus"): Configuration;
650
+ addMultiDeviceTarget(deviceName: "iPhone 14 Pro"): Configuration;
651
+ addMultiDeviceTarget(deviceName: "iPhone 14 Pro Max"): Configuration;
652
+ addMultiDeviceTarget(deviceName: "iPhone SE (2nd generation)"): Configuration;
653
+ addMultiDeviceTarget(deviceName: "iPhone SE (3rd generation)"): Configuration;
626
654
  get visualGridOptions(): { [key: string]: any; };
627
655
  set visualGridOptions(visualGridOptions: { [key: string]: any; });
628
656
  getVisualGridOptions(): { [key: string]: any; };