@koda-sl/baker-cli 0.512.0 → 0.514.0-dev.555f7007e

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 (1156) hide show
  1. package/README.md +20 -3
  2. package/dist/account-QX4G4BJ7.js +82 -0
  3. package/dist/account-QX4G4BJ7.js.map +1 -0
  4. package/dist/account-UFYZS3K6.js +82 -0
  5. package/dist/account-UFYZS3K6.js.map +1 -0
  6. package/dist/account-assets-J5Z4URLQ.js +290 -0
  7. package/dist/account-level-4SBYYHRS.js +611 -0
  8. package/dist/account-level-4SBYYHRS.js.map +1 -0
  9. package/dist/account-reads-FOEVPWDP.js +219 -0
  10. package/dist/account-users-UTIF7MIT.js +64 -0
  11. package/dist/account-users-UTIF7MIT.js.map +1 -0
  12. package/dist/account-writes-QAQXRIEY.js +68 -0
  13. package/dist/account-writes-QAQXRIEY.js.map +1 -0
  14. package/dist/accounts-JK3OAS5U.js +701 -0
  15. package/dist/accounts-JK3OAS5U.js.map +1 -0
  16. package/dist/accounts-OE33CKWD.js +80 -0
  17. package/dist/accounts-OE33CKWD.js.map +1 -0
  18. package/dist/actions-QZDSLFFK.js +55 -0
  19. package/dist/activecampaign-U6TKRR45.js +938 -0
  20. package/dist/activecampaign-U6TKRR45.js.map +1 -0
  21. package/dist/ad-group-writes-XY5JYTKT.js +172 -0
  22. package/dist/ad-group-writes-XY5JYTKT.js.map +1 -0
  23. package/dist/ad-groups-YEO5ZS5U.js +70 -0
  24. package/dist/ad-groups-YEO5ZS5U.js.map +1 -0
  25. package/dist/ad-writes-XRCPK4SP.js +176 -0
  26. package/dist/ad-writes-XRCPK4SP.js.map +1 -0
  27. package/dist/add-2EF7S4NK.js +305 -0
  28. package/dist/add-2EF7S4NK.js.map +1 -0
  29. package/dist/add-YCJ6RXPG.js +107 -0
  30. package/dist/add-YCJ6RXPG.js.map +1 -0
  31. package/dist/ads-AYJAYLFR.js +48 -0
  32. package/dist/ads-H7H7H2CM.js +79 -0
  33. package/dist/ads-H7H7H2CM.js.map +1 -0
  34. package/dist/ads-MAOI7S6V.js +115 -0
  35. package/dist/adsets-QRKICEFD.js +182 -0
  36. package/dist/advertisers-JLSU3G35.js +123 -0
  37. package/dist/advertisers-JLSU3G35.js.map +1 -0
  38. package/dist/analytics-ADIWEM6G.js +2437 -0
  39. package/dist/analytics-ADIWEM6G.js.map +1 -0
  40. package/dist/analytics-XB6FRNVJ.js +447 -0
  41. package/dist/analytics-XB6FRNVJ.js.map +1 -0
  42. package/dist/animate-HRWFVE2N.js +480 -0
  43. package/dist/asset-writes-JLVUAVUZ.js +50 -0
  44. package/dist/assign-IWZ2OPFL.js +80 -0
  45. package/dist/assign-IWZ2OPFL.js.map +1 -0
  46. package/dist/audience-size-P5L6MZ4C.js +76 -0
  47. package/dist/audience-size-P5L6MZ4C.js.map +1 -0
  48. package/dist/audience-writes-CDKQB3SM.js +327 -0
  49. package/dist/audience-writes-CDKQB3SM.js.map +1 -0
  50. package/dist/audiences-CDDI5HR5.js +86 -0
  51. package/dist/audiences-XKERWKKE.js +280 -0
  52. package/dist/audiences-XKERWKKE.js.map +1 -0
  53. package/dist/audit-SEADLC6F.js +154 -0
  54. package/dist/audit-SEADLC6F.js.map +1 -0
  55. package/dist/autocomplete-AJQBJS5R.js +114 -0
  56. package/dist/autocomplete-AJQBJS5R.js.map +1 -0
  57. package/dist/avatars-4HCGWBOL.js +38 -0
  58. package/dist/bid-pricing-NWSUO3VM.js +103 -0
  59. package/dist/bid-pricing-NWSUO3VM.js.map +1 -0
  60. package/dist/brand-C6OB6Q4U.js +22 -0
  61. package/dist/brief-LCWWQ4OC.js +543 -0
  62. package/dist/brief-LCWWQ4OC.js.map +1 -0
  63. package/dist/campaign-groups-PH64UXZJ.js +99 -0
  64. package/dist/campaign-groups-PH64UXZJ.js.map +1 -0
  65. package/dist/campaign-writes-BN3EGDK5.js +168 -0
  66. package/dist/campaign-writes-BN3EGDK5.js.map +1 -0
  67. package/dist/campaign-writes-CLV5ZSUK.js +176 -0
  68. package/dist/campaign-writes-CLV5ZSUK.js.map +1 -0
  69. package/dist/campaigns-5XRY27JZ.js +78 -0
  70. package/dist/campaigns-5XRY27JZ.js.map +1 -0
  71. package/dist/campaigns-HES5MDUG.js +130 -0
  72. package/dist/campaigns-JF4TYYUP.js +113 -0
  73. package/dist/campaigns-JF4TYYUP.js.map +1 -0
  74. package/dist/campaigns-ZYU4BXDP.js +111 -0
  75. package/dist/canvas-AI34UBGU.js +46 -0
  76. package/dist/capabilities-TRHAPTUU.js +147 -0
  77. package/dist/capabilities-TRHAPTUU.js.map +1 -0
  78. package/dist/catalog-ZY3MFT55.js +65 -0
  79. package/dist/catalogs-6XLBWAUS.js +130 -0
  80. package/dist/catalogs-6XLBWAUS.js.map +1 -0
  81. package/dist/catalogs-TGLSJEK5.js +781 -0
  82. package/dist/catalogs-TGLSJEK5.js.map +1 -0
  83. package/dist/changes-OOUVQDBY.js +135 -0
  84. package/dist/chatgpt-NAXIFWXV.js +47 -0
  85. package/dist/chats-I5RHBRS5.js +279 -0
  86. package/dist/chats-I5RHBRS5.js.map +1 -0
  87. package/dist/check-3E64VBUE.js +107 -0
  88. package/dist/check-3E64VBUE.js.map +1 -0
  89. package/dist/chunk-3CHYJYSS.js +319 -0
  90. package/dist/chunk-3G3GC5N4.js +429 -0
  91. package/dist/chunk-3M45PYU7.js +274 -0
  92. package/dist/chunk-3QHXF3QI.js +23 -0
  93. package/dist/chunk-3XPHUMLJ.js +3868 -0
  94. package/dist/chunk-45EERHDB.js +783 -0
  95. package/dist/chunk-4FGTANFK.js +387 -0
  96. package/dist/chunk-4IHWT7PH.js +167 -0
  97. package/dist/chunk-4LF4AYPT.js +846 -0
  98. package/dist/chunk-4UQRXKYJ.js +219 -0
  99. package/dist/chunk-5JJD33Y2.js +455 -0
  100. package/dist/chunk-5K4QYYOJ.js +831 -0
  101. package/dist/chunk-5LJ6E4YU.js +163 -0
  102. package/dist/chunk-5T73MMBL.js +275 -0
  103. package/dist/chunk-64MAHLTK.js +363 -0
  104. package/dist/chunk-6OIKNJ7G.js +26 -0
  105. package/dist/chunk-6ZFSDYWV.js +131 -0
  106. package/dist/chunk-7BUIOP36.js +287 -0
  107. package/dist/chunk-7I6ZVBLM.js +358 -0
  108. package/dist/chunk-7I6ZVBLM.js.map +1 -0
  109. package/dist/chunk-AN4OEQXE.js +122 -0
  110. package/dist/chunk-AULSX5ZA.js +5368 -0
  111. package/dist/chunk-AVYUFJQQ.js +46 -0
  112. package/dist/chunk-B4YF7VQF.js +97 -0
  113. package/dist/chunk-BDOYNGUL.js +98 -0
  114. package/dist/chunk-BJOK7QD4.js +207 -0
  115. package/dist/chunk-CMCGFSUS.js +197 -0
  116. package/dist/chunk-DMJUIUAL.js +676 -0
  117. package/dist/chunk-DUCUOZLS.js +225 -0
  118. package/dist/chunk-EW7JSTRZ.js +24026 -0
  119. package/dist/chunk-EW7JSTRZ.js.map +1 -0
  120. package/dist/chunk-F3CZFUXZ.js +3187 -0
  121. package/dist/chunk-F3CZFUXZ.js.map +1 -0
  122. package/dist/chunk-FJZYOVSW.js +843 -0
  123. package/dist/chunk-FKP4ECJY.js +19 -0
  124. package/dist/chunk-G4FG5EQO.js +110 -0
  125. package/dist/chunk-G4FG5EQO.js.map +1 -0
  126. package/dist/chunk-GAYRBIEF.js +712 -0
  127. package/dist/chunk-GAYRBIEF.js.map +1 -0
  128. package/dist/chunk-GNMEOU46.js +8954 -0
  129. package/dist/chunk-GYKYXWUQ.js +156 -0
  130. package/dist/chunk-GYPLRU4Y.js +297 -0
  131. package/dist/chunk-I43ZEWJQ.js +285 -0
  132. package/dist/chunk-IZABTTW5.js +228 -0
  133. package/dist/chunk-JOE42ZW6.js +2984 -0
  134. package/dist/chunk-JOE42ZW6.js.map +1 -0
  135. package/dist/chunk-K7IE6UYV.js +1646 -0
  136. package/dist/chunk-KH5YHHJV.js +604 -0
  137. package/dist/chunk-KMY7AD3N.js +51 -0
  138. package/dist/chunk-KPCHWDJM.js +8914 -0
  139. package/dist/chunk-KTZCLJ2D.js +148 -0
  140. package/dist/chunk-MKUA54QE.js +638 -0
  141. package/dist/chunk-MTV2RSGY.js +63 -0
  142. package/dist/chunk-MUS2UTWU.js +4254 -0
  143. package/dist/chunk-MUS2UTWU.js.map +1 -0
  144. package/dist/chunk-N2QX57K3.js +392 -0
  145. package/dist/chunk-NB2FU6EZ.js +179 -0
  146. package/dist/chunk-NEYWS2DQ.js +479 -0
  147. package/dist/chunk-NKQWDEB7.js +115 -0
  148. package/dist/chunk-NKQWDEB7.js.map +1 -0
  149. package/dist/chunk-NWF2LRKO.js +188 -0
  150. package/dist/chunk-NZ34KM46.js +7211 -0
  151. package/dist/chunk-NZ34KM46.js.map +1 -0
  152. package/dist/chunk-OTC6UMJ2.js +191 -0
  153. package/dist/chunk-OUY2IAWL.js +224 -0
  154. package/dist/chunk-PJXNCRMR.js +344 -0
  155. package/dist/chunk-PYQ3GF7R.js +91 -0
  156. package/dist/chunk-Q3EIVZAR.js +170 -0
  157. package/dist/chunk-Q3GSVLE5.js +4274 -0
  158. package/dist/chunk-Q3GSVLE5.js.map +1 -0
  159. package/dist/chunk-QDQZ62FL.js +207 -0
  160. package/dist/chunk-QHZE62GP.js +1919 -0
  161. package/dist/chunk-RGR6TSTJ.js +103 -0
  162. package/dist/chunk-SAAXU7QR.js +203 -0
  163. package/dist/chunk-SHTKLRI6.js +66 -0
  164. package/dist/chunk-SIKCVWM3.js +76 -0
  165. package/dist/chunk-SOPVIIUW.js +68 -0
  166. package/dist/chunk-SOPVIIUW.js.map +1 -0
  167. package/dist/chunk-SSXG53CZ.js +89 -0
  168. package/dist/chunk-TBWAM577.js +547 -0
  169. package/dist/chunk-TGPGQTZA.js +169 -0
  170. package/dist/chunk-UMIX2BMM.js +1518 -0
  171. package/dist/chunk-URMAEVZO.js +150 -0
  172. package/dist/chunk-VBO3ZVUU.js +61 -0
  173. package/dist/chunk-VFLYMHTO.js +592 -0
  174. package/dist/chunk-VGYIVXIZ.js +249 -0
  175. package/dist/chunk-VIB7R533.js +57 -0
  176. package/dist/chunk-WLESMH4J.js +45 -0
  177. package/dist/chunk-WVWLPXBO.js +910 -0
  178. package/dist/chunk-XEH5XAP6.js +494 -0
  179. package/dist/chunk-XEOKVL4E.js +142 -0
  180. package/dist/chunk-XOGQJYXH.js +64 -0
  181. package/dist/chunk-XOQNM7I4.js +396 -0
  182. package/dist/chunk-XOQNM7I4.js.map +1 -0
  183. package/dist/chunk-XUXRA7IB.js +942 -0
  184. package/dist/claim-FIK2YTLM.js +200 -0
  185. package/dist/claim-FIK2YTLM.js.map +1 -0
  186. package/dist/cli.js +34 -33
  187. package/dist/cli.js.map +1 -1
  188. package/dist/companies-KMMV6EJW.js +198 -0
  189. package/dist/companies-KMMV6EJW.js.map +1 -0
  190. package/dist/company-B54URPJG.js +308 -0
  191. package/dist/company-B54URPJG.js.map +1 -0
  192. package/dist/complete-PPCWEXS3.js +84 -0
  193. package/dist/complete-PPCWEXS3.js.map +1 -0
  194. package/dist/connect-IAXSZPGA.js +45 -0
  195. package/dist/conversation-KHTZBGX2.js +96 -0
  196. package/dist/conversation-KHTZBGX2.js.map +1 -0
  197. package/dist/conversion-report-U66HW6JM.js +127 -0
  198. package/dist/conversion-report-U66HW6JM.js.map +1 -0
  199. package/dist/conversion-upload-command-IHFKVX2M.js +439 -0
  200. package/dist/conversion-writes-RSGDOAET.js +122 -0
  201. package/dist/conversion-writes-RSGDOAET.js.map +1 -0
  202. package/dist/conversions-BVOL43W4.js +78 -0
  203. package/dist/conversions-BVOL43W4.js.map +1 -0
  204. package/dist/conversions-SUMZAV2T.js +140 -0
  205. package/dist/conversions-SUMZAV2T.js.map +1 -0
  206. package/dist/copy-writes-CIHIFLY6.js +170 -0
  207. package/dist/copy-writes-CIHIFLY6.js.map +1 -0
  208. package/dist/create-732HQL3C.js +210 -0
  209. package/dist/create-732HQL3C.js.map +1 -0
  210. package/dist/create-TFR6R2KF.js +239 -0
  211. package/dist/create-TFR6R2KF.js.map +1 -0
  212. package/dist/create-UC57ULRL.js +62 -0
  213. package/dist/create-UC57ULRL.js.map +1 -0
  214. package/dist/create-UL2OYXOA.js +135 -0
  215. package/dist/create-UL2OYXOA.js.map +1 -0
  216. package/dist/creatives-BB6S2OF6.js +89 -0
  217. package/dist/creatives-BZEVJ6ER.js +58 -0
  218. package/dist/creatives-FU3YELGU.js +223 -0
  219. package/dist/creatives-FU3YELGU.js.map +1 -0
  220. package/dist/credentials-AYV5YQE4.js +290 -0
  221. package/dist/credentials-AYV5YQE4.js.map +1 -0
  222. package/dist/critique-FKIJB72I.js +1451 -0
  223. package/dist/critique-FKIJB72I.js.map +1 -0
  224. package/dist/critique-IQYNDXCN.js +232 -0
  225. package/dist/critique-IQYNDXCN.js.map +1 -0
  226. package/dist/crm-ILQMNJPX.js +323 -0
  227. package/dist/crm-ILQMNJPX.js.map +1 -0
  228. package/dist/crm-MQQRBITZ.js +227 -0
  229. package/dist/crm-MQQRBITZ.js.map +1 -0
  230. package/dist/currency-CGKO5GKH.js +88 -0
  231. package/dist/custom-conversions-HAGG72LF.js +128 -0
  232. package/dist/customers-NKKU6S7G.js +59 -0
  233. package/dist/delete-2TCCNRMH.js +57 -0
  234. package/dist/delete-2TCCNRMH.js.map +1 -0
  235. package/dist/delete-HCZTISBT.js +69 -0
  236. package/dist/delete-HCZTISBT.js.map +1 -0
  237. package/dist/delete-UIKB5ZXS.js +67 -0
  238. package/dist/delete-UIKB5ZXS.js.map +1 -0
  239. package/dist/demographics-ABZODD45.js +141 -0
  240. package/dist/demographics-ABZODD45.js.map +1 -0
  241. package/dist/discard-V3K5PZ4W.js +69 -0
  242. package/dist/discard-V3K5PZ4W.js.map +1 -0
  243. package/dist/discover-VM3O7CQM.js +172 -0
  244. package/dist/domain-A66DHOTQ.js +101 -0
  245. package/dist/domain-A66DHOTQ.js.map +1 -0
  246. package/dist/download-LSAZD5JO.js +172 -0
  247. package/dist/download-LSAZD5JO.js.map +1 -0
  248. package/dist/draft-5UUJC675.js +335 -0
  249. package/dist/draft-5UUJC675.js.map +1 -0
  250. package/dist/draft-BATA5CVI.js +283 -0
  251. package/dist/draft-BATA5CVI.js.map +1 -0
  252. package/dist/draft-CRDBU6LF.js +308 -0
  253. package/dist/draft-P7IDMXWR.js +310 -0
  254. package/dist/draft-P7IDMXWR.js.map +1 -0
  255. package/dist/draft-YBNL4ZZA.js +220 -0
  256. package/dist/draft-YBNL4ZZA.js.map +1 -0
  257. package/dist/engine/index.js +7 -7
  258. package/dist/experiments-MLLTHMMS.js +236 -0
  259. package/dist/experiments-MLLTHMMS.js.map +1 -0
  260. package/dist/facets-KSHR3MBE.js +117 -0
  261. package/dist/facets-KSHR3MBE.js.map +1 -0
  262. package/dist/feedback-4GCPXZSI.js +111 -0
  263. package/dist/feedback-4GCPXZSI.js.map +1 -0
  264. package/dist/feedback-record-VEFHUIUJ.js +265 -0
  265. package/dist/feedback-record-VEFHUIUJ.js.map +1 -0
  266. package/dist/fetch-42QL56JC.js +179 -0
  267. package/dist/fetch-42QL56JC.js.map +1 -0
  268. package/dist/fit-Q5GRVF2O.js +65 -0
  269. package/dist/flows-M3WBZQET.js +250 -0
  270. package/dist/flows-M3WBZQET.js.map +1 -0
  271. package/dist/fonts-GD4YRXQU.js +39 -0
  272. package/dist/forecast-HT46MFL4.js +121 -0
  273. package/dist/forecast-HT46MFL4.js.map +1 -0
  274. package/dist/forecast-ONVS2QAI.js +169 -0
  275. package/dist/funnel-76BAD64Q.js +397 -0
  276. package/dist/funnel-76BAD64Q.js.map +1 -0
  277. package/dist/generate-VBEY3N3L.js +263 -0
  278. package/dist/get-4KFAO475.js +82 -0
  279. package/dist/get-4KFAO475.js.map +1 -0
  280. package/dist/get-QV5NIADE.js +59 -0
  281. package/dist/get-QV5NIADE.js.map +1 -0
  282. package/dist/google-7EZP7I6J.js +3267 -0
  283. package/dist/google-ads-J7WHTJO4.js +198 -0
  284. package/dist/google-ads-J7WHTJO4.js.map +1 -0
  285. package/dist/history-EULKWQUS.js +136 -0
  286. package/dist/history-EULKWQUS.js.map +1 -0
  287. package/dist/history-FEBJHFHJ.js +69 -0
  288. package/dist/history-FEBJHFHJ.js.map +1 -0
  289. package/dist/history-RDVV7KBN.js +102 -0
  290. package/dist/history-RDVV7KBN.js.map +1 -0
  291. package/dist/hubspot-A3RQNMYN.js +782 -0
  292. package/dist/hubspot-A3RQNMYN.js.map +1 -0
  293. package/dist/ideas-WX7EBPSF.js +45 -0
  294. package/dist/images-4AXF4LAC.js +92 -0
  295. package/dist/ingest-AM5YDTRH.js +110 -0
  296. package/dist/ingest-AM5YDTRH.js.map +1 -0
  297. package/dist/ingest-C3M4GUO6.js +26 -0
  298. package/dist/insights-UTCMSWSC.js +132 -0
  299. package/dist/insights-UTCMSWSC.js.map +1 -0
  300. package/dist/insights-XZL2EM53.js +439 -0
  301. package/dist/insights-XZL2EM53.js.map +1 -0
  302. package/dist/inspect-DWCLRZGR.js +192 -0
  303. package/dist/inspect-DWCLRZGR.js.map +1 -0
  304. package/dist/instant-experiences-RM4MLJTL.js +260 -0
  305. package/dist/instant-experiences-RM4MLJTL.js.map +1 -0
  306. package/dist/intent-ZMYMFGB4.js +95 -0
  307. package/dist/keyword-gap-XSJO2R77.js +130 -0
  308. package/dist/keyword-metrics-M46FCTAS.js +200 -0
  309. package/dist/keyword-metrics-M46FCTAS.js.map +1 -0
  310. package/dist/keywords-for-site-XNSLX7EA.js +131 -0
  311. package/dist/keywords-for-site-XNSLX7EA.js.map +1 -0
  312. package/dist/landing-MUNYZQNA.js +28 -0
  313. package/dist/languages-DIQ3OG3E.js +40 -0
  314. package/dist/lead-routes-XBO2GOBL.js +608 -0
  315. package/dist/lead-routes-XBO2GOBL.js.map +1 -0
  316. package/dist/leads-LAATTW5G.js +115 -0
  317. package/dist/leads-LAATTW5G.js.map +1 -0
  318. package/dist/leads-ULYHTG22.js +540 -0
  319. package/dist/leads-ULYHTG22.js.map +1 -0
  320. package/dist/learn-3GLY4G3H.js +207 -0
  321. package/dist/learn-3GLY4G3H.js.map +1 -0
  322. package/dist/line-item-writes-XJTTA3X5.js +211 -0
  323. package/dist/line-item-writes-XJTTA3X5.js.map +1 -0
  324. package/dist/line-items-JR25T2C5.js +107 -0
  325. package/dist/link-7DSLIF3I.js +67 -0
  326. package/dist/link-7DSLIF3I.js.map +1 -0
  327. package/dist/linkedin-W5BJ6HEH.js +1316 -0
  328. package/dist/linkedin-W5BJ6HEH.js.map +1 -0
  329. package/dist/linkedin-person-2ZYSOHYR.js +139 -0
  330. package/dist/linkedin-person-2ZYSOHYR.js.map +1 -0
  331. package/dist/list-3653DIYB.js +67 -0
  332. package/dist/list-3653DIYB.js.map +1 -0
  333. package/dist/list-G66HVYCR.js +306 -0
  334. package/dist/list-G66HVYCR.js.map +1 -0
  335. package/dist/list-Z4M53MS5.js +154 -0
  336. package/dist/list-Z4M53MS5.js.map +1 -0
  337. package/dist/locations-HTVYJSDJ.js +40 -0
  338. package/dist/locations-M2B5XDU4.js +69 -0
  339. package/dist/locations-M2B5XDU4.js.map +1 -0
  340. package/dist/log-2RJU5BOW.js +95 -0
  341. package/dist/log-2RJU5BOW.js.map +1 -0
  342. package/dist/lookup-S5VG7AWH.js +23 -0
  343. package/dist/make-MJ6JMU5T.js +1370 -0
  344. package/dist/make-MJ6JMU5T.js.map +1 -0
  345. package/dist/map-27IPOBY6.js +436 -0
  346. package/dist/map-27IPOBY6.js.map +1 -0
  347. package/dist/mcp-TFQTME4P.js +717 -0
  348. package/dist/mcp-TFQTME4P.js.map +1 -0
  349. package/dist/media-P4T4ZBNS.js +18 -0
  350. package/dist/media-sources-P246GM7W.js +35 -0
  351. package/dist/members-KOKBTUC2.js +47 -0
  352. package/dist/members-KOKBTUC2.js.map +1 -0
  353. package/dist/meta-IPLWNYC7.js +122 -0
  354. package/dist/metrics-WYWUX6Y5.js +152 -0
  355. package/dist/models-HJ7Y55AH.js +155 -0
  356. package/dist/normalize-GXBUNTYJ.js +144 -0
  357. package/dist/normalize-GXBUNTYJ.js.map +1 -0
  358. package/dist/options-MA25RNXF.js +125 -0
  359. package/dist/options-MA25RNXF.js.map +1 -0
  360. package/dist/organization-NLEVNGKQ.js +949 -0
  361. package/dist/organization-NLEVNGKQ.js.map +1 -0
  362. package/dist/page-photos-OQ5QATQH.js +118 -0
  363. package/dist/page-photos-OQ5QATQH.js.map +1 -0
  364. package/dist/performance-34EUP5KL.js +5541 -0
  365. package/dist/performance-34EUP5KL.js.map +1 -0
  366. package/dist/performance-J3DLNI2W.js +27 -0
  367. package/dist/pixels-THEGYRXT.js +62 -0
  368. package/dist/pixels-THEGYRXT.js.map +1 -0
  369. package/dist/plan-7UF76Q6U.js +208 -0
  370. package/dist/plan-7UF76Q6U.js.map +1 -0
  371. package/dist/preview-LRJOQ7LM.js +218 -0
  372. package/dist/preview-LRJOQ7LM.js.map +1 -0
  373. package/dist/promoted-tweet-writes-SBXWKO23.js +183 -0
  374. package/dist/promoted-tweet-writes-SBXWKO23.js.map +1 -0
  375. package/dist/promoted-tweets-W42FNWS7.js +119 -0
  376. package/dist/publish-YG76GOA7.js +344 -0
  377. package/dist/publish-YG76GOA7.js.map +1 -0
  378. package/dist/query-IQICLABN.js +62 -0
  379. package/dist/questionnaire-DWEH5II4.js +94 -0
  380. package/dist/questionnaire-DWEH5II4.js.map +1 -0
  381. package/dist/reddit-X4CERXYF.js +29 -0
  382. package/dist/refresh-A36GA7JN.js +97 -0
  383. package/dist/refresh-A36GA7JN.js.map +1 -0
  384. package/dist/release-3NCMZIDI.js +63 -0
  385. package/dist/release-3NCMZIDI.js.map +1 -0
  386. package/dist/relevant-pages-UDDQOYLD.js +99 -0
  387. package/dist/remove-6LE3XNRG.js +53 -0
  388. package/dist/remove-6LE3XNRG.js.map +1 -0
  389. package/dist/reopen-XLADJ2UU.js +66 -0
  390. package/dist/reopen-XLADJ2UU.js.map +1 -0
  391. package/dist/rerun-QVMFJZA2.js +95 -0
  392. package/dist/rerun-QVMFJZA2.js.map +1 -0
  393. package/dist/research-D5UUJF74.js +72 -0
  394. package/dist/research-QCI5ISUE.js +265 -0
  395. package/dist/research-QCI5ISUE.js.map +1 -0
  396. package/dist/reset-DD37KDXQ.js +57 -0
  397. package/dist/reset-DD37KDXQ.js.map +1 -0
  398. package/dist/reset-FLZPKY2N.js +57 -0
  399. package/dist/reset-FLZPKY2N.js.map +1 -0
  400. package/dist/resolve-KRKIJKT7.js +124 -0
  401. package/dist/resolve-KRKIJKT7.js.map +1 -0
  402. package/dist/retry-ALXYEKFV.js +65 -0
  403. package/dist/retry-ALXYEKFV.js.map +1 -0
  404. package/dist/retry-MIXKW4EW.js +63 -0
  405. package/dist/retry-MIXKW4EW.js.map +1 -0
  406. package/dist/revenue-UBZUTSXN.js +91 -0
  407. package/dist/revenue-UBZUTSXN.js.map +1 -0
  408. package/dist/rule-writes-UAVWT4XS.js +525 -0
  409. package/dist/rule-writes-UAVWT4XS.js.map +1 -0
  410. package/dist/rules-SO6P44B6.js +99 -0
  411. package/dist/rules-SO6P44B6.js.map +1 -0
  412. package/dist/rules-ZVS2MWED.js +217 -0
  413. package/dist/rules-add-XN3BZKFO.js +465 -0
  414. package/dist/rules-add-XN3BZKFO.js.map +1 -0
  415. package/dist/run-K2DOMOAN.js +69 -0
  416. package/dist/run-K2DOMOAN.js.map +1 -0
  417. package/dist/run-T7XAH2W5.js +70 -0
  418. package/dist/scaffold-ad-TWIT7R4U.js +1516 -0
  419. package/dist/scaffold-ad-TWIT7R4U.js.map +1 -0
  420. package/dist/scaffold-static-ad-GPJKOGOI.js +1015 -0
  421. package/dist/scaffold-static-ad-GPJKOGOI.js.map +1 -0
  422. package/dist/scaffold-video-7BQNOJ4S.js +888 -0
  423. package/dist/scaffold-video-7BQNOJ4S.js.map +1 -0
  424. package/dist/schedule-UTRVEWPE.js +64 -0
  425. package/dist/schedule-UTRVEWPE.js.map +1 -0
  426. package/dist/scheduled-agents-ZGCUZ6SB.js +55 -0
  427. package/dist/schema-D6BMZAPB.js +69 -0
  428. package/dist/schema-DSMF6ELE.js +135 -0
  429. package/dist/schema-DSMF6ELE.js.map +1 -0
  430. package/dist/search-2P72GSKY.js +177 -0
  431. package/dist/search-2P72GSKY.js.map +1 -0
  432. package/dist/select-N7VWQ2ZQ.js +106 -0
  433. package/dist/select-N7VWQ2ZQ.js.map +1 -0
  434. package/dist/sends-LAY5C74B.js +349 -0
  435. package/dist/sends-LAY5C74B.js.map +1 -0
  436. package/dist/set-prompt-3N3HMHT6.js +198 -0
  437. package/dist/set-prompt-3N3HMHT6.js.map +1 -0
  438. package/dist/setup-links-I5RFZTS4.js +144 -0
  439. package/dist/setup-links-I5RFZTS4.js.map +1 -0
  440. package/dist/shopify-LXSR37XI.js +3958 -0
  441. package/dist/shopify-LXSR37XI.js.map +1 -0
  442. package/dist/site-AI3BFWRK.js +180 -0
  443. package/dist/site-AI3BFWRK.js.map +1 -0
  444. package/dist/sources-AOF2YDYX.js +457 -0
  445. package/dist/sources-AOF2YDYX.js.map +1 -0
  446. package/dist/sources-DVMJEXEX.js +30 -0
  447. package/dist/stale-P4GGOLIB.js +76 -0
  448. package/dist/stale-P4GGOLIB.js.map +1 -0
  449. package/dist/status-O25MXHU4.js +65 -0
  450. package/dist/status-O25MXHU4.js.map +1 -0
  451. package/dist/studies-EPO2AM4M.js +250 -0
  452. package/dist/studio-5Z4NMA4K.js +49 -0
  453. package/dist/study-writes-7FP443QQ.js +470 -0
  454. package/dist/study-writes-7FP443QQ.js.map +1 -0
  455. package/dist/sync-2AI7LKKN.js +57 -0
  456. package/dist/sync-2AI7LKKN.js.map +1 -0
  457. package/dist/sync-definition-F3CXG6KG.js +69 -0
  458. package/dist/tags-SEZ2CQJM.js +26 -0
  459. package/dist/tags-TJDZXOXS.js +227 -0
  460. package/dist/tags-TJDZXOXS.js.map +1 -0
  461. package/dist/tags-YSC7ZILI.js +23 -0
  462. package/dist/tags-YSC7ZILI.js.map +1 -0
  463. package/dist/tags-Z6EALYOS.js +23 -0
  464. package/dist/tags-Z6EALYOS.js.map +1 -0
  465. package/dist/tags-ZXSVW6XO.js +23 -0
  466. package/dist/tags-ZXSVW6XO.js.map +1 -0
  467. package/dist/targeting-NKZFEZD7.js +762 -0
  468. package/dist/targeting-NKZFEZD7.js.map +1 -0
  469. package/dist/targeting-criteria-AU5CSMAU.js +113 -0
  470. package/dist/targets-IOIH5JYS.js +106 -0
  471. package/dist/targets-IOIH5JYS.js.map +1 -0
  472. package/dist/testimonials-Y6PUV6AL.js +32 -0
  473. package/dist/themes-PGPIAKAO.js +95 -0
  474. package/dist/top-companies-FSITN3ZR.js +111 -0
  475. package/dist/top-companies-FSITN3ZR.js.map +1 -0
  476. package/dist/transcript-CGPX7Y37.js +165 -0
  477. package/dist/transcript-CGPX7Y37.js.map +1 -0
  478. package/dist/translate-QCBMGOKR.js +609 -0
  479. package/dist/translate-QCBMGOKR.js.map +1 -0
  480. package/dist/triggers-MONMZSKT.js +144 -0
  481. package/dist/triggers-MONMZSKT.js.map +1 -0
  482. package/dist/unlink-I7QFQQKO.js +70 -0
  483. package/dist/unlink-I7QFQQKO.js.map +1 -0
  484. package/dist/unstage-JXG5AU5Q.js +88 -0
  485. package/dist/unstage-JXG5AU5Q.js.map +1 -0
  486. package/dist/unstage-ZA3WQBEA.js +96 -0
  487. package/dist/unstage-ZA3WQBEA.js.map +1 -0
  488. package/dist/update-BVZGM54I.js +66 -0
  489. package/dist/update-BVZGM54I.js.map +1 -0
  490. package/dist/update-EI2BHUM2.js +101 -0
  491. package/dist/update-EI2BHUM2.js.map +1 -0
  492. package/dist/update-RZSV4NYP.js +155 -0
  493. package/dist/update-RZSV4NYP.js.map +1 -0
  494. package/dist/update-WLDNOZ5U.js +192 -0
  495. package/dist/update-WLDNOZ5U.js.map +1 -0
  496. package/dist/upload-BP3YEQSF.js +129 -0
  497. package/dist/upload-BP3YEQSF.js.map +1 -0
  498. package/dist/url-options-63DED6CR.js +131 -0
  499. package/dist/url-options-63DED6CR.js.map +1 -0
  500. package/dist/url-params-TRFI2PMD.js +101 -0
  501. package/dist/url-params-TRFI2PMD.js.map +1 -0
  502. package/dist/validate-SNCR25A7.js +122 -0
  503. package/dist/validate-SNCR25A7.js.map +1 -0
  504. package/dist/videos-SVZV5YYC.js +41 -0
  505. package/dist/viewer-check-LUAEGV6H.js +83 -0
  506. package/dist/web-MJQEK7BB.js +143 -0
  507. package/dist/web-MJQEK7BB.js.map +1 -0
  508. package/dist/winning-ads-KNLJHHCO.js +86 -0
  509. package/dist/write-commands-NVCX7IAU.js +1502 -0
  510. package/dist/write-commands-NVCX7IAU.js.map +1 -0
  511. package/dist/write-commands-OGVDWWBV.js +1172 -0
  512. package/dist/write-commands-OGVDWWBV.js.map +1 -0
  513. package/dist/x-ZQNHYIDU.js +47 -0
  514. package/package.json +1 -1
  515. package/dist/account-C635ATVM.js +0 -80
  516. package/dist/account-C635ATVM.js.map +0 -1
  517. package/dist/account-WLQBAQMD.js +0 -80
  518. package/dist/account-WLQBAQMD.js.map +0 -1
  519. package/dist/account-assets-O7IA37RE.js +0 -290
  520. package/dist/account-level-EU7BWCO7.js +0 -609
  521. package/dist/account-level-EU7BWCO7.js.map +0 -1
  522. package/dist/account-reads-SNOWDHHF.js +0 -219
  523. package/dist/account-users-XYYENK6X.js +0 -62
  524. package/dist/account-users-XYYENK6X.js.map +0 -1
  525. package/dist/account-writes-TU3WJRSI.js +0 -66
  526. package/dist/account-writes-TU3WJRSI.js.map +0 -1
  527. package/dist/accounts-A2FBLZ5H.js +0 -78
  528. package/dist/accounts-A2FBLZ5H.js.map +0 -1
  529. package/dist/accounts-V2IZZ5KU.js +0 -699
  530. package/dist/accounts-V2IZZ5KU.js.map +0 -1
  531. package/dist/actions-Y4SULW2E.js +0 -55
  532. package/dist/activecampaign-63XG6CLL.js +0 -936
  533. package/dist/activecampaign-63XG6CLL.js.map +0 -1
  534. package/dist/ad-group-writes-HLBWN4E4.js +0 -170
  535. package/dist/ad-group-writes-HLBWN4E4.js.map +0 -1
  536. package/dist/ad-groups-33NZD6J3.js +0 -68
  537. package/dist/ad-groups-33NZD6J3.js.map +0 -1
  538. package/dist/ad-writes-7ZDNDZ2E.js +0 -174
  539. package/dist/ad-writes-7ZDNDZ2E.js.map +0 -1
  540. package/dist/add-FOLFVGQO.js +0 -303
  541. package/dist/add-FOLFVGQO.js.map +0 -1
  542. package/dist/add-RYB4JSYC.js +0 -105
  543. package/dist/add-RYB4JSYC.js.map +0 -1
  544. package/dist/ads-2TVWICGM.js +0 -48
  545. package/dist/ads-KBE5JXCH.js +0 -115
  546. package/dist/ads-X3AM6M7L.js +0 -77
  547. package/dist/ads-X3AM6M7L.js.map +0 -1
  548. package/dist/adsets-YWBJFPAZ.js +0 -182
  549. package/dist/advertisers-IGUMSK5Q.js +0 -121
  550. package/dist/advertisers-IGUMSK5Q.js.map +0 -1
  551. package/dist/analytics-3DKM7J43.js +0 -445
  552. package/dist/analytics-3DKM7J43.js.map +0 -1
  553. package/dist/analytics-R3QDSX2K.js +0 -2435
  554. package/dist/analytics-R3QDSX2K.js.map +0 -1
  555. package/dist/animate-2BMHZ4FM.js +0 -480
  556. package/dist/asset-writes-72DEVXGO.js +0 -48
  557. package/dist/assign-EKCGLNZB.js +0 -78
  558. package/dist/assign-EKCGLNZB.js.map +0 -1
  559. package/dist/audience-size-IKXK32HU.js +0 -74
  560. package/dist/audience-size-IKXK32HU.js.map +0 -1
  561. package/dist/audience-writes-KCHLNFSI.js +0 -325
  562. package/dist/audience-writes-KCHLNFSI.js.map +0 -1
  563. package/dist/audiences-QAH42HIM.js +0 -86
  564. package/dist/audiences-WCDWN64L.js +0 -268
  565. package/dist/audiences-WCDWN64L.js.map +0 -1
  566. package/dist/audit-CY76S4V7.js +0 -152
  567. package/dist/audit-CY76S4V7.js.map +0 -1
  568. package/dist/autocomplete-G2S5HNUS.js +0 -112
  569. package/dist/autocomplete-G2S5HNUS.js.map +0 -1
  570. package/dist/avatars-P4UPNZM4.js +0 -38
  571. package/dist/bid-pricing-AJT4QU2C.js +0 -101
  572. package/dist/bid-pricing-AJT4QU2C.js.map +0 -1
  573. package/dist/brand-HALQWZWB.js +0 -22
  574. package/dist/brief-NW7TGG2Q.js +0 -541
  575. package/dist/brief-NW7TGG2Q.js.map +0 -1
  576. package/dist/campaign-groups-I43KMAJP.js +0 -97
  577. package/dist/campaign-groups-I43KMAJP.js.map +0 -1
  578. package/dist/campaign-writes-DLLPFAGG.js +0 -166
  579. package/dist/campaign-writes-DLLPFAGG.js.map +0 -1
  580. package/dist/campaign-writes-XO74BALZ.js +0 -174
  581. package/dist/campaign-writes-XO74BALZ.js.map +0 -1
  582. package/dist/campaigns-LS65QM6W.js +0 -76
  583. package/dist/campaigns-LS65QM6W.js.map +0 -1
  584. package/dist/campaigns-UIYSYCF3.js +0 -111
  585. package/dist/campaigns-UIYSYCF3.js.map +0 -1
  586. package/dist/campaigns-XZOQ2VTK.js +0 -130
  587. package/dist/campaigns-YMM5TQVO.js +0 -111
  588. package/dist/canvas-IJS7H3VE.js +0 -46
  589. package/dist/capabilities-XMQPM3UL.js +0 -145
  590. package/dist/capabilities-XMQPM3UL.js.map +0 -1
  591. package/dist/catalog-TZLU5NWI.js +0 -65
  592. package/dist/catalogs-JLCSFZYC.js +0 -779
  593. package/dist/catalogs-JLCSFZYC.js.map +0 -1
  594. package/dist/catalogs-T23RKYFC.js +0 -128
  595. package/dist/catalogs-T23RKYFC.js.map +0 -1
  596. package/dist/changes-36C754R4.js +0 -135
  597. package/dist/chatgpt-3WFOPURY.js +0 -47
  598. package/dist/chats-ZI6EYDAF.js +0 -277
  599. package/dist/chats-ZI6EYDAF.js.map +0 -1
  600. package/dist/check-CHJ2OLAU.js +0 -105
  601. package/dist/check-CHJ2OLAU.js.map +0 -1
  602. package/dist/chunk-2TOIY2WN.js +0 -4254
  603. package/dist/chunk-2TOIY2WN.js.map +0 -1
  604. package/dist/chunk-3YJNSUNF.js +0 -131
  605. package/dist/chunk-4GAEB6NK.js +0 -228
  606. package/dist/chunk-5RVQK3SP.js +0 -494
  607. package/dist/chunk-5SRUAGTG.js +0 -547
  608. package/dist/chunk-5XTGG4PV.js +0 -274
  609. package/dist/chunk-6KWEF6HF.js +0 -8914
  610. package/dist/chunk-6Z7Y4KQB.js +0 -275
  611. package/dist/chunk-7HZSORAB.js +0 -843
  612. package/dist/chunk-7J3NZBPV.js +0 -2982
  613. package/dist/chunk-7J3NZBPV.js.map +0 -1
  614. package/dist/chunk-A3IQAONL.js +0 -638
  615. package/dist/chunk-AIRD6T4W.js +0 -169
  616. package/dist/chunk-AQOFQNKQ.js +0 -57
  617. package/dist/chunk-ARUXGKZO.js +0 -91
  618. package/dist/chunk-ASRS37QE.js +0 -710
  619. package/dist/chunk-ASRS37QE.js.map +0 -1
  620. package/dist/chunk-AYPBARKP.js +0 -156
  621. package/dist/chunk-BRLZX3VP.js +0 -207
  622. package/dist/chunk-BTJSGJNQ.js +0 -604
  623. package/dist/chunk-C7QQQVBS.js +0 -51
  624. package/dist/chunk-CCEDZTP7.js +0 -391
  625. package/dist/chunk-CCEDZTP7.js.map +0 -1
  626. package/dist/chunk-D3KLDIPQ.js +0 -45
  627. package/dist/chunk-DUR7PEJI.js +0 -170
  628. package/dist/chunk-EDLZGTGN.js +0 -216
  629. package/dist/chunk-EDLZGTGN.js.map +0 -1
  630. package/dist/chunk-F4YQ5PVR.js +0 -1518
  631. package/dist/chunk-FFFJBNHA.js +0 -63
  632. package/dist/chunk-FFG2OYVV.js +0 -64
  633. package/dist/chunk-FPWQA7TK.js +0 -344
  634. package/dist/chunk-G5Y7OIPL.js +0 -392
  635. package/dist/chunk-GACSA5A6.js +0 -1646
  636. package/dist/chunk-GMHCHHAA.js +0 -19
  637. package/dist/chunk-H4NNQGG6.js +0 -66
  638. package/dist/chunk-HML3VQIW.js +0 -225
  639. package/dist/chunk-HSQRITKG.js +0 -203
  640. package/dist/chunk-I47BEKYK.js +0 -831
  641. package/dist/chunk-JAC6JVCI.js +0 -26
  642. package/dist/chunk-JND6XSGZ.js +0 -7192
  643. package/dist/chunk-JND6XSGZ.js.map +0 -1
  644. package/dist/chunk-KBRJSPIM.js +0 -676
  645. package/dist/chunk-KQTNUDKD.js +0 -97
  646. package/dist/chunk-LRV6M2WB.js +0 -1919
  647. package/dist/chunk-M7HD42M6.js +0 -24017
  648. package/dist/chunk-M7HD42M6.js.map +0 -1
  649. package/dist/chunk-MBSFEVOG.js +0 -163
  650. package/dist/chunk-MCJ5I5LR.js +0 -3187
  651. package/dist/chunk-MCJ5I5LR.js.map +0 -1
  652. package/dist/chunk-MGYC2IRC.js +0 -783
  653. package/dist/chunk-MUXKYSTI.js +0 -297
  654. package/dist/chunk-MVD7QIXI.js +0 -46
  655. package/dist/chunk-MZCTX37B.js +0 -3868
  656. package/dist/chunk-MZPS46OR.js +0 -76
  657. package/dist/chunk-N7M2TWR5.js +0 -592
  658. package/dist/chunk-NDFS3APP.js +0 -319
  659. package/dist/chunk-OBJCNGZL.js +0 -207
  660. package/dist/chunk-OJGYYH6K.js +0 -179
  661. package/dist/chunk-P6BKKUSX.js +0 -142
  662. package/dist/chunk-PLAOK4AK.js +0 -103
  663. package/dist/chunk-PLBITHV6.js +0 -846
  664. package/dist/chunk-PNKIOTCK.js +0 -349
  665. package/dist/chunk-PNKIOTCK.js.map +0 -1
  666. package/dist/chunk-PX3PUDK7.js +0 -167
  667. package/dist/chunk-QBRPM3DQ.js +0 -61
  668. package/dist/chunk-QMDMTZAW.js +0 -224
  669. package/dist/chunk-QW6HL7D6.js +0 -429
  670. package/dist/chunk-R53XMPDO.js +0 -363
  671. package/dist/chunk-RFIUOQLN.js +0 -89
  672. package/dist/chunk-RVEY7BTT.js +0 -8954
  673. package/dist/chunk-SCL7PM6P.js +0 -479
  674. package/dist/chunk-SM7G7RUA.js +0 -910
  675. package/dist/chunk-SVBJ56T7.js +0 -455
  676. package/dist/chunk-SWN6OHXG.js +0 -148
  677. package/dist/chunk-TVAIOC77.js +0 -287
  678. package/dist/chunk-TVTSA4EN.js +0 -188
  679. package/dist/chunk-TX7CQTD4.js +0 -5368
  680. package/dist/chunk-UKSSNYLU.js +0 -98
  681. package/dist/chunk-VIPKDXGU.js +0 -4229
  682. package/dist/chunk-VIPKDXGU.js.map +0 -1
  683. package/dist/chunk-W574NV67.js +0 -191
  684. package/dist/chunk-XGPU2VDU.js +0 -219
  685. package/dist/chunk-XQXZJ5IR.js +0 -249
  686. package/dist/chunk-YMF2RG4Z.js +0 -942
  687. package/dist/chunk-YNYAT2TZ.js +0 -285
  688. package/dist/chunk-Z2DRGXBB.js +0 -197
  689. package/dist/chunk-Z7YMSHRZ.js +0 -23
  690. package/dist/chunk-ZEC46NWW.js +0 -122
  691. package/dist/chunk-ZFC562TP.js +0 -387
  692. package/dist/chunk-ZNRGH4NS.js +0 -150
  693. package/dist/claim-OUYHVGB4.js +0 -198
  694. package/dist/claim-OUYHVGB4.js.map +0 -1
  695. package/dist/companies-XDNSG7ME.js +0 -196
  696. package/dist/companies-XDNSG7ME.js.map +0 -1
  697. package/dist/company-4FAYYPEJ.js +0 -306
  698. package/dist/company-4FAYYPEJ.js.map +0 -1
  699. package/dist/complete-M2PAUMDP.js +0 -82
  700. package/dist/complete-M2PAUMDP.js.map +0 -1
  701. package/dist/connect-PP6Z3F7Y.js +0 -43
  702. package/dist/conversation-B5NPTLFQ.js +0 -94
  703. package/dist/conversation-B5NPTLFQ.js.map +0 -1
  704. package/dist/conversion-report-DKXFHLLX.js +0 -125
  705. package/dist/conversion-report-DKXFHLLX.js.map +0 -1
  706. package/dist/conversion-upload-command-KTYAY7IG.js +0 -439
  707. package/dist/conversion-writes-7ODJDAUP.js +0 -120
  708. package/dist/conversion-writes-7ODJDAUP.js.map +0 -1
  709. package/dist/conversions-BKVGNNC6.js +0 -76
  710. package/dist/conversions-BKVGNNC6.js.map +0 -1
  711. package/dist/conversions-QRJL6JIO.js +0 -138
  712. package/dist/conversions-QRJL6JIO.js.map +0 -1
  713. package/dist/copy-writes-P4WK6OPM.js +0 -168
  714. package/dist/copy-writes-P4WK6OPM.js.map +0 -1
  715. package/dist/create-4DWCJ2UA.js +0 -208
  716. package/dist/create-4DWCJ2UA.js.map +0 -1
  717. package/dist/create-OYV33CQ6.js +0 -60
  718. package/dist/create-OYV33CQ6.js.map +0 -1
  719. package/dist/create-U6JVIYFY.js +0 -237
  720. package/dist/create-U6JVIYFY.js.map +0 -1
  721. package/dist/create-V4FNRO63.js +0 -133
  722. package/dist/create-V4FNRO63.js.map +0 -1
  723. package/dist/creatives-64FKWEGL.js +0 -221
  724. package/dist/creatives-64FKWEGL.js.map +0 -1
  725. package/dist/creatives-JPKA2RHU.js +0 -89
  726. package/dist/creatives-UJDPD4CI.js +0 -58
  727. package/dist/credentials-EIPEZ2C2.js +0 -288
  728. package/dist/credentials-EIPEZ2C2.js.map +0 -1
  729. package/dist/critique-BADMZAZP.js +0 -230
  730. package/dist/critique-BADMZAZP.js.map +0 -1
  731. package/dist/critique-M3DEVEDA.js +0 -1449
  732. package/dist/critique-M3DEVEDA.js.map +0 -1
  733. package/dist/crm-GIYSLLY7.js +0 -321
  734. package/dist/crm-GIYSLLY7.js.map +0 -1
  735. package/dist/crm-HXKSJRY3.js +0 -225
  736. package/dist/crm-HXKSJRY3.js.map +0 -1
  737. package/dist/currency-R4ORE2U3.js +0 -88
  738. package/dist/custom-conversions-5HJBB5XL.js +0 -128
  739. package/dist/customers-7J3QGSOJ.js +0 -57
  740. package/dist/delete-EDWJQMMV.js +0 -65
  741. package/dist/delete-EDWJQMMV.js.map +0 -1
  742. package/dist/delete-O24CVQMJ.js +0 -67
  743. package/dist/delete-O24CVQMJ.js.map +0 -1
  744. package/dist/delete-QN2OYUCS.js +0 -55
  745. package/dist/delete-QN2OYUCS.js.map +0 -1
  746. package/dist/demographics-MPYYF2OI.js +0 -139
  747. package/dist/demographics-MPYYF2OI.js.map +0 -1
  748. package/dist/discard-FJCFB6SA.js +0 -67
  749. package/dist/discard-FJCFB6SA.js.map +0 -1
  750. package/dist/discover-GSJRZUOC.js +0 -172
  751. package/dist/domain-UILPSEA5.js +0 -99
  752. package/dist/domain-UILPSEA5.js.map +0 -1
  753. package/dist/download-ZMAI7QSG.js +0 -170
  754. package/dist/download-ZMAI7QSG.js.map +0 -1
  755. package/dist/draft-5OQT3APG.js +0 -308
  756. package/dist/draft-5OQT3APG.js.map +0 -1
  757. package/dist/draft-LPVK6YHI.js +0 -281
  758. package/dist/draft-LPVK6YHI.js.map +0 -1
  759. package/dist/draft-MSESA5UE.js +0 -333
  760. package/dist/draft-MSESA5UE.js.map +0 -1
  761. package/dist/draft-WYDMLNYA.js +0 -308
  762. package/dist/draft-XOOSEVY5.js +0 -218
  763. package/dist/draft-XOOSEVY5.js.map +0 -1
  764. package/dist/experiments-PVOQUL47.js +0 -234
  765. package/dist/experiments-PVOQUL47.js.map +0 -1
  766. package/dist/facets-5RW4Z3D3.js +0 -115
  767. package/dist/facets-5RW4Z3D3.js.map +0 -1
  768. package/dist/feedback-GC56R2EJ.js +0 -109
  769. package/dist/feedback-GC56R2EJ.js.map +0 -1
  770. package/dist/feedback-record-JX7ZU6J7.js +0 -263
  771. package/dist/feedback-record-JX7ZU6J7.js.map +0 -1
  772. package/dist/fetch-WUTXAPBL.js +0 -177
  773. package/dist/fetch-WUTXAPBL.js.map +0 -1
  774. package/dist/fit-N7WDGWYZ.js +0 -63
  775. package/dist/flows-ULZACISF.js +0 -248
  776. package/dist/flows-ULZACISF.js.map +0 -1
  777. package/dist/fonts-TTUAP7HS.js +0 -37
  778. package/dist/forecast-4AG5F7YC.js +0 -169
  779. package/dist/forecast-RQJJRN5D.js +0 -119
  780. package/dist/forecast-RQJJRN5D.js.map +0 -1
  781. package/dist/funnel-QPWJIXWK.js +0 -395
  782. package/dist/funnel-QPWJIXWK.js.map +0 -1
  783. package/dist/generate-NWHPM2GQ.js +0 -263
  784. package/dist/get-35D7YHWJ.js +0 -57
  785. package/dist/get-35D7YHWJ.js.map +0 -1
  786. package/dist/get-GIETDPF4.js +0 -80
  787. package/dist/get-GIETDPF4.js.map +0 -1
  788. package/dist/google-NAA4BASO.js +0 -3267
  789. package/dist/google-ads-2IZFZO4C.js +0 -196
  790. package/dist/google-ads-2IZFZO4C.js.map +0 -1
  791. package/dist/history-5MRLNTCI.js +0 -67
  792. package/dist/history-5MRLNTCI.js.map +0 -1
  793. package/dist/history-RPLWWPLQ.js +0 -134
  794. package/dist/history-RPLWWPLQ.js.map +0 -1
  795. package/dist/history-TQYLUYVU.js +0 -100
  796. package/dist/history-TQYLUYVU.js.map +0 -1
  797. package/dist/hubspot-EPK43X4C.js +0 -780
  798. package/dist/hubspot-EPK43X4C.js.map +0 -1
  799. package/dist/ideas-SUXKKZC7.js +0 -43
  800. package/dist/images-VKVZ3DWG.js +0 -92
  801. package/dist/ingest-BBBFT6FZ.js +0 -24
  802. package/dist/ingest-EM2UY42Z.js +0 -108
  803. package/dist/ingest-EM2UY42Z.js.map +0 -1
  804. package/dist/insights-M3CYB22P.js +0 -437
  805. package/dist/insights-M3CYB22P.js.map +0 -1
  806. package/dist/insights-XCT3ONC7.js +0 -130
  807. package/dist/insights-XCT3ONC7.js.map +0 -1
  808. package/dist/inspect-ZPOVOENK.js +0 -190
  809. package/dist/inspect-ZPOVOENK.js.map +0 -1
  810. package/dist/instant-experiences-HT3HB4QZ.js +0 -258
  811. package/dist/instant-experiences-HT3HB4QZ.js.map +0 -1
  812. package/dist/intent-NSHW7EJT.js +0 -95
  813. package/dist/keyword-gap-ITTWKBWZ.js +0 -130
  814. package/dist/keyword-metrics-7DPR264W.js +0 -198
  815. package/dist/keyword-metrics-7DPR264W.js.map +0 -1
  816. package/dist/keywords-for-site-IXL22UKQ.js +0 -129
  817. package/dist/keywords-for-site-IXL22UKQ.js.map +0 -1
  818. package/dist/landing-KZ4OSHHR.js +0 -28
  819. package/dist/languages-MEFQQBJ2.js +0 -40
  820. package/dist/leads-DNQTRYIR.js +0 -113
  821. package/dist/leads-DNQTRYIR.js.map +0 -1
  822. package/dist/leads-SZOGCQFK.js +0 -538
  823. package/dist/leads-SZOGCQFK.js.map +0 -1
  824. package/dist/learn-Q7WZG7FA.js +0 -205
  825. package/dist/learn-Q7WZG7FA.js.map +0 -1
  826. package/dist/line-item-writes-3K7FT5GO.js +0 -209
  827. package/dist/line-item-writes-3K7FT5GO.js.map +0 -1
  828. package/dist/line-items-G5YJG25N.js +0 -107
  829. package/dist/link-2QVSIZJT.js +0 -65
  830. package/dist/link-2QVSIZJT.js.map +0 -1
  831. package/dist/linkedin-VAFPZNWZ.js +0 -1314
  832. package/dist/linkedin-VAFPZNWZ.js.map +0 -1
  833. package/dist/linkedin-person-EHTYVNZY.js +0 -137
  834. package/dist/linkedin-person-EHTYVNZY.js.map +0 -1
  835. package/dist/list-5TS2VPQZ.js +0 -152
  836. package/dist/list-5TS2VPQZ.js.map +0 -1
  837. package/dist/list-PSSQXQRJ.js +0 -65
  838. package/dist/list-PSSQXQRJ.js.map +0 -1
  839. package/dist/list-UMVIFQ3X.js +0 -304
  840. package/dist/list-UMVIFQ3X.js.map +0 -1
  841. package/dist/locations-RLWAS6AC.js +0 -40
  842. package/dist/locations-UKBOT6SB.js +0 -67
  843. package/dist/locations-UKBOT6SB.js.map +0 -1
  844. package/dist/log-ZZK3QMZB.js +0 -93
  845. package/dist/log-ZZK3QMZB.js.map +0 -1
  846. package/dist/lookup-ZJIP2M4X.js +0 -22
  847. package/dist/make-DB2BDVB3.js +0 -1368
  848. package/dist/make-DB2BDVB3.js.map +0 -1
  849. package/dist/map-UJ23GKRH.js +0 -434
  850. package/dist/map-UJ23GKRH.js.map +0 -1
  851. package/dist/mcp-SS2ALFRJ.js +0 -715
  852. package/dist/mcp-SS2ALFRJ.js.map +0 -1
  853. package/dist/media-ZWN7E777.js +0 -18
  854. package/dist/media-sources-GKSEDSE3.js +0 -35
  855. package/dist/members-KD2XRYPZ.js +0 -45
  856. package/dist/members-KD2XRYPZ.js.map +0 -1
  857. package/dist/meta-EHKXH257.js +0 -122
  858. package/dist/metrics-K6FDCMK7.js +0 -152
  859. package/dist/models-JQEPSPNQ.js +0 -155
  860. package/dist/normalize-ZNTXNX6D.js +0 -142
  861. package/dist/normalize-ZNTXNX6D.js.map +0 -1
  862. package/dist/options-TBIFJF3E.js +0 -123
  863. package/dist/options-TBIFJF3E.js.map +0 -1
  864. package/dist/organization-26J2ZIKM.js +0 -947
  865. package/dist/organization-26J2ZIKM.js.map +0 -1
  866. package/dist/page-photos-HWKQOSCU.js +0 -116
  867. package/dist/page-photos-HWKQOSCU.js.map +0 -1
  868. package/dist/performance-6TPJGM6A.js +0 -25
  869. package/dist/performance-O5BXZGS6.js +0 -5539
  870. package/dist/performance-O5BXZGS6.js.map +0 -1
  871. package/dist/pixels-Z7ZGXAGB.js +0 -60
  872. package/dist/pixels-Z7ZGXAGB.js.map +0 -1
  873. package/dist/plan-TVQSEKYL.js +0 -207
  874. package/dist/plan-TVQSEKYL.js.map +0 -1
  875. package/dist/preview-CWRGDFCP.js +0 -216
  876. package/dist/preview-CWRGDFCP.js.map +0 -1
  877. package/dist/promoted-tweet-writes-SZN74JHY.js +0 -181
  878. package/dist/promoted-tweet-writes-SZN74JHY.js.map +0 -1
  879. package/dist/promoted-tweets-7P4TSQU7.js +0 -119
  880. package/dist/publish-3DUERLGT.js +0 -342
  881. package/dist/publish-3DUERLGT.js.map +0 -1
  882. package/dist/query-QM7MBQD7.js +0 -62
  883. package/dist/questionnaire-LEZJLMAV.js +0 -93
  884. package/dist/questionnaire-LEZJLMAV.js.map +0 -1
  885. package/dist/reddit-SN5CESF4.js +0 -27
  886. package/dist/refresh-2ICQBTK4.js +0 -95
  887. package/dist/refresh-2ICQBTK4.js.map +0 -1
  888. package/dist/release-JSZ4JXYJ.js +0 -61
  889. package/dist/release-JSZ4JXYJ.js.map +0 -1
  890. package/dist/relevant-pages-VOICMQ7U.js +0 -99
  891. package/dist/remove-TFUAVRFM.js +0 -51
  892. package/dist/remove-TFUAVRFM.js.map +0 -1
  893. package/dist/reopen-5T2PE7MU.js +0 -64
  894. package/dist/reopen-5T2PE7MU.js.map +0 -1
  895. package/dist/rerun-EZJ4MLYG.js +0 -93
  896. package/dist/rerun-EZJ4MLYG.js.map +0 -1
  897. package/dist/research-BKYSU2C6.js +0 -263
  898. package/dist/research-BKYSU2C6.js.map +0 -1
  899. package/dist/research-QU63CJB5.js +0 -72
  900. package/dist/reset-DKTKZF7G.js +0 -55
  901. package/dist/reset-DKTKZF7G.js.map +0 -1
  902. package/dist/reset-SXABIVP6.js +0 -55
  903. package/dist/reset-SXABIVP6.js.map +0 -1
  904. package/dist/resolve-L47U2T77.js +0 -122
  905. package/dist/resolve-L47U2T77.js.map +0 -1
  906. package/dist/retry-JEWPK2B5.js +0 -63
  907. package/dist/retry-JEWPK2B5.js.map +0 -1
  908. package/dist/retry-SXFVLT3W.js +0 -61
  909. package/dist/retry-SXFVLT3W.js.map +0 -1
  910. package/dist/revenue-2MAYTXRM.js +0 -89
  911. package/dist/revenue-2MAYTXRM.js.map +0 -1
  912. package/dist/rule-writes-S3RN47OG.js +0 -523
  913. package/dist/rule-writes-S3RN47OG.js.map +0 -1
  914. package/dist/rules-CHWTFASP.js +0 -97
  915. package/dist/rules-CHWTFASP.js.map +0 -1
  916. package/dist/rules-KTJ2ZZ62.js +0 -217
  917. package/dist/rules-add-3M5TALWN.js +0 -463
  918. package/dist/rules-add-3M5TALWN.js.map +0 -1
  919. package/dist/run-2DLA6YO4.js +0 -68
  920. package/dist/run-JCGH2NHD.js +0 -67
  921. package/dist/run-JCGH2NHD.js.map +0 -1
  922. package/dist/scaffold-ad-VEW7JDY7.js +0 -1514
  923. package/dist/scaffold-ad-VEW7JDY7.js.map +0 -1
  924. package/dist/scaffold-static-ad-DYRL7DOS.js +0 -1013
  925. package/dist/scaffold-static-ad-DYRL7DOS.js.map +0 -1
  926. package/dist/scaffold-video-YRAVVKUH.js +0 -886
  927. package/dist/scaffold-video-YRAVVKUH.js.map +0 -1
  928. package/dist/schedule-WYIC6VNW.js +0 -62
  929. package/dist/schedule-WYIC6VNW.js.map +0 -1
  930. package/dist/scheduled-agents-FRBF4EOK.js +0 -55
  931. package/dist/schema-6Y3IXFDC.js +0 -69
  932. package/dist/schema-TC2O3FYY.js +0 -133
  933. package/dist/schema-TC2O3FYY.js.map +0 -1
  934. package/dist/search-VDW242BN.js +0 -175
  935. package/dist/search-VDW242BN.js.map +0 -1
  936. package/dist/select-O5HSSC36.js +0 -104
  937. package/dist/select-O5HSSC36.js.map +0 -1
  938. package/dist/sends-6FI7WELX.js +0 -348
  939. package/dist/sends-6FI7WELX.js.map +0 -1
  940. package/dist/set-prompt-TI7N64PJ.js +0 -196
  941. package/dist/set-prompt-TI7N64PJ.js.map +0 -1
  942. package/dist/setup-links-BM2FTXUZ.js +0 -142
  943. package/dist/setup-links-BM2FTXUZ.js.map +0 -1
  944. package/dist/shopify-FIHG5PYP.js +0 -3956
  945. package/dist/shopify-FIHG5PYP.js.map +0 -1
  946. package/dist/site-S3IGBMVC.js +0 -178
  947. package/dist/site-S3IGBMVC.js.map +0 -1
  948. package/dist/sources-77WLFY4Y.js +0 -30
  949. package/dist/sources-A4B3R5JC.js +0 -455
  950. package/dist/sources-A4B3R5JC.js.map +0 -1
  951. package/dist/stale-YIRCXDOK.js +0 -74
  952. package/dist/stale-YIRCXDOK.js.map +0 -1
  953. package/dist/status-6YNR647D.js +0 -63
  954. package/dist/status-6YNR647D.js.map +0 -1
  955. package/dist/studies-ZOEUY6YP.js +0 -250
  956. package/dist/studio-T5L7UEX6.js +0 -49
  957. package/dist/study-writes-DTGMCNFP.js +0 -468
  958. package/dist/study-writes-DTGMCNFP.js.map +0 -1
  959. package/dist/sync-FFVWHGLE.js +0 -55
  960. package/dist/sync-FFVWHGLE.js.map +0 -1
  961. package/dist/sync-definition-K4XOAG2B.js +0 -67
  962. package/dist/tags-5KIOGEKN.js +0 -21
  963. package/dist/tags-5KIOGEKN.js.map +0 -1
  964. package/dist/tags-BKAN5EAJ.js +0 -21
  965. package/dist/tags-BKAN5EAJ.js.map +0 -1
  966. package/dist/tags-ETOOYQ57.js +0 -26
  967. package/dist/tags-RPNK7TMO.js +0 -225
  968. package/dist/tags-RPNK7TMO.js.map +0 -1
  969. package/dist/tags-UM4QO46J.js +0 -21
  970. package/dist/tags-UM4QO46J.js.map +0 -1
  971. package/dist/targeting-VBQY3HUN.js +0 -760
  972. package/dist/targeting-VBQY3HUN.js.map +0 -1
  973. package/dist/targeting-criteria-L4DYIJZI.js +0 -113
  974. package/dist/targets-S6N7327Q.js +0 -104
  975. package/dist/targets-S6N7327Q.js.map +0 -1
  976. package/dist/testimonials-65N7IYN7.js +0 -32
  977. package/dist/themes-B4LCQUXB.js +0 -95
  978. package/dist/top-companies-SJKND75M.js +0 -109
  979. package/dist/top-companies-SJKND75M.js.map +0 -1
  980. package/dist/transcript-5I7I6DWL.js +0 -163
  981. package/dist/transcript-5I7I6DWL.js.map +0 -1
  982. package/dist/translate-SH6IG5Y7.js +0 -607
  983. package/dist/translate-SH6IG5Y7.js.map +0 -1
  984. package/dist/triggers-YRY3HTYU.js +0 -142
  985. package/dist/triggers-YRY3HTYU.js.map +0 -1
  986. package/dist/unlink-4B4YTQE4.js +0 -68
  987. package/dist/unlink-4B4YTQE4.js.map +0 -1
  988. package/dist/unstage-H5NTDJ6A.js +0 -86
  989. package/dist/unstage-H5NTDJ6A.js.map +0 -1
  990. package/dist/unstage-MDSSPUKV.js +0 -95
  991. package/dist/unstage-MDSSPUKV.js.map +0 -1
  992. package/dist/update-DI52JJGB.js +0 -99
  993. package/dist/update-DI52JJGB.js.map +0 -1
  994. package/dist/update-DMPDLMMV.js +0 -64
  995. package/dist/update-DMPDLMMV.js.map +0 -1
  996. package/dist/update-TUS4PJIG.js +0 -190
  997. package/dist/update-TUS4PJIG.js.map +0 -1
  998. package/dist/update-Z66LMXNS.js +0 -153
  999. package/dist/update-Z66LMXNS.js.map +0 -1
  1000. package/dist/upload-7KQYZ7T7.js +0 -127
  1001. package/dist/upload-7KQYZ7T7.js.map +0 -1
  1002. package/dist/url-options-IHL4OU4C.js +0 -130
  1003. package/dist/url-options-IHL4OU4C.js.map +0 -1
  1004. package/dist/url-params-SDA2MWB5.js +0 -99
  1005. package/dist/url-params-SDA2MWB5.js.map +0 -1
  1006. package/dist/validate-ZABZNCSB.js +0 -120
  1007. package/dist/validate-ZABZNCSB.js.map +0 -1
  1008. package/dist/videos-BKVCCKIH.js +0 -41
  1009. package/dist/viewer-check-B5O7ZY3Q.js +0 -81
  1010. package/dist/web-KN3BTVG4.js +0 -141
  1011. package/dist/web-KN3BTVG4.js.map +0 -1
  1012. package/dist/winning-ads-JIDPISKM.js +0 -86
  1013. package/dist/write-commands-K6M3RTVK.js +0 -1170
  1014. package/dist/write-commands-K6M3RTVK.js.map +0 -1
  1015. package/dist/write-commands-RVHLLLDR.js +0 -1498
  1016. package/dist/write-commands-RVHLLLDR.js.map +0 -1
  1017. package/dist/x-NLGWZCGX.js +0 -47
  1018. /package/dist/{account-assets-O7IA37RE.js.map → account-assets-J5Z4URLQ.js.map} +0 -0
  1019. /package/dist/{account-reads-SNOWDHHF.js.map → account-reads-FOEVPWDP.js.map} +0 -0
  1020. /package/dist/{actions-Y4SULW2E.js.map → actions-QZDSLFFK.js.map} +0 -0
  1021. /package/dist/{ads-2TVWICGM.js.map → ads-AYJAYLFR.js.map} +0 -0
  1022. /package/dist/{ads-KBE5JXCH.js.map → ads-MAOI7S6V.js.map} +0 -0
  1023. /package/dist/{adsets-YWBJFPAZ.js.map → adsets-QRKICEFD.js.map} +0 -0
  1024. /package/dist/{animate-2BMHZ4FM.js.map → animate-HRWFVE2N.js.map} +0 -0
  1025. /package/dist/{asset-writes-72DEVXGO.js.map → asset-writes-JLVUAVUZ.js.map} +0 -0
  1026. /package/dist/{audiences-QAH42HIM.js.map → audiences-CDDI5HR5.js.map} +0 -0
  1027. /package/dist/{avatars-P4UPNZM4.js.map → avatars-4HCGWBOL.js.map} +0 -0
  1028. /package/dist/{brand-HALQWZWB.js.map → brand-C6OB6Q4U.js.map} +0 -0
  1029. /package/dist/{campaigns-XZOQ2VTK.js.map → campaigns-HES5MDUG.js.map} +0 -0
  1030. /package/dist/{campaigns-YMM5TQVO.js.map → campaigns-ZYU4BXDP.js.map} +0 -0
  1031. /package/dist/{canvas-IJS7H3VE.js.map → canvas-AI34UBGU.js.map} +0 -0
  1032. /package/dist/{catalog-TZLU5NWI.js.map → catalog-ZY3MFT55.js.map} +0 -0
  1033. /package/dist/{changes-36C754R4.js.map → changes-OOUVQDBY.js.map} +0 -0
  1034. /package/dist/{chatgpt-3WFOPURY.js.map → chatgpt-NAXIFWXV.js.map} +0 -0
  1035. /package/dist/{chunk-NDFS3APP.js.map → chunk-3CHYJYSS.js.map} +0 -0
  1036. /package/dist/{chunk-QW6HL7D6.js.map → chunk-3G3GC5N4.js.map} +0 -0
  1037. /package/dist/{chunk-5XTGG4PV.js.map → chunk-3M45PYU7.js.map} +0 -0
  1038. /package/dist/{chunk-Z7YMSHRZ.js.map → chunk-3QHXF3QI.js.map} +0 -0
  1039. /package/dist/{chunk-MZCTX37B.js.map → chunk-3XPHUMLJ.js.map} +0 -0
  1040. /package/dist/{chunk-MGYC2IRC.js.map → chunk-45EERHDB.js.map} +0 -0
  1041. /package/dist/{chunk-ZFC562TP.js.map → chunk-4FGTANFK.js.map} +0 -0
  1042. /package/dist/{chunk-PX3PUDK7.js.map → chunk-4IHWT7PH.js.map} +0 -0
  1043. /package/dist/{chunk-PLBITHV6.js.map → chunk-4LF4AYPT.js.map} +0 -0
  1044. /package/dist/{chunk-XGPU2VDU.js.map → chunk-4UQRXKYJ.js.map} +0 -0
  1045. /package/dist/{chunk-SVBJ56T7.js.map → chunk-5JJD33Y2.js.map} +0 -0
  1046. /package/dist/{chunk-I47BEKYK.js.map → chunk-5K4QYYOJ.js.map} +0 -0
  1047. /package/dist/{chunk-MBSFEVOG.js.map → chunk-5LJ6E4YU.js.map} +0 -0
  1048. /package/dist/{chunk-6Z7Y4KQB.js.map → chunk-5T73MMBL.js.map} +0 -0
  1049. /package/dist/{chunk-R53XMPDO.js.map → chunk-64MAHLTK.js.map} +0 -0
  1050. /package/dist/{chunk-JAC6JVCI.js.map → chunk-6OIKNJ7G.js.map} +0 -0
  1051. /package/dist/{chunk-3YJNSUNF.js.map → chunk-6ZFSDYWV.js.map} +0 -0
  1052. /package/dist/{chunk-TVAIOC77.js.map → chunk-7BUIOP36.js.map} +0 -0
  1053. /package/dist/{chunk-ZEC46NWW.js.map → chunk-AN4OEQXE.js.map} +0 -0
  1054. /package/dist/{chunk-TX7CQTD4.js.map → chunk-AULSX5ZA.js.map} +0 -0
  1055. /package/dist/{chunk-MVD7QIXI.js.map → chunk-AVYUFJQQ.js.map} +0 -0
  1056. /package/dist/{chunk-KQTNUDKD.js.map → chunk-B4YF7VQF.js.map} +0 -0
  1057. /package/dist/{chunk-UKSSNYLU.js.map → chunk-BDOYNGUL.js.map} +0 -0
  1058. /package/dist/{chunk-BRLZX3VP.js.map → chunk-BJOK7QD4.js.map} +0 -0
  1059. /package/dist/{chunk-Z2DRGXBB.js.map → chunk-CMCGFSUS.js.map} +0 -0
  1060. /package/dist/{chunk-KBRJSPIM.js.map → chunk-DMJUIUAL.js.map} +0 -0
  1061. /package/dist/{chunk-HML3VQIW.js.map → chunk-DUCUOZLS.js.map} +0 -0
  1062. /package/dist/{chunk-7HZSORAB.js.map → chunk-FJZYOVSW.js.map} +0 -0
  1063. /package/dist/{chunk-GMHCHHAA.js.map → chunk-FKP4ECJY.js.map} +0 -0
  1064. /package/dist/{chunk-RVEY7BTT.js.map → chunk-GNMEOU46.js.map} +0 -0
  1065. /package/dist/{chunk-AYPBARKP.js.map → chunk-GYKYXWUQ.js.map} +0 -0
  1066. /package/dist/{chunk-MUXKYSTI.js.map → chunk-GYPLRU4Y.js.map} +0 -0
  1067. /package/dist/{chunk-YNYAT2TZ.js.map → chunk-I43ZEWJQ.js.map} +0 -0
  1068. /package/dist/{chunk-4GAEB6NK.js.map → chunk-IZABTTW5.js.map} +0 -0
  1069. /package/dist/{chunk-GACSA5A6.js.map → chunk-K7IE6UYV.js.map} +0 -0
  1070. /package/dist/{chunk-BTJSGJNQ.js.map → chunk-KH5YHHJV.js.map} +0 -0
  1071. /package/dist/{chunk-C7QQQVBS.js.map → chunk-KMY7AD3N.js.map} +0 -0
  1072. /package/dist/{chunk-6KWEF6HF.js.map → chunk-KPCHWDJM.js.map} +0 -0
  1073. /package/dist/{chunk-SWN6OHXG.js.map → chunk-KTZCLJ2D.js.map} +0 -0
  1074. /package/dist/{chunk-A3IQAONL.js.map → chunk-MKUA54QE.js.map} +0 -0
  1075. /package/dist/{chunk-FFFJBNHA.js.map → chunk-MTV2RSGY.js.map} +0 -0
  1076. /package/dist/{chunk-G5Y7OIPL.js.map → chunk-N2QX57K3.js.map} +0 -0
  1077. /package/dist/{chunk-OJGYYH6K.js.map → chunk-NB2FU6EZ.js.map} +0 -0
  1078. /package/dist/{chunk-SCL7PM6P.js.map → chunk-NEYWS2DQ.js.map} +0 -0
  1079. /package/dist/{chunk-TVTSA4EN.js.map → chunk-NWF2LRKO.js.map} +0 -0
  1080. /package/dist/{chunk-W574NV67.js.map → chunk-OTC6UMJ2.js.map} +0 -0
  1081. /package/dist/{chunk-QMDMTZAW.js.map → chunk-OUY2IAWL.js.map} +0 -0
  1082. /package/dist/{chunk-FPWQA7TK.js.map → chunk-PJXNCRMR.js.map} +0 -0
  1083. /package/dist/{chunk-ARUXGKZO.js.map → chunk-PYQ3GF7R.js.map} +0 -0
  1084. /package/dist/{chunk-DUR7PEJI.js.map → chunk-Q3EIVZAR.js.map} +0 -0
  1085. /package/dist/{chunk-OBJCNGZL.js.map → chunk-QDQZ62FL.js.map} +0 -0
  1086. /package/dist/{chunk-LRV6M2WB.js.map → chunk-QHZE62GP.js.map} +0 -0
  1087. /package/dist/{chunk-PLAOK4AK.js.map → chunk-RGR6TSTJ.js.map} +0 -0
  1088. /package/dist/{chunk-HSQRITKG.js.map → chunk-SAAXU7QR.js.map} +0 -0
  1089. /package/dist/{chunk-H4NNQGG6.js.map → chunk-SHTKLRI6.js.map} +0 -0
  1090. /package/dist/{chunk-MZPS46OR.js.map → chunk-SIKCVWM3.js.map} +0 -0
  1091. /package/dist/{chunk-RFIUOQLN.js.map → chunk-SSXG53CZ.js.map} +0 -0
  1092. /package/dist/{chunk-5SRUAGTG.js.map → chunk-TBWAM577.js.map} +0 -0
  1093. /package/dist/{chunk-AIRD6T4W.js.map → chunk-TGPGQTZA.js.map} +0 -0
  1094. /package/dist/{chunk-F4YQ5PVR.js.map → chunk-UMIX2BMM.js.map} +0 -0
  1095. /package/dist/{chunk-ZNRGH4NS.js.map → chunk-URMAEVZO.js.map} +0 -0
  1096. /package/dist/{chunk-QBRPM3DQ.js.map → chunk-VBO3ZVUU.js.map} +0 -0
  1097. /package/dist/{chunk-N7M2TWR5.js.map → chunk-VFLYMHTO.js.map} +0 -0
  1098. /package/dist/{chunk-XQXZJ5IR.js.map → chunk-VGYIVXIZ.js.map} +0 -0
  1099. /package/dist/{chunk-AQOFQNKQ.js.map → chunk-VIB7R533.js.map} +0 -0
  1100. /package/dist/{chunk-D3KLDIPQ.js.map → chunk-WLESMH4J.js.map} +0 -0
  1101. /package/dist/{chunk-SM7G7RUA.js.map → chunk-WVWLPXBO.js.map} +0 -0
  1102. /package/dist/{chunk-5RVQK3SP.js.map → chunk-XEH5XAP6.js.map} +0 -0
  1103. /package/dist/{chunk-P6BKKUSX.js.map → chunk-XEOKVL4E.js.map} +0 -0
  1104. /package/dist/{chunk-FFG2OYVV.js.map → chunk-XOGQJYXH.js.map} +0 -0
  1105. /package/dist/{chunk-YMF2RG4Z.js.map → chunk-XUXRA7IB.js.map} +0 -0
  1106. /package/dist/{connect-PP6Z3F7Y.js.map → connect-IAXSZPGA.js.map} +0 -0
  1107. /package/dist/{conversion-upload-command-KTYAY7IG.js.map → conversion-upload-command-IHFKVX2M.js.map} +0 -0
  1108. /package/dist/{creatives-JPKA2RHU.js.map → creatives-BB6S2OF6.js.map} +0 -0
  1109. /package/dist/{creatives-UJDPD4CI.js.map → creatives-BZEVJ6ER.js.map} +0 -0
  1110. /package/dist/{currency-R4ORE2U3.js.map → currency-CGKO5GKH.js.map} +0 -0
  1111. /package/dist/{custom-conversions-5HJBB5XL.js.map → custom-conversions-HAGG72LF.js.map} +0 -0
  1112. /package/dist/{customers-7J3QGSOJ.js.map → customers-NKKU6S7G.js.map} +0 -0
  1113. /package/dist/{discover-GSJRZUOC.js.map → discover-VM3O7CQM.js.map} +0 -0
  1114. /package/dist/{draft-WYDMLNYA.js.map → draft-CRDBU6LF.js.map} +0 -0
  1115. /package/dist/{fit-N7WDGWYZ.js.map → fit-Q5GRVF2O.js.map} +0 -0
  1116. /package/dist/{fonts-TTUAP7HS.js.map → fonts-GD4YRXQU.js.map} +0 -0
  1117. /package/dist/{forecast-4AG5F7YC.js.map → forecast-ONVS2QAI.js.map} +0 -0
  1118. /package/dist/{generate-NWHPM2GQ.js.map → generate-VBEY3N3L.js.map} +0 -0
  1119. /package/dist/{google-NAA4BASO.js.map → google-7EZP7I6J.js.map} +0 -0
  1120. /package/dist/{ideas-SUXKKZC7.js.map → ideas-WX7EBPSF.js.map} +0 -0
  1121. /package/dist/{images-VKVZ3DWG.js.map → images-4AXF4LAC.js.map} +0 -0
  1122. /package/dist/{ingest-BBBFT6FZ.js.map → ingest-C3M4GUO6.js.map} +0 -0
  1123. /package/dist/{intent-NSHW7EJT.js.map → intent-ZMYMFGB4.js.map} +0 -0
  1124. /package/dist/{keyword-gap-ITTWKBWZ.js.map → keyword-gap-XSJO2R77.js.map} +0 -0
  1125. /package/dist/{landing-KZ4OSHHR.js.map → landing-MUNYZQNA.js.map} +0 -0
  1126. /package/dist/{languages-MEFQQBJ2.js.map → languages-DIQ3OG3E.js.map} +0 -0
  1127. /package/dist/{line-items-G5YJG25N.js.map → line-items-JR25T2C5.js.map} +0 -0
  1128. /package/dist/{locations-RLWAS6AC.js.map → locations-HTVYJSDJ.js.map} +0 -0
  1129. /package/dist/{lookup-ZJIP2M4X.js.map → lookup-S5VG7AWH.js.map} +0 -0
  1130. /package/dist/{media-ZWN7E777.js.map → media-P4T4ZBNS.js.map} +0 -0
  1131. /package/dist/{media-sources-GKSEDSE3.js.map → media-sources-P246GM7W.js.map} +0 -0
  1132. /package/dist/{meta-EHKXH257.js.map → meta-IPLWNYC7.js.map} +0 -0
  1133. /package/dist/{metrics-K6FDCMK7.js.map → metrics-WYWUX6Y5.js.map} +0 -0
  1134. /package/dist/{models-JQEPSPNQ.js.map → models-HJ7Y55AH.js.map} +0 -0
  1135. /package/dist/{performance-6TPJGM6A.js.map → performance-J3DLNI2W.js.map} +0 -0
  1136. /package/dist/{promoted-tweets-7P4TSQU7.js.map → promoted-tweets-W42FNWS7.js.map} +0 -0
  1137. /package/dist/{query-QM7MBQD7.js.map → query-IQICLABN.js.map} +0 -0
  1138. /package/dist/{reddit-SN5CESF4.js.map → reddit-X4CERXYF.js.map} +0 -0
  1139. /package/dist/{relevant-pages-VOICMQ7U.js.map → relevant-pages-UDDQOYLD.js.map} +0 -0
  1140. /package/dist/{research-QU63CJB5.js.map → research-D5UUJF74.js.map} +0 -0
  1141. /package/dist/{rules-KTJ2ZZ62.js.map → rules-ZVS2MWED.js.map} +0 -0
  1142. /package/dist/{run-2DLA6YO4.js.map → run-T7XAH2W5.js.map} +0 -0
  1143. /package/dist/{scheduled-agents-FRBF4EOK.js.map → scheduled-agents-ZGCUZ6SB.js.map} +0 -0
  1144. /package/dist/{schema-6Y3IXFDC.js.map → schema-D6BMZAPB.js.map} +0 -0
  1145. /package/dist/{sources-77WLFY4Y.js.map → sources-DVMJEXEX.js.map} +0 -0
  1146. /package/dist/{studies-ZOEUY6YP.js.map → studies-EPO2AM4M.js.map} +0 -0
  1147. /package/dist/{studio-T5L7UEX6.js.map → studio-5Z4NMA4K.js.map} +0 -0
  1148. /package/dist/{sync-definition-K4XOAG2B.js.map → sync-definition-F3CXG6KG.js.map} +0 -0
  1149. /package/dist/{tags-ETOOYQ57.js.map → tags-SEZ2CQJM.js.map} +0 -0
  1150. /package/dist/{targeting-criteria-L4DYIJZI.js.map → targeting-criteria-AU5CSMAU.js.map} +0 -0
  1151. /package/dist/{testimonials-65N7IYN7.js.map → testimonials-Y6PUV6AL.js.map} +0 -0
  1152. /package/dist/{themes-B4LCQUXB.js.map → themes-PGPIAKAO.js.map} +0 -0
  1153. /package/dist/{videos-BKVCCKIH.js.map → videos-SVZV5YYC.js.map} +0 -0
  1154. /package/dist/{viewer-check-B5O7ZY3Q.js.map → viewer-check-LUAEGV6H.js.map} +0 -0
  1155. /package/dist/{winning-ads-JIDPISKM.js.map → winning-ads-KNLJHHCO.js.map} +0 -0
  1156. /package/dist/{x-NLGWZCGX.js.map → x-ZQNHYIDU.js.map} +0 -0
