| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | const ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';const ALPHABET_MAP = {};for (let i = 0; i < ALPHABET.length; i++)    ALPHABET_MAP[ALPHABET.charAt(i)] = i;const BASE = 58;export function encode58(buffer) {    if (buffer.length === 0)        return '';    let i;    let j;    const digits = [0];    for (i = 0; i < buffer.length; i++) {        for (j = 0; j < digits.length; j++)            digits[j] <<= 8;        // eslint-disable-next-line @typescript-eslint/ban-ts-comment        // @ts-ignore        digits[0] += buffer[i];        let carry = 0;        for (j = 0; j < digits.length; ++j) {            digits[j] += carry;            carry = (digits[j] / BASE) | 0;            digits[j] %= BASE;        }        while (carry) {            digits.push(carry % BASE);            carry = (carry / BASE) | 0;        }    }    for (i = 0; buffer[i] === 0 && i < buffer.length - 1; i++)        digits.push(0);    return digits        .reverse()        .map((digit) => ALPHABET[digit])        .join('');}export function decode58(string) {    if (string.length === 0)        return [];    let i;    let j;    const bytes = [0];    for (i = 0; i < string.length; i++) {        const c = string[i];        if (!(c in ALPHABET_MAP))            throw new Error('Non-base58 character');        for (j = 0; j < bytes.length; j++)            bytes[j] *= BASE;        bytes[0] += ALPHABET_MAP[c];        let carry = 0;        for (j = 0; j < bytes.length; ++j) {            bytes[j] += carry;            carry = bytes[j] >> 8;            bytes[j] &= 0xff;        }        while (carry) {            bytes.push(carry & 0xff);            carry >>= 8;        }    }    for (i = 0; string[i] === '1' && i < string.length - 1; i++)        bytes.push(0);    return bytes.reverse();}//# sourceMappingURL=base58.js.map
 |