@xyo-network/bip39 2.74.5 → 2.75.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/dist/{index.js → browser/index.cjs} +1 -11
  2. package/dist/browser/index.cjs.map +1 -0
  3. package/dist/browser/index.d.mts.map +1 -0
  4. package/dist/browser/index.d.ts.map +1 -0
  5. package/dist/{index.mjs → browser/index.js} +1 -1
  6. package/dist/browser/index.js.map +1 -0
  7. package/dist/browser/wordlists/czech.cjs +2074 -0
  8. package/dist/browser/wordlists/czech.cjs.map +1 -0
  9. package/dist/browser/wordlists/czech.d.mts.map +1 -0
  10. package/dist/browser/wordlists/czech.d.ts.map +1 -0
  11. package/dist/browser/wordlists/czech.js +2053 -0
  12. package/dist/browser/wordlists/czech.js.map +1 -0
  13. package/dist/browser/wordlists/english.cjs +2074 -0
  14. package/dist/browser/wordlists/english.cjs.map +1 -0
  15. package/dist/browser/wordlists/english.d.mts.map +1 -0
  16. package/dist/browser/wordlists/english.d.ts.map +1 -0
  17. package/dist/browser/wordlists/english.js +2053 -0
  18. package/dist/browser/wordlists/english.js.map +1 -0
  19. package/dist/browser/wordlists/french.cjs +2074 -0
  20. package/dist/browser/wordlists/french.cjs.map +1 -0
  21. package/dist/browser/wordlists/french.d.mts.map +1 -0
  22. package/dist/browser/wordlists/french.d.ts.map +1 -0
  23. package/dist/browser/wordlists/french.js +2053 -0
  24. package/dist/browser/wordlists/french.js.map +1 -0
  25. package/dist/browser/wordlists/index.cjs +18489 -0
  26. package/dist/browser/wordlists/index.cjs.map +1 -0
  27. package/dist/browser/wordlists/index.d.mts.map +1 -0
  28. package/dist/browser/wordlists/index.d.ts.map +1 -0
  29. package/dist/browser/wordlists/index.js +18466 -0
  30. package/dist/browser/wordlists/index.js.map +1 -0
  31. package/dist/browser/wordlists/italian.cjs +2074 -0
  32. package/dist/browser/wordlists/italian.cjs.map +1 -0
  33. package/dist/browser/wordlists/italian.d.mts.map +1 -0
  34. package/dist/browser/wordlists/italian.d.ts.map +1 -0
  35. package/dist/browser/wordlists/italian.js +2053 -0
  36. package/dist/browser/wordlists/italian.js.map +1 -0
  37. package/dist/browser/wordlists/japanese.cjs +2074 -0
  38. package/dist/browser/wordlists/japanese.cjs.map +1 -0
  39. package/dist/browser/wordlists/japanese.d.mts.map +1 -0
  40. package/dist/browser/wordlists/japanese.d.ts.map +1 -0
  41. package/dist/browser/wordlists/japanese.js +2053 -0
  42. package/dist/browser/wordlists/japanese.js.map +1 -0
  43. package/dist/browser/wordlists/korean.cjs +2074 -0
  44. package/dist/browser/wordlists/korean.cjs.map +1 -0
  45. package/dist/browser/wordlists/korean.d.mts.map +1 -0
  46. package/dist/browser/wordlists/korean.d.ts.map +1 -0
  47. package/dist/browser/wordlists/korean.js +2053 -0
  48. package/dist/browser/wordlists/korean.js.map +1 -0
  49. package/dist/browser/wordlists/simplified-chinese.cjs +2074 -0
  50. package/dist/browser/wordlists/simplified-chinese.cjs.map +1 -0
  51. package/dist/browser/wordlists/simplified-chinese.d.mts.map +1 -0
  52. package/dist/browser/wordlists/simplified-chinese.d.ts.map +1 -0
  53. package/dist/browser/wordlists/simplified-chinese.js +2053 -0
  54. package/dist/browser/wordlists/simplified-chinese.js.map +1 -0
  55. package/dist/browser/wordlists/spanish.cjs +2074 -0
  56. package/dist/browser/wordlists/spanish.cjs.map +1 -0
  57. package/dist/browser/wordlists/spanish.d.mts.map +1 -0
  58. package/dist/browser/wordlists/spanish.d.ts.map +1 -0
  59. package/dist/browser/wordlists/spanish.js +2053 -0
  60. package/dist/browser/wordlists/spanish.js.map +1 -0
  61. package/dist/browser/wordlists/traditional-chinese.cjs +2074 -0
  62. package/dist/browser/wordlists/traditional-chinese.cjs.map +1 -0
  63. package/dist/browser/wordlists/traditional-chinese.d.mts.map +1 -0
  64. package/dist/browser/wordlists/traditional-chinese.d.ts.map +1 -0
  65. package/dist/browser/wordlists/traditional-chinese.js +2053 -0
  66. package/dist/browser/wordlists/traditional-chinese.js.map +1 -0
  67. package/dist/node/index.d.mts +65 -0
  68. package/dist/node/index.d.mts.map +1 -0
  69. package/dist/node/index.d.ts +65 -0
  70. package/dist/node/index.d.ts.map +1 -0
  71. package/dist/node/index.js +119 -0
  72. package/dist/node/index.js.map +1 -0
  73. package/dist/node/index.mjs +78 -0
  74. package/dist/node/index.mjs.map +1 -0
  75. package/dist/node/wordlists/czech.d.mts +2 -0
  76. package/dist/node/wordlists/czech.d.mts.map +1 -0
  77. package/dist/node/wordlists/czech.d.ts +2 -0
  78. package/dist/node/wordlists/czech.d.ts.map +1 -0
  79. package/dist/node/wordlists/czech.js +2076 -0
  80. package/dist/node/wordlists/czech.js.map +1 -0
  81. package/dist/node/wordlists/czech.mjs +2052 -0
  82. package/dist/node/wordlists/czech.mjs.map +1 -0
  83. package/dist/node/wordlists/english.d.mts +2 -0
  84. package/dist/node/wordlists/english.d.mts.map +1 -0
  85. package/dist/node/wordlists/english.d.ts +2 -0
  86. package/dist/node/wordlists/english.d.ts.map +1 -0
  87. package/dist/node/wordlists/english.js +2076 -0
  88. package/dist/node/wordlists/english.js.map +1 -0
  89. package/dist/node/wordlists/english.mjs +2052 -0
  90. package/dist/node/wordlists/english.mjs.map +1 -0
  91. package/dist/node/wordlists/french.d.mts +2 -0
  92. package/dist/node/wordlists/french.d.mts.map +1 -0
  93. package/dist/node/wordlists/french.d.ts +2 -0
  94. package/dist/node/wordlists/french.d.ts.map +1 -0
  95. package/dist/node/wordlists/french.js +2076 -0
  96. package/dist/node/wordlists/french.js.map +1 -0
  97. package/dist/node/wordlists/french.mjs +2052 -0
  98. package/dist/node/wordlists/french.mjs.map +1 -0
  99. package/dist/node/wordlists/index.d.mts +12 -0
  100. package/dist/node/wordlists/index.d.mts.map +1 -0
  101. package/dist/node/wordlists/index.d.ts +12 -0
  102. package/dist/node/wordlists/index.d.ts.map +1 -0
  103. package/dist/node/wordlists/index.js +48 -0
  104. package/dist/node/wordlists/index.js.map +1 -0
  105. package/dist/node/wordlists/index.mjs +24 -0
  106. package/dist/node/wordlists/index.mjs.map +1 -0
  107. package/dist/node/wordlists/italian.d.mts +2 -0
  108. package/dist/node/wordlists/italian.d.mts.map +1 -0
  109. package/dist/node/wordlists/italian.d.ts +2 -0
  110. package/dist/node/wordlists/italian.d.ts.map +1 -0
  111. package/dist/node/wordlists/italian.js +2076 -0
  112. package/dist/node/wordlists/italian.js.map +1 -0
  113. package/dist/node/wordlists/italian.mjs +2052 -0
  114. package/dist/node/wordlists/italian.mjs.map +1 -0
  115. package/dist/node/wordlists/japanese.d.mts +2 -0
  116. package/dist/node/wordlists/japanese.d.mts.map +1 -0
  117. package/dist/node/wordlists/japanese.d.ts +2 -0
  118. package/dist/node/wordlists/japanese.d.ts.map +1 -0
  119. package/dist/node/wordlists/japanese.js +2076 -0
  120. package/dist/node/wordlists/japanese.js.map +1 -0
  121. package/dist/node/wordlists/japanese.mjs +2052 -0
  122. package/dist/node/wordlists/japanese.mjs.map +1 -0
  123. package/dist/node/wordlists/korean.d.mts +2 -0
  124. package/dist/node/wordlists/korean.d.mts.map +1 -0
  125. package/dist/node/wordlists/korean.d.ts +2 -0
  126. package/dist/node/wordlists/korean.d.ts.map +1 -0
  127. package/dist/node/wordlists/korean.js +2076 -0
  128. package/dist/node/wordlists/korean.js.map +1 -0
  129. package/dist/node/wordlists/korean.mjs +2052 -0
  130. package/dist/node/wordlists/korean.mjs.map +1 -0
  131. package/dist/node/wordlists/simplified-chinese.d.mts +2 -0
  132. package/dist/node/wordlists/simplified-chinese.d.mts.map +1 -0
  133. package/dist/node/wordlists/simplified-chinese.d.ts +2 -0
  134. package/dist/node/wordlists/simplified-chinese.d.ts.map +1 -0
  135. package/dist/node/wordlists/simplified-chinese.js +2076 -0
  136. package/dist/node/wordlists/simplified-chinese.js.map +1 -0
  137. package/dist/node/wordlists/simplified-chinese.mjs +2052 -0
  138. package/dist/node/wordlists/simplified-chinese.mjs.map +1 -0
  139. package/dist/node/wordlists/spanish.d.mts +2 -0
  140. package/dist/node/wordlists/spanish.d.mts.map +1 -0
  141. package/dist/node/wordlists/spanish.d.ts +2 -0
  142. package/dist/node/wordlists/spanish.d.ts.map +1 -0
  143. package/dist/node/wordlists/spanish.js +2076 -0
  144. package/dist/node/wordlists/spanish.js.map +1 -0
  145. package/dist/node/wordlists/spanish.mjs +2052 -0
  146. package/dist/node/wordlists/spanish.mjs.map +1 -0
  147. package/dist/node/wordlists/traditional-chinese.d.mts +2 -0
  148. package/dist/node/wordlists/traditional-chinese.d.mts.map +1 -0
  149. package/dist/node/wordlists/traditional-chinese.d.ts +2 -0
  150. package/dist/node/wordlists/traditional-chinese.d.ts.map +1 -0
  151. package/dist/node/wordlists/traditional-chinese.js +2076 -0
  152. package/dist/node/wordlists/traditional-chinese.js.map +1 -0
  153. package/dist/node/wordlists/traditional-chinese.mjs +2052 -0
  154. package/dist/node/wordlists/traditional-chinese.mjs.map +1 -0
  155. package/package.json +24 -21
  156. package/dist/docs.json +0 -1057
  157. package/dist/index.d.mts.map +0 -1
  158. package/dist/index.d.ts.map +0 -1
  159. package/dist/index.js.map +0 -1
  160. package/dist/index.mjs.map +0 -1
  161. package/dist/wordlists/czech.d.mts.map +0 -1
  162. package/dist/wordlists/czech.d.ts.map +0 -1
  163. package/dist/wordlists/english.d.mts.map +0 -1
  164. package/dist/wordlists/english.d.ts.map +0 -1
  165. package/dist/wordlists/french.d.mts.map +0 -1
  166. package/dist/wordlists/french.d.ts.map +0 -1
  167. package/dist/wordlists/index.d.mts.map +0 -1
  168. package/dist/wordlists/index.d.ts.map +0 -1
  169. package/dist/wordlists/italian.d.mts.map +0 -1
  170. package/dist/wordlists/italian.d.ts.map +0 -1
  171. package/dist/wordlists/japanese.d.mts.map +0 -1
  172. package/dist/wordlists/japanese.d.ts.map +0 -1
  173. package/dist/wordlists/korean.d.mts.map +0 -1
  174. package/dist/wordlists/korean.d.ts.map +0 -1
  175. package/dist/wordlists/simplified-chinese.d.mts.map +0 -1
  176. package/dist/wordlists/simplified-chinese.d.ts.map +0 -1
  177. package/dist/wordlists/spanish.d.mts.map +0 -1
  178. package/dist/wordlists/spanish.d.ts.map +0 -1
  179. package/dist/wordlists/traditional-chinese.d.mts.map +0 -1
  180. package/dist/wordlists/traditional-chinese.d.ts.map +0 -1
  181. /package/dist/{index.d.mts → browser/index.d.mts} +0 -0
  182. /package/dist/{index.d.ts → browser/index.d.ts} +0 -0
  183. /package/dist/{wordlists → browser/wordlists}/czech.d.mts +0 -0
  184. /package/dist/{wordlists → browser/wordlists}/czech.d.ts +0 -0
  185. /package/dist/{wordlists → browser/wordlists}/english.d.mts +0 -0
  186. /package/dist/{wordlists → browser/wordlists}/english.d.ts +0 -0
  187. /package/dist/{wordlists → browser/wordlists}/french.d.mts +0 -0
  188. /package/dist/{wordlists → browser/wordlists}/french.d.ts +0 -0
  189. /package/dist/{wordlists → browser/wordlists}/index.d.mts +0 -0
  190. /package/dist/{wordlists → browser/wordlists}/index.d.ts +0 -0
  191. /package/dist/{wordlists → browser/wordlists}/italian.d.mts +0 -0
  192. /package/dist/{wordlists → browser/wordlists}/italian.d.ts +0 -0
  193. /package/dist/{wordlists → browser/wordlists}/japanese.d.mts +0 -0
  194. /package/dist/{wordlists → browser/wordlists}/japanese.d.ts +0 -0
  195. /package/dist/{wordlists → browser/wordlists}/korean.d.mts +0 -0
  196. /package/dist/{wordlists → browser/wordlists}/korean.d.ts +0 -0
  197. /package/dist/{wordlists → browser/wordlists}/simplified-chinese.d.mts +0 -0
  198. /package/dist/{wordlists → browser/wordlists}/simplified-chinese.d.ts +0 -0
  199. /package/dist/{wordlists → browser/wordlists}/spanish.d.mts +0 -0
  200. /package/dist/{wordlists → browser/wordlists}/spanish.d.ts +0 -0
  201. /package/dist/{wordlists → browser/wordlists}/traditional-chinese.d.mts +0 -0
  202. /package/dist/{wordlists → browser/wordlists}/traditional-chinese.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/wordlists/traditional-chinese.ts"],"sourcesContent":["/* eslint-disable max-lines */\nexport const wordlist: string[] = `的\n一\n是\n在\n不\n了\n有\n和\n人\n這\n中\n大\n為\n上\n個\n國\n我\n以\n要\n他\n時\n來\n用\n們\n生\n到\n作\n地\n於\n出\n就\n分\n對\n成\n會\n可\n主\n發\n年\n動\n同\n工\n也\n能\n下\n過\n子\n說\n產\n種\n面\n而\n方\n後\n多\n定\n行\n學\n法\n所\n民\n得\n經\n十\n三\n之\n進\n著\n等\n部\n度\n家\n電\n力\n裡\n如\n水\n化\n高\n自\n二\n理\n起\n小\n物\n現\n實\n加\n量\n都\n兩\n體\n制\n機\n當\n使\n點\n從\n業\n本\n去\n把\n性\n好\n應\n開\n它\n合\n還\n因\n由\n其\n些\n然\n前\n外\n天\n政\n四\n日\n那\n社\n義\n事\n平\n形\n相\n全\n表\n間\n樣\n與\n關\n各\n重\n新\n線\n內\n數\n正\n心\n反\n你\n明\n看\n原\n又\n麼\n利\n比\n或\n但\n質\n氣\n第\n向\n道\n命\n此\n變\n條\n只\n沒\n結\n解\n問\n意\n建\n月\n公\n無\n系\n軍\n很\n情\n者\n最\n立\n代\n想\n已\n通\n並\n提\n直\n題\n黨\n程\n展\n五\n果\n料\n象\n員\n革\n位\n入\n常\n文\n總\n次\n品\n式\n活\n設\n及\n管\n特\n件\n長\n求\n老\n頭\n基\n資\n邊\n流\n路\n級\n少\n圖\n山\n統\n接\n知\n較\n將\n組\n見\n計\n別\n她\n手\n角\n期\n根\n論\n運\n農\n指\n幾\n九\n區\n強\n放\n決\n西\n被\n幹\n做\n必\n戰\n先\n回\n則\n任\n取\n據\n處\n隊\n南\n給\n色\n光\n門\n即\n保\n治\n北\n造\n百\n規\n熱\n領\n七\n海\n口\n東\n導\n器\n壓\n志\n世\n金\n增\n爭\n濟\n階\n油\n思\n術\n極\n交\n受\n聯\n什\n認\n六\n共\n權\n收\n證\n改\n清\n美\n再\n採\n轉\n更\n單\n風\n切\n打\n白\n教\n速\n花\n帶\n安\n場\n身\n車\n例\n真\n務\n具\n萬\n每\n目\n至\n達\n走\n積\n示\n議\n聲\n報\n鬥\n完\n類\n八\n離\n華\n名\n確\n才\n科\n張\n信\n馬\n節\n話\n米\n整\n空\n元\n況\n今\n集\n溫\n傳\n土\n許\n步\n群\n廣\n石\n記\n需\n段\n研\n界\n拉\n林\n律\n叫\n且\n究\n觀\n越\n織\n裝\n影\n算\n低\n持\n音\n眾\n書\n布\n复\n容\n兒\n須\n際\n商\n非\n驗\n連\n斷\n深\n難\n近\n礦\n千\n週\n委\n素\n技\n備\n半\n辦\n青\n省\n列\n習\n響\n約\n支\n般\n史\n感\n勞\n便\n團\n往\n酸\n歷\n市\n克\n何\n除\n消\n構\n府\n稱\n太\n準\n精\n值\n號\n率\n族\n維\n劃\n選\n標\n寫\n存\n候\n毛\n親\n快\n效\n斯\n院\n查\n江\n型\n眼\n王\n按\n格\n養\n易\n置\n派\n層\n片\n始\n卻\n專\n狀\n育\n廠\n京\n識\n適\n屬\n圓\n包\n火\n住\n調\n滿\n縣\n局\n照\n參\n紅\n細\n引\n聽\n該\n鐵\n價\n嚴\n首\n底\n液\n官\n德\n隨\n病\n蘇\n失\n爾\n死\n講\n配\n女\n黃\n推\n顯\n談\n罪\n神\n藝\n呢\n席\n含\n企\n望\n密\n批\n營\n項\n防\n舉\n球\n英\n氧\n勢\n告\n李\n台\n落\n木\n幫\n輪\n破\n亞\n師\n圍\n注\n遠\n字\n材\n排\n供\n河\n態\n封\n另\n施\n減\n樹\n溶\n怎\n止\n案\n言\n士\n均\n武\n固\n葉\n魚\n波\n視\n僅\n費\n緊\n愛\n左\n章\n早\n朝\n害\n續\n輕\n服\n試\n食\n充\n兵\n源\n判\n護\n司\n足\n某\n練\n差\n致\n板\n田\n降\n黑\n犯\n負\n擊\n范\n繼\n興\n似\n餘\n堅\n曲\n輸\n修\n故\n城\n夫\n夠\n送\n筆\n船\n佔\n右\n財\n吃\n富\n春\n職\n覺\n漢\n畫\n功\n巴\n跟\n雖\n雜\n飛\n檢\n吸\n助\n昇\n陽\n互\n初\n創\n抗\n考\n投\n壞\n策\n古\n徑\n換\n未\n跑\n留\n鋼\n曾\n端\n責\n站\n簡\n述\n錢\n副\n盡\n帝\n射\n草\n衝\n承\n獨\n令\n限\n阿\n宣\n環\n雙\n請\n超\n微\n讓\n控\n州\n良\n軸\n找\n否\n紀\n益\n依\n優\n頂\n礎\n載\n倒\n房\n突\n坐\n粉\n敵\n略\n客\n袁\n冷\n勝\n絕\n析\n塊\n劑\n測\n絲\n協\n訴\n念\n陳\n仍\n羅\n鹽\n友\n洋\n錯\n苦\n夜\n刑\n移\n頻\n逐\n靠\n混\n母\n短\n皮\n終\n聚\n汽\n村\n雲\n哪\n既\n距\n衛\n停\n烈\n央\n察\n燒\n迅\n境\n若\n印\n洲\n刻\n括\n激\n孔\n搞\n甚\n室\n待\n核\n校\n散\n侵\n吧\n甲\n遊\n久\n菜\n味\n舊\n模\n湖\n貨\n損\n預\n阻\n毫\n普\n穩\n乙\n媽\n植\n息\n擴\n銀\n語\n揮\n酒\n守\n拿\n序\n紙\n醫\n缺\n雨\n嗎\n針\n劉\n啊\n急\n唱\n誤\n訓\n願\n審\n附\n獲\n茶\n鮮\n糧\n斤\n孩\n脫\n硫\n肥\n善\n龍\n演\n父\n漸\n血\n歡\n械\n掌\n歌\n沙\n剛\n攻\n謂\n盾\n討\n晚\n粒\n亂\n燃\n矛\n乎\n殺\n藥\n寧\n魯\n貴\n鐘\n煤\n讀\n班\n伯\n香\n介\n迫\n句\n豐\n培\n握\n蘭\n擔\n弦\n蛋\n沉\n假\n穿\n執\n答\n樂\n誰\n順\n煙\n縮\n徵\n臉\n喜\n松\n腳\n困\n異\n免\n背\n星\n福\n買\n染\n井\n概\n慢\n怕\n磁\n倍\n祖\n皇\n促\n靜\n補\n評\n翻\n肉\n踐\n尼\n衣\n寬\n揚\n棉\n希\n傷\n操\n垂\n秋\n宜\n氫\n套\n督\n振\n架\n亮\n末\n憲\n慶\n編\n牛\n觸\n映\n雷\n銷\n詩\n座\n居\n抓\n裂\n胞\n呼\n娘\n景\n威\n綠\n晶\n厚\n盟\n衡\n雞\n孫\n延\n危\n膠\n屋\n鄉\n臨\n陸\n顧\n掉\n呀\n燈\n歲\n措\n束\n耐\n劇\n玉\n趙\n跳\n哥\n季\n課\n凱\n胡\n額\n款\n紹\n卷\n齊\n偉\n蒸\n殖\n永\n宗\n苗\n川\n爐\n岩\n弱\n零\n楊\n奏\n沿\n露\n桿\n探\n滑\n鎮\n飯\n濃\n航\n懷\n趕\n庫\n奪\n伊\n靈\n稅\n途\n滅\n賽\n歸\n召\n鼓\n播\n盤\n裁\n險\n康\n唯\n錄\n菌\n純\n借\n糖\n蓋\n橫\n符\n私\n努\n堂\n域\n槍\n潤\n幅\n哈\n竟\n熟\n蟲\n澤\n腦\n壤\n碳\n歐\n遍\n側\n寨\n敢\n徹\n慮\n斜\n薄\n庭\n納\n彈\n飼\n伸\n折\n麥\n濕\n暗\n荷\n瓦\n塞\n床\n築\n惡\n戶\n訪\n塔\n奇\n透\n梁\n刀\n旋\n跡\n卡\n氯\n遇\n份\n毒\n泥\n退\n洗\n擺\n灰\n彩\n賣\n耗\n夏\n擇\n忙\n銅\n獻\n硬\n予\n繁\n圈\n雪\n函\n亦\n抽\n篇\n陣\n陰\n丁\n尺\n追\n堆\n雄\n迎\n泛\n爸\n樓\n避\n謀\n噸\n野\n豬\n旗\n累\n偏\n典\n館\n索\n秦\n脂\n潮\n爺\n豆\n忽\n托\n驚\n塑\n遺\n愈\n朱\n替\n纖\n粗\n傾\n尚\n痛\n楚\n謝\n奮\n購\n磨\n君\n池\n旁\n碎\n骨\n監\n捕\n弟\n暴\n割\n貫\n殊\n釋\n詞\n亡\n壁\n頓\n寶\n午\n塵\n聞\n揭\n炮\n殘\n冬\n橋\n婦\n警\n綜\n招\n吳\n付\n浮\n遭\n徐\n您\n搖\n谷\n贊\n箱\n隔\n訂\n男\n吹\n園\n紛\n唐\n敗\n宋\n玻\n巨\n耕\n坦\n榮\n閉\n灣\n鍵\n凡\n駐\n鍋\n救\n恩\n剝\n凝\n鹼\n齒\n截\n煉\n麻\n紡\n禁\n廢\n盛\n版\n緩\n淨\n睛\n昌\n婚\n涉\n筒\n嘴\n插\n岸\n朗\n莊\n街\n藏\n姑\n貿\n腐\n奴\n啦\n慣\n乘\n夥\n恢\n勻\n紗\n扎\n辯\n耳\n彪\n臣\n億\n璃\n抵\n脈\n秀\n薩\n俄\n網\n舞\n店\n噴\n縱\n寸\n汗\n掛\n洪\n賀\n閃\n柬\n爆\n烯\n津\n稻\n牆\n軟\n勇\n像\n滾\n厘\n蒙\n芳\n肯\n坡\n柱\n盪\n腿\n儀\n旅\n尾\n軋\n冰\n貢\n登\n黎\n削\n鑽\n勒\n逃\n障\n氨\n郭\n峰\n幣\n港\n伏\n軌\n畝\n畢\n擦\n莫\n刺\n浪\n秘\n援\n株\n健\n售\n股\n島\n甘\n泡\n睡\n童\n鑄\n湯\n閥\n休\n匯\n舍\n牧\n繞\n炸\n哲\n磷\n績\n朋\n淡\n尖\n啟\n陷\n柴\n呈\n徒\n顏\n淚\n稍\n忘\n泵\n藍\n拖\n洞\n授\n鏡\n辛\n壯\n鋒\n貧\n虛\n彎\n摩\n泰\n幼\n廷\n尊\n窗\n綱\n弄\n隸\n疑\n氏\n宮\n姐\n震\n瑞\n怪\n尤\n琴\n循\n描\n膜\n違\n夾\n腰\n緣\n珠\n窮\n森\n枝\n竹\n溝\n催\n繩\n憶\n邦\n剩\n幸\n漿\n欄\n擁\n牙\n貯\n禮\n濾\n鈉\n紋\n罷\n拍\n咱\n喊\n袖\n埃\n勤\n罰\n焦\n潛\n伍\n墨\n欲\n縫\n姓\n刊\n飽\n仿\n獎\n鋁\n鬼\n麗\n跨\n默\n挖\n鏈\n掃\n喝\n袋\n炭\n污\n幕\n諸\n弧\n勵\n梅\n奶\n潔\n災\n舟\n鑑\n苯\n訟\n抱\n毀\n懂\n寒\n智\n埔\n寄\n屆\n躍\n渡\n挑\n丹\n艱\n貝\n碰\n拔\n爹\n戴\n碼\n夢\n芽\n熔\n赤\n漁\n哭\n敬\n顆\n奔\n鉛\n仲\n虎\n稀\n妹\n乏\n珍\n申\n桌\n遵\n允\n隆\n螺\n倉\n魏\n銳\n曉\n氮\n兼\n隱\n礙\n赫\n撥\n忠\n肅\n缸\n牽\n搶\n博\n巧\n殼\n兄\n杜\n訊\n誠\n碧\n祥\n柯\n頁\n巡\n矩\n悲\n灌\n齡\n倫\n票\n尋\n桂\n鋪\n聖\n恐\n恰\n鄭\n趣\n抬\n荒\n騰\n貼\n柔\n滴\n猛\n闊\n輛\n妻\n填\n撤\n儲\n簽\n鬧\n擾\n紫\n砂\n遞\n戲\n吊\n陶\n伐\n餵\n療\n瓶\n婆\n撫\n臂\n摸\n忍\n蝦\n蠟\n鄰\n胸\n鞏\n擠\n偶\n棄\n槽\n勁\n乳\n鄧\n吉\n仁\n爛\n磚\n租\n烏\n艦\n伴\n瓜\n淺\n丙\n暫\n燥\n橡\n柳\n迷\n暖\n牌\n秧\n膽\n詳\n簧\n踏\n瓷\n譜\n呆\n賓\n糊\n洛\n輝\n憤\n競\n隙\n怒\n粘\n乃\n緒\n肩\n籍\n敏\n塗\n熙\n皆\n偵\n懸\n掘\n享\n糾\n醒\n狂\n鎖\n淀\n恨\n牲\n霸\n爬\n賞\n逆\n玩\n陵\n祝\n秒\n浙\n貌\n役\n彼\n悉\n鴨\n趨\n鳳\n晨\n畜\n輩\n秩\n卵\n署\n梯\n炎\n灘\n棋\n驅\n篩\n峽\n冒\n啥\n壽\n譯\n浸\n泉\n帽\n遲\n矽\n疆\n貸\n漏\n稿\n冠\n嫩\n脅\n芯\n牢\n叛\n蝕\n奧\n鳴\n嶺\n羊\n憑\n串\n塘\n繪\n酵\n融\n盆\n錫\n廟\n籌\n凍\n輔\n攝\n襲\n筋\n拒\n僚\n旱\n鉀\n鳥\n漆\n沈\n眉\n疏\n添\n棒\n穗\n硝\n韓\n逼\n扭\n僑\n涼\n挺\n碗\n栽\n炒\n杯\n患\n餾\n勸\n豪\n遼\n勃\n鴻\n旦\n吏\n拜\n狗\n埋\n輥\n掩\n飲\n搬\n罵\n辭\n勾\n扣\n估\n蔣\n絨\n霧\n丈\n朵\n姆\n擬\n宇\n輯\n陝\n雕\n償\n蓄\n崇\n剪\n倡\n廳\n咬\n駛\n薯\n刷\n斥\n番\n賦\n奉\n佛\n澆\n漫\n曼\n扇\n鈣\n桃\n扶\n仔\n返\n俗\n虧\n腔\n鞋\n棱\n覆\n框\n悄\n叔\n撞\n騙\n勘\n旺\n沸\n孤\n吐\n孟\n渠\n屈\n疾\n妙\n惜\n仰\n狠\n脹\n諧\n拋\n黴\n桑\n崗\n嘛\n衰\n盜\n滲\n臟\n賴\n湧\n甜\n曹\n閱\n肌\n哩\n厲\n烴\n緯\n毅\n昨\n偽\n症\n煮\n嘆\n釘\n搭\n莖\n籠\n酷\n偷\n弓\n錐\n恆\n傑\n坑\n鼻\n翼\n綸\n敘\n獄\n逮\n罐\n絡\n棚\n抑\n膨\n蔬\n寺\n驟\n穆\n冶\n枯\n冊\n屍\n凸\n紳\n坯\n犧\n焰\n轟\n欣\n晉\n瘦\n禦\n錠\n錦\n喪\n旬\n鍛\n壟\n搜\n撲\n邀\n亭\n酯\n邁\n舒\n脆\n酶\n閒\n憂\n酚\n頑\n羽\n漲\n卸\n仗\n陪\n闢\n懲\n杭\n姚\n肚\n捉\n飄\n漂\n昆\n欺\n吾\n郎\n烷\n汁\n呵\n飾\n蕭\n雅\n郵\n遷\n燕\n撒\n姻\n赴\n宴\n煩\n債\n帳\n斑\n鈴\n旨\n醇\n董\n餅\n雛\n姿\n拌\n傅\n腹\n妥\n揉\n賢\n拆\n歪\n葡\n胺\n丟\n浩\n徽\n昂\n墊\n擋\n覽\n貪\n慰\n繳\n汪\n慌\n馮\n諾\n姜\n誼\n兇\n劣\n誣\n耀\n昏\n躺\n盈\n騎\n喬\n溪\n叢\n盧\n抹\n悶\n諮\n刮\n駕\n纜\n悟\n摘\n鉺\n擲\n頗\n幻\n柄\n惠\n慘\n佳\n仇\n臘\n窩\n滌\n劍\n瞧\n堡\n潑\n蔥\n罩\n霍\n撈\n胎\n蒼\n濱\n倆\n捅\n湘\n砍\n霞\n邵\n萄\n瘋\n淮\n遂\n熊\n糞\n烘\n宿\n檔\n戈\n駁\n嫂\n裕\n徙\n箭\n捐\n腸\n撐\n曬\n辨\n殿\n蓮\n攤\n攪\n醬\n屏\n疫\n哀\n蔡\n堵\n沫\n皺\n暢\n疊\n閣\n萊\n敲\n轄\n鉤\n痕\n壩\n巷\n餓\n禍\n丘\n玄\n溜\n曰\n邏\n彭\n嘗\n卿\n妨\n艇\n吞\n韋\n怨\n矮\n歇`.split('\\n')\n"],"mappings":";AACO,IAAM,WAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QA+/D/B,MAAM,IAAI;","names":[]}