@@ -0,0 +1,543 @@
1
+ import {
2
+ readCreativeSpecs,
3
+ rulesHints,
4
+ rulesView,
5
+ waiverCounts
6
+ } from "./chunk-QVQKCVP7.js";
7
+ import {
8
+ withDefinitions
9
+ } from "./chunk-5LJ6E4YU.js";
10
+ import {
11
+ liveViewerLookups
12
+ } from "./chunk-5K4QYYOJ.js";
13
+ import "./chunk-XEOKVL4E.js";
14
+ import "./chunk-SSXG53CZ.js";
15
+ import "./chunk-WHBFXR6F.js";
16
+ import {
17
+ buildSearchBody
18
+ } from "./chunk-TT7RFKUE.js";
19
+ import "./chunk-NNLVFRF6.js";
20
+ import "./chunk-XB63MQ6E.js";
21
+ import {
22
+ buildNext,
23
+ ideasReport
24
+ } from "./chunk-Q3EIVZAR.js";
25
+ import "./chunk-DQVI7GCX.js";
26
+ import "./chunk-EKX37C3T.js";
27
+ import {
28
+ readInsights
29
+ } from "./chunk-KTZCLJ2D.js";
30
+ import {
31
+ readAllRules,
32
+ readCompanyReading
33
+ } from "./chunk-PJXNCRMR.js";
34
+ import {
35
+ AWARENESS_STAGES,
36
+ IDEA_ANGLES,
37
+ IDEA_FORMATS
38
+ } from "./chunk-MKUA54QE.js";
39
+ import {
40
+ researchCustomers
41
+ } from "./chunk-VFLYMHTO.js";
42
+ import "./chunk-GYPLRU4Y.js";
43
+ import "./chunk-3CHYJYSS.js";
44
+ import "./chunk-GSKZ3ZDO.js";
45
+ import "./chunk-6ZFSDYWV.js";
46
+ import "./chunk-G6XKD7QE.js";
47
+ import "./chunk-ERSX3MKH.js";
48
+ import "./chunk-QPESDKZC.js";
49
+ import "./chunk-E44NXCTL.js";
50
+ import {
51
+ findWorkspaceRoot
52
+ } from "./chunk-EJGAJHLB.js";
53
+ import "./chunk-QHZE62GP.js";
54
+ import {
55
+ selectRules
56
+ } from "./chunk-FJZYOVSW.js";
57
+ import "./chunk-F3CZFUXZ.js";
58
+ import {
59
+ viewerFromKnowledge
60
+ } from "./chunk-2WZI36D3.js";
61
+ import "./chunk-65Y3RCWP.js";
62
+ import "./chunk-LNNTHEL7.js";
63
+ import "./chunk-FOMFU2RX.js";
64
+ import "./chunk-PSGIHSNC.js";
65
+ import "./chunk-PONLPYD7.js";
66
+ import "./chunk-SAAXU7QR.js";
67
+ import "./chunk-NZ34KM46.js";
68
+ import "./chunk-CAZGM2NX.js";
69
+ import "./chunk-NZS3KEQ2.js";
70
+ import "./chunk-GIWHHCD6.js";
71
+ import "./chunk-SOPVIIUW.js";
72
+ import "./chunk-G4FG5EQO.js";
73
+ import "./chunk-NSBNIPIW.js";
74
+ import "./chunk-MUS2UTWU.js";
75
+ import {
76
+ ApiError,
77
+ apiGet,
78
+ apiPost
79
+ } from "./chunk-X7VQFLHI.js";
80
+ import "./chunk-LU4HI4KI.js";
81
+ import {
82
+ getEnv
83
+ } from "./chunk-LGK7UWBN.js";
84
+ import {
85
+ registerSchema,
86
+ writeJson
87
+ } from "./chunk-Q7US4OOA.js";
88
+ import "./chunk-YQSBHWOI.js";
89
+
90
+ // src/commands/creatives/brief.ts
91
+ import { readFileSync } from "fs";
92
+ import { readdir, readFile } from "fs/promises";
93
+ import path from "path";
94
+ import { defineCommand } from "citty";
95
+
96
+ // src/commands/creatives/brief-model.ts
97
+ var MIN_IMPRESSIONS = 1e3;
98
+ var LOW_CTR = 1.5;
99
+ var LOW_CVR = 1;
100
+ var round = (n) => Math.round(n * 100) / 100;
101
+ function diagnoseBottleneck(totals) {
102
+ const ctr = totals.impressions > 0 ? round(totals.linkClicks / totals.impressions * 100) : null;
103
+ const cvr = totals.linkClicks > 0 ? round(totals.results / totals.linkClicks * 100) : null;
104
+ if (totals.impressions < MIN_IMPRESSIONS || ctr === null) {
105
+ return { verdict: "too_little_data", ctr, cvr, why: "Too little delivery in the last 30 days to call it." };
106
+ }
107
+ if (ctr < LOW_CTR) {
108
+ return {
109
+ verdict: "hook",
110
+ ctr,
111
+ cvr,
112
+ why: `Link click-through ${ctr}% (under ${LOW_CTR}%): people scroll past. New ideas and hooks are the fix.`
113
+ };
114
+ }
115
+ if (cvr !== null && cvr < LOW_CVR) {
116
+ return {
117
+ verdict: "after_click",
118
+ ctr,
119
+ cvr,
120
+ why: `People click (${ctr}%) but only ${cvr}% act: the page or the offer loses them, and a new ad will not fix that. Say so, make the ads' promise match the page, and make one idea an offer idea.`
121
+ };
122
+ }
123
+ return {
124
+ verdict: "none",
125
+ ctr,
126
+ cvr,
127
+ why: `Click-through ${ctr}% and ${cvr ?? 0}% of clicks act: the ads work. Build on the winners first.`
128
+ };
129
+ }
130
+ var CONVERSION_ACTION = /^(lead|purchase|complete_registration|submit_application|schedule|contact|start_trial|subscribe|offsite_conversion\.|onsite_conversion\.lead|onsite_web_lead|omni_purchase|omni_complete_registration)/;
131
+ function resultsOf(actions) {
132
+ if (!Array.isArray(actions)) return 0;
133
+ let total = 0;
134
+ for (const action of actions) {
135
+ const type = action?.action_type;
136
+ const value = Number(action?.value ?? 0);
137
+ if (typeof type === "string" && CONVERSION_ACTION.test(type) && Number.isFinite(value)) total += value;
138
+ }
139
+ return total;
140
+ }
141
+ var MIN_OBSERVED = 5;
142
+ var MAX_QUOTES = 6;
143
+ function customerTruth(insights) {
144
+ const byType = {};
145
+ for (const insight of insights) byType[insight.type] = (byType[insight.type] ?? 0) + 1;
146
+ const observed = insights.filter((i) => i.status === "observed");
147
+ const seen = /* @__PURE__ */ new Set();
148
+ const quotes = [];
149
+ for (const insight of observed) {
150
+ if (seen.has(insight.type) || quotes.length >= MAX_QUOTES) continue;
151
+ seen.add(insight.type);
152
+ quotes.push({
153
+ id: insight.id,
154
+ type: insight.type,
155
+ quote: insight.quote.length > 140 ? `${insight.quote.slice(0, 137)}...` : insight.quote
156
+ });
157
+ }
158
+ return { total: insights.length, observed: observed.length, thin: observed.length < MIN_OBSERVED, byType, quotes };
159
+ }
160
+ var MAX_SAYING = 6;
161
+ var KEPT_STAGES = /* @__PURE__ */ new Set(["proven", "evergreen"]);
162
+ function keptAfterTesting(ad) {
163
+ return ad.survived_test === true || KEPT_STAGES.has(ad.stage ?? "");
164
+ }
165
+ var SAME_ANGLE = 0.4;
166
+ function angleWords(angle) {
167
+ return new Set(
168
+ angle.toLowerCase().split(/[^\p{L}]+/u).filter((w) => w.length >= 4 && w !== "your" && w !== "with").map((w) => w.replace(/s$/, ""))
169
+ );
170
+ }
171
+ function overlap(a, b) {
172
+ const shared = [...a].filter((w) => b.has(w)).length;
173
+ const all = (/* @__PURE__ */ new Set([...a, ...b])).size;
174
+ return all === 0 ? 0 : shared / all;
175
+ }
176
+ function tally(values) {
177
+ const counts = {};
178
+ for (const value of values) if (value) counts[value] = (counts[value] ?? 0) + 1;
179
+ return counts;
180
+ }
181
+ function marketMap(ads, source) {
182
+ const groups = [];
183
+ for (const ad of ads) {
184
+ const angle = ad.dna.angle?.trim();
185
+ if (!angle) continue;
186
+ const words = angleWords(angle);
187
+ const brand = ad.advertiser ?? "?";
188
+ let group = groups.find((g) => overlap(g.words, words) >= SAME_ANGLE);
189
+ if (!group) {
190
+ group = { angle, words, brands: /* @__PURE__ */ new Set(), kept: /* @__PURE__ */ new Set() };
191
+ groups.push(group);
192
+ }
193
+ group.brands.add(brand);
194
+ if (keptAfterTesting(ad)) group.kept.add(brand);
195
+ }
196
+ const saying = groups.map((g) => ({ angle: g.angle, brands: g.brands.size, ...g.kept.size > 0 ? { kept_brands: g.kept.size } : {} })).sort((a, b) => (b.kept_brands ?? 0) - (a.kept_brands ?? 0) || b.brands - a.brands).slice(0, MAX_SAYING);
197
+ const keptAds = ads.filter(keptAfterTesting).length;
198
+ const stages = tally(ads.map((a) => a.dna.sophistication_stage));
199
+ const sophistication = Object.entries(stages).sort((a, b) => b[1] - a[1])[0]?.[0] ?? null;
200
+ const awareness = tally(ads.map((a) => a.dna.awareness_stage));
201
+ return {
202
+ source,
203
+ ads: ads.length,
204
+ brands: new Set(ads.map((a) => a.advertiser ?? "?")).size,
205
+ sophistication,
206
+ saying,
207
+ awareness,
208
+ containers: tally(ads.map((a) => a.dna.container)),
209
+ unspoken: AWARENESS_STAGES.filter((stage) => !awareness[stage]),
210
+ ...keptAds > 0 ? { kept_ads: keptAds } : {}
211
+ };
212
+ }
213
+
214
+ // src/commands/creatives/brief.ts
215
+ var DESCRIPTION = `Start here before making ads: one read of everything that decides what to make. Who sees the ads, what already works in the account and where it loses people (a verdict, not raw numbers), what this company's reviewers approved and rejected and what they said in their own words, the company's standing rules for every ad, what customers said in their own words, and the ideas already on file.
216
+
217
+ baker creatives brief # the viewer from the Knowledge
218
+ baker creatives brief --adset <id> # the viewer that ad set reaches
219
+ baker creatives brief --account-id act_<id> # when more than one Meta account is connected
220
+
221
+ Then write 4-8 ideas in src/creatives/_ideas/ and run \`baker creatives ideas\`. With few customer quotes on file it gathers them itself first (\`baker research customers\`, about 30 s; --no-research to skip).`;
222
+ var ARGS = {
223
+ adset: {
224
+ type: "string",
225
+ description: "The Meta ad set the ads are for: its viewer replaces the Knowledge's",
226
+ required: false
227
+ },
228
+ "account-id": {
229
+ type: "string",
230
+ description: "Meta ad account to read (act_<id>); default: the one connected account",
231
+ required: false
232
+ },
233
+ full: {
234
+ type: "boolean",
235
+ description: "Every quote, idea and creative instead of the top few",
236
+ required: false,
237
+ default: false
238
+ },
239
+ research: {
240
+ type: "boolean",
241
+ description: "Gather customer quotes first when few are on file (default true; --no-research skips it)",
242
+ required: false,
243
+ default: true
244
+ }
245
+ };
246
+ registerSchema({ command: "creatives.brief", description: DESCRIPTION, args: ARGS });
247
+ var unavailable = (err) => ({
248
+ unavailable: err instanceof Error ? err.message.slice(0, 200) : "could not be read"
249
+ });
250
+ async function section(read) {
251
+ try {
252
+ return await read();
253
+ } catch (err) {
254
+ return unavailable(err);
255
+ }
256
+ }
257
+ function isAvailable(value) {
258
+ return !(value !== null && typeof value === "object" && "unavailable" in value);
259
+ }
260
+ async function companyStatus(root) {
261
+ const doc = await readFile(path.join(root, "COMPANY.md"), "utf8").catch(() => "");
262
+ return doc.trim() && !/^#\s*Company\s*\n+\s*TODO/m.test(doc) ? "ready" : "missing";
263
+ }
264
+ async function readOffers(root) {
265
+ const dir = path.join(root, "src", "content", "offers");
266
+ const files = (await readdir(dir, { recursive: true }).catch(() => [])).filter(
267
+ (f) => f.endsWith(".md")
268
+ );
269
+ return files.map((f) => f.replace(/\.md$/, "")).sort();
270
+ }
271
+ function readDefinition(root, slug) {
272
+ try {
273
+ return readFileSync(path.join(root, "src", "creatives", slug, "_definition.md"), "utf8");
274
+ } catch {
275
+ return null;
276
+ }
277
+ }
278
+ async function readViewer(root, adSet) {
279
+ const lookups = liveViewerLookups(root);
280
+ if (adSet) {
281
+ const read = await lookups.adSetViewer(adSet).catch(() => null);
282
+ if (read) return read;
283
+ }
284
+ const personas = await lookups.personas().catch(() => []);
285
+ return viewerFromKnowledge({ personas: personas.map((p) => p.segment ?? p.title ?? p.slug) });
286
+ }
287
+ var MARKET_ADS = 40;
288
+ var MARKET_FALLBACK_ADS = 15;
289
+ var MARKET_SEARCH_MS = 12e3;
290
+ async function readMarket(root) {
291
+ const company = await readCompanyReading(root);
292
+ const query = company?.category ?? company?.sells;
293
+ if (!query) return null;
294
+ const search = (body) => apiPost("/api/ad-library/winners/search", body, {
295
+ timeoutMs: MARKET_SEARCH_MS
296
+ }).catch((err) => {
297
+ if (err instanceof ApiError && err.code === "TIMEOUT") {
298
+ throw new Error("the ad library did not answer in time, so competitors' claims are left out");
299
+ }
300
+ throw err;
301
+ });
302
+ const [followed, all] = await Promise.allSettled([
303
+ search(buildSearchBody({ scope: "followed", platform: "meta", limit: MARKET_ADS, maxPerAdvertiser: 8 })),
304
+ search(buildSearchBody({ query, scope: "all", platform: "meta", limit: MARKET_FALLBACK_ADS, maxPerAdvertiser: 3 }))
305
+ ]);
306
+ if (followed.status === "fulfilled" && followed.value.results.length > 0)
307
+ return marketMap(followed.value.results, "followed");
308
+ if (all.status === "rejected") throw all.reason;
309
+ return all.value.results.length > 0 ? marketMap(all.value.results, "library") : null;
310
+ }
311
+ async function metaAccountId(given) {
312
+ if (given) return given.startsWith("act_") ? given : `act_${given}`;
313
+ const named = getEnv().BAKER_META_AD_ACCOUNT_ID;
314
+ if (named) return `act_${named.replace(/^act_/, "")}`;
315
+ const accounts = await apiGet("/api/ads/meta/accounts");
316
+ const ids = accounts.flatMap((a) => {
317
+ const id2 = a.externalId ?? a.id;
318
+ return typeof id2 === "string" && id2 ? [id2] : [];
319
+ });
320
+ if (ids.length !== 1) return null;
321
+ const id = ids[0];
322
+ return id.startsWith("act_") ? id : `act_${id}`;
323
+ }
324
+ async function readBottleneck(accountId) {
325
+ const rows = await apiPost("/api/ads/meta/insights", {
326
+ object: accountId,
327
+ level: "account",
328
+ fields: ["impressions", "inline_link_clicks", "actions", "spend"],
329
+ actionBreakdowns: ["action_type"],
330
+ datePreset: "last_30d",
331
+ limit: 10
332
+ });
333
+ const totals = { impressions: 0, linkClicks: 0, results: 0 };
334
+ for (const row of rows) {
335
+ totals.impressions += Number(row.impressions ?? 0);
336
+ totals.linkClicks += Number(row.inline_link_clicks ?? 0);
337
+ totals.results += resultsOf(row.actions);
338
+ }
339
+ return diagnoseBottleneck(totals);
340
+ }
341
+ function leanCreative(c) {
342
+ return {
343
+ creative: c.slug ?? c.title,
344
+ costPerResult: c.costPerResult,
345
+ ...c.currency ? { currency: c.currency } : {},
346
+ ctr: c.ctr,
347
+ fatigue: c.fatigue,
348
+ ...c.definition?.idea ? { idea: c.definition.idea } : {},
349
+ ...c.definition?.angle ? { angle: c.definition.angle } : {}
350
+ };
351
+ }
352
+ function whatWorks(creatives, limit = 3) {
353
+ const priced = creatives.filter((c) => c.costPerResult !== null && c.costPerResult > 0);
354
+ const best = [...priced].sort((a, b) => (a.costPerResult ?? 0) - (b.costPerResult ?? 0)).slice(0, limit);
355
+ const tired = creatives.filter((c) => c.fatigue === "fatigued" || c.fatigue === "dead");
356
+ return { best: best.map(leanCreative), replace: tired.map(leanCreative) };
357
+ }
358
+ var HEARD_IT_ALL = /^s[345]/;
359
+ function customersHint(parts) {
360
+ if (parts.researched) {
361
+ return parts.researched.written > 0 ? `${parts.researched.written} customer quotes were just gathered from reviews and Reddit and are in \`customers\`: cite them by id in each idea's \`evidence\`.` : "Customer research found nothing to keep: ideas go in as explore bets (an empty `evidence` list). Never research customers again in this turn.";
362
+ }
363
+ if (!parts.customers.thin) return null;
364
+ return `Only ${parts.customers.observed} customer quotes on file: run \`baker research customers\` now, before writing ideas, so they stand on what customers said. It gathers reviews, Reddit and the web and writes the quotes with their sources in about a minute; never a subagent or web searches of your own for this.`;
365
+ }
366
+ function briefHints(parts) {
367
+ const hints = [];
368
+ if (parts.company === "missing") {
369
+ hints.push("COMPANY.md is empty: run /company-discovery first, or every idea is a guess about the business.");
370
+ }
371
+ const customers = customersHint(parts);
372
+ if (customers) hints.push(customers);
373
+ if (parts.rules) {
374
+ hints.push(
375
+ `Write every idea and every ad within the ${parts.rules} rules in \`rules\`: an ad saying words one bans (\`bans\`) is refused before it renders, and every finished ad is checked against the ones a person taught. When the person asks for something a rule forbids, do it and record why in the ad's prompt.json (\`"waive": [{"rule": "<id>", "why": "<their ask>"}]\`).`
376
+ );
377
+ }
378
+ if (parts.bottleneck && isAvailable(parts.bottleneck) && parts.bottleneck.verdict === "after_click") {
379
+ hints.push("The account loses people after the click: tell the person, and make one idea an offer idea.");
380
+ }
381
+ if (parts.market?.sophistication && HEARD_IT_ALL.test(parts.market.sophistication)) {
382
+ hints.push(
383
+ `This market has heard the plain claim (sophistication ${parts.market.sophistication}): lead with how it works (a mechanism), proof, or an angle nobody uses, never a bigger claim.`
384
+ );
385
+ }
386
+ const claims = parts.market?.saying.map(
387
+ (s) => s.kept_brands ? `"${s.angle}" (kept after testing by ${s.kept_brands})` : `"${s.angle}"`
388
+ ) ?? [];
389
+ if (claims.length > 0) {
390
+ hints.push(
391
+ `Competitors already say ${claims.join(", ")}. A message one of them could also run is not a new idea, however it is worded: say what only we have (the offer, a proof, a customer's words) or how it works.`
392
+ );
393
+ }
394
+ for (const won of parts.learned.winners) {
395
+ hints.push(
396
+ `${won.idea} won in the account ("${won.message}"): build on it first, the same message in a new format or for a new persona.`
397
+ );
398
+ }
399
+ if (parts.learned.failed.length > 0) {
400
+ const lost = parts.learned.failed.map((f) => `"${f.message}"`).join(", ");
401
+ hints.push(`Never repeat a message that lost in the account: ${lost}.`);
402
+ }
403
+ if (parts.rejected > parts.approved && parts.rejected > 0) {
404
+ hints.push(
405
+ "Reviewers rejected more than they approved: read `taste.notes` (their own words) and keep every idea clear of each."
406
+ );
407
+ }
408
+ if (parts.buildNext.length > 0) {
409
+ hints.push(`Ideas ready to build: ${parts.buildNext.join(", ")} (\`baker creatives make <idea>\`).`);
410
+ } else {
411
+ hints.push(
412
+ `Write 4-8 ideas in src/creatives/_ideas/<idea>.md (who, message, evidence, awareness, angle, format, job, why), then \`baker creatives ideas\`. awareness: ${AWARENESS_STAGES.join(" | ")}. angle: ${IDEA_ANGLES.join(", ")}. format: ${IDEA_FORMATS.join(", ")}.`
413
+ );
414
+ }
415
+ return hints;
416
+ }
417
+ async function readBrief(root, args) {
418
+ const account = metaAccountId(args.accountId).catch(() => null);
419
+ const [company, offers, viewer, insights, ideas, performance, feedback, accountId, bottleneck, market, rules, specs] = await Promise.all([
420
+ companyStatus(root),
421
+ readOffers(root),
422
+ readViewer(root, args.adset),
423
+ readInsights(root),
424
+ ideasReport(root),
425
+ section(
426
+ async () => withDefinitions(
427
+ await apiPost("/api/creatives/performance", {}),
428
+ (slug) => readDefinition(root, slug)
429
+ )
430
+ ),
431
+ section(() => apiPost("/api/creatives/feedback", {})),
432
+ account,
433
+ account.then((id) => id ? section(() => readBottleneck(id)) : null),
434
+ section(() => readMarket(root)),
435
+ readAllRules(root).then((all) => selectRules(all, {})),
436
+ readCreativeSpecs(root)
437
+ ]);
438
+ return {
439
+ company,
440
+ offers,
441
+ viewer,
442
+ insights,
443
+ ideas,
444
+ performance,
445
+ feedback,
446
+ accountId,
447
+ bottleneck,
448
+ market,
449
+ rules,
450
+ specs
451
+ };
452
+ }
453
+ function accountPart(brief, full) {
454
+ if (!brief.accountId) {
455
+ return { unavailable: "no single Meta ad account connected: pass --account-id act_<id>, or work from customers" };
456
+ }
457
+ const works = isAvailable(brief.performance) ? whatWorks(brief.performance.data.creatives, full ? 10 : 3) : { creatives: brief.performance };
458
+ return { id: brief.accountId, bottleneck: brief.bottleneck, ...works };
459
+ }
460
+ function marketPart(market, full) {
461
+ if (!isAvailable(market)) return market;
462
+ if (!market) return { unavailable: "no library ads match what COMPANY.md says the company sells" };
463
+ if (full) return market;
464
+ const { containers: _containers, ...lean } = market;
465
+ return lean;
466
+ }
467
+ function tastePart(feedback) {
468
+ const { summary, notes } = feedback.data;
469
+ return {
470
+ approved: summary.approved,
471
+ rejected: summary.rejected,
472
+ topRejectionReasons: summary.topRejectionReasons.slice(0, 3).map((r) => r.label),
473
+ ...notes && notes.length > 0 ? { notes: notes.map((n) => ({ creative: n.creative, note: n.note })) } : {}
474
+ };
475
+ }
476
+ function briefEnvelope(brief, full, researched) {
477
+ const customers = customerTruth(brief.insights);
478
+ const summary = isAvailable(brief.feedback) ? brief.feedback.data.summary : null;
479
+ const next = buildNext(brief.ideas.ideas);
480
+ const toBuild = brief.ideas.ideas.filter((i) => i.status === "idea").length;
481
+ const withStatus = (status) => brief.ideas.ideas.filter((i) => i.status === status).map((i) => ({ idea: i.id, message: i.message }));
482
+ const learned = { winners: withStatus("winner"), failed: withStatus("failed") };
483
+ return {
484
+ ok: true,
485
+ data: {
486
+ company: brief.company,
487
+ viewer: { temperature: brief.viewer.temperature, knows: brief.viewer.knows, source: brief.viewer.source },
488
+ offers: brief.offers,
489
+ account: accountPart(brief, full),
490
+ taste: isAvailable(brief.feedback) ? tastePart(brief.feedback) : brief.feedback,
491
+ customers: full ? { ...customers, quotes: brief.insights.map((i) => ({ id: i.id, type: i.type, quote: i.quote })) } : customers,
492
+ market: marketPart(brief.market, full),
493
+ rules: rulesView(brief.rules, { full }),
494
+ ideas: {
495
+ to_build: toBuild,
496
+ built: brief.ideas.ideas.length - toBuild,
497
+ build_next: next,
498
+ ...learned.winners.length > 0 ? { winners: learned.winners } : {},
499
+ ...learned.failed.length > 0 ? { failed: learned.failed } : {}
500
+ }
501
+ },
502
+ hints: briefHints({
503
+ company: brief.company,
504
+ customers,
505
+ bottleneck: brief.bottleneck,
506
+ ideasToBuild: toBuild,
507
+ buildNext: next,
508
+ approved: summary?.approved ?? 0,
509
+ rejected: summary?.rejected ?? 0,
510
+ market: isAvailable(brief.market) ? brief.market : null,
511
+ learned,
512
+ ...researched ? { researched } : {},
513
+ rules: brief.rules.length
514
+ }).concat(rulesHints(brief.rules, waiverCounts(brief.specs)))
515
+ };
516
+ }
517
+ var briefCommand = defineCommand({
518
+ meta: { name: "brief", description: DESCRIPTION },
519
+ args: ARGS,
520
+ async run({ args }) {
521
+ const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();
522
+ const full = args.full === true;
523
+ const thin = args.research !== false && customerTruth(await readInsights(root)).thin;
524
+ const research = thin ? researchCustomers(root, {}).catch(() => null) : null;
525
+ const brief = await readBrief(root, {
526
+ ...typeof args.adset === "string" && args.adset ? { adset: args.adset } : {},
527
+ ...typeof args["account-id"] === "string" && args["account-id"] ? { accountId: args["account-id"] } : {},
528
+ full
529
+ });
530
+ const found = research ? await research : null;
531
+ const written = found?.shown.length ?? 0;
532
+ const insights = written > 0 ? await readInsights(root) : brief.insights;
533
+ writeJson(briefEnvelope({ ...brief, insights }, full, research ? { written } : void 0));
534
+ }
535
+ });
536
+ export {
537
+ briefCommand,
538
+ briefEnvelope,
539
+ briefHints,
540
+ tastePart,
541
+ whatWorks
542
+ };
543
+ //# sourceMappingURL=brief-LCWWQ4OC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/creatives/brief.ts","../src/commands/creatives/brief-model.ts"],"sourcesContent":["/**\n * `baker creatives brief`: everything the agent needs before deciding what ads to make, in one\n * compact read. Who sees the ads, what the account says works and where it loses people, what the\n * company's reviewers liked, what customers said, and which ideas already exist. Each part is\n * read on its own and a failed read is reported as missing, never as a failed brief.\n */\nimport { readFileSync } from \"node:fs\";\nimport { readdir, readFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport type { CreativePerformance, CreativesFeedbackResponse, CreativesPerformanceResponse } from \"@baker/api\";\nimport type { ScopedWinnersSearchResponse } from \"@baker/api/ad-library\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiGet, apiPost } from \"../../client.ts\";\nimport { readCompanyReading } from \"../../engine/creative-context/company.ts\";\nimport { readAllRules } from \"../../engine/creative-context/index.ts\";\nimport { selectRules } from \"../../engine/creative-rules/select.ts\";\nimport { getEnv } from \"../../env.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { type ViewerProfile, viewerFromKnowledge } from \"../../viewer-profile.ts\";\nimport { findWorkspaceRoot } from \"../canvas/normalize-paths.ts\";\nimport { liveViewerLookups } from \"../canvas/viewer-check.ts\";\nimport { researchCustomers } from \"../research/customers.ts\";\nimport { buildSearchBody } from \"../winning-ads/search.ts\";\nimport {\n type Bottleneck,\n type CustomerTruth,\n customerTruth,\n diagnoseBottleneck,\n type MarketMap,\n marketMap,\n resultsOf,\n} from \"./brief-model.ts\";\nimport { buildNext, ideasReport } from \"./ideas.ts\";\nimport { AWARENESS_STAGES, IDEA_ANGLES, IDEA_FORMATS } from \"./ideas-model.ts\";\nimport { readInsights } from \"./ideas-workspace.ts\";\nimport { withDefinitions } from \"./performance.ts\";\nimport { readCreativeSpecs, rulesHints, rulesView, waiverCounts } from \"./rules-view.ts\";\n\nconst DESCRIPTION = `Start here before making ads: one read of everything that decides what to make. Who sees the ads, what already works in the account and where it loses people (a verdict, not raw numbers), what this company's reviewers approved and rejected and what they said in their own words, the company's standing rules for every ad, what customers said in their own words, and the ideas already on file.\n\n baker creatives brief # the viewer from the Knowledge\n baker creatives brief --adset <id> # the viewer that ad set reaches\n baker creatives brief --account-id act_<id> # when more than one Meta account is connected\n\nThen write 4-8 ideas in src/creatives/_ideas/ and run \\`baker creatives ideas\\`. With few customer quotes on file it gathers them itself first (\\`baker research customers\\`, about 30 s; --no-research to skip).`;\n\nconst ARGS = {\n adset: {\n type: \"string\",\n description: \"The Meta ad set the ads are for: its viewer replaces the Knowledge's\",\n required: false,\n },\n \"account-id\": {\n type: \"string\",\n description: \"Meta ad account to read (act_<id>); default: the one connected account\",\n required: false,\n },\n full: {\n type: \"boolean\",\n description: \"Every quote, idea and creative instead of the top few\",\n required: false,\n default: false,\n },\n research: {\n type: \"boolean\",\n description: \"Gather customer quotes first when few are on file (default true; --no-research skips it)\",\n required: false,\n default: true,\n },\n} as const;\n\nregisterSchema({ command: \"creatives.brief\", description: DESCRIPTION, args: ARGS });\n\ntype Section<T> = T | { unavailable: string };\n\nconst unavailable = (err: unknown) => ({\n unavailable: err instanceof Error ? err.message.slice(0, 200) : \"could not be read\",\n});\n\nasync function section<T>(read: () => Promise<T>): Promise<Section<T>> {\n try {\n return await read();\n } catch (err) {\n return unavailable(err);\n }\n}\n\nfunction isAvailable<T>(value: Section<T>): value is T {\n return !(value !== null && typeof value === \"object\" && \"unavailable\" in value);\n}\n\nasync function companyStatus(root: string): Promise<\"ready\" | \"missing\"> {\n const doc = await readFile(path.join(root, \"COMPANY.md\"), \"utf8\").catch(() => \"\");\n return doc.trim() && !/^#\\s*Company\\s*\\n+\\s*TODO/m.test(doc) ? \"ready\" : \"missing\";\n}\n\nasync function readOffers(root: string): Promise<string[]> {\n const dir = path.join(root, \"src\", \"content\", \"offers\");\n const files = ((await readdir(dir, { recursive: true }).catch(() => [])) as string[]).filter((f) =>\n f.endsWith(\".md\"),\n );\n return files.map((f) => f.replace(/\\.md$/, \"\")).sort();\n}\n\nfunction readDefinition(root: string, slug: string): string | null {\n try {\n return readFileSync(path.join(root, \"src\", \"creatives\", slug, \"_definition.md\"), \"utf8\");\n } catch {\n return null;\n }\n}\n\nasync function readViewer(root: string, adSet: string | undefined): Promise<ViewerProfile> {\n const lookups = liveViewerLookups(root);\n if (adSet) {\n const read = await lookups.adSetViewer(adSet).catch(() => null);\n if (read) return read;\n }\n const personas = await lookups.personas().catch(() => []);\n return viewerFromKnowledge({ personas: personas.map((p) => p.segment ?? p.title ?? p.slug) });\n}\n\nconst MARKET_ADS = 40;\nconst MARKET_FALLBACK_ADS = 15;\n/**\n * The most a market search may hold the brief: a followed brands' browse answers in ~2 s, a short\n * library query in ~8 s (dev, Oct 2026). The market is context, not a step: a slow library leaves it out.\n */\nconst MARKET_SEARCH_MS = 12_000;\n\n/** What the market's ads already say: the brands the company follows, else the whole library. */\nasync function readMarket(root: string): Promise<MarketMap | null> {\n const company = await readCompanyReading(root);\n // What a library files the company under, in English; its own words when no model read it.\n const query = company?.category ?? company?.sells;\n if (!query) return null;\n const search = (body: Record<string, unknown>) =>\n apiPost<ScopedWinnersSearchResponse>(\"/api/ad-library/winners/search\", body, {\n timeoutMs: MARKET_SEARCH_MS,\n }).catch((err: unknown) => {\n if (err instanceof ApiError && err.code === \"TIMEOUT\") {\n throw new Error(\"the ad library did not answer in time, so competitors' claims are left out\");\n }\n throw err;\n });\n // The followed brands' best ads, browsed (no query, so no relevance judge), and the library's ads\n // for what the company sells, asked at once: the second answers in ~8 s, after the first's ~2 s.\n const [followed, all] = await Promise.allSettled([\n search(buildSearchBody({ scope: \"followed\", platform: \"meta\", limit: MARKET_ADS, maxPerAdvertiser: 8 })),\n search(buildSearchBody({ query, scope: \"all\", platform: \"meta\", limit: MARKET_FALLBACK_ADS, maxPerAdvertiser: 3 })),\n ]);\n if (followed.status === \"fulfilled\" && followed.value.results.length > 0)\n return marketMap(followed.value.results, \"followed\");\n if (all.status === \"rejected\") throw all.reason;\n return all.value.results.length > 0 ? marketMap(all.value.results, \"library\") : null;\n}\n\ntype MetaAccount = { externalId?: unknown; id?: unknown };\n\nasync function metaAccountId(given: string | undefined): Promise<string | null> {\n if (given) return given.startsWith(\"act_\") ? given : `act_${given}`;\n const named = getEnv().BAKER_META_AD_ACCOUNT_ID;\n if (named) return `act_${named.replace(/^act_/, \"\")}`;\n const accounts = await apiGet<MetaAccount[]>(\"/api/ads/meta/accounts\");\n const ids = accounts.flatMap((a) => {\n const id = a.externalId ?? a.id;\n return typeof id === \"string\" && id ? [id] : [];\n });\n if (ids.length !== 1) return null;\n const id = ids[0] as string;\n return id.startsWith(\"act_\") ? id : `act_${id}`;\n}\n\nasync function readBottleneck(accountId: string): Promise<Bottleneck> {\n const rows = await apiPost<Array<Record<string, unknown>>>(\"/api/ads/meta/insights\", {\n object: accountId,\n level: \"account\",\n fields: [\"impressions\", \"inline_link_clicks\", \"actions\", \"spend\"],\n actionBreakdowns: [\"action_type\"],\n datePreset: \"last_30d\",\n limit: 10,\n });\n const totals = { impressions: 0, linkClicks: 0, results: 0 };\n for (const row of rows) {\n totals.impressions += Number(row.impressions ?? 0);\n totals.linkClicks += Number(row.inline_link_clicks ?? 0);\n totals.results += resultsOf(row.actions);\n }\n return diagnoseBottleneck(totals);\n}\n\nfunction leanCreative(c: CreativePerformance) {\n return {\n creative: c.slug ?? c.title,\n costPerResult: c.costPerResult,\n ...(c.currency ? { currency: c.currency } : {}),\n ctr: c.ctr,\n fatigue: c.fatigue,\n ...(c.definition?.idea ? { idea: c.definition.idea } : {}),\n ...(c.definition?.angle ? { angle: c.definition.angle } : {}),\n };\n}\n\n/** The own-account read: the best creatives by cost per result, and the ones to replace. Pure. */\nexport function whatWorks(creatives: readonly CreativePerformance[], limit = 3) {\n const priced = creatives.filter((c) => c.costPerResult !== null && c.costPerResult > 0);\n const best = [...priced].sort((a, b) => (a.costPerResult ?? 0) - (b.costPerResult ?? 0)).slice(0, limit);\n const tired = creatives.filter((c) => c.fatigue === \"fatigued\" || c.fatigue === \"dead\");\n return { best: best.map(leanCreative), replace: tired.map(leanCreative) };\n}\n\ntype BriefParts = {\n company: \"ready\" | \"missing\";\n customers: CustomerTruth;\n bottleneck: Section<Bottleneck> | null;\n ideasToBuild: number;\n buildNext: string[];\n approved: number;\n rejected: number;\n market?: MarketMap | null;\n /** What earlier ideas did once their ads ran (`baker creatives learn`). */\n learned: { winners: LearnedIdea[]; failed: LearnedIdea[] };\n /** The customer research this brief ran itself, few quotes being on file. */\n researched?: { written: number };\n /** How many of the company's rules hold for its ads (`rules`). */\n rules?: number;\n};\n\ntype LearnedIdea = { idea: string; message: string };\n\n/** A market whose ads mostly speak at stage s3 or later has heard the plain claim already. */\nconst HEARD_IT_ALL = /^s[345]/;\n\n/** What the brief says about customer quotes: what its own research found, or that it is needed. Pure. */\nfunction customersHint(parts: Pick<BriefParts, \"customers\" | \"researched\">): string | null {\n if (parts.researched) {\n return parts.researched.written > 0\n ? `${parts.researched.written} customer quotes were just gathered from reviews and Reddit and are in \\`customers\\`: cite them by id in each idea's \\`evidence\\`.`\n : \"Customer research found nothing to keep: ideas go in as explore bets (an empty `evidence` list). Never research customers again in this turn.\";\n }\n if (!parts.customers.thin) return null;\n return `Only ${parts.customers.observed} customer quotes on file: run \\`baker research customers\\` now, before writing ideas, so they stand on what customers said. It gathers reviews, Reddit and the web and writes the quotes with their sources in about a minute; never a subagent or web searches of your own for this.`;\n}\n\n/** The one or two next steps the brief points to. Pure. */\nexport function briefHints(parts: BriefParts): string[] {\n const hints: string[] = [];\n if (parts.company === \"missing\") {\n hints.push(\"COMPANY.md is empty: run /company-discovery first, or every idea is a guess about the business.\");\n }\n const customers = customersHint(parts);\n if (customers) hints.push(customers);\n if (parts.rules) {\n hints.push(\n `Write every idea and every ad within the ${parts.rules} rules in \\`rules\\`: an ad saying words one bans (\\`bans\\`) is refused before it renders, and every finished ad is checked against the ones a person taught. When the person asks for something a rule forbids, do it and record why in the ad's prompt.json (\\`\"waive\": [{\"rule\": \"<id>\", \"why\": \"<their ask>\"}]\\`).`,\n );\n }\n if (parts.bottleneck && isAvailable(parts.bottleneck) && parts.bottleneck.verdict === \"after_click\") {\n hints.push(\"The account loses people after the click: tell the person, and make one idea an offer idea.\");\n }\n if (parts.market?.sophistication && HEARD_IT_ALL.test(parts.market.sophistication)) {\n hints.push(\n `This market has heard the plain claim (sophistication ${parts.market.sophistication}): lead with how it works (a mechanism), proof, or an angle nobody uses, never a bigger claim.`,\n );\n }\n // Every claim, not only the ones several brands share word for word: the same claim is often worded apart.\n // A claim kept after testing is one a competitor proved, not only launched: labelled, it leads.\n const claims =\n parts.market?.saying.map((s) =>\n s.kept_brands ? `\"${s.angle}\" (kept after testing by ${s.kept_brands})` : `\"${s.angle}\"`,\n ) ?? [];\n if (claims.length > 0) {\n hints.push(\n `Competitors already say ${claims.join(\", \")}. A message one of them could also run is not a new idea, however it is worded: say what only we have (the offer, a proof, a customer's words) or how it works.`,\n );\n }\n for (const won of parts.learned.winners) {\n hints.push(\n `${won.idea} won in the account (\"${won.message}\"): build on it first, the same message in a new format or for a new persona.`,\n );\n }\n if (parts.learned.failed.length > 0) {\n const lost = parts.learned.failed.map((f) => `\"${f.message}\"`).join(\", \");\n hints.push(`Never repeat a message that lost in the account: ${lost}.`);\n }\n if (parts.rejected > parts.approved && parts.rejected > 0) {\n hints.push(\n \"Reviewers rejected more than they approved: read `taste.notes` (their own words) and keep every idea clear of each.\",\n );\n }\n if (parts.buildNext.length > 0) {\n hints.push(`Ideas ready to build: ${parts.buildNext.join(\", \")} (\\`baker creatives make <idea>\\`).`);\n } else {\n hints.push(\n `Write 4-8 ideas in src/creatives/_ideas/<idea>.md (who, message, evidence, awareness, angle, format, job, why), then \\`baker creatives ideas\\`. awareness: ${AWARENESS_STAGES.join(\" | \")}. angle: ${IDEA_ANGLES.join(\", \")}. format: ${IDEA_FORMATS.join(\", \")}.`,\n );\n }\n return hints;\n}\n\ntype BriefArgs = { adset?: string; accountId?: string; full: boolean };\n\nasync function readBrief(root: string, args: BriefArgs) {\n // Every read starts at once: the account's diagnosis waits only for the account, never for the rest.\n const account = metaAccountId(args.accountId).catch(() => null);\n const [company, offers, viewer, insights, ideas, performance, feedback, accountId, bottleneck, market, rules, specs] =\n await Promise.all([\n companyStatus(root),\n readOffers(root),\n readViewer(root, args.adset),\n readInsights(root),\n ideasReport(root),\n section(async () =>\n withDefinitions(await apiPost<CreativesPerformanceResponse>(\"/api/creatives/performance\", {}), (slug) =>\n readDefinition(root, slug),\n ),\n ),\n section(() => apiPost<CreativesFeedbackResponse>(\"/api/creatives/feedback\", {})),\n account,\n account.then((id) => (id ? section(() => readBottleneck(id)) : null)),\n section(() => readMarket(root)),\n readAllRules(root).then((all) => selectRules(all, {})),\n readCreativeSpecs(root),\n ]);\n return {\n company,\n offers,\n viewer,\n insights,\n ideas,\n performance,\n feedback,\n accountId,\n bottleneck,\n market,\n rules,\n specs,\n };\n}\n\ntype Brief = Awaited<ReturnType<typeof readBrief>>;\n\nfunction accountPart(brief: Brief, full: boolean) {\n if (!brief.accountId) {\n return { unavailable: \"no single Meta ad account connected: pass --account-id act_<id>, or work from customers\" };\n }\n const works = isAvailable(brief.performance)\n ? whatWorks(brief.performance.data.creatives, full ? 10 : 3)\n : { creatives: brief.performance };\n return { id: brief.accountId, bottleneck: brief.bottleneck, ...works };\n}\n\nfunction marketPart(market: Section<MarketMap | null>, full: boolean) {\n if (!isAvailable(market)) return market;\n if (!market) return { unavailable: \"no library ads match what COMPANY.md says the company sells\" };\n if (full) return market;\n const { containers: _containers, ...lean } = market;\n return lean;\n}\n\n/** What the company's reviewers said: the counts, and each distinct thing they said in their own words. Pure. */\nexport function tastePart(feedback: CreativesFeedbackResponse) {\n const { summary, notes } = feedback.data;\n return {\n approved: summary.approved,\n rejected: summary.rejected,\n topRejectionReasons: summary.topRejectionReasons.slice(0, 3).map((r) => r.label),\n ...(notes && notes.length > 0 ? { notes: notes.map((n) => ({ creative: n.creative, note: n.note })) } : {}),\n };\n}\n\n/** The brief as the agent reads it, and the hints that point at the next step. */\nexport function briefEnvelope(brief: Brief, full: boolean, researched?: { written: number }) {\n const customers = customerTruth(brief.insights);\n const summary = isAvailable(brief.feedback) ? brief.feedback.data.summary : null;\n const next = buildNext(brief.ideas.ideas);\n const toBuild = brief.ideas.ideas.filter((i) => i.status === \"idea\").length;\n const withStatus = (status: string) =>\n brief.ideas.ideas.filter((i) => i.status === status).map((i) => ({ idea: i.id, message: i.message }));\n const learned = { winners: withStatus(\"winner\"), failed: withStatus(\"failed\") };\n return {\n ok: true as const,\n data: {\n company: brief.company,\n viewer: { temperature: brief.viewer.temperature, knows: brief.viewer.knows, source: brief.viewer.source },\n offers: brief.offers,\n account: accountPart(brief, full),\n taste: isAvailable(brief.feedback) ? tastePart(brief.feedback) : brief.feedback,\n customers: full\n ? { ...customers, quotes: brief.insights.map((i) => ({ id: i.id, type: i.type, quote: i.quote })) }\n : customers,\n market: marketPart(brief.market, full),\n rules: rulesView(brief.rules, { full }),\n ideas: {\n to_build: toBuild,\n built: brief.ideas.ideas.length - toBuild,\n build_next: next,\n ...(learned.winners.length > 0 ? { winners: learned.winners } : {}),\n ...(learned.failed.length > 0 ? { failed: learned.failed } : {}),\n },\n },\n hints: briefHints({\n company: brief.company,\n customers,\n bottleneck: brief.bottleneck,\n ideasToBuild: toBuild,\n buildNext: next,\n approved: summary?.approved ?? 0,\n rejected: summary?.rejected ?? 0,\n market: isAvailable(brief.market) ? brief.market : null,\n learned,\n ...(researched ? { researched } : {}),\n rules: brief.rules.length,\n }).concat(rulesHints(brief.rules, waiverCounts(brief.specs))),\n };\n}\n\nexport const briefCommand = defineCommand({\n meta: { name: \"brief\", description: DESCRIPTION },\n args: ARGS,\n async run({ args }) {\n const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();\n const full = args.full === true;\n // Few quotes on file: the research runs alongside the reads, never left to the agent (dev, Oct\n // 2026: told to run it first, the chat agent skipped it and every idea went in as an explore bet).\n const thin = args.research !== false && customerTruth(await readInsights(root)).thin;\n const research = thin ? researchCustomers(root, {}).catch(() => null) : null;\n const brief = await readBrief(root, {\n ...(typeof args.adset === \"string\" && args.adset ? { adset: args.adset } : {}),\n ...(typeof args[\"account-id\"] === \"string\" && args[\"account-id\"] ? { accountId: args[\"account-id\"] } : {}),\n full,\n });\n const found = research ? await research : null;\n const written = found?.shown.length ?? 0;\n const insights = written > 0 ? await readInsights(root) : brief.insights;\n writeJson(briefEnvelope({ ...brief, insights }, full, research ? { written } : undefined));\n },\n});\n","/**\n * The judgments `baker creatives brief` makes from the numbers, so the agent reads a verdict\n * instead of applying thresholds from prose. Pure.\n */\nimport { AWARENESS_STAGES, type Insight } from \"./ideas-model.ts\";\n\n/** Below this many impressions the account has not said anything yet. */\nconst MIN_IMPRESSIONS = 1000;\n/** meta-ads-playbook 17-testing-methodology § \"Bottleneck identification\". */\nconst LOW_CTR = 1.5;\nconst LOW_CVR = 1;\n\nexport type Bottleneck = {\n verdict: \"hook\" | \"after_click\" | \"none\" | \"too_little_data\";\n ctr: number | null;\n cvr: number | null;\n why: string;\n};\n\nconst round = (n: number) => Math.round(n * 100) / 100;\n\n/** Where the account loses people: before the click (the hook), after it (page or offer), or nowhere. */\nexport function diagnoseBottleneck(totals: { impressions: number; linkClicks: number; results: number }): Bottleneck {\n const ctr = totals.impressions > 0 ? round((totals.linkClicks / totals.impressions) * 100) : null;\n const cvr = totals.linkClicks > 0 ? round((totals.results / totals.linkClicks) * 100) : null;\n if (totals.impressions < MIN_IMPRESSIONS || ctr === null) {\n return { verdict: \"too_little_data\", ctr, cvr, why: \"Too little delivery in the last 30 days to call it.\" };\n }\n if (ctr < LOW_CTR) {\n return {\n verdict: \"hook\",\n ctr,\n cvr,\n why: `Link click-through ${ctr}% (under ${LOW_CTR}%): people scroll past. New ideas and hooks are the fix.`,\n };\n }\n if (cvr !== null && cvr < LOW_CVR) {\n return {\n verdict: \"after_click\",\n ctr,\n cvr,\n why: `People click (${ctr}%) but only ${cvr}% act: the page or the offer loses them, and a new ad will not fix that. Say so, make the ads' promise match the page, and make one idea an offer idea.`,\n };\n }\n return {\n verdict: \"none\",\n ctr,\n cvr,\n why: `Click-through ${ctr}% and ${cvr ?? 0}% of clicks act: the ads work. Build on the winners first.`,\n };\n}\n\nconst CONVERSION_ACTION =\n /^(lead|purchase|complete_registration|submit_application|schedule|contact|start_trial|subscribe|offsite_conversion\\.|onsite_conversion\\.lead|onsite_web_lead|omni_purchase|omni_complete_registration)/;\n\n/** The conversions in a Meta `actions[]` list, engagement left out. */\nexport function resultsOf(actions: unknown): number {\n if (!Array.isArray(actions)) return 0;\n let total = 0;\n for (const action of actions) {\n const type = (action as { action_type?: unknown })?.action_type;\n const value = Number((action as { value?: unknown })?.value ?? 0);\n if (typeof type === \"string\" && CONVERSION_ACTION.test(type) && Number.isFinite(value)) total += value;\n }\n return total;\n}\n\nconst MIN_OBSERVED = 5;\nconst MAX_QUOTES = 6;\n\nexport type CustomerTruth = {\n total: number;\n observed: number;\n thin: boolean;\n byType: Record<string, number>;\n /** One observed quote per kind of truth, the strongest material for ideas and hooks. */\n quotes: Array<{ id: string; type: string; quote: string }>;\n};\n\nexport function customerTruth(insights: readonly Insight[]): CustomerTruth {\n const byType: Record<string, number> = {};\n for (const insight of insights) byType[insight.type] = (byType[insight.type] ?? 0) + 1;\n const observed = insights.filter((i) => i.status === \"observed\");\n const seen = new Set<string>();\n const quotes: CustomerTruth[\"quotes\"] = [];\n for (const insight of observed) {\n if (seen.has(insight.type) || quotes.length >= MAX_QUOTES) continue;\n seen.add(insight.type);\n quotes.push({\n id: insight.id,\n type: insight.type,\n quote: insight.quote.length > 140 ? `${insight.quote.slice(0, 137)}...` : insight.quote,\n });\n }\n return { total: insights.length, observed: observed.length, thin: observed.length < MIN_OBSERVED, byType, quotes };\n}\n\n/**\n * One library ad as the market map reads it: whose it is, what its DNA says,\n * and where it is in its life (`stage`, and `survived_test` when it is the\n * version its brand kept after testing).\n */\nexport type MarketAd = {\n advertiser: string | null;\n stage?: string | null;\n survived_test?: boolean | null;\n dna: {\n angle?: string | null;\n awareness_stage?: string | null;\n container?: string | null;\n sophistication_stage?: string | null;\n };\n};\n\nexport type MarketMap = {\n source: \"followed\" | \"library\";\n ads: number;\n brands: number;\n /** The stage most of the market's ads speak at: s1 first to say it … s5 tired of claims. */\n sophistication: string | null;\n /**\n * What the market already says: an idea that says the same is not a new idea. What competitors\n * kept after testing leads (`kept_brands`: how many brands kept an ad saying it), then most brands.\n */\n saying: Array<{ angle: string; brands: number; kept_brands?: number }>;\n /** How many of these ads competitors kept after testing; absent when none (or an older library). */\n kept_ads?: number;\n awareness: Record<string, number>;\n containers: Record<string, number>;\n /** Awareness stages none of these ads speaks to. */\n unspoken: string[];\n};\n\nconst MAX_SAYING = 6;\nconst KEPT_STAGES = new Set([\"proven\", \"evergreen\"]);\n\n/** What a competitor kept after testing: the version a test kept, or an ad running past its test window. */\nexport function keptAfterTesting(ad: Pick<MarketAd, \"stage\" | \"survived_test\">): boolean {\n return ad.survived_test === true || KEPT_STAGES.has(ad.stage ?? \"\");\n}\n/** Two angles sharing this share of their content words say the same thing. */\nconst SAME_ANGLE = 0.4;\n\n/** An angle's content words: 4+ letters, a plural folded to its singular. */\nfunction angleWords(angle: string): Set<string> {\n return new Set(\n angle\n .toLowerCase()\n .split(/[^\\p{L}]+/u)\n .filter((w) => w.length >= 4 && w !== \"your\" && w !== \"with\")\n .map((w) => w.replace(/s$/, \"\")),\n );\n}\n\n/** Shared words over all words (Jaccard). */\nfunction overlap(a: ReadonlySet<string>, b: ReadonlySet<string>): number {\n const shared = [...a].filter((w) => b.has(w)).length;\n const all = new Set([...a, ...b]).size;\n return all === 0 ? 0 : shared / all;\n}\n\nfunction tally(values: ReadonlyArray<string | null | undefined>): Record<string, number> {\n const counts: Record<string, number> = {};\n for (const value of values) if (value) counts[value] = (counts[value] ?? 0) + 1;\n return counts;\n}\n\n/** What the market's ads already say and to whom, from a library search over it. Pure. */\nexport function marketMap(ads: readonly MarketAd[], source: MarketMap[\"source\"]): MarketMap {\n const groups: Array<{ angle: string; words: Set<string>; brands: Set<string>; kept: Set<string> }> = [];\n for (const ad of ads) {\n const angle = ad.dna.angle?.trim();\n if (!angle) continue;\n const words = angleWords(angle);\n const brand = ad.advertiser ?? \"?\";\n let group = groups.find((g) => overlap(g.words, words) >= SAME_ANGLE);\n if (!group) {\n group = { angle, words, brands: new Set(), kept: new Set() };\n groups.push(group);\n }\n group.brands.add(brand);\n if (keptAfterTesting(ad)) group.kept.add(brand);\n }\n const saying = groups\n .map((g) => ({ angle: g.angle, brands: g.brands.size, ...(g.kept.size > 0 ? { kept_brands: g.kept.size } : {}) }))\n .sort((a, b) => (b.kept_brands ?? 0) - (a.kept_brands ?? 0) || b.brands - a.brands)\n .slice(0, MAX_SAYING);\n const keptAds = ads.filter(keptAfterTesting).length;\n const stages = tally(ads.map((a) => a.dna.sophistication_stage));\n const sophistication = Object.entries(stages).sort((a, b) => b[1] - a[1])[0]?.[0] ?? null;\n const awareness = tally(ads.map((a) => a.dna.awareness_stage));\n return {\n source,\n ads: ads.length,\n brands: new Set(ads.map((a) => a.advertiser ?? \"?\")).size,\n sophistication,\n saying,\n awareness,\n containers: tally(ads.map((a) => a.dna.container)),\n unspoken: AWARENESS_STAGES.filter((stage) => !awareness[stage]),\n ...(keptAds > 0 ? { kept_ads: keptAds } : {}),\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,SAAS,oBAAoB;AAC7B,SAAS,SAAS,gBAAgB;AAClC,OAAO,UAAU;AAGjB,SAAS,qBAAqB;;;ACJ9B,IAAM,kBAAkB;AAExB,IAAM,UAAU;AAChB,IAAM,UAAU;AAShB,IAAM,QAAQ,CAAC,MAAc,KAAK,MAAM,IAAI,GAAG,IAAI;AAG5C,SAAS,mBAAmB,QAAkF;AACnH,QAAM,MAAM,OAAO,cAAc,IAAI,MAAO,OAAO,aAAa,OAAO,cAAe,GAAG,IAAI;AAC7F,QAAM,MAAM,OAAO,aAAa,IAAI,MAAO,OAAO,UAAU,OAAO,aAAc,GAAG,IAAI;AACxF,MAAI,OAAO,cAAc,mBAAmB,QAAQ,MAAM;AACxD,WAAO,EAAE,SAAS,mBAAmB,KAAK,KAAK,KAAK,sDAAsD;AAAA,EAC5G;AACA,MAAI,MAAM,SAAS;AACjB,WAAO;AAAA,MACL,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA,KAAK,sBAAsB,GAAG,YAAY,OAAO;AAAA,IACnD;AAAA,EACF;AACA,MAAI,QAAQ,QAAQ,MAAM,SAAS;AACjC,WAAO;AAAA,MACL,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA,KAAK,iBAAiB,GAAG,eAAe,GAAG;AAAA,IAC7C;AAAA,EACF;AACA,SAAO;AAAA,IACL,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,KAAK,iBAAiB,GAAG,SAAS,OAAO,CAAC;AAAA,EAC5C;AACF;AAEA,IAAM,oBACJ;AAGK,SAAS,UAAU,SAA0B;AAClD,MAAI,CAAC,MAAM,QAAQ,OAAO,EAAG,QAAO;AACpC,MAAI,QAAQ;AACZ,aAAW,UAAU,SAAS;AAC5B,UAAM,OAAQ,QAAsC;AACpD,UAAM,QAAQ,OAAQ,QAAgC,SAAS,CAAC;AAChE,QAAI,OAAO,SAAS,YAAY,kBAAkB,KAAK,IAAI,KAAK,OAAO,SAAS,KAAK,EAAG,UAAS;AAAA,EACnG;AACA,SAAO;AACT;AAEA,IAAM,eAAe;AACrB,IAAM,aAAa;AAWZ,SAAS,cAAc,UAA6C;AACzE,QAAM,SAAiC,CAAC;AACxC,aAAW,WAAW,SAAU,QAAO,QAAQ,IAAI,KAAK,OAAO,QAAQ,IAAI,KAAK,KAAK;AACrF,QAAM,WAAW,SAAS,OAAO,CAAC,MAAM,EAAE,WAAW,UAAU;AAC/D,QAAM,OAAO,oBAAI,IAAY;AAC7B,QAAM,SAAkC,CAAC;AACzC,aAAW,WAAW,UAAU;AAC9B,QAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,OAAO,UAAU,WAAY;AAC3D,SAAK,IAAI,QAAQ,IAAI;AACrB,WAAO,KAAK;AAAA,MACV,IAAI,QAAQ;AAAA,MACZ,MAAM,QAAQ;AAAA,MACd,OAAO,QAAQ,MAAM,SAAS,MAAM,GAAG,QAAQ,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,QAAQ;AAAA,IACpF,CAAC;AAAA,EACH;AACA,SAAO,EAAE,OAAO,SAAS,QAAQ,UAAU,SAAS,QAAQ,MAAM,SAAS,SAAS,cAAc,QAAQ,OAAO;AACnH;AAsCA,IAAM,aAAa;AACnB,IAAM,cAAc,oBAAI,IAAI,CAAC,UAAU,WAAW,CAAC;AAG5C,SAAS,iBAAiB,IAAwD;AACvF,SAAO,GAAG,kBAAkB,QAAQ,YAAY,IAAI,GAAG,SAAS,EAAE;AACpE;AAEA,IAAM,aAAa;AAGnB,SAAS,WAAW,OAA4B;AAC9C,SAAO,IAAI;AAAA,IACT,MACG,YAAY,EACZ,MAAM,YAAY,EAClB,OAAO,CAAC,MAAM,EAAE,UAAU,KAAK,MAAM,UAAU,MAAM,MAAM,EAC3D,IAAI,CAAC,MAAM,EAAE,QAAQ,MAAM,EAAE,CAAC;AAAA,EACnC;AACF;AAGA,SAAS,QAAQ,GAAwB,GAAgC;AACvE,QAAM,SAAS,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE;AAC9C,QAAM,OAAM,oBAAI,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAE;AAClC,SAAO,QAAQ,IAAI,IAAI,SAAS;AAClC;AAEA,SAAS,MAAM,QAA0E;AACvF,QAAM,SAAiC,CAAC;AACxC,aAAW,SAAS,OAAQ,KAAI,MAAO,QAAO,KAAK,KAAK,OAAO,KAAK,KAAK,KAAK;AAC9E,SAAO;AACT;AAGO,SAAS,UAAU,KAA0B,QAAwC;AAC1F,QAAM,SAA+F,CAAC;AACtG,aAAW,MAAM,KAAK;AACpB,UAAM,QAAQ,GAAG,IAAI,OAAO,KAAK;AACjC,QAAI,CAAC,MAAO;AACZ,UAAM,QAAQ,WAAW,KAAK;AAC9B,UAAM,QAAQ,GAAG,cAAc;AAC/B,QAAI,QAAQ,OAAO,KAAK,CAAC,MAAM,QAAQ,EAAE,OAAO,KAAK,KAAK,UAAU;AACpE,QAAI,CAAC,OAAO;AACV,cAAQ,EAAE,OAAO,OAAO,QAAQ,oBAAI,IAAI,GAAG,MAAM,oBAAI,IAAI,EAAE;AAC3D,aAAO,KAAK,KAAK;AAAA,IACnB;AACA,UAAM,OAAO,IAAI,KAAK;AACtB,QAAI,iBAAiB,EAAE,EAAG,OAAM,KAAK,IAAI,KAAK;AAAA,EAChD;AACA,QAAM,SAAS,OACZ,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,QAAQ,EAAE,OAAO,MAAM,GAAI,EAAE,KAAK,OAAO,IAAI,EAAE,aAAa,EAAE,KAAK,KAAK,IAAI,CAAC,EAAG,EAAE,EAChH,KAAK,CAAC,GAAG,OAAO,EAAE,eAAe,MAAM,EAAE,eAAe,MAAM,EAAE,SAAS,EAAE,MAAM,EACjF,MAAM,GAAG,UAAU;AACtB,QAAM,UAAU,IAAI,OAAO,gBAAgB,EAAE;AAC7C,QAAM,SAAS,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,oBAAoB,CAAC;AAC/D,QAAM,iBAAiB,OAAO,QAAQ,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;AACrF,QAAM,YAAY,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,eAAe,CAAC;AAC7D,SAAO;AAAA,IACL;AAAA,IACA,KAAK,IAAI;AAAA,IACT,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,cAAc,GAAG,CAAC,EAAE;AAAA,IACrD;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,SAAS,CAAC;AAAA,IACjD,UAAU,iBAAiB,OAAO,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC;AAAA,IAC9D,GAAI,UAAU,IAAI,EAAE,UAAU,QAAQ,IAAI,CAAC;AAAA,EAC7C;AACF;;;ADnKA,IAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQpB,IAAM,OAAO;AAAA,EACX,OAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAAA,EACA,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,IACV,SAAS;AAAA,EACX;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,IACV,SAAS;AAAA,EACX;AACF;AAEA,eAAe,EAAE,SAAS,mBAAmB,aAAa,aAAa,MAAM,KAAK,CAAC;AAInF,IAAM,cAAc,CAAC,SAAkB;AAAA,EACrC,aAAa,eAAe,QAAQ,IAAI,QAAQ,MAAM,GAAG,GAAG,IAAI;AAClE;AAEA,eAAe,QAAW,MAA6C;AACrE,MAAI;AACF,WAAO,MAAM,KAAK;AAAA,EACpB,SAAS,KAAK;AACZ,WAAO,YAAY,GAAG;AAAA,EACxB;AACF;AAEA,SAAS,YAAe,OAA+B;AACrD,SAAO,EAAE,UAAU,QAAQ,OAAO,UAAU,YAAY,iBAAiB;AAC3E;AAEA,eAAe,cAAc,MAA4C;AACvE,QAAM,MAAM,MAAM,SAAS,KAAK,KAAK,MAAM,YAAY,GAAG,MAAM,EAAE,MAAM,MAAM,EAAE;AAChF,SAAO,IAAI,KAAK,KAAK,CAAC,6BAA6B,KAAK,GAAG,IAAI,UAAU;AAC3E;AAEA,eAAe,WAAW,MAAiC;AACzD,QAAM,MAAM,KAAK,KAAK,MAAM,OAAO,WAAW,QAAQ;AACtD,QAAM,SAAU,MAAM,QAAQ,KAAK,EAAE,WAAW,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC,CAAC,GAAgB;AAAA,IAAO,CAAC,MAC5F,EAAE,SAAS,KAAK;AAAA,EAClB;AACA,SAAO,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,SAAS,EAAE,CAAC,EAAE,KAAK;AACvD;AAEA,SAAS,eAAe,MAAc,MAA6B;AACjE,MAAI;AACF,WAAO,aAAa,KAAK,KAAK,MAAM,OAAO,aAAa,MAAM,gBAAgB,GAAG,MAAM;AAAA,EACzF,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,eAAe,WAAW,MAAc,OAAmD;AACzF,QAAM,UAAU,kBAAkB,IAAI;AACtC,MAAI,OAAO;AACT,UAAM,OAAO,MAAM,QAAQ,YAAY,KAAK,EAAE,MAAM,MAAM,IAAI;AAC9D,QAAI,KAAM,QAAO;AAAA,EACnB;AACA,QAAM,WAAW,MAAM,QAAQ,SAAS,EAAE,MAAM,MAAM,CAAC,CAAC;AACxD,SAAO,oBAAoB,EAAE,UAAU,SAAS,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC9F;AAEA,IAAM,aAAa;AACnB,IAAM,sBAAsB;AAK5B,IAAM,mBAAmB;AAGzB,eAAe,WAAW,MAAyC;AACjE,QAAM,UAAU,MAAM,mBAAmB,IAAI;AAE7C,QAAM,QAAQ,SAAS,YAAY,SAAS;AAC5C,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,SAAS,CAAC,SACd,QAAqC,kCAAkC,MAAM;AAAA,IAC3E,WAAW;AAAA,EACb,CAAC,EAAE,MAAM,CAAC,QAAiB;AACzB,QAAI,eAAe,YAAY,IAAI,SAAS,WAAW;AACrD,YAAM,IAAI,MAAM,4EAA4E;AAAA,IAC9F;AACA,UAAM;AAAA,EACR,CAAC;AAGH,QAAM,CAAC,UAAU,GAAG,IAAI,MAAM,QAAQ,WAAW;AAAA,IAC/C,OAAO,gBAAgB,EAAE,OAAO,YAAY,UAAU,QAAQ,OAAO,YAAY,kBAAkB,EAAE,CAAC,CAAC;AAAA,IACvG,OAAO,gBAAgB,EAAE,OAAO,OAAO,OAAO,UAAU,QAAQ,OAAO,qBAAqB,kBAAkB,EAAE,CAAC,CAAC;AAAA,EACpH,CAAC;AACD,MAAI,SAAS,WAAW,eAAe,SAAS,MAAM,QAAQ,SAAS;AACrE,WAAO,UAAU,SAAS,MAAM,SAAS,UAAU;AACrD,MAAI,IAAI,WAAW,WAAY,OAAM,IAAI;AACzC,SAAO,IAAI,MAAM,QAAQ,SAAS,IAAI,UAAU,IAAI,MAAM,SAAS,SAAS,IAAI;AAClF;AAIA,eAAe,cAAc,OAAmD;AAC9E,MAAI,MAAO,QAAO,MAAM,WAAW,MAAM,IAAI,QAAQ,OAAO,KAAK;AACjE,QAAM,QAAQ,OAAO,EAAE;AACvB,MAAI,MAAO,QAAO,OAAO,MAAM,QAAQ,SAAS,EAAE,CAAC;AACnD,QAAM,WAAW,MAAM,OAAsB,wBAAwB;AACrE,QAAM,MAAM,SAAS,QAAQ,CAAC,MAAM;AAClC,UAAMA,MAAK,EAAE,cAAc,EAAE;AAC7B,WAAO,OAAOA,QAAO,YAAYA,MAAK,CAACA,GAAE,IAAI,CAAC;AAAA,EAChD,CAAC;AACD,MAAI,IAAI,WAAW,EAAG,QAAO;AAC7B,QAAM,KAAK,IAAI,CAAC;AAChB,SAAO,GAAG,WAAW,MAAM,IAAI,KAAK,OAAO,EAAE;AAC/C;AAEA,eAAe,eAAe,WAAwC;AACpE,QAAM,OAAO,MAAM,QAAwC,0BAA0B;AAAA,IACnF,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,QAAQ,CAAC,eAAe,sBAAsB,WAAW,OAAO;AAAA,IAChE,kBAAkB,CAAC,aAAa;AAAA,IAChC,YAAY;AAAA,IACZ,OAAO;AAAA,EACT,CAAC;AACD,QAAM,SAAS,EAAE,aAAa,GAAG,YAAY,GAAG,SAAS,EAAE;AAC3D,aAAW,OAAO,MAAM;AACtB,WAAO,eAAe,OAAO,IAAI,eAAe,CAAC;AACjD,WAAO,cAAc,OAAO,IAAI,sBAAsB,CAAC;AACvD,WAAO,WAAW,UAAU,IAAI,OAAO;AAAA,EACzC;AACA,SAAO,mBAAmB,MAAM;AAClC;AAEA,SAAS,aAAa,GAAwB;AAC5C,SAAO;AAAA,IACL,UAAU,EAAE,QAAQ,EAAE;AAAA,IACtB,eAAe,EAAE;AAAA,IACjB,GAAI,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,IAAI,CAAC;AAAA,IAC7C,KAAK,EAAE;AAAA,IACP,SAAS,EAAE;AAAA,IACX,GAAI,EAAE,YAAY,OAAO,EAAE,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;AAAA,IACxD,GAAI,EAAE,YAAY,QAAQ,EAAE,OAAO,EAAE,WAAW,MAAM,IAAI,CAAC;AAAA,EAC7D;AACF;AAGO,SAAS,UAAU,WAA2C,QAAQ,GAAG;AAC9E,QAAM,SAAS,UAAU,OAAO,CAAC,MAAM,EAAE,kBAAkB,QAAQ,EAAE,gBAAgB,CAAC;AACtF,QAAM,OAAO,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,GAAG,OAAO,EAAE,iBAAiB,MAAM,EAAE,iBAAiB,EAAE,EAAE,MAAM,GAAG,KAAK;AACvG,QAAM,QAAQ,UAAU,OAAO,CAAC,MAAM,EAAE,YAAY,cAAc,EAAE,YAAY,MAAM;AACtF,SAAO,EAAE,MAAM,KAAK,IAAI,YAAY,GAAG,SAAS,MAAM,IAAI,YAAY,EAAE;AAC1E;AAsBA,IAAM,eAAe;AAGrB,SAAS,cAAc,OAAoE;AACzF,MAAI,MAAM,YAAY;AACpB,WAAO,MAAM,WAAW,UAAU,IAC9B,GAAG,MAAM,WAAW,OAAO,uIAC3B;AAAA,EACN;AACA,MAAI,CAAC,MAAM,UAAU,KAAM,QAAO;AAClC,SAAO,QAAQ,MAAM,UAAU,QAAQ;AACzC;AAGO,SAAS,WAAW,OAA6B;AACtD,QAAM,QAAkB,CAAC;AACzB,MAAI,MAAM,YAAY,WAAW;AAC/B,UAAM,KAAK,iGAAiG;AAAA,EAC9G;AACA,QAAM,YAAY,cAAc,KAAK;AACrC,MAAI,UAAW,OAAM,KAAK,SAAS;AACnC,MAAI,MAAM,OAAO;AACf,UAAM;AAAA,MACJ,4CAA4C,MAAM,KAAK;AAAA,IACzD;AAAA,EACF;AACA,MAAI,MAAM,cAAc,YAAY,MAAM,UAAU,KAAK,MAAM,WAAW,YAAY,eAAe;AACnG,UAAM,KAAK,6FAA6F;AAAA,EAC1G;AACA,MAAI,MAAM,QAAQ,kBAAkB,aAAa,KAAK,MAAM,OAAO,cAAc,GAAG;AAClF,UAAM;AAAA,MACJ,yDAAyD,MAAM,OAAO,cAAc;AAAA,IACtF;AAAA,EACF;AAGA,QAAM,SACJ,MAAM,QAAQ,OAAO;AAAA,IAAI,CAAC,MACxB,EAAE,cAAc,IAAI,EAAE,KAAK,4BAA4B,EAAE,WAAW,MAAM,IAAI,EAAE,KAAK;AAAA,EACvF,KAAK,CAAC;AACR,MAAI,OAAO,SAAS,GAAG;AACrB,UAAM;AAAA,MACJ,2BAA2B,OAAO,KAAK,IAAI,CAAC;AAAA,IAC9C;AAAA,EACF;AACA,aAAW,OAAO,MAAM,QAAQ,SAAS;AACvC,UAAM;AAAA,MACJ,GAAG,IAAI,IAAI,yBAAyB,IAAI,OAAO;AAAA,IACjD;AAAA,EACF;AACA,MAAI,MAAM,QAAQ,OAAO,SAAS,GAAG;AACnC,UAAM,OAAO,MAAM,QAAQ,OAAO,IAAI,CAAC,MAAM,IAAI,EAAE,OAAO,GAAG,EAAE,KAAK,IAAI;AACxE,UAAM,KAAK,oDAAoD,IAAI,GAAG;AAAA,EACxE;AACA,MAAI,MAAM,WAAW,MAAM,YAAY,MAAM,WAAW,GAAG;AACzD,UAAM;AAAA,MACJ;AAAA,IACF;AAAA,EACF;AACA,MAAI,MAAM,UAAU,SAAS,GAAG;AAC9B,UAAM,KAAK,yBAAyB,MAAM,UAAU,KAAK,IAAI,CAAC,qCAAqC;AAAA,EACrG,OAAO;AACL,UAAM;AAAA,MACJ,8JAA8J,iBAAiB,KAAK,KAAK,CAAC,YAAY,YAAY,KAAK,IAAI,CAAC,aAAa,aAAa,KAAK,IAAI,CAAC;AAAA,IAClQ;AAAA,EACF;AACA,SAAO;AACT;AAIA,eAAe,UAAU,MAAc,MAAiB;AAEtD,QAAM,UAAU,cAAc,KAAK,SAAS,EAAE,MAAM,MAAM,IAAI;AAC9D,QAAM,CAAC,SAAS,QAAQ,QAAQ,UAAU,OAAO,aAAa,UAAU,WAAW,YAAY,QAAQ,OAAO,KAAK,IACjH,MAAM,QAAQ,IAAI;AAAA,IAChB,cAAc,IAAI;AAAA,IAClB,WAAW,IAAI;AAAA,IACf,WAAW,MAAM,KAAK,KAAK;AAAA,IAC3B,aAAa,IAAI;AAAA,IACjB,YAAY,IAAI;AAAA,IAChB;AAAA,MAAQ,YACN;AAAA,QAAgB,MAAM,QAAsC,8BAA8B,CAAC,CAAC;AAAA,QAAG,CAAC,SAC9F,eAAe,MAAM,IAAI;AAAA,MAC3B;AAAA,IACF;AAAA,IACA,QAAQ,MAAM,QAAmC,2BAA2B,CAAC,CAAC,CAAC;AAAA,IAC/E;AAAA,IACA,QAAQ,KAAK,CAAC,OAAQ,KAAK,QAAQ,MAAM,eAAe,EAAE,CAAC,IAAI,IAAK;AAAA,IACpE,QAAQ,MAAM,WAAW,IAAI,CAAC;AAAA,IAC9B,aAAa,IAAI,EAAE,KAAK,CAAC,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC;AAAA,IACrD,kBAAkB,IAAI;AAAA,EACxB,CAAC;AACH,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAIA,SAAS,YAAY,OAAc,MAAe;AAChD,MAAI,CAAC,MAAM,WAAW;AACpB,WAAO,EAAE,aAAa,0FAA0F;AAAA,EAClH;AACA,QAAM,QAAQ,YAAY,MAAM,WAAW,IACvC,UAAU,MAAM,YAAY,KAAK,WAAW,OAAO,KAAK,CAAC,IACzD,EAAE,WAAW,MAAM,YAAY;AACnC,SAAO,EAAE,IAAI,MAAM,WAAW,YAAY,MAAM,YAAY,GAAG,MAAM;AACvE;AAEA,SAAS,WAAW,QAAmC,MAAe;AACpE,MAAI,CAAC,YAAY,MAAM,EAAG,QAAO;AACjC,MAAI,CAAC,OAAQ,QAAO,EAAE,aAAa,8DAA8D;AACjG,MAAI,KAAM,QAAO;AACjB,QAAM,EAAE,YAAY,aAAa,GAAG,KAAK,IAAI;AAC7C,SAAO;AACT;AAGO,SAAS,UAAU,UAAqC;AAC7D,QAAM,EAAE,SAAS,MAAM,IAAI,SAAS;AACpC,SAAO;AAAA,IACL,UAAU,QAAQ;AAAA,IAClB,UAAU,QAAQ;AAAA,IAClB,qBAAqB,QAAQ,oBAAoB,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK;AAAA,IAC/E,GAAI,SAAS,MAAM,SAAS,IAAI,EAAE,OAAO,MAAM,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC;AAAA,EAC3G;AACF;AAGO,SAAS,cAAc,OAAc,MAAe,YAAkC;AAC3F,QAAM,YAAY,cAAc,MAAM,QAAQ;AAC9C,QAAM,UAAU,YAAY,MAAM,QAAQ,IAAI,MAAM,SAAS,KAAK,UAAU;AAC5E,QAAM,OAAO,UAAU,MAAM,MAAM,KAAK;AACxC,QAAM,UAAU,MAAM,MAAM,MAAM,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM,EAAE;AACrE,QAAM,aAAa,CAAC,WAClB,MAAM,MAAM,MAAM,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAS,EAAE,QAAQ,EAAE;AACtG,QAAM,UAAU,EAAE,SAAS,WAAW,QAAQ,GAAG,QAAQ,WAAW,QAAQ,EAAE;AAC9E,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM;AAAA,MACJ,SAAS,MAAM;AAAA,MACf,QAAQ,EAAE,aAAa,MAAM,OAAO,aAAa,OAAO,MAAM,OAAO,OAAO,QAAQ,MAAM,OAAO,OAAO;AAAA,MACxG,QAAQ,MAAM;AAAA,MACd,SAAS,YAAY,OAAO,IAAI;AAAA,MAChC,OAAO,YAAY,MAAM,QAAQ,IAAI,UAAU,MAAM,QAAQ,IAAI,MAAM;AAAA,MACvE,WAAW,OACP,EAAE,GAAG,WAAW,QAAQ,MAAM,SAAS,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,MAAM,EAAE,MAAM,OAAO,EAAE,MAAM,EAAE,EAAE,IAChG;AAAA,MACJ,QAAQ,WAAW,MAAM,QAAQ,IAAI;AAAA,MACrC,OAAO,UAAU,MAAM,OAAO,EAAE,KAAK,CAAC;AAAA,MACtC,OAAO;AAAA,QACL,UAAU;AAAA,QACV,OAAO,MAAM,MAAM,MAAM,SAAS;AAAA,QAClC,YAAY;AAAA,QACZ,GAAI,QAAQ,QAAQ,SAAS,IAAI,EAAE,SAAS,QAAQ,QAAQ,IAAI,CAAC;AAAA,QACjE,GAAI,QAAQ,OAAO,SAAS,IAAI,EAAE,QAAQ,QAAQ,OAAO,IAAI,CAAC;AAAA,MAChE;AAAA,IACF;AAAA,IACA,OAAO,WAAW;AAAA,MAChB,SAAS,MAAM;AAAA,MACf;AAAA,MACA,YAAY,MAAM;AAAA,MAClB,cAAc;AAAA,MACd,WAAW;AAAA,MACX,UAAU,SAAS,YAAY;AAAA,MAC/B,UAAU,SAAS,YAAY;AAAA,MAC/B,QAAQ,YAAY,MAAM,MAAM,IAAI,MAAM,SAAS;AAAA,MACnD;AAAA,MACA,GAAI,aAAa,EAAE,WAAW,IAAI,CAAC;AAAA,MACnC,OAAO,MAAM,MAAM;AAAA,IACrB,CAAC,EAAE,OAAO,WAAW,MAAM,OAAO,aAAa,MAAM,KAAK,CAAC,CAAC;AAAA,EAC9D;AACF;AAEO,IAAM,eAAe,cAAc;AAAA,EACxC,MAAM,EAAE,MAAM,SAAS,aAAa,YAAY;AAAA,EAChD,MAAM;AAAA,EACN,MAAM,IAAI,EAAE,KAAK,GAAG;AAClB,UAAM,OAAO,kBAAkB,QAAQ,IAAI,CAAC,KAAK,QAAQ,IAAI;AAC7D,UAAM,OAAO,KAAK,SAAS;AAG3B,UAAM,OAAO,KAAK,aAAa,SAAS,cAAc,MAAM,aAAa,IAAI,CAAC,EAAE;AAChF,UAAM,WAAW,OAAO,kBAAkB,MAAM,CAAC,CAAC,EAAE,MAAM,MAAM,IAAI,IAAI;AACxE,UAAM,QAAQ,MAAM,UAAU,MAAM;AAAA,MAClC,GAAI,OAAO,KAAK,UAAU,YAAY,KAAK,QAAQ,EAAE,OAAO,KAAK,MAAM,IAAI,CAAC;AAAA,MAC5E,GAAI,OAAO,KAAK,YAAY,MAAM,YAAY,KAAK,YAAY,IAAI,EAAE,WAAW,KAAK,YAAY,EAAE,IAAI,CAAC;AAAA,MACxG;AAAA,IACF,CAAC;AACD,UAAM,QAAQ,WAAW,MAAM,WAAW;AAC1C,UAAM,UAAU,OAAO,MAAM,UAAU;AACvC,UAAM,WAAW,UAAU,IAAI,MAAM,aAAa,IAAI,IAAI,MAAM;AAChE,cAAU,cAAc,EAAE,GAAG,OAAO,SAAS,GAAG,MAAM,WAAW,EAAE,QAAQ,IAAI,MAAS,CAAC;AAAA,EAC3F;AACF,CAAC;","names":["id"]}