PageSourceSearch

https://chargefrog-hedera.vercel.app/_next/static/chunks/29b6eb343cdfd678.js

js chargefrog-hedera.vercel.app collected 2026-10-03 06:23:41 UTC 33,144 bytes, 1 lines download raw bytes

vendor: 4,305 bytes, line 1
1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,337575,e=>{"use strict";let t,r;var n,i,o=e.i(781979),f=e.i(589518),a=f;class l extends a.Hash{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,(0,a.ahash)(e);const r=(0,a.toBytes)(t);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const n=this.blockLen,i=new Uint8Array(n);i.set(r.length>n?e.create().update(r).digest():r);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),(0,a.clean)(i)}update(e){return(0,a.aexists)(this),this.iHash.update(e),this}digestInto(e){(0,a.aexists)(this),(0,a.abytes)(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:r,finished:n,destroyed:i,blockLen:o,outputLen:f}=this;return e.finished=n,e.destroyed=i,e.blockLen=o,e.outputLen=f,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}let s=(e,t,r)=>new l(e,t).update(r).digest();s.create=(e,t)=>new l(e,t);let u=BigInt(0),d=BigInt(1);function c(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function h(e){if(!c(e))throw Error("Uint8Array expected")}function g(e,t){if("boolean"!=typeof t)throw Error(e+" boolean expected, got "+t)}function p(e){let t=e.toString(16);return 1&t.length?"0"+t:t}function m(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?u:BigInt("0x"+e)}let y="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,w=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function b(e){if(h(e),y)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=w[e[r]];return t}function E(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function v(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);if(y)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let t=0,i=0;t<r;t++,i+=2){let r=E(e.charCodeAt(i)),o=E(e.charCodeAt(i+1));if(void 0===r||void 0===o)throw Error('hex string expected, got non-hex character "'+(e[i]+e[i+1])+'" at index '+i);n[t]=16*r+o}return n}function x(e){return m(b(e))}function B(e){return h(e),m(b(Uint8Array.from(e).reverse()))}function S(e,t){return v(e.toString(16).padStart(2*t,"0"))}function A(e,t){return S(e,t).reverse()}function O(e,t,r){let n;if("string"==typeof t)try{n=v(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(c(t))n=Uint8Array.from(t);else throw Error(e+" must be hex string or Uint8Array");let i=n.length;if("number"==typeof r&&i!==r)throw Error(e+" of length "+r+" expected, got "+i);return n}function I(...e){let t=0;for(let r=0;r<e.length;r++){let n=e[r];h(n),t+=n.length}let r=new Uint8Array(t);for(let t=0,n=0;t<e.length;t++){let i=e[t];r.set(i,n),n+=i.length}return r}function R(e){if("string"!=typeof e)throw Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}let q=e=>"bigint"==typeof e&&u<=e;function N(e,t,r){return q(e)&&q(t)&&q(r)&&t<=e&&e<r}function T(e,t,r,n){if(!N(t,r,n))throw Error("expected valid "+e+": "+r+" <= n < "+n+", got "+t)}let P=e=>(d<<BigInt(e))-d,U=e=>new Uint8Array(e),H={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||c(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function Z(e,t,r={}){let n=(t,r,n)=>{let i=H[r];if("function"!=typeof i)throw Error("invalid validator function");let o=e[t];if((!n||void 0!==o)&&!i(o,e))throw Error("param "+String(t)+" is invali
1d. Expected "+r+", got "+o)};for(let[e,r]of Object.entries(t))n(e,r,!1);for(let[e,t]of Object.entries(r))n(e,t,!0);return e}function C(e){let t=new WeakMap;return(r,...n)=>{let i=t.get(r);if(void 0!==i)return i;let o=e(r,...n);return t.set(r,o),o}}let z=BigInt(0),D=BigInt(1),L=BigInt(2),_=BigInt(3),F=BigInt(4),V=BigInt(5),k=BigInt(8);function K(e,t){let r=e%t;return r>=z?r:t+r}function j(e,t,r){let n=e;for(;t-- >z;)n*=n,n%=r;return n}function M(e,t){if(e===z)throw Error("invert: expected non-zero number");if(t<=z)throw Error("invert: expected positive modulus, got "+t);let r=K(e,t),n=t,i=z,o=D,f=D,a=z;for(;r!==z;){let e=n/r,t=n%r,l=i-f*e,s=o-a*e;n=r,r=t,i=f,o=a,f=l,a=s}if(n!==D)throw Error("invert: does not exist");return K(i,t)}function Y(e,t){let r=(e.ORDER+D)/F,n=e.pow(t,r);if(!e.eql(e.sqr(n),t))throw Error("Cannot find square root");return n}function W(e,t){let r=(e.ORDER-V)/k,n=e.mul(t,L),i=e.pow(n,r),o=e.mul(t,i),f=e.mul(e.mul(o,L),i),a=e.mul(o,e.sub(f,e.ONE));if(!e.eql(e.sqr(a),t))throw Error("Cannot find square root");return a}let G=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function X(e){return Z(e,G.reduce((e,t)=>(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"}))}function J(e,t,r=!1){let n=Array(t.length).fill(r?e.ZERO:void 0),i=t.reduce((t,r,i)=>e.is0(r)?t:(n[i]=t,e.mul(t,r)),e.ONE),o=e.inv(i);return t.reduceRight((t,r,i)=>e.is0(r)?t:(n[i]=e.mul(t,n[i]),e.mul(t,r)),o),n}function Q(e,t){let r=(e.ORDER-D)/L,n=e.pow(t,r),i=e.eql(n,e.ONE),o=e.eql(n,e.ZERO),f=e.eql(n,e.neg(e.ONE));if(!i&&!o&&!f)throw Error("invalid Legendre symbol result");return i?1:o?0:-1}function $(e,t){void 0!==t&&(0,f.anumber)(t);let r=void 0!==t?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function ee(e,t,r=!1,n={}){let i;if(e<=z)throw Error("invalid field: expected ORDER > 0, got "+e);let{nBitLength:o,nByteLength:f}=$(e,t);if(f>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");let a=Object.freeze({ORDER:e,isLE:r,BITS:o,BYTES:f,MASK:P(o),ZERO:z,ONE:D,create:t=>K(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return z<=t&&t<e},is0:e=>e===z,isOdd:e=>(e&D)===D,neg:t=>K(-t,e),eql:(e,t)=>e===t,sqr:t=>K(t*t,e),add:(t,r)=>K(t+r,e),sub:(t,r)=>K(t-r,e),mul:(t,r)=>K(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<z)throw Error("invalid exponent, negatives unsupported");if(r===z)return e.ONE;if(r===D)return t;let n=e.ONE,i=t;for(;r>z;)r&D&&(n=e.mul(n,i)),i=e.sqr(i),r>>=D;return n})(a,e,t),div:(t,r)=>K(t*M(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>M(t,e),sqrt:n.sqrt||(t=>(i||(i=e%F===_?Y:e%k===V?W:function(e){if(e<BigInt(3))throw Error("sqrt is not defined for small field");let t=e-D,r=0;for(;t%L===z;)t/=L,r++;let n=L,i=ee(e);for(;1===Q(i,n);)if(n++>1e3)throw Error("Cannot find square root: probably non-prime P");if(1===r)return Y;let o=i.pow(n,t),f=(t+D)/L;return function(e,n){if(e.is0(n))return n;if(1!==Q(e,n))throw Error("Cannot find square root");let i=r,a=e.mul(e.ONE,o),l=e.pow(n,t),s=e.pow(n,f);for(;!e.eql(l,e.ONE);){if(e.is0(l))return e.ZERO;let t=1,r=e.sqr(l);for(;!e.eql(r,e.ONE);)if(t++,r=e.sqr(r),t===i)throw Error("Cannot find square root");let n=D<<BigInt(i-t-1),o=e.pow(a,n);i=t,a=e.sqr(o),l=e.mul(l,a),s=e.mul(s,o)}return s}}(e)),i(a,t))),toBytes:e=>r?A(e,f):S(e,f),fromBytes:e=>{if(e.length!==f)throw Error("Field.fromBytes: expected "+f+" bytes, got "+e.length);return r?B(e):x(e)},invertBatch:e=>J(a,e),cmov:(e,t,r)=>r?t:e});return Object.freeze(a)}function et(e){if("bigint"!=typeof e)throw Error("field order must be bigint");return Math.ceil(e.toString(2).length/8)}function er(e){let t=et(e);return t+Math.ceil(t/2)}let en=BigInt(0),ei=BigInt(1);function eo(e,t){let r=t.negate();return e?r:t}function ef(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function ea(e,t){ef(e,t);let r=Math.ceil(t/e)+1,n=2**(e-1),i=2**e;return{windows:r,windowSize:n,mask:P(e),maxNumber:i,shiftBy:BigInt(e)}}function el(e,t,r){let{windowSize:n,mask:i,maxNumber:o,shiftBy:f}=r,a=Number(e&i),l=e>>f;a>n&&(a-=o,l+=ei);let s=t*n,u=s+Math.abs(a)-1,d=0===a;return{nextN:l,offset:u,isZero:d,isNeg:a<0,isNegF:t%2!=0,offsetF:s}}let es=new WeakMap,eu=new WeakMap;function ed(e){return eu.get(e)||1}function ec(e){return X(e.Fp),Z(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...$(e.n,e.nBitLength),...e,...{p:e.Fp.ORDER}})}function eh(e){void 0!==e.lowS&&g("lowS",e.lowS),void 0!==e.prehash&&g("prehash",e.prehash)}
1let eg={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(e,t)=>{let{Err:r}=eg;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(1&t.length)throw new r("tlv.encode: unpadded data");let n=t.length/2,i=p(n);if(i.length/2&128)throw new r("tlv.encode: long form length too big");let o=n>127?p(i.length/2|128):"";return p(e)+o+i+t},decode(e,t){let{Err:r}=eg,n=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[n++]!==e)throw new r("tlv.decode: wrong tlv");let i=t[n++],o=0;if(128&i){let e=127&i;if(!e)throw new r("tlv.decode(long): indefinite length not supported");if(e>4)throw new r("tlv.decode(long): byte length is too big");let f=t.subarray(n,n+e);if(f.length!==e)throw new r("tlv.decode: length bytes not complete");if(0===f[0])throw new r("tlv.decode(long): zero leftmost byte");for(let e of f)o=o<<8|e;if(n+=e,o<128)throw new r("tlv.decode(long): not minimal encoding")}else o=i;let f=t.subarray(n,n+o);if(f.length!==o)throw new r("tlv.decode: wrong value length");return{v:f,l:t.subarray(n+o)}}},_int:{encode(e){let{Err:t}=eg;if(e<ep)throw new t("integer: negative integers are not allowed");let r=p(e);if(8&Number.parseInt(r[0],16)&&(r="00"+r),1&r.length)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=eg;if(128&e[0])throw new t("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return x(e)}},toSig(e){let{Err:t,_int:r,_tlv:n}=eg,i=O("signature",e),{v:o,l:f}=n.decode(48,i);if(f.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:l}=n.decode(2,o),{v:s,l:u}=n.decode(2,l);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(s)}},hexFromSig(e){let{_tlv:t,_int:r}=eg,n=t.encode(2,r.encode(e.r)),i=t.encode(2,r.encode(e.s));return t.encode(48,n+i)}},ep=BigInt(0),em=BigInt(1),ey=BigInt(2),ew=BigInt(3),eb=BigInt(4);function eE(e,t){if(ev(e),ev(t),e<0||e>=1<<8*t)throw Error("invalid I2OSP input: "+e);let r=Array.from({length:t}).fill(0);for(let n=t-1;n>=0;n--)r[n]=255&e,e>>>=8;return new Uint8Array(r)}function ev(e){if(!Number.isSafeInteger(e))throw Error("number expected")}function ex(e,t,r){let n;Z(r,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:i,k:o,m:f,hash:a,expand:l,DST:s}=r;h(e),ev(t);let u="string"==typeof s?R(s):s,d=Math.ceil((i.toString(2).length+o)/8),c=t*f*d;if("xmd"===l)n=function(e,t,r,n){h(e),h(t),ev(r),t.length>255&&(t=n(I(R("H2C-OVERSIZE-DST-"),t)));let{outputLen:i,blockLen:o}=n,f=Math.ceil(r/i);if(r>65535||f>255)throw Error("expand_message_xmd: invalid lenInBytes");let a=I(t,eE(t.length,1)),l=eE(0,o),s=eE(r,2),u=Array(f),d=n(I(l,e,s,eE(0,1),a));u[0]=n(I(d,eE(1,1),a));for(let e=1;e<=f;e++){let t=[function(e,t){let r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e[n]^t[n];return r}(d,u[e-1]),eE(e+1,1),a];u[e]=n(I(...t))}return I(...u).slice(0,r)}(e,u,c,a);else if("xof"===l)n=function(e,t,r,n,i){if(h(e),h(t),ev(r),t.length>255){let e=Math.ceil(2*n/8);t=i.create({dkLen:e}).update(R("H2C-OVERSIZE-DST-")).update(t).digest()}if(r>65535||t.length>255)throw Error("expand_message_xof: invalid lenInBytes");return i.create({dkLen:r}).update(e).update(eE(r,2)).update(t).update(eE(t.length,1)).digest()}(e,u,c,o,a);else if("_internal_pass"===l)n=e;else throw Error('expand must be "xmd" or "xof"');let g=Array(t);for(let e=0;e<t;e++){let t=Array(f);for(let r=0;r<f;r++){let o=d*(r+e*f),a=n.subarray(o,o+d);t[r]=K(x(a),i)}g[e]=t}return g}let eB=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),eS=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),eA=BigInt(0),eO=BigInt(1),eI=BigInt(2),eR=(e,t)=>(e+t/eI)/t;function eq(e){let t=BigInt(3),r=BigInt(6),n=BigInt(11),i=BigInt(22),o=BigInt(23),f=BigInt(44),a=BigInt(88),l=e*e*e%eB,s=l*l*e%eB,u=j(s,t,eB)*s%eB,d=j(u,t,eB)*s%eB,c=j(d,eI,eB)*l%eB,h=j(c,n,eB)*c%eB,g=j(h,i,eB)*h%eB,p=j(g,f,eB)*g%eB,m=j(p,a,eB)*p%eB,y=j(m,f,eB)*g%eB,w=j(y,t,eB)*s%eB,b=j(w,o,eB)*h%eB,E=j(b,r,eB)*l%eB,v=j(E,eI,eB);if(!eN.eql(eN.sqr(v),e))throw Error("Cannot find square root");return v}let eN=ee(eB,void 0,void 0,{sqrt:eq}),eT=(n={a:eA,b:BigInt(7),Fp:eN,n:eS,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-eO*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),n=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=BigInt("0x100000000000000000000000000000000"),o=eR(t*e,eS),f=eR(-r*e,eS),a=K(e-o*t-f*n,eS),l=K(-o*r-f*t,eS),s=a>i,u=l>i;if(s&&(a=eS-a),u&&(l=eS-l),a>i||l>i)throw Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:s,k1:a,k2neg:u,k2:l}}}},i=o.sha256,{...(t=e=>(function(e){let t,r=(Z(t=ec(e),{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})),{Fp:n,n:i,nByteLength:o,nBitLength:f}=r,a=n.BYTES+1,l=2*n.BYTES+1;function s(e){return K(e,i)}let{ProjectivePoint:h,normPrivateKeyToScalar:p,weierstrassEquation:m,isWithinCurveOrder:y}=function(e){var t;let r=function(e){let t=ec(e);Z(t,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw Error("invalid endo: CURVE.a must be 0");if("object"!=typeof r||"bigint"!=typeof r.beta||"function"!=typeof r.splitScalar)throw Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...t})}(e),{Fp:n}=r,i=ee(r.n,r.nBitLength),o=r.toBytes||((e,t,r)=>{let i=t.toAffine();return I(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),f=r.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function a(e){let{a:t,b:i}=r,o=n.sqr(e),f=n.mul(o,e);return n.add(n.add(f,n.mul(e,t)),i)}function l(e,t){let r=n.sqr(t),i=a(e);return n.eql(r,i)}if(!l(r.Gx,r.Gy))throw Error("bad curve params: generator point");let s=n.mul(n.pow(r.a,ew),eb),h=n.mul(n.sqr(r.b),BigInt(27));if(n.is0(n.add(s,h)))throw Error("bad curve params: a or b");function p(e){let t,{allowedPrivateKeyLengths:n,nByteLength:i,wrapPrivateKey:o,n:f}=r;if(n&&"bigint"!=typeof e){if(c(e)&&(e=b(e)),"string"!=typeof e||!n.includes(e.length))throw Error("invalid private key");e=e.padStart(2*i,"0")}
vendor: 10,460 bytes, line 1
1try{t="bigint"==typeof e?e:x(O("private key",e,i))}catch(t){throw Error("invalid private key, expected hex or "+i+" bytes, got "+typeof e)}return o&&(t=K(t,f)),T("private key",t,em,f),t}function m(e){if(!(e instanceof E))throw Error("ProjectivePoint expected")}let y=C((e,t)=>{let{px:r,py:i,pz:o}=e;if(n.eql(o,n.ONE))return{x:r,y:i};let f=e.is0();null==t&&(t=f?n.ONE:n.inv(o));let a=n.mul(r,t),l=n.mul(i,t),s=n.mul(o,t);if(f)return{x:n.ZERO,y:n.ZERO};if(!n.eql(s,n.ONE))throw Error("invZ was invalid");return{x:a,y:l}}),w=C(e=>{if(e.is0()){if(r.allowInfinityPoint&&!n.is0(e.py))return;throw Error("bad point: ZERO")}let{x:t,y:i}=e.toAffine();if(!n.isValid(t)||!n.isValid(i))throw Error("bad point: x or y not FE");if(!l(t,i))throw Error("bad point: equation left != right");if(!e.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});class E{constructor(e,t,r){if(null==e||!n.isValid(e))throw Error("x required");if(null==t||!n.isValid(t)||n.is0(t))throw Error("y required");if(null==r||!n.isValid(r))throw Error("z required");this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error("invalid affine point");if(e instanceof E)throw Error("projective point not allowed");let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?E.ZERO:new E(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=J(n,e.map(e=>e.pz));return e.map((e,r)=>e.toAffine(t[r])).map(E.fromAffine)}static fromHex(e){let t=E.fromAffine(f(O("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return E.BASE.multiply(p(e))}static msm(e,t){return function(e,t,r,n){if(!Array.isArray(r))throw Error("array expected");r.forEach((t,r)=>{if(!(t instanceof e))throw Error("invalid point at index "+r)});if(!Array.isArray(n))throw Error("array of scalars expected");n.forEach((e,r)=>{if(!t.isValid(e))throw Error("invalid scalar at index "+r)});let i=r.length,o=n.length;if(i!==o)throw Error("arrays of points and scalars must have equal length");let f=e.ZERO,a=function(e){let t;for(t=0;e>u;e>>=d,t+=1);return t}(BigInt(i)),l=1;a>12?l=a-3:a>4?l=a-2:a>0&&(l=2);let s=P(l),c=Array(Number(s)+1).fill(f),h=Math.floor((t.BITS-1)/l)*l,g=f;for(let e=h;e>=0;e-=l){c.fill(f);for(let t=0;t<o;t++){let i=Number(n[t]>>BigInt(e)&s);c[i]=c[i].add(r[t])}let t=f;for(let e=c.length-1,r=f;e>0;e--)r=r.add(c[e]),t=t.add(r);if(g=g.add(t),0!==e)for(let e=0;e<l;e++)g=g.double()}return g}(E,i,e,t)}_setWindowSize(e){S.setWindowSize(this,e)}assertValidity(){w(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error("Field doesn't support isOdd")}equals(e){m(e);let{px:t,py:r,pz:i}=this,{px:o,py:f,pz:a}=e,l=n.eql(n.mul(t,a),n.mul(o,i)),s=n.eql(n.mul(r,a),n.mul(f,i));return l&&s}negate(){return new E(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:t}=r,i=n.mul(t,ew),{px:o,py:f,pz:a}=this,l=n.ZERO,s=n.ZERO,u=n.ZERO,d=n.mul(o,o),c=n.mul(f,f),h=n.mul(a,a),g=n.mul(o,f);return g=n.add(g,g),u=n.mul(o,a),u=n.add(u,u),l=n.mul(e,u),s=n.mul(i,h),s=n.add(l,s),l=n.sub(c,s),s=n.add(c,s),s=n.mul(l,s),l=n.mul(g,l),u=n.mul(i,u),h=n.mul(e,h),g=n.sub(d,h),g=n.mul(e,g),g=n.add(g,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,h),d=n.mul(d,g),s=n.add(s,d),h=n.mul(f,a),h=n.add(h,h),d=n.mul(h,g),l=n.sub(l,d),u=n.mul(h,c),u=n.add(u,u),new E(l,s,u=n.add(u,u))}add(e){m(e);let{px:t,py:i,pz:o}=this,{px:f,py:a,pz:l}=e,s=n.ZERO,u=n.ZERO,d=n.ZERO,c=r.a,h=n.mul(r.b,ew),g=n.mul(t,f),p=n.mul(i,a),y=n.mul(o,l),w=n.add(t,i),b=n.add(f,a);w=n.mul(w,b),b=n.add(g,p),w=n.sub(w,b),b=n.add(t,o);let v=n.add(f,l);return b=n.mul(b,v),v=n.add(g,y),b=n.sub(b,v),v=n.add(i,o),s=n.add(a,l),v=n.mul(v,s),s=n.add(p,y),v=n.sub(v,s),d=n.mul(c,b),s=n.mul(h,y),d=n.add(s,d),s=n.sub(p,d),d=n.add(p,d),u=n.mul(s,d),p=n.add(g,g),p=n.add(p,g),y=n.mul(c,y),b=n.mul(h,b),p=n.add(p,y),y=n.sub(g,y),y=n.mul(c,y),b=n.add(b,y),g=n.mul(p,b),u=n.add(u,g),g=n.mul(v,b),s=n.mul(w,s),s=n.sub(s,g),g=n.mul(w,p),d=n.mul(v,d),new E(s,u,d=n.add(d,g))}subtract(e){return this.add(e.negate())}is0(){return this.equals(E.ZERO)}wNAF(e){return S.wNAFCached(this,e,E.normalizeZ)}multiplyUnsafe(e){let{endo:t,n:i}=r;T("scalar",e,ep,i);let o=E.ZERO;if(e===ep)return o;if(this.is0()||e===em)return this;if(!t||S.hasPrecomputes(this))return S.wNAFCachedUnsafe(this,e,E.normalizeZ);let{k1neg:f,k1:a,k2neg:l,k2:s}=t.splitScalar(e),u=o,d=o,c=this;for(;a>ep||s>ep;)a&em&&(u=u.add(c)),s&em&&(d=d.add(c)),c=c.double(),a>>=em,s>>=em;return f&&(u=u.negate()),l&&(d=d.negate()),d=new E(n.mul(d.px,t.beta),d.py,d.pz),u.add(d)}multiply(e){let t,i,{endo:o,n:f}=r;if(T("scalar",e,em,f),o){let{k1neg:r,k1:f,k2neg:a,k2:l}=o.splitScalar(e),{p:s,f:u}=this.wNAF(f),{p:d,f:c}=this.wNAF(l);s=S.constTimeNegate(r,s),d=S.constTimeNegate(a,d),d=new E(n.mul(d.px,o.beta),d.py,d.pz),t=s.add(d),i=u.add(c)}else{let{p:r,f:n}=this.wNAF(e);t=r,i=n}return E.normalizeZ([t,i])[0]}multiplyAndAddUnsafe(e,t,r){let n=E.BASE,i=(e,t)=>t!==ep&&t!==em&&e.equals(n)?e.multiply(t):e.multiplyUnsafe(t),o=i(this,t).add(i(e,r));return o.is0()?void 0:o}toAffine(e){return y(this,e)}isTorsionFree(){let{h:e,isTorsionFree:t}=r;if(e===em)return!0;if(t)return t(E,this);throw Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:e,clearCofactor:t}=r;return e===em?this:t?t(E,this):this.multiplyUnsafe(r.h)}toRawBytes(e=!0){return g("isCompressed",e),this.assertValidity(),o(E,this,e)}toHex(e=!0){return g("isCompressed",e),b(this.toRawBytes(e))}}E.BASE=new E(r.Gx,r.Gy,n.ONE),E.ZERO=new E(n.ZERO,n.ONE,n.ZERO);let{endo:v,nBitLength:B}=r,S=(t=v?Math.ceil(B/2):B,{constTimeNegate:eo,hasPrecomputes:e=>1!==ed(e),unsafeLadder(e,t,r=E.ZERO){let n=e;for(;t>en;)t&ei&&(r=r.add(n)),n=n.double(),t>>=ei;return r},precomputeWindow(e,r){let{windows:n,windowSize:i}=ea(r,t),o=[],f=e,a=f;for(let e=0;e<n;e++){a=f,o.push(a);for(let e=1;e<i;e++)a=a.add(f),o.push(a);f=a.double()}return o},wNAF(e,r,n){let i=E.ZERO,o=E.BASE,f=ea(e,t);for(let e=0;e<f.windows;e++){let{nextN:t,offset:a,isZero:l,isNeg:s,isNegF:u,offsetF:d}=el(n,e,f);n=t,l?o=o.add(eo(u,r[d])):i=i.add(eo(s,r[a]))}return{p:i,f:o}},wNAFUnsafe(e,r,n,i=E.ZERO){let o=ea(e,t);for(let e=0;e<o.windows&&n!==en;e++){let{nextN:t,offset:f,isZero:a,isNeg:l}=el(n,e,o);if(n=t,!a){let e=r[f];i=i.add(l?e.negate():e)}}return i},getPrecomputes(e,t,r){let n=es.get(t);return n||(n=this.precomputeWindow(t,e),1!==e&&es.set(t,r(n))),n},wNAFCached(e,t,r){let n=ed(e);return this.wNAF(n,this.getPrecomputes(n,e,r),t)},wNAFCachedUnsafe(e,t,r,n){let i=ed(e);return 1===i?this.unsafeLadder(e,t,n):this.wNAFUnsafe(i,this.getPrecomputes(i,e,r),t,n)},setWindowSize(e,r){ef(r,t),eu.set(e,r),es.delete(e)}});return{CURVE:r,ProjectivePoint:E,normPrivateKeyToScalar:p,weierstrassEquation:a,isWithinCurveOrder:function(e){return N(e,em,r.n)}}}({...r,toBytes(e,t,r){let i=t.toAffine(),o=n.toBytes(i.x);return(g("isCompressed",r),r)?I(Uint8Array.from([t.hasEvenY()?2:3]),o):I(Uint8Array.from([4]),o,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===a&&(2===r||3===r)){let e,t=x(i);if(!N(t,em,n.ORDER))throw Error("Point is not on curve");let o=m(t);try{e=n.sqrt(o)}catch(e){throw Error("Point is not on curve"+(e instanceof Error?": "+e.message:""))}return(1&r)==1!=((e&em)===em)&&(e=n.neg(e)),{x:t,y:e}}if(t===l&&4===r)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};throw Error("invalid Point, expected length of "+a+", or uncompressed "+l+", got "+t)}}),w=(e,t,r)=>x(e.slice(t,r));class E{constructor(e,t,r){T("r",e,em,i),T("s",t,em,i),this.r=e,this.s=t,null!=r&&(this.recovery=r),Object.freeze(this)}static fromCompact(e){return new E(w(e=O("compactSignature",e,2*o),0,o),w(e,o,2*o))}static fromDER(e){let{r:t,s:r}=eg.toSig(O("DER",e));return new E(t,r)}assertValidity(){}addRecoveryBit(e){return new E(this.r,this.s,e)}recoverPublicKey(e){let{r:t,s:o,recovery:f}=this,a=H(O("msgHash",e));if(null==f||![0,1,2,3].includes(f))throw Error("recovery id invalid");let l=2===f||3===f?t+r.n:t;if(l>=n.ORDER)throw Error("recovery id 2 or 3 invalid");let u=(1&f)==0?"02":"03",d=h.fromHex(u+b(S(l,n.BYTES))),c=M(l,i),g=s(-a*c),p=s(o*c),m=h.BASE.multiplyAndAddUnsafe(d,g,p);if(!m)throw Error("point at infinify");return m.assertValidity(),m}hasHighS(){return this.s>i>>em}normalizeS(){return this.hasHighS()?new E(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return v(this.toDERHex())}toDERHex(){return eg.hexFromSig(this)}toCompactRawBytes(){return v(this.toCompactHex())}toCompactHex(){return b(S(this.r,o))+b(S(this.s,o))}}function R(e){if("bigint"==typeof e)return!1;if(e instanceof h)return!0;let t=O("key",e).length,i=n.BYTES,f=i+1;if(!r.allowedPrivateKeyLengths&&o!==f)return t===f||t===2*i+1}let q=r.bits2int||function(e){if(e.length>8192)throw Error("input is too large");let t=x(e),r=8*e.length-f;return r>0?t>>BigInt(r):t},H=r.bits2int_modN||function(e){return s(q(e))},z=P(f);function L(e){return T("num < 2^"+f,e,ep,z),S(e,o)}let _={lowS:r.lowS,prehash:!1},F={lowS:r.lowS,prehash:!1};return h.BASE._setWindowSize(8),{CURVE:r,getPublicKey:function(e,t=!0){return h.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,r=!0){if(!0===R(e))throw Error("first arg must be private key");if(!1===R(t))throw Error("second arg must be public key");return h.fromHex(t).multiply(p(e)).toRawBytes(r)},sign:function(e,t,o=_){let{seed:f,k2sig:a}=function(e,t,o=_){if(["recovered","canonical"].some(e=>e in o))throw Error("sign() legacy options not supported");let{hash:f,randomBytes:a}=r,{lowS:l,prehash:u,extraEntropy:d}=o;null==l&&(l=!0),e=O("msgHash",e),eh(o),u&&(e=O("prehashed msgHash",f(e)));let c=H(e),g=p(t),m=[L(g),L(c)];if(null!=d&&!1!==d){let e=!0===d?a(n.BYTES):d;m.push(O("extraEntropy",e))}return{seed:I(...m),k2sig:function(e){var t;let r=q(e);if(!y(r))return;let n=M(r,i),o=h.BASE.multiply(r).toAffine(),f=s(o.x);if(f===ep)return;let a=s(n*s(c+f*g));if(a===ep)return;let u=2*(o.x!==f)|Number(o.y&em),d=a;return l&&a>i>>em&&(d=(t=a)>i>>em?s(-t):t,u^=1),new E(f,d,u)}}}(e,t,o);return(function(e,t,r){if("number"!=typeof e||e<2)throw Error("hashLen must be a number");if("number"!=typeof t||t<2)throw Error("qByteLen must be a number");if("function"!=typeof r)throw Error("hmacFn must be a function");let n=U(e),i=U(e),o=0,f=()=>{n.fill(1),i.fill(0),o=0},a=(...e)=>r(i,n,...e),l=(e=U(0))=>{let t;if(i=a((t=[0],Uint8Array.from(t)),e),n=a(),0!==e.length){let t;i=a((t=[1],Uint8Array.from(t)),e),n=a()}},s=()=>
1{if(o++>=1e3)throw Error("drbg: tried 1000 values");let e=0,r=[];for(;e<t;){let t=(n=a()).slice();r.push(t),e+=n.length}return I(...r)};return(e,t)=>{let r;for(f(),l(e);!(r=t(s()));)l();return f(),r}})(r.hash.outputLen,r.nByteLength,r.hmac)(f,a)},verify:function(e,t,n,o=F){let f,a;t=O("msgHash",t),n=O("publicKey",n);let{lowS:l,prehash:u,format:d}=o;if(eh(o),"strict"in o)throw Error("options.strict was renamed to lowS");if(void 0!==d&&"compact"!==d&&"der"!==d)throw Error("format must be compact or der");let g="string"==typeof e||c(e),p=!g&&!d&&"object"==typeof e&&null!==e&&"bigint"==typeof e.r&&"bigint"==typeof e.s;if(!g&&!p)throw Error("invalid signature, expected Uint8Array, hex string or Signature instance");try{if(p&&(a=new E(e.r,e.s)),g){try{"compact"!==d&&(a=E.fromDER(e))}catch(e){if(!(e instanceof eg.Err))throw e}a||"der"===d||(a=E.fromCompact(e))}f=h.fromHex(n)}catch(e){return!1}if(!a||l&&a.hasHighS())return!1;u&&(t=r.hash(t));let{r:m,s:y}=a,w=H(t),b=M(y,i),v=s(w*b),x=s(m*b),B=h.BASE.multiplyAndAddUnsafe(f,v,x)?.toAffine();return!!B&&s(B.x)===m},ProjectivePoint:h,Signature:E,utils:{isValidPrivateKey(e){try{return p(e),!0}catch(e){return!1}},normPrivateKeyToScalar:p,randomPrivateKey:()=>{let e=er(r.n);return function(e,t,r=!1){let n=e.length,i=et(t),o=er(t);if(n<16||n<o||n>1024)throw Error("expected "+o+"-1024 bytes of input, got "+n);let f=K(r?B(e):x(e),t-D)+D;return r?A(f,i):S(f,i)}(r.randomBytes(e),r.n)},precompute:(e=8,t=h.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)}}})({...n,...{hash:e,hmac:(t,...r)=>s(e,t,(0,f.concatBytes)(...r)),randomBytes:f.randomBytes}}))(i),create:t}),eP={};function eU(e,...t){let r=eP[e];if(void 0===r){let t=(0,o.sha256)(Uint8Array.from(e,e=>e.charCodeAt(0)));r=I(t,t),eP[e]=r}return(0,o.sha256)(I(r,...t))}let eH=e=>e.toRawBytes(!0).slice(1),eZ=eT.ProjectivePoint;function eC(e){let t=eT.utils.normPrivateKeyToScalar(e),r=eZ.fromPrivateKey(t);return{scalar:r.hasEvenY()?t:K(-t,eS),bytes:eH(r)}}function ez(e){T("x",e,eO,eB);let t=K(e*e,eB),r=eq(K(t*e+BigInt(7),eB));r%eI!==eA&&(r=K(-r,eB));let n=new eZ(e,r,eO);return n.assertValidity(),n}function eD(...e){return K(x(eU("BIP0340/challenge",...e)),eS)}function eL(e,t,r){let n=O("signature",e,64),i=O("message",t),o=O("publicKey",r,32);try{let e,t,r=ez(x(o)),f=x(n.subarray(0,32));if(!N(f,eO,eB))return!1;let a=x(n.subarray(32,64));if(!N(a,eO,eS))return!1;let l=eD(S(f,32),eH(r),i),s=(e=-l,t=K(e,eS),eZ.BASE.multiplyAndAddUnsafe(r,a,t));if(!s||!s.hasEvenY()||s.toAffine().x!==f)return!1;return!0}catch(e){return!1}}let e_={getPublicKey:function(e){return eC(e).bytes},sign:function(e,t,r=(0,f.randomBytes)(32)){let n=O("message",e),{bytes:i,scalar:o}=eC(t),a=S(o^x(eU("BIP0340/aux",O("auxRand",r,32))),32),l=K(x(eU("BIP0340/nonce",a,i,n)),eS);if(l===eA)throw Error("sign failed: k is zero");let{bytes:s,scalar:u}=eC(l),d=eD(s,i,n),c=new Uint8Array(64);if(c.set(s,0),c.set(S(K(u+d*o,eS),32),32),!eL(c,n,i))throw Error("sign: Invalid signature produced");return c},verify:eL,utils:{randomPrivateKey:eT.utils.randomPrivateKey,lift_x:ez,pointToBytes:eH,numberToBytesBE:S,bytesToNumberBE:x,taggedHash:eU,mod:K}},eF=(r=[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(e=>e.map(e=>BigInt(e))).map(e=>Array.from(e).reverse()),(e,t)=>
1{let[n,i,o,f]=r.map(t=>t.reduce((t,r)=>eN.add(eN.mul(t,e),r))),[a,l]=J(eN,[i,f],!0);return e=eN.mul(n,a),t=eN.mul(t,eN.mul(o,l)),{x:e,y:t}}),eV=function(e,t){if(X(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error("mapToCurveSimpleSWU: invalid opts");let r=function(e,t){let r=e.ORDER,n=ep;for(let e=r-em;e%ey===ep;e/=ey)n+=em;let i=n,o=ey<<i-em-em,f=o*ey,a=(r-em)/f,l=(a-em)/ey,s=f-em,u=e.pow(t,a),d=e.pow(t,(a+em)/ey),c=(t,r)=>{let n=u,f=e.pow(r,s),a=e.sqr(f);a=e.mul(a,r);let c=e.mul(t,a);c=e.pow(c,l),c=e.mul(c,f),f=e.mul(c,r),a=e.mul(c,t);let h=e.mul(a,f);c=e.pow(h,o);let g=e.eql(c,e.ONE);f=e.mul(a,d),c=e.mul(h,n),a=e.cmov(f,a,g),h=e.cmov(c,h,g);for(let t=i;t>em;t--){let r=t-ey;r=ey<<r-em;let i=e.pow(h,r),o=e.eql(i,e.ONE);f=e.mul(a,n),n=e.mul(n,n),i=e.mul(h,n),a=e.cmov(f,a,o),h=e.cmov(i,h,o)}return{isValid:g,value:a}};if(e.ORDER%eb===ew){let r=(e.ORDER-ew)/eb,n=e.sqrt(e.neg(t));c=(t,i)=>{let o=e.sqr(i),f=e.mul(t,i);o=e.mul(o,f);let a=e.pow(o,r);a=e.mul(a,f);let l=e.mul(a,n),s=e.mul(e.sqr(a),i),u=e.eql(s,t),d=e.cmov(l,a,u);return{isValid:u,value:d}}}return c}(e,t.Z);if(!e.isOdd)throw Error("Fp.isOdd is not implemented!");return n=>{let i,o,f,a,l,s,u,d;i=e.sqr(n),i=e.mul(i,t.Z),o=e.sqr(i),o=e.add(o,i),f=e.add(o,e.ONE),f=e.mul(f,t.B),a=e.cmov(t.Z,e.neg(o),!e.eql(o,e.ZERO)),a=e.mul(a,t.A),o=e.sqr(f),s=e.sqr(a),l=e.mul(s,t.A),o=e.add(o,l),o=e.mul(o,f),s=e.mul(s,a),l=e.mul(s,t.B),o=e.add(o,l),u=e.mul(i,f);let{isValid:c,value:h}=r(o,s);d=e.mul(i,n),d=e.mul(d,h),u=e.cmov(u,f,c),d=e.cmov(d,h,c);let g=e.isOdd(n)===e.isOdd(d);d=e.cmov(e.neg(d),d,g);let p=J(e,[a],!0)[0];return{x:u=e.mul(u,p),y:d}}}(eN,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:eN.create(BigInt("-11"))}),ek=function(e,t,r){if("function"!=typeof t)throw Error("mapToCurve() must be defined");function n(r){return e.fromAffine(t(r))}function i(t){let r=t.clearCofactor();return r.equals(e.ZERO)?e.ZERO:(r.assertValidity(),r)}return{defaults:r,hashToCurve(e,t){let o=ex(e,2,{...r,DST:r.DST,...t}),f=n(o[0]),a=n(o[1]);return i(f.add(a))},encodeToCurve:(e,t)=>i(n(ex(e,1,{...r,DST:r.encodeDST,...t})[0])),mapToCurve(e){if(!Array.isArray(e))throw Error("expected array of bigints");for(let t of e)if("bigint"!=typeof t)throw Error("expected array of bigints");return i(n(e))}}}(eT.ProjectivePoint,e=>{let{x:t,y:r}=eV(eN.create(e[0]));return eF(t,r)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:eN.ORDER,m:1,k:128,expand:"xmd",hash:o.sha256}),eK=ek.hashToCurve,ej=ek.encodeToCurve;e.s(["encodeToCurve",0,ej,"hashToCurve",0,eK,"schnorr",0,e_,"secp256k1",0,eT,"secp256k1_hasher",0,ek],337575)}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.