{"id":"node_modules/ethers/utils/utf8.js","dependencies":[{"name":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/package.json","includedInParent":true,"mtime":1573802285913},{"name":"/Users/pa/Js_workspace/eth-merkle-bridge-js/.babelrc","includedInParent":true,"mtime":1571296685108},{"name":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/package.json","includedInParent":true,"mtime":1573797080064},{"name":"../constants","loc":{"line":3,"column":26},"parent":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/utils/utf8.js","resolved":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/constants.js"},{"name":"../errors","loc":{"line":4,"column":23},"parent":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/utils/utf8.js","resolved":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/errors.js"},{"name":"./bytes","loc":{"line":5,"column":22},"parent":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/utils/utf8.js","resolved":"/Users/pa/Js_workspace/eth-merkle-bridge-js/example/node_modules/ethers/utils/bytes.js"}],"generated":{"js":"'use strict';\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"../constants\");\nvar errors_1 = require(\"../errors\");\nvar bytes_1 = require(\"./bytes\");\n///////////////////////////////\nvar UnicodeNormalizationForm;\n(function (UnicodeNormalizationForm) {\n    UnicodeNormalizationForm[\"current\"] = \"\";\n    UnicodeNormalizationForm[\"NFC\"] = \"NFC\";\n    UnicodeNormalizationForm[\"NFD\"] = \"NFD\";\n    UnicodeNormalizationForm[\"NFKC\"] = \"NFKC\";\n    UnicodeNormalizationForm[\"NFKD\"] = \"NFKD\";\n})(UnicodeNormalizationForm = exports.UnicodeNormalizationForm || (exports.UnicodeNormalizationForm = {}));\n;\n// http://stackoverflow.com/questions/18729405/how-to-convert-utf8-string-to-byte-array\nfunction toUtf8Bytes(str, form) {\n    if (form === void 0) { form = UnicodeNormalizationForm.current; }\n    if (form != UnicodeNormalizationForm.current) {\n        errors_1.checkNormalize();\n        str = str.normalize(form);\n    }\n    var result = [];\n    for (var i = 0; i < str.length; i++) {\n        var c = str.charCodeAt(i);\n        if (c < 0x80) {\n            result.push(c);\n        }\n        else if (c < 0x800) {\n            result.push((c >> 6) | 0xc0);\n            result.push((c & 0x3f) | 0x80);\n        }\n        else if ((c & 0xfc00) == 0xd800) {\n            i++;\n            var c2 = str.charCodeAt(i);\n            if (i >= str.length || (c2 & 0xfc00) !== 0xdc00) {\n                throw new Error('invalid utf-8 string');\n            }\n            // Surrogate Pair\n            c = 0x10000 + ((c & 0x03ff) << 10) + (c2 & 0x03ff);\n            result.push((c >> 18) | 0xf0);\n            result.push(((c >> 12) & 0x3f) | 0x80);\n            result.push(((c >> 6) & 0x3f) | 0x80);\n            result.push((c & 0x3f) | 0x80);\n        }\n        else {\n            result.push((c >> 12) | 0xe0);\n            result.push(((c >> 6) & 0x3f) | 0x80);\n            result.push((c & 0x3f) | 0x80);\n        }\n    }\n    return bytes_1.arrayify(result);\n}\nexports.toUtf8Bytes = toUtf8Bytes;\n;\n// http://stackoverflow.com/questions/13356493/decode-utf-8-with-javascript#13691499\nfunction toUtf8String(bytes, ignoreErrors) {\n    bytes = bytes_1.arrayify(bytes);\n    var result = '';\n    var i = 0;\n    // Invalid bytes are ignored\n    while (i < bytes.length) {\n        var c = bytes[i++];\n        // 0xxx xxxx\n        if (c >> 7 === 0) {\n            result += String.fromCharCode(c);\n            continue;\n        }\n        // Multibyte; how many bytes left for this character?\n        var extraLength = null;\n        var overlongMask = null;\n        // 110x xxxx 10xx xxxx\n        if ((c & 0xe0) === 0xc0) {\n            extraLength = 1;\n            overlongMask = 0x7f;\n            // 1110 xxxx 10xx xxxx 10xx xxxx\n        }\n        else if ((c & 0xf0) === 0xe0) {\n            extraLength = 2;\n            overlongMask = 0x7ff;\n            // 1111 0xxx 10xx xxxx 10xx xxxx 10xx xxxx\n        }\n        else if ((c & 0xf8) === 0xf0) {\n            extraLength = 3;\n            overlongMask = 0xffff;\n        }\n        else {\n            if (!ignoreErrors) {\n                if ((c & 0xc0) === 0x80) {\n                    throw new Error('invalid utf8 byte sequence; unexpected continuation byte');\n                }\n                throw new Error('invalid utf8 byte sequence; invalid prefix');\n            }\n            continue;\n        }\n        // Do we have enough bytes in our data?\n        if (i + extraLength > bytes.length) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; too short');\n            }\n            // If there is an invalid unprocessed byte, skip continuation bytes\n            for (; i < bytes.length; i++) {\n                if (bytes[i] >> 6 !== 0x02) {\n                    break;\n                }\n            }\n            continue;\n        }\n        // Remove the length prefix from the char\n        var res = c & ((1 << (8 - extraLength - 1)) - 1);\n        for (var j = 0; j < extraLength; j++) {\n            var nextChar = bytes[i];\n            // Invalid continuation byte\n            if ((nextChar & 0xc0) != 0x80) {\n                res = null;\n                break;\n            }\n            ;\n            res = (res << 6) | (nextChar & 0x3f);\n            i++;\n        }\n        if (res === null) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; invalid continuation byte');\n            }\n            continue;\n        }\n        // Check for overlong seuences (more bytes than needed)\n        if (res <= overlongMask) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; overlong');\n            }\n            continue;\n        }\n        // Maximum code point\n        if (res > 0x10ffff) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; out-of-range');\n            }\n            continue;\n        }\n        // Reserved for UTF-16 surrogate halves\n        if (res >= 0xd800 && res <= 0xdfff) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; utf-16 surrogate');\n            }\n            continue;\n        }\n        if (res <= 0xffff) {\n            result += String.fromCharCode(res);\n            continue;\n        }\n        res -= 0x10000;\n        result += String.fromCharCode(((res >> 10) & 0x3ff) + 0xd800, (res & 0x3ff) + 0xdc00);\n    }\n    return result;\n}\nexports.toUtf8String = toUtf8String;\nfunction formatBytes32String(text) {\n    // Get the bytes\n    var bytes = toUtf8Bytes(text);\n    // Check we have room for null-termination\n    if (bytes.length > 31) {\n        throw new Error('bytes32 string must be less than 32 bytes');\n    }\n    // Zero-pad (implicitly null-terminates)\n    return bytes_1.hexlify(bytes_1.concat([bytes, constants_1.HashZero]).slice(0, 32));\n}\nexports.formatBytes32String = formatBytes32String;\nfunction parseBytes32String(bytes) {\n    var data = bytes_1.arrayify(bytes);\n    // Must be 32 bytes with a null-termination\n    if (data.length !== 32) {\n        throw new Error('invalid bytes32 - not 32 bytes long');\n    }\n    if (data[31] !== 0) {\n        throw new Error('invalid bytes32 string - no null terminator');\n    }\n    // Find the null termination\n    var length = 31;\n    while (data[length - 1] === 0) {\n        length--;\n    }\n    // Determine the string value\n    return toUtf8String(data.slice(0, length));\n}\nexports.parseBytes32String = parseBytes32String;\n"},"sourceMaps":{"js":{"mappings":[{"source":"node_modules/ethers/utils/utf8.js","original":{"line":1,"column":0},"generated":{"line":1,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":2,"column":0},"generated":{"line":2,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":3,"column":0},"generated":{"line":3,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":4,"column":0},"generated":{"line":4,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":5,"column":0},"generated":{"line":5,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":6,"column":0},"generated":{"line":6,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":7,"column":0},"generated":{"line":7,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":8,"column":0},"generated":{"line":8,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":9,"column":0},"generated":{"line":9,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":10,"column":0},"generated":{"line":10,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":11,"column":0},"generated":{"line":11,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":12,"column":0},"generated":{"line":12,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":13,"column":0},"generated":{"line":13,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":14,"column":0},"generated":{"line":14,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":15,"column":0},"generated":{"line":15,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":16,"column":0},"generated":{"line":16,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":17,"column":0},"generated":{"line":17,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":18,"column":0},"generated":{"line":18,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":19,"column":0},"generated":{"line":19,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":20,"column":0},"generated":{"line":20,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":21,"column":0},"generated":{"line":21,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":22,"column":0},"generated":{"line":22,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":23,"column":0},"generated":{"line":23,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":24,"column":0},"generated":{"line":24,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":25,"column":0},"generated":{"line":25,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":26,"column":0},"generated":{"line":26,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":27,"column":0},"generated":{"line":27,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":28,"column":0},"generated":{"line":28,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":29,"column":0},"generated":{"line":29,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":30,"column":0},"generated":{"line":30,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":31,"column":0},"generated":{"line":31,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":32,"column":0},"generated":{"line":32,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":33,"column":0},"generated":{"line":33,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":34,"column":0},"generated":{"line":34,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":35,"column":0},"generated":{"line":35,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":36,"column":0},"generated":{"line":36,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":37,"column":0},"generated":{"line":37,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":38,"column":0},"generated":{"line":38,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":39,"column":0},"generated":{"line":39,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":40,"column":0},"generated":{"line":40,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":41,"column":0},"generated":{"line":41,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":42,"column":0},"generated":{"line":42,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":43,"column":0},"generated":{"line":43,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":44,"column":0},"generated":{"line":44,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":45,"column":0},"generated":{"line":45,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":46,"column":0},"generated":{"line":46,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":47,"column":0},"generated":{"line":47,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":48,"column":0},"generated":{"line":48,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":49,"column":0},"generated":{"line":49,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":50,"column":0},"generated":{"line":50,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":51,"column":0},"generated":{"line":51,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":52,"column":0},"generated":{"line":52,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":53,"column":0},"generated":{"line":53,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":54,"column":0},"generated":{"line":54,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":55,"column":0},"generated":{"line":55,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":56,"column":0},"generated":{"line":56,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":57,"column":0},"generated":{"line":57,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":58,"column":0},"generated":{"line":58,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":59,"column":0},"generated":{"line":59,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":60,"column":0},"generated":{"line":60,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":61,"column":0},"generated":{"line":61,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":62,"column":0},"generated":{"line":62,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":63,"column":0},"generated":{"line":63,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":64,"column":0},"generated":{"line":64,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":65,"column":0},"generated":{"line":65,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":66,"column":0},"generated":{"line":66,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":67,"column":0},"generated":{"line":67,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":68,"column":0},"generated":{"line":68,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":69,"column":0},"generated":{"line":69,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":70,"column":0},"generated":{"line":70,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":71,"column":0},"generated":{"line":71,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":72,"column":0},"generated":{"line":72,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":73,"column":0},"generated":{"line":73,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":74,"column":0},"generated":{"line":74,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":75,"column":0},"generated":{"line":75,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":76,"column":0},"generated":{"line":76,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":77,"column":0},"generated":{"line":77,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":78,"column":0},"generated":{"line":78,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":79,"column":0},"generated":{"line":79,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":80,"column":0},"generated":{"line":80,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":81,"column":0},"generated":{"line":81,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":82,"column":0},"generated":{"line":82,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":83,"column":0},"generated":{"line":83,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":84,"column":0},"generated":{"line":84,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":85,"column":0},"generated":{"line":85,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":86,"column":0},"generated":{"line":86,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":87,"column":0},"generated":{"line":87,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":88,"column":0},"generated":{"line":88,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":89,"column":0},"generated":{"line":89,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":90,"column":0},"generated":{"line":90,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":91,"column":0},"generated":{"line":91,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":92,"column":0},"generated":{"line":92,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":93,"column":0},"generated":{"line":93,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":94,"column":0},"generated":{"line":94,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":95,"column":0},"generated":{"line":95,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":96,"column":0},"generated":{"line":96,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":97,"column":0},"generated":{"line":97,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":98,"column":0},"generated":{"line":98,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":99,"column":0},"generated":{"line":99,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":100,"column":0},"generated":{"line":100,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":101,"column":0},"generated":{"line":101,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":102,"column":0},"generated":{"line":102,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":103,"column":0},"generated":{"line":103,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":104,"column":0},"generated":{"line":104,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":105,"column":0},"generated":{"line":105,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":106,"column":0},"generated":{"line":106,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":107,"column":0},"generated":{"line":107,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":108,"column":0},"generated":{"line":108,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":109,"column":0},"generated":{"line":109,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":110,"column":0},"generated":{"line":110,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":111,"column":0},"generated":{"line":111,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":112,"column":0},"generated":{"line":112,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":113,"column":0},"generated":{"line":113,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":114,"column":0},"generated":{"line":114,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":115,"column":0},"generated":{"line":115,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":116,"column":0},"generated":{"line":116,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":117,"column":0},"generated":{"line":117,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":118,"column":0},"generated":{"line":118,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":119,"column":0},"generated":{"line":119,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":120,"column":0},"generated":{"line":120,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":121,"column":0},"generated":{"line":121,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":122,"column":0},"generated":{"line":122,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":123,"column":0},"generated":{"line":123,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":124,"column":0},"generated":{"line":124,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":125,"column":0},"generated":{"line":125,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":126,"column":0},"generated":{"line":126,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":127,"column":0},"generated":{"line":127,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":128,"column":0},"generated":{"line":128,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":129,"column":0},"generated":{"line":129,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":130,"column":0},"generated":{"line":130,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":131,"column":0},"generated":{"line":131,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":132,"column":0},"generated":{"line":132,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":133,"column":0},"generated":{"line":133,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":134,"column":0},"generated":{"line":134,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":135,"column":0},"generated":{"line":135,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":136,"column":0},"generated":{"line":136,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":137,"column":0},"generated":{"line":137,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":138,"column":0},"generated":{"line":138,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":139,"column":0},"generated":{"line":139,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":140,"column":0},"generated":{"line":140,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":141,"column":0},"generated":{"line":141,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":142,"column":0},"generated":{"line":142,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":143,"column":0},"generated":{"line":143,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":144,"column":0},"generated":{"line":144,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":145,"column":0},"generated":{"line":145,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":146,"column":0},"generated":{"line":146,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":147,"column":0},"generated":{"line":147,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":148,"column":0},"generated":{"line":148,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":149,"column":0},"generated":{"line":149,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":150,"column":0},"generated":{"line":150,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":151,"column":0},"generated":{"line":151,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":152,"column":0},"generated":{"line":152,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":153,"column":0},"generated":{"line":153,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":154,"column":0},"generated":{"line":154,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":155,"column":0},"generated":{"line":155,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":156,"column":0},"generated":{"line":156,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":157,"column":0},"generated":{"line":157,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":158,"column":0},"generated":{"line":158,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":159,"column":0},"generated":{"line":159,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":160,"column":0},"generated":{"line":160,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":161,"column":0},"generated":{"line":161,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":162,"column":0},"generated":{"line":162,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":163,"column":0},"generated":{"line":163,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":164,"column":0},"generated":{"line":164,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":165,"column":0},"generated":{"line":165,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":166,"column":0},"generated":{"line":166,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":167,"column":0},"generated":{"line":167,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":168,"column":0},"generated":{"line":168,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":169,"column":0},"generated":{"line":169,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":170,"column":0},"generated":{"line":170,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":171,"column":0},"generated":{"line":171,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":172,"column":0},"generated":{"line":172,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":173,"column":0},"generated":{"line":173,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":174,"column":0},"generated":{"line":174,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":175,"column":0},"generated":{"line":175,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":176,"column":0},"generated":{"line":176,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":177,"column":0},"generated":{"line":177,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":178,"column":0},"generated":{"line":178,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":179,"column":0},"generated":{"line":179,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":180,"column":0},"generated":{"line":180,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":181,"column":0},"generated":{"line":181,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":182,"column":0},"generated":{"line":182,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":183,"column":0},"generated":{"line":183,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":184,"column":0},"generated":{"line":184,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":185,"column":0},"generated":{"line":185,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":186,"column":0},"generated":{"line":186,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":187,"column":0},"generated":{"line":187,"column":0}},{"source":"node_modules/ethers/utils/utf8.js","original":{"line":188,"column":0},"generated":{"line":188,"column":0}}],"sources":{"node_modules/ethers/utils/utf8.js":"'use strict';\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar constants_1 = require(\"../constants\");\nvar errors_1 = require(\"../errors\");\nvar bytes_1 = require(\"./bytes\");\n///////////////////////////////\nvar UnicodeNormalizationForm;\n(function (UnicodeNormalizationForm) {\n    UnicodeNormalizationForm[\"current\"] = \"\";\n    UnicodeNormalizationForm[\"NFC\"] = \"NFC\";\n    UnicodeNormalizationForm[\"NFD\"] = \"NFD\";\n    UnicodeNormalizationForm[\"NFKC\"] = \"NFKC\";\n    UnicodeNormalizationForm[\"NFKD\"] = \"NFKD\";\n})(UnicodeNormalizationForm = exports.UnicodeNormalizationForm || (exports.UnicodeNormalizationForm = {}));\n;\n// http://stackoverflow.com/questions/18729405/how-to-convert-utf8-string-to-byte-array\nfunction toUtf8Bytes(str, form) {\n    if (form === void 0) { form = UnicodeNormalizationForm.current; }\n    if (form != UnicodeNormalizationForm.current) {\n        errors_1.checkNormalize();\n        str = str.normalize(form);\n    }\n    var result = [];\n    for (var i = 0; i < str.length; i++) {\n        var c = str.charCodeAt(i);\n        if (c < 0x80) {\n            result.push(c);\n        }\n        else if (c < 0x800) {\n            result.push((c >> 6) | 0xc0);\n            result.push((c & 0x3f) | 0x80);\n        }\n        else if ((c & 0xfc00) == 0xd800) {\n            i++;\n            var c2 = str.charCodeAt(i);\n            if (i >= str.length || (c2 & 0xfc00) !== 0xdc00) {\n                throw new Error('invalid utf-8 string');\n            }\n            // Surrogate Pair\n            c = 0x10000 + ((c & 0x03ff) << 10) + (c2 & 0x03ff);\n            result.push((c >> 18) | 0xf0);\n            result.push(((c >> 12) & 0x3f) | 0x80);\n            result.push(((c >> 6) & 0x3f) | 0x80);\n            result.push((c & 0x3f) | 0x80);\n        }\n        else {\n            result.push((c >> 12) | 0xe0);\n            result.push(((c >> 6) & 0x3f) | 0x80);\n            result.push((c & 0x3f) | 0x80);\n        }\n    }\n    return bytes_1.arrayify(result);\n}\nexports.toUtf8Bytes = toUtf8Bytes;\n;\n// http://stackoverflow.com/questions/13356493/decode-utf-8-with-javascript#13691499\nfunction toUtf8String(bytes, ignoreErrors) {\n    bytes = bytes_1.arrayify(bytes);\n    var result = '';\n    var i = 0;\n    // Invalid bytes are ignored\n    while (i < bytes.length) {\n        var c = bytes[i++];\n        // 0xxx xxxx\n        if (c >> 7 === 0) {\n            result += String.fromCharCode(c);\n            continue;\n        }\n        // Multibyte; how many bytes left for this character?\n        var extraLength = null;\n        var overlongMask = null;\n        // 110x xxxx 10xx xxxx\n        if ((c & 0xe0) === 0xc0) {\n            extraLength = 1;\n            overlongMask = 0x7f;\n            // 1110 xxxx 10xx xxxx 10xx xxxx\n        }\n        else if ((c & 0xf0) === 0xe0) {\n            extraLength = 2;\n            overlongMask = 0x7ff;\n            // 1111 0xxx 10xx xxxx 10xx xxxx 10xx xxxx\n        }\n        else if ((c & 0xf8) === 0xf0) {\n            extraLength = 3;\n            overlongMask = 0xffff;\n        }\n        else {\n            if (!ignoreErrors) {\n                if ((c & 0xc0) === 0x80) {\n                    throw new Error('invalid utf8 byte sequence; unexpected continuation byte');\n                }\n                throw new Error('invalid utf8 byte sequence; invalid prefix');\n            }\n            continue;\n        }\n        // Do we have enough bytes in our data?\n        if (i + extraLength > bytes.length) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; too short');\n            }\n            // If there is an invalid unprocessed byte, skip continuation bytes\n            for (; i < bytes.length; i++) {\n                if (bytes[i] >> 6 !== 0x02) {\n                    break;\n                }\n            }\n            continue;\n        }\n        // Remove the length prefix from the char\n        var res = c & ((1 << (8 - extraLength - 1)) - 1);\n        for (var j = 0; j < extraLength; j++) {\n            var nextChar = bytes[i];\n            // Invalid continuation byte\n            if ((nextChar & 0xc0) != 0x80) {\n                res = null;\n                break;\n            }\n            ;\n            res = (res << 6) | (nextChar & 0x3f);\n            i++;\n        }\n        if (res === null) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; invalid continuation byte');\n            }\n            continue;\n        }\n        // Check for overlong seuences (more bytes than needed)\n        if (res <= overlongMask) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; overlong');\n            }\n            continue;\n        }\n        // Maximum code point\n        if (res > 0x10ffff) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; out-of-range');\n            }\n            continue;\n        }\n        // Reserved for UTF-16 surrogate halves\n        if (res >= 0xd800 && res <= 0xdfff) {\n            if (!ignoreErrors) {\n                throw new Error('invalid utf8 byte sequence; utf-16 surrogate');\n            }\n            continue;\n        }\n        if (res <= 0xffff) {\n            result += String.fromCharCode(res);\n            continue;\n        }\n        res -= 0x10000;\n        result += String.fromCharCode(((res >> 10) & 0x3ff) + 0xd800, (res & 0x3ff) + 0xdc00);\n    }\n    return result;\n}\nexports.toUtf8String = toUtf8String;\nfunction formatBytes32String(text) {\n    // Get the bytes\n    var bytes = toUtf8Bytes(text);\n    // Check we have room for null-termination\n    if (bytes.length > 31) {\n        throw new Error('bytes32 string must be less than 32 bytes');\n    }\n    // Zero-pad (implicitly null-terminates)\n    return bytes_1.hexlify(bytes_1.concat([bytes, constants_1.HashZero]).slice(0, 32));\n}\nexports.formatBytes32String = formatBytes32String;\nfunction parseBytes32String(bytes) {\n    var data = bytes_1.arrayify(bytes);\n    // Must be 32 bytes with a null-termination\n    if (data.length !== 32) {\n        throw new Error('invalid bytes32 - not 32 bytes long');\n    }\n    if (data[31] !== 0) {\n        throw new Error('invalid bytes32 string - no null terminator');\n    }\n    // Find the null termination\n    var length = 31;\n    while (data[length - 1] === 0) {\n        length--;\n    }\n    // Determine the string value\n    return toUtf8String(data.slice(0, length));\n}\nexports.parseBytes32String = parseBytes32String;\n"},"lineCount":188}},"error":null,"hash":"94eccdcd6beb056fe526fe6b12520ff0","cacheData":{"env":{}}}