@rudderhq/server 0.4.5 → 0.4.6-canary.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 (272) hide show
  1. package/dist/app.d.ts.map +1 -1
  2. package/dist/app.js +2 -0
  3. package/dist/app.js.map +1 -1
  4. package/dist/auth/better-auth.d.ts +15 -3
  5. package/dist/auth/better-auth.d.ts.map +1 -1
  6. package/dist/auth/better-auth.js.map +1 -1
  7. package/dist/bootstrap/plugin-host-runtime.d.ts +8 -8
  8. package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
  9. package/dist/bootstrap/register-api-routes.js +2 -0
  10. package/dist/bootstrap/register-api-routes.js.map +1 -1
  11. package/dist/bundled-plugins/plugin-linear/dist/worker.js +26 -5
  12. package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +2 -2
  13. package/dist/bundled-plugins/plugin-linear/package.json +1 -1
  14. package/dist/middleware/auth.d.ts.map +1 -1
  15. package/dist/middleware/auth.js +14 -2
  16. package/dist/middleware/auth.js.map +1 -1
  17. package/dist/onboarding-assets/ceo/SOUL.md +8 -5
  18. package/dist/routes/access-onboarding.helpers.d.ts.map +1 -1
  19. package/dist/routes/access-onboarding.helpers.js +2 -24
  20. package/dist/routes/access-onboarding.helpers.js.map +1 -1
  21. package/dist/routes/access.helpers.d.ts +1 -1
  22. package/dist/routes/browser.d.ts +30 -0
  23. package/dist/routes/browser.d.ts.map +1 -0
  24. package/dist/routes/browser.js +263 -0
  25. package/dist/routes/browser.js.map +1 -0
  26. package/dist/routes/chats.d.ts.map +1 -1
  27. package/dist/routes/chats.js +11 -0
  28. package/dist/routes/chats.js.map +1 -1
  29. package/dist/routes/instance-settings.d.ts.map +1 -1
  30. package/dist/routes/instance-settings.js +33 -1
  31. package/dist/routes/instance-settings.js.map +1 -1
  32. package/dist/routes/onboarding.d.ts.map +1 -1
  33. package/dist/routes/onboarding.js +33 -31
  34. package/dist/routes/onboarding.js.map +1 -1
  35. package/dist/routes/plugin-ui-static.d.ts.map +1 -1
  36. package/dist/routes/plugin-ui-static.js +2 -4
  37. package/dist/routes/plugin-ui-static.js.map +1 -1
  38. package/dist/routes/plugins.d.ts.map +1 -1
  39. package/dist/routes/plugins.js +2 -4
  40. package/dist/routes/plugins.js.map +1 -1
  41. package/dist/services/access.d.ts +23 -23
  42. package/dist/services/activity-log.d.ts.map +1 -1
  43. package/dist/services/activity-log.js +2 -4
  44. package/dist/services/activity-log.js.map +1 -1
  45. package/dist/services/activity.d.ts +13 -13
  46. package/dist/services/agent-run-context.d.ts +2 -1
  47. package/dist/services/agent-run-context.d.ts.map +1 -1
  48. package/dist/services/agent-run-context.js +29 -4
  49. package/dist/services/agent-run-context.js.map +1 -1
  50. package/dist/services/agents.d.ts +36 -36
  51. package/dist/services/approvals.d.ts +18 -18
  52. package/dist/services/assets.d.ts +6 -6
  53. package/dist/services/automation-chat-output.d.ts +1 -1
  54. package/dist/services/automations.d.ts +37 -37
  55. package/dist/services/automations.d.ts.map +1 -1
  56. package/dist/services/automations.js +2 -6
  57. package/dist/services/automations.js.map +1 -1
  58. package/dist/services/board-auth.d.ts +38 -38
  59. package/dist/services/browser-broker.d.ts +43 -0
  60. package/dist/services/browser-broker.d.ts.map +1 -0
  61. package/dist/services/browser-broker.js +173 -0
  62. package/dist/services/browser-broker.js.map +1 -0
  63. package/dist/services/browser-broker.test.d.ts +2 -0
  64. package/dist/services/browser-broker.test.d.ts.map +1 -0
  65. package/dist/services/browser-broker.test.js +154 -0
  66. package/dist/services/browser-broker.test.js.map +1 -0
  67. package/dist/services/browser-capability.d.ts +20 -0
  68. package/dist/services/browser-capability.d.ts.map +1 -0
  69. package/dist/services/browser-capability.js +29 -0
  70. package/dist/services/browser-capability.js.map +1 -0
  71. package/dist/services/calendar.d.ts +34 -34
  72. package/dist/services/chat-agent-runs.d.ts.map +1 -1
  73. package/dist/services/chat-agent-runs.js +2 -4
  74. package/dist/services/chat-agent-runs.js.map +1 -1
  75. package/dist/services/chat-assistant.d.ts.map +1 -1
  76. package/dist/services/chat-assistant.js +6 -4
  77. package/dist/services/chat-assistant.js.map +1 -1
  78. package/dist/services/chat-assistant.runtime-batch.d.ts +3 -0
  79. package/dist/services/chat-assistant.runtime-batch.d.ts.map +1 -0
  80. package/dist/services/chat-assistant.runtime-batch.js +16 -0
  81. package/dist/services/chat-assistant.runtime-batch.js.map +1 -0
  82. package/dist/services/chat-work-manifest.d.ts +7 -0
  83. package/dist/services/chat-work-manifest.d.ts.map +1 -0
  84. package/dist/services/chat-work-manifest.js +235 -0
  85. package/dist/services/chat-work-manifest.js.map +1 -0
  86. package/dist/services/chats.d.ts +64 -64
  87. package/dist/services/chats.d.ts.map +1 -1
  88. package/dist/services/chats.js +2 -4
  89. package/dist/services/chats.js.map +1 -1
  90. package/dist/services/costs.d.ts +2 -2
  91. package/dist/services/finance.d.ts +11 -11
  92. package/dist/services/goals.d.ts +20 -20
  93. package/dist/services/instance-settings.d.ts +3 -1
  94. package/dist/services/instance-settings.d.ts.map +1 -1
  95. package/dist/services/instance-settings.js +30 -1
  96. package/dist/services/instance-settings.js.map +1 -1
  97. package/dist/services/integrations/agent-integrations.d.ts +8 -8
  98. package/dist/services/integrations/custom-integrations.d.ts +3 -3
  99. package/dist/services/integrations/feishu/inbound-dispatcher-db.d.ts.map +1 -1
  100. package/dist/services/integrations/feishu/inbound-dispatcher-db.js +10 -11
  101. package/dist/services/integrations/feishu/inbound-dispatcher-db.js.map +1 -1
  102. package/dist/services/integrations/feishu/user-bindings.d.ts.map +1 -1
  103. package/dist/services/integrations/feishu/user-bindings.js +2 -4
  104. package/dist/services/integrations/feishu/user-bindings.js.map +1 -1
  105. package/dist/services/issue-approvals.d.ts +3 -3
  106. package/dist/services/issues.comments-attachments.d.ts +8 -8
  107. package/dist/services/issues.d.ts +19 -19
  108. package/dist/services/issues.helpers.d.ts.map +1 -1
  109. package/dist/services/issues.helpers.js +2 -6
  110. package/dist/services/issues.helpers.js.map +1 -1
  111. package/dist/services/knowledge-portability/organization-skills.d.ts +2 -1
  112. package/dist/services/knowledge-portability/organization-skills.d.ts.map +1 -1
  113. package/dist/services/knowledge-portability/organization-skills.js +16 -6
  114. package/dist/services/knowledge-portability/organization-skills.js.map +1 -1
  115. package/dist/services/messenger.d.ts +3 -3
  116. package/dist/services/messenger.d.ts.map +1 -1
  117. package/dist/services/messenger.js +3 -0
  118. package/dist/services/messenger.js.map +1 -1
  119. package/dist/services/organization-intelligence-profiles.d.ts.map +1 -1
  120. package/dist/services/organization-intelligence-profiles.js +2 -0
  121. package/dist/services/organization-intelligence-profiles.js.map +1 -1
  122. package/dist/services/orgs.d.ts +1 -1
  123. package/dist/services/orgs.d.ts.map +1 -1
  124. package/dist/services/orgs.js +2 -10
  125. package/dist/services/orgs.js.map +1 -1
  126. package/dist/services/plugin-registry.d.ts +71 -71
  127. package/dist/services/plugin-registry.d.ts.map +1 -1
  128. package/dist/services/plugin-registry.js +2 -5
  129. package/dist/services/plugin-registry.js.map +1 -1
  130. package/dist/services/postgres-errors.d.ts +6 -0
  131. package/dist/services/postgres-errors.d.ts.map +1 -0
  132. package/dist/services/postgres-errors.js +30 -0
  133. package/dist/services/postgres-errors.js.map +1 -0
  134. package/dist/services/projects.d.ts +2 -2
  135. package/dist/services/runtime-kernel/heartbeat.d.ts +29 -29
  136. package/dist/services/runtime-kernel/model-fallback.d.ts +2 -0
  137. package/dist/services/runtime-kernel/model-fallback.d.ts.map +1 -1
  138. package/dist/services/runtime-kernel/model-fallback.js +108 -9
  139. package/dist/services/runtime-kernel/model-fallback.js.map +1 -1
  140. package/dist/services/secrets.d.ts +20 -20
  141. package/dist/services/workspace-runtime.services.d.ts +3 -3
  142. package/package.json +19 -19
  143. package/resources/bundled-skills/browser/SKILL.md +49 -0
  144. package/resources/bundled-skills/browser/agents/openai.yaml +4 -0
  145. package/resources/bundled-skills/browser/references/tool-contract.md +73 -0
  146. package/resources/bundled-skills/rudder/SKILL.md +5 -2
  147. package/resources/bundled-skills/rudder/references/cli-reference.md +17 -0
  148. package/skills/browser/SKILL.md +49 -0
  149. package/skills/browser/agents/openai.yaml +4 -0
  150. package/skills/browser/references/tool-contract.md +73 -0
  151. package/skills/rudder/SKILL.md +5 -2
  152. package/skills/rudder/references/cli-reference.md +17 -0
  153. package/ui-dist/assets/abnfDiagram-VRR7QNED-CDpy6iIp.js +1 -0
  154. package/ui-dist/assets/arc-BUmFz4fr.js +1 -0
  155. package/ui-dist/assets/architectureDiagram-ZJ3FMSHR-BgxSslJV.js +36 -0
  156. package/ui-dist/assets/blockDiagram-677ZJIJ3-ooHxGjx4.js +132 -0
  157. package/ui-dist/assets/c4Diagram-LMCZKHZV-D9dY1Aru.js +10 -0
  158. package/ui-dist/assets/channel-CKAv7Dbr.js +1 -0
  159. package/ui-dist/assets/{chunk-QZHKN3VN-CoUe43bE.js → chunk-2Q5K7J3B-BdJwTN30.js} +1 -1
  160. package/ui-dist/assets/{chunk-JSJVCQXG-CGWgDKBb.js → chunk-32BRIVSS-CaFHJTJR.js} +1 -1
  161. package/ui-dist/assets/{chunk-FMBD7UC4-D_yZ_WmF.js → chunk-5VM5RSS4-BRD2jTg5.js} +1 -1
  162. package/ui-dist/assets/chunk-EX3LRPZG-CpOtmEnY.js +231 -0
  163. package/ui-dist/assets/{chunk-4BX2VUAB-Cd0jMFjT.js → chunk-JWPE2WC7-Dw2-8WMO.js} +1 -1
  164. package/ui-dist/assets/chunk-MOJQB5TN-DAS2IY_W.js +88 -0
  165. package/ui-dist/assets/chunk-RYQCIY6F-CYPq5dnm.js +1 -0
  166. package/ui-dist/assets/chunk-V7JOEXUC-DbSPNxXt.js +206 -0
  167. package/ui-dist/assets/{chunk-KX2RTZJC-PgfQ6Dqz.js → chunk-VR4S4FIN-CemgflPu.js} +1 -1
  168. package/ui-dist/assets/{chunk-55IACEB6-C-AmshGj.js → chunk-XXDRQBXY-Ba6PC9p6.js} +1 -1
  169. package/ui-dist/assets/classDiagram-OUVF2IWQ-CKpTn3Kw.js +1 -0
  170. package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CKpTn3Kw.js +1 -0
  171. package/ui-dist/assets/{cose-bilkent-S5V4N54A-jsoDVyK9.js → cose-bilkent-JH36ORCC-BtBpHG_r.js} +1 -1
  172. package/ui-dist/assets/cynefin-VYW2F7L2-B0X6WooA.js +178 -0
  173. package/ui-dist/assets/cynefinDiagram-TSTJHNR4-DbgMlBM5.js +62 -0
  174. package/ui-dist/assets/cytoscape.esm-DTSO7Bv0.js +331 -0
  175. package/ui-dist/assets/dagre-VKFMJZFB-B8dBAi58.js +4 -0
  176. package/ui-dist/assets/diagram-FQU43EPY-CUBJ_ZvC.js +3 -0
  177. package/ui-dist/assets/diagram-G47NLZAW-CFRyURRw.js +24 -0
  178. package/ui-dist/assets/diagram-NH7WQ7WH-DRGQCFZY.js +24 -0
  179. package/ui-dist/assets/diagram-OA4YK3LP-Bk-5Qh1L.js +30 -0
  180. package/ui-dist/assets/diagram-WEI45ONY-CZPrvlcf.js +41 -0
  181. package/ui-dist/assets/ebnfDiagram-CCIWWBDH-B7Oa7CuJ.js +1 -0
  182. package/ui-dist/assets/erDiagram-Q63AITRT-D-SnVYAC.js +85 -0
  183. package/ui-dist/assets/flowDiagram-23GEKE2U-D0ES-POE.js +156 -0
  184. package/ui-dist/assets/ganttDiagram-NO4QXBWP-DxL6MH_c.js +292 -0
  185. package/ui-dist/assets/gitGraphDiagram-IHSO6WYX-BjdtAqn4.js +106 -0
  186. package/ui-dist/assets/graph-Bm3HhXYU.js +1 -0
  187. package/ui-dist/assets/{index-DDvz8goz.js → index-6GODZ0Tf.js} +1 -1
  188. package/ui-dist/assets/{index-CkdLQ1A4.js → index-B6-eHB_S.js} +1 -1
  189. package/ui-dist/assets/{index-1Ubio04r.js → index-BJx0M_2V.js} +1 -1
  190. package/ui-dist/assets/{index-BXbeltXq.js → index-BKaUE7op.js} +1 -1
  191. package/ui-dist/assets/{index-BSRzECfZ.js → index-BVQAE7Gp.js} +1 -1
  192. package/ui-dist/assets/{index-CMRK9PUO.js → index-Bv08zENf.js} +1 -1
  193. package/ui-dist/assets/{index-B4KMgdrI.js → index-C9IwIL1Y.js} +1 -1
  194. package/ui-dist/assets/{index-ipqs2akW.js → index-CNWYUMUW.js} +1 -1
  195. package/ui-dist/assets/{index-Be_UUduv.js → index-CsF2ME-F.js} +1 -1
  196. package/ui-dist/assets/index-DAQuh6iw.css +1 -0
  197. package/ui-dist/assets/{index-BBL80GJ3.js → index-DG1bXCni.js} +1 -1
  198. package/ui-dist/assets/{index-C2Ne_Flh.js → index-DSa3ObqN.js} +1 -1
  199. package/ui-dist/assets/{index-Cd5DOkgF.js → index-DgpIdftd.js} +1 -1
  200. package/ui-dist/assets/{index-Dxe3o4t_.js → index-IyUEMhfc.js} +1 -1
  201. package/ui-dist/assets/{index-B-4En24L.js → index-IzoWAsq4.js} +1 -1
  202. package/ui-dist/assets/{index-BL10wT_h.js → index-L6LxSwGF.js} +454 -465
  203. package/ui-dist/assets/{index-CjLYHamo.js → index-j5cZYTMF.js} +1 -1
  204. package/ui-dist/assets/{index-LKZoMmLm.js → index-yTqWLDLf.js} +1 -1
  205. package/ui-dist/assets/{index-DgfqS5r-.js → index-ylc7XFMg.js} +1 -1
  206. package/ui-dist/assets/infoDiagram-FWYZ7A6U-bWz54kfj.js +2 -0
  207. package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-C08ZUJEU.js → ishikawaDiagram-FXEZZL3T-BgbS7eJf.js} +3 -3
  208. package/ui-dist/assets/journeyDiagram-5HDEW3XC-BQd7XTR7.js +139 -0
  209. package/ui-dist/assets/{kanban-definition-K7BYSVSG-BcJd4-9s.js → kanban-definition-HUTT4EX6-ClNG1w8r.js} +8 -8
  210. package/ui-dist/assets/katex-C5jXJg4s.js +257 -0
  211. package/ui-dist/assets/layout-CW-MiMXP.js +1 -0
  212. package/ui-dist/assets/{linear-CqN63wCD.js → linear-CU01CZyV.js} +1 -1
  213. package/ui-dist/assets/map-Mx3r0KIO.js +1 -0
  214. package/ui-dist/assets/mermaid.core-yS58mCMX.js +314 -0
  215. package/ui-dist/assets/mindmap-definition-LN4V7U3C-BrbWqg8j.js +96 -0
  216. package/ui-dist/assets/pegDiagram-2B236MQR-DAiVkGbJ.js +1 -0
  217. package/ui-dist/assets/pieDiagram-ENE6RG2P-Cfpgsmkb.js +39 -0
  218. package/ui-dist/assets/quadrantDiagram-ABIIQ3AL-BJCgcvPl.js +7 -0
  219. package/ui-dist/assets/railroadDiagram-RFXS5EU6-cSPWQQbj.js +1 -0
  220. package/ui-dist/assets/requirementDiagram-TGXJPOKE-B97SYYW6.js +84 -0
  221. package/ui-dist/assets/sankeyDiagram-HTMAVEWB-B-6vRKzj.js +40 -0
  222. package/ui-dist/assets/sequenceDiagram-DBY2YBRQ-DBK5BssT.js +162 -0
  223. package/ui-dist/assets/sizeCapture-X5ZJPWSS-BHH1iv2s.js +1 -0
  224. package/ui-dist/assets/stateDiagram-2N3HPSRC-Beu0lngd.js +1 -0
  225. package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-BW5DHyV6.js +1 -0
  226. package/ui-dist/assets/swimlanes-5IMT3BWC-Ch-Sw6Rt.js +2 -0
  227. package/ui-dist/assets/swimlanesDiagram-G3AALYLV-lXZFrwCS.js +8 -0
  228. package/ui-dist/assets/timeline-definition-FHXFAJF6-Bd5ivmQa.js +120 -0
  229. package/ui-dist/assets/vennDiagram-L72KCM5P-VPXzIpMm.js +34 -0
  230. package/ui-dist/assets/wardleyDiagram-EHGQE667-DJvj2D5b.js +78 -0
  231. package/ui-dist/assets/xychartDiagram-FW5EYKEG-WOveSYiF.js +7 -0
  232. package/ui-dist/index.html +2 -2
  233. package/ui-dist/assets/_basePickBy-Cniq5QAz.js +0 -1
  234. package/ui-dist/assets/_baseUniq-aSj0wr7H.js +0 -1
  235. package/ui-dist/assets/arc-C4Mg91_a.js +0 -1
  236. package/ui-dist/assets/architectureDiagram-2XIMDMQ5-DfqLRajq.js +0 -36
  237. package/ui-dist/assets/blockDiagram-WCTKOSBZ-BbefXkmh.js +0 -132
  238. package/ui-dist/assets/c4Diagram-IC4MRINW-BVPjmrfV.js +0 -10
  239. package/ui-dist/assets/channel-B-bxwuub.js +0 -1
  240. package/ui-dist/assets/chunk-NQ4KR5QH-D78Rqvef.js +0 -220
  241. package/ui-dist/assets/chunk-WL4C6EOR-CaI2CXRo.js +0 -189
  242. package/ui-dist/assets/classDiagram-VBA2DB6C-oNkrSzge.js +0 -1
  243. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-oNkrSzge.js +0 -1
  244. package/ui-dist/assets/clone-D1LQw6bn.js +0 -1
  245. package/ui-dist/assets/cytoscape.esm-BQaXIfA_.js +0 -331
  246. package/ui-dist/assets/dagre-KLK3FWXG-Cedmep7r.js +0 -4
  247. package/ui-dist/assets/diagram-E7M64L7V-BWIKKX1f.js +0 -24
  248. package/ui-dist/assets/diagram-IFDJBPK2-De8ij4wb.js +0 -43
  249. package/ui-dist/assets/diagram-P4PSJMXO-DfqKc5zd.js +0 -24
  250. package/ui-dist/assets/erDiagram-INFDFZHY-CacJL_tU.js +0 -70
  251. package/ui-dist/assets/flowDiagram-PKNHOUZH-CQbuZmQW.js +0 -162
  252. package/ui-dist/assets/ganttDiagram-A5KZAMGK-uMPy8GwP.js +0 -292
  253. package/ui-dist/assets/gitGraphDiagram-K3NZZRJ6-D10Ck-1y.js +0 -65
  254. package/ui-dist/assets/graph-DMAYpSbz.js +0 -1
  255. package/ui-dist/assets/index-yhZee3iu.css +0 -1
  256. package/ui-dist/assets/infoDiagram-LFFYTUFH-WdYfk1ti.js +0 -2
  257. package/ui-dist/assets/journeyDiagram-4ABVD52K-A3rlVmO2.js +0 -139
  258. package/ui-dist/assets/katex-B1X10hvy.js +0 -261
  259. package/ui-dist/assets/layout-BjkotBZ2.js +0 -1
  260. package/ui-dist/assets/mermaid.core-D3iDEDQJ.js +0 -255
  261. package/ui-dist/assets/mindmap-definition-YRQLILUH-Cm-NQlLA.js +0 -68
  262. package/ui-dist/assets/pieDiagram-SKSYHLDU-BaDPvveA.js +0 -30
  263. package/ui-dist/assets/quadrantDiagram-337W2JSQ-0dX4kokb.js +0 -7
  264. package/ui-dist/assets/requirementDiagram-Z7DCOOCP-BdbJFOUK.js +0 -73
  265. package/ui-dist/assets/sankeyDiagram-WA2Y5GQK-ZMXNjh7n.js +0 -10
  266. package/ui-dist/assets/sequenceDiagram-2WXFIKYE-DfR6JqDW.js +0 -145
  267. package/ui-dist/assets/stateDiagram-RAJIS63D-BcGX6JIu.js +0 -1
  268. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-D1SMoFW3.js +0 -1
  269. package/ui-dist/assets/timeline-definition-YZTLITO2-DrIAH8-G.js +0 -61
  270. package/ui-dist/assets/treemap-KZPCXAKY-DEopGTtM.js +0 -162
  271. package/ui-dist/assets/vennDiagram-LZ73GAT5-CM3yysPE.js +0 -34
  272. package/ui-dist/assets/xychartDiagram-JWTSCODW-C34pUeNV.js +0 -7
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB;;aAQL,OAAO,CAAC,IAAI,CAAC;GAI/B;AAED,wBAAsB,SAAS,CAC7B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,wDAI5C"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB;;aASL,OAAO,CAAC,IAAI,CAAC;GAI/B;AAED,wBAAsB,SAAS,CAC7B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,wDAI5C"}
package/dist/app.js CHANGED
@@ -1,7 +1,9 @@
1
1
  import { createHttpApp } from "./bootstrap/create-http-app.js";