@@ -0,0 +1,65 @@
1
+ export * from './wordlists';
2
+ /**
3
+ * Generate x random words. Uses Cryptographically-Secure Random Number Generator.
4
+ * @param wordlist imported wordlist for specific language
5
+ * @param strength mnemonic strength 128-256 bits
6
+ * @example
7
+ * generateMnemonic(wordlist, 128)
8
+ * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'
9
+ */
10
+ export declare function generateMnemonic(wordlist: string[], strength?: number): string;
11
+ /**
12
+ * Reversible: Converts mnemonic string to raw entropy in form of byte array.
13
+ * @param mnemonic 12-24 words
14
+ * @param wordlist imported wordlist for specific language
15
+ * @example
16
+ * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';
17
+ * mnemonicToEntropy(mnem, wordlist)
18
+ * // Produces
19
+ * new Uint8Array([
20
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
21
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f
22
+ * ])
23
+ */
24
+ export declare function mnemonicToEntropy(mnemonic: string, wordlist: string[]): Uint8Array;
25
+ /**
26
+ * Reversible: Converts raw entropy in form of byte array to mnemonic string.
27
+ * @param entropy byte array
28
+ * @param wordlist imported wordlist for specific language
29
+ * @returns 12-24 words
30
+ * @example
31
+ * const ent = new Uint8Array([
32
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
33
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f
34
+ * ]);
35
+ * entropyToMnemonic(ent, wordlist);
36
+ * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'
37
+ */
38
+ export declare function entropyToMnemonic(entropy: Uint8Array, wordlist: string[]): string;
39
+ /**
40
+ * Validates mnemonic for being 12-24 words contained in `wordlist`.
41
+ */
42
+ export declare function validateMnemonic(mnemonic: string, wordlist: string[]): boolean;
43
+ /**
44
+ * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.
45
+ * @param mnemonic 12-24 words
46
+ * @param passphrase string that will additionally protect the key
47
+ * @returns 64 bytes of key data
48
+ * @example
49
+ * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';
50
+ * await mnemonicToSeed(mnem, 'password');
51
+ * // new Uint8Array([...64 bytes])
52
+ */
53
+ export declare function mnemonicToSeed(mnemonic: string, passphrase?: string): Promise<Uint8Array>;
54
+ /**
55
+ * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.
56
+ * @param mnemonic 12-24 words
57
+ * @param passphrase string that will additionally protect the key
58
+ * @returns 64 bytes of key data
59
+ * @example
60
+ * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';
61
+ * mnemonicToSeedSync(mnem, 'password');
62
+ * // new Uint8Array([...64 bytes])
63
+ */
64
+ export declare function mnemonicToSeedSync(mnemonic: string, passphrase?: string): Uint8Array;
65
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAUA,cAAc,aAAa,CAAA;AAwB3B;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,SAAM,GAAG,MAAM,CAI3E;AAmBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,UAAU,CAKlF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAIjF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAO9E;AAID;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,SAAK,uBAE/D;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,SAAK,cAEnE"}
@@ -0,0 +1,65 @@
1
+ export * from './wordlists';
2
+ /**
3
+ * Generate x random words. Uses Cryptographically-Secure Random Number Generator.
4
+ * @param wordlist imported wordlist for specific language
5
+ * @param strength mnemonic strength 128-256 bits
6
+ * @example
7
+ * generateMnemonic(wordlist, 128)
8
+ * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'
9
+ */
10
+ export declare function generateMnemonic(wordlist: string[], strength?: number): string;
11
+ /**
12
+ * Reversible: Converts mnemonic string to raw entropy in form of byte array.
13
+ * @param mnemonic 12-24 words
14
+ * @param wordlist imported wordlist for specific language
15
+ * @example
16
+ * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';
17
+ * mnemonicToEntropy(mnem, wordlist)
18
+ * // Produces
19
+ * new Uint8Array([
20
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
21
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f
22
+ * ])
23
+ */
24
+ export declare function mnemonicToEntropy(mnemonic: string, wordlist: string[]): Uint8Array;
25
+ /**
26
+ * Reversible: Converts raw entropy in form of byte array to mnemonic string.
27
+ * @param entropy byte array
28
+ * @param wordlist imported wordlist for specific language
29
+ * @returns 12-24 words
30
+ * @example
31
+ * const ent = new Uint8Array([
32
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,
33
+ * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f
34
+ * ]);
35
+ * entropyToMnemonic(ent, wordlist);
36
+ * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'
37
+ */
38
+ export declare function entropyToMnemonic(entropy: Uint8Array, wordlist: string[]): string;
39
+ /**
40
+ * Validates mnemonic for being 12-24 words contained in `wordlist`.
41
+ */
42
+ export declare function validateMnemonic(mnemonic: string, wordlist: string[]): boolean;
43
+ /**
44
+ * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.
45
+ * @param mnemonic 12-24 words
46
+ * @param passphrase string that will additionally protect the key
47
+ * @returns 64 bytes of key data
48
+ * @example
49
+ * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';
50
+ * await mnemonicToSeed(mnem, 'password');
51
+ * // new Uint8Array([...64 bytes])
52
+ */
53
+ export declare function mnemonicToSeed(mnemonic: string, passphrase?: string): Promise<Uint8Array>;
54
+ /**
55
+ * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.
56
+ * @param mnemonic 12-24 words
57
+ * @param passphrase string that will additionally protect the key
58
+ * @returns 64 bytes of key data
59
+ * @example
60
+ * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';
61
+ * mnemonicToSeedSync(mnem, 'password');
62
+ * // new Uint8Array([...64 bytes])
63
+ */
64
+ export declare function mnemonicToSeedSync(mnemonic: string, passphrase?: string): Uint8Array;
65
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAUA,cAAc,aAAa,CAAA;AAwB3B;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,SAAM,GAAG,MAAM,CAI3E;AAmBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,UAAU,CAKlF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAIjF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAO9E;AAID;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,SAAK,uBAE/D;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,SAAK,cAEnE"}
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var src_exports = {};
31
+ __export(src_exports, {
32
+ entropyToMnemonic: () => entropyToMnemonic,
33
+ generateMnemonic: () => generateMnemonic,
34
+ mnemonicToEntropy: () => mnemonicToEntropy,
35
+ mnemonicToSeed: () => mnemonicToSeed,
36
+ mnemonicToSeedSync: () => mnemonicToSeedSync,
37
+ validateMnemonic: () => validateMnemonic
38
+ });
39
+ module.exports = __toCommonJS(src_exports);
40
+ var import_assert = __toESM(require("@noble/hashes/_assert"));
41
+ var import_pbkdf2 = require("@noble/hashes/pbkdf2");
42
+ var import_sha256 = require("@noble/hashes/sha256");
43
+ var import_sha512 = require("@noble/hashes/sha512");
44
+ var import_utils = require("@noble/hashes/utils");
45
+ var import_base = require("@scure/base");
46
+ __reExport(src_exports, require("./wordlists"), module.exports);
47
+ /*! scure-bip39 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) */
48
+ const isJapanese = (wordlist) => wordlist[0] === "\u3042\u3044\u3053\u304F\u3057\u3093";
49
+ function nfkd(str) {
50
+ if (typeof str !== "string")
51
+ throw new TypeError(`Invalid mnemonic type: ${typeof str}`);
52
+ return str.normalize("NFKD");
53
+ }
54
+ function normalize(str) {
55
+ const norm = nfkd(str);
56
+ const words = norm.split(" ");
57
+ if (![12, 15, 18, 21, 24].includes(words.length))
58
+ throw new Error("Invalid mnemonic");
59
+ return { nfkd: norm, words };
60
+ }
61
+ function assertEntropy(entropy) {
62
+ import_assert.default.bytes(entropy, 16, 20, 24, 28, 32);
63
+ }
64
+ function generateMnemonic(wordlist, strength = 128) {
65
+ import_assert.default.number(strength);
66
+ if (strength % 32 !== 0 || strength > 256)
67
+ throw new TypeError("Invalid entropy");
68
+ return entropyToMnemonic((0, import_utils.randomBytes)(strength / 8), wordlist);
69
+ }
70
+ const calcChecksum = (entropy) => {
71
+ const bitsLeft = 8 - entropy.length / 4;
72
+ return new Uint8Array([(0, import_sha256.sha256)(entropy)[0] >> bitsLeft << bitsLeft]);
73
+ };
74
+ function getCoder(wordlist) {
75
+ if (!Array.isArray(wordlist) || wordlist.length !== 2048 || typeof wordlist[0] !== "string")
76
+ throw new Error("Worlist: expected array of 2048 strings");
77
+ wordlist.forEach((i) => {
78
+ if (typeof i !== "string")
79
+ throw new Error(`Wordlist: non-string element: ${i}`);
80
+ });
81
+ return import_base.utils.chain(import_base.utils.checksum(1, calcChecksum), import_base.utils.radix2(11, true), import_base.utils.alphabet(wordlist));
82
+ }
83
+ function mnemonicToEntropy(mnemonic, wordlist) {
84
+ const { words } = normalize(mnemonic);
85
+ const entropy = getCoder(wordlist).decode(words);
86
+ assertEntropy(entropy);
87
+ return entropy;
88
+ }
89
+ function entropyToMnemonic(entropy, wordlist) {
90
+ assertEntropy(entropy);
91
+ const words = getCoder(wordlist).encode(entropy);
92
+ return words.join(isJapanese(wordlist) ? "\u3000" : " ");
93
+ }
94
+ function validateMnemonic(mnemonic, wordlist) {
95
+ try {
96
+ mnemonicToEntropy(mnemonic, wordlist);
97
+ } catch (e) {
98
+ return false;
99
+ }
100
+ return true;
101
+ }
102
+ const salt = (passphrase) => nfkd(`mnemonic${passphrase}`);
103
+ function mnemonicToSeed(mnemonic, passphrase = "") {
104
+ return (0, import_pbkdf2.pbkdf2Async)(import_sha512.sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 });
105
+ }
106
+ function mnemonicToSeedSync(mnemonic, passphrase = "") {
107
+ return (0, import_pbkdf2.pbkdf2)(import_sha512.sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 });
108
+ }
109
+ // Annotate the CommonJS export names for ESM import in node:
110
+ 0 && (module.exports = {
111
+ entropyToMnemonic,
112
+ generateMnemonic,
113
+ mnemonicToEntropy,
114
+ mnemonicToSeed,
115
+ mnemonicToSeedSync,
116
+ validateMnemonic,
117
+ ...require("./wordlists")
118
+ });
119
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/* eslint-disable import/no-named-as-default-member */\n/* eslint-disable import/no-internal-modules */\n/*! scure-bip39 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) */\nimport assert from '@noble/hashes/_assert'\nimport { pbkdf2, pbkdf2Async } from '@noble/hashes/pbkdf2'\nimport { sha256 } from '@noble/hashes/sha256'\nimport { sha512 } from '@noble/hashes/sha512'\nimport { randomBytes } from '@noble/hashes/utils'\nimport { utils as baseUtils } from '@scure/base'\n\nexport * from './wordlists'\n\n// Japanese wordlist\nconst isJapanese = (wordlist: string[]) => wordlist[0] === '\\u3042\\u3044\\u3053\\u304f\\u3057\\u3093'\n\n// Normalization replaces equivalent sequences of characters\n// so that any two texts that are equivalent will be reduced\n// to the same sequence of code points, called the normal form of the original text.\nfunction nfkd(str: string) {\n if (typeof str !== 'string') throw new TypeError(`Invalid mnemonic type: ${typeof str}`)\n return str.normalize('NFKD')\n}\n\nfunction normalize(str: string) {\n const norm = nfkd(str)\n const words = norm.split(' ')\n if (![12, 15, 18, 21, 24].includes(words.length)) throw new Error('Invalid mnemonic')\n return { nfkd: norm, words }\n}\n\nfunction assertEntropy(entropy: Uint8Array) {\n assert.bytes(entropy, 16, 20, 24, 28, 32)\n}\n\n/**\n * Generate x random words. Uses Cryptographically-Secure Random Number Generator.\n * @param wordlist imported wordlist for specific language\n * @param strength mnemonic strength 128-256 bits\n * @example\n * generateMnemonic(wordlist, 128)\n * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'\n */\nexport function generateMnemonic(wordlist: string[], strength = 128): string {\n assert.number(strength)\n if (strength % 32 !== 0 || strength > 256) throw new TypeError('Invalid entropy')\n return entropyToMnemonic(randomBytes(strength / 8), wordlist)\n}\n\nconst calcChecksum = (entropy: Uint8Array) => {\n // Checksum is ent.length/4 bits long\n const bitsLeft = 8 - entropy.length / 4\n // Zero rightmost \"bitsLeft\" bits in byte\n // For example: bitsLeft=4 val=10111101 -> 10110000\n return new Uint8Array([(sha256(entropy)[0] >> bitsLeft) << bitsLeft])\n}\n\nfunction getCoder(wordlist: string[]) {\n if (!Array.isArray(wordlist) || wordlist.length !== 2048 || typeof wordlist[0] !== 'string')\n throw new Error('Worlist: expected array of 2048 strings')\n wordlist.forEach((i) => {\n if (typeof i !== 'string') throw new Error(`Wordlist: non-string element: ${i}`)\n })\n return baseUtils.chain(baseUtils.checksum(1, calcChecksum), baseUtils.radix2(11, true), baseUtils.alphabet(wordlist))\n}\n\n/**\n * Reversible: Converts mnemonic string to raw entropy in form of byte array.\n * @param mnemonic 12-24 words\n * @param wordlist imported wordlist for specific language\n * @example\n * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';\n * mnemonicToEntropy(mnem, wordlist)\n * // Produces\n * new Uint8Array([\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f\n * ])\n */\nexport function mnemonicToEntropy(mnemonic: string, wordlist: string[]): Uint8Array {\n const { words } = normalize(mnemonic)\n const entropy = getCoder(wordlist).decode(words)\n assertEntropy(entropy)\n return entropy\n}\n\n/**\n * Reversible: Converts raw entropy in form of byte array to mnemonic string.\n * @param entropy byte array\n * @param wordlist imported wordlist for specific language\n * @returns 12-24 words\n * @example\n * const ent = new Uint8Array([\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f\n * ]);\n * entropyToMnemonic(ent, wordlist);\n * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'\n */\nexport function entropyToMnemonic(entropy: Uint8Array, wordlist: string[]): string {\n assertEntropy(entropy)\n const words = getCoder(wordlist).encode(entropy)\n return words.join(isJapanese(wordlist) ? '\\u3000' : ' ')\n}\n\n/**\n * Validates mnemonic for being 12-24 words contained in `wordlist`.\n */\nexport function validateMnemonic(mnemonic: string, wordlist: string[]): boolean {\n try {\n mnemonicToEntropy(mnemonic, wordlist)\n } catch (e) {\n return false\n }\n return true\n}\n\nconst salt = (passphrase: string) => nfkd(`mnemonic${passphrase}`)\n\n/**\n * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.\n * @param mnemonic 12-24 words\n * @param passphrase string that will additionally protect the key\n * @returns 64 bytes of key data\n * @example\n * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';\n * await mnemonicToSeed(mnem, 'password');\n * // new Uint8Array([...64 bytes])\n */\nexport function mnemonicToSeed(mnemonic: string, passphrase = '') {\n return pbkdf2Async(sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 })\n}\n\n/**\n * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.\n * @param mnemonic 12-24 words\n * @param passphrase string that will additionally protect the key\n * @returns 64 bytes of key data\n * @example\n * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';\n * mnemonicToSeedSync(mnem, 'password');\n * // new Uint8Array([...64 bytes])\n */\nexport function mnemonicToSeedSync(mnemonic: string, passphrase = '') {\n return pbkdf2(sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,oBAAmB;AACnB,oBAAoC;AACpC,oBAAuB;AACvB,oBAAuB;AACvB,mBAA4B;AAC5B,kBAAmC;AAEnC,wBAAc,wBAVd;AAEA;AAWA,MAAM,aAAa,CAAC,aAAuB,SAAS,CAAC,MAAM;AAK3D,SAAS,KAAK,KAAa;AACzB,MAAI,OAAO,QAAQ;AAAU,UAAM,IAAI,UAAU,0BAA0B,OAAO,GAAG,EAAE;AACvF,SAAO,IAAI,UAAU,MAAM;AAC7B;AAEA,SAAS,UAAU,KAAa;AAC9B,QAAM,OAAO,KAAK,GAAG;AACrB,QAAM,QAAQ,KAAK,MAAM,GAAG;AAC5B,MAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE,EAAE,SAAS,MAAM,MAAM;AAAG,UAAM,IAAI,MAAM,kBAAkB;AACpF,SAAO,EAAE,MAAM,MAAM,MAAM;AAC7B;AAEA,SAAS,cAAc,SAAqB;AAC1C,gBAAAA,QAAO,MAAM,SAAS,IAAI,IAAI,IAAI,IAAI,EAAE;AAC1C;AAUO,SAAS,iBAAiB,UAAoB,WAAW,KAAa;AAC3E,gBAAAA,QAAO,OAAO,QAAQ;AACtB,MAAI,WAAW,OAAO,KAAK,WAAW;AAAK,UAAM,IAAI,UAAU,iBAAiB;AAChF,SAAO,sBAAkB,0BAAY,WAAW,CAAC,GAAG,QAAQ;AAC9D;AAEA,MAAM,eAAe,CAAC,YAAwB;AAE5C,QAAM,WAAW,IAAI,QAAQ,SAAS;AAGtC,SAAO,IAAI,WAAW,KAAE,sBAAO,OAAO,EAAE,CAAC,KAAK,YAAa,QAAQ,CAAC;AACtE;AAEA,SAAS,SAAS,UAAoB;AACpC,MAAI,CAAC,MAAM,QAAQ,QAAQ,KAAK,SAAS,WAAW,QAAQ,OAAO,SAAS,CAAC,MAAM;AACjF,UAAM,IAAI,MAAM,yCAAyC;AAC3D,WAAS,QAAQ,CAAC,MAAM;AACtB,QAAI,OAAO,MAAM;AAAU,YAAM,IAAI,MAAM,iCAAiC,CAAC,EAAE;AAAA,EACjF,CAAC;AACD,SAAO,YAAAC,MAAU,MAAM,YAAAA,MAAU,SAAS,GAAG,YAAY,GAAG,YAAAA,MAAU,OAAO,IAAI,IAAI,GAAG,YAAAA,MAAU,SAAS,QAAQ,CAAC;AACtH;AAeO,SAAS,kBAAkB,UAAkB,UAAgC;AAClF,QAAM,EAAE,MAAM,IAAI,UAAU,QAAQ;AACpC,QAAM,UAAU,SAAS,QAAQ,EAAE,OAAO,KAAK;AAC/C,gBAAc,OAAO;AACrB,SAAO;AACT;AAeO,SAAS,kBAAkB,SAAqB,UAA4B;AACjF,gBAAc,OAAO;AACrB,QAAM,QAAQ,SAAS,QAAQ,EAAE,OAAO,OAAO;AAC/C,SAAO,MAAM,KAAK,WAAW,QAAQ,IAAI,WAAW,GAAG;AACzD;AAKO,SAAS,iBAAiB,UAAkB,UAA6B;AAC9E,MAAI;AACF,sBAAkB,UAAU,QAAQ;AAAA,EACtC,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEA,MAAM,OAAO,CAAC,eAAuB,KAAK,WAAW,UAAU,EAAE;AAY1D,SAAS,eAAe,UAAkB,aAAa,IAAI;AAChE,aAAO,2BAAY,sBAAQ,UAAU,QAAQ,EAAE,MAAM,KAAK,UAAU,GAAG,EAAE,GAAG,MAAM,OAAO,GAAG,CAAC;AAC/F;AAYO,SAAS,mBAAmB,UAAkB,aAAa,IAAI;AACpE,aAAO,sBAAO,sBAAQ,UAAU,QAAQ,EAAE,MAAM,KAAK,UAAU,GAAG,EAAE,GAAG,MAAM,OAAO,GAAG,CAAC;AAC1F;","names":["assert","baseUtils"]}
@@ -0,0 +1,78 @@
1
+ /*! scure-bip39 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) */
2
+ import assert from "@noble/hashes/_assert";
3
+ import { pbkdf2, pbkdf2Async } from "@noble/hashes/pbkdf2";
4
+ import { sha256 } from "@noble/hashes/sha256";
5
+ import { sha512 } from "@noble/hashes/sha512";
6
+ import { randomBytes } from "@noble/hashes/utils";
7
+ import { utils as baseUtils } from "@scure/base";
8
+ export * from "./wordlists";
9
+ const isJapanese = (wordlist) => wordlist[0] === "\u3042\u3044\u3053\u304F\u3057\u3093";
10
+ function nfkd(str) {
11
+ if (typeof str !== "string")
12
+ throw new TypeError(`Invalid mnemonic type: ${typeof str}`);
13
+ return str.normalize("NFKD");
14
+ }
15
+ function normalize(str) {
16
+ const norm = nfkd(str);
17
+ const words = norm.split(" ");
18
+ if (![12, 15, 18, 21, 24].includes(words.length))
19
+ throw new Error("Invalid mnemonic");
20
+ return { nfkd: norm, words };
21
+ }
22
+ function assertEntropy(entropy) {
23
+ assert.bytes(entropy, 16, 20, 24, 28, 32);
24
+ }
25
+ function generateMnemonic(wordlist, strength = 128) {
26
+ assert.number(strength);
27
+ if (strength % 32 !== 0 || strength > 256)
28
+ throw new TypeError("Invalid entropy");
29
+ return entropyToMnemonic(randomBytes(strength / 8), wordlist);
30
+ }
31
+ const calcChecksum = (entropy) => {
32
+ const bitsLeft = 8 - entropy.length / 4;
33
+ return new Uint8Array([sha256(entropy)[0] >> bitsLeft << bitsLeft]);
34
+ };
35
+ function getCoder(wordlist) {
36
+ if (!Array.isArray(wordlist) || wordlist.length !== 2048 || typeof wordlist[0] !== "string")
37
+ throw new Error("Worlist: expected array of 2048 strings");
38
+ wordlist.forEach((i) => {
39
+ if (typeof i !== "string")
40
+ throw new Error(`Wordlist: non-string element: ${i}`);
41
+ });
42
+ return baseUtils.chain(baseUtils.checksum(1, calcChecksum), baseUtils.radix2(11, true), baseUtils.alphabet(wordlist));
43
+ }
44
+ function mnemonicToEntropy(mnemonic, wordlist) {
45
+ const { words } = normalize(mnemonic);
46
+ const entropy = getCoder(wordlist).decode(words);
47
+ assertEntropy(entropy);
48
+ return entropy;
49
+ }
50
+ function entropyToMnemonic(entropy, wordlist) {
51
+ assertEntropy(entropy);
52
+ const words = getCoder(wordlist).encode(entropy);
53
+ return words.join(isJapanese(wordlist) ? "\u3000" : " ");
54
+ }
55
+ function validateMnemonic(mnemonic, wordlist) {
56
+ try {
57
+ mnemonicToEntropy(mnemonic, wordlist);
58
+ } catch (e) {
59
+ return false;
60
+ }
61
+ return true;
62
+ }
63
+ const salt = (passphrase) => nfkd(`mnemonic${passphrase}`);
64
+ function mnemonicToSeed(mnemonic, passphrase = "") {
65
+ return pbkdf2Async(sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 });
66
+ }
67
+ function mnemonicToSeedSync(mnemonic, passphrase = "") {
68
+ return pbkdf2(sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 });
69
+ }
70
+ export {
71
+ entropyToMnemonic,
72
+ generateMnemonic,
73
+ mnemonicToEntropy,
74
+ mnemonicToSeed,
75
+ mnemonicToSeedSync,
76
+ validateMnemonic
77
+ };
78
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/* eslint-disable import/no-named-as-default-member */\n/* eslint-disable import/no-internal-modules */\n/*! scure-bip39 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) */\nimport assert from '@noble/hashes/_assert'\nimport { pbkdf2, pbkdf2Async } from '@noble/hashes/pbkdf2'\nimport { sha256 } from '@noble/hashes/sha256'\nimport { sha512 } from '@noble/hashes/sha512'\nimport { randomBytes } from '@noble/hashes/utils'\nimport { utils as baseUtils } from '@scure/base'\n\nexport * from './wordlists'\n\n// Japanese wordlist\nconst isJapanese = (wordlist: string[]) => wordlist[0] === '\\u3042\\u3044\\u3053\\u304f\\u3057\\u3093'\n\n// Normalization replaces equivalent sequences of characters\n// so that any two texts that are equivalent will be reduced\n// to the same sequence of code points, called the normal form of the original text.\nfunction nfkd(str: string) {\n if (typeof str !== 'string') throw new TypeError(`Invalid mnemonic type: ${typeof str}`)\n return str.normalize('NFKD')\n}\n\nfunction normalize(str: string) {\n const norm = nfkd(str)\n const words = norm.split(' ')\n if (![12, 15, 18, 21, 24].includes(words.length)) throw new Error('Invalid mnemonic')\n return { nfkd: norm, words }\n}\n\nfunction assertEntropy(entropy: Uint8Array) {\n assert.bytes(entropy, 16, 20, 24, 28, 32)\n}\n\n/**\n * Generate x random words. Uses Cryptographically-Secure Random Number Generator.\n * @param wordlist imported wordlist for specific language\n * @param strength mnemonic strength 128-256 bits\n * @example\n * generateMnemonic(wordlist, 128)\n * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'\n */\nexport function generateMnemonic(wordlist: string[], strength = 128): string {\n assert.number(strength)\n if (strength % 32 !== 0 || strength > 256) throw new TypeError('Invalid entropy')\n return entropyToMnemonic(randomBytes(strength / 8), wordlist)\n}\n\nconst calcChecksum = (entropy: Uint8Array) => {\n // Checksum is ent.length/4 bits long\n const bitsLeft = 8 - entropy.length / 4\n // Zero rightmost \"bitsLeft\" bits in byte\n // For example: bitsLeft=4 val=10111101 -> 10110000\n return new Uint8Array([(sha256(entropy)[0] >> bitsLeft) << bitsLeft])\n}\n\nfunction getCoder(wordlist: string[]) {\n if (!Array.isArray(wordlist) || wordlist.length !== 2048 || typeof wordlist[0] !== 'string')\n throw new Error('Worlist: expected array of 2048 strings')\n wordlist.forEach((i) => {\n if (typeof i !== 'string') throw new Error(`Wordlist: non-string element: ${i}`)\n })\n return baseUtils.chain(baseUtils.checksum(1, calcChecksum), baseUtils.radix2(11, true), baseUtils.alphabet(wordlist))\n}\n\n/**\n * Reversible: Converts mnemonic string to raw entropy in form of byte array.\n * @param mnemonic 12-24 words\n * @param wordlist imported wordlist for specific language\n * @example\n * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';\n * mnemonicToEntropy(mnem, wordlist)\n * // Produces\n * new Uint8Array([\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f\n * ])\n */\nexport function mnemonicToEntropy(mnemonic: string, wordlist: string[]): Uint8Array {\n const { words } = normalize(mnemonic)\n const entropy = getCoder(wordlist).decode(words)\n assertEntropy(entropy)\n return entropy\n}\n\n/**\n * Reversible: Converts raw entropy in form of byte array to mnemonic string.\n * @param entropy byte array\n * @param wordlist imported wordlist for specific language\n * @returns 12-24 words\n * @example\n * const ent = new Uint8Array([\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f,\n * 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f\n * ]);\n * entropyToMnemonic(ent, wordlist);\n * // 'legal winner thank year wave sausage worth useful legal winner thank yellow'\n */\nexport function entropyToMnemonic(entropy: Uint8Array, wordlist: string[]): string {\n assertEntropy(entropy)\n const words = getCoder(wordlist).encode(entropy)\n return words.join(isJapanese(wordlist) ? '\\u3000' : ' ')\n}\n\n/**\n * Validates mnemonic for being 12-24 words contained in `wordlist`.\n */\nexport function validateMnemonic(mnemonic: string, wordlist: string[]): boolean {\n try {\n mnemonicToEntropy(mnemonic, wordlist)\n } catch (e) {\n return false\n }\n return true\n}\n\nconst salt = (passphrase: string) => nfkd(`mnemonic${passphrase}`)\n\n/**\n * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.\n * @param mnemonic 12-24 words\n * @param passphrase string that will additionally protect the key\n * @returns 64 bytes of key data\n * @example\n * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';\n * await mnemonicToSeed(mnem, 'password');\n * // new Uint8Array([...64 bytes])\n */\nexport function mnemonicToSeed(mnemonic: string, passphrase = '') {\n return pbkdf2Async(sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 })\n}\n\n/**\n * Irreversible: Uses KDF to derive 64 bytes of key data from mnemonic + optional password.\n * @param mnemonic 12-24 words\n * @param passphrase string that will additionally protect the key\n * @returns 64 bytes of key data\n * @example\n * const mnem = 'legal winner thank year wave sausage worth useful legal winner thank yellow';\n * mnemonicToSeedSync(mnem, 'password');\n * // new Uint8Array([...64 bytes])\n */\nexport function mnemonicToSeedSync(mnemonic: string, passphrase = '') {\n return pbkdf2(sha512, normalize(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 })\n}\n"],"mappings":"AAEA;AACA,OAAO,YAAY;AACnB,SAAS,QAAQ,mBAAmB;AACpC,SAAS,cAAc;AACvB,SAAS,cAAc;AACvB,SAAS,mBAAmB;AAC5B,SAAS,SAAS,iBAAiB;AAEnC,cAAc;AAGd,MAAM,aAAa,CAAC,aAAuB,SAAS,CAAC,MAAM;AAK3D,SAAS,KAAK,KAAa;AACzB,MAAI,OAAO,QAAQ;AAAU,UAAM,IAAI,UAAU,0BAA0B,OAAO,GAAG,EAAE;AACvF,SAAO,IAAI,UAAU,MAAM;AAC7B;AAEA,SAAS,UAAU,KAAa;AAC9B,QAAM,OAAO,KAAK,GAAG;AACrB,QAAM,QAAQ,KAAK,MAAM,GAAG;AAC5B,MAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE,EAAE,SAAS,MAAM,MAAM;AAAG,UAAM,IAAI,MAAM,kBAAkB;AACpF,SAAO,EAAE,MAAM,MAAM,MAAM;AAC7B;AAEA,SAAS,cAAc,SAAqB;AAC1C,SAAO,MAAM,SAAS,IAAI,IAAI,IAAI,IAAI,EAAE;AAC1C;AAUO,SAAS,iBAAiB,UAAoB,WAAW,KAAa;AAC3E,SAAO,OAAO,QAAQ;AACtB,MAAI,WAAW,OAAO,KAAK,WAAW;AAAK,UAAM,IAAI,UAAU,iBAAiB;AAChF,SAAO,kBAAkB,YAAY,WAAW,CAAC,GAAG,QAAQ;AAC9D;AAEA,MAAM,eAAe,CAAC,YAAwB;AAE5C,QAAM,WAAW,IAAI,QAAQ,SAAS;AAGtC,SAAO,IAAI,WAAW,CAAE,OAAO,OAAO,EAAE,CAAC,KAAK,YAAa,QAAQ,CAAC;AACtE;AAEA,SAAS,SAAS,UAAoB;AACpC,MAAI,CAAC,MAAM,QAAQ,QAAQ,KAAK,SAAS,WAAW,QAAQ,OAAO,SAAS,CAAC,MAAM;AACjF,UAAM,IAAI,MAAM,yCAAyC;AAC3D,WAAS,QAAQ,CAAC,MAAM;AACtB,QAAI,OAAO,MAAM;AAAU,YAAM,IAAI,MAAM,iCAAiC,CAAC,EAAE;AAAA,EACjF,CAAC;AACD,SAAO,UAAU,MAAM,UAAU,SAAS,GAAG,YAAY,GAAG,UAAU,OAAO,IAAI,IAAI,GAAG,UAAU,SAAS,QAAQ,CAAC;AACtH;AAeO,SAAS,kBAAkB,UAAkB,UAAgC;AAClF,QAAM,EAAE,MAAM,IAAI,UAAU,QAAQ;AACpC,QAAM,UAAU,SAAS,QAAQ,EAAE,OAAO,KAAK;AAC/C,gBAAc,OAAO;AACrB,SAAO;AACT;AAeO,SAAS,kBAAkB,SAAqB,UAA4B;AACjF,gBAAc,OAAO;AACrB,QAAM,QAAQ,SAAS,QAAQ,EAAE,OAAO,OAAO;AAC/C,SAAO,MAAM,KAAK,WAAW,QAAQ,IAAI,WAAW,GAAG;AACzD;AAKO,SAAS,iBAAiB,UAAkB,UAA6B;AAC9E,MAAI;AACF,sBAAkB,UAAU,QAAQ;AAAA,EACtC,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEA,MAAM,OAAO,CAAC,eAAuB,KAAK,WAAW,UAAU,EAAE;AAY1D,SAAS,eAAe,UAAkB,aAAa,IAAI;AAChE,SAAO,YAAY,QAAQ,UAAU,QAAQ,EAAE,MAAM,KAAK,UAAU,GAAG,EAAE,GAAG,MAAM,OAAO,GAAG,CAAC;AAC/F;AAYO,SAAS,mBAAmB,UAAkB,aAAa,IAAI;AACpE,SAAO,OAAO,QAAQ,UAAU,QAAQ,EAAE,MAAM,KAAK,UAAU,GAAG,EAAE,GAAG,MAAM,OAAO,GAAG,CAAC;AAC1F;","names":[]}
@@ -0,0 +1,2 @@
1
+ export declare const wordlist: string[];
2
+ //# sourceMappingURL=czech.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"czech.d.ts","sourceRoot":"","sources":["../../../src/wordlists/czech.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,EAAE,MAAM,EA+/DZ,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const wordlist: string[];
2
+ //# sourceMappingURL=czech.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"czech.d.ts","sourceRoot":"","sources":["../../../src/wordlists/czech.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,EAAE,MAAM,EA+/DZ,CAAA"}