jumpy-lion 0.1.6-beta.7 → 1.0.0-beta.0

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.
Files changed (232) hide show
  1. package/README.md +1 -607
  2. package/browser/fonts/macos-bundle/40-macos-aliases.conf +515 -0
  3. package/browser/fonts/macos-bundle/README.md +24 -0
  4. package/browser/fonts/macos-bundle/install.sh +83 -0
  5. package/dist/browser-controller.d.ts +47 -4
  6. package/dist/browser-controller.d.ts.map +1 -1
  7. package/dist/browser-controller.js +219 -278
  8. package/dist/browser-controller.js.map +1 -1
  9. package/dist/browser-plugin.d.ts +82 -110
  10. package/dist/browser-plugin.d.ts.map +1 -1
  11. package/dist/browser-plugin.js +376 -379
  12. package/dist/browser-plugin.js.map +1 -1
  13. package/dist/browser-process/align-fingerprint-config.d.ts +36 -0
  14. package/dist/browser-process/align-fingerprint-config.d.ts.map +1 -0
  15. package/dist/browser-process/align-fingerprint-config.js +74 -0
  16. package/dist/browser-process/align-fingerprint-config.js.map +1 -0
  17. package/dist/browser-process/anti-detect-browser.d.ts +2 -2
  18. package/dist/browser-process/anti-detect-browser.js +7 -7
  19. package/dist/browser-process/anti-detect-config.d.ts +131 -2
  20. package/dist/browser-process/anti-detect-config.d.ts.map +1 -1
  21. package/dist/browser-process/anti-detect-config.js +337 -127
  22. package/dist/browser-process/anti-detect-config.js.map +1 -1
  23. package/dist/browser-process/browser.d.ts +25 -92
  24. package/dist/browser-process/browser.d.ts.map +1 -1
  25. package/dist/browser-process/browser.js +429 -73
  26. package/dist/browser-process/browser.js.map +1 -1
  27. package/dist/browser-process/fingerprint-config.d.ts +146 -0
  28. package/dist/browser-process/fingerprint-config.d.ts.map +1 -0
  29. package/dist/browser-process/fingerprint-config.js +308 -0
  30. package/dist/browser-process/fingerprint-config.js.map +1 -0
  31. package/dist/browser-process/get-chrome-executable.d.ts +6 -0
  32. package/dist/browser-process/get-chrome-executable.d.ts.map +1 -1
  33. package/dist/browser-process/get-chrome-executable.js +79 -4
  34. package/dist/browser-process/get-chrome-executable.js.map +1 -1
  35. package/dist/browser-process/gpu-family-profiles.d.ts +58 -0
  36. package/dist/browser-process/gpu-family-profiles.d.ts.map +1 -0
  37. package/dist/browser-process/gpu-family-profiles.js +480 -0
  38. package/dist/browser-process/gpu-family-profiles.js.map +1 -0
  39. package/dist/browser-process/launch-options.d.ts +301 -0
  40. package/dist/browser-process/launch-options.d.ts.map +1 -0
  41. package/dist/browser-process/launch-options.js +2 -0
  42. package/dist/browser-process/launch-options.js.map +1 -0
  43. package/dist/browser-process/port-allocator.d.ts +64 -0
  44. package/dist/browser-process/port-allocator.d.ts.map +1 -0
  45. package/dist/browser-process/port-allocator.js +198 -0
  46. package/dist/browser-process/port-allocator.js.map +1 -0
  47. package/dist/browser-process/process.d.ts +85 -0
  48. package/dist/browser-process/process.d.ts.map +1 -1
  49. package/dist/browser-process/process.js +235 -19
  50. package/dist/browser-process/process.js.map +1 -1
  51. package/dist/browser-process/signal-cleanup.d.ts +40 -0
  52. package/dist/browser-process/signal-cleanup.d.ts.map +1 -0
  53. package/dist/browser-process/signal-cleanup.js +105 -0
  54. package/dist/browser-process/signal-cleanup.js.map +1 -0
  55. package/dist/browser-process/widevine-cdm.d.ts +144 -0
  56. package/dist/browser-process/widevine-cdm.d.ts.map +1 -0
  57. package/dist/browser-process/widevine-cdm.js +298 -0
  58. package/dist/browser-process/widevine-cdm.js.map +1 -0
  59. package/dist/browser-profiles/chrome/populate-profile.d.ts.map +1 -1
  60. package/dist/browser-profiles/chrome/populate-profile.js +21 -22
  61. package/dist/browser-profiles/chrome/populate-profile.js.map +1 -1
  62. package/dist/connection/cdp-reconnection.d.ts +50 -0
  63. package/dist/connection/cdp-reconnection.d.ts.map +1 -0
  64. package/dist/connection/cdp-reconnection.js +75 -0
  65. package/dist/connection/cdp-reconnection.js.map +1 -0
  66. package/dist/connection/page-session.d.ts +114 -0
  67. package/dist/connection/page-session.d.ts.map +1 -0
  68. package/dist/connection/page-session.js +237 -0
  69. package/dist/connection/page-session.js.map +1 -0
  70. package/dist/connection/session-client.d.ts +34 -0
  71. package/dist/connection/session-client.d.ts.map +1 -0
  72. package/dist/connection/session-client.js +129 -0
  73. package/dist/connection/session-client.js.map +1 -0
  74. package/dist/crawler.d.ts +9 -88
  75. package/dist/crawler.d.ts.map +1 -1
  76. package/dist/crawler.js +157 -8
  77. package/dist/crawler.js.map +1 -1
  78. package/dist/fingerprinting/fingerprint-injector.d.ts +24 -114
  79. package/dist/fingerprinting/fingerprint-injector.d.ts.map +1 -1
  80. package/dist/fingerprinting/fingerprint-injector.js +305 -611
  81. package/dist/fingerprinting/fingerprint-injector.js.map +1 -1
  82. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts +1 -1
  83. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts.map +1 -1
  84. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js +16 -14
  85. package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js.map +1 -1
  86. package/dist/fingerprinting/fingerprint-overrides/index.d.ts +6 -2
  87. package/dist/fingerprinting/fingerprint-overrides/index.d.ts.map +1 -1
  88. package/dist/fingerprinting/fingerprint-overrides/index.js +6 -2
  89. package/dist/fingerprinting/fingerprint-overrides/index.js.map +1 -1
  90. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts +1 -1
  91. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js +4 -4
  92. package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js.map +1 -1
  93. package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js +4 -4
  94. package/dist/fingerprinting/fingerprint-overrides/navigator-override.d.ts +18 -0
  95. package/dist/fingerprinting/fingerprint-overrides/navigator-override.d.ts.map +1 -0
  96. package/dist/fingerprinting/fingerprint-overrides/navigator-override.js +136 -0
  97. package/dist/fingerprinting/fingerprint-overrides/navigator-override.js.map +1 -0
  98. package/dist/fingerprinting/fingerprint-overrides/override.d.ts +151 -0
  99. package/dist/fingerprinting/fingerprint-overrides/override.d.ts.map +1 -0
  100. package/dist/fingerprinting/fingerprint-overrides/override.js +14 -0
  101. package/dist/fingerprinting/fingerprint-overrides/override.js.map +1 -0
  102. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.d.ts.map +1 -1
  103. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js +46 -15
  104. package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js.map +1 -1
  105. package/dist/fingerprinting/fingerprint-overrides/registry.d.ts +43 -0
  106. package/dist/fingerprinting/fingerprint-overrides/registry.d.ts.map +1 -0
  107. package/dist/fingerprinting/fingerprint-overrides/registry.js +342 -0
  108. package/dist/fingerprinting/fingerprint-overrides/registry.js.map +1 -0
  109. package/dist/fingerprinting/fingerprint-overrides/screen-override.d.ts +16 -0
  110. package/dist/fingerprinting/fingerprint-overrides/screen-override.d.ts.map +1 -0
  111. package/dist/fingerprinting/fingerprint-overrides/screen-override.js +175 -0
  112. package/dist/fingerprinting/fingerprint-overrides/screen-override.js.map +1 -0
  113. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts +1 -1
  114. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js +4 -4
  115. package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js.map +1 -1
  116. package/dist/fingerprinting/fingerprint-overrides/stealth-script.d.ts.map +1 -1
  117. package/dist/fingerprinting/fingerprint-overrides/stealth-script.js +75 -9
  118. package/dist/fingerprinting/fingerprint-overrides/stealth-script.js.map +1 -1
  119. package/dist/fingerprinting/fingerprint-overrides/ua-ch.d.ts +1 -1
  120. package/dist/fingerprinting/fingerprint-overrides/ua-ch.d.ts.map +1 -1
  121. package/dist/fingerprinting/fingerprint-overrides/ua-ch.js +34 -20
  122. package/dist/fingerprinting/fingerprint-overrides/ua-ch.js.map +1 -1
  123. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.d.ts.map +1 -1
  124. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js +25 -6
  125. package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js.map +1 -1
  126. package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js +1 -1
  127. package/dist/fingerprinting/hardware-realism.d.ts +83 -0
  128. package/dist/fingerprinting/hardware-realism.d.ts.map +1 -0
  129. package/dist/fingerprinting/hardware-realism.js +156 -0
  130. package/dist/fingerprinting/hardware-realism.js.map +1 -0
  131. package/dist/fingerprinting/injection-planner.d.ts +133 -0
  132. package/dist/fingerprinting/injection-planner.d.ts.map +1 -0
  133. package/dist/fingerprinting/injection-planner.js +497 -0
  134. package/dist/fingerprinting/injection-planner.js.map +1 -0
  135. package/dist/fingerprinting/locale-resolver.d.ts +8 -1
  136. package/dist/fingerprinting/locale-resolver.d.ts.map +1 -1
  137. package/dist/fingerprinting/locale-resolver.js +26 -3
  138. package/dist/fingerprinting/locale-resolver.js.map +1 -1
  139. package/dist/fingerprinting/non-apify-fingerprint-generator.d.ts +4 -4
  140. package/dist/fingerprinting/non-apify-fingerprint-generator.d.ts.map +1 -1
  141. package/dist/fingerprinting/non-apify-fingerprint-generator.js +24 -58
  142. package/dist/fingerprinting/non-apify-fingerprint-generator.js.map +1 -1
  143. package/dist/fingerprinting/non-apify-profiles.json +10515 -8494
  144. package/dist/fingerprinting/os-consistency.d.ts +28 -0
  145. package/dist/fingerprinting/os-consistency.d.ts.map +1 -0
  146. package/dist/fingerprinting/os-consistency.js +45 -0
  147. package/dist/fingerprinting/os-consistency.js.map +1 -0
  148. package/dist/fingerprinting/profile-quality.d.ts +25 -0
  149. package/dist/fingerprinting/profile-quality.d.ts.map +1 -0
  150. package/dist/fingerprinting/profile-quality.js +310 -0
  151. package/dist/fingerprinting/profile-quality.js.map +1 -0
  152. package/dist/fingerprinting/profile-selector.d.ts +102 -0
  153. package/dist/fingerprinting/profile-selector.d.ts.map +1 -0
  154. package/dist/fingerprinting/profile-selector.js +168 -0
  155. package/dist/fingerprinting/profile-selector.js.map +1 -0
  156. package/dist/fingerprinting/ua-alignment.d.ts +83 -0
  157. package/dist/fingerprinting/ua-alignment.d.ts.map +1 -0
  158. package/dist/fingerprinting/ua-alignment.js +197 -0
  159. package/dist/fingerprinting/ua-alignment.js.map +1 -0
  160. package/dist/fingerprinting/ua-ch-brands.d.ts +88 -0
  161. package/dist/fingerprinting/ua-ch-brands.d.ts.map +1 -0
  162. package/dist/fingerprinting/ua-ch-brands.js +174 -0
  163. package/dist/fingerprinting/ua-ch-brands.js.map +1 -0
  164. package/dist/index.d.ts +5 -0
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +6 -0
  167. package/dist/index.js.map +1 -1
  168. package/dist/input/dropdown-selector.d.ts +90 -0
  169. package/dist/input/dropdown-selector.d.ts.map +1 -0
  170. package/dist/input/dropdown-selector.js +394 -0
  171. package/dist/input/dropdown-selector.js.map +1 -0
  172. package/dist/input/element-target.d.ts +152 -0
  173. package/dist/input/element-target.d.ts.map +1 -0
  174. package/dist/input/element-target.js +461 -0
  175. package/dist/input/element-target.js.map +1 -0
  176. package/dist/input/input-emulator.d.ts +85 -0
  177. package/dist/input/input-emulator.d.ts.map +1 -0
  178. package/dist/input/input-emulator.js +325 -0
  179. package/dist/input/input-emulator.js.map +1 -0
  180. package/dist/input/input-transport.d.ts +60 -0
  181. package/dist/input/input-transport.d.ts.map +1 -0
  182. package/dist/input/input-transport.js +28 -0
  183. package/dist/input/input-transport.js.map +1 -0
  184. package/dist/input/recording-transport.d.ts +32 -0
  185. package/dist/input/recording-transport.d.ts.map +1 -0
  186. package/dist/input/recording-transport.js +43 -0
  187. package/dist/input/recording-transport.js.map +1 -0
  188. package/dist/keyboard-layout.d.ts +2 -2
  189. package/dist/keyboard-layout.js +2 -2
  190. package/dist/navigation/page-navigation.d.ts +67 -0
  191. package/dist/navigation/page-navigation.d.ts.map +1 -0
  192. package/dist/navigation/page-navigation.js +122 -0
  193. package/dist/navigation/page-navigation.js.map +1 -0
  194. package/dist/network/network-watch.d.ts +110 -0
  195. package/dist/network/network-watch.d.ts.map +1 -0
  196. package/dist/network/network-watch.js +223 -0
  197. package/dist/network/network-watch.js.map +1 -0
  198. package/dist/page.d.ts +118 -104
  199. package/dist/page.d.ts.map +1 -1
  200. package/dist/page.js +311 -1130
  201. package/dist/page.js.map +1 -1
  202. package/dist/session/inject-hook.d.ts +24 -0
  203. package/dist/session/inject-hook.d.ts.map +1 -0
  204. package/dist/session/inject-hook.js +80 -0
  205. package/dist/session/inject-hook.js.map +1 -0
  206. package/dist/session/save.d.ts +21 -0
  207. package/dist/session/save.d.ts.map +1 -0
  208. package/dist/session/save.js +163 -0
  209. package/dist/session/save.js.map +1 -0
  210. package/dist/session/tar-data-dir.d.ts +18 -0
  211. package/dist/session/tar-data-dir.d.ts.map +1 -0
  212. package/dist/session/tar-data-dir.js +105 -0
  213. package/dist/session/tar-data-dir.js.map +1 -0
  214. package/dist/session/types.d.ts +80 -0
  215. package/dist/session/types.d.ts.map +1 -0
  216. package/dist/session/types.js +29 -0
  217. package/dist/session/types.js.map +1 -0
  218. package/dist/session-profile.d.ts +102 -0
  219. package/dist/session-profile.d.ts.map +1 -0
  220. package/dist/session-profile.js +163 -0
  221. package/dist/session-profile.js.map +1 -0
  222. package/dist/tsconfig.build.tsbuildinfo +1 -1
  223. package/package.json +17 -6
  224. package/scripts/postinstall.cjs +58 -0
  225. package/dist/fingerprinting/custom-fingerprint-injector.d.ts +0 -87
  226. package/dist/fingerprinting/custom-fingerprint-injector.d.ts.map +0 -1
  227. package/dist/fingerprinting/custom-fingerprint-injector.js +0 -342
  228. package/dist/fingerprinting/custom-fingerprint-injector.js.map +0 -1
  229. package/dist/launcher-wrap.d.ts +0 -10
  230. package/dist/launcher-wrap.d.ts.map +0 -1
  231. package/dist/launcher-wrap.js +0 -11
  232. package/dist/launcher-wrap.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"browser-plugin.js","sourceRoot":"","sources":["../src/browser-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-plugin.js","sourceRoot":"","sources":["../src/browser-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { FingerprintConfigJson } from './anti-detect-config.js';
2
+ /**
3
+ * Align a pre-generated FingerprintConfigJson with the actual running binary
4
+ * version so the profile's Chrome vintage (132-135 in pool data) never
5
+ * contradicts the real binary (147+). Mutates `cfg` in place.
6
+ *
7
+ * Three passes over navigator.userAgent:
8
+ * 1. Re-stamp Chrome/MAJOR.0.0.0 (UA Reduction form).
9
+ * 2. Sanitize third-party UA-modifier tokens. Pool-contaminated profiles
10
+ * carry app-embedded tokens (Electron-style: Rambox, Slack, Discord,
11
+ * Postman, etc.) that sit BEFORE "Chrome/" - a plain tail-strip misses
12
+ * them. Strip both: known mid-UA tokens (between AppleWebKit and Chrome)
13
+ * and any post-Safari junk.
14
+ * Confirmed pool contaminants observed in harvests:
15
+ * Rambox/2.5.2, LarkUrl, Feishu, newsai, toutiao, bytedance.
16
+ * Defensive entries: SamsungBrowser/Edg/OPR/YaBrowser are valid
17
+ * Chrome-derivative tokens AFTER Safari/537.36 but never BEFORE
18
+ * Chrome/ in real UAs - included here to strip mid-UA misplacements.
19
+ * 3. Validate against the canonical Chrome UA shape; rebuild from parts if
20
+ * an unknown contaminant slipped through, so a single bad pool entry
21
+ * can't ship.
22
+ *
23
+ * And one pass over userAgentData: rebuild the whole brand list for the binary
24
+ * major via `alignBrandList` - real brands re-stamped, GREASE token DERIVED,
25
+ * list order permuted the way Chromium permutes it. The GREASE entry is not
26
+ * free-form: Chromium's GenerateBrandVersionList
27
+ * (components/embedder_support/user_agent_utils.cc) computes its separators
28
+ * from `major % 11`, its fake version from `major % 3` and the list order from
29
+ * `major % 6`. Keeping the profile's own GREASE (or picking its version by a
30
+ * session hash, as this function used to) pairs a Chrome 134 token with a
31
+ * Chrome 147 UA - a `sec-ch-ua` no Chromium emits, which
32
+ * `search.shopping.naver.com` answers with a challenge-free HTTP 418
33
+ * (issue #131). The GREASE version still never carries the real build number.
34
+ */
35
+ export declare function alignFingerprintConfigWithBinary(cfg: FingerprintConfigJson, binaryVersion: string): void;
36
+ //# sourceMappingURL=align-fingerprint-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"align-fingerprint-config.d.ts","sourceRoot":"","sources":["../../src/browser-process/align-fingerprint-config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,gCAAgC,CAC5C,GAAG,EAAE,qBAAqB,EAC1B,aAAa,EAAE,MAAM,GACtB,IAAI,CA0CN"}
@@ -0,0 +1,74 @@
1
+ import { log } from 'crawlee';
2
+ import { alignBrandList } from '../fingerprinting/ua-ch-brands.js';
3
+ /**
4
+ * Align a pre-generated FingerprintConfigJson with the actual running binary
5
+ * version so the profile's Chrome vintage (132-135 in pool data) never
6
+ * contradicts the real binary (147+). Mutates `cfg` in place.
7
+ *
8
+ * Three passes over navigator.userAgent:
9
+ * 1. Re-stamp Chrome/MAJOR.0.0.0 (UA Reduction form).
10
+ * 2. Sanitize third-party UA-modifier tokens. Pool-contaminated profiles
11
+ * carry app-embedded tokens (Electron-style: Rambox, Slack, Discord,
12
+ * Postman, etc.) that sit BEFORE "Chrome/" - a plain tail-strip misses
13
+ * them. Strip both: known mid-UA tokens (between AppleWebKit and Chrome)
14
+ * and any post-Safari junk.
15
+ * Confirmed pool contaminants observed in harvests:
16
+ * Rambox/2.5.2, LarkUrl, Feishu, newsai, toutiao, bytedance.
17
+ * Defensive entries: SamsungBrowser/Edg/OPR/YaBrowser are valid
18
+ * Chrome-derivative tokens AFTER Safari/537.36 but never BEFORE
19
+ * Chrome/ in real UAs - included here to strip mid-UA misplacements.
20
+ * 3. Validate against the canonical Chrome UA shape; rebuild from parts if
21
+ * an unknown contaminant slipped through, so a single bad pool entry
22
+ * can't ship.
23
+ *
24
+ * And one pass over userAgentData: rebuild the whole brand list for the binary
25
+ * major via `alignBrandList` - real brands re-stamped, GREASE token DERIVED,
26
+ * list order permuted the way Chromium permutes it. The GREASE entry is not
27
+ * free-form: Chromium's GenerateBrandVersionList
28
+ * (components/embedder_support/user_agent_utils.cc) computes its separators
29
+ * from `major % 11`, its fake version from `major % 3` and the list order from
30
+ * `major % 6`. Keeping the profile's own GREASE (or picking its version by a
31
+ * session hash, as this function used to) pairs a Chrome 134 token with a
32
+ * Chrome 147 UA - a `sec-ch-ua` no Chromium emits, which
33
+ * `search.shopping.naver.com` answers with a challenge-free HTTP 418
34
+ * (issue #131). The GREASE version still never carries the real build number.
35
+ */
36
+ export function alignFingerprintConfigWithBinary(cfg, binaryVersion) {
37
+ const major = binaryVersion.split('.')[0];
38
+ if (cfg.navigator.userAgent) {
39
+ cfg.navigator.userAgent = cfg.navigator.userAgent.replace(/Chrome\/\d+\.\d+\.\d+\.\d+/, `Chrome/${major}.0.0.0`);
40
+ cfg.navigator.userAgent = cfg.navigator.userAgent
41
+ .replace(/\s+(Rambox\/[^\s]+|Slack\/[^\s]+|Discord\/[^\s]+|Postman[^\s]*|Whale\/[^\s]+|Electron\/[^\s]+|Atom\/[^\s]+|LarkUrl|Lark\/[^\s]+|Feishu[^\s]*|newsai\/[^\s]+|toutiao[^\s]*|bytedance[^\s]*)/gi, '')
42
+ .replace(/(Safari\/537\.36)\s+\S.*$/i, '$1');
43
+ const CHROME_UA_CANONICAL = new RegExp('^Mozilla/5\\.0 \\([^)]+\\) '
44
+ + 'AppleWebKit/537\\.36 \\(KHTML, like Gecko\\) '
45
+ + 'Chrome/\\d+\\.\\d+\\.\\d+\\.\\d+ '
46
+ + 'Safari/537\\.36'
47
+ + '(?: (?:Mobile )?(?:Edg|SamsungBrowser|OPR|YaBrowser)/[\\d.]+)?$');
48
+ if (!CHROME_UA_CANONICAL.test(cfg.navigator.userAgent)) {
49
+ const PLATFORM_PARTS = {
50
+ MacIntel: 'Macintosh; Intel Mac OS X 10_15_7',
51
+ Win32: 'Windows NT 10.0; Win64; x64',
52
+ };
53
+ const platformPart = PLATFORM_PARTS[cfg.navigator.platform ?? ''] ?? 'X11; Linux x86_64';
54
+ const rebuilt = `Mozilla/5.0 (${platformPart}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/${major}.0.0.0 Safari/537.36`;
55
+ log.warning(`[AntiDetect] UA failed canonical-shape check after sanitization; rebuilding from parts. before=${cfg.navigator.userAgent} after=${rebuilt}`);
56
+ cfg.navigator.userAgent = rebuilt;
57
+ }
58
+ }
59
+ if (cfg.navigator.userAgentData) {
60
+ cfg.navigator.userAgentData.uaFullVersion = binaryVersion;
61
+ const { brands } = cfg.navigator.userAgentData;
62
+ // Both surfaces are derived from the same major, so they come back in
63
+ // the same Chromium-permuted order and can be zipped index-by-index.
64
+ const majorBrands = alignBrandList(brands, major);
65
+ const fullBrands = alignBrandList(brands, binaryVersion);
66
+ cfg.navigator.userAgentData.brands = majorBrands.map((b, i) => ({
67
+ brand: b.brand,
68
+ version: b.version,
69
+ full_version: fullBrands[i]?.version ?? b.version,
70
+ }));
71
+ cfg.navigator.userAgentData.fullVersionList = cfg.navigator.userAgentData.brands;
72
+ }
73
+ }
74
+ //# sourceMappingURL=align-fingerprint-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"align-fingerprint-config.js","sourceRoot":"","sources":["../../src/browser-process/align-fingerprint-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAG9B,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,gCAAgC,CAC5C,GAA0B,EAC1B,aAAqB;IAErB,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,IAAI,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC1B,GAAG,CAAC,SAAS,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CACrD,4BAA4B,EAC5B,UAAU,KAAK,QAAQ,CAC1B,CAAC;QACF,GAAG,CAAC,SAAS,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS;aAC5C,OAAO,CAAC,8LAA8L,EAAE,EAAE,CAAC;aAC3M,OAAO,CAAC,4BAA4B,EAAE,IAAI,CAAC,CAAC;QACjD,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAClC,6BAA6B;cAC3B,+CAA+C;cAC/C,mCAAmC;cACnC,iBAAiB;cACjB,iEAAiE,CACtE,CAAC;QACF,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,MAAM,cAAc,GAA2B;gBAC3C,QAAQ,EAAE,mCAAmC;gBAC7C,KAAK,EAAE,6BAA6B;aACvC,CAAC;YACF,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC,IAAI,mBAAmB,CAAC;YACzF,MAAM,OAAO,GAAG,gBAAgB,YAAY,mDAAmD,KAAK,sBAAsB,CAAC;YAC3H,GAAG,CAAC,OAAO,CAAC,kGAAkG,GAAG,CAAC,SAAS,CAAC,SAAS,UAAU,OAAO,EAAE,CAAC,CAAC;YAC1J,GAAG,CAAC,SAAS,CAAC,SAAS,GAAG,OAAO,CAAC;QACtC,CAAC;IACL,CAAC;IACD,IAAI,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;QAC9B,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,aAAa,GAAG,aAAa,CAAC;QAC1D,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC;QAC/C,sEAAsE;QACtE,qEAAqE;QACrE,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACzD,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5D,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO;SACpD,CAAC,CAAC,CAAC;QACJ,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,GAAG,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC;IACrF,CAAC;AACL,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * anti-detect-browser.ts — Detect whether the running browser is the custom anti-detect build
2
+ * anti-detect-browser.ts - Detect whether the running browser is the custom anti-detect build
3
3
  *
4
4
  * Used by fingerprint-injector.ts to decide which JS override modules to skip
5
5
  * (those already handled natively by C++ patches in the anti-detect browser).
@@ -21,7 +21,7 @@ export declare function isAntiDetectBrowser(executablePath: string): Promise<boo
21
21
  export declare function isAntiDetectBrowserSync(executablePath: string): boolean;
22
22
  /**
23
23
  * When useNativeStealth=true, the fingerprint-injector skips the ENTIRE JS override
24
- * pipeline — no fingerprint scripts are injected at all. This set exists for
24
+ * pipeline - no fingerprint scripts are injected at all. This set exists for
25
25
  * reference/documentation and for any external callers that check individual module
26
26
  * names via shouldSkipJsOverride().
27
27
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * anti-detect-browser.ts — Detect whether the running browser is the custom anti-detect build
2
+ * anti-detect-browser.ts - Detect whether the running browser is the custom anti-detect build
3
3
  *
4
4
  * Used by fingerprint-injector.ts to decide which JS override modules to skip
5
5
  * (those already handled natively by C++ patches in the anti-detect browser).
@@ -47,7 +47,7 @@ export async function isAntiDetectBrowser(executablePath) {
47
47
  }
48
48
  }
49
49
  catch {
50
- // Ignore — binary may not support --version in this way
50
+ // Ignore - binary may not support --version in this way
51
51
  }
52
52
  return false;
53
53
  }
@@ -61,7 +61,7 @@ export function isAntiDetectBrowserSync(executablePath) {
61
61
  // Walk up to 5 ancestors looking for the .anti-detect-version marker.
62
62
  // macOS packages the binary at `.../Chromium.app/Contents/MacOS/Chromium`,
63
63
  // and the build script can install the marker next to the `.app`, inside
64
- // Contents/, or inside Contents/MacOS/ — so a single depth check is
64
+ // Contents/, or inside Contents/MacOS/ - so a single depth check is
65
65
  // brittle. 5 levels covers every current build layout.
66
66
  let dir = path.dirname(executablePath);
67
67
  for (let i = 0; i < 5; i++) {
@@ -88,7 +88,7 @@ export function isAntiDetectBrowserSync(executablePath) {
88
88
  // ─── Capability map ───────────────────────────────────────────────────────────
89
89
  /**
90
90
  * When useNativeStealth=true, the fingerprint-injector skips the ENTIRE JS override
91
- * pipeline — no fingerprint scripts are injected at all. This set exists for
91
+ * pipeline - no fingerprint scripts are injected at all. This set exists for
92
92
  * reference/documentation and for any external callers that check individual module
93
93
  * names via shouldSkipJsOverride().
94
94
  *
@@ -126,11 +126,11 @@ export const NATIVE_STEALTH_SKIPS = new Set([
126
126
  'runtime-enable-bypass', // patches 0005, 0015
127
127
  'cdp-detection-bypass', // patches 0001, 0005, 0015
128
128
  'webgpu-spoofing', // patch 0012
129
- 'storage-consistency', // no C++ equivalent — skipped for simplicity
129
+ 'storage-consistency', // no C++ equivalent - skipped for simplicity
130
130
  'timing-consistency', // Cromite perf.now clamping covers the main vector
131
131
  'locale-spoofing', // Cromite ICU config covers locale
132
- 'stealth-utils', // no JS overrides needed — C++ handles at source
133
- 'prototype-integrity', // no JS overrides needed — C++ patches are native
132
+ 'stealth-utils', // no JS overrides needed - C++ handles at source
133
+ 'prototype-integrity', // no JS overrides needed - C++ patches are native
134
134
  ]);
135
135
  /**
136
136
  * Returns true if a given override module should be skipped when using the
@@ -1,9 +1,9 @@
1
1
  /**
2
- * anti-detect-config.ts — Generate and manage FingerprintConfig JSON for the anti-detect browser
2
+ * anti-detect-config.ts - Generate and manage FingerprintConfig JSON for the anti-detect browser
3
3
  *
4
4
  * Called by browser.ts before launching the browser when useNativeStealth is enabled.
5
5
  * Translates the fingerprint-generator BrowserFingerprintWithHeaders output into
6
- * the --fingerprint-config JSON schema consumed by the C++ FingerprintConfig class.
6
+ * the --blink-platform-overrides-file JSON schema consumed by the C++ override singleton.
7
7
  */
8
8
  import type { BrowserFingerprintWithHeaders } from 'fingerprint-generator';
9
9
  import type { ResolvedLocale } from '../fingerprinting/locale-resolver.js';
@@ -35,6 +35,15 @@ export interface FingerprintConfigJson {
35
35
  hardwareConcurrency: number;
36
36
  deviceMemory: number;
37
37
  userAgent: string;
38
+ /**
39
+ * navigator.storage.estimate().quota override, in bytes. Without this
40
+ * the C++ StorageManager reports the real free disk size, which leaks
41
+ * the host (Mac SSD on local dev = ~600 GB; Linux container disk = ~37 GB)
42
+ * and makes the same spoofed Mac profile produce different quotas
43
+ * across hosts. Pinned per-session derived from seed+deviceMemory so
44
+ * Mac-on-Mac and Mac-spoofed-on-Linux report the same plausible value.
45
+ */
46
+ storageQuota?: number;
38
47
  userAgentData?: {
39
48
  brands: FingerprintConfigUaBrand[];
40
49
  mobile: boolean;
@@ -50,6 +59,50 @@ export interface FingerprintConfigJson {
50
59
  webgl: {
51
60
  vendor: string;
52
61
  renderer: string;
62
+ /**
63
+ * GL_MAX_TEXTURE_SIZE override. Real Apple Silicon (Metal) reports 16384;
64
+ * SwiftShader reports 8192. Claiming an Apple/NVIDIA/AMD renderer string
65
+ * with the underlying SwiftShader 8192 is an instant cross-pname
66
+ * inconsistency CreepJS exploits. Populated based on the renderer string
67
+ * in generateFingerprintConfig(); 0/undefined = "fall through to driver".
68
+ */
69
+ maxTextureSize?: number;
70
+ /**
71
+ * GL_MAX_VIEWPORT_DIMS override (returned as [w, w]). Mac M1 / modern
72
+ * discrete = 16384; Intel HD = 16384 too on modern; older Intel = 8192.
73
+ */
74
+ maxViewportDim?: number;
75
+ /**
76
+ * Per-platform GL extension allowlist returned by gl.getSupportedExtensions().
77
+ * When empty/undefined, the C++ emulation provider falls back to a
78
+ * Mac-realistic 9-token default. Populating this with the family-specific
79
+ * extension set closes the SwiftShader-vs-spoofed-GPU gap (CreepJS hashes
80
+ * the extensions list).
81
+ */
82
+ extensions?: string[];
83
+ /**
84
+ * GPU family hint consumed by the C++ EmulatedConfig in M2+ to select
85
+ * per-family Tier-2 rendering quirks (glsl_probe_classifier.cc) and
86
+ * per-family Tier-1 baseline tables (baseline_data.cc). Today (M1) it
87
+ * gets written but the C++ side ignores it until M2 lands the parser.
88
+ */
89
+ familyHint?: 'apple_metal' | 'linux_mesa_amd' | 'linux_mesa_nvidia' | 'linux_mesa_intel' | 'windows_d3d_nvidia' | 'windows_d3d_amd' | 'windows_d3d_intel';
90
+ /** GL_MAX_DRAW_BUFFERS override. Mac M1 = 8; Intel HD 4000-series = 4. */
91
+ maxDrawBuffers?: number;
92
+ /** GL_MAX_SAMPLES override. Mac M1 = 4; modern discrete NVIDIA/AMD = 8 or 16; SwiftShader = 4. */
93
+ maxSamples?: number;
94
+ /** GL_MAX_3D_TEXTURE_SIZE override. Mac M1 / modern discrete = 16384; Intel HD = 2048. */
95
+ max3dTextureSize?: number;
96
+ /** GL_MAX_ARRAY_TEXTURE_LAYERS override. Mac M1 = 2048; Intel HD = 512. */
97
+ maxArrayTextureLayers?: number;
98
+ /** GL_SUBPIXEL_BITS override. Mac Metal = 4; D3D11 = 4; some Mesa = 8. */
99
+ subpixelBits?: number;
100
+ /** GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS override. Mac M1 = 64; varies. */
101
+ maxTransformFeedbackInterleavedComponents?: number;
102
+ /** GL_ALIASED_LINE_WIDTH_RANGE [min, max]. Mac M1 = [1,1]; NVIDIA D3D = [1, 7.375]; Mesa = [1, 16]. */
103
+ aliasedLineWidthRange?: [number, number];
104
+ /** GL_ALIASED_POINT_SIZE_RANGE [min, max]. Mac M1 = [1, 511]; varies. */
105
+ aliasedPointSizeRange?: [number, number];
53
106
  };
54
107
  screen: {
55
108
  width: number;
@@ -78,10 +131,86 @@ export interface FingerprintConfigJson {
78
131
  device: string;
79
132
  description: string;
80
133
  };
134
+ /**
135
+ * navigator.connection / NetworkInformation override. Without this,
136
+ * datacenter Apify runners report rtt<5ms and downlink in the hundreds -
137
+ * both classic datacenter tells. Pinned per-session to plausible
138
+ * residential-broadband values; same seed → same values across hosts.
139
+ */
140
+ network?: {
141
+ /** Round-trip time in ms (rounded to 25ms granularity per spec) */
142
+ rtt: number;
143
+ /** Downlink in Mbps */
144
+ downlink: number;
145
+ /** "slow-2g" | "2g" | "3g" | "4g" - almost always "4g" for residential */
146
+ effectiveType: 'slow-2g' | '2g' | '3g' | '4g';
147
+ saveData: boolean;
148
+ };
149
+ /**
150
+ * Audio platform hints. Currently only sampleRate is consumed at the
151
+ * AudioContext construction path. Mac default = 44100 Hz; Linux/Win = 48000.
152
+ */
153
+ audio?: {
154
+ sampleRate: number;
155
+ };
156
+ /**
157
+ * Canvas / fonts platform hints (M6). Consumed by the C++ FingerprintConfig
158
+ * parser to drive:
159
+ * - the Cromite fonts allowlist consumer (font enumeration via
160
+ * `document.fonts`, measureText, FontFaceSet) when `fonts` is set
161
+ * - Skia text rendering mode (canvas2D + page text rasterisation)
162
+ * when `textRenderingMode` is set
163
+ * Both fields are optional - the C++ parser derives a sensible per-family
164
+ * default from `webgl.familyHint` when they're absent so the operator
165
+ * doesn't have to repeat the platform allowlist for every session.
166
+ */
167
+ canvas?: {
168
+ /** Font family names to advertise. Defaults to a per-family list. */
169
+ fonts?: string[];
170
+ /**
171
+ * Skia text rendering mode hint. Recognised values:
172
+ * "subpixel_aa_no_hinting" - Mac CoreText
173
+ * "lcd_subpixel_full_hinting" - Windows DirectWrite / ClearType
174
+ * "rgb_subpixel_slight_hinting" - Linux FreeType + fontconfig
175
+ */
176
+ textRenderingMode?: 'subpixel_aa_no_hinting' | 'lcd_subpixel_full_hinting' | 'rgb_subpixel_slight_hinting';
177
+ };
178
+ /**
179
+ * Spoofed coordinates for navigator.geolocation.getCurrentPosition() /
180
+ * watchPosition(). The C++ patch replaces the position struct AFTER the
181
+ * browser-process permission flow has resolved successfully - so the
182
+ * permission UX (prompt / denial / allow) still behaves like real Chrome,
183
+ * but the host's actual GPS / network-geolocation coordinates never reach
184
+ * page JS. Detection vectors closed: any site that calls getCurrentPosition
185
+ * and compares the returned lat/lon against the IP-geolocated location of
186
+ * the proxy exit.
187
+ *
188
+ * Latitude and longitude are required when this block is present;
189
+ * accuracy defaults to 100 m (typical residential GPS) if omitted. The
190
+ * optional fields (altitude / altitudeAccuracy / heading / speed) pass
191
+ * through to the W3C Geolocation API as-is - undefined ↔ "unavailable on
192
+ * this device" which is the realistic default for a stationary
193
+ * laptop/desktop without GPS.
194
+ */
195
+ geolocation?: {
196
+ latitude: number;
197
+ longitude: number;
198
+ /** Horizontal accuracy in meters. Defaults to 100 in the C++ layer. */
199
+ accuracy?: number;
200
+ altitude?: number;
201
+ altitudeAccuracy?: number;
202
+ heading?: number;
203
+ speed?: number;
204
+ };
81
205
  }
82
206
  /**
83
207
  * Generate a FingerprintConfig JSON object from fingerprint-generator output.
84
208
  *
209
+ * Composed from per-surface pure builders (navigator / webgl / webgpu / screen /
210
+ * locale / battery / network / audio / canvas). The narrow public signature is
211
+ * the module interface - the builders stay private so callers assemble the whole
212
+ * config in one call.
213
+ *
85
214
  * @param fingerprint - BrowserFingerprintWithHeaders from fingerprint-generator
86
215
  * @param sessionId - Session identifier used to derive the seed (proxy session ID, etc.)
87
216
  * @param resolvedLocale - Pre-resolved locale/languages/timezone triple. When provided,
@@ -1 +1 @@
1
- {"version":3,"file":"anti-detect-config.d.ts","sourceRoot":"","sources":["../../src/browser-process/anti-detect-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAI3E,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,CAAC,CAAC;IACX,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,SAAS,EAAE,MAAM,CAAC;IAClB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,oFAAoF;QACpF,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,8DAA8D;QAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE;YACZ,MAAM,EAAE,wBAAwB,EAAE,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC;YAChB,QAAQ,EAAE,MAAM,CAAC;YACjB,eAAe,EAAE,MAAM,CAAC;YACxB,YAAY,EAAE,MAAM,CAAC;YACrB,OAAO,EAAE,MAAM,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,aAAa,EAAE,MAAM,CAAC;YACtB,eAAe,EAAE,wBAAwB,EAAE,CAAC;SAC/C,CAAC;KACL,CAAC;IACF,KAAK,EAAE;QACH,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,MAAM,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,KAAK,CAAC,EAAE;QACJ,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,OAAO,EAAE,wBAAwB,CAAC;IAClC,KAAK,EAAE;QACH,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,OAAO,CAAC;QACf,KAAK,EAAE,OAAO,CAAC;QACf,WAAW,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,MAAM,EAAE;QACJ,0BAA0B,EAAE,MAAM,CAAC;KACtC,CAAC;IACF,MAAM,CAAC,EAAE;QACL,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC;CACL;AAID;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACrC,WAAW,EAAE,6BAA6B,EAC1C,SAAS,CAAC,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,cAAc,GAChC,qBAAqB,CA8KvB;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAM/F;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMlF"}
1
+ {"version":3,"file":"anti-detect-config.d.ts","sourceRoot":"","sources":["../../src/browser-process/anti-detect-config.ts"],"names":[],"mappings":"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"}