"use strict"; import { toUtf8String } from "@ethersproject/strings"; import { Wordlist } from "./wordlist"; const data = "}aE#4A=Yv&co#4N#6G=cJ&SM#66|/Z#4t&kn~46#4K~4q%b9=IR#7l,mB#7W_X2*dl}Uo~7s}Uf&Iw#9c&cw~6O&H6&wx&IG%v5=IQ~8a&Pv#47$PR&50%Ko&QM&3l#5f,D9#4L|/H&tQ;v0~6n]nN> 2), 128 + codes.indexOf(data[i * 3 + 1]), 128 + codes.indexOf(data[i * 3 + 2]), ]; if (lang.locale === "zh_tw") { const common = s % 4; for (let i = common; i < 3; i++) { bytes[i] = codes.indexOf(deltaData[deltaOffset++]) + ((i == 0) ? 228 : 128); } } wordlist[lang.locale].push(toUtf8String(bytes)); } if (Wordlist.check(lang) !== Checks[lang.locale]) { wordlist[lang.locale] = null; throw new Error("BIP39 Wordlist for " + lang.locale + " (Chinese) FAILED"); } } class LangZh extends Wordlist { constructor(country) { super("zh_" + country); } getWord(index) { loadWords(this); return wordlist[this.locale][index]; } getWordIndex(word) { loadWords(this); return wordlist[this.locale].indexOf(word); } split(mnemonic) { mnemonic = mnemonic.replace(/(?:\u3000| )+/g, ""); return mnemonic.split(""); } } const langZhCn = new LangZh("cn"); Wordlist.register(langZhCn); Wordlist.register(langZhCn, "zh"); const langZhTw = new LangZh("tw"); Wordlist.register(langZhTw); export { langZhCn, langZhTw };