2
2
  import { createPluginHostRuntime } from "./bootstrap/plugin-host-runtime.js";
3
+ import { configureBrowserCapabilityDeployment } from "./services/browser-capability.js";
3
4
  export { resolveViteHmrPort } from "./bootstrap/create-http-app.js";
4
5
  export async function createRudderApp(db, opts) {
6
+ configureBrowserCapabilityDeployment(db, opts.deploymentMode);
5
7
  const pluginRuntime = createPluginHostRuntime(db, opts);
6
8
  const app = await createHttpApp(db, opts, pluginRuntime);
7
9
  await pluginRuntime.start();
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAOpE,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAM,EACN,IAAsB;IAEtB,MAAM,aAAa,GAAG,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;IAE5B,OAAO;QACL,GAAG;QACH,KAAK,CAAC,KAAK;YACT,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAM,EACN,IAA2C;IAE3C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAOpE,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAM,EACN,IAAsB;IAEtB,oCAAoC,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;IAE5B,OAAO;QACL,GAAG;QACH,KAAK,CAAC,KAAK;YACT,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAM,EACN,IAA2C;IAE3C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC;AACpB,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import type { Db } from "@rudderhq/db";
2
- import { betterAuth } from "better-auth";
3
2
  import type { Request, RequestHandler } from "express";
4
3
  import type { Config } from "../config.js";
5
4
  export type BetterAuthSessionUser = {
@@ -14,9 +13,22 @@ export type BetterAuthSessionResult = {
14
13
  } | null;
15
14
  user: BetterAuthSessionUser | null;
16
15
  };
17
- type BetterAuthInstance = ReturnType<typeof betterAuth>;
18
16
  export declare function deriveAuthTrustedOrigins(config: Config): string[];
19
- export declare function createBetterAuthInstance(db: Db, config: Config, trustedOrigins?: string[]): BetterAuthInstance;
17
+ export declare function createBetterAuthInstance(db: Db, config: Config, trustedOrigins?: string[]): import("better-auth").Auth<{
18
+ advanced?: {
19
+ useSecureCookies: false;
20
+ } | undefined;
21
+ baseURL: string | undefined;
22
+ secret: string;
23
+ trustedOrigins: string[];
24
+ database: (options: import("better-auth").BetterAuthOptions) => import("better-auth").DBAdapter<import("better-auth").BetterAuthOptions>;
25
+ emailAndPassword: {
26
+ enabled: boolean;
27
+ requireEmailVerification: boolean;
28
+ disableSignUp: boolean;
29
+ };
30
+ }>;
31
+ type BetterAuthInstance = ReturnType<typeof createBetterAuthInstance>;
20
32
  export declare function createBetterAuthHandler(auth: BetterAuthInstance): RequestHandler;
21
33
  export declare function resolveBetterAuthSessionFromHeaders(auth: BetterAuthInstance, headers: Headers): Promise<BetterAuthSessionResult | null>;
22
34
  export declare function resolveBetterAuthSession(auth: BetterAuthInstance, req: Request): Promise<BetterAuthSessionResult | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"better-auth.d.ts","sourceRoot":"","sources":["../../src/auth/better-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAOvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAmBxD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBjE;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAkC9G;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,cAAc,CAKhF;AAED,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CA0BzC;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,kBAAkB,EACxB,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAEzC"}
1
+ {"version":3,"file":"better-auth.d.ts","sourceRoot":"","sources":["../../src/auth/better-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAUvC,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACpC,CAAC;AAmBF,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBjE;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE;;;;;;;;;;;;;GAkCzF;AAED,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEtE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,cAAc,CAKhF;AAED,wBAAsB,mCAAmC,CACvD,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CA0BzC;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,kBAAkB,EACxB,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAEzC"}
@@ -1 +1 @@
1
- {"version":3,"file":"better-auth.js","sourceRoot":"","sources":["../../src/auth/better-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"better-auth.js","sourceRoot":"","sources":["../../src/auth/better-auth.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
6
6
  jobStore: {
7
7
  syncJobDeclarations(pluginId: string, declarations: import("@rudderhq/plugin-sdk").PluginJobDeclaration[]): Promise<void>;
8
8
  listJobs(pluginId: string, status?: "active" | "paused" | "failed"): Promise<({
9
+ status: "active" | "paused" | "failed";
9
10
  schedule: string;
10
11
  id: string;
11
- status: "active" | "paused" | "failed";
12
12
  createdAt: Date;
13
13
  updatedAt: Date;
14
14
  nextRunAt: Date | null;
@@ -17,9 +17,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
17
17
  lastRunAt: Date | null;
18
18
  })[]>;
19
19
  getJobByKey(pluginId: string, jobKey: string): Promise<({
20
+ status: "active" | "paused" | "failed";
20
21
  schedule: string;
21
22
  id: string;
22
- status: "active" | "paused" | "failed";
23
23
  createdAt: Date;
24
24
  updatedAt: Date;
25
25
  nextRunAt: Date | null;
@@ -28,9 +28,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
28
28
  lastRunAt: Date | null;
29
29
  }) | null>;
30
30
  getJobById(jobId: string): Promise<({
31
+ status: "active" | "paused" | "failed";
31
32
  schedule: string;
32
33
  id: string;
33
- status: "active" | "paused" | "failed";
34
34
  createdAt: Date;
35
35
  updatedAt: Date;
36
36
  nextRunAt: Date | null;
@@ -39,9 +39,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
39
39
  lastRunAt: Date | null;
40
40
  }) | null>;
41
41
  getJobByIdForPlugin(pluginId: string, jobId: string): Promise<({
42
+ status: "active" | "paused" | "failed";
42
43
  schedule: string;
43
44
  id: string;
44
- status: "active" | "paused" | "failed";
45
45
  createdAt: Date;
46
46
  updatedAt: Date;
47
47
  nextRunAt: Date | null;
@@ -53,9 +53,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
53
53
  updateRunTimestamps(jobId: string, lastRunAt: Date, nextRunAt: Date | null): Promise<void>;
54
54
  deleteAllJobs(pluginId: string): Promise<void>;
55
55
  createRun(input: import("../services/plugin-job-store.js").CreateJobRunInput): Promise<{
56
+ status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
56
57
  error: string | null;
57
58
  id: string;
58
- status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
59
59
  createdAt: Date;
60
60
  startedAt: Date | null;
61
61
  finishedAt: Date | null;
@@ -68,9 +68,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
68
68
  markRunning(runId: string): Promise<void>;
69
69
  completeRun(runId: string, input: import("../services/plugin-job-store.js").CompleteJobRunInput): Promise<void>;
70
70
  getRunById(runId: string): Promise<({
71
+ status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
71
72
  error: string | null;
72
73
  id: string;
73
- status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
74
74
  createdAt: Date;
75
75
  startedAt: Date | null;
76
76
  finishedAt: Date | null;
@@ -81,9 +81,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
81
81
  logs: string[];
82
82
  }) | null>;
83
83
  listRunsByJob(jobId: string, limit?: number): Promise<({
84
+ status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
84
85
  error: string | null;
85
86
  id: string;
86
- status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
87
87
  createdAt: Date;
88
88
  startedAt: Date | null;
89
89
  finishedAt: Date | null;
@@ -94,9 +94,9 @@ export declare function createPluginHostRuntime(db: Db, opts: RudderAppOptions):
94
94
  logs: string[];
95
95
  })[]>;
96
96
  listRunsByPlugin(pluginId: string, status?: import("@rudderhq/plugin-sdk").PluginJobRunStatus, limit?: number): Promise<({
97
+ status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
97
98
  error: string | null;
98
99
  id: string;
99
- status: "running" | "cancelled" | "pending" | "failed" | "queued" | "succeeded";
100
100
  createdAt: Date;
101
101
  startedAt: Date | null;
102
102
  finishedAt: Date | null;
@@ -1 +1 @@
1
- {"version":3,"file":"register-api-routes.d.ts","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AA6BvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB,EACtB,aAAa,EAAE,iBAAiB,8CA4DjC"}
1
+ {"version":3,"file":"register-api-routes.d.ts","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AA8BvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB,EACtB,aAAa,EAAE,iBAAiB,8CA6DjC"}
@@ -6,6 +6,7 @@ import { agentRoutes } from "../routes/agents.js";
6
6
  import { approvalRoutes } from "../routes/approvals.js";
7
7
  import { assetRoutes } from "../routes/assets.js";
8
8
  import { automationRoutes } from "../routes/automations.js";
9
+ import { browserRoutes } from "../routes/browser.js";
9
10
  import { calendarRoutes } from "../routes/calendar.js";
10
11
  import { chatRoutes } from "../routes/chats.js";
11
12
  import { costRoutes } from "../routes/costs.js";
@@ -61,6 +62,7 @@ export function registerApiRoutes(db, opts, pluginRuntime) {
61
62
  api.use(sidebarBadgeRoutes(db));
62
63
  api.use(websiteMetadataRoutes());
63
64
  api.use(instanceSettingsRoutes(db, { deploymentMode: opts.deploymentMode }));
65
+ api.use(browserRoutes(db, { deploymentMode: opts.deploymentMode }));
64
66
  api.use(pluginRoutes(db, pluginRuntime.loader, { scheduler: pluginRuntime.scheduler, jobStore: pluginRuntime.jobStore }, { workerManager: pluginRuntime.workerManager }, { toolDispatcher: pluginRuntime.toolDispatcher }, { workerManager: pluginRuntime.workerManager }));
65
67
  api.use(accessRoutes(db, {
66
68
  deploymentMode: opts.deploymentMode,
@@ -1 +1 @@
1
- {"version":3,"file":"register-api-routes.js","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-api-routes.js","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"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"}
@@ -5414,7 +5414,11 @@ var stackoverflowIcon = imageDataUrl("image/x-icon", "AAABAAMAEBAAAAEACABoBQAANg
5414
5414
  var vercelIcon = imageDataUrl("image/x-icon", "AAABAAMAMDAAAAEAIACoJQAANgAAACAgAAABACAAqBAAAN4lAAAQEAAAAQAgAGgEAACGNgAAKAAAADAAAABgAAAAAQAgAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAANwAAAG8AAACkAAAAzQAAAOgAAAD3AAAA/gAAAP4AAAD3AAAA6AAAAM0AAACkAAAAbwAAADcAAAANAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAKAAAAHMAAAC9AAAA6gAAAPwAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/AAAAOoAAAC9AAAAcwAAACgAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAC4AAACRAAAA4gAAAP4AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/gAAAOMAAACRAAAALgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAAAfQAAAOMAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA4wAAAH0AAAAWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAADsAAADAAAAA/QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP0AAADAAAAAOwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAXgAAAOMAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA4wAAAF4AAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAByAAAA8QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAPEAAAByAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAHIAAAD0AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD0AAAAcgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXwAAAPEAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA8QAAAF4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAA4wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOMAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAC/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAC/AAAAFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH0AAAD+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD+AAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwAAAOIAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA4gAAAC4AAAAAAAAAAAAAAAAAAAACAAAAkQAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAJAAAAABAAAAAAAAAAAAAAApAAAA4gAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOEAAAAoAAAAAAAAAAAAAABzAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/0ZGRv+Ojo7/jIyM/4yMjP+MjIz/jIyM/4yMjP+MjIz/jIyM/4yMjP+MjIz/jIyM/4yMjP+MjIz/jIyM/4yMjP+MjIz/jIyM/4yMjP+MjIz/jIyM/4yMjP+NjY3/dnZ2/w4ODv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAABzAAAAAAAAAA0AAAC8AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/zY2Nv/m5ub/////////////////////////////////////////////////////////////////////////////////////////////////////////////////jIyM/wICAv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAC8AAAADQAAADcAAADpAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wEBAf+EhIT////////////////////////////////////////////////////////////////////////////////////////////////////////////W1tb/IiIi/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADpAAAANwAAAG8AAAD8AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8fHx//0tLS//////////////////////////////////////////////////////////////////////////////////////////////////z8/P9ra2v/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD8AAAAbwAAAKQAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Z2dn//r6+v///////////////////////////////////////////////////////////////////////////////////////////7+/v/8TExP/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAApAAAAM0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ERER/7u7u///////////////////////////////////////////////////////////////////////////////////////9PT0/1BQUP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAzQAAAOcAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/0tLS//y8vL/////////////////////////////////////////////////////////////////////////////////paWl/wgICP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA5wAAAPcAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wcHB/+hoaH////////////////////////////////////////////////////////////////////////////n5+f/Nzc3/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA9wAAAP4AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8zMzP/5OTk//////////////////////////////////////////////////////////////////////+JiYn/AQEB/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/gAAAP4AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8BAQH/hISE/////////////////////////////////////////////////////////////////9bW1v8iIiL/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/gAAAPcAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Hx8f/9LS0v///////////////////////////////////////////////////////Pz8/2tra/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA9wAAAOcAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/2dnZ//6+vr/////////////////////////////////////////////////v7+//xMTE/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA5wAAAM0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/xEREf+7u7v////////////////////////////////////////////09PT/UFBQ/wAA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AAAAAAAAAAAAAAAAABYAAAC/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAC/AAAAFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAA4wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOMAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXgAAAPEAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA8QAAAF8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAHIAAAD0AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD0AAAAcgAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAByAAAA8QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAPEAAAByAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAXgAAAOMAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA4wAAAF4AAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAADsAAADAAAAA/QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP0AAAC/AAAAOwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAAAfQAAAOMAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA4wAAAH0AAAAWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAC4AAACRAAAA4wAAAP4AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/gAAAOIAAACRAAAALgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAKAAAAHMAAAC9AAAA6gAAAPwAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/AAAAOoAAAC9AAAAcwAAACgAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAANwAAAG8AAACkAAAAzQAAAOgAAAD3AAAA/gAAAP4AAAD3AAAA6AAAAM0AAACkAAAAbwAAADcAAAANAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//4Af//wAA//8AAP//AAD/+AAAH/8AAP/wAAAP/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA8AAAAAAPAADwAAAAAA8AAOAAAAAABwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAgAAAAAABAACAAAAAAAEAAIAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAEAAIAAAAAAAQAAgAAAAAABAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAPAAAAAADwAA8AAAAAAPAAD4AAAAAB8AAPwAAAAAPwAA/gAAAAB/AAD/AAAAAP8AAP+AAAAB/wAA/8AAAAP/AAD/8AAAD/8AAP/4AAAf/wAA//8AAP//AAD//+AH//8AACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAKgAAAG0AAACtAAAA2gAAAPMAAAD9AAAA/QAAAPMAAADaAAAArQAAAG0AAAAqAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAANwAAAJgAAADgAAAA+wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA+wAAAOAAAACYAAAANwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAIoAAADqAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADqAAAAigAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYAAADDAAAA/gAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD+AAAAwwAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABCAAAA2QAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA2QAAAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAANkAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA2QAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAADCAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAwgAAABoAAAAAAAAAAAAAAAAAAAACAAAAigAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAigAAAAIAAAAAAAAAAAAAADgAAADpAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADpAAAAOAAAAAAAAAADAAAAlwAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wMDA/8DAwP/AwMD/wQEBP8BAQH/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACXAAAAAwAAACoAAADfAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/X19f/6+vr/+srKz/rKys/6ysrP+srKz/rKys/6ysrP+srKz/rKys/6ysrP+srKz/rKys/6ysrP+vr6//iIiI/wwMDP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAN8AAAAqAAAAbQAAAPsAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP84ODj/6Ojo//////////////////////////////////////////////////////////////////39/f9xcXH/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA+wAAAG0AAACtAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wEBAf+Hh4f/////////////////////////////////////////////////////////////////wcHB/xQUFP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAArQAAANkAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/yEhIf/V1dX///////////////////////////////////////////////////////T09P9RUVH/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADZAAAA8gAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/2pqav/7+/v/////////////////////////////////////////////////p6en/wgICP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAPIAAAD9AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/EhIS/76+vv///////////////////////////////////////////+jo6P84ODj/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/QAAAP0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Tk5O//Pz8///////////////////////////////////////ioqK/wICAv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9AAAA8gAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8ICAj/pKSk/////////////////////////////////9fX1/8jIyP/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAPIAAADZAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP82Njb/5ubm///////////////////////8/Pz/bW1t/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA2QAAAK0AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wEBAf+Hh4f//////////////////////8HBwf8UFBT/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACtAAAAbQAAAPsAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/yEhIf/V1dX////////////09PT/UVFR/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA+wAAAG0AAAAqAAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/2pqav/7+/v//////6enp/8ICAj/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAKgAAAAMAAACXAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/EhIS/8DAwP/r6+v/ODg4/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAJcAAAADAAAAAAAAADgAAADpAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/UFBQ/39/f/8DAwP/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADpAAAAOAAAAAAAAAAAAAAAAgAAAIoAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8GBgb/CwsL/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAIoAAAACAAAAAAAAAAAAAAAAAAAAGgAAAMIAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADCAAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAANkAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA2QAAADYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQgAAANkAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAANkAAABCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANgAAAMMAAAD+AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP4AAADDAAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAIoAAADqAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADqAAAAigAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADcAAACYAAAA4AAAAPsAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAPsAAADgAAAAmAAAADcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAqAAAAbQAAAK0AAADaAAAA8wAAAP0AAAD9AAAA8wAAANoAAACtAAAAbQAAACoAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//AP//+AAf/+AAB//AAAP/gAAB/wAAAP4AAAB8AAAAPAAAADgAAAAYAAAAGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABgAAAAYAAAAHAAAADwAAAA+AAAAfwAAAP+AAAH/wAAD/+AAB//4AB///wD/8oAAAAEAAAACAAAAABACAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAEkAAACoAAAA5AAAAPsAAAD7AAAA5AAAAKgAAABJAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAJIAAADvAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA7wAAAJIAAAAYAAAAAAAAAAAAAAAAAAAAGAAAALEAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAsQAAABgAAAAAAAAABgAAAJIAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACSAAAABgAAAEkAAADtAAAA/wEBAf8MDAz/Dg4O/w4ODv8ODg7/Dg4O/w4ODv8ODg7/DQ0N/wICAv8AAAD/AAAA7QAAAEkAAACnAAAA/wAAAP8BAQH/eHh4/8zMzP/Jycn/ycnJ/8nJyf/Jycn/zMzM/5CQkP8ICAj/AAAA/wAAAP8AAACnAAAA4wAAAP8AAAD/AAAA/zo6Ov/p6en///////////////////////b29v9VVVX/AAAA/wAAAP8AAAD/AAAA4wAAAPsAAAD/AAAA/wAAAP8CAgL/i4uL//////////////////////+pqan/CQkJ/wAAAP8AAAD/AAAA/wAAAPsAAAD7AAAA/wAAAP8AAAD/AAAA/yQkJP/X19f////////////p6en/Ojo6/wAAAP8AAAD/AAAA/wAAAP8AAAD7AAAA4wAAAP8AAAD/AAAA/wAAAP8AAAD/bW1t//z8/P//////jIyM/wICAv8AAAD/AAAA/wAAAP8AAAD/AAAA4wAAAKcAAAD/AAAA/wAAAP8AAAD/AAAA/xQUFP/Dw8P/29vb/yUlJf8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAKcAAABJAAAA7QAAAP8AAAD/AAAA/wAAAP8AAAD/UFBQ/2ZmZv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAO0AAABJAAAABgAAAJIAAAD/AAAA/wAAAP8AAAD/AAAA/wQEBP8GBgb/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACSAAAABgAAAAAAAAAYAAAAsQAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACxAAAAGAAAAAAAAAAAAAAAAAAAABgAAACSAAAA7wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAO8AAACSAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAEkAAACoAAAA5AAAAPsAAAD7AAAA5AAAAKgAAABJAAAABwAAAAAAAAAAAAAAAPgfAADgBwAAwAMAAIABAACAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAEAAIABAADAAwAA4AcAAPgfAAA=");
5415
5415
  var cloudflareIcon = imageDataUrl("image/png", "iVBORw0KGgoAAAANSUhEUgAAAGMAAABgCAMAAAA+cTwJAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAABCUExURUdwTP9QCv9PC/9PCf//6/9PD5NwcP9QCv/79fZNCf1PCvpOCvRMCf/s4P3Nt/1eH/ujfvy6nf2RZv17Rv/byf2vjnXJwEoAAAAHdFJOUwDWVIwBEAHHGD0SAAAC1UlEQVRo3u3aCY+rIBAA4NpLmJFD0P//Vx8eVVCwhUKzeXGSptsqfDvDYXfr5TLG43qrKqyzBVbV7Xpx4pqx+zUqW7nVheJWnliRa10wpnI9q5IGPoqnMSdyK2uMI1KVNapfGVjWgMGoC8dpnMZpnMZp/HFD6J4zQgjruBJFDN0P/S/BVXZDcLINpvIakhFPcJHPEC3xB9O5DNGRYKg8xhFBiM5i9EcEYSKDochxdN8bgr0xiPzaaN8Rh9U6NEBrPbQV5H3IJENM+4ZZye0HxkEiYUOuzdkHxsEiCRqSREYba0A0QRhEGoJFG7zWUiotPjZUNEEUdIFrSsDg8aUSInRN8RsQn0aLKjSRsxkaeejy6DUg3mCILLRcfAZA/LTSVASvKXtDSB4/cSXdGeuYbA0h4wFDNJRSHlr4G0OkCExRY6AOXYFdQycQrBdDFgbZloD7DF8W5jPnK9pX9PIVymweTTMZtBFayb41Z7oj4hi+LFTzPug2uDN/bcO7STFmZbKmsiQyF4qieZg0ZGvyYO6o20bKeJuOxEigZ0Z2sDU0SYt+ENA3XdjOaBMNIgzhvxgAgGNAl2ooxEANRmIxjMhSDY2BpcsQ3FoBSTcCn4Y7dGsFycZuW18XumuYWqWORx8aDTNQo3G/DwYYw0yOYR2FlvH0NP+8vB5XxhLTsbnRsE3iOLHmPGA0/MSouHuGZbvC2oFlPO+vWh2m0Yy/HnWQXR4OMh3yGzS44TXWk8VtiLle1DLutoF2b02z7c0buDesDKc87PGYz3vXrZ+wE1kO2XkAgJNJiuE5MO0l93V9YLZYZJjyWNf5F0ig6ZTGazzscsX27284vb3ZE2soEHUeI9ww+FkU5sfQdH1nfgnzq92fZWCftj3l/L/oaZzGsVH4u1T8n753/sV39L+41+CBxUv1k3s/fnIPy0/uxTHlKjKB0b6n6Pm8ZL43CoZ7ox5z9/8AXA8Zr53RgkAAAAAASUVORK5CYII=");
5416
5416
  var arxivIcon = imageDataUrl("image/png", "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAACr1BMVEUAAACzICWzICSyrKazrKWzqaKzraazR0mzTE6zaGizBQiz49uzZmSzEBazHySzsam0ICmzICWzICWzICWzICWzICWzICWzICWzICWzICWzICWzICWzICWzICWzICWzICWzrKWzrKWzICWzICWzICWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzICWzrKWzrKWzrKWzICWzICWzICWzHySz4dWzrKWzrKWzrKWzICWzICWzHySzgX2zrqezrKWzrKWzICWzPD+zrKWzrKWzrKWzICWzHySzjYmzr6izraazT1CzLjKzMDSzQUOzrKWzrqezgH2zKi6zHySzICWzrKWzrKWzcW+zICWzICWzrKWzrKWzYWGzICWzrKWzUVKzICWzrKWzrKWznZezQkSzICWzICWzrKWzraazkY2zHiOzICWzICWzjYmzm5WzhIGzODuzAACzHySzHSKzOz6zrqazs6yzICWzICWzODuzrKWzrKWzrKWzICWzICWzODuzo5yzrKWzrKWzICWzICWzICWzGyCzr6ezrKWzrKWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzrKWzrKWzrKWzrKWzrKWzICWzICWzICWzrKWzrKWzrKWzrKWzICWzICWzICWzrKWzrKWzrKWzICWzICWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzrKWzICWzrKWzHySzkYyzrqezHiOzODuzJCmzqaOzISazraazpZ6zNTizkIuzi4ezraX///8A/VYjAAAA1HRSTlMAAAAAAAAAAAAAAAAAAAAAAAGA95kOB7X6kQ9W8fyaEQIBA3z9oRUllnUKDJz+qBgwxuwxGbquHD3SpQwt1CBL3cEeR+e7JFvm1mX0wSgEbO5HBYXFkfPyYaX++n0EHsH9lwtO8/NRJrr8/ttFGb7+3jpk/v6ecv6sK9j+/vVcQNf+8nUGSfD7dQMHivyVCmr2/vl3A0np28zvWS7V0joht+HJMR2vzCcLvygYp7IVc7QhFJ/9lQkSzhoRl/t2lu0UDY9XDSoLhvjgOwh89a4GB4L2i8A61lMAAAABYktHROQvYjspAAAAB3RJTUUH5wETDS455INCLAAAAgZJREFUOMt10/dfTXEYB/Dz6Ilst3lFueWmjDIysmdkF0Kyyd7Ze5WZcc2ErIhKISops6zs73Pda1zrH/EcoXPqe8+vn/fre57z+T5HURQwuHt4eoHi9AFvH2Fs6gu1nAJo1lz4+beAqkNc0BSAGhHY0ijMQa3+C8TgkNZttKJtOyFCw9r/FYgdOlKncC2Azl2EEF27/RGIEd2JevRE3Ri9erPw6cMCA/r2I+o/AFE/6MBBLCIHg6tpSBTR0HB9rophw1mMGDlqdDRRVEz1nMWYsX4sxsWOJ5owsWbOwjeOgXXSR1v85CmSnF8ydZpVCPun6TNm1pY2Wsdt1mwW1oQ5devJcsS58+YvUMXCRSC7Oly8hGjpZxZi2XKJQFyRSPRl5VcGYpVBBlYTkePbGvWItYGSd+C69arYsNEuNm2WDYG4ZauDyLbt+/YdO6X7Vb9BUjILx67dexpKe2i0d9/+HzYWKQcay3IwHDxkP/yT57AcOSq7Cjh2nIs+cfIXUeopyWVC2mn+vjNn08/xGecjaojKpbtwEVwvZbC4fKWagEx/zq9eA0DMyuZKc67rN65JrlGIvBtqP4g3b+VT4u07uqUtKBTmsKLK/hDvFt8jS4lJu/fepfc9H1T9OA8fxVPqY80YAE/KMjX9Y/nTZ/T8hWwz/4mXFa/o9RvnQMG3795/UKf4DUwCyzJ9eBcsAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIzLTAxLTE5VDEzOjQ2OjU3KzAwOjAwqJ4w4AAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMy0wMS0xOVQxMzo0Njo1NyswMDowMNnDiFwAAABXelRYdFJhdyBwcm9maWxlIHR5cGUgaXB0YwAAeJzj8gwIcVYoKMpPy8xJ5VIAAyMLLmMLEyMTS5MUAxMgRIA0w2QDI7NUIMvY1MjEzMQcxAfLgEigSi4A6hcRdPJCNZUAAAAASUVORK5CYII=");
5417
- var feishuIcon = imageDataUrl("image/svg+xml", "PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMTIuOTIzOCAxMi44MDI5QzEyLjk0MjcgMTIuNzg0IDEyLjk2MTYgMTIuNzY4MiAxMi45ODA2IDEyLjc0OTNDMTMuMDE4NCAxMi43MTQ2IDEzLjA1NjMgMTIuNjc2NyAxMy4wOTEgMTIuNjM4OUwxMy4xNjY3IDEyLjU2MzFMMTMuMzk3IDEyLjMzNkwxNC43MzE1IDExLjAxNzNMMTUuMDY1OSAxMC42ODZDMTUuMTI5IDEwLjYyMjkgMTUuMTk1MiAxMC41NjMgMTUuMjYxNSAxMC41MDMxQzE1LjM4NDUgMTAuMzkyNiAxNS41MDc2IDEwLjI4NTQgMTUuNjM2OSAxMC4xODEzQzE1Ljc1MzYgMTAuMDg2NiAxNS44NzY3IDkuOTk1MTQgMTUuOTk5NyA5LjkwNjhDMTYuMTczMiA5Ljc4Mzc2IDE2LjM0OTkgOS42NzAxOSAxNi41MzI5IDkuNTU5NzdDMTYuNzEyNyA5LjQ1MjUxIDE2Ljg5NTcgOS4zNTQ3MSAxNy4wODUgOS4yNjMyMkMxNy4yNjE2IDkuMTc4MDQgMTcuNDQxNSA5LjA5OTE3IDE3LjYyNzYgOS4wMjY2MUMxNy43MzE3IDguOTg1NiAxNy44MzI2IDguOTQ3NzQgMTcuOTM5OSA4LjkxMzA0QzE3Ljk5MzUgOC44OTQxMSAxOC4wNDQgOC44NzgzNCAxOC4wOTc3IDguODYyNTZDMTcuNjI3NiA3LjAwNDM5IDE2Ljc2MzIgNS4zMDA4IDE1LjU5OTEgMy44NDk1OUMxNS4zNzE5IDMuNTY1NjYgMTUuMDI0OSAzLjQwMTYxIDE0LjY1ODkgMy40MDE2MUg1LjAwODRDNC44MzQ4OSAzLjQwMTYxIDQuNzYyMzMgMy42MjU2IDQuOTAxMTQgMy43MjY1NkM4LjE4NTI4IDYuMTM5OTcgMTAuOTIzNiA5LjI0MTE0IDEyLjkwMTcgMTIuODI1QzEyLjkwOCAxMi44MTg3IDEyLjkxNzUgMTIuODEyNCAxMi45MjM4IDEyLjgwMjlaIiBmaWxsPSIjMDBENkI5IiAvPgogIDxwYXRoIGQ9Ik05LjA5Njk2IDIxLjI5ODZDMTQuMDgxNSAyMS4yOTg2IDE4LjQyMjUgMTguNTQ3NiAyMC42ODc3IDE0LjQ4NDNDMjAuNzY2NiAxNC4zNDIzIDIwLjg0NTQgMTQuMTk3MiAyMC45MTggMTQuMDUyQzIwLjgwNDQgMTQuMjcyOSAyMC42NzUxIDE0LjQ4MTEgMjAuNTM5NCAxNC42NzY3QzIwLjQ4ODkgMTQuNzQ2MSAyMC40Mzg1IDE0LjgxNTUgMjAuMzg4IDE0Ljg4MThDMjAuMzIxNyAxNC45NjY5IDIwLjI1NTUgMTUuMDQ5IDIwLjE4NjEgMTUuMTI3OEMyMC4xMzI0IDE1LjE5MDkgMjAuMDc1NyAxNS4yNTA5IDIwLjAxODkgMTUuMzEwOEMxOS45MDIxIDE1LjQzMDcgMTkuNzgyMyAxNS41NDc0IDE5LjY1NjEgMTUuNjU0N0MxOS41ODY3IDE1LjcxNDYgMTkuNTE0MSAxNS43NzE0IDE5LjQ0MTUgMTUuODI4MkMxOS4zNTY0IDE1Ljg5NDQgMTkuMjY4IDE1Ljk1NzUgMTkuMTc5NyAxNi4wMTQzQzE5LjEyMjkgMTYuMDUyMiAxOS4wNjYxIDE2LjA5IDE5LjAwOTMgMTYuMTI0N0MxOC45NDk0IDE2LjE2MjYgMTguODg5NSAxNi4xOTczIDE4LjgyNjQgMTYuMjMyQzE4LjcwMDIgMTYuMzAxNCAxOC41NzQgMTYuMzY0NSAxOC40NDQ2IDE2LjQyNDVDMTguMzMxMSAxNi40NzQ5IDE4LjIxNzUgMTYuNTIyMyAxOC4xMDA4IDE2LjU2MzNDMTcuOTc0NiAxNi42MTA2IDE3Ljg0NTIgMTYuNjUxNiAxNy43MTU5IDE2LjY4NjNDMTcuNTIzNCAxNi43Mzk5IDE3LjMyNDcgMTYuNzgwOSAxNy4xMjU5IDE2LjgxMjVDMTYuOTgwOCAxNi44MzQ2IDE2LjgzNTcgMTYuODUwNCAxNi42ODc0IDE2Ljg2M0MxNi41MzI4IDE2Ljg3MjQgMTYuMzc1MSAxNi44Nzg3IDE2LjIxNzMgMTYuODc1NkMxNi4wNDM4IDE2Ljg3MjQgMTUuODcwMyAxNi44NjMgMTUuNjkzNiAxNi44NDRDMTUuNTY0MyAxNi44MzE0IDE1LjQzNSAxNi44MTI1IDE1LjMwNTYgMTYuNzg3M0MxNS4xOTIgMTYuNzY4MyAxNS4wNzg1IDE2Ljc0MzEgMTQuOTY0OSAxNi43MTc4QzE0LjkwNDkgMTYuNzAyMSAxNC44NDUgMTYuNjg5NSAxNC43ODUxIDE2LjY3MzdDMTQuNjE3OSAxNi42Mjk1IDE0LjQ1MzggMTYuNTgyMiAxNC4yODk4IDE2LjUzNDlDMTQuMjA3NyAxNi41MDk2IDE0LjEyNTcgMTYuNDg3NSAxNC4wNDM3IDE2LjQ2MjNDMTMuOTIwNiAxNi40MjQ1IDEzLjc5NzYgMTYuMzg5NyAxMy42Nzc3IDE2LjM1MTlDMTMuNTc2OCAxNi4zMjAzIDEzLjQ3OSAxNi4yODg4IDEzLjM3OCAxNi4yNTcyQzEzLjI4MzQgMTYuMjI1NyAxMy4xODg3IDE2LjE5NDIgMTMuMDk0MSAxNi4xNjI2QzEzLjAzMSAxNi4xNDA1IDEyLjk2NDcgMTYuMTE4NCAxMi45MDE2IDE2LjA5NjRDMTIuODIyOCAxNi4wNzExIDEyLjc0NzEgMTYuMDQyNyAxMi42NjgyIDE2LjAxNDNDMTIuNjExNCAxNS45OTU0IDEyLjU1NzggMTUuOTc2NSAxMi41MDEgMTUuOTU0NEMxMi4zOTA2IDE1LjkxMzQgMTIuMjgwMiAxNS44NzU1IDEyLjE3MjkgMTUuODM0NUMxMi4xMDk4IDE1LjgwOTMgMTIuMDQ2NyAxNS43ODcyIDExLjk4MzYgMTUuNzYxOUMxMS44OTg0IDE1LjczMDQgMTEuODEzMiAxNS42OTU3IDExLjczMTIgMTUuNjY0MUMxMS42NDI5IDE1LjYyOTQgMTEuNTUxNCAxNS41OTQ3IDExLjQ2MzEgMTUuNTU2OUMxMS40MDYzIDE1LjUzNDggMTEuMzQ2MyAxNS41MDk2IDExLjI4OTUgMTUuNDg3NUMxMS4yMTcgMTUuNDU5MSAxMS4xNDc2IDE1LjQyNzUgMTEuMDc1IDE1LjM5OTFDMTEuMDIxNCAxNS4zNzcxIDEwLjk2NDYgMTUuMzUxOCAxMC45MTEgMTUuMzI5N0MxMC44NTQyIDE1LjMwNDUgMTAuNzk3NCAxNS4yNzkzIDEwLjc0MDYgMTUuMjU0QzEwLjY5MDEgMTUuMjMxOSAxMC42NDI4IDE1LjIwOTkgMTAuNTkyMyAxNS4xODc4QzEwLjU0ODIgMTUuMTY4OCAxMC41MDA4IDE1LjE0NjggMTAuNDU2NyAxNS4xMjc4QzEwLjQwOTQgMTUuMTA1NyAxMC4zNjUyIDE1LjA4NjggMTAuMzE3OSAxNS4wNjQ3QzEwLjI3MDUgMTUuMDQyNyAxMC4yMjMyIDE1LjAyMDYgMTAuMTc1OSAxNC45OTg1QzEwLjExNiAxNC45NzAxIDEwLjA1NiAxNC45NDE3IDkuOTk2MDggMTQuOTE2NUM5LjkzMjk5IDE0Ljg4ODEgOS44NzMwNCAxNC44NTY1IDkuODA5OTUgMTQuODI4MUM5Ljc0MzcgMTQuNzk2NiA5LjY3NzQ1IDE0Ljc2NSA5LjYxMTIgMTQuNzMwM0M5LjU1NDQxIDE0LjcwMTkgOS40OTc2MiAxNC42NzM1IDkuNDQwODQgMTQuNjQ4M0M2LjQ1MzI0IDEzLjE1OTIgMy44MDMyMSAxMS4xNzE3IDEuNTQ0MzggOC43NjE0NUMxLjQzMDgxIDguNjQxNTcgMS4yMzIwNiA4LjcyMDQ0IDEuMjMyMDYgOC44ODQ0OUwxLjIzODM2IDE4LjA5MzNDMS4yMzgzNiAxOC40OTQgMS40MzcxMiAxOC44NzI2IDEuNzcxNTMgMTkuMDkzNEMzLjg2NjMxIDIwLjQ4NzggNi4zODY5OSAyMS4yOTg2IDkuMDk2OTYgMjEuMjk4NloiIGZpbGw9IiMzMzcwRkYiIC8+CiAgPHBhdGggZD0iTTIzLjczMjIgOS4yOTQ4OEMyMi43MjI2IDguNzk2NDIgMjEuNTgzOCA4LjUxODggMjAuMzgxOCA4LjUxODhDMTkuNjY4OCA4LjUxODggMTguOTc0NyA4LjYxNjYgMTguMzIxNyA4LjgwMjczQzE4LjI0NiA4LjgyNDgxIDE4LjE3MDMgOC44NDY5IDE4LjA5NzcgOC44Njg5OEMxOC4wNDQxIDguODg0NzYgMTcuOTkwNSA4LjkwMzY4IDE3Ljk0IDguOTE5NDZDMTcuODM1OSA4Ljk1NDE2IDE3LjczMTggOC45OTIwMiAxNy42Mjc2IDkuMDMzMDNDMTcuNDQ0NyA5LjEwNTU5IDE3LjI2MTcgOS4xODQ0NiAxNy4wODUgOS4yNjk2NEMxNi44OTU3IDkuMzYxMTMgMTYuNzEyOCA5LjQ1ODkzIDE2LjUzMjkgOS41NjYxOUMxNi4zNSA5LjY3MzQ1IDE2LjE3MDEgOS43OTAxOCAxNS45OTk4IDkuOTEzMjJDMTUuODc2NyAxMC4wMDE2IDE1Ljc1NjkgMTAuMDkzIDE1LjYzNyAxMC4xODc3QzE1LjUwNzYgMTAuMjkxOCAxNS4zODQ2IDEwLjM5OTEgMTUuMjYxNiAxMC41MDk1QzE1LjE5NTMgMTAuNTY5NCAxNS4xMzIyIDEwLjYzMjUgMTUuMDY2IDEwLjY5MjVMMTQuNzMxNSAxMS4wMjA2TDEzLjM5MzkgMTIuMzQyNEwxMy4xNjM2IDEyLjU2OTZMMTMuMDg3OSAxMi42NDUzQzEzLjA1IDEyLjY4MzEgMTMuMDEyMiAxMi43MTc4IDEyLjk3NzUgMTIuNzU1N0MxMi45NTg2IDEyLjc3NDYgMTIuOTM5NiAxMi43OTA0IDEyLjkyMDcgMTIuODA5M0MxMi44OTIzIDEyLjgzNzcgMTIuODYzOSAxMi44NjMgMTIuODM1NSAxMi44ODgyQzEyLjgwNCAxMi45MTY2IDEyLjc3MjQgMTIuOTQ4MSAxMi43NDA5IDEyLjk3NjVDMTEuOTE0MyAxMy43MzY4IDEwLjk5MzEgMTQuMzg5OSA5Ljk5MzA0IDE0LjkyM0MxMC4wNTMgMTQuOTUxNCAxMC4xMTI5IDE0Ljk3OTggMTAuMTcyOSAxNS4wMDUxQzEwLjIyMDIgMTUuMDI3MSAxMC4yNjc1IDE1LjA0OTIgMTAuMzE0OCAxNS4wNzEzQzEwLjM1OSAxNS4wOTM0IDEwLjQwNjMgMTUuMTEyMyAxMC40NTM2IDE1LjEzNDRDMTAuNDk3OCAxNS4xNTMzIDEwLjU0NTEgMTUuMTc1NCAxMC41ODkzIDE1LjE5NDNDMTAuNjM5OCAxNS4yMTY0IDEwLjY4NzEgMTUuMjM4NSAxMC43Mzc2IDE1LjI2MDZDMTAuNzk0NCAxNS4yODU4IDEwLjg1MTEgMTUuMzExMSAxMC45MDc5IDE1LjMzNjNDMTAuOTYxNiAxNS4zNTg0IDExLjAxODQgMTUuMzgzNiAxMS4wNzIgMTUuNDA1N0MxMS4xNDQ1IDE1LjQzNzMgMTEuMjEzOSAxNS40NjU3IDExLjI4NjUgMTUuNDk0MUMxMS4zNDMzIDE1LjUxOTMgMTEuNDAzMiAxNS41NDE0IDExLjQ2IDE1LjU2MzVDMTEuNTQ4NCAxNS41OTgyIDExLjYzNjcgMTUuNjM2IDExLjcyODIgMTUuNjcwN0MxMS44MTM0IDE1LjcwMjMgMTEuODk1NCAxNS43MzcgMTEuOTgwNiAxNS43Njg1QzEyLjA0MzcgMTUuNzkzOCAxMi4xMDY4IDE1LjgxNTggMTIuMTY5OSAxNS44NDExQzEyLjI4MDMgMTUuODgyMSAxMi4zODc1IDE1LjkyMzEgMTIuNDk4IDE1Ljk2MUMxMi41NTQ3IDE1Ljk3OTkgMTIuNjA4NCAxNi4wMDIgMTIuNjY1MiAxNi4wMjA5QzEyLjc0NCAxNi4wNDkzIDEyLjgxOTcgMTYuMDc0NSAxMi44OTg2IDE2LjEwMjlDMTIuOTYxNyAxNi4xMjUgMTMuMDI4IDE2LjE0NzEgMTMuMDkxMSAxNi4xNjkyQzEzLjE4NTcgMTYuMjAwNyAxMy4yODAzIDE2LjIzMjMgMTMuMzc1IDE2LjI2MzhDMTMuNDcyOCAxNi4yOTU0IDEzLjU3MzcgMTYuMzI2OSAxMy42NzQ3IDE2LjM1ODVDMTMuNzk3NyAxNi4zOTYzIDEzLjkxNzYgMTYuNDM0MiAxNC4wNDA2IDE2LjQ2ODlDMTQuMTIyNyAxNi40OTQxIDE0LjIwNDcgMTYuNTE2MiAxNC4yODY3IDE2LjU0MTRDMTQuNDUwOCAxNi41ODg4IDE0LjYxOCAxNi42MzYxIDE0Ljc4MiAxNi42ODAzQzE0Ljg0MiAxNi42OTYgMTQuOTAxOSAxNi43MTE4IDE0Ljk2MTggMTYuNzI0NEMxNS4wNzU0IDE2Ljc1MjggMTUuMTg5IDE2Ljc3NDkgMTUuMzAyNiAxNi43OTM4QzE1LjQzMTkgMTYuODE1OSAxNS41NjEzIDE2LjgzNDggMTUuNjkwNiAxNi44NTA2QzE1Ljg2NzMgMTYuODY5NSAxNi4wNDA4IDE2Ljg4MjIgMTYuMjE0MyAxNi44ODIyQzE2LjM3MiAxNi44ODUzIDE2LjUyOTggMTYuODc5IDE2LjY4NDQgMTYuODY5NUMxNi44MzI2IDE2Ljg2MDEgMTYuOTc3OCAxNi44NDEyIDE3LjEyMjkgMTYuODE5MUMxNy4zMjQ4IDE2Ljc4NzUgMTcuNTIwNCAxNi43NDY1IDE3LjcxMjggMTYuNjkyOUMxNy44NDIyIDE2LjY1ODIgMTcuOTcxNSAxNi42MTcyIDE4LjA5NzcgMTYuNTY5OEMxOC4yMTQ0IDE2LjUyNTcgMTguMzI4IDE2LjQ4MTUgMTguNDQxNiAxNi40Mjc5QzE4LjU3MDkgMTYuMzY3OSAxOC43MDAzIDE2LjMwNDggMTguODIzMyAxNi4yMzU0QzE4Ljg4MzMgMTYuMjAwNyAxOC45NDY0IDE2LjE2NiAxOS4wMDYzIDE2LjEyODJDMTkuMDYzMSAxNi4wOTM1IDE5LjExOTkgMTYuMDU1NiAxOS4xNzY3IDE2LjAxNzhDMTkuMjY1IDE1Ljk1NzggMTkuMzUzMyAxNS44OTQ3IDE5LjQzODUgMTUuODMxNkMxOS41MTExIDE1Ljc3NDggMTkuNTgzNiAxNS43MTggMTkuNjUzIDE1LjY1ODFDMTkuNzc5MiAxNS41NTA4IDE5Ljg5OTEgMTUuNDM0MSAyMC4wMTU4IDE1LjMxNDJDMjAuMDcyNiAxNS4yNTQzIDIwLjEyOTQgMTUuMTk0MyAyMC4xODMgMTUuMTMxM0MyMC4yNTI0IDE1LjA1MjQgMjAuMzE4NyAxNC45NzA0IDIwLjM4NDkgMTQuODg1MkMyMC40MzU0IDE0LjgxODkgMjAuNDg1OSAxNC43NDk1IDIwLjUzNjQgMTQuNjgwMUMyMC42NzIgMTQuNDg0NSAyMC43OTgyIDE0LjI3NjMgMjAuOTExOCAxNC4wNTg2TDIxLjA0MTEgMTMuNzk5OUwyMi4yMDg0IDExLjQ3NDhMMjIuMjA1MyAxMS40ODEyQzIyLjU4MDcgMTAuNjU3OCAyMy4xMDEyIDkuOTE5NTMgMjMuNzMyMiA5LjI5NDg4WiIgZmlsbD0iIzEzM0M5QSIgLz4KPC9zdmc+Cg==");
5417
+ var redditIcon = imageDataUrl("image/svg+xml", "PHN2ZyBmaWxsPSIjRkY0NTAwIiByb2xlPSJpbWciIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+UmVkZGl0PC90aXRsZT48cGF0aCBkPSJNMTIgMEM1LjM3MyAwIDAgNS4zNzMgMCAxMmMwIDMuMzE0IDEuMzQzIDYuMzE0IDMuNTE1IDguNDg1bC0yLjI4NiAyLjI4NkMuNzc1IDIzLjIyNSAxLjA5NyAyNCAxLjczOCAyNEgxMmM2LjYyNyAwIDEyLTUuMzczIDEyLTEyUzE4LjYyNyAwIDEyIDBabTQuMzg4IDMuMTk5YzEuMTA0IDAgMS45OTkuODk1IDEuOTk5IDEuOTk5IDAgMS4xMDUtLjg5NSAyLTEuOTk5IDItLjk0NiAwLTEuNzM5LS42NTctMS45NDctMS41Mzl2LjAwMmMtMS4xNDcuMTYyLTIuMDMyIDEuMTUtMi4wMzIgMi4zNDF2LjAwN2MxLjc3Ni4wNjcgMy40LjU2NyA0LjY4NiAxLjM2My40NzMtLjM2MyAxLjA2NC0uNTggMS43MDctLjU4IDEuNTQ3IDAgMi44MDIgMS4yNTQgMi44MDIgMi44MDIgMCAxLjExNy0uNjU1IDIuMDgxLTEuNjAxIDIuNTMxLS4wODggMy4yNTYtMy42MzcgNS44NzYtNy45OTcgNS44NzYtNC4zNjEgMC03LjkwNS0yLjYxNy03Ljk5OC01Ljg3LS45NTQtLjQ0Ny0xLjYxNC0xLjQxNS0xLjYxNC0yLjUzOCAwLTEuNTQ4IDEuMjU1LTIuODAyIDIuODAzLTIuODAyLjY0NSAwIDEuMjM5LjIxOCAxLjcxMi41ODUgMS4yNzUtLjc5IDIuODgxLTEuMjkxIDQuNjQtMS4zNjV2LS4wMWMwLTEuNjYzIDEuMjYzLTMuMDM0IDIuODgtMy4yMDcuMTg4LS45MTEuOTkzLTEuNTk1IDEuOTU5LTEuNTk1Wm0tOC4wODUgOC4zNzZjLS43ODQgMC0xLjQ1OS43OC0xLjUwNiAxLjc5Ny0uMDQ3IDEuMDE2LjY0IDEuNDI5IDEuNDI2IDEuNDI5Ljc4NiAwIDEuMzcxLS4zNjkgMS40MTgtMS4zODUuMDQ3LTEuMDE3LS41NTMtMS44NDEtMS4zMzgtMS44NDFabTcuNDA2IDBjLS43ODYgMC0xLjM4NS44MjQtMS4zMzggMS44NDEuMDQ3IDEuMDE3LjYzNCAxLjM4NSAxLjQxOCAxLjM4NS43ODUgMCAxLjQ3My0uNDEzIDEuNDI2LTEuNDI5LS4wNDYtMS4wMTctLjcyMS0xLjc5Ny0xLjUwNi0xLjc5N1ptLTMuNzAzIDQuMDEzYy0uOTc0IDAtMS45MDcuMDQ4LTIuNzcuMTM1LS4xNDcuMDE1LS4yNDEuMTY4LS4xODMuMzA1LjQ4MyAxLjE1NCAxLjYyMiAxLjk2NCAyLjk1MyAxLjk2NCAxLjMzIDAgMi40Ny0uODEgMi45NTMtMS45NjQuMDU3LS4xMzctLjAzNy0uMjktLjE4NC0uMzA1LS44NjMtLjA4Ny0xLjc5NS0uMTM1LTIuNzY5LS4xMzVaIi8+PC9zdmc+");
5418
+ var mediumIcon = imageDataUrl("image/svg+xml", "PHN2ZyBmaWxsPSIjMDAwMDAwIiByb2xlPSJpbWciIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+TWVkaXVtPC90aXRsZT48cGF0aCBkPSJNNC4yMSAwQTQuMjAxIDQuMjAxIDAgMCAwIDAgNC4yMXYxNS41OEE0LjIwMSA0LjIwMSAwIDAgMCA0LjIxIDI0aDE1LjU4QTQuMjAxIDQuMjAxIDAgMCAwIDI0IDE5Ljc5di0xLjA5M2MtLjEzNy4wMTMtLjI3OC4wMi0uNDIyLjAyLTIuNTc3IDAtNC4wMjctMi4xNDYtNC4wOS00LjgzMmE3LjU5MiA3LjU5MiAwIDAgMSAuMDIyLS43MDhjLjA5My0xLjE4Ni40NzUtMi4yNDEgMS4xMDUtMy4wMjJhMy44ODUgMy44ODUgMCAwIDEgMS4zOTUtMS4xYy40NjgtLjIzNyAxLjEyNy0uMzY3IDEuNjY0LS4zNjdoLjAyM2MuMTAxIDAgLjIwMi4wMDQuMzAzLjAxVjQuMjExQTQuMjAxIDQuMjAxIDAgMCAwIDE5Ljc5IDBabS4xOTggNS41ODNoNC4xNjVsMy41ODggOC40MzUgMy41OS04LjQzNWgzLjg2NHYuMTQ2bC0uMDE5LjAwNGMtLjcwNS4xNi0xLjA2My4zOTctMS4wNjMgMS4yNTRoLS4wMDNsLjAwMyAxMC4yNzRjLjA2LjY3Ni40MjQuODg1IDEuMDYzIDEuMDNsLjAyLjAwNHYuMTQ1aC00LjkyM3YtLjE0NWwuMDE5LS4wMDVjLjYzOS0uMTQ0Ljk5NC0uMzUzIDEuMDU0LTEuMDNWNy4yNjdsLTQuNzQ1IDExLjE1aC0uMjYxTDYuMTUgNy41Njl2OS40NDVjMCAuODU3LjM1OCAxLjA5NCAxLjA2MyAxLjI1M2wuMDIuMDA0di4xNDdINC40MDV2LS4xNDdsLjAxOS0uMDA0Yy43MDUtLjE2IDEuMDY1LS4zOTcgMS4wNjUtMS4yNTNWNi45ODdjMC0uODU3LS4zNTgtMS4wOTQtMS4wNjQtMS4yNTRsLS4wMTgtLjAwNHptMTkuMjUgMy42NjhjLTEuMDg2LjAyMy0xLjczMyAxLjMyMy0xLjgxMyAzLjEyNEgyNFY5LjI5OGExLjM3OCAxLjM3OCAwIDAgMC0uMzQyLS4wNDdabS0xLjg2MiAzLjYzMmMtLjEgMS43NTYuODYgMy4yMzkgMi4yMDQgMy42MzR2LTMuNjM0eiIvPjwvc3ZnPg==");
5419
+ var hackerNewsIcon = imageDataUrl("image/svg+xml", "PHN2ZyBmaWxsPSIjRjA2NTJGIiByb2xlPSJpbWciIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+WSBDb21iaW5hdG9yPC90aXRsZT48cGF0aCBkPSJNMCAyNFYwaDI0djI0SDB6TTYuOTUxIDUuODk2bDQuMTEyIDcuNzA4djUuMDY0aDEuNTgzdi00Ljk3Mmw0LjE0OC03Ljc5OWgtMS43NDlsLTIuNDU3IDQuODc1Yy0uMzcyLjc0NS0uNjg4IDEuNDM0LS42ODggMS40MzRzLS4yOTctLjcwOC0uNjUxLTEuNDM0TDguODMxIDUuODk2aC0xLjg4eiIvPjwvc3ZnPg==");
5420
+ var linuxDoIcon = imageDataUrl("image/svg+xml", "PHN2ZyBmaWxsPSIjMDAwMDAwIiByb2xlPSJpbWciIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+RGlzY291cnNlPC90aXRsZT48cGF0aCBkPSJNMTIuMTAzIDBDMTguNjY2IDAgMjQgNS40ODUgMjQgMTEuOTk3YzAgNi41MS01LjMzIDExLjk5LTExLjkgMTEuOTlMMCAyNFYxMS43OUMwIDUuMjggNS41MzIgMCAxMi4xMDMgMHptLjExNiA0LjU2M2MtMi41OTMtLjAwMy00Ljk5NiAxLjM1Mi02LjMzNyAzLjU3LTEuMzMgMi4yMDgtMS4zODcgNC45NTctLjE0OCA3LjIyTDQuNCAxOS42MWw0Ljc5NC0xLjA3NGMyLjc0NSAxLjIyNSA1Ljk2NS42NzYgOC4xMzYtMS4zOSAyLjE3LTIuMDU0IDIuODYtNS4yMjggMS43MzctNy45OTctMS4xMzUtMi43NzgtMy44NC00LjU5LTYuODQtNC41ODVoLS4wMDh6Ii8+PC9zdmc+");
5421
+ var feishuIcon = imageDataUrl("image/svg+xml", "PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMTIuOTIzOCAxMi44MDI5QzEyLjk0MjcgMTIuNzg0IDEyLjk2MTYgMTIuNzY4MiAxMi45ODA2IDEyLjc0OTNDMTMuMDE4NCAxMi43MTQ2IDEzLjA1NjMgMTIuNjc2NyAxMy4wOTEgMTIuNjM4OUwxMy4xNjY3IDEyLjU2MzFMMTMuMzk3IDEyLjMzNkwxNC43MzE1IDExLjAxNzNMMTUuMDY1OSAxMC42ODZDMTUuMTI5IDEwLjYyMjkgMTUuMTk1MiAxMC41NjMgMTUuMjYxNSAxMC41MDMxQzE1LjM4NDUgMTAuMzkyNiAxNS41MDc2IDEwLjI4NTQgMTUuNjM2OSAxMC4xODEzQzE1Ljc1MzYgMTAuMDg2NiAxNS44NzY3IDkuOTk1MTQgMTUuOTk5NyA5LjkwNjhDMTYuMTczMiA5Ljc4Mzc2IDE2LjM0OTkgOS42NzAxOSAxNi41MzI5IDkuNTU5NzdDMTYuNzEyNyA5LjQ1MjUxIDE2Ljg5NTcgOS4zNTQ3MSAxNy4wODUgOS4yNjMyMkMxNy4yNjE2IDkuMTc4MDQgMTcuNDQxNSA5LjA5OTE3IDE3LjYyNzYgOS4wMjY2MUMxNy43MzE3IDguOTg1NiAxNy44MzI2IDguOTQ3NzQgMTcuOTM5OSA4LjkxMzA0QzE3Ljk5MzUgOC44OTQxMSAxOC4wNDQgOC44NzgzNCAxOC4wOTc3IDguODYyNTZDMTcuNjI3NiA3LjAwNDM5IDE2Ljc2MzIgNS4zMDA4IDE1LjU5OTEgMy44NDk1OUMxNS4zNzE5IDMuNTY1NjYgMTUuMDI0OSAzLjQwMTYxIDE0LjY1ODkgMy40MDE2MUg1LjAwODRDNC44MzQ4OSAzLjQwMTYxIDQuNzYyMzMgMy42MjU2IDQuOTAxMTQgMy43MjY1NkM4LjE4NTI4IDYuMTM5OTcgMTAuOTIzNiA5LjI0MTE0IDEyLjkwMTcgMTIuODI1QzEyLjkwOCAxMi44MTg3IDEyLjkxNzUgMTIuODEyNCAxMi45MjM4IDEyLjgwMjlaIiBmaWxsPSIjMDBENkI5IiAvPgogIDxwYXRoIGQ9Ik05LjA5Njk2IDIxLjI5ODZDMTQuMDgxNSAyMS4yOTg2IDE4LjQyMjUgMTguNTQ3NiAyMC42ODc3IDE0LjQ4NDNDMjAuNzY2NiAxNC4zNDIzIDIwLjg0NTQgMTQuMTk3MiAyMC45MTggMTQuMDUyQzIwLjgwNDQgMTQuMjcyOSAyMC42NzUxIDE0LjQ4MTEgMjAuNTM5NCAxNC42NzY3QzIwLjQ4ODkgMTQuNzQ2MSAyMC40Mzg1IDE0LjgxNTUgMjAuMzg4IDE0Ljg4MThDMjAuMzIxNyAxNC45NjY5IDIwLjI1NTUgMTUuMDQ5IDIwLjE4NjEgMTUuMTI3OEMyMC4xMzI0IDE1LjE5MDkgMjAuMDc1NyAxNS4yNTA5IDIwLjAxODkgMTUuMzEwOEMxOS45MDIxIDE1LjQzMDcgMTkuNzgyMyAxNS41NDc0IDE5LjY1NjEgMTUuNjU0N0MxOS41ODY3IDE1LjcxNDYgMTkuNTE0MSAxNS43NzE0IDE5LjQ0MTUgMTUuODI4MkMxOS4zNTY0IDE1Ljg5NDQgMTkuMjY4IDE1Ljk1NzUgMTkuMTc5NyAxNi4wMTQzQzE5LjEyMjkgMTYuMDUyMiAxOS4wNjYxIDE2LjA5IDE5LjAwOTMgMTYuMTI0N0MxOC45NDk0IDE2LjE2MjYgMTguODg5NSAxNi4xOTczIDE4LjgyNjQgMTYuMjMyQzE4LjcwMDIgMTYuMzAxNCAxOC41NzQgMTYuMzY0NSAxOC40NDQ2IDE2LjQyNDVDMTguMzMxMSAxNi40NzQ5IDE4LjIxNzUgMTYuNTIyMyAxOC4xMDA4IDE2LjU2MzNDMTcuOTc0NiAxNi42MTA2IDE3Ljg0NTIgMTYuNjUxNiAxNy43MTU5IDE2LjY4NjNDMTcuNTIzNCAxNi43Mzk5IDE3LjMyNDcgMTYuNzgwOSAxNy4xMjU5IDE2LjgxMjVDMTYuOTgwOCAxNi44MzQ2IDE2LjgzNTcgMTYuODUwNCAxNi42ODc0IDE2Ljg2M0MxNi41MzI4IDE2Ljg3MjQgMTYuMzc1MSAxNi44Nzg3IDE2LjIxNzMgMTYuODc1NkMxNi4wNDM4IDE2Ljg3MjQgMTUuODcwMyAxNi44NjMgMTUuNjkzNiAxNi44NDRDMTUuNTY0MyAxNi44MzE0IDE1LjQzNSAxNi44MTI1IDE1LjMwNTYgMTYuNzg3M0MxNS4xOTIgMTYuNzY4MyAxNS4wNzg1IDE2Ljc0MzEgMTQuOTY0OSAxNi43MTc4QzE0LjkwNDkgMTYuNzAyMSAxNC44NDUgMTYuNjg5NSAxNC43ODUxIDE2LjY3MzdDMTQuNjE3OSAxNi42Mjk1IDE0LjQ1MzggMTYuNTgyMiAxNC4yODk4IDE2LjUzNDlDMTQuMjA3NyAxNi41MDk2IDE0LjEyNTcgMTYuNDg3NSAxNC4wNDM3IDE2LjQ2MjNDMTMuOTIwNiAxNi40MjQ1IDEzLjc5NzYgMTYuMzg5NyAxMy42Nzc3IDE2LjM1MTlDMTMuNTc2OCAxNi4zMjAzIDEzLjQ3OSAxNi4yODg4IDEzLjM3OCAxNi4yNTcyQzEzLjI4MzQgMTYuMjI1NyAxMy4xODg3IDE2LjE5NDIgMTMuMDk0MSAxNi4xNjI2QzEzLjAzMSAxNi4xNDA1IDEyLjk2NDcgMTYuMTE4NCAxMi45MDE2IDE2LjA5NjRDMTIuODIyOCAxNi4wNzExIDEyLjc0NzEgMTYuMDQyNyAxMi42NjgyIDE2LjAxNDNDMTIuNjExNCAxNS45OTU0IDEyLjU1NzggMTUuOTc2NSAxMi41MDEgMTUuOTU0NEMxMi4zOTA2IDE1LjkxMzQgMTIuMjgwMiAxNS44NzU1IDEyLjE3MjkgMTUuODM0NUMxMi4xMDk4IDE1LjgwOTMgMTIuMDQ2NyAxNS43ODcyIDExLjk4MzYgMTUuNzYxOUMxMS44OTg0IDE1LjczMDQgMTEuODEzMiAxNS42OTU3IDExLjczMTIgMTUuNjY0MUMxMS42NDI5IDE1LjYyOTQgMTEuNTUxNCAxNS41OTQ3IDExLjQ2MzEgMTUuNTU2OUMxMS40MDYzIDE1LjUzNDggMTEuMzQ2MyAxNS41MDk2IDExLjI4OTUgMTUuNDg3NUMxMS4yMTcgMTUuNDU5MSAxMS4xNDc2IDE1LjQyNzUgMTEuMDc1IDE1LjM5OTFDMTEuMDIxNCAxNS4zNzcxIDEwLjk2NDYgMTUuMzUxOCAxMC45MTEgMTUuMzI5N0MxMC44NTQyIDE1LjMwNDUgMTAuNzk3NCAxNS4yNzkzIDEwLjc0MDYgMTUuMjU0QzEwLjY5MDEgMTUuMjMxOSAxMC42NDI4IDE1LjIwOTkgMTAuNTkyMyAxNS4xODc4QzEwLjU0ODIgMTUuMTY4OCAxMC41MDA4IDE1LjE0NjggMTAuNDU2NyAxNS4xMjc4QzEwLjQwOTQgMTUuMTA1NyAxMC4zNjUyIDE1LjA4NjggMTAuMzE3OSAxNS4wNjQ3QzEwLjI3MDUgMTUuMDQyNyAxMC4yMjMyIDE1LjAyMDYgMTAuMTc1OSAxNC45OTg1QzEwLjExNiAxNC45NzAxIDEwLjA1NiAxNC45NDE3IDkuOTk2MDggMTQuOTE2NUM5LjkzMjk5IDE0Ljg4ODEgOS44NzMwNCAxNC44NTY1IDkuODA5OTUgMTQuODI4MUM5Ljc0MzcgMTQuNzk2NiA5LjY3NzQ1IDE0Ljc2NSA5LjYxMTIgMTQuNzMwM0M5LjU1NDQxIDE0LjcwMTkgOS40OTc2MiAxNC42NzM1IDkuNDQwODQgMTQuNjQ4M0M2LjQ1MzI0IDEzLjE1OTIgMy44MDMyMSAxMS4xNzE3IDEuNTQ0MzggOC43NjE0NUMxLjQzMDgxIDguNjQxNTcgMS4yMzIwNiA4LjcyMDQ0IDEuMjMyMDYgOC44ODQ0OUwxLjIzODM2IDE4LjA5MzNDMS4yMzgzNiAxOC40OTQgMS40MzcxMiAxOC44NzI2IDEuNzcxNTMgMTkuMDkzNEMzLjg2NjMxIDIwLjQ4NzggNi4zODY5OSAyMS4yOTg2IDkuMDk2OTYgMjEuMjk4NloiIGZpbGw9IiMzMzcwRkYiIC8+CiAgPHBhdGggZD0iTTIzLjczMjIgOS4yOTQ4OEMyMi43MjI2IDguNzk2NDIgMjEuNTgzOCA4LjUxODggMjAuMzgxOCA4LjUxODhDMTkuNjY4OCA4LjUxODggMTguOTc0NyA4LjYxNjYgMTguMzIxNyA4LjgwMjczQzE4LjI0NiA4LjgyNDgxIDE4LjE3MDMgOC44NDY5IDE4LjA5NzcgOC44Njg5OEMxOC4wNDQxIDguODg0NzYgMTcuOTkwNSA4LjkwMzY4IDE3Ljk0IDguOTE5NDZDMTcuODM1OSA4Ljk1NDE2IDE3LjczMTggOC45OTIwMiAxNy42Mjc2IDkuMDMzMDNDMTcuNDQ0NyA5LjEwNTU5IDE3LjI2MTcgOS4xODQ0NiAxNy4wODUgOS4yNjk2NEMxNi44OTU3IDkuMzYxMTMgMTYuNzEyOCA5LjQ1ODkzIDE2LjUzMjkgOS41NjYxOUMxNi4zNSA5LjY3MzQ1IDE2LjE3MDEgOS43OTAxOCAxNS45OTk4IDkuOTEzMjJDMTUuODc2NyAxMC4wMDE2IDE1Ljc1NjkgMTAuMDkzIDE1LjYzNyAxMC4xODc3QzE1LjUwNzYgMTAuMjkxOCAxNS4zODQ2IDEwLjM5OTEgMTUuMjYxNiAxMC41MDk1QzE1LjE5NTMgMTAuNTY5NCAxNS4xMzIyIDEwLjYzMjUgMTUuMDY2IDEwLjY5MjVMMTQuNzMxNSAxMS4wMjA2TDEzLjM5MzkgMTIuMzQyNEwxMy4xNjM2IDEyLjU2OTZMMTMuMDg3OSAxMi42NDUzQzEzLjA1IDEyLjY4MzEgMTMuMDEyMiAxMi43MTc4IDEyLjk3NzUgMTIuNzU1N0MxMi45NTg2IDEyLjc3NDYgMTIuOTM5NiAxMi43OTA0IDEyLjkyMDcgMTIuODA5M0MxMi44OTIzIDEyLjgzNzcgMTIuODYzOSAxMi44NjMgMTIuODM1NSAxMi44ODgyQzEyLjgwNCAxMi45MTY2IDEyLjc3MjQgMTIuOTQ4MSAxMi43NDA5IDEyLjk3NjVDMTEuOTE0MyAxMy43MzY4IDEwLjk5MzEgMTQuMzg5OSA5Ljk5MzA0IDE0LjkyM0MxMC4wNTMgMTQuOTUxNCAxMC4xMTI5IDE0Ljk3OTggMTAuMTcyOSAxNS4wMDUxQzEwLjIyMDIgMTUuMDI3MSAxMC4yNjc1IDE1LjA0OTIgMTAuMzE0OCAxNS4wNzEzQzEwLjM1OSAxNS4wOTM0IDEwLjQwNjMgMTUuMTEyMyAxMC40NTM2IDE1LjEzNDRDMTAuNDk3OCAxNS4xNTMzIDEwLjU0NTEgMTUuMTc1NCAxMC41ODkzIDE1LjE5NDNDMTAuNjM5OCAxNS4yMTY0IDEwLjY4NzEgMTUuMjM4NSAxMC43Mzc2IDE1LjI2MDZDMTAuNzk0NCAxNS4yODU4IDEwLjg1MTEgMTUuMzExMSAxMC45MDc5IDE1LjMzNjNDMTAuOTYxNiAxNS4zNTg0IDExLjAxODQgMTUuMzgzNiAxMS4wNzIgMTUuNDA1N0MxMS4xNDQ1IDE1LjQzNzMgMTEuMjEzOSAxNS40NjU3IDExLjI4NjUgMTUuNDk0MUMxMS4zNDMzIDE1LjUxOTMgMTEuNDAzMiAxNS41NDE0IDExLjQ2IDE1LjU2MzVDMTEuNTQ4NCAxNS41OTgyIDExLjYzNjcgMTUuNjM2IDExLjcyODIgMTUuNjcwN0MxMS44MTM0IDE1LjcwMjMgMTEuODk1NCAxNS43MzcgMTEuOTgwNiAxNS43Njg1QzEyLjA0MzcgMTUuNzkzOCAxMi4xMDY4IDE1LjgxNTggMTIuMTY5OSAxNS44NDExQzEyLjI4MDMgMTUuODgyMSAxMi4zODc1IDE1LjkyMzEgMTIuNDk4IDE1Ljk2MUMxMi41NTQ3IDE1Ljk3OTkgMTIuNjA4NCAxNi4wMDIgMTIuNjY1MiAxNi4wMjA5QzEyLjc0NCAxNi4wNDkzIDEyLjgxOTcgMTYuMDc0NSAxMi44OTg2IDE2LjEwMjlDMTIuOTYxNyAxNi4xMjUgMTMuMDI4IDE2LjE0NzEgMTMuMDkxMSAxNi4xNjkyQzEzLjE4NTcgMTYuMjAwNyAxMy4yODAzIDE2LjIzMjMgMTMuMzc1IDE2LjI2MzhDMTMuNDcyOCAxNi4yOTU0IDEzLjU3MzcgMTMuMzI2OSAxMy42NzQ3IDE2LjM1ODVDMTMuNzk3NyAxNi4zOTYzIDEzLjkxNzYgMTYuNDM0MiAxNC4wNDA2IDE2LjQ2ODlDMTQuMTIyNyAxNi40OTQxIDE0LjIwNDcgMTYuNTE2MiAxNC4yODY3IDE2LjU0MTRDMTQuNDUwOCAxNi41ODg4IDE0LjYxOCAxNi42MzYxIDE0Ljc4MiAxNi42ODAzQzE0Ljg0MiAxNi42OTYgMTQuOTAxOSAxNi43MTE4IDE0Ljk2MTggMTYuNzI0NEMxNS4wNzU0IDE2Ljc1MjggMTUuMTg5IDE2Ljc3NDkgMTUuMzAyNiAxNi43OTM4QzE1LjQzMTkgMTYuODE1OSAxNS41NjEzIDE2LjgzNDggMTUuNjkwNiAxNi44NTA2QzE1Ljg2NzMgMTYuODY5NSAxNi4wNDA4IDE2Ljg4MjIgMTYuMjE0MyAxNi44ODIyQzE2LjM3MiAxNi44ODUzIDE2LjUyOTggMTYuODc5IDE2LjY4NDQgMTYuODY5NUMxNi44MzI2IDE2Ljg2MDEgMTYuOTc3OCAxNi44NDEyIDE3LjEyMjkgMTYuODE5MUMxNy4zMjQ4IDE2Ljc4NzUgMTcuNTIwNCAxNi43NDY1IDE3LjcxMjggMTYuNjkyOUMxNy44NDIyIDE2LjY1ODIgMTcuOTcxNSAxNi42MTcyIDE4LjA5NzcgMTYuNTY5OEMxOC4yMTQ0IDE2LjUyNTcgMTguMzI4IDE2LjQ4MTUgMTguNDQxNiAxNi40Mjc5QzE4LjU3MDkgMTYuMzY3OSAxOC43MDAzIDE2LjMwNDggMTguODIzMyAxNi4yMzU0QzE4Ljg4MzMgMTYuMjAwNyAxOC45NDY0IDE2LjE2NiAxOS4wMDYzIDE2LjEyODJDMTkuMDYzMSAxNi4wOTM1IDE5LjExOTkgMTYuMDU1NiAxOS4xNzY3IDE2LjAxNzhDMTkuMjY1IDE1Ljk1NzggMTkuMzUzMyAxNS44OTQ3IDE5LjQzODUgMTUuODMxNkMxOS41MTExIDE1Ljc3NDggMTkuNTgzNiAxNS43MTggMTkuNjUzIDE1LjY1ODFDMTkuNzc5MiAxNS41NTA4IDE5Ljg5OTEgMTUuNDM0MSAyMC4wMTU4IDE1LjMxNDJDMjAuMDcyNiAxNS4yNTQzIDIwLjEyOTQgMTUuMTk0MyAyMC4xODMgMTUuMTMxM0MyMC4yNTI0IDE1LjA1MjQgMjAuMzE4NyAxNC45NzA0IDIwLjM4NDkgMTQuODg1MkMyMC40MzU0IDE0LjgxODkgMjAuNDg1OSAxNC43NDk1IDIwLjUzNjQgMTQuNjgwMUMyMC42NzIgMTQuNDg0NSAyMC43OTgyIDE0LjI3NjMgMjAuOTExOCAxNC4wNTg2TDIxLjA0MTEgMTMuNzk5OUwyMi4yMDg0IDExLjQ3NDhMMjIuMjA1MyAxMS40ODEyQzIyLjU4MDcgMTAuNjU3OCAyMy4xMDEyIDkuOTE5NTMgMjMuNzMyMiA5LjI5NDg4WiIgZmlsbD0iIzEzM0M5QSIgLz4KPC9zdmc+Cg==");
5418
5422
  var rudderIcon = imageDataUrl("image/x-icon", "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");
5419
5423
  var KNOWN_WEBSITE_ICONS = [
5420
5424
  { hostnames: ["x.com", "twitter.com"], includeSubdomains: true, siteName: "X", iconDataUrl: xIcon },
@@ -5425,9 +5429,9 @@ var KNOWN_WEBSITE_ICONS = [
5425
5429
  { hostnames: ["docs.google.com"], siteName: "Google Docs", iconDataUrl: googleDocsIcon },
5426
5430
  { hostnames: ["notion.so", "www.notion.so"], siteName: "Notion", iconDataUrl: notionIcon },
5427
5431
  { hostnames: ["linear.app", "linear.com"], siteName: "Linear", iconDataUrl: linearIcon },
5428
- { hostnames: ["openai.com", "www.openai.com", "platform.openai.com"], siteName: "OpenAI", iconDataUrl: openaiIcon },
5429
- { hostnames: ["chatgpt.com", "www.chatgpt.com", "chat.openai.com"], siteName: "ChatGPT", iconDataUrl: chatgptIcon },
5430
- { hostnames: ["anthropic.com", "www.anthropic.com", "console.anthropic.com"], siteName: "Anthropic", iconDataUrl: anthropicIcon },
5432
+ { hostnames: ["openai.com"], includeSubdomains: true, siteName: "OpenAI", iconDataUrl: openaiIcon },
5433
+ { hostnames: ["chatgpt.com", "chat.openai.com"], includeSubdomains: true, siteName: "ChatGPT", iconDataUrl: chatgptIcon },
5434
+ { hostnames: ["anthropic.com"], includeSubdomains: true, siteName: "Anthropic", iconDataUrl: anthropicIcon },
5431
5435
  { hostnames: ["claude.ai"], siteName: "Claude", iconDataUrl: claudeIcon },
5432
5436
  { hostnames: ["figma.com", "www.figma.com"], siteName: "Figma", iconDataUrl: figmaIcon },
5433
5437
  { hostnames: ["slack.com", "www.slack.com"], siteName: "Slack", iconDataUrl: slackIcon },
@@ -5435,6 +5439,10 @@ var KNOWN_WEBSITE_ICONS = [
5435
5439
  { hostnames: ["vercel.com", "www.vercel.com"], siteName: "Vercel", iconDataUrl: vercelIcon },
5436
5440
  { hostnames: ["cloudflare.com", "www.cloudflare.com"], siteName: "Cloudflare", iconDataUrl: cloudflareIcon },
5437
5441
  { hostnames: ["arxiv.org", "www.arxiv.org"], siteName: "arXiv", iconDataUrl: arxivIcon },
5442
+ { hostnames: ["reddit.com"], includeSubdomains: true, siteName: "Reddit", iconDataUrl: redditIcon },
5443
+ { hostnames: ["medium.com"], includeSubdomains: true, siteName: "Medium", iconDataUrl: mediumIcon },
5444
+ { hostnames: ["news.ycombinator.com"], siteName: "Hacker News", iconDataUrl: hackerNewsIcon },
5445
+ { hostnames: ["linux.do"], includeSubdomains: true, siteName: "Linux.do", iconDataUrl: linuxDoIcon },
5438
5446
  { hostnames: ["feishu.cn", "www.feishu.cn", "feishuapp.cn", "www.feishuapp.cn"], includeSubdomains: true, siteName: "Feishu", iconDataUrl: feishuIcon },
5439
5447
  { hostnames: ["rudderhq.dev", "rudder.zeeland.studio"], includeSubdomains: true, siteName: "Rudder", iconDataUrl: rudderIcon }
5440
5448
  ];
@@ -5484,6 +5492,18 @@ var createCustomIntegrationToolCallSchema = external_exports.object({
5484
5492
  });
5485
5493
 
5486
5494
  // ../../../shared/src/validators/instance.ts
5495
+ var DEFAULT_INSTANCE_BROWSER_SETTINGS = {
5496
+ enabled: true,
5497
+ openLinksIn: "built_in"
5498
+ };
5499
+ var instanceBrowserSettingsSchema = external_exports.object({
5500
+ enabled: external_exports.boolean().default(DEFAULT_INSTANCE_BROWSER_SETTINGS.enabled),
5501
+ openLinksIn: external_exports.enum(["built_in", "default_browser"]).default(DEFAULT_INSTANCE_BROWSER_SETTINGS.openLinksIn)
5502
+ }).strict();
5503
+ var patchInstanceBrowserSettingsSchema = external_exports.object({
5504
+ enabled: external_exports.boolean().optional(),
5505
+ openLinksIn: external_exports.enum(["built_in", "default_browser"]).optional()
5506
+ }).strict();
5487
5507
  var instanceLocaleSchema = external_exports.enum(["en", "zh-CN"]);
5488
5508
  var instanceGeneralSettingsSchema = external_exports.object({
5489
5509
  censorUsernameInLogs: external_exports.boolean().default(false),
@@ -7735,7 +7755,8 @@ var RUDDER_BUNDLED_SKILL_SLUGS = [
7735
7755
  "rudder",
7736
7756
  "rudder-create-agent",
7737
7757
  "rudder-create-plugin",
7738
- "skill-creator"
7758
+ "skill-creator",
7759
+ "browser"
7739
7760
  ];
7740
7761
  var RUDDER_BUNDLED_SKILL_KEYS = new Set(
7741
7762
  RUDDER_BUNDLED_SKILL_SLUGS.map((slug) => `rudder/${slug}`)