New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@penumbra-labs/registry

Package Overview
Dependencies
Maintainers
0
Versions
48
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@penumbra-labs/registry - npm Package Compare versions

Comparing version 9.1.0 to 9.1.1

6

CHANGELOG.md
# @penumbra-labs/registry
## 9.1.1
### Patch Changes
- Fix testnet-preview parsing
## 9.1.0

@@ -4,0 +10,0 @@

4

dist/index.js

@@ -1,2 +0,2 @@

"use strict";var _e=Object.defineProperty;var Je=(n,e,t)=>e in n?_e(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var x=(n,e,t)=>Je(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const oe=/^(penumbra-testnet-(?:\w+-)*\w+)-[a-f0-9]{8}$/,Ge=n=>oe.test(n),Ke=n=>{const e=n.match(oe);if(e)return e[1]};function h(n,e){if(!n)throw new Error(e)}const He=34028234663852886e22,Re=-34028234663852886e22,We=4294967295,Qe=2147483647,Ze=-2147483648;function B(n){if(typeof n!="number")throw new Error("invalid int 32: "+typeof n);if(!Number.isInteger(n)||n>Qe||n<Ze)throw new Error("invalid int 32: "+n)}function J(n){if(typeof n!="number")throw new Error("invalid uint 32: "+typeof n);if(!Number.isInteger(n)||n>We||n<0)throw new Error("invalid uint 32: "+n)}function ie(n){if(typeof n!="number")throw new Error("invalid float 32: "+typeof n);if(Number.isFinite(n)&&(n>He||n<Re))throw new Error("invalid float 32: "+n)}const ce=Symbol("@bufbuild/protobuf/enum-type");function $e(n){const e=n[ce];return h(e,"missing enum type on enum object"),e}function ue(n,e,t,r){n[ce]=me(e,t.map(s=>({no:s.no,name:s.name,localName:n[s.no]})))}function me(n,e,t){const r=Object.create(null),s=Object.create(null),a=[];for(const o of e){const i=le(o);a.push(i),r[o.name]=i,s[o.no]=i}return{typeName:n,values:a,findName(o){return r[o]},findNumber(o){return s[o]}}}function Ye(n,e,t){const r={};for(const s of e){const a=le(s);r[a.localName]=a.no,r[a.no]=a.localName}return ue(r,n,e),r}function le(n){return"localName"in n?n:Object.assign(Object.assign({},n),{localName:n.name})}class de{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,t){const r=this.getType(),s=r.runtime.bin,a=s.makeReadOptions(t);return s.readMessage(this,a.readerFactory(e),e.byteLength,a),this}fromJson(e,t){const r=this.getType(),s=r.runtime.json,a=s.makeReadOptions(t);return s.readMessage(r,e,a,this),this}fromJsonString(e,t){let r;try{r=JSON.parse(e)}catch(s){throw new Error(`cannot decode ${this.getType().typeName} from JSON: ${s instanceof Error?s.message:String(s)}`)}return this.fromJson(r,t)}toBinary(e){const t=this.getType(),r=t.runtime.bin,s=r.makeWriteOptions(e),a=s.writerFactory();return r.writeMessage(this,a,s),a.finish()}toJson(e){const t=this.getType(),r=t.runtime.json,s=r.makeWriteOptions(e);return r.writeMessage(this,s)}toJsonString(e){var t;const r=this.toJson(e);return JSON.stringify(r,null,(t=e==null?void 0:e.prettySpaces)!==null&&t!==void 0?t:0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}}function Xe(n,e,t,r){var s;const a=(s=r==null?void 0:r.localName)!==null&&s!==void 0?s:e.substring(e.lastIndexOf(".")+1),o={[a]:function(i){n.util.initFields(this),n.util.initPartial(i,this)}}[a];return Object.setPrototypeOf(o.prototype,new de),Object.assign(o,{runtime:n,typeName:e,fields:n.util.newFieldList(t),fromBinary(i,u){return new o().fromBinary(i,u)},fromJson(i,u){return new o().fromJson(i,u)},fromJsonString(i,u){return new o().fromJsonString(i,u)},equals(i,u){return n.util.equals(o,i,u)}}),o}function en(){let n=0,e=0;for(let r=0;r<28;r+=7){let s=this.buf[this.pos++];if(n|=(s&127)<<r,!(s&128))return this.assertBounds(),[n,e]}let t=this.buf[this.pos++];if(n|=(t&15)<<28,e=(t&112)>>4,!(t&128))return this.assertBounds(),[n,e];for(let r=3;r<=31;r+=7){let s=this.buf[this.pos++];if(e|=(s&127)<<r,!(s&128))return this.assertBounds(),[n,e]}throw new Error("invalid varint")}function V(n,e,t){for(let a=0;a<28;a=a+7){const o=n>>>a,i=!(!(o>>>7)&&e==0),u=(i?o|128:o)&255;if(t.push(u),!i)return}const r=n>>>28&15|(e&7)<<4,s=!!(e>>3);if(t.push((s?r|128:r)&255),!!s){for(let a=3;a<31;a=a+7){const o=e>>>a,i=!!(o>>>7),u=(i?o|128:o)&255;if(t.push(u),!i)return}t.push(e>>>31&1)}}const O=4294967296;function R(n){const e=n[0]==="-";e&&(n=n.slice(1));const t=1e6;let r=0,s=0;function a(o,i){const u=Number(n.slice(o,i));s*=t,r=r*t+u,r>=O&&(s=s+(r/O|0),r=r%O)}return a(-24,-18),a(-18,-12),a(-12,-6),a(-6),e?he(r,s):G(r,s)}function nn(n,e){let t=G(n,e);const r=t.hi&2147483648;r&&(t=he(t.lo,t.hi));const s=fe(t.lo,t.hi);return r?"-"+s:s}function fe(n,e){if({lo:n,hi:e}=tn(n,e),e<=2097151)return String(O*e+n);const t=n&16777215,r=(n>>>24|e<<8)&16777215,s=e>>16&65535;let a=t+r*6777216+s*6710656,o=r+s*8147497,i=s*2;const u=1e7;return a>=u&&(o+=Math.floor(a/u),a%=u),o>=u&&(i+=Math.floor(o/u),o%=u),i.toString()+W(o)+W(a)}function tn(n,e){return{lo:n>>>0,hi:e>>>0}}function G(n,e){return{lo:n|0,hi:e|0}}function he(n,e){return e=~e,n?n=~n+1:e+=1,G(n,e)}const W=n=>{const e=String(n);return"0000000".slice(e.length)+e};function Q(n,e){if(n>=0){for(;n>127;)e.push(n&127|128),n=n>>>7;e.push(n)}else{for(let t=0;t<9;t++)e.push(n&127|128),n=n>>7;e.push(1)}}function sn(){let n=this.buf[this.pos++],e=n&127;if(!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<7,!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<14,!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<21,!(n&128))return this.assertBounds(),e;n=this.buf[this.pos++],e|=(n&15)<<28;for(let t=5;n&128&&t<10;t++)n=this.buf[this.pos++];if(n&128)throw new Error("invalid varint");return this.assertBounds(),e>>>0}function rn(){const n=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof n.getBigInt64=="function"&&typeof n.getBigUint64=="function"&&typeof n.setBigInt64=="function"&&typeof n.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){const s=BigInt("-9223372036854775808"),a=BigInt("9223372036854775807"),o=BigInt("0"),i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(u){const l=typeof u=="bigint"?u:BigInt(u);if(l>a||l<s)throw new Error(`int64 invalid: ${u}`);return l},uParse(u){const l=typeof u=="bigint"?u:BigInt(u);if(l>i||l<o)throw new Error(`uint64 invalid: ${u}`);return l},enc(u){return n.setBigInt64(0,this.parse(u),!0),{lo:n.getInt32(0,!0),hi:n.getInt32(4,!0)}},uEnc(u){return n.setBigInt64(0,this.uParse(u),!0),{lo:n.getInt32(0,!0),hi:n.getInt32(4,!0)}},dec(u,l){return n.setInt32(0,u,!0),n.setInt32(4,l,!0),n.getBigInt64(0,!0)},uDec(u,l){return n.setInt32(0,u,!0),n.setInt32(4,l,!0),n.getBigUint64(0,!0)}}}const t=s=>h(/^-?[0-9]+$/.test(s),`int64 invalid: ${s}`),r=s=>h(/^[0-9]+$/.test(s),`uint64 invalid: ${s}`);return{zero:"0",supported:!1,parse(s){return typeof s!="string"&&(s=s.toString()),t(s),s},uParse(s){return typeof s!="string"&&(s=s.toString()),r(s),s},enc(s){return typeof s!="string"&&(s=s.toString()),t(s),R(s)},uEnc(s){return typeof s!="string"&&(s=s.toString()),r(s),R(s)},dec(s,a){return nn(s,a)},uDec(s,a){return fe(s,a)}}}const g=rn();var c;(function(n){n[n.DOUBLE=1]="DOUBLE",n[n.FLOAT=2]="FLOAT",n[n.INT64=3]="INT64",n[n.UINT64=4]="UINT64",n[n.INT32=5]="INT32",n[n.FIXED64=6]="FIXED64",n[n.FIXED32=7]="FIXED32",n[n.BOOL=8]="BOOL",n[n.STRING=9]="STRING",n[n.BYTES=12]="BYTES",n[n.UINT32=13]="UINT32",n[n.SFIXED32=15]="SFIXED32",n[n.SFIXED64=16]="SFIXED64",n[n.SINT32=17]="SINT32",n[n.SINT64=18]="SINT64"})(c||(c={}));var k;(function(n){n[n.BIGINT=0]="BIGINT",n[n.STRING=1]="STRING"})(k||(k={}));function w(n,e,t){if(e===t)return!0;if(n==c.BYTES){if(!(e instanceof Uint8Array)||!(t instanceof Uint8Array)||e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}switch(n){case c.UINT64:case c.FIXED64:case c.INT64:case c.SFIXED64:case c.SINT64:return e==t}return!1}function U(n,e){switch(n){case c.BOOL:return!1;case c.UINT64:case c.FIXED64:case c.INT64:case c.SFIXED64:case c.SINT64:return e==0?g.zero:"0";case c.DOUBLE:case c.FLOAT:return 0;case c.BYTES:return new Uint8Array(0);case c.STRING:return"";default:return 0}}function pe(n,e){switch(n){case c.BOOL:return e===!1;case c.STRING:return e==="";case c.BYTES:return e instanceof Uint8Array&&!e.byteLength;default:return e==0}}var p;(function(n){n[n.Varint=0]="Varint",n[n.Bit64=1]="Bit64",n[n.LengthDelimited=2]="LengthDelimited",n[n.StartGroup=3]="StartGroup",n[n.EndGroup=4]="EndGroup",n[n.Bit32=5]="Bit32"})(p||(p={}));class an{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let s=0;s<this.chunks.length;s++)e+=this.chunks[s].length;let t=new Uint8Array(e),r=0;for(let s=0;s<this.chunks.length;s++)t.set(this.chunks[s],r),r+=this.chunks[s].length;return this.chunks=[],t}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),t=this.stack.pop();if(!t)throw new Error("invalid state, fork stack empty");return this.chunks=t.chunks,this.buf=t.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,t){return this.uint32((e<<3|t)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(J(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return B(e),Q(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){ie(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){J(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){B(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return B(e),e=(e<<1^e>>31)>>>0,Q(e,this.buf),this}sfixed64(e){let t=new Uint8Array(8),r=new DataView(t.buffer),s=g.enc(e);return r.setInt32(0,s.lo,!0),r.setInt32(4,s.hi,!0),this.raw(t)}fixed64(e){let t=new Uint8Array(8),r=new DataView(t.buffer),s=g.uEnc(e);return r.setInt32(0,s.lo,!0),r.setInt32(4,s.hi,!0),this.raw(t)}int64(e){let t=g.enc(e);return V(t.lo,t.hi,this.buf),this}sint64(e){let t=g.enc(e),r=t.hi>>31,s=t.lo<<1^r,a=(t.hi<<1|t.lo>>>31)^r;return V(s,a,this.buf),this}uint64(e){let t=g.uEnc(e);return V(t.lo,t.hi,this.buf),this}}class on{constructor(e,t){this.varint64=en,this.uint32=sn,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=t??new TextDecoder}tag(){let e=this.uint32(),t=e>>>3,r=e&7;if(t<=0||r<0||r>5)throw new Error("illegal tag: field no "+t+" wire type "+r);return[t,r]}skip(e,t){let r=this.pos;switch(e){case p.Varint:for(;this.buf[this.pos++]&128;);break;case p.Bit64:this.pos+=4;case p.Bit32:this.pos+=4;break;case p.LengthDelimited:let s=this.uint32();this.pos+=s;break;case p.StartGroup:for(;;){const[a,o]=this.tag();if(o===p.EndGroup){if(t!==void 0&&a!==t)throw new Error("invalid end group tag");break}this.skip(o,a)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(r,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return g.dec(...this.varint64())}uint64(){return g.uDec(...this.varint64())}sint64(){let[e,t]=this.varint64(),r=-(e&1);return e=(e>>>1|(t&1)<<31)^r,t=t>>>1^r,g.dec(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return g.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return g.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}}function cn(n,e,t,r){let s;return{typeName:e,extendee:t,get field(){if(!s){const a=typeof r=="function"?r():r;a.name=e.split(".").pop(),a.jsonName=`[${e}]`,s=n.util.newFieldList([a]).list()[0]}return s},runtime:n}}function ge(n){const e=n.field.localName,t=Object.create(null);return t[e]=un(n),[t,()=>t[e]]}function un(n){const e=n.field;if(e.repeated)return[];if(e.default!==void 0)return e.default;switch(e.kind){case"enum":return e.T.values[0].no;case"scalar":return U(e.T,e.L);case"message":const t=e.T,r=new t;return t.fieldWrapper?t.fieldWrapper.unwrapField(r):r;case"map":throw"map fields are not allowed to be extensions"}}function mn(n,e){if(!e.repeated&&(e.kind=="enum"||e.kind=="scalar")){for(let t=n.length-1;t>=0;--t)if(n[t].no==e.no)return[n[t]];return[]}return n.filter(t=>t.no===e.no)}let y="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),j=[];for(let n=0;n<y.length;n++)j[y[n].charCodeAt(0)]=n;j[45]=y.indexOf("+");j[95]=y.indexOf("/");const be={dec(n){let e=n.length*3/4;n[n.length-2]=="="?e-=2:n[n.length-1]=="="&&(e-=1);let t=new Uint8Array(e),r=0,s=0,a,o=0;for(let i=0;i<n.length;i++){if(a=j[n.charCodeAt(i)],a===void 0)switch(n[i]){case"=":s=0;case`
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(s){case 0:o=a,s=1;break;case 1:t[r++]=o<<2|(a&48)>>4,o=a,s=2;break;case 2:t[r++]=(o&15)<<4|(a&60)>>2,o=a,s=3;break;case 3:t[r++]=(o&3)<<6|a,s=0;break}}if(s==1)throw Error("invalid base64 string.");return t.subarray(0,r)},enc(n){let e="",t=0,r,s=0;for(let a=0;a<n.length;a++)switch(r=n[a],t){case 0:e+=y[r>>2],s=(r&3)<<4,t=1;break;case 1:e+=y[s|r>>4],s=(r&15)<<2,t=2;break;case 2:e+=y[s|r>>6],e+=y[r&63],t=0;break}return t&&(e+=y[s],e+="=",t==1&&(e+="=")),e}};function ln(n,e,t){we(e,n);const r=e.runtime.bin.makeReadOptions(t),s=mn(n.getType().runtime.bin.listUnknownFields(n),e.field),[a,o]=ge(e);for(const i of s)e.runtime.bin.readField(a,r.readerFactory(i.data),e.field,i.wireType,r);return o()}function dn(n,e,t,r){we(e,n);const s=e.runtime.bin.makeReadOptions(r),a=e.runtime.bin.makeWriteOptions(r);if(ye(n,e)){const l=n.getType().runtime.bin.listUnknownFields(n).filter(m=>m.no!=e.field.no);n.getType().runtime.bin.discardUnknownFields(n);for(const m of l)n.getType().runtime.bin.onUnknownField(n,m.no,m.wireType,m.data)}const o=a.writerFactory();let i=e.field;!i.opt&&!i.repeated&&(i.kind=="enum"||i.kind=="scalar")&&(i=Object.assign(Object.assign({},e.field),{opt:!0})),e.runtime.bin.writeField(i,t,o,a);const u=s.readerFactory(o.finish());for(;u.pos<u.len;){const[l,m]=u.tag(),d=u.skip(m,l);n.getType().runtime.bin.onUnknownField(n,l,m,d)}}function ye(n,e){const t=n.getType();return e.extendee.typeName===t.typeName&&!!t.runtime.bin.listUnknownFields(n).find(r=>r.no==e.field.no)}function we(n,e){h(n.extendee.typeName==e.getType().typeName,`extension ${n.typeName} can only be applied to message ${n.extendee.typeName}`)}function ke(n,e){const t=n.localName;if(n.repeated)return e[t].length>0;if(n.oneof)return e[n.oneof.localName].case===t;switch(n.kind){case"enum":case"scalar":return n.opt||n.req?e[t]!==void 0:n.kind=="enum"?e[t]!==n.T.values[0].no:!pe(n.T,e[t]);case"message":return e[t]!==void 0;case"map":return Object.keys(e[t]).length>0}}function Z(n,e){const t=n.localName,r=!n.opt&&!n.req;if(n.repeated)e[t]=[];else if(n.oneof)e[n.oneof.localName]={case:void 0};else switch(n.kind){case"map":e[t]={};break;case"enum":e[t]=r?n.T.values[0].no:void 0;break;case"scalar":e[t]=r?U(n.T,n.L):void 0;break;case"message":e[t]=void 0;break}}function N(n,e){if(n===null||typeof n!="object"||!Object.getOwnPropertyNames(de.prototype).every(r=>r in n&&typeof n[r]=="function"))return!1;const t=n.getType();return t===null||typeof t!="function"||!("typeName"in t)||typeof t.typeName!="string"?!1:e===void 0?!0:t.typeName==e.typeName}function Ie(n,e){return N(e)||!n.fieldWrapper?e:n.fieldWrapper.wrapField(e)}c.DOUBLE,c.FLOAT,c.INT64,c.UINT64,c.INT32,c.UINT32,c.BOOL,c.STRING,c.BYTES;const $={ignoreUnknownFields:!1},Y={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function fn(n){return n?Object.assign(Object.assign({},$),n):$}function hn(n){return n?Object.assign(Object.assign({},Y),n):Y}const C=Symbol(),D=Symbol();function pn(){return{makeReadOptions:fn,makeWriteOptions:hn,readMessage(n,e,t,r){if(e==null||Array.isArray(e)||typeof e!="object")throw new Error(`cannot decode message ${n.typeName} from JSON: ${b(e)}`);r=r??new n;const s=new Map,a=t.typeRegistry;for(const[o,i]of Object.entries(e)){const u=n.fields.findJsonName(o);if(u){if(u.oneof){if(i===null&&u.kind=="scalar")continue;const l=s.get(u.oneof);if(l!==void 0)throw new Error(`cannot decode message ${n.typeName} from JSON: multiple keys for oneof "${u.oneof.name}" present: "${l}", "${o}"`);s.set(u.oneof,o)}X(r,i,u,t,n)}else{let l=!1;if(a!=null&&a.findExtension&&o.startsWith("[")&&o.endsWith("]")){const m=a.findExtension(o.substring(1,o.length-1));if(m&&m.extendee.typeName==n.typeName){l=!0;const[d,f]=ge(m);X(d,i,m.field,t,m),dn(r,m,f(),t)}}if(!l&&!t.ignoreUnknownFields)throw new Error(`cannot decode message ${n.typeName} from JSON: key "${o}" is unknown`)}}return r},writeMessage(n,e){const t=n.getType(),r={};let s;try{for(s of t.fields.byNumber()){if(!ke(s,n)){if(s.req)throw"required field not set";if(!e.emitDefaultValues||!bn(s))continue}const o=s.oneof?n[s.oneof.localName].value:n[s.localName],i=ee(s,o,e);i!==void 0&&(r[e.useProtoFieldName?s.name:s.jsonName]=i)}const a=e.typeRegistry;if(a!=null&&a.findExtensionFor)for(const o of t.runtime.bin.listUnknownFields(n)){const i=a.findExtensionFor(t.typeName,o.no);if(i&&ye(n,i)){const u=ln(n,i,e),l=ee(i.field,u,e);l!==void 0&&(r[i.field.jsonName]=l)}}}catch(a){const o=s?`cannot encode field ${t.typeName}.${s.name} to JSON`:`cannot encode message ${t.typeName} to JSON`,i=a instanceof Error?a.message:String(a);throw new Error(o+(i.length>0?`: ${i}`:""))}return r},readScalar(n,e,t){return q(n,e,t??k.BIGINT,!0)},writeScalar(n,e,t){if(e!==void 0&&(t||pe(n,e)))return z(n,e)},debug:b}}function b(n){if(n===null)return"null";switch(typeof n){case"object":return Array.isArray(n)?"array":"object";case"string":return n.length>100?"string":`"${n.split('"').join('\\"')}"`;default:return String(n)}}function X(n,e,t,r,s){let a=t.localName;if(t.repeated){if(h(t.kind!="map"),e===null)return;if(!Array.isArray(e))throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(e)}`);const o=n[a];for(const i of e){if(i===null)throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(i)}`);switch(t.kind){case"message":o.push(t.T.fromJson(i,r));break;case"enum":const u=P(t.T,i,r.ignoreUnknownFields,!0);u!==D&&o.push(u);break;case"scalar":try{o.push(q(t.T,i,t.L,!0))}catch(l){let m=`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(i)}`;throw l instanceof Error&&l.message.length>0&&(m+=`: ${l.message}`),new Error(m)}break}}}else if(t.kind=="map"){if(e===null)return;if(typeof e!="object"||Array.isArray(e))throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(e)}`);const o=n[a];for(const[i,u]of Object.entries(e)){if(u===null)throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: map value null`);let l;try{l=gn(t.K,i)}catch(m){let d=`cannot decode map key for field ${s.typeName}.${t.name} from JSON: ${b(e)}`;throw m instanceof Error&&m.message.length>0&&(d+=`: ${m.message}`),new Error(d)}switch(t.V.kind){case"message":o[l]=t.V.T.fromJson(u,r);break;case"enum":const m=P(t.V.T,u,r.ignoreUnknownFields,!0);m!==D&&(o[l]=m);break;case"scalar":try{o[l]=q(t.V.T,u,k.BIGINT,!0)}catch(d){let f=`cannot decode map value for field ${s.typeName}.${t.name} from JSON: ${b(e)}`;throw d instanceof Error&&d.message.length>0&&(f+=`: ${d.message}`),new Error(f)}break}}}else switch(t.oneof&&(n=n[t.oneof.localName]={case:a},a="value"),t.kind){case"message":const o=t.T;if(e===null&&o.typeName!="google.protobuf.Value")return;let i=n[a];N(i)?i.fromJson(e,r):(n[a]=i=o.fromJson(e,r),o.fieldWrapper&&!t.oneof&&(n[a]=o.fieldWrapper.unwrapField(i)));break;case"enum":const u=P(t.T,e,r.ignoreUnknownFields,!1);switch(u){case C:Z(t,n);break;case D:break;default:n[a]=u;break}break;case"scalar":try{const l=q(t.T,e,t.L,!1);switch(l){case C:Z(t,n);break;default:n[a]=l;break}}catch(l){let m=`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(e)}`;throw l instanceof Error&&l.message.length>0&&(m+=`: ${l.message}`),new Error(m)}break}}function gn(n,e){if(n===c.BOOL)switch(e){case"true":e=!0;break;case"false":e=!1;break}return q(n,e,k.BIGINT,!0).toString()}function q(n,e,t,r){if(e===null)return r?U(n,t):C;switch(n){case c.DOUBLE:case c.FLOAT:if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""||typeof e=="string"&&e.trim().length!==e.length||typeof e!="string"&&typeof e!="number")break;const s=Number(e);if(Number.isNaN(s)||!Number.isFinite(s))break;return n==c.FLOAT&&ie(s),s;case c.INT32:case c.FIXED32:case c.SFIXED32:case c.SINT32:case c.UINT32:let a;if(typeof e=="number"?a=e:typeof e=="string"&&e.length>0&&e.trim().length===e.length&&(a=Number(e)),a===void 0)break;return n==c.UINT32||n==c.FIXED32?J(a):B(a),a;case c.INT64:case c.SFIXED64:case c.SINT64:if(typeof e!="number"&&typeof e!="string")break;const o=g.parse(e);return t?o.toString():o;case c.FIXED64:case c.UINT64:if(typeof e!="number"&&typeof e!="string")break;const i=g.uParse(e);return t?i.toString():i;case c.BOOL:if(typeof e!="boolean")break;return e;case c.STRING:if(typeof e!="string")break;try{encodeURIComponent(e)}catch{throw new Error("invalid UTF8")}return e;case c.BYTES:if(e==="")return new Uint8Array(0);if(typeof e!="string")break;return be.dec(e)}throw new Error}function P(n,e,t,r){if(e===null)return n.typeName=="google.protobuf.NullValue"?0:r?n.values[0].no:C;switch(typeof e){case"number":if(Number.isInteger(e))return e;break;case"string":const s=n.findName(e);if(s!==void 0)return s.no;if(t)return D;break}throw new Error(`cannot decode enum ${n.typeName} from JSON: ${b(e)}`)}function bn(n){return n.repeated||n.kind=="map"?!0:!(n.oneof||n.kind=="message"||n.opt||n.req)}function ee(n,e,t){if(n.kind=="map"){h(typeof e=="object"&&e!=null);const r={},s=Object.entries(e);switch(n.V.kind){case"scalar":for(const[o,i]of s)r[o.toString()]=z(n.V.T,i);break;case"message":for(const[o,i]of s)r[o.toString()]=i.toJson(t);break;case"enum":const a=n.V.T;for(const[o,i]of s)r[o.toString()]=_(a,i,t.enumAsInteger);break}return t.emitDefaultValues||s.length>0?r:void 0}if(n.repeated){h(Array.isArray(e));const r=[];switch(n.kind){case"scalar":for(let s=0;s<e.length;s++)r.push(z(n.T,e[s]));break;case"enum":for(let s=0;s<e.length;s++)r.push(_(n.T,e[s],t.enumAsInteger));break;case"message":for(let s=0;s<e.length;s++)r.push(e[s].toJson(t));break}return t.emitDefaultValues||r.length>0?r:void 0}switch(n.kind){case"scalar":return z(n.T,e);case"enum":return _(n.T,e,t.enumAsInteger);case"message":return Ie(n.T,e).toJson(t)}}function _(n,e,t){var r;if(h(typeof e=="number"),n.typeName=="google.protobuf.NullValue")return null;if(t)return e;const s=n.findNumber(e);return(r=s==null?void 0:s.name)!==null&&r!==void 0?r:e}function z(n,e){switch(n){case c.INT32:case c.SFIXED32:case c.SINT32:case c.FIXED32:case c.UINT32:return h(typeof e=="number"),e;case c.FLOAT:case c.DOUBLE:return h(typeof e=="number"),Number.isNaN(e)?"NaN":e===Number.POSITIVE_INFINITY?"Infinity":e===Number.NEGATIVE_INFINITY?"-Infinity":e;case c.STRING:return h(typeof e=="string"),e;case c.BOOL:return h(typeof e=="boolean"),e;case c.UINT64:case c.FIXED64:case c.INT64:case c.SFIXED64:case c.SINT64:return h(typeof e=="bigint"||typeof e=="string"||typeof e=="number"),e.toString();case c.BYTES:return h(e instanceof Uint8Array),be.enc(e)}}const T=Symbol("@bufbuild/protobuf/unknown-fields"),ne={readUnknownFields:!0,readerFactory:n=>new on(n)},te={writeUnknownFields:!0,writerFactory:()=>new an};function yn(n){return n?Object.assign(Object.assign({},ne),n):ne}function wn(n){return n?Object.assign(Object.assign({},te),n):te}function kn(){return{makeReadOptions:yn,makeWriteOptions:wn,listUnknownFields(n){var e;return(e=n[T])!==null&&e!==void 0?e:[]},discardUnknownFields(n){delete n[T]},writeUnknownFields(n,e){const r=n[T];if(r)for(const s of r)e.tag(s.no,s.wireType).raw(s.data)},onUnknownField(n,e,t,r){const s=n;Array.isArray(s[T])||(s[T]=[]),s[T].push({no:e,wireType:t,data:r})},readMessage(n,e,t,r,s){const a=n.getType(),o=s?e.len:e.pos+t;let i,u;for(;e.pos<o&&([i,u]=e.tag(),!(s===!0&&u==p.EndGroup));){const l=a.fields.find(i);if(!l){const m=e.skip(u,i);r.readUnknownFields&&this.onUnknownField(n,i,u,m);continue}se(n,e,l,u,r)}if(s&&(u!=p.EndGroup||i!==t))throw new Error("invalid end group tag")},readField:se,writeMessage(n,e,t){const r=n.getType();for(const s of r.fields.byNumber()){if(!ke(s,n)){if(s.req)throw new Error(`cannot encode field ${r.typeName}.${s.name} to binary: required field not set`);continue}const a=s.oneof?n[s.oneof.localName].value:n[s.localName];re(s,a,e,t)}return t.writeUnknownFields&&this.writeUnknownFields(n,e),e},writeField(n,e,t,r){e!==void 0&&re(n,e,t,r)}}}function se(n,e,t,r,s){let{repeated:a,localName:o}=t;switch(t.oneof&&(n=n[t.oneof.localName],n.case!=o&&delete n.value,n.case=o,o="value"),t.kind){case"scalar":case"enum":const i=t.kind=="enum"?c.INT32:t.T;let u=L;if(t.kind=="scalar"&&t.L>0&&(u=Nn),a){let f=n[o];if(r==p.LengthDelimited&&i!=c.STRING&&i!=c.BYTES){let I=e.uint32()+e.pos;for(;e.pos<I;)f.push(u(e,i))}else f.push(u(e,i))}else n[o]=u(e,i);break;case"message":const l=t.T;a?n[o].push(M(e,new l,s,t)):N(n[o])?M(e,n[o],s,t):(n[o]=M(e,new l,s,t),l.fieldWrapper&&!t.oneof&&!t.repeated&&(n[o]=l.fieldWrapper.unwrapField(n[o])));break;case"map":let[m,d]=In(t,e,s);n[o][m]=d;break}}function M(n,e,t,r){const s=e.getType().runtime.bin,a=r==null?void 0:r.delimited;return s.readMessage(e,n,a?r.no:n.uint32(),t,a),e}function In(n,e,t){const r=e.uint32(),s=e.pos+r;let a,o;for(;e.pos<s;){const[i]=e.tag();switch(i){case 1:a=L(e,n.K);break;case 2:switch(n.V.kind){case"scalar":o=L(e,n.V.T);break;case"enum":o=e.int32();break;case"message":o=M(e,new n.V.T,t,void 0);break}break}}if(a===void 0&&(a=U(n.K,k.BIGINT)),typeof a!="string"&&typeof a!="number"&&(a=a.toString()),o===void 0)switch(n.V.kind){case"scalar":o=U(n.V.T,k.BIGINT);break;case"enum":o=n.V.T.values[0].no;break;case"message":o=new n.V.T;break}return[a,o]}function Nn(n,e){const t=L(n,e);return typeof t=="bigint"?t.toString():t}function L(n,e){switch(e){case c.STRING:return n.string();case c.BOOL:return n.bool();case c.DOUBLE:return n.double();case c.FLOAT:return n.float();case c.INT32:return n.int32();case c.INT64:return n.int64();case c.UINT64:return n.uint64();case c.FIXED64:return n.fixed64();case c.BYTES:return n.bytes();case c.FIXED32:return n.fixed32();case c.SFIXED32:return n.sfixed32();case c.SFIXED64:return n.sfixed64();case c.SINT64:return n.sint64();case c.UINT32:return n.uint32();case c.SINT32:return n.sint32()}}function re(n,e,t,r){h(e!==void 0);const s=n.repeated;switch(n.kind){case"scalar":case"enum":let a=n.kind=="enum"?c.INT32:n.T;if(s)if(h(Array.isArray(e)),n.packed)Un(t,a,n.no,e);else for(const o of e)E(t,a,n.no,o);else E(t,a,n.no,e);break;case"message":if(s){h(Array.isArray(e));for(const o of e)ae(t,r,n,o)}else ae(t,r,n,e);break;case"map":h(typeof e=="object"&&e!=null);for(const[o,i]of Object.entries(e))Tn(t,r,n,o,i);break}}function Tn(n,e,t,r,s){n.tag(t.no,p.LengthDelimited),n.fork();let a=r;switch(t.K){case c.INT32:case c.FIXED32:case c.UINT32:case c.SFIXED32:case c.SINT32:a=Number.parseInt(r);break;case c.BOOL:h(r=="true"||r=="false"),a=r=="true";break}switch(E(n,t.K,1,a),t.V.kind){case"scalar":E(n,t.V.T,2,s);break;case"enum":E(n,c.INT32,2,s);break;case"message":h(s!==void 0),n.tag(2,p.LengthDelimited).bytes(s.toBinary(e));break}n.join()}function ae(n,e,t,r){const s=Ie(t.T,r);t.delimited?n.tag(t.no,p.StartGroup).raw(s.toBinary(e)).tag(t.no,p.EndGroup):n.tag(t.no,p.LengthDelimited).bytes(s.toBinary(e))}function E(n,e,t,r){h(r!==void 0);let[s,a]=Ne(e);n.tag(t,s)[a](r)}function Un(n,e,t,r){if(!r.length)return;n.tag(t,p.LengthDelimited).fork();let[,s]=Ne(e);for(let a=0;a<r.length;a++)n[s](r[a]);n.join()}function Ne(n){let e=p.Varint;switch(n){case c.BYTES:case c.STRING:e=p.LengthDelimited;break;case c.DOUBLE:case c.FIXED64:case c.SFIXED64:e=p.Bit64;break;case c.FIXED32:case c.SFIXED32:case c.FLOAT:e=p.Bit32;break}const t=c[n].toLowerCase();return[e,t]}function vn(){return{setEnumType:ue,initPartial(n,e){if(n===void 0)return;const t=e.getType();for(const r of t.fields.byMember()){const s=r.localName,a=e,o=n;if(o[s]!=null)switch(r.kind){case"oneof":const i=o[s].case;if(i===void 0)continue;const u=r.findField(i);let l=o[s].value;u&&u.kind=="message"&&!N(l,u.T)?l=new u.T(l):u&&u.kind==="scalar"&&u.T===c.BYTES&&(l=A(l)),a[s]={case:i,value:l};break;case"scalar":case"enum":let m=o[s];r.T===c.BYTES&&(m=r.repeated?m.map(A):A(m)),a[s]=m;break;case"map":switch(r.V.kind){case"scalar":case"enum":if(r.V.T===c.BYTES)for(const[v,I]of Object.entries(o[s]))a[s][v]=A(I);else Object.assign(a[s],o[s]);break;case"message":const f=r.V.T;for(const v of Object.keys(o[s])){let I=o[s][v];f.fieldWrapper||(I=new f(I)),a[s][v]=I}break}break;case"message":const d=r.T;if(r.repeated)a[s]=o[s].map(f=>N(f,d)?f:new d(f));else{const f=o[s];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?a[s]=A(f):a[s]=f:a[s]=N(f,d)?f:new d(f)}break}}},equals(n,e,t){return e===t?!0:!e||!t?!1:n.fields.byMember().every(r=>{const s=e[r.localName],a=t[r.localName];if(r.repeated){if(s.length!==a.length)return!1;switch(r.kind){case"message":return s.every((o,i)=>r.T.equals(o,a[i]));case"scalar":return s.every((o,i)=>w(r.T,o,a[i]));case"enum":return s.every((o,i)=>w(c.INT32,o,a[i]))}throw new Error(`repeated cannot contain ${r.kind}`)}switch(r.kind){case"message":return r.T.equals(s,a);case"enum":return w(c.INT32,s,a);case"scalar":return w(r.T,s,a);case"oneof":if(s.case!==a.case)return!1;const o=r.findField(s.case);if(o===void 0)return!0;switch(o.kind){case"message":return o.T.equals(s.value,a.value);case"enum":return w(c.INT32,s.value,a.value);case"scalar":return w(o.T,s.value,a.value)}throw new Error(`oneof cannot contain ${o.kind}`);case"map":const i=Object.keys(s).concat(Object.keys(a));switch(r.V.kind){case"message":const u=r.V.T;return i.every(m=>u.equals(s[m],a[m]));case"enum":return i.every(m=>w(c.INT32,s[m],a[m]));case"scalar":const l=r.V.T;return i.every(m=>w(l,s[m],a[m]))}break}})},clone(n){const e=n.getType(),t=new e,r=t;for(const s of e.fields.byMember()){const a=n[s.localName];let o;if(s.repeated)o=a.map(F);else if(s.kind=="map"){o=r[s.localName];for(const[i,u]of Object.entries(a))o[i]=F(u)}else s.kind=="oneof"?o=s.findField(a.case)?{case:a.case,value:F(a.value)}:{case:void 0}:o=F(a);r[s.localName]=o}for(const s of e.runtime.bin.listUnknownFields(n))e.runtime.bin.onUnknownField(r,s.no,s.wireType,s.data);return t}}}function F(n){if(n===void 0)return n;if(N(n))return n.clone();if(n instanceof Uint8Array){const e=new Uint8Array(n.byteLength);return e.set(n),e}return n}function A(n){return n instanceof Uint8Array?n:new Uint8Array(n)}function xn(n,e,t){return{syntax:n,json:pn(),bin:kn(),util:Object.assign(Object.assign({},vn()),{newFieldList:e,initFields:t}),makeMessageType(r,s,a){return Xe(this,r,s,a)},makeEnum:Ye,makeEnumType:me,getEnumType:$e,makeExtension(r,s,a){return cn(this,r,s,a)}}}class An{constructor(e,t){this._fields=e,this._normalizer=t}findJsonName(e){if(!this.jsonNames){const t={};for(const r of this.list())t[r.jsonName]=t[r.name]=r;this.jsonNames=t}return this.jsonNames[e]}find(e){if(!this.numbers){const t={};for(const r of this.list())t[r.no]=r;this.numbers=t}return this.numbers[e]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((e,t)=>e.no-t.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];const e=this.members;let t;for(const r of this.list())r.oneof?r.oneof!==t&&(t=r.oneof,e.push(t)):e.push(r)}return this.members}}function Te(n,e){const t=Ue(n);return e?t:On(Bn(t))}function qn(n){return Te(n,!1)}const En=Ue;function Ue(n){let e=!1;const t=[];for(let r=0;r<n.length;r++){let s=n.charAt(r);switch(s){case"_":e=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":t.push(s),e=!1;break;default:e&&(e=!1,s=s.toUpperCase()),t.push(s);break}}return t.join("")}const Sn=new Set(["constructor","toString","toJSON","valueOf"]),Fn=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),ve=n=>`${n}$`,Bn=n=>Fn.has(n)?ve(n):n,On=n=>Sn.has(n)?ve(n):n;class Dn{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=qn(e)}addField(e){h(e.oneof===this,`field ${e.name} not one of ${this.name}`),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let t=0;t<this.fields.length;t++)this._lookup[this.fields[t].localName]=this.fields[t]}return this._lookup[e]}}function zn(n,e){var t,r,s,a,o,i;const u=[];let l;for(const m of typeof n=="function"?n():n){const d=m;if(d.localName=Te(m.name,m.oneof!==void 0),d.jsonName=(t=m.jsonName)!==null&&t!==void 0?t:En(m.name),d.repeated=(r=m.repeated)!==null&&r!==void 0?r:!1,m.kind=="scalar"&&(d.L=(s=m.L)!==null&&s!==void 0?s:k.BIGINT),d.delimited=(a=m.delimited)!==null&&a!==void 0?a:!1,d.req=(o=m.req)!==null&&o!==void 0?o:!1,d.opt=(i=m.opt)!==null&&i!==void 0?i:!1,m.packed===void 0&&(d.packed=m.kind=="enum"||m.kind=="scalar"&&m.T!=c.BYTES&&m.T!=c.STRING),m.oneof!==void 0){const f=typeof m.oneof=="string"?m.oneof:m.oneof.name;(!l||l.name!=f)&&(l=new Dn(f)),d.oneof=l,l.addField(d)}u.push(d)}return u}const S=xn("proto3",n=>new An(n,e=>zn(e)),n=>{for(const e of n.getType().fields.byMember()){if(e.opt)continue;const t=e.localName,r=n;if(e.repeated){r[t]=[];continue}switch(e.kind){case"oneof":r[t]={case:void 0};break;case"enum":r[t]=0;break;case"map":r[t]={};break;case"scalar":r[t]=U(e.T,e.L);break}}}),K=S.makeMessageType("penumbra.core.asset.v1.AssetId",()=>[{no:1,name:"inner",kind:"scalar",T:12},{no:2,name:"alt_bech32m",kind:"scalar",T:9},{no:3,name:"alt_base_denom",kind:"scalar",T:9}]),Mn=S.makeMessageType("penumbra.core.asset.v1.Metadata",()=>[{no:1,name:"description",kind:"scalar",T:9},{no:2,name:"denom_units",kind:"message",T:Cn,repeated:!0},{no:3,name:"base",kind:"scalar",T:9},{no:4,name:"display",kind:"scalar",T:9},{no:5,name:"name",kind:"scalar",T:9},{no:6,name:"symbol",kind:"scalar",T:9},{no:1984,name:"penumbra_asset_id",kind:"message",T:K},{no:1985,name:"images",kind:"message",T:Ln,repeated:!0},{no:1986,name:"priority_score",kind:"scalar",T:4}]),Cn=S.makeMessageType("penumbra.core.asset.v1.DenomUnit",()=>[{no:1,name:"denom",kind:"scalar",T:9},{no:2,name:"exponent",kind:"scalar",T:13},{no:3,name:"aliases",kind:"scalar",T:9,repeated:!0}]),Ln=S.makeMessageType("penumbra.core.asset.v1.AssetImage",()=>[{no:1,name:"png",kind:"scalar",T:9},{no:2,name:"svg",kind:"scalar",T:9},{no:3,name:"theme",kind:"message",T:jn}]),jn=S.makeMessageType("penumbra.core.asset.v1.AssetImage.Theme",()=>[{no:1,name:"primary_color_hex",kind:"scalar",T:9},{no:2,name:"circle",kind:"scalar",T:8},{no:3,name:"dark_mode",kind:"scalar",T:8}],{localName:"AssetImage_Theme"}),Vn=n=>{const e=String.fromCodePoint(...n);return btoa(e)},xe=n=>{if(!/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(n))throw new Error("Input string is not a valid Base64 encoded string");const t=atob(n);return Uint8Array.from(t,r=>r.codePointAt(0))},Pn=(n,e)=>{const t=Object.entries(n).map(([r,s])=>[r,e(s)]);return Object.fromEntries(t)};class Ae{constructor(e){x(this,"chainId");x(this,"ibcConnections");x(this,"numeraires");x(this,"assetById");this.chainId=e.chainId,this.ibcConnections=e.ibcConnections,this.assetById=Pn(e.assetById,t=>Mn.fromJson(t)),this.numeraires=e.numeraires.map(t=>new K({inner:xe(t)}))}getMetadata(e){const t=Vn(e.inner),r=this.assetById[t];if(!r)throw new Error(`No metadata in registry for asset id: ${t}`);return r}getAllAssets(){return Object.values(this.assetById)}}const qe="penumbra-testnet-deimos-6",Ee=[{addressPrefix:"osmo",chainId:"osmo-test-5",channelId:"channel-4",counterpartyChannelId:"channel-7780",displayName:"Osmosis",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/f1348793beb994c6cc0256ed7ebdb48c7aa70003/osmosis/images/osmo.svg"}]},{addressPrefix:"noble",chainId:"grand-1",channelId:"channel-3",counterpartyChannelId:"channel-164",displayName:"Noble",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/2ca39d0e4eaf3431cca13991948e099801f02e46/noble/images/stake.svg"}]}],Se={"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws=":{denomUnits:[{denom:"cube"}],base:"cube",display:"cube",symbol:"CUBE",penumbraAssetId:{inner:"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws="}},"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8=":{description:"USD Coin",denomUnits:[{denom:"transfer/channel-3/uusdc"},{denom:"transfer/channel-3/usdc",exponent:6}],base:"transfer/channel-3/uusdc",display:"transfer/channel-3/usdc",name:"USD Coin",symbol:"USDC",penumbraAssetId:{inner:"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="},images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/_non-cosmos/ethereum/images/usdc.svg"}]},"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI=":{denomUnits:[{denom:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:6},{denom:"mdelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:3},{denom:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20"}],base:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",display:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",symbol:"Delegation (Penumbra Labs CI 1)",penumbraAssetId:{inner:"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc=":{denomUnits:[{denom:"gm",exponent:6},{denom:"mgm",exponent:3},{denom:"ugm"}],base:"ugm",display:"gm",symbol:"GM",penumbraAssetId:{inner:"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc="}},"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI=":{description:"Love is a test tokenfactory asset controlled by the Strangelove Team",denomUnits:[{denom:"transfer/channel-3/ulove"},{denom:"transfer/channel-3/love",exponent:6}],base:"transfer/channel-3/ulove",display:"transfer/channel-3/love",name:"Love",symbol:"LOVE",penumbraAssetId:{inner:"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI="}},"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc=":{description:"The native token of Osmosis",denomUnits:[{denom:"transfer/channel-4/uosmo"},{denom:"transfer/channel-4/osmo",exponent:6}],base:"transfer/channel-4/uosmo",display:"transfer/channel-4/osmo",name:"Osmosis Testnet",symbol:"OSMO",penumbraAssetId:{inner:"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.svg"}]},"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=":{denomUnits:[{denom:"penumbra",exponent:6},{denom:"mpenumbra",exponent:3},{denom:"upenumbra"}],base:"upenumbra",display:"penumbra",symbol:"UM",penumbraAssetId:{inner:"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/um.svg"}]},"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM=":{description:"Ondo US Dollar Yield",denomUnits:[{denom:"transfer/channel-3/ausdy"},{denom:"transfer/channel-3/usdy",exponent:18}],base:"transfer/channel-3/ausdy",display:"transfer/channel-3/usdy",name:"Ondo US Dollar Yield",symbol:"USDY",penumbraAssetId:{inner:"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.svg"}]},"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE=":{denomUnits:[{denom:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz"},{denom:"transfer/channel-4/willyz",exponent:6}],base:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz",display:"transfer/channel-4/willyz",name:"Willyz",symbol:"WILLYZ",penumbraAssetId:{inner:"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.svg"}]},"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI=":{description:"The controlled staking asset for Noble Chain",denomUnits:[{denom:"transfer/channel-3/ustake"},{denom:"transfer/channel-3/stake",exponent:6}],base:"transfer/channel-3/ustake",display:"transfer/channel-3/stake",name:"Stake",symbol:"STAKE",penumbraAssetId:{inner:"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI="}},"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw=":{denomUnits:[{denom:"pizza"}],base:"pizza",display:"pizza",symbol:"PIZZA",penumbraAssetId:{inner:"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/pizza.svg"}]},"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE=":{denomUnits:[{denom:"gn",exponent:6},{denom:"mgn",exponent:3},{denom:"ugn"}],base:"ugn",display:"gn",symbol:"GN",penumbraAssetId:{inner:"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE="}},"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU=":{denomUnits:[{denom:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:6},{denom:"mdelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:3},{denom:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050"}],base:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",display:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",symbol:"Delegation (Penumbra Labs CI 2)",penumbraAssetId:{inner:"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=":{denomUnits:[{denom:"test_usd",exponent:18},{denom:"wtest_usd"}],base:"wtest_usd",display:"test_usd",symbol:"TestUSD",penumbraAssetId:{inner:"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/test-usd.svg"}]},"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk=":{denomUnits:[{denom:"transfer/channel-4/uion"},{denom:"transfer/channel-4/ion",exponent:6}],base:"transfer/channel-4/uion",display:"transfer/channel-4/ion",name:"Ion",symbol:"ION",penumbraAssetId:{inner:"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.svg"}]}},Fe=["reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=","CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="],_n={chainId:qe,ibcConnections:Ee,assetById:Se,numeraires:Fe},Jn=Object.freeze(Object.defineProperty({__proto__:null,assetById:Se,chainId:qe,default:_n,ibcConnections:Ee,numeraires:Fe},Symbol.toStringTag,{value:"Module"})),Be="penumbra-testnet-deimos-7",Oe=[{addressPrefix:"osmo",chainId:"osmo-test-5",channelId:"channel-4",counterpartyChannelId:"channel-7780",displayName:"Osmosis",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/f1348793beb994c6cc0256ed7ebdb48c7aa70003/osmosis/images/osmo.svg"}]},{addressPrefix:"noble",chainId:"grand-1",channelId:"channel-3",counterpartyChannelId:"channel-164",displayName:"Noble",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/2ca39d0e4eaf3431cca13991948e099801f02e46/noble/images/stake.svg"}]}],De={"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws=":{denomUnits:[{denom:"cube"}],base:"cube",display:"cube",symbol:"CUBE",penumbraAssetId:{inner:"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws="}},"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8=":{description:"USD Coin",denomUnits:[{denom:"transfer/channel-3/uusdc"},{denom:"transfer/channel-3/usdc",exponent:6}],base:"transfer/channel-3/uusdc",display:"transfer/channel-3/usdc",name:"USD Coin",symbol:"USDC",penumbraAssetId:{inner:"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="},images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/_non-cosmos/ethereum/images/usdc.svg"}]},"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI=":{denomUnits:[{denom:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:6},{denom:"mdelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:3},{denom:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20"}],base:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",display:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",symbol:"Delegation (Penumbra Labs CI 1)",penumbraAssetId:{inner:"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc=":{denomUnits:[{denom:"gm",exponent:6},{denom:"mgm",exponent:3},{denom:"ugm"}],base:"ugm",display:"gm",symbol:"GM",penumbraAssetId:{inner:"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc="}},"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI=":{description:"Love is a test tokenfactory asset controlled by the Strangelove Team",denomUnits:[{denom:"transfer/channel-3/ulove"},{denom:"transfer/channel-3/love",exponent:6}],base:"transfer/channel-3/ulove",display:"transfer/channel-3/love",name:"Love",symbol:"LOVE",penumbraAssetId:{inner:"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI="}},"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc=":{description:"The native token of Osmosis",denomUnits:[{denom:"transfer/channel-4/uosmo"},{denom:"transfer/channel-4/osmo",exponent:6}],base:"transfer/channel-4/uosmo",display:"transfer/channel-4/osmo",name:"Osmosis Testnet",symbol:"OSMO",penumbraAssetId:{inner:"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.svg"}]},"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=":{denomUnits:[{denom:"penumbra",exponent:6},{denom:"mpenumbra",exponent:3},{denom:"upenumbra"}],base:"upenumbra",display:"penumbra",symbol:"UM",penumbraAssetId:{inner:"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/um.svg"}]},"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM=":{description:"Ondo US Dollar Yield",denomUnits:[{denom:"transfer/channel-3/ausdy"},{denom:"transfer/channel-3/usdy",exponent:18}],base:"transfer/channel-3/ausdy",display:"transfer/channel-3/usdy",name:"Ondo US Dollar Yield",symbol:"USDY",penumbraAssetId:{inner:"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.svg"}]},"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE=":{denomUnits:[{denom:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz"},{denom:"transfer/channel-4/willyz",exponent:6}],base:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz",display:"transfer/channel-4/willyz",name:"Willyz",symbol:"WILLYZ",penumbraAssetId:{inner:"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.svg"}]},"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI=":{description:"The controlled staking asset for Noble Chain",denomUnits:[{denom:"transfer/channel-3/ustake"},{denom:"transfer/channel-3/stake",exponent:6}],base:"transfer/channel-3/ustake",display:"transfer/channel-3/stake",name:"Stake",symbol:"STAKE",penumbraAssetId:{inner:"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI="}},"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw=":{denomUnits:[{denom:"pizza"}],base:"pizza",display:"pizza",symbol:"PIZZA",penumbraAssetId:{inner:"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/pizza.svg"}]},"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE=":{denomUnits:[{denom:"gn",exponent:6},{denom:"mgn",exponent:3},{denom:"ugn"}],base:"ugn",display:"gn",symbol:"GN",penumbraAssetId:{inner:"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE="}},"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU=":{denomUnits:[{denom:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:6},{denom:"mdelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:3},{denom:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050"}],base:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",display:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",symbol:"Delegation (Penumbra Labs CI 2)",penumbraAssetId:{inner:"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=":{denomUnits:[{denom:"test_usd",exponent:18},{denom:"wtest_usd"}],base:"wtest_usd",display:"test_usd",symbol:"TestUSD",penumbraAssetId:{inner:"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/test-usd.svg"}]},"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk=":{denomUnits:[{denom:"transfer/channel-4/uion"},{denom:"transfer/channel-4/ion",exponent:6}],base:"transfer/channel-4/uion",display:"transfer/channel-4/ion",name:"Ion",symbol:"ION",penumbraAssetId:{inner:"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.svg"}]}},ze=["reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=","CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="],Gn={chainId:Be,ibcConnections:Oe,assetById:De,numeraires:ze},Kn=Object.freeze(Object.defineProperty({__proto__:null,assetById:De,chainId:Be,default:Gn,ibcConnections:Oe,numeraires:ze},Symbol.toStringTag,{value:"Module"})),Me="penumbra-testnet-deimos-8",Ce=[{addressPrefix:"osmo",chainId:"osmo-test-5",channelId:"channel-9",counterpartyChannelId:"channel-8343",displayName:"Osmosis",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/f1348793beb994c6cc0256ed7ebdb48c7aa70003/osmosis/images/osmo.svg"}]},{addressPrefix:"noble",chainId:"grand-1",channelId:"channel-7",counterpartyChannelId:"channel-182",displayName:"Noble",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/2ca39d0e4eaf3431cca13991948e099801f02e46/noble/images/stake.svg"}]}],Le={"/5AHh95RAybBbUhQ5zXMWCvstH4rRK/5KMVIVGQltAw=":{denomUnits:[{denom:"udelegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u"},{denom:"mdelegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",exponent:3},{denom:"delegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",exponent:6}],base:"udelegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",display:"delegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",symbol:"delUM(Starling Staking)",penumbraAssetId:{inner:"/5AHh95RAybBbUhQ5zXMWCvstH4rRK/5KMVIVGQltAw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/starling-staking.svg"}]},"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws=":{denomUnits:[{denom:"cube"}],base:"cube",display:"cube",symbol:"CUBE",penumbraAssetId:{inner:"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws="}},"A/8PdbaWqFds9NiYzmAN75SehGpkLwr7tgoVmwaIVgg=":{description:"USD Coin",denomUnits:[{denom:"transfer/channel-7/uusdc"},{denom:"transfer/channel-7/usdc",exponent:6}],base:"transfer/channel-7/uusdc",display:"transfer/channel-7/usdc",name:"USD Coin",symbol:"USDC",penumbraAssetId:{inner:"A/8PdbaWqFds9NiYzmAN75SehGpkLwr7tgoVmwaIVgg="},images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/_non-cosmos/ethereum/images/usdc.svg"}]},"HBbZz97zUT7haWR5vaS+IlBfPdGXJPik98UMa+vnTgQ=":{description:"Ondo US Dollar Yield",denomUnits:[{denom:"transfer/channel-7/ausdy"},{denom:"transfer/channel-7/usdy",exponent:18}],base:"transfer/channel-7/ausdy",display:"transfer/channel-7/usdy",name:"Ondo US Dollar Yield",symbol:"USDY",penumbraAssetId:{inner:"HBbZz97zUT7haWR5vaS+IlBfPdGXJPik98UMa+vnTgQ="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.svg"}]},"HLkKbVfA72oQaMdYFroWQ1qoSyl/KLHZiOMJhL2y9w0=":{denomUnits:[{denom:"test_eth",exponent:18},{denom:"wtest_eth"}],base:"wtest_eth",display:"test_eth",symbol:"TestETH",penumbraAssetId:{inner:"HLkKbVfA72oQaMdYFroWQ1qoSyl/KLHZiOMJhL2y9w0="}},"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc=":{denomUnits:[{denom:"gm",exponent:6},{denom:"mgm",exponent:3},{denom:"ugm"}],base:"ugm",display:"gm",symbol:"GM",penumbraAssetId:{inner:"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/full-moon-face.svg"}]},"KOzSyroXl6g63ADPTVMW+AEc2rvFMld69+5ZblsX0xA=":{description:"Love is a test tokenfactory asset controlled by the Strangelove Team",denomUnits:[{denom:"transfer/channel-7/ulove"},{denom:"transfer/channel-7/love",exponent:6}],base:"transfer/channel-7/ulove",display:"transfer/channel-7/love",name:"Love",symbol:"LOVE",penumbraAssetId:{inner:"KOzSyroXl6g63ADPTVMW+AEc2rvFMld69+5ZblsX0xA="}},"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=":{denomUnits:[{denom:"penumbra",exponent:6},{denom:"mpenumbra",exponent:3},{denom:"upenumbra"}],base:"upenumbra",display:"penumbra",symbol:"UM",penumbraAssetId:{inner:"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/um.svg"}]},"W6xo3Dww1gT85lSP0GvUl3lE1IYWn7J4EIbW1acE3g4=":{description:"The controlled staking asset for Noble Chain",denomUnits:[{denom:"transfer/channel-7/ustake"},{denom:"transfer/channel-7/stake",exponent:6}],base:"transfer/channel-7/ustake",display:"transfer/channel-7/stake",name:"Stake",symbol:"STAKE",penumbraAssetId:{inner:"W6xo3Dww1gT85lSP0GvUl3lE1IYWn7J4EIbW1acE3g4="}},"WUz70nLlQjjRFJDz//neiPRqDyLCX2rB/pTmAKVlTw4=":{denomUnits:[{denom:"transfer/channel-9/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz"},{denom:"transfer/channel-9/willyz",exponent:6}],base:"transfer/channel-9/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz",display:"transfer/channel-9/willyz",name:"Willyz",symbol:"WILLYZ",penumbraAssetId:{inner:"WUz70nLlQjjRFJDz//neiPRqDyLCX2rB/pTmAKVlTw4="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.svg"}]},"eeD8X4rWeMaC3Oqdw8tyU6YBLryAYCBLwEbiIKoo5Qc=":{denomUnits:[{denom:"udelegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63"},{denom:"mdelegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",exponent:3},{denom:"delegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",exponent:6}],base:"udelegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",display:"delegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",symbol:"delUM(Penumbra Labs CI 2)",penumbraAssetId:{inner:"eeD8X4rWeMaC3Oqdw8tyU6YBLryAYCBLwEbiIKoo5Qc="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"hMtHaDpbuAknRJsa+BQEuST3GDeF91asCSThgTDAkwk=":{denomUnits:[{denom:"transfer/channel-9/uion"},{denom:"transfer/channel-9/ion",exponent:6}],base:"transfer/channel-9/uion",display:"transfer/channel-9/ion",name:"Ion",symbol:"ION",penumbraAssetId:{inner:"hMtHaDpbuAknRJsa+BQEuST3GDeF91asCSThgTDAkwk="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.svg"}]},"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw=":{denomUnits:[{denom:"pizza"}],base:"pizza",display:"pizza",symbol:"PIZZA",penumbraAssetId:{inner:"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/pizza.svg"}]},"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE=":{denomUnits:[{denom:"gn",exponent:6},{denom:"mgn",exponent:3},{denom:"ugn"}],base:"ugn",display:"gn",symbol:"GN",penumbraAssetId:{inner:"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/new-moon-face.svg"}]},"o2gZdbhCH70Ry+7iBhkSeHC/PB1LZhgkn7LHC2kEhQc=":{denomUnits:[{denom:"test_btc",exponent:8},{denom:"test_sat"}],base:"test_sat",display:"test_btc",symbol:"TestBTC",penumbraAssetId:{inner:"o2gZdbhCH70Ry+7iBhkSeHC/PB1LZhgkn7LHC2kEhQc="}},"pmpygqUf4DL+z849rGPpudpdK/+FAv8qQ01U2C73kAw=":{denomUnits:[{denom:"test_osmo",exponent:6},{denom:"mtest_osmo",exponent:3},{denom:"utest_osmo"}],base:"utest_osmo",display:"test_osmo",symbol:"TestOSMO",penumbraAssetId:{inner:"pmpygqUf4DL+z849rGPpudpdK/+FAv8qQ01U2C73kAw="}},"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=":{denomUnits:[{denom:"test_usd",exponent:18},{denom:"wtest_usd"}],base:"wtest_usd",display:"test_usd",symbol:"TestUSD",penumbraAssetId:{inner:"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/test-usd.svg"}]},"s82FyPdtSi8r0syejJHbC6PcjKTQ8a5hCbrnROuBxQ8=":{denomUnits:[{denom:"udelegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja"},{denom:"mdelegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",exponent:3},{denom:"delegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",exponent:6}],base:"udelegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",display:"delegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",symbol:"delUM(Penumbra Labs CI 1)",penumbraAssetId:{inner:"s82FyPdtSi8r0syejJHbC6PcjKTQ8a5hCbrnROuBxQ8="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"w0cmsVnoTuAFZdDtNXztOvBwBflTnxmxnfJoXJSWGQU=":{description:"The native token of Osmosis",denomUnits:[{denom:"transfer/channel-9/uosmo"},{denom:"transfer/channel-9/osmo",exponent:6}],base:"transfer/channel-9/uosmo",display:"transfer/channel-9/osmo",name:"Osmosis Testnet",symbol:"OSMO",penumbraAssetId:{inner:"w0cmsVnoTuAFZdDtNXztOvBwBflTnxmxnfJoXJSWGQU="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.svg"}]},"ypUT1AOtjfwMOKMATACoD9RSvi8jY/YnYGi46CZ/6Q8=":{denomUnits:[{denom:"test_atom",exponent:6},{denom:"mtest_atom",exponent:3},{denom:"utest_atom"}],base:"utest_atom",display:"test_atom",symbol:"TestATOM",penumbraAssetId:{inner:"ypUT1AOtjfwMOKMATACoD9RSvi8jY/YnYGi46CZ/6Q8="}}},je=["reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=","A/8PdbaWqFds9NiYzmAN75SehGpkLwr7tgoVmwaIVgg="],Hn={chainId:Me,ibcConnections:Ce,assetById:Le,numeraires:je},Rn=Object.freeze(Object.defineProperty({__proto__:null,assetById:Le,chainId:Me,default:Hn,ibcConnections:Ce,numeraires:je},Symbol.toStringTag,{value:"Module"})),Ve=[{name:"Penumbra Labs Testnet RPC",url:"https://grpc.testnet.penumbra.zone",images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]}],Pe=["https://app.testnet.penumbra.zone"],H="KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=",Wn={rpcs:Ve,frontends:Pe,stakingAssetId:H},Qn=Object.freeze(Object.defineProperty({__proto__:null,default:Wn,frontends:Pe,rpcs:Ve,stakingAssetId:H},Symbol.toStringTag,{value:"Module"})),Zn={"penumbra-testnet-deimos-6":Jn,"penumbra-testnet-deimos-7":Kn,"penumbra-testnet-deimos-8":Rn},$n={...Qn,stakingAssetId:new K({inner:xe(H)})};class Yn{get(e){const t=this.swapIfPreviewChain(e),r=Zn[t];if(!r)throw new Error(`Registry not found for ${t}`);return new Ae(r)}globals(){return $n}version(){return{commit:"4de4b30ed92387c46c38c68b0d88f0ff6627dd02",date:new Date("2024-06-28T11:04:53+03:00")}}swapIfPreviewChain(e){if(!Ge(e))return e;const t=Ke(e);if(!t)throw new Error(`Chain id could not be derived from testnet preview chain: ${e}`);return t}}exports.ChainRegistryClient=Yn;exports.Registry=Ae;
"use strict";var Pe=Object.defineProperty;var _e=(n,e,t)=>e in n?Pe(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var x=(n,e,t)=>_e(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Je=n=>/-x[0-9a-f]+$/i.test(n),Ge=n=>{const e=n.lastIndexOf("-x");return n.substring(0,e)};function h(n,e){if(!n)throw new Error(e)}const Ke=34028234663852886e22,He=-34028234663852886e22,Re=4294967295,We=2147483647,Qe=-2147483648;function B(n){if(typeof n!="number")throw new Error("invalid int 32: "+typeof n);if(!Number.isInteger(n)||n>We||n<Qe)throw new Error("invalid int 32: "+n)}function J(n){if(typeof n!="number")throw new Error("invalid uint 32: "+typeof n);if(!Number.isInteger(n)||n>Re||n<0)throw new Error("invalid uint 32: "+n)}function oe(n){if(typeof n!="number")throw new Error("invalid float 32: "+typeof n);if(Number.isFinite(n)&&(n>Ke||n<He))throw new Error("invalid float 32: "+n)}const ie=Symbol("@bufbuild/protobuf/enum-type");function Ze(n){const e=n[ie];return h(e,"missing enum type on enum object"),e}function ce(n,e,t,r){n[ie]=ue(e,t.map(s=>({no:s.no,name:s.name,localName:n[s.no]})))}function ue(n,e,t){const r=Object.create(null),s=Object.create(null),a=[];for(const o of e){const i=me(o);a.push(i),r[o.name]=i,s[o.no]=i}return{typeName:n,values:a,findName(o){return r[o]},findNumber(o){return s[o]}}}function $e(n,e,t){const r={};for(const s of e){const a=me(s);r[a.localName]=a.no,r[a.no]=a.localName}return ce(r,n,e),r}function me(n){return"localName"in n?n:Object.assign(Object.assign({},n),{localName:n.name})}class le{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,t){const r=this.getType(),s=r.runtime.bin,a=s.makeReadOptions(t);return s.readMessage(this,a.readerFactory(e),e.byteLength,a),this}fromJson(e,t){const r=this.getType(),s=r.runtime.json,a=s.makeReadOptions(t);return s.readMessage(r,e,a,this),this}fromJsonString(e,t){let r;try{r=JSON.parse(e)}catch(s){throw new Error(`cannot decode ${this.getType().typeName} from JSON: ${s instanceof Error?s.message:String(s)}`)}return this.fromJson(r,t)}toBinary(e){const t=this.getType(),r=t.runtime.bin,s=r.makeWriteOptions(e),a=s.writerFactory();return r.writeMessage(this,a,s),a.finish()}toJson(e){const t=this.getType(),r=t.runtime.json,s=r.makeWriteOptions(e);return r.writeMessage(this,s)}toJsonString(e){var t;const r=this.toJson(e);return JSON.stringify(r,null,(t=e==null?void 0:e.prettySpaces)!==null&&t!==void 0?t:0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}}function Ye(n,e,t,r){var s;const a=(s=r==null?void 0:r.localName)!==null&&s!==void 0?s:e.substring(e.lastIndexOf(".")+1),o={[a]:function(i){n.util.initFields(this),n.util.initPartial(i,this)}}[a];return Object.setPrototypeOf(o.prototype,new le),Object.assign(o,{runtime:n,typeName:e,fields:n.util.newFieldList(t),fromBinary(i,u){return new o().fromBinary(i,u)},fromJson(i,u){return new o().fromJson(i,u)},fromJsonString(i,u){return new o().fromJsonString(i,u)},equals(i,u){return n.util.equals(o,i,u)}}),o}function Xe(){let n=0,e=0;for(let r=0;r<28;r+=7){let s=this.buf[this.pos++];if(n|=(s&127)<<r,!(s&128))return this.assertBounds(),[n,e]}let t=this.buf[this.pos++];if(n|=(t&15)<<28,e=(t&112)>>4,!(t&128))return this.assertBounds(),[n,e];for(let r=3;r<=31;r+=7){let s=this.buf[this.pos++];if(e|=(s&127)<<r,!(s&128))return this.assertBounds(),[n,e]}throw new Error("invalid varint")}function V(n,e,t){for(let a=0;a<28;a=a+7){const o=n>>>a,i=!(!(o>>>7)&&e==0),u=(i?o|128:o)&255;if(t.push(u),!i)return}const r=n>>>28&15|(e&7)<<4,s=!!(e>>3);if(t.push((s?r|128:r)&255),!!s){for(let a=3;a<31;a=a+7){const o=e>>>a,i=!!(o>>>7),u=(i?o|128:o)&255;if(t.push(u),!i)return}t.push(e>>>31&1)}}const O=4294967296;function R(n){const e=n[0]==="-";e&&(n=n.slice(1));const t=1e6;let r=0,s=0;function a(o,i){const u=Number(n.slice(o,i));s*=t,r=r*t+u,r>=O&&(s=s+(r/O|0),r=r%O)}return a(-24,-18),a(-18,-12),a(-12,-6),a(-6),e?fe(r,s):G(r,s)}function en(n,e){let t=G(n,e);const r=t.hi&2147483648;r&&(t=fe(t.lo,t.hi));const s=de(t.lo,t.hi);return r?"-"+s:s}function de(n,e){if({lo:n,hi:e}=nn(n,e),e<=2097151)return String(O*e+n);const t=n&16777215,r=(n>>>24|e<<8)&16777215,s=e>>16&65535;let a=t+r*6777216+s*6710656,o=r+s*8147497,i=s*2;const u=1e7;return a>=u&&(o+=Math.floor(a/u),a%=u),o>=u&&(i+=Math.floor(o/u),o%=u),i.toString()+W(o)+W(a)}function nn(n,e){return{lo:n>>>0,hi:e>>>0}}function G(n,e){return{lo:n|0,hi:e|0}}function fe(n,e){return e=~e,n?n=~n+1:e+=1,G(n,e)}const W=n=>{const e=String(n);return"0000000".slice(e.length)+e};function Q(n,e){if(n>=0){for(;n>127;)e.push(n&127|128),n=n>>>7;e.push(n)}else{for(let t=0;t<9;t++)e.push(n&127|128),n=n>>7;e.push(1)}}function tn(){let n=this.buf[this.pos++],e=n&127;if(!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<7,!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<14,!(n&128))return this.assertBounds(),e;if(n=this.buf[this.pos++],e|=(n&127)<<21,!(n&128))return this.assertBounds(),e;n=this.buf[this.pos++],e|=(n&15)<<28;for(let t=5;n&128&&t<10;t++)n=this.buf[this.pos++];if(n&128)throw new Error("invalid varint");return this.assertBounds(),e>>>0}function sn(){const n=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof n.getBigInt64=="function"&&typeof n.getBigUint64=="function"&&typeof n.setBigInt64=="function"&&typeof n.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){const s=BigInt("-9223372036854775808"),a=BigInt("9223372036854775807"),o=BigInt("0"),i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(u){const l=typeof u=="bigint"?u:BigInt(u);if(l>a||l<s)throw new Error(`int64 invalid: ${u}`);return l},uParse(u){const l=typeof u=="bigint"?u:BigInt(u);if(l>i||l<o)throw new Error(`uint64 invalid: ${u}`);return l},enc(u){return n.setBigInt64(0,this.parse(u),!0),{lo:n.getInt32(0,!0),hi:n.getInt32(4,!0)}},uEnc(u){return n.setBigInt64(0,this.uParse(u),!0),{lo:n.getInt32(0,!0),hi:n.getInt32(4,!0)}},dec(u,l){return n.setInt32(0,u,!0),n.setInt32(4,l,!0),n.getBigInt64(0,!0)},uDec(u,l){return n.setInt32(0,u,!0),n.setInt32(4,l,!0),n.getBigUint64(0,!0)}}}const t=s=>h(/^-?[0-9]+$/.test(s),`int64 invalid: ${s}`),r=s=>h(/^[0-9]+$/.test(s),`uint64 invalid: ${s}`);return{zero:"0",supported:!1,parse(s){return typeof s!="string"&&(s=s.toString()),t(s),s},uParse(s){return typeof s!="string"&&(s=s.toString()),r(s),s},enc(s){return typeof s!="string"&&(s=s.toString()),t(s),R(s)},uEnc(s){return typeof s!="string"&&(s=s.toString()),r(s),R(s)},dec(s,a){return en(s,a)},uDec(s,a){return de(s,a)}}}const g=sn();var c;(function(n){n[n.DOUBLE=1]="DOUBLE",n[n.FLOAT=2]="FLOAT",n[n.INT64=3]="INT64",n[n.UINT64=4]="UINT64",n[n.INT32=5]="INT32",n[n.FIXED64=6]="FIXED64",n[n.FIXED32=7]="FIXED32",n[n.BOOL=8]="BOOL",n[n.STRING=9]="STRING",n[n.BYTES=12]="BYTES",n[n.UINT32=13]="UINT32",n[n.SFIXED32=15]="SFIXED32",n[n.SFIXED64=16]="SFIXED64",n[n.SINT32=17]="SINT32",n[n.SINT64=18]="SINT64"})(c||(c={}));var k;(function(n){n[n.BIGINT=0]="BIGINT",n[n.STRING=1]="STRING"})(k||(k={}));function w(n,e,t){if(e===t)return!0;if(n==c.BYTES){if(!(e instanceof Uint8Array)||!(t instanceof Uint8Array)||e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}switch(n){case c.UINT64:case c.FIXED64:case c.INT64:case c.SFIXED64:case c.SINT64:return e==t}return!1}function U(n,e){switch(n){case c.BOOL:return!1;case c.UINT64:case c.FIXED64:case c.INT64:case c.SFIXED64:case c.SINT64:return e==0?g.zero:"0";case c.DOUBLE:case c.FLOAT:return 0;case c.BYTES:return new Uint8Array(0);case c.STRING:return"";default:return 0}}function he(n,e){switch(n){case c.BOOL:return e===!1;case c.STRING:return e==="";case c.BYTES:return e instanceof Uint8Array&&!e.byteLength;default:return e==0}}var p;(function(n){n[n.Varint=0]="Varint",n[n.Bit64=1]="Bit64",n[n.LengthDelimited=2]="LengthDelimited",n[n.StartGroup=3]="StartGroup",n[n.EndGroup=4]="EndGroup",n[n.Bit32=5]="Bit32"})(p||(p={}));class rn{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let s=0;s<this.chunks.length;s++)e+=this.chunks[s].length;let t=new Uint8Array(e),r=0;for(let s=0;s<this.chunks.length;s++)t.set(this.chunks[s],r),r+=this.chunks[s].length;return this.chunks=[],t}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),t=this.stack.pop();if(!t)throw new Error("invalid state, fork stack empty");return this.chunks=t.chunks,this.buf=t.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,t){return this.uint32((e<<3|t)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(J(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return B(e),Q(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){oe(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){J(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){B(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return B(e),e=(e<<1^e>>31)>>>0,Q(e,this.buf),this}sfixed64(e){let t=new Uint8Array(8),r=new DataView(t.buffer),s=g.enc(e);return r.setInt32(0,s.lo,!0),r.setInt32(4,s.hi,!0),this.raw(t)}fixed64(e){let t=new Uint8Array(8),r=new DataView(t.buffer),s=g.uEnc(e);return r.setInt32(0,s.lo,!0),r.setInt32(4,s.hi,!0),this.raw(t)}int64(e){let t=g.enc(e);return V(t.lo,t.hi,this.buf),this}sint64(e){let t=g.enc(e),r=t.hi>>31,s=t.lo<<1^r,a=(t.hi<<1|t.lo>>>31)^r;return V(s,a,this.buf),this}uint64(e){let t=g.uEnc(e);return V(t.lo,t.hi,this.buf),this}}class an{constructor(e,t){this.varint64=Xe,this.uint32=tn,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=t??new TextDecoder}tag(){let e=this.uint32(),t=e>>>3,r=e&7;if(t<=0||r<0||r>5)throw new Error("illegal tag: field no "+t+" wire type "+r);return[t,r]}skip(e,t){let r=this.pos;switch(e){case p.Varint:for(;this.buf[this.pos++]&128;);break;case p.Bit64:this.pos+=4;case p.Bit32:this.pos+=4;break;case p.LengthDelimited:let s=this.uint32();this.pos+=s;break;case p.StartGroup:for(;;){const[a,o]=this.tag();if(o===p.EndGroup){if(t!==void 0&&a!==t)throw new Error("invalid end group tag");break}this.skip(o,a)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(r,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return g.dec(...this.varint64())}uint64(){return g.uDec(...this.varint64())}sint64(){let[e,t]=this.varint64(),r=-(e&1);return e=(e>>>1|(t&1)<<31)^r,t=t>>>1^r,g.dec(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return g.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return g.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}}function on(n,e,t,r){let s;return{typeName:e,extendee:t,get field(){if(!s){const a=typeof r=="function"?r():r;a.name=e.split(".").pop(),a.jsonName=`[${e}]`,s=n.util.newFieldList([a]).list()[0]}return s},runtime:n}}function pe(n){const e=n.field.localName,t=Object.create(null);return t[e]=cn(n),[t,()=>t[e]]}function cn(n){const e=n.field;if(e.repeated)return[];if(e.default!==void 0)return e.default;switch(e.kind){case"enum":return e.T.values[0].no;case"scalar":return U(e.T,e.L);case"message":const t=e.T,r=new t;return t.fieldWrapper?t.fieldWrapper.unwrapField(r):r;case"map":throw"map fields are not allowed to be extensions"}}function un(n,e){if(!e.repeated&&(e.kind=="enum"||e.kind=="scalar")){for(let t=n.length-1;t>=0;--t)if(n[t].no==e.no)return[n[t]];return[]}return n.filter(t=>t.no===e.no)}let y="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),j=[];for(let n=0;n<y.length;n++)j[y[n].charCodeAt(0)]=n;j[45]=y.indexOf("+");j[95]=y.indexOf("/");const ge={dec(n){let e=n.length*3/4;n[n.length-2]=="="?e-=2:n[n.length-1]=="="&&(e-=1);let t=new Uint8Array(e),r=0,s=0,a,o=0;for(let i=0;i<n.length;i++){if(a=j[n.charCodeAt(i)],a===void 0)switch(n[i]){case"=":s=0;case`
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(s){case 0:o=a,s=1;break;case 1:t[r++]=o<<2|(a&48)>>4,o=a,s=2;break;case 2:t[r++]=(o&15)<<4|(a&60)>>2,o=a,s=3;break;case 3:t[r++]=(o&3)<<6|a,s=0;break}}if(s==1)throw Error("invalid base64 string.");return t.subarray(0,r)},enc(n){let e="",t=0,r,s=0;for(let a=0;a<n.length;a++)switch(r=n[a],t){case 0:e+=y[r>>2],s=(r&3)<<4,t=1;break;case 1:e+=y[s|r>>4],s=(r&15)<<2,t=2;break;case 2:e+=y[s|r>>6],e+=y[r&63],t=0;break}return t&&(e+=y[s],e+="=",t==1&&(e+="=")),e}};function mn(n,e,t){ye(e,n);const r=e.runtime.bin.makeReadOptions(t),s=un(n.getType().runtime.bin.listUnknownFields(n),e.field),[a,o]=pe(e);for(const i of s)e.runtime.bin.readField(a,r.readerFactory(i.data),e.field,i.wireType,r);return o()}function ln(n,e,t,r){ye(e,n);const s=e.runtime.bin.makeReadOptions(r),a=e.runtime.bin.makeWriteOptions(r);if(be(n,e)){const l=n.getType().runtime.bin.listUnknownFields(n).filter(m=>m.no!=e.field.no);n.getType().runtime.bin.discardUnknownFields(n);for(const m of l)n.getType().runtime.bin.onUnknownField(n,m.no,m.wireType,m.data)}const o=a.writerFactory();let i=e.field;!i.opt&&!i.repeated&&(i.kind=="enum"||i.kind=="scalar")&&(i=Object.assign(Object.assign({},e.field),{opt:!0})),e.runtime.bin.writeField(i,t,o,a);const u=s.readerFactory(o.finish());for(;u.pos<u.len;){const[l,m]=u.tag(),d=u.skip(m,l);n.getType().runtime.bin.onUnknownField(n,l,m,d)}}function be(n,e){const t=n.getType();return e.extendee.typeName===t.typeName&&!!t.runtime.bin.listUnknownFields(n).find(r=>r.no==e.field.no)}function ye(n,e){h(n.extendee.typeName==e.getType().typeName,`extension ${n.typeName} can only be applied to message ${n.extendee.typeName}`)}function we(n,e){const t=n.localName;if(n.repeated)return e[t].length>0;if(n.oneof)return e[n.oneof.localName].case===t;switch(n.kind){case"enum":case"scalar":return n.opt||n.req?e[t]!==void 0:n.kind=="enum"?e[t]!==n.T.values[0].no:!he(n.T,e[t]);case"message":return e[t]!==void 0;case"map":return Object.keys(e[t]).length>0}}function Z(n,e){const t=n.localName,r=!n.opt&&!n.req;if(n.repeated)e[t]=[];else if(n.oneof)e[n.oneof.localName]={case:void 0};else switch(n.kind){case"map":e[t]={};break;case"enum":e[t]=r?n.T.values[0].no:void 0;break;case"scalar":e[t]=r?U(n.T,n.L):void 0;break;case"message":e[t]=void 0;break}}function N(n,e){if(n===null||typeof n!="object"||!Object.getOwnPropertyNames(le.prototype).every(r=>r in n&&typeof n[r]=="function"))return!1;const t=n.getType();return t===null||typeof t!="function"||!("typeName"in t)||typeof t.typeName!="string"?!1:e===void 0?!0:t.typeName==e.typeName}function ke(n,e){return N(e)||!n.fieldWrapper?e:n.fieldWrapper.wrapField(e)}c.DOUBLE,c.FLOAT,c.INT64,c.UINT64,c.INT32,c.UINT32,c.BOOL,c.STRING,c.BYTES;const $={ignoreUnknownFields:!1},Y={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function dn(n){return n?Object.assign(Object.assign({},$),n):$}function fn(n){return n?Object.assign(Object.assign({},Y),n):Y}const L=Symbol(),D=Symbol();function hn(){return{makeReadOptions:dn,makeWriteOptions:fn,readMessage(n,e,t,r){if(e==null||Array.isArray(e)||typeof e!="object")throw new Error(`cannot decode message ${n.typeName} from JSON: ${b(e)}`);r=r??new n;const s=new Map,a=t.typeRegistry;for(const[o,i]of Object.entries(e)){const u=n.fields.findJsonName(o);if(u){if(u.oneof){if(i===null&&u.kind=="scalar")continue;const l=s.get(u.oneof);if(l!==void 0)throw new Error(`cannot decode message ${n.typeName} from JSON: multiple keys for oneof "${u.oneof.name}" present: "${l}", "${o}"`);s.set(u.oneof,o)}X(r,i,u,t,n)}else{let l=!1;if(a!=null&&a.findExtension&&o.startsWith("[")&&o.endsWith("]")){const m=a.findExtension(o.substring(1,o.length-1));if(m&&m.extendee.typeName==n.typeName){l=!0;const[d,f]=pe(m);X(d,i,m.field,t,m),ln(r,m,f(),t)}}if(!l&&!t.ignoreUnknownFields)throw new Error(`cannot decode message ${n.typeName} from JSON: key "${o}" is unknown`)}}return r},writeMessage(n,e){const t=n.getType(),r={};let s;try{for(s of t.fields.byNumber()){if(!we(s,n)){if(s.req)throw"required field not set";if(!e.emitDefaultValues||!gn(s))continue}const o=s.oneof?n[s.oneof.localName].value:n[s.localName],i=ee(s,o,e);i!==void 0&&(r[e.useProtoFieldName?s.name:s.jsonName]=i)}const a=e.typeRegistry;if(a!=null&&a.findExtensionFor)for(const o of t.runtime.bin.listUnknownFields(n)){const i=a.findExtensionFor(t.typeName,o.no);if(i&&be(n,i)){const u=mn(n,i,e),l=ee(i.field,u,e);l!==void 0&&(r[i.field.jsonName]=l)}}}catch(a){const o=s?`cannot encode field ${t.typeName}.${s.name} to JSON`:`cannot encode message ${t.typeName} to JSON`,i=a instanceof Error?a.message:String(a);throw new Error(o+(i.length>0?`: ${i}`:""))}return r},readScalar(n,e,t){return q(n,e,t??k.BIGINT,!0)},writeScalar(n,e,t){if(e!==void 0&&(t||he(n,e)))return z(n,e)},debug:b}}function b(n){if(n===null)return"null";switch(typeof n){case"object":return Array.isArray(n)?"array":"object";case"string":return n.length>100?"string":`"${n.split('"').join('\\"')}"`;default:return String(n)}}function X(n,e,t,r,s){let a=t.localName;if(t.repeated){if(h(t.kind!="map"),e===null)return;if(!Array.isArray(e))throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(e)}`);const o=n[a];for(const i of e){if(i===null)throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(i)}`);switch(t.kind){case"message":o.push(t.T.fromJson(i,r));break;case"enum":const u=P(t.T,i,r.ignoreUnknownFields,!0);u!==D&&o.push(u);break;case"scalar":try{o.push(q(t.T,i,t.L,!0))}catch(l){let m=`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(i)}`;throw l instanceof Error&&l.message.length>0&&(m+=`: ${l.message}`),new Error(m)}break}}}else if(t.kind=="map"){if(e===null)return;if(typeof e!="object"||Array.isArray(e))throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(e)}`);const o=n[a];for(const[i,u]of Object.entries(e)){if(u===null)throw new Error(`cannot decode field ${s.typeName}.${t.name} from JSON: map value null`);let l;try{l=pn(t.K,i)}catch(m){let d=`cannot decode map key for field ${s.typeName}.${t.name} from JSON: ${b(e)}`;throw m instanceof Error&&m.message.length>0&&(d+=`: ${m.message}`),new Error(d)}switch(t.V.kind){case"message":o[l]=t.V.T.fromJson(u,r);break;case"enum":const m=P(t.V.T,u,r.ignoreUnknownFields,!0);m!==D&&(o[l]=m);break;case"scalar":try{o[l]=q(t.V.T,u,k.BIGINT,!0)}catch(d){let f=`cannot decode map value for field ${s.typeName}.${t.name} from JSON: ${b(e)}`;throw d instanceof Error&&d.message.length>0&&(f+=`: ${d.message}`),new Error(f)}break}}}else switch(t.oneof&&(n=n[t.oneof.localName]={case:a},a="value"),t.kind){case"message":const o=t.T;if(e===null&&o.typeName!="google.protobuf.Value")return;let i=n[a];N(i)?i.fromJson(e,r):(n[a]=i=o.fromJson(e,r),o.fieldWrapper&&!t.oneof&&(n[a]=o.fieldWrapper.unwrapField(i)));break;case"enum":const u=P(t.T,e,r.ignoreUnknownFields,!1);switch(u){case L:Z(t,n);break;case D:break;default:n[a]=u;break}break;case"scalar":try{const l=q(t.T,e,t.L,!1);switch(l){case L:Z(t,n);break;default:n[a]=l;break}}catch(l){let m=`cannot decode field ${s.typeName}.${t.name} from JSON: ${b(e)}`;throw l instanceof Error&&l.message.length>0&&(m+=`: ${l.message}`),new Error(m)}break}}function pn(n,e){if(n===c.BOOL)switch(e){case"true":e=!0;break;case"false":e=!1;break}return q(n,e,k.BIGINT,!0).toString()}function q(n,e,t,r){if(e===null)return r?U(n,t):L;switch(n){case c.DOUBLE:case c.FLOAT:if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""||typeof e=="string"&&e.trim().length!==e.length||typeof e!="string"&&typeof e!="number")break;const s=Number(e);if(Number.isNaN(s)||!Number.isFinite(s))break;return n==c.FLOAT&&oe(s),s;case c.INT32:case c.FIXED32:case c.SFIXED32:case c.SINT32:case c.UINT32:let a;if(typeof e=="number"?a=e:typeof e=="string"&&e.length>0&&e.trim().length===e.length&&(a=Number(e)),a===void 0)break;return n==c.UINT32||n==c.FIXED32?J(a):B(a),a;case c.INT64:case c.SFIXED64:case c.SINT64:if(typeof e!="number"&&typeof e!="string")break;const o=g.parse(e);return t?o.toString():o;case c.FIXED64:case c.UINT64:if(typeof e!="number"&&typeof e!="string")break;const i=g.uParse(e);return t?i.toString():i;case c.BOOL:if(typeof e!="boolean")break;return e;case c.STRING:if(typeof e!="string")break;try{encodeURIComponent(e)}catch{throw new Error("invalid UTF8")}return e;case c.BYTES:if(e==="")return new Uint8Array(0);if(typeof e!="string")break;return ge.dec(e)}throw new Error}function P(n,e,t,r){if(e===null)return n.typeName=="google.protobuf.NullValue"?0:r?n.values[0].no:L;switch(typeof e){case"number":if(Number.isInteger(e))return e;break;case"string":const s=n.findName(e);if(s!==void 0)return s.no;if(t)return D;break}throw new Error(`cannot decode enum ${n.typeName} from JSON: ${b(e)}`)}function gn(n){return n.repeated||n.kind=="map"?!0:!(n.oneof||n.kind=="message"||n.opt||n.req)}function ee(n,e,t){if(n.kind=="map"){h(typeof e=="object"&&e!=null);const r={},s=Object.entries(e);switch(n.V.kind){case"scalar":for(const[o,i]of s)r[o.toString()]=z(n.V.T,i);break;case"message":for(const[o,i]of s)r[o.toString()]=i.toJson(t);break;case"enum":const a=n.V.T;for(const[o,i]of s)r[o.toString()]=_(a,i,t.enumAsInteger);break}return t.emitDefaultValues||s.length>0?r:void 0}if(n.repeated){h(Array.isArray(e));const r=[];switch(n.kind){case"scalar":for(let s=0;s<e.length;s++)r.push(z(n.T,e[s]));break;case"enum":for(let s=0;s<e.length;s++)r.push(_(n.T,e[s],t.enumAsInteger));break;case"message":for(let s=0;s<e.length;s++)r.push(e[s].toJson(t));break}return t.emitDefaultValues||r.length>0?r:void 0}switch(n.kind){case"scalar":return z(n.T,e);case"enum":return _(n.T,e,t.enumAsInteger);case"message":return ke(n.T,e).toJson(t)}}function _(n,e,t){var r;if(h(typeof e=="number"),n.typeName=="google.protobuf.NullValue")return null;if(t)return e;const s=n.findNumber(e);return(r=s==null?void 0:s.name)!==null&&r!==void 0?r:e}function z(n,e){switch(n){case c.INT32:case c.SFIXED32:case c.SINT32:case c.FIXED32:case c.UINT32:return h(typeof e=="number"),e;case c.FLOAT:case c.DOUBLE:return h(typeof e=="number"),Number.isNaN(e)?"NaN":e===Number.POSITIVE_INFINITY?"Infinity":e===Number.NEGATIVE_INFINITY?"-Infinity":e;case c.STRING:return h(typeof e=="string"),e;case c.BOOL:return h(typeof e=="boolean"),e;case c.UINT64:case c.FIXED64:case c.INT64:case c.SFIXED64:case c.SINT64:return h(typeof e=="bigint"||typeof e=="string"||typeof e=="number"),e.toString();case c.BYTES:return h(e instanceof Uint8Array),ge.enc(e)}}const T=Symbol("@bufbuild/protobuf/unknown-fields"),ne={readUnknownFields:!0,readerFactory:n=>new an(n)},te={writeUnknownFields:!0,writerFactory:()=>new rn};function bn(n){return n?Object.assign(Object.assign({},ne),n):ne}function yn(n){return n?Object.assign(Object.assign({},te),n):te}function wn(){return{makeReadOptions:bn,makeWriteOptions:yn,listUnknownFields(n){var e;return(e=n[T])!==null&&e!==void 0?e:[]},discardUnknownFields(n){delete n[T]},writeUnknownFields(n,e){const r=n[T];if(r)for(const s of r)e.tag(s.no,s.wireType).raw(s.data)},onUnknownField(n,e,t,r){const s=n;Array.isArray(s[T])||(s[T]=[]),s[T].push({no:e,wireType:t,data:r})},readMessage(n,e,t,r,s){const a=n.getType(),o=s?e.len:e.pos+t;let i,u;for(;e.pos<o&&([i,u]=e.tag(),!(s===!0&&u==p.EndGroup));){const l=a.fields.find(i);if(!l){const m=e.skip(u,i);r.readUnknownFields&&this.onUnknownField(n,i,u,m);continue}se(n,e,l,u,r)}if(s&&(u!=p.EndGroup||i!==t))throw new Error("invalid end group tag")},readField:se,writeMessage(n,e,t){const r=n.getType();for(const s of r.fields.byNumber()){if(!we(s,n)){if(s.req)throw new Error(`cannot encode field ${r.typeName}.${s.name} to binary: required field not set`);continue}const a=s.oneof?n[s.oneof.localName].value:n[s.localName];re(s,a,e,t)}return t.writeUnknownFields&&this.writeUnknownFields(n,e),e},writeField(n,e,t,r){e!==void 0&&re(n,e,t,r)}}}function se(n,e,t,r,s){let{repeated:a,localName:o}=t;switch(t.oneof&&(n=n[t.oneof.localName],n.case!=o&&delete n.value,n.case=o,o="value"),t.kind){case"scalar":case"enum":const i=t.kind=="enum"?c.INT32:t.T;let u=C;if(t.kind=="scalar"&&t.L>0&&(u=In),a){let f=n[o];if(r==p.LengthDelimited&&i!=c.STRING&&i!=c.BYTES){let I=e.uint32()+e.pos;for(;e.pos<I;)f.push(u(e,i))}else f.push(u(e,i))}else n[o]=u(e,i);break;case"message":const l=t.T;a?n[o].push(M(e,new l,s,t)):N(n[o])?M(e,n[o],s,t):(n[o]=M(e,new l,s,t),l.fieldWrapper&&!t.oneof&&!t.repeated&&(n[o]=l.fieldWrapper.unwrapField(n[o])));break;case"map":let[m,d]=kn(t,e,s);n[o][m]=d;break}}function M(n,e,t,r){const s=e.getType().runtime.bin,a=r==null?void 0:r.delimited;return s.readMessage(e,n,a?r.no:n.uint32(),t,a),e}function kn(n,e,t){const r=e.uint32(),s=e.pos+r;let a,o;for(;e.pos<s;){const[i]=e.tag();switch(i){case 1:a=C(e,n.K);break;case 2:switch(n.V.kind){case"scalar":o=C(e,n.V.T);break;case"enum":o=e.int32();break;case"message":o=M(e,new n.V.T,t,void 0);break}break}}if(a===void 0&&(a=U(n.K,k.BIGINT)),typeof a!="string"&&typeof a!="number"&&(a=a.toString()),o===void 0)switch(n.V.kind){case"scalar":o=U(n.V.T,k.BIGINT);break;case"enum":o=n.V.T.values[0].no;break;case"message":o=new n.V.T;break}return[a,o]}function In(n,e){const t=C(n,e);return typeof t=="bigint"?t.toString():t}function C(n,e){switch(e){case c.STRING:return n.string();case c.BOOL:return n.bool();case c.DOUBLE:return n.double();case c.FLOAT:return n.float();case c.INT32:return n.int32();case c.INT64:return n.int64();case c.UINT64:return n.uint64();case c.FIXED64:return n.fixed64();case c.BYTES:return n.bytes();case c.FIXED32:return n.fixed32();case c.SFIXED32:return n.sfixed32();case c.SFIXED64:return n.sfixed64();case c.SINT64:return n.sint64();case c.UINT32:return n.uint32();case c.SINT32:return n.sint32()}}function re(n,e,t,r){h(e!==void 0);const s=n.repeated;switch(n.kind){case"scalar":case"enum":let a=n.kind=="enum"?c.INT32:n.T;if(s)if(h(Array.isArray(e)),n.packed)Tn(t,a,n.no,e);else for(const o of e)E(t,a,n.no,o);else E(t,a,n.no,e);break;case"message":if(s){h(Array.isArray(e));for(const o of e)ae(t,r,n,o)}else ae(t,r,n,e);break;case"map":h(typeof e=="object"&&e!=null);for(const[o,i]of Object.entries(e))Nn(t,r,n,o,i);break}}function Nn(n,e,t,r,s){n.tag(t.no,p.LengthDelimited),n.fork();let a=r;switch(t.K){case c.INT32:case c.FIXED32:case c.UINT32:case c.SFIXED32:case c.SINT32:a=Number.parseInt(r);break;case c.BOOL:h(r=="true"||r=="false"),a=r=="true";break}switch(E(n,t.K,1,a),t.V.kind){case"scalar":E(n,t.V.T,2,s);break;case"enum":E(n,c.INT32,2,s);break;case"message":h(s!==void 0),n.tag(2,p.LengthDelimited).bytes(s.toBinary(e));break}n.join()}function ae(n,e,t,r){const s=ke(t.T,r);t.delimited?n.tag(t.no,p.StartGroup).raw(s.toBinary(e)).tag(t.no,p.EndGroup):n.tag(t.no,p.LengthDelimited).bytes(s.toBinary(e))}function E(n,e,t,r){h(r!==void 0);let[s,a]=Ie(e);n.tag(t,s)[a](r)}function Tn(n,e,t,r){if(!r.length)return;n.tag(t,p.LengthDelimited).fork();let[,s]=Ie(e);for(let a=0;a<r.length;a++)n[s](r[a]);n.join()}function Ie(n){let e=p.Varint;switch(n){case c.BYTES:case c.STRING:e=p.LengthDelimited;break;case c.DOUBLE:case c.FIXED64:case c.SFIXED64:e=p.Bit64;break;case c.FIXED32:case c.SFIXED32:case c.FLOAT:e=p.Bit32;break}const t=c[n].toLowerCase();return[e,t]}function Un(){return{setEnumType:ce,initPartial(n,e){if(n===void 0)return;const t=e.getType();for(const r of t.fields.byMember()){const s=r.localName,a=e,o=n;if(o[s]!=null)switch(r.kind){case"oneof":const i=o[s].case;if(i===void 0)continue;const u=r.findField(i);let l=o[s].value;u&&u.kind=="message"&&!N(l,u.T)?l=new u.T(l):u&&u.kind==="scalar"&&u.T===c.BYTES&&(l=A(l)),a[s]={case:i,value:l};break;case"scalar":case"enum":let m=o[s];r.T===c.BYTES&&(m=r.repeated?m.map(A):A(m)),a[s]=m;break;case"map":switch(r.V.kind){case"scalar":case"enum":if(r.V.T===c.BYTES)for(const[v,I]of Object.entries(o[s]))a[s][v]=A(I);else Object.assign(a[s],o[s]);break;case"message":const f=r.V.T;for(const v of Object.keys(o[s])){let I=o[s][v];f.fieldWrapper||(I=new f(I)),a[s][v]=I}break}break;case"message":const d=r.T;if(r.repeated)a[s]=o[s].map(f=>N(f,d)?f:new d(f));else{const f=o[s];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?a[s]=A(f):a[s]=f:a[s]=N(f,d)?f:new d(f)}break}}},equals(n,e,t){return e===t?!0:!e||!t?!1:n.fields.byMember().every(r=>{const s=e[r.localName],a=t[r.localName];if(r.repeated){if(s.length!==a.length)return!1;switch(r.kind){case"message":return s.every((o,i)=>r.T.equals(o,a[i]));case"scalar":return s.every((o,i)=>w(r.T,o,a[i]));case"enum":return s.every((o,i)=>w(c.INT32,o,a[i]))}throw new Error(`repeated cannot contain ${r.kind}`)}switch(r.kind){case"message":return r.T.equals(s,a);case"enum":return w(c.INT32,s,a);case"scalar":return w(r.T,s,a);case"oneof":if(s.case!==a.case)return!1;const o=r.findField(s.case);if(o===void 0)return!0;switch(o.kind){case"message":return o.T.equals(s.value,a.value);case"enum":return w(c.INT32,s.value,a.value);case"scalar":return w(o.T,s.value,a.value)}throw new Error(`oneof cannot contain ${o.kind}`);case"map":const i=Object.keys(s).concat(Object.keys(a));switch(r.V.kind){case"message":const u=r.V.T;return i.every(m=>u.equals(s[m],a[m]));case"enum":return i.every(m=>w(c.INT32,s[m],a[m]));case"scalar":const l=r.V.T;return i.every(m=>w(l,s[m],a[m]))}break}})},clone(n){const e=n.getType(),t=new e,r=t;for(const s of e.fields.byMember()){const a=n[s.localName];let o;if(s.repeated)o=a.map(F);else if(s.kind=="map"){o=r[s.localName];for(const[i,u]of Object.entries(a))o[i]=F(u)}else s.kind=="oneof"?o=s.findField(a.case)?{case:a.case,value:F(a.value)}:{case:void 0}:o=F(a);r[s.localName]=o}for(const s of e.runtime.bin.listUnknownFields(n))e.runtime.bin.onUnknownField(r,s.no,s.wireType,s.data);return t}}}function F(n){if(n===void 0)return n;if(N(n))return n.clone();if(n instanceof Uint8Array){const e=new Uint8Array(n.byteLength);return e.set(n),e}return n}function A(n){return n instanceof Uint8Array?n:new Uint8Array(n)}function vn(n,e,t){return{syntax:n,json:hn(),bin:wn(),util:Object.assign(Object.assign({},Un()),{newFieldList:e,initFields:t}),makeMessageType(r,s,a){return Ye(this,r,s,a)},makeEnum:$e,makeEnumType:ue,getEnumType:Ze,makeExtension(r,s,a){return on(this,r,s,a)}}}class xn{constructor(e,t){this._fields=e,this._normalizer=t}findJsonName(e){if(!this.jsonNames){const t={};for(const r of this.list())t[r.jsonName]=t[r.name]=r;this.jsonNames=t}return this.jsonNames[e]}find(e){if(!this.numbers){const t={};for(const r of this.list())t[r.no]=r;this.numbers=t}return this.numbers[e]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((e,t)=>e.no-t.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];const e=this.members;let t;for(const r of this.list())r.oneof?r.oneof!==t&&(t=r.oneof,e.push(t)):e.push(r)}return this.members}}function Ne(n,e){const t=Te(n);return e?t:Bn(Fn(t))}function An(n){return Ne(n,!1)}const qn=Te;function Te(n){let e=!1;const t=[];for(let r=0;r<n.length;r++){let s=n.charAt(r);switch(s){case"_":e=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":t.push(s),e=!1;break;default:e&&(e=!1,s=s.toUpperCase()),t.push(s);break}}return t.join("")}const En=new Set(["constructor","toString","toJSON","valueOf"]),Sn=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),Ue=n=>`${n}$`,Fn=n=>Sn.has(n)?Ue(n):n,Bn=n=>En.has(n)?Ue(n):n;class On{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=An(e)}addField(e){h(e.oneof===this,`field ${e.name} not one of ${this.name}`),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let t=0;t<this.fields.length;t++)this._lookup[this.fields[t].localName]=this.fields[t]}return this._lookup[e]}}function Dn(n,e){var t,r,s,a,o,i;const u=[];let l;for(const m of typeof n=="function"?n():n){const d=m;if(d.localName=Ne(m.name,m.oneof!==void 0),d.jsonName=(t=m.jsonName)!==null&&t!==void 0?t:qn(m.name),d.repeated=(r=m.repeated)!==null&&r!==void 0?r:!1,m.kind=="scalar"&&(d.L=(s=m.L)!==null&&s!==void 0?s:k.BIGINT),d.delimited=(a=m.delimited)!==null&&a!==void 0?a:!1,d.req=(o=m.req)!==null&&o!==void 0?o:!1,d.opt=(i=m.opt)!==null&&i!==void 0?i:!1,m.packed===void 0&&(d.packed=m.kind=="enum"||m.kind=="scalar"&&m.T!=c.BYTES&&m.T!=c.STRING),m.oneof!==void 0){const f=typeof m.oneof=="string"?m.oneof:m.oneof.name;(!l||l.name!=f)&&(l=new On(f)),d.oneof=l,l.addField(d)}u.push(d)}return u}const S=vn("proto3",n=>new xn(n,e=>Dn(e)),n=>{for(const e of n.getType().fields.byMember()){if(e.opt)continue;const t=e.localName,r=n;if(e.repeated){r[t]=[];continue}switch(e.kind){case"oneof":r[t]={case:void 0};break;case"enum":r[t]=0;break;case"map":r[t]={};break;case"scalar":r[t]=U(e.T,e.L);break}}}),K=S.makeMessageType("penumbra.core.asset.v1.AssetId",()=>[{no:1,name:"inner",kind:"scalar",T:12},{no:2,name:"alt_bech32m",kind:"scalar",T:9},{no:3,name:"alt_base_denom",kind:"scalar",T:9}]),zn=S.makeMessageType("penumbra.core.asset.v1.Metadata",()=>[{no:1,name:"description",kind:"scalar",T:9},{no:2,name:"denom_units",kind:"message",T:Mn,repeated:!0},{no:3,name:"base",kind:"scalar",T:9},{no:4,name:"display",kind:"scalar",T:9},{no:5,name:"name",kind:"scalar",T:9},{no:6,name:"symbol",kind:"scalar",T:9},{no:1984,name:"penumbra_asset_id",kind:"message",T:K},{no:1985,name:"images",kind:"message",T:Ln,repeated:!0},{no:1986,name:"priority_score",kind:"scalar",T:4}]),Mn=S.makeMessageType("penumbra.core.asset.v1.DenomUnit",()=>[{no:1,name:"denom",kind:"scalar",T:9},{no:2,name:"exponent",kind:"scalar",T:13},{no:3,name:"aliases",kind:"scalar",T:9,repeated:!0}]),Ln=S.makeMessageType("penumbra.core.asset.v1.AssetImage",()=>[{no:1,name:"png",kind:"scalar",T:9},{no:2,name:"svg",kind:"scalar",T:9},{no:3,name:"theme",kind:"message",T:Cn}]),Cn=S.makeMessageType("penumbra.core.asset.v1.AssetImage.Theme",()=>[{no:1,name:"primary_color_hex",kind:"scalar",T:9},{no:2,name:"circle",kind:"scalar",T:8},{no:3,name:"dark_mode",kind:"scalar",T:8}],{localName:"AssetImage_Theme"}),jn=n=>{const e=String.fromCodePoint(...n);return btoa(e)},ve=n=>{if(!/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(n))throw new Error("Input string is not a valid Base64 encoded string");const t=atob(n);return Uint8Array.from(t,r=>r.codePointAt(0))},Vn=(n,e)=>{const t=Object.entries(n).map(([r,s])=>[r,e(s)]);return Object.fromEntries(t)};class xe{constructor(e){x(this,"chainId");x(this,"ibcConnections");x(this,"numeraires");x(this,"assetById");this.chainId=e.chainId,this.ibcConnections=e.ibcConnections,this.assetById=Vn(e.assetById,t=>zn.fromJson(t)),this.numeraires=e.numeraires.map(t=>new K({inner:ve(t)}))}getMetadata(e){const t=jn(e.inner),r=this.assetById[t];if(!r)throw new Error(`No metadata in registry for asset id: ${t}`);return r}getAllAssets(){return Object.values(this.assetById)}}const Ae="penumbra-testnet-deimos-6",qe=[{addressPrefix:"osmo",chainId:"osmo-test-5",channelId:"channel-4",counterpartyChannelId:"channel-7780",displayName:"Osmosis",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/f1348793beb994c6cc0256ed7ebdb48c7aa70003/osmosis/images/osmo.svg"}]},{addressPrefix:"noble",chainId:"grand-1",channelId:"channel-3",counterpartyChannelId:"channel-164",displayName:"Noble",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/2ca39d0e4eaf3431cca13991948e099801f02e46/noble/images/stake.svg"}]}],Ee={"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws=":{denomUnits:[{denom:"cube"}],base:"cube",display:"cube",symbol:"CUBE",penumbraAssetId:{inner:"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws="}},"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8=":{description:"USD Coin",denomUnits:[{denom:"transfer/channel-3/uusdc"},{denom:"transfer/channel-3/usdc",exponent:6}],base:"transfer/channel-3/uusdc",display:"transfer/channel-3/usdc",name:"USD Coin",symbol:"USDC",penumbraAssetId:{inner:"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="},images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/_non-cosmos/ethereum/images/usdc.svg"}]},"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI=":{denomUnits:[{denom:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:6},{denom:"mdelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:3},{denom:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20"}],base:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",display:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",symbol:"Delegation (Penumbra Labs CI 1)",penumbraAssetId:{inner:"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc=":{denomUnits:[{denom:"gm",exponent:6},{denom:"mgm",exponent:3},{denom:"ugm"}],base:"ugm",display:"gm",symbol:"GM",penumbraAssetId:{inner:"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc="}},"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI=":{description:"Love is a test tokenfactory asset controlled by the Strangelove Team",denomUnits:[{denom:"transfer/channel-3/ulove"},{denom:"transfer/channel-3/love",exponent:6}],base:"transfer/channel-3/ulove",display:"transfer/channel-3/love",name:"Love",symbol:"LOVE",penumbraAssetId:{inner:"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI="}},"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc=":{description:"The native token of Osmosis",denomUnits:[{denom:"transfer/channel-4/uosmo"},{denom:"transfer/channel-4/osmo",exponent:6}],base:"transfer/channel-4/uosmo",display:"transfer/channel-4/osmo",name:"Osmosis Testnet",symbol:"OSMO",penumbraAssetId:{inner:"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.svg"}]},"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=":{denomUnits:[{denom:"penumbra",exponent:6},{denom:"mpenumbra",exponent:3},{denom:"upenumbra"}],base:"upenumbra",display:"penumbra",symbol:"UM",penumbraAssetId:{inner:"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/um.svg"}]},"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM=":{description:"Ondo US Dollar Yield",denomUnits:[{denom:"transfer/channel-3/ausdy"},{denom:"transfer/channel-3/usdy",exponent:18}],base:"transfer/channel-3/ausdy",display:"transfer/channel-3/usdy",name:"Ondo US Dollar Yield",symbol:"USDY",penumbraAssetId:{inner:"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.svg"}]},"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE=":{denomUnits:[{denom:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz"},{denom:"transfer/channel-4/willyz",exponent:6}],base:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz",display:"transfer/channel-4/willyz",name:"Willyz",symbol:"WILLYZ",penumbraAssetId:{inner:"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.svg"}]},"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI=":{description:"The controlled staking asset for Noble Chain",denomUnits:[{denom:"transfer/channel-3/ustake"},{denom:"transfer/channel-3/stake",exponent:6}],base:"transfer/channel-3/ustake",display:"transfer/channel-3/stake",name:"Stake",symbol:"STAKE",penumbraAssetId:{inner:"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI="}},"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw=":{denomUnits:[{denom:"pizza"}],base:"pizza",display:"pizza",symbol:"PIZZA",penumbraAssetId:{inner:"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/pizza.svg"}]},"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE=":{denomUnits:[{denom:"gn",exponent:6},{denom:"mgn",exponent:3},{denom:"ugn"}],base:"ugn",display:"gn",symbol:"GN",penumbraAssetId:{inner:"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE="}},"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU=":{denomUnits:[{denom:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:6},{denom:"mdelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:3},{denom:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050"}],base:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",display:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",symbol:"Delegation (Penumbra Labs CI 2)",penumbraAssetId:{inner:"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=":{denomUnits:[{denom:"test_usd",exponent:18},{denom:"wtest_usd"}],base:"wtest_usd",display:"test_usd",symbol:"TestUSD",penumbraAssetId:{inner:"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/test-usd.svg"}]},"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk=":{denomUnits:[{denom:"transfer/channel-4/uion"},{denom:"transfer/channel-4/ion",exponent:6}],base:"transfer/channel-4/uion",display:"transfer/channel-4/ion",name:"Ion",symbol:"ION",penumbraAssetId:{inner:"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.svg"}]}},Se=["reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=","CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="],Pn={chainId:Ae,ibcConnections:qe,assetById:Ee,numeraires:Se},_n=Object.freeze(Object.defineProperty({__proto__:null,assetById:Ee,chainId:Ae,default:Pn,ibcConnections:qe,numeraires:Se},Symbol.toStringTag,{value:"Module"})),Fe="penumbra-testnet-deimos-7",Be=[{addressPrefix:"osmo",chainId:"osmo-test-5",channelId:"channel-4",counterpartyChannelId:"channel-7780",displayName:"Osmosis",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/f1348793beb994c6cc0256ed7ebdb48c7aa70003/osmosis/images/osmo.svg"}]},{addressPrefix:"noble",chainId:"grand-1",channelId:"channel-3",counterpartyChannelId:"channel-164",displayName:"Noble",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/2ca39d0e4eaf3431cca13991948e099801f02e46/noble/images/stake.svg"}]}],Oe={"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws=":{denomUnits:[{denom:"cube"}],base:"cube",display:"cube",symbol:"CUBE",penumbraAssetId:{inner:"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws="}},"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8=":{description:"USD Coin",denomUnits:[{denom:"transfer/channel-3/uusdc"},{denom:"transfer/channel-3/usdc",exponent:6}],base:"transfer/channel-3/uusdc",display:"transfer/channel-3/usdc",name:"USD Coin",symbol:"USDC",penumbraAssetId:{inner:"CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="},images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/_non-cosmos/ethereum/images/usdc.svg"}]},"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI=":{denomUnits:[{denom:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:6},{denom:"mdelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",exponent:3},{denom:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20"}],base:"udelegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",display:"delegation_penumbravalid18nkv0r3sfp2seleq6du5kt3mhfce3k6cqm77kj2e7mhakmyw9v9qx42a20",symbol:"Delegation (Penumbra Labs CI 1)",penumbraAssetId:{inner:"CwpUYIdQ9H5Dnf3oQ1l7ISeVMVahWbVNNvMA0dBSdwI="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc=":{denomUnits:[{denom:"gm",exponent:6},{denom:"mgm",exponent:3},{denom:"ugm"}],base:"ugm",display:"gm",symbol:"GM",penumbraAssetId:{inner:"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc="}},"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI=":{description:"Love is a test tokenfactory asset controlled by the Strangelove Team",denomUnits:[{denom:"transfer/channel-3/ulove"},{denom:"transfer/channel-3/love",exponent:6}],base:"transfer/channel-3/ulove",display:"transfer/channel-3/love",name:"Love",symbol:"LOVE",penumbraAssetId:{inner:"Hqn6gTCqE7mCBsVa4agsTFmrO0Rip5xmLcipnGKH9AI="}},"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc=":{description:"The native token of Osmosis",denomUnits:[{denom:"transfer/channel-4/uosmo"},{denom:"transfer/channel-4/osmo",exponent:6}],base:"transfer/channel-4/uosmo",display:"transfer/channel-4/osmo",name:"Osmosis Testnet",symbol:"OSMO",penumbraAssetId:{inner:"KSOgqHs6JCHxZcyFPb9zqb2vtdoNlIVktgWcsCF8RAc="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.svg"}]},"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=":{denomUnits:[{denom:"penumbra",exponent:6},{denom:"mpenumbra",exponent:3},{denom:"upenumbra"}],base:"upenumbra",display:"penumbra",symbol:"UM",penumbraAssetId:{inner:"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/um.svg"}]},"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM=":{description:"Ondo US Dollar Yield",denomUnits:[{denom:"transfer/channel-3/ausdy"},{denom:"transfer/channel-3/usdy",exponent:18}],base:"transfer/channel-3/ausdy",display:"transfer/channel-3/usdy",name:"Ondo US Dollar Yield",symbol:"USDY",penumbraAssetId:{inner:"VDuTDzoFOg4mMrNeyqCEC1L4lSjtJUJ5jJ2D6SQsRgM="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.svg"}]},"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE=":{denomUnits:[{denom:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz"},{denom:"transfer/channel-4/willyz",exponent:6}],base:"transfer/channel-4/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz",display:"transfer/channel-4/willyz",name:"Willyz",symbol:"WILLYZ",penumbraAssetId:{inner:"ZPcze3Lhpgavnk2eQ/N49hJGttezr+Gl3TiJeL6MvhE="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.svg"}]},"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI=":{description:"The controlled staking asset for Noble Chain",denomUnits:[{denom:"transfer/channel-3/ustake"},{denom:"transfer/channel-3/stake",exponent:6}],base:"transfer/channel-3/ustake",display:"transfer/channel-3/stake",name:"Stake",symbol:"STAKE",penumbraAssetId:{inner:"hGwO3SuE1/D05ooLMUVVe7XvYbAFnxAUbIRIZdG3TwI="}},"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw=":{denomUnits:[{denom:"pizza"}],base:"pizza",display:"pizza",symbol:"PIZZA",penumbraAssetId:{inner:"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/pizza.svg"}]},"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE=":{denomUnits:[{denom:"gn",exponent:6},{denom:"mgn",exponent:3},{denom:"ugn"}],base:"ugn",display:"gn",symbol:"GN",penumbraAssetId:{inner:"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE="}},"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU=":{denomUnits:[{denom:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:6},{denom:"mdelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",exponent:3},{denom:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050"}],base:"udelegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",display:"delegation_penumbravalid1qfxldejdhanmu302kcn5fm98q5d7d2upfhzqhaz95hyjdn82pqysqfq050",symbol:"Delegation (Penumbra Labs CI 2)",penumbraAssetId:{inner:"qUn70lKZ3qQlCT5gj5sakux4daiTPKj0AN6ZuuFldQU="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=":{denomUnits:[{denom:"test_usd",exponent:18},{denom:"wtest_usd"}],base:"wtest_usd",display:"test_usd",symbol:"TestUSD",penumbraAssetId:{inner:"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/test-usd.svg"}]},"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk=":{denomUnits:[{denom:"transfer/channel-4/uion"},{denom:"transfer/channel-4/ion",exponent:6}],base:"transfer/channel-4/uion",display:"transfer/channel-4/ion",name:"Ion",symbol:"ION",penumbraAssetId:{inner:"xNdg/Pc2CvrtawUX41EBLTlgj83RTenRJaBFXxsSTwk="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.svg"}]}},De=["reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=","CKBQapu+DkQpsKyTfKESLTV19/NPWR5sNZtvQsd3Hw8="],Jn={chainId:Fe,ibcConnections:Be,assetById:Oe,numeraires:De},Gn=Object.freeze(Object.defineProperty({__proto__:null,assetById:Oe,chainId:Fe,default:Jn,ibcConnections:Be,numeraires:De},Symbol.toStringTag,{value:"Module"})),ze="penumbra-testnet-deimos-8",Me=[{addressPrefix:"osmo",chainId:"osmo-test-5",channelId:"channel-9",counterpartyChannelId:"channel-8343",displayName:"Osmosis",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/f1348793beb994c6cc0256ed7ebdb48c7aa70003/osmosis/images/osmo.svg"}]},{addressPrefix:"noble",chainId:"grand-1",channelId:"channel-7",counterpartyChannelId:"channel-182",displayName:"Noble",images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/2ca39d0e4eaf3431cca13991948e099801f02e46/noble/images/stake.svg"}]}],Le={"/5AHh95RAybBbUhQ5zXMWCvstH4rRK/5KMVIVGQltAw=":{denomUnits:[{denom:"udelegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u"},{denom:"mdelegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",exponent:3},{denom:"delegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",exponent:6}],base:"udelegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",display:"delegation_penumbravalid1gjdvn0u85rgldqk5adfexn6n4y8d2m3tfla54sc4gu95xwpzssxsjutk7u",symbol:"delUM(Starling Staking)",penumbraAssetId:{inner:"/5AHh95RAybBbUhQ5zXMWCvstH4rRK/5KMVIVGQltAw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/starling-staking.svg"}]},"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws=":{denomUnits:[{denom:"cube"}],base:"cube",display:"cube",symbol:"CUBE",penumbraAssetId:{inner:"6KBVsPINa8gWSHhfH+kAFJC4afEJA3EtuB2HyCqJUws="}},"A/8PdbaWqFds9NiYzmAN75SehGpkLwr7tgoVmwaIVgg=":{description:"USD Coin",denomUnits:[{denom:"transfer/channel-7/uusdc"},{denom:"transfer/channel-7/usdc",exponent:6}],base:"transfer/channel-7/uusdc",display:"transfer/channel-7/usdc",name:"USD Coin",symbol:"USDC",penumbraAssetId:{inner:"A/8PdbaWqFds9NiYzmAN75SehGpkLwr7tgoVmwaIVgg="},images:[{svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/_non-cosmos/ethereum/images/usdc.svg"}]},"HBbZz97zUT7haWR5vaS+IlBfPdGXJPik98UMa+vnTgQ=":{description:"Ondo US Dollar Yield",denomUnits:[{denom:"transfer/channel-7/ausdy"},{denom:"transfer/channel-7/usdy",exponent:18}],base:"transfer/channel-7/ausdy",display:"transfer/channel-7/usdy",name:"Ondo US Dollar Yield",symbol:"USDY",penumbraAssetId:{inner:"HBbZz97zUT7haWR5vaS+IlBfPdGXJPik98UMa+vnTgQ="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/nobletestnet/images/usdy.svg"}]},"HLkKbVfA72oQaMdYFroWQ1qoSyl/KLHZiOMJhL2y9w0=":{denomUnits:[{denom:"test_eth",exponent:18},{denom:"wtest_eth"}],base:"wtest_eth",display:"test_eth",symbol:"TestETH",penumbraAssetId:{inner:"HLkKbVfA72oQaMdYFroWQ1qoSyl/KLHZiOMJhL2y9w0="}},"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc=":{denomUnits:[{denom:"gm",exponent:6},{denom:"mgm",exponent:3},{denom:"ugm"}],base:"ugm",display:"gm",symbol:"GM",penumbraAssetId:{inner:"HW2Eq3UZVSBttoUwUi/MUtE7rr2UU7/UH500byp7OAc="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/full-moon-face.svg"}]},"KOzSyroXl6g63ADPTVMW+AEc2rvFMld69+5ZblsX0xA=":{description:"Love is a test tokenfactory asset controlled by the Strangelove Team",denomUnits:[{denom:"transfer/channel-7/ulove"},{denom:"transfer/channel-7/love",exponent:6}],base:"transfer/channel-7/ulove",display:"transfer/channel-7/love",name:"Love",symbol:"LOVE",penumbraAssetId:{inner:"KOzSyroXl6g63ADPTVMW+AEc2rvFMld69+5ZblsX0xA="}},"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=":{denomUnits:[{denom:"penumbra",exponent:6},{denom:"mpenumbra",exponent:3},{denom:"upenumbra"}],base:"upenumbra",display:"penumbra",symbol:"UM",penumbraAssetId:{inner:"KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/um.svg"}]},"W6xo3Dww1gT85lSP0GvUl3lE1IYWn7J4EIbW1acE3g4=":{description:"The controlled staking asset for Noble Chain",denomUnits:[{denom:"transfer/channel-7/ustake"},{denom:"transfer/channel-7/stake",exponent:6}],base:"transfer/channel-7/ustake",display:"transfer/channel-7/stake",name:"Stake",symbol:"STAKE",penumbraAssetId:{inner:"W6xo3Dww1gT85lSP0GvUl3lE1IYWn7J4EIbW1acE3g4="}},"WUz70nLlQjjRFJDz//neiPRqDyLCX2rB/pTmAKVlTw4=":{denomUnits:[{denom:"transfer/channel-9/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz"},{denom:"transfer/channel-9/willyz",exponent:6}],base:"transfer/channel-9/factory/osmo1zlkzu72774ynac53necz46u4ycqtp36wedrar0/willyz",display:"transfer/channel-9/willyz",name:"Willyz",symbol:"WILLYZ",penumbraAssetId:{inner:"WUz70nLlQjjRFJDz//neiPRqDyLCX2rB/pTmAKVlTw4="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/testnets/osmosistestnet/images/willyz.svg"}]},"eeD8X4rWeMaC3Oqdw8tyU6YBLryAYCBLwEbiIKoo5Qc=":{denomUnits:[{denom:"udelegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63"},{denom:"mdelegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",exponent:3},{denom:"delegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",exponent:6}],base:"udelegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",display:"delegation_penumbravalid173zelmfxtk7r5mhj0k9n96zh9amkr0aucjtsj9j7rdyuj05f4yyqqg5w63",symbol:"delUM(Penumbra Labs CI 2)",penumbraAssetId:{inner:"eeD8X4rWeMaC3Oqdw8tyU6YBLryAYCBLwEbiIKoo5Qc="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"hMtHaDpbuAknRJsa+BQEuST3GDeF91asCSThgTDAkwk=":{denomUnits:[{denom:"transfer/channel-9/uion"},{denom:"transfer/channel-9/ion",exponent:6}],base:"transfer/channel-9/uion",display:"transfer/channel-9/ion",name:"Ion",symbol:"ION",penumbraAssetId:{inner:"hMtHaDpbuAknRJsa+BQEuST3GDeF91asCSThgTDAkwk="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/ion.svg"}]},"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw=":{denomUnits:[{denom:"pizza"}],base:"pizza",display:"pizza",symbol:"PIZZA",penumbraAssetId:{inner:"nDjzm+ldIrNMJha1anGMDVxpA5cLCPnUYQ1clmHF1gw="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/pizza.svg"}]},"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE=":{denomUnits:[{denom:"gn",exponent:6},{denom:"mgn",exponent:3},{denom:"ugn"}],base:"ugn",display:"gn",symbol:"GN",penumbraAssetId:{inner:"nwPDkQq3OvLnBwGTD+nmv1Ifb2GEmFCgNHrU++9BsRE="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/new-moon-face.svg"}]},"o2gZdbhCH70Ry+7iBhkSeHC/PB1LZhgkn7LHC2kEhQc=":{denomUnits:[{denom:"test_btc",exponent:8},{denom:"test_sat"}],base:"test_sat",display:"test_btc",symbol:"TestBTC",penumbraAssetId:{inner:"o2gZdbhCH70Ry+7iBhkSeHC/PB1LZhgkn7LHC2kEhQc="}},"pmpygqUf4DL+z849rGPpudpdK/+FAv8qQ01U2C73kAw=":{denomUnits:[{denom:"test_osmo",exponent:6},{denom:"mtest_osmo",exponent:3},{denom:"utest_osmo"}],base:"utest_osmo",display:"test_osmo",symbol:"TestOSMO",penumbraAssetId:{inner:"pmpygqUf4DL+z849rGPpudpdK/+FAv8qQ01U2C73kAw="}},"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=":{denomUnits:[{denom:"test_usd",exponent:18},{denom:"wtest_usd"}],base:"wtest_usd",display:"test_usd",symbol:"TestUSD",penumbraAssetId:{inner:"reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg="},images:[{svg:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/test-usd.svg"}]},"s82FyPdtSi8r0syejJHbC6PcjKTQ8a5hCbrnROuBxQ8=":{denomUnits:[{denom:"udelegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja"},{denom:"mdelegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",exponent:3},{denom:"delegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",exponent:6}],base:"udelegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",display:"delegation_penumbravalid1sqwq8p8fqxx4aflthtwmu6kte8je7sh4tj7pyd82qpvdap5ajgrsv0q0ja",symbol:"delUM(Penumbra Labs CI 1)",penumbraAssetId:{inner:"s82FyPdtSi8r0syejJHbC6PcjKTQ8a5hCbrnROuBxQ8="},images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]},"w0cmsVnoTuAFZdDtNXztOvBwBflTnxmxnfJoXJSWGQU=":{description:"The native token of Osmosis",denomUnits:[{denom:"transfer/channel-9/uosmo"},{denom:"transfer/channel-9/osmo",exponent:6}],base:"transfer/channel-9/uosmo",display:"transfer/channel-9/osmo",name:"Osmosis Testnet",symbol:"OSMO",penumbraAssetId:{inner:"w0cmsVnoTuAFZdDtNXztOvBwBflTnxmxnfJoXJSWGQU="},images:[{png:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.png",svg:"https://raw.githubusercontent.com/cosmos/chain-registry/master/osmosis/images/osmo.svg"}]},"ypUT1AOtjfwMOKMATACoD9RSvi8jY/YnYGi46CZ/6Q8=":{denomUnits:[{denom:"test_atom",exponent:6},{denom:"mtest_atom",exponent:3},{denom:"utest_atom"}],base:"utest_atom",display:"test_atom",symbol:"TestATOM",penumbraAssetId:{inner:"ypUT1AOtjfwMOKMATACoD9RSvi8jY/YnYGi46CZ/6Q8="}}},Ce=["reum7wQmk/owgvGMWMZn/6RFPV24zIKq3W6In/WwZgg=","A/8PdbaWqFds9NiYzmAN75SehGpkLwr7tgoVmwaIVgg="],Kn={chainId:ze,ibcConnections:Me,assetById:Le,numeraires:Ce},Hn=Object.freeze(Object.defineProperty({__proto__:null,assetById:Le,chainId:ze,default:Kn,ibcConnections:Me,numeraires:Ce},Symbol.toStringTag,{value:"Module"})),je=[{name:"Penumbra Labs Testnet RPC",url:"https://grpc.testnet.penumbra.zone",images:[{png:"https://raw.githubusercontent.com/prax-wallet/registry/main/images/penumbra-favicon.png"}]}],Ve=["https://app.testnet.penumbra.zone"],H="KeqcLzNx9qSH5+lcJHBB9KNW+YPrBk5dKzvPMiypahA=",Rn={rpcs:je,frontends:Ve,stakingAssetId:H},Wn=Object.freeze(Object.defineProperty({__proto__:null,default:Rn,frontends:Ve,rpcs:je,stakingAssetId:H},Symbol.toStringTag,{value:"Module"})),Qn={"penumbra-testnet-deimos-6":_n,"penumbra-testnet-deimos-7":Gn,"penumbra-testnet-deimos-8":Hn},Zn={...Wn,stakingAssetId:new K({inner:ve(H)})};class $n{get(e){const t=this.swapIfPreviewChain(e),r=Qn[t];if(!r)throw new Error(`Registry not found for ${t}`);return new xe(r)}globals(){return Zn}version(){return{commit:"25ae9b5fcdda2917fd8a2888bd5483c9027e0259",date:new Date("2024-06-28T19:10:13+02:00")}}swapIfPreviewChain(e){if(!Je(e))return e;const t=Ge(e);if(!t)throw new Error(`Chain id could not be derived from testnet preview chain: ${e}`);return t}}exports.ChainRegistryClient=$n;exports.Registry=xe;
{
"name": "@penumbra-labs/registry",
"version": "9.1.0",
"version": "9.1.1",
"description": "Chain and asset registry for Penumbra",

@@ -19,3 +19,3 @@ "main": "./dist/index.js",

"typescript-eslint": "^7.14.1",
"vite": "^5.3.1",
"vite": "^5.3.2",
"vite-plugin-dts": "^3.9.1",

@@ -22,0 +22,0 @@ "vitest": "^1.6.0"

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc