@swapkit/wallet-hardware 5.0.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/dist/THIRD_PARTY_LICENSES.md +2344 -0
  2. package/dist/chunk-09e51wma.js +4 -0
  3. package/dist/chunk-09e51wma.js.map +167 -0
  4. package/dist/chunk-0arpsm5f.js +4 -0
  5. package/dist/chunk-0arpsm5f.js.map +10 -0
  6. package/dist/chunk-1amf58aq.js +4 -0
  7. package/dist/{chunk-xkh15edk.js.map → chunk-1amf58aq.js.map} +2 -2
  8. package/dist/chunk-3t17wpjg.js +17 -0
  9. package/dist/chunk-3t17wpjg.js.map +29 -0
  10. package/dist/chunk-5c7b7z2d.js +4 -0
  11. package/dist/{chunk-20wx60bn.js.map → chunk-5c7b7z2d.js.map} +2 -2
  12. package/dist/chunk-5p3ttw6y.js +4 -0
  13. package/dist/{chunk-1jpcb30j.js.map → chunk-5p3ttw6y.js.map} +1 -1
  14. package/dist/chunk-dptbnkzm.js +64 -0
  15. package/dist/chunk-dptbnkzm.js.map +260 -0
  16. package/dist/chunk-ds2m83jp.js +5 -0
  17. package/dist/chunk-ds2m83jp.js.map +11 -0
  18. package/dist/chunk-eenx3cv6.js +4 -0
  19. package/dist/chunk-eenx3cv6.js.map +33 -0
  20. package/dist/chunk-gr3eswf1.js +4 -0
  21. package/dist/chunk-gr3eswf1.js.map +73 -0
  22. package/dist/{chunk-7fsaymh4.js → chunk-hg71hp4m.js} +3 -3
  23. package/dist/{chunk-7fsaymh4.js.map → chunk-hg71hp4m.js.map} +1 -1
  24. package/dist/chunk-jewm2ag3.js +5 -0
  25. package/dist/{chunk-4tbtxdxa.js.map → chunk-jewm2ag3.js.map} +2 -2
  26. package/dist/chunk-jzrytcrf.js +4 -0
  27. package/dist/chunk-jzrytcrf.js.map +12 -0
  28. package/dist/chunk-k3thje6a.js +4 -0
  29. package/dist/chunk-k3thje6a.js.map +9 -0
  30. package/dist/chunk-nhva847d.js +5 -0
  31. package/dist/chunk-nhva847d.js.map +9 -0
  32. package/dist/chunk-tm47brht.js +4 -0
  33. package/dist/chunk-tm47brht.js.map +140 -0
  34. package/dist/chunk-xmvg4cds.js +4 -0
  35. package/dist/chunk-xmvg4cds.js.map +127 -0
  36. package/dist/chunk-xx7cwpzq.js +4 -0
  37. package/dist/chunk-xx7cwpzq.js.map +9 -0
  38. package/dist/chunk-yrxe491r.js +20 -0
  39. package/dist/chunk-yrxe491r.js.map +17 -0
  40. package/dist/index.cjs +2 -2
  41. package/dist/index.cjs.map +1 -1
  42. package/dist/keepkey/index.cjs +2 -2
  43. package/dist/keepkey/index.cjs.map +2 -2
  44. package/dist/keepkey/index.js +2 -2
  45. package/dist/keepkey/index.js.map +2 -2
  46. package/dist/ledger/index.cjs +90 -2
  47. package/dist/ledger/index.cjs.map +830 -24
  48. package/dist/ledger/index.js +2 -2
  49. package/dist/ledger/index.js.map +21 -19
  50. package/dist/trezor/index.cjs +2 -2
  51. package/dist/trezor/index.cjs.map +5 -5
  52. package/dist/trezor/index.js +2 -2
  53. package/dist/trezor/index.js.map +3 -3
  54. package/dist/types/ledger/clients/bitcoin.d.ts +36 -0
  55. package/dist/types/ledger/clients/bitcoin.d.ts.map +1 -0
  56. package/dist/types/ledger/clients/cosmos.d.ts +38 -10
  57. package/dist/types/ledger/clients/cosmos.d.ts.map +1 -1
  58. package/dist/types/ledger/clients/evm.d.ts +37 -46
  59. package/dist/types/ledger/clients/evm.d.ts.map +1 -1
  60. package/dist/types/ledger/clients/near.d.ts +5 -2
  61. package/dist/types/ledger/clients/near.d.ts.map +1 -1
  62. package/dist/types/ledger/clients/sui.d.ts +8 -12
  63. package/dist/types/ledger/clients/sui.d.ts.map +1 -1
  64. package/dist/types/ledger/clients/thorchain/index.d.ts +34 -8
  65. package/dist/types/ledger/clients/thorchain/index.d.ts.map +1 -1
  66. package/dist/types/ledger/clients/thorchain/protocol.d.ts +58 -0
  67. package/dist/types/ledger/clients/thorchain/protocol.d.ts.map +1 -0
  68. package/dist/types/ledger/clients/tron.d.ts +11 -8
  69. package/dist/types/ledger/clients/tron.d.ts.map +1 -1
  70. package/dist/types/ledger/clients/utxo-legacy-adapter.d.ts +3 -2
  71. package/dist/types/ledger/clients/utxo-legacy-adapter.d.ts.map +1 -1
  72. package/dist/types/ledger/clients/utxo-legacy-outputs.d.ts +18 -0
  73. package/dist/types/ledger/clients/utxo-legacy-outputs.d.ts.map +1 -0
  74. package/dist/types/ledger/clients/utxo.d.ts +10 -13
  75. package/dist/types/ledger/clients/utxo.d.ts.map +1 -1
  76. package/dist/types/ledger/clients/xrp.d.ts +4 -1
  77. package/dist/types/ledger/clients/xrp.d.ts.map +1 -1
  78. package/dist/types/ledger/clients/zcash.d.ts +53 -0
  79. package/dist/types/ledger/clients/zcash.d.ts.map +1 -0
  80. package/dist/types/ledger/helpers/dmk.d.ts +24 -0
  81. package/dist/types/ledger/helpers/dmk.d.ts.map +1 -0
  82. package/dist/types/ledger/helpers/executeDeviceAction.d.ts +34 -0
  83. package/dist/types/ledger/helpers/executeDeviceAction.d.ts.map +1 -0
  84. package/dist/types/ledger/helpers/getLedgerAddress.d.ts +1 -1
  85. package/dist/types/ledger/helpers/getLedgerAddress.d.ts.map +1 -1
  86. package/dist/types/ledger/helpers/getLedgerClient.d.ts +10 -3
  87. package/dist/types/ledger/helpers/getLedgerClient.d.ts.map +1 -1
  88. package/dist/types/ledger/helpers/index.d.ts +2 -1
  89. package/dist/types/ledger/helpers/index.d.ts.map +1 -1
  90. package/dist/types/ledger/helpers/ledgerJsDmkBridge.d.ts +26 -0
  91. package/dist/types/ledger/helpers/ledgerJsDmkBridge.d.ts.map +1 -0
  92. package/dist/types/ledger/helpers/ledgerJsDmkTransport.d.ts +13 -0
  93. package/dist/types/ledger/helpers/ledgerJsDmkTransport.d.ts.map +1 -0
  94. package/dist/types/ledger/helpers/lowS.d.ts +6 -0
  95. package/dist/types/ledger/helpers/lowS.d.ts.map +1 -0
  96. package/dist/types/ledger/helpers/rawTx.d.ts +2 -0
  97. package/dist/types/ledger/helpers/rawTx.d.ts.map +1 -0
  98. package/dist/types/ledger/index.d.ts +19 -7
  99. package/dist/types/ledger/index.d.ts.map +1 -1
  100. package/dist/types/ledger/types.d.ts +6 -10
  101. package/dist/types/ledger/types.d.ts.map +1 -1
  102. package/dist/types/trezor/index.d.ts +2 -2
  103. package/dist/types/trezor/index.d.ts.map +1 -1
  104. package/package.json +36 -36
  105. package/src/ledger/clients/bitcoin.ts +575 -0
  106. package/src/ledger/clients/cosmos.ts +180 -51
  107. package/src/ledger/clients/evm.ts +238 -195
  108. package/src/ledger/clients/near.ts +43 -13
  109. package/src/ledger/clients/sui.ts +55 -68
  110. package/src/ledger/clients/thorchain/index.ts +210 -86
  111. package/src/ledger/clients/thorchain/protocol.ts +166 -0
  112. package/src/ledger/clients/tron.ts +49 -37
  113. package/src/ledger/clients/utxo-legacy-adapter.ts +35 -32
  114. package/src/ledger/clients/utxo-legacy-outputs.ts +122 -0
  115. package/src/ledger/clients/utxo.ts +108 -206
  116. package/src/ledger/clients/xrp.ts +39 -23
  117. package/src/ledger/clients/zcash.ts +440 -0
  118. package/src/ledger/helpers/dmk.ts +231 -0
  119. package/src/ledger/helpers/executeDeviceAction.ts +201 -0
  120. package/src/ledger/helpers/getLedgerClient.ts +101 -72
  121. package/src/ledger/helpers/index.ts +6 -1
  122. package/src/ledger/helpers/ledgerJsDmkBridge.ts +109 -0
  123. package/src/ledger/helpers/ledgerJsDmkTransport.ts +88 -0
  124. package/src/ledger/helpers/lowS.ts +30 -0
  125. package/src/ledger/helpers/rawTx.ts +12 -0
  126. package/src/ledger/index.ts +564 -369
  127. package/src/ledger/types.ts +15 -10
  128. package/src/trezor/index.ts +115 -27
  129. package/dist/chunk-1jpcb30j.js +0 -5
  130. package/dist/chunk-20wx60bn.js +0 -4
  131. package/dist/chunk-4tbtxdxa.js +0 -5
  132. package/dist/chunk-7v7cgm69.js +0 -4
  133. package/dist/chunk-7v7cgm69.js.map +0 -10
  134. package/dist/chunk-83g13ck6.js +0 -5
  135. package/dist/chunk-83g13ck6.js.map +0 -10
  136. package/dist/chunk-h2r568rz.js +0 -4
  137. package/dist/chunk-h2r568rz.js.map +0 -10
  138. package/dist/chunk-xkh15edk.js +0 -4
  139. package/dist/types/ledger/clients/thorchain/common.d.ts +0 -28
  140. package/dist/types/ledger/clients/thorchain/common.d.ts.map +0 -1
  141. package/dist/types/ledger/clients/thorchain/helpers.d.ts +0 -7
  142. package/dist/types/ledger/clients/thorchain/helpers.d.ts.map +0 -1
  143. package/dist/types/ledger/clients/thorchain/lib.d.ts +0 -22
  144. package/dist/types/ledger/clients/thorchain/lib.d.ts.map +0 -1
  145. package/dist/types/ledger/clients/thorchain/utils.d.ts +0 -2
  146. package/dist/types/ledger/clients/thorchain/utils.d.ts.map +0 -1
  147. package/dist/types/ledger/clients/utxo-psbt.d.ts +0 -18
  148. package/dist/types/ledger/clients/utxo-psbt.d.ts.map +0 -1
  149. package/dist/types/ledger/cosmosTypes.d.ts +0 -40
  150. package/dist/types/ledger/cosmosTypes.d.ts.map +0 -1
  151. package/dist/types/ledger/helpers/getLedgerTransport.d.ts +0 -3
  152. package/dist/types/ledger/helpers/getLedgerTransport.d.ts.map +0 -1
  153. package/dist/types/ledger/helpers/ledgerNetworkInfo.d.ts +0 -14
  154. package/dist/types/ledger/helpers/ledgerNetworkInfo.d.ts.map +0 -1
  155. package/dist/types/ledger/interfaces/CosmosLedgerInterface.d.ts +0 -14
  156. package/dist/types/ledger/interfaces/CosmosLedgerInterface.d.ts.map +0 -1
  157. package/src/ledger/clients/thorchain/common.ts +0 -93
  158. package/src/ledger/clients/thorchain/helpers.ts +0 -120
  159. package/src/ledger/clients/thorchain/lib.ts +0 -258
  160. package/src/ledger/clients/thorchain/utils.ts +0 -69
  161. package/src/ledger/clients/utxo-psbt.ts +0 -204
  162. package/src/ledger/cosmosTypes.ts +0 -98
  163. package/src/ledger/helpers/getLedgerTransport.ts +0 -102
  164. package/src/ledger/helpers/ledgerNetworkInfo.ts +0 -127
  165. package/src/ledger/interfaces/CosmosLedgerInterface.ts +0 -67
@@ -0,0 +1,4 @@
1
+ import{Aa as H0,ya as c,za as hZ}from"./chunk-yrxe491r.js";import{Ba as Jq,Ca as H$}from"./chunk-jzrytcrf.js";import{$b as s,Ib as qq,Jb as x,Kb as Wq,La as d9,Lb as bq,Lc as w$,Mb as kq,Mc as NZ,Nb as f,Oa as yq,Ob as i,Pa as Nq,Ta as a,Ua as $Q,Ud as kY,Va as Lq,Wa as Bq,Xa as dq,Xb as X$,Ya as e,_b as Mq,ac as ZQ,bb as m,cb as Qq,db as lY,eb as hY,fb as oq,hc as YQ,id as DZ,jd as S,kd as o,ld as Hq,mc as NQ,md as oY}from"./chunk-dptbnkzm.js";import{Wd as wY,Yd as d}from"./chunk-nhva847d.js";var GQ=d((BQ,AZ)=>{(function(q,Q){if(typeof BQ==="object")AZ.exports=BQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(BQ,function(q){return function(Q){var $=q,Z=$.lib,Y=Z.Base,N=Z.WordArray,V=$.x64={},D=V.Word=Y.extend({init:function(P,O){this.high=P,this.low=O}}),F=V.WordArray=Y.extend({init:function(P,O){if(P=this.words=P||[],O!=Q)this.sigBytes=O;else this.sigBytes=P.length*8},toX32:function(){var P=this.words,O=P.length,z=[];for(var E=0;E<O;E++){var j=P[E];z.push(j.high),z.push(j.low)}return N.create(z,this.sigBytes)},clone:function(){var P=Y.clone.call(this),O=P.words=this.words.slice(0),z=O.length;for(var E=0;E<z;E++)O[E]=O[E].clone();return P}})}(),q})});var TZ=d((kQ,IZ)=>{(function(q,Q){if(typeof kQ==="object")IZ.exports=kQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(kQ,function(q){return function(){if(typeof ArrayBuffer!="function")return;var Q=q,$=Q.lib,Z=$.WordArray,Y=Z.init,N=Z.init=function(V){if(V instanceof ArrayBuffer)V=new Uint8Array(V);if(V instanceof Int8Array||typeof Uint8ClampedArray<"u"&&V instanceof Uint8ClampedArray||V instanceof Int16Array||V instanceof Uint16Array||V instanceof Int32Array||V instanceof Uint32Array||V instanceof Float32Array||V instanceof Float64Array)V=new Uint8Array(V.buffer,V.byteOffset,V.byteLength);if(V instanceof Uint8Array){var D=V.byteLength,F=[];for(var P=0;P<D;P++)F[P>>>2]|=V[P]<<24-P%4*8;Y.call(this,F,D)}else Y.apply(this,arguments)};N.prototype=Z}(),q.lib.WordArray})});var XZ=d((uQ,HZ)=>{(function(q,Q){if(typeof uQ==="object")HZ.exports=uQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(uQ,function(q){return function(){var Q=q,$=Q.lib,Z=$.WordArray,Y=Q.enc,N=Y.Utf16=Y.Utf16BE={stringify:function(D){var{words:F,sigBytes:P}=D,O=[];for(var z=0;z<P;z+=2){var E=F[z>>>2]>>>16-z%4*8&65535;O.push(String.fromCharCode(E))}return O.join("")},parse:function(D){var F=D.length,P=[];for(var O=0;O<F;O++)P[O>>>1]|=D.charCodeAt(O)<<16-O%2*16;return Z.create(P,F*2)}};Y.Utf16LE={stringify:function(D){var{words:F,sigBytes:P}=D,O=[];for(var z=0;z<P;z+=2){var E=V(F[z>>>2]>>>16-z%4*8&65535);O.push(String.fromCharCode(E))}return O.join("")},parse:function(D){var F=D.length,P=[];for(var O=0;O<F;O++)P[O>>>1]|=V(D.charCodeAt(O)<<16-O%2*16);return Z.create(P,F*2)}};function V(D){return D<<8&4278255360|D>>>8&16711935}}(),q.enc.Utf16})});var nq=d((MQ,wZ)=>{(function(q,Q){if(typeof MQ==="object")wZ.exports=MQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(MQ,function(q){return function(){var Q=q,$=Q.lib,Z=$.WordArray,Y=Q.enc,N=Y.Base64={stringify:function(D){var{words:F,sigBytes:P}=D,O=this._map;D.clamp();var z=[];for(var E=0;E<P;E+=3){var j=F[E>>>2]>>>24-E%4*8&255,G=F[E+1>>>2]>>>24-(E+1)%4*8&255,L=F[E+2>>>2]>>>24-(E+2)%4*8&255,K=j<<16|G<<8|L;for(var R=0;R<4&&E+R*0.75<P;R++)z.push(O.charAt(K>>>6*(3-R)&63))}var U=O.charAt(64);if(U)while(z.length%4)z.push(U);return z.join("")},parse:function(D){var F=D.length,P=this._map,O=this._reverseMap;if(!O){O=this._reverseMap=[];for(var z=0;z<P.length;z++)O[P.charCodeAt(z)]=z}var E=P.charAt(64);if(E){var j=D.indexOf(E);if(j!==-1)F=j}return V(D,F,O)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="};function V(D,F,P){var O=[],z=0;for(var E=0;E<F;E++)if(E%4){var j=P[D.charCodeAt(E-1)]<<E%4*2,G=P[D.charCodeAt(E)]>>>6-E%4*2,L=j|G;O[z>>>2]|=L<<24-z%4*8,z++}return Z.create(O,z)}}(),q.enc.Base64})});var BZ=d((bQ,WZ)=>{(function(q,Q){if(typeof bQ==="object")WZ.exports=bQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(bQ,function(q){return function(){var Q=q,$=Q.lib,Z=$.WordArray,Y=Q.enc,N=Y.Base64url={stringify:function(D,F){if(F===void 0)F=!0;var{words:P,sigBytes:O}=D,z=F?this._safe_map:this._map;D.clamp();var E=[];for(var j=0;j<O;j+=3){var G=P[j>>>2]>>>24-j%4*8&255,L=P[j+1>>>2]>>>24-(j+1)%4*8&255,K=P[j+2>>>2]>>>24-(j+2)%4*8&255,R=G<<16|L<<8|K;for(var U=0;U<4&&j+U*0.75<O;U++)E.push(z.charAt(R>>>6*(3-U)&63))}var A=z.charAt(64);if(A)while(E.length%4)E.push(A);return E.join("")},parse:function(D,F){if(F===void 0)F=!0;var P=D.length,O=F?this._safe_map:this._map,z=this._reverseMap;if(!z){z=this._reverseMap=[];for(var E=0;E<O.length;E++)z[O.charCodeAt(E)]=E}var j=O.charAt(64);if(j){var G=D.indexOf(j);if(G!==-1)P=G}return V(D,P,z)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"};function V(D,F,P){var O=[],z=0;for(var E=0;E<F;E++)if(E%4){var j=P[D.charCodeAt(E-1)]<<E%4*2,G=P[D.charCodeAt(E)]>>>6-E%4*2,L=j|G;O[z>>>2]|=L<<24-z%4*8,z++}return Z.create(O,z)}}(),q.enc.Base64url})});var fq=d((gQ,kZ)=>{(function(q,Q){if(typeof gQ==="object")kZ.exports=gQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(gQ,function(q){return function(Q){var $=q,Z=$.lib,Y=Z.WordArray,N=Z.Hasher,V=$.algo,D=[];(function(){for(var j=0;j<64;j++)D[j]=Q.abs(Q.sin(j+1))*4294967296|0})();var F=V.MD5=N.extend({_doReset:function(){this._hash=new Y.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(j,G){for(var L=0;L<16;L++){var K=G+L,R=j[K];j[K]=(R<<8|R>>>24)&16711935|(R<<24|R>>>8)&4278255360}var U=this._hash.words,A=j[G+0],J=j[G+1],v=j[G+2],H=j[G+3],M=j[G+4],u=j[G+5],b=j[G+6],_=j[G+7],I=j[G+8],k=j[G+9],g=j[G+10],W=j[G+11],h=j[G+12],C=j[G+13],y=j[G+14],n=j[G+15],T=U[0],w=U[1],B=U[2],X=U[3];T=P(T,w,B,X,A,7,D[0]),X=P(X,T,w,B,J,12,D[1]),B=P(B,X,T,w,v,17,D[2]),w=P(w,B,X,T,H,22,D[3]),T=P(T,w,B,X,M,7,D[4]),X=P(X,T,w,B,u,12,D[5]),B=P(B,X,T,w,b,17,D[6]),w=P(w,B,X,T,_,22,D[7]),T=P(T,w,B,X,I,7,D[8]),X=P(X,T,w,B,k,12,D[9]),B=P(B,X,T,w,g,17,D[10]),w=P(w,B,X,T,W,22,D[11]),T=P(T,w,B,X,h,7,D[12]),X=P(X,T,w,B,C,12,D[13]),B=P(B,X,T,w,y,17,D[14]),w=P(w,B,X,T,n,22,D[15]),T=O(T,w,B,X,J,5,D[16]),X=O(X,T,w,B,b,9,D[17]),B=O(B,X,T,w,W,14,D[18]),w=O(w,B,X,T,A,20,D[19]),T=O(T,w,B,X,u,5,D[20]),X=O(X,T,w,B,g,9,D[21]),B=O(B,X,T,w,n,14,D[22]),w=O(w,B,X,T,M,20,D[23]),T=O(T,w,B,X,k,5,D[24]),X=O(X,T,w,B,y,9,D[25]),B=O(B,X,T,w,H,14,D[26]),w=O(w,B,X,T,I,20,D[27]),T=O(T,w,B,X,C,5,D[28]),X=O(X,T,w,B,v,9,D[29]),B=O(B,X,T,w,_,14,D[30]),w=O(w,B,X,T,h,20,D[31]),T=z(T,w,B,X,u,4,D[32]),X=z(X,T,w,B,I,11,D[33]),B=z(B,X,T,w,W,16,D[34]),w=z(w,B,X,T,y,23,D[35]),T=z(T,w,B,X,J,4,D[36]),X=z(X,T,w,B,M,11,D[37]),B=z(B,X,T,w,_,16,D[38]),w=z(w,B,X,T,g,23,D[39]),T=z(T,w,B,X,C,4,D[40]),X=z(X,T,w,B,A,11,D[41]),B=z(B,X,T,w,H,16,D[42]),w=z(w,B,X,T,b,23,D[43]),T=z(T,w,B,X,k,4,D[44]),X=z(X,T,w,B,h,11,D[45]),B=z(B,X,T,w,n,16,D[46]),w=z(w,B,X,T,v,23,D[47]),T=E(T,w,B,X,A,6,D[48]),X=E(X,T,w,B,_,10,D[49]),B=E(B,X,T,w,y,15,D[50]),w=E(w,B,X,T,u,21,D[51]),T=E(T,w,B,X,h,6,D[52]),X=E(X,T,w,B,H,10,D[53]),B=E(B,X,T,w,g,15,D[54]),w=E(w,B,X,T,J,21,D[55]),T=E(T,w,B,X,I,6,D[56]),X=E(X,T,w,B,n,10,D[57]),B=E(B,X,T,w,b,15,D[58]),w=E(w,B,X,T,C,21,D[59]),T=E(T,w,B,X,M,6,D[60]),X=E(X,T,w,B,W,10,D[61]),B=E(B,X,T,w,v,15,D[62]),w=E(w,B,X,T,k,21,D[63]),U[0]=U[0]+T|0,U[1]=U[1]+w|0,U[2]=U[2]+B|0,U[3]=U[3]+X|0},_doFinalize:function(){var j=this._data,G=j.words,L=this._nDataBytes*8,K=j.sigBytes*8;G[K>>>5]|=128<<24-K%32;var R=Q.floor(L/4294967296),U=L;G[(K+64>>>9<<4)+15]=(R<<8|R>>>24)&16711935|(R<<24|R>>>8)&4278255360,G[(K+64>>>9<<4)+14]=(U<<8|U>>>24)&16711935|(U<<24|U>>>8)&4278255360,j.sigBytes=(G.length+1)*4,this._process();var A=this._hash,J=A.words;for(var v=0;v<4;v++){var H=J[v];J[v]=(H<<8|H>>>24)&16711935|(H<<24|H>>>8)&4278255360}return A},clone:function(){var j=N.clone.call(this);return j._hash=this._hash.clone(),j}});function P(j,G,L,K,R,U,A){var J=j+(G&L|~G&K)+R+A;return(J<<U|J>>>32-U)+G}function O(j,G,L,K,R,U,A){var J=j+(G&K|L&~K)+R+A;return(J<<U|J>>>32-U)+G}function z(j,G,L,K,R,U,A){var J=j+(G^L^K)+R+A;return(J<<U|J>>>32-U)+G}function E(j,G,L,K,R,U,A){var J=j+(L^(G|~K))+R+A;return(J<<U|J>>>32-U)+G}$.MD5=N._createHelper(F),$.HmacMD5=N._createHmacHelper(F)}(Math),q.MD5})});var g$=d((xQ,uZ)=>{(function(q,Q){if(typeof xQ==="object")uZ.exports=xQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(xQ,function(q){return function(){var Q=q,$=Q.lib,Z=$.WordArray,Y=$.Hasher,N=Q.algo,V=[],D=N.SHA1=Y.extend({_doReset:function(){this._hash=new Z.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(F,P){var O=this._hash.words,z=O[0],E=O[1],j=O[2],G=O[3],L=O[4];for(var K=0;K<80;K++){if(K<16)V[K]=F[P+K]|0;else{var R=V[K-3]^V[K-8]^V[K-14]^V[K-16];V[K]=R<<1|R>>>31}var U=(z<<5|z>>>27)+L+V[K];if(K<20)U+=(E&j|~E&G)+1518500249;else if(K<40)U+=(E^j^G)+1859775393;else if(K<60)U+=(E&j|E&G|j&G)-1894007588;else U+=(E^j^G)-899497514;L=G,G=j,j=E<<30|E>>>2,E=z,z=U}O[0]=O[0]+z|0,O[1]=O[1]+E|0,O[2]=O[2]+j|0,O[3]=O[3]+G|0,O[4]=O[4]+L|0},_doFinalize:function(){var F=this._data,P=F.words,O=this._nDataBytes*8,z=F.sigBytes*8;return P[z>>>5]|=128<<24-z%32,P[(z+64>>>9<<4)+14]=Math.floor(O/4294967296),P[(z+64>>>9<<4)+15]=O,F.sigBytes=P.length*4,this._process(),this._hash},clone:function(){var F=Y.clone.call(this);return F._hash=this._hash.clone(),F}});Q.SHA1=Y._createHelper(D),Q.HmacSHA1=Y._createHmacHelper(D)}(),q.SHA1})});var x$=d((_Q,MZ)=>{(function(q,Q,$){if(typeof _Q==="object")MZ.exports=_Q=Q(c(),GQ());else if(typeof define==="function"&&define.amd)define(["./core","./x64-core"],Q);else Q(q.CryptoJS)})(_Q,function(q){return function(){var Q=q,$=Q.lib,Z=$.Hasher,Y=Q.x64,N=Y.Word,V=Y.WordArray,D=Q.algo;function F(){return N.create.apply(N,arguments)}var P=[F(1116352408,3609767458),F(1899447441,602891725),F(3049323471,3964484399),F(3921009573,2173295548),F(961987163,4081628472),F(1508970993,3053834265),F(2453635748,2937671579),F(2870763221,3664609560),F(3624381080,2734883394),F(310598401,1164996542),F(607225278,1323610764),F(1426881987,3590304994),F(1925078388,4068182383),F(2162078206,991336113),F(2614888103,633803317),F(3248222580,3479774868),F(3835390401,2666613458),F(4022224774,944711139),F(264347078,2341262773),F(604807628,2007800933),F(770255983,1495990901),F(1249150122,1856431235),F(1555081692,3175218132),F(1996064986,2198950837),F(2554220882,3999719339),F(2821834349,766784016),F(2952996808,2566594879),F(3210313671,3203337956),F(3336571891,1034457026),F(3584528711,2466948901),F(113926993,3758326383),F(338241895,168717936),F(666307205,1188179964),F(773529912,1546045734),F(1294757372,1522805485),F(1396182291,2643833823),F(1695183700,2343527390),F(1986661051,1014477480),F(2177026350,1206759142),F(2456956037,344077627),F(2730485921,1290863460),F(2820302411,3158454273),F(3259730800,3505952657),F(3345764771,106217008),F(3516065817,3606008344),F(3600352804,1432725776),F(4094571909,1467031594),F(275423344,851169720),F(430227734,3100823752),F(506948616,1363258195),F(659060556,3750685593),F(883997877,3785050280),F(958139571,3318307427),F(1322822218,3812723403),F(1537002063,2003034995),F(1747873779,3602036899),F(1955562222,1575990012),F(2024104815,1125592928),F(2227730452,2716904306),F(2361852424,442776044),F(2428436474,593698344),F(2756734187,3733110249),F(3204031479,2999351573),F(3329325298,3815920427),F(3391569614,3928383900),F(3515267271,566280711),F(3940187606,3454069534),F(4118630271,4000239992),F(116418474,1914138554),F(174292421,2731055270),F(289380356,3203993006),F(460393269,320620315),F(685471733,587496836),F(852142971,1086792851),F(1017036298,365543100),F(1126000580,2618297676),F(1288033470,3409855158),F(1501505948,4234509866),F(1607167915,987167468),F(1816402316,1246189591)],O=[];(function(){for(var E=0;E<80;E++)O[E]=F()})();var z=D.SHA512=Z.extend({_doReset:function(){this._hash=new V.init([new N.init(1779033703,4089235720),new N.init(3144134277,2227873595),new N.init(1013904242,4271175723),new N.init(2773480762,1595750129),new N.init(1359893119,2917565137),new N.init(2600822924,725511199),new N.init(528734635,4215389547),new N.init(1541459225,327033209)])},_doProcessBlock:function(E,j){var G=this._hash.words,L=G[0],K=G[1],R=G[2],U=G[3],A=G[4],J=G[5],v=G[6],H=G[7],M=L.high,u=L.low,b=K.high,_=K.low,I=R.high,k=R.low,g=U.high,W=U.low,h=A.high,C=A.low,y=J.high,n=J.low,T=v.high,w=v.low,B=H.high,X=H.low,$q=M,t=u,Gq=b,l=_,DQ=I,tq=k,B$=g,FQ=W,Xq=h,Aq=C,JQ=y,VQ=n,vQ=T,OQ=w,k$=B,EQ=X;for(var wq=0;wq<80;wq++){var Tq,Sq,AQ=O[wq];if(wq<16)Sq=AQ.high=E[j+wq*2]|0,Tq=AQ.low=E[j+wq*2+1]|0;else{var VZ=O[wq-15],eq=VZ.high,zQ=VZ.low,tY=(eq>>>1|zQ<<31)^(eq>>>8|zQ<<24)^eq>>>7,OZ=(zQ>>>1|eq<<31)^(zQ>>>8|eq<<24)^(zQ>>>7|eq<<25),EZ=O[wq-2],qQ=EZ.high,PQ=EZ.low,eY=(qQ>>>19|PQ<<13)^(qQ<<3|PQ>>>29)^qQ>>>6,zZ=(PQ>>>19|qQ<<13)^(PQ<<3|qQ>>>29)^(PQ>>>6|qQ<<26),PZ=O[wq-7],q0=PZ.high,Q0=PZ.low,GZ=O[wq-16],$0=GZ.high,jZ=GZ.low;Tq=OZ+Q0,Sq=tY+q0+(Tq>>>0<OZ>>>0?1:0),Tq=Tq+zZ,Sq=Sq+eY+(Tq>>>0<zZ>>>0?1:0),Tq=Tq+jZ,Sq=Sq+$0+(Tq>>>0<jZ>>>0?1:0),AQ.high=Sq,AQ.low=Tq}var Z0=Xq&JQ^~Xq&vQ,UZ=Aq&VQ^~Aq&OQ,Y0=$q&Gq^$q&DQ^Gq&DQ,N0=t&l^t&tq^l&tq,D0=($q>>>28|t<<4)^($q<<30|t>>>2)^($q<<25|t>>>7),RZ=(t>>>28|$q<<4)^(t<<30|$q>>>2)^(t<<25|$q>>>7),F0=(Xq>>>14|Aq<<18)^(Xq>>>18|Aq<<14)^(Xq<<23|Aq>>>9),V0=(Aq>>>14|Xq<<18)^(Aq>>>18|Xq<<14)^(Aq<<23|Xq>>>9),KZ=P[wq],O0=KZ.high,LZ=KZ.low,Iq=EQ+V0,mq=k$+F0+(Iq>>>0<EQ>>>0?1:0),Iq=Iq+UZ,mq=mq+Z0+(Iq>>>0<UZ>>>0?1:0),Iq=Iq+LZ,mq=mq+O0+(Iq>>>0<LZ>>>0?1:0),Iq=Iq+Tq,mq=mq+Sq+(Iq>>>0<Tq>>>0?1:0),JZ=RZ+N0,E0=D0+Y0+(JZ>>>0<RZ>>>0?1:0);k$=vQ,EQ=OQ,vQ=JQ,OQ=VQ,JQ=Xq,VQ=Aq,Aq=FQ+Iq|0,Xq=B$+mq+(Aq>>>0<FQ>>>0?1:0)|0,B$=DQ,FQ=tq,DQ=Gq,tq=l,Gq=$q,l=t,t=Iq+JZ|0,$q=mq+E0+(t>>>0<Iq>>>0?1:0)|0}u=L.low=u+t,L.high=M+$q+(u>>>0<t>>>0?1:0),_=K.low=_+l,K.high=b+Gq+(_>>>0<l>>>0?1:0),k=R.low=k+tq,R.high=I+DQ+(k>>>0<tq>>>0?1:0),W=U.low=W+FQ,U.high=g+B$+(W>>>0<FQ>>>0?1:0),C=A.low=C+Aq,A.high=h+Xq+(C>>>0<Aq>>>0?1:0),n=J.low=n+VQ,J.high=y+JQ+(n>>>0<VQ>>>0?1:0),w=v.low=w+OQ,v.high=T+vQ+(w>>>0<OQ>>>0?1:0),X=H.low=X+EQ,H.high=B+k$+(X>>>0<EQ>>>0?1:0)},_doFinalize:function(){var E=this._data,j=E.words,G=this._nDataBytes*8,L=E.sigBytes*8;j[L>>>5]|=128<<24-L%32,j[(L+128>>>10<<5)+30]=Math.floor(G/4294967296),j[(L+128>>>10<<5)+31]=G,E.sigBytes=j.length*4,this._process();var K=this._hash.toX32();return K},clone:function(){var E=Z.clone.call(this);return E._hash=this._hash.clone(),E},blockSize:32});Q.SHA512=Z._createHelper(z),Q.HmacSHA512=Z._createHmacHelper(z)}(),q.SHA512})});var gZ=d((CQ,bZ)=>{(function(q,Q,$){if(typeof CQ==="object")bZ.exports=CQ=Q(c(),GQ(),x$());else if(typeof define==="function"&&define.amd)define(["./core","./x64-core","./sha512"],Q);else Q(q.CryptoJS)})(CQ,function(q){return function(){var Q=q,$=Q.x64,Z=$.Word,Y=$.WordArray,N=Q.algo,V=N.SHA512,D=N.SHA384=V.extend({_doReset:function(){this._hash=new Y.init([new Z.init(3418070365,3238371032),new Z.init(1654270250,914150663),new Z.init(2438529370,812702999),new Z.init(355462360,4144912697),new Z.init(1731405415,4290775857),new Z.init(2394180231,1750603025),new Z.init(3675008525,1694076839),new Z.init(1203062813,3204075428)])},_doFinalize:function(){var F=V._doFinalize.call(this);return F.sigBytes-=16,F}});Q.SHA384=V._createHelper(D),Q.HmacSHA384=V._createHmacHelper(D)}(),q.SHA384})});var _Z=d((SQ,xZ)=>{(function(q,Q,$){if(typeof SQ==="object")xZ.exports=SQ=Q(c(),GQ());else if(typeof define==="function"&&define.amd)define(["./core","./x64-core"],Q);else Q(q.CryptoJS)})(SQ,function(q){return function(Q){var $=q,Z=$.lib,Y=Z.WordArray,N=Z.Hasher,V=$.x64,D=V.Word,F=$.algo,P=[],O=[],z=[];(function(){var G=1,L=0;for(var K=0;K<24;K++){P[G+5*L]=(K+1)*(K+2)/2%64;var R=L%5,U=(2*G+3*L)%5;G=R,L=U}for(var G=0;G<5;G++)for(var L=0;L<5;L++)O[G+5*L]=L+(2*G+3*L)%5*5;var A=1;for(var J=0;J<24;J++){var v=0,H=0;for(var M=0;M<7;M++){if(A&1){var u=(1<<M)-1;if(u<32)H^=1<<u;else v^=1<<u-32}if(A&128)A=A<<1^113;else A<<=1}z[J]=D.create(v,H)}})();var E=[];(function(){for(var G=0;G<25;G++)E[G]=D.create()})();var j=F.SHA3=N.extend({cfg:N.cfg.extend({outputLength:512}),_doReset:function(){var G=this._state=[];for(var L=0;L<25;L++)G[L]=new D.init;this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(G,L){var K=this._state,R=this.blockSize/2;for(var U=0;U<R;U++){var A=G[L+2*U],J=G[L+2*U+1];A=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,J=(J<<8|J>>>24)&16711935|(J<<24|J>>>8)&4278255360;var v=K[U];v.high^=J,v.low^=A}for(var H=0;H<24;H++){for(var M=0;M<5;M++){var u=0,b=0;for(var _=0;_<5;_++){var v=K[M+5*_];u^=v.high,b^=v.low}var I=E[M];I.high=u,I.low=b}for(var M=0;M<5;M++){var k=E[(M+4)%5],g=E[(M+1)%5],W=g.high,h=g.low,u=k.high^(W<<1|h>>>31),b=k.low^(h<<1|W>>>31);for(var _=0;_<5;_++){var v=K[M+5*_];v.high^=u,v.low^=b}}for(var C=1;C<25;C++){var u,b,v=K[C],y=v.high,n=v.low,T=P[C];if(T<32)u=y<<T|n>>>32-T,b=n<<T|y>>>32-T;else u=n<<T-32|y>>>64-T,b=y<<T-32|n>>>64-T;var w=E[O[C]];w.high=u,w.low=b}var B=E[0],X=K[0];B.high=X.high,B.low=X.low;for(var M=0;M<5;M++)for(var _=0;_<5;_++){var C=M+5*_,v=K[C],$q=E[C],t=E[(M+1)%5+5*_],Gq=E[(M+2)%5+5*_];v.high=$q.high^~t.high&Gq.high,v.low=$q.low^~t.low&Gq.low}var v=K[0],l=z[H];v.high^=l.high,v.low^=l.low}},_doFinalize:function(){var G=this._data,L=G.words,K=this._nDataBytes*8,R=G.sigBytes*8,U=this.blockSize*32;L[R>>>5]|=1<<24-R%32,L[(Q.ceil((R+1)/U)*U>>>5)-1]|=128,G.sigBytes=L.length*4,this._process();var A=this._state,J=this.cfg.outputLength/8,v=J/8,H=[];for(var M=0;M<v;M++){var u=A[M],b=u.high,_=u.low;b=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,_=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,H.push(_),H.push(b)}return new Y.init(H,J)},clone:function(){var G=N.clone.call(this),L=G._state=this._state.slice(0);for(var K=0;K<25;K++)L[K]=L[K].clone();return G}});$.SHA3=N._createHelper(j),$.HmacSHA3=N._createHmacHelper(j)}(Math),q.SHA3})});var SZ=d((mQ,CZ)=>{(function(q,Q){if(typeof mQ==="object")CZ.exports=mQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(mQ,function(q){return function(Q){var $=q,Z=$.lib,Y=Z.WordArray,N=Z.Hasher,V=$.algo,D=Y.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),F=Y.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),P=Y.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),O=Y.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),z=Y.create([0,1518500249,1859775393,2400959708,2840853838]),E=Y.create([1352829926,1548603684,1836072691,2053994217,0]),j=V.RIPEMD160=N.extend({_doReset:function(){this._hash=Y.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(J,v){for(var H=0;H<16;H++){var M=v+H,u=J[M];J[M]=(u<<8|u>>>24)&16711935|(u<<24|u>>>8)&4278255360}var b=this._hash.words,_=z.words,I=E.words,k=D.words,g=F.words,W=P.words,h=O.words,C,y,n,T,w,B,X,$q,t,Gq;B=C=b[0],X=y=b[1],$q=n=b[2],t=T=b[3],Gq=w=b[4];var l;for(var H=0;H<80;H+=1){if(l=C+J[v+k[H]]|0,H<16)l+=G(y,n,T)+_[0];else if(H<32)l+=L(y,n,T)+_[1];else if(H<48)l+=K(y,n,T)+_[2];else if(H<64)l+=R(y,n,T)+_[3];else l+=U(y,n,T)+_[4];if(l=l|0,l=A(l,W[H]),l=l+w|0,C=w,w=T,T=A(n,10),n=y,y=l,l=B+J[v+g[H]]|0,H<16)l+=U(X,$q,t)+I[0];else if(H<32)l+=R(X,$q,t)+I[1];else if(H<48)l+=K(X,$q,t)+I[2];else if(H<64)l+=L(X,$q,t)+I[3];else l+=G(X,$q,t)+I[4];l=l|0,l=A(l,h[H]),l=l+Gq|0,B=Gq,Gq=t,t=A($q,10),$q=X,X=l}l=b[1]+n+t|0,b[1]=b[2]+T+Gq|0,b[2]=b[3]+w+B|0,b[3]=b[4]+C+X|0,b[4]=b[0]+y+$q|0,b[0]=l},_doFinalize:function(){var J=this._data,v=J.words,H=this._nDataBytes*8,M=J.sigBytes*8;v[M>>>5]|=128<<24-M%32,v[(M+64>>>9<<4)+14]=(H<<8|H>>>24)&16711935|(H<<24|H>>>8)&4278255360,J.sigBytes=(v.length+1)*4,this._process();var u=this._hash,b=u.words;for(var _=0;_<5;_++){var I=b[_];b[_]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360}return u},clone:function(){var J=N.clone.call(this);return J._hash=this._hash.clone(),J}});function G(J,v,H){return J^v^H}function L(J,v,H){return J&v|~J&H}function K(J,v,H){return(J|~v)^H}function R(J,v,H){return J&H|v&~H}function U(J,v,H){return J^(v|~H)}function A(J,v){return J<<v|J>>>32-v}$.RIPEMD160=N._createHelper(j),$.HmacRIPEMD160=N._createHmacHelper(j)}(Math),q.RIPEMD160})});var yQ=d((hQ,mZ)=>{(function(q,Q){if(typeof hQ==="object")mZ.exports=hQ=Q(c());else if(typeof define==="function"&&define.amd)define(["./core"],Q);else Q(q.CryptoJS)})(hQ,function(q){(function(){var Q=q,$=Q.lib,Z=$.Base,Y=Q.enc,N=Y.Utf8,V=Q.algo,D=V.HMAC=Z.extend({init:function(F,P){if(F=this._hasher=new F.init,typeof P=="string")P=N.parse(P);var O=F.blockSize,z=O*4;if(P.sigBytes>z)P=F.finalize(P);P.clamp();var E=this._oKey=P.clone(),j=this._iKey=P.clone(),G=E.words,L=j.words;for(var K=0;K<O;K++)G[K]^=1549556828,L[K]^=909522486;E.sigBytes=j.sigBytes=z,this.reset()},reset:function(){var F=this._hasher;F.reset(),F.update(this._iKey)},update:function(F){return this._hasher.update(F),this},finalize:function(F){var P=this._hasher,O=P.finalize(F);P.reset();var z=P.finalize(this._oKey.clone().concat(O));return z}})})()})});var lZ=d((lQ,yZ)=>{(function(q,Q,$){if(typeof lQ==="object")yZ.exports=lQ=Q(c(),hZ(),yQ());else if(typeof define==="function"&&define.amd)define(["./core","./sha256","./hmac"],Q);else Q(q.CryptoJS)})(lQ,function(q){return function(){var Q=q,$=Q.lib,Z=$.Base,Y=$.WordArray,N=Q.algo,V=N.SHA256,D=N.HMAC,F=N.PBKDF2=Z.extend({cfg:Z.extend({keySize:4,hasher:V,iterations:250000}),init:function(P){this.cfg=this.cfg.extend(P)},compute:function(P,O){var z=this.cfg,E=D.create(z.hasher,P),j=Y.create(),G=Y.create([1]),L=j.words,K=G.words,R=z.keySize,U=z.iterations;while(L.length<R){var A=E.update(O).finalize(G);E.reset();var J=A.words,v=J.length,H=A;for(var M=1;M<U;M++){H=E.finalize(H),E.reset();var u=H.words;for(var b=0;b<v;b++)J[b]^=u[b]}j.concat(A),K[0]++}return j.sigBytes=R*4,j}});Q.PBKDF2=function(P,O,z){return F.create(z).compute(P,O)}}(),q.PBKDF2})});var gq=d((nQ,nZ)=>{(function(q,Q,$){if(typeof nQ==="object")nZ.exports=nQ=Q(c(),g$(),yQ());else if(typeof define==="function"&&define.amd)define(["./core","./sha1","./hmac"],Q);else Q(q.CryptoJS)})(nQ,function(q){return function(){var Q=q,$=Q.lib,Z=$.Base,Y=$.WordArray,N=Q.algo,V=N.MD5,D=N.EvpKDF=Z.extend({cfg:Z.extend({keySize:4,hasher:V,iterations:1}),init:function(F){this.cfg=this.cfg.extend(F)},compute:function(F,P){var O,z=this.cfg,E=z.hasher.create(),j=Y.create(),G=j.words,L=z.keySize,K=z.iterations;while(G.length<L){if(O)E.update(O);O=E.update(F).finalize(P),E.reset();for(var R=1;R<K;R++)O=E.finalize(O),E.reset();j.concat(O)}return j.sigBytes=L*4,j}});Q.EvpKDF=function(F,P,O){return D.create(O).compute(F,P)}}(),q.EvpKDF})});var Fq=d((fQ,fZ)=>{(function(q,Q,$){if(typeof fQ==="object")fZ.exports=fQ=Q(c(),gq());else if(typeof define==="function"&&define.amd)define(["./core","./evpkdf"],Q);else Q(q.CryptoJS)})(fQ,function(q){q.lib.Cipher||function(Q){var $=q,Z=$.lib,Y=Z.Base,N=Z.WordArray,V=Z.BufferedBlockAlgorithm,D=$.enc,F=D.Utf8,P=D.Base64,O=$.algo,z=O.EvpKDF,E=Z.Cipher=V.extend({cfg:Y.extend(),createEncryptor:function(I,k){return this.create(this._ENC_XFORM_MODE,I,k)},createDecryptor:function(I,k){return this.create(this._DEC_XFORM_MODE,I,k)},init:function(I,k,g){this.cfg=this.cfg.extend(g),this._xformMode=I,this._key=k,this.reset()},reset:function(){V.reset.call(this),this._doReset()},process:function(I){return this._append(I),this._process()},finalize:function(I){if(I)this._append(I);var k=this._doFinalize();return k},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function I(k){if(typeof k=="string")return _;else return M}return function(k){return{encrypt:function(g,W,h){return I(W).encrypt(k,g,W,h)},decrypt:function(g,W,h){return I(W).decrypt(k,g,W,h)}}}}()}),j=Z.StreamCipher=E.extend({_doFinalize:function(){var I=this._process(!0);return I},blockSize:1}),G=$.mode={},L=Z.BlockCipherMode=Y.extend({createEncryptor:function(I,k){return this.Encryptor.create(I,k)},createDecryptor:function(I,k){return this.Decryptor.create(I,k)},init:function(I,k){this._cipher=I,this._iv=k}}),K=G.CBC=function(){var I=L.extend();I.Encryptor=I.extend({processBlock:function(g,W){var h=this._cipher,C=h.blockSize;k.call(this,g,W,C),h.encryptBlock(g,W),this._prevBlock=g.slice(W,W+C)}}),I.Decryptor=I.extend({processBlock:function(g,W){var h=this._cipher,C=h.blockSize,y=g.slice(W,W+C);h.decryptBlock(g,W),k.call(this,g,W,C),this._prevBlock=y}});function k(g,W,h){var C,y=this._iv;if(y)C=y,this._iv=Q;else C=this._prevBlock;for(var n=0;n<h;n++)g[W+n]^=C[n]}return I}(),R=$.pad={},U=R.Pkcs7={pad:function(I,k){var g=k*4,W=g-I.sigBytes%g,h=W<<24|W<<16|W<<8|W,C=[];for(var y=0;y<W;y+=4)C.push(h);var n=N.create(C,W);I.concat(n)},unpad:function(I){var k=I.words[I.sigBytes-1>>>2]&255;I.sigBytes-=k}},A=Z.BlockCipher=E.extend({cfg:E.cfg.extend({mode:K,padding:U}),reset:function(){var I;E.reset.call(this);var k=this.cfg,g=k.iv,W=k.mode;if(this._xformMode==this._ENC_XFORM_MODE)I=W.createEncryptor;else I=W.createDecryptor,this._minBufferSize=1;if(this._mode&&this._mode.__creator==I)this._mode.init(this,g&&g.words);else this._mode=I.call(W,this,g&&g.words),this._mode.__creator=I},_doProcessBlock:function(I,k){this._mode.processBlock(I,k)},_doFinalize:function(){var I,k=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE)k.pad(this._data,this.blockSize),I=this._process(!0);else I=this._process(!0),k.unpad(I);return I},blockSize:4}),J=Z.CipherParams=Y.extend({init:function(I){this.mixIn(I)},toString:function(I){return(I||this.formatter).stringify(this)}}),v=$.format={},H=v.OpenSSL={stringify:function(I){var k,g=I.ciphertext,W=I.salt;if(W)k=N.create([1398893684,1701076831]).concat(W).concat(g);else k=g;return k.toString(P)},parse:function(I){var k,g=P.parse(I),W=g.words;if(W[0]==1398893684&&W[1]==1701076831)k=N.create(W.slice(2,4)),W.splice(0,4),g.sigBytes-=16;return J.create({ciphertext:g,salt:k})}},M=Z.SerializableCipher=Y.extend({cfg:Y.extend({format:H}),encrypt:function(I,k,g,W){W=this.cfg.extend(W);var h=I.createEncryptor(g,W),C=h.finalize(k),y=h.cfg;return J.create({ciphertext:C,key:g,iv:y.iv,algorithm:I,mode:y.mode,padding:y.padding,blockSize:I.blockSize,formatter:W.format})},decrypt:function(I,k,g,W){W=this.cfg.extend(W),k=this._parse(k,W.format);var h=I.createDecryptor(g,W).finalize(k.ciphertext);return h},_parse:function(I,k){if(typeof I=="string")return k.parse(I,this);else return I}}),u=$.kdf={},b=u.OpenSSL={execute:function(I,k,g,W,h){if(!W)W=N.random(8);if(!h)var C=z.create({keySize:k+g}).compute(I,W);else var C=z.create({keySize:k+g,hasher:h}).compute(I,W);var y=N.create(C.words.slice(k),g*4);return C.sigBytes=k*4,J.create({key:C,iv:y,salt:W})}},_=Z.PasswordBasedCipher=M.extend({cfg:M.cfg.extend({kdf:b}),encrypt:function(I,k,g,W){W=this.cfg.extend(W);var h=W.kdf.execute(g,I.keySize,I.ivSize,W.salt,W.hasher);W.iv=h.iv;var C=M.encrypt.call(this,I,k,h.key,W);return C.mixIn(h),C},decrypt:function(I,k,g,W){W=this.cfg.extend(W),k=this._parse(k,W.format);var h=W.kdf.execute(g,I.keySize,I.ivSize,k.salt,W.hasher);W.iv=h.iv;var C=M.decrypt.call(this,I,k,h.key,W);return C}})}()})});var dZ=d((pQ,pZ)=>{(function(q,Q,$){if(typeof pQ==="object")pZ.exports=pQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(pQ,function(q){return q.mode.CFB=function(){var Q=q.lib.BlockCipherMode.extend();Q.Encryptor=Q.extend({processBlock:function(Z,Y){var N=this._cipher,V=N.blockSize;$.call(this,Z,Y,V,N),this._prevBlock=Z.slice(Y,Y+V)}}),Q.Decryptor=Q.extend({processBlock:function(Z,Y){var N=this._cipher,V=N.blockSize,D=Z.slice(Y,Y+V);$.call(this,Z,Y,V,N),this._prevBlock=D}});function $(Z,Y,N,V){var D,F=this._iv;if(F)D=F.slice(0),this._iv=void 0;else D=this._prevBlock;V.encryptBlock(D,0);for(var P=0;P<N;P++)Z[Y+P]^=D[P]}return Q}(),q.mode.CFB})});var sZ=d((dQ,cZ)=>{(function(q,Q,$){if(typeof dQ==="object")cZ.exports=dQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(dQ,function(q){return q.mode.CTR=function(){var Q=q.lib.BlockCipherMode.extend(),$=Q.Encryptor=Q.extend({processBlock:function(Z,Y){var N=this._cipher,V=N.blockSize,D=this._iv,F=this._counter;if(D)F=this._counter=D.slice(0),this._iv=void 0;var P=F.slice(0);N.encryptBlock(P,0),F[V-1]=F[V-1]+1|0;for(var O=0;O<V;O++)Z[Y+O]^=P[O]}});return Q.Decryptor=$,Q}(),q.mode.CTR})});var oZ=d((cQ,iZ)=>{(function(q,Q,$){if(typeof cQ==="object")iZ.exports=cQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(cQ,function(q){return q.mode.CTRGladman=function(){var Q=q.lib.BlockCipherMode.extend();function $(N){if((N>>24&255)===255){var V=N>>16&255,D=N>>8&255,F=N&255;if(V===255)if(V=0,D===255)if(D=0,F===255)F=0;else++F;else++D;else++V;N=0,N+=V<<16,N+=D<<8,N+=F}else N+=16777216;return N}function Z(N){if((N[0]=$(N[0]))===0)N[1]=$(N[1]);return N}var Y=Q.Encryptor=Q.extend({processBlock:function(N,V){var D=this._cipher,F=D.blockSize,P=this._iv,O=this._counter;if(P)O=this._counter=P.slice(0),this._iv=void 0;Z(O);var z=O.slice(0);D.encryptBlock(z,0);for(var E=0;E<F;E++)N[V+E]^=z[E]}});return Q.Decryptor=Y,Q}(),q.mode.CTRGladman})});var rZ=d((sQ,aZ)=>{(function(q,Q,$){if(typeof sQ==="object")aZ.exports=sQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(sQ,function(q){return q.mode.OFB=function(){var Q=q.lib.BlockCipherMode.extend(),$=Q.Encryptor=Q.extend({processBlock:function(Z,Y){var N=this._cipher,V=N.blockSize,D=this._iv,F=this._keystream;if(D)F=this._keystream=D.slice(0),this._iv=void 0;N.encryptBlock(F,0);for(var P=0;P<V;P++)Z[Y+P]^=F[P]}});return Q.Decryptor=$,Q}(),q.mode.OFB})});var eZ=d((iQ,tZ)=>{(function(q,Q,$){if(typeof iQ==="object")tZ.exports=iQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(iQ,function(q){return q.mode.ECB=function(){var Q=q.lib.BlockCipherMode.extend();return Q.Encryptor=Q.extend({processBlock:function($,Z){this._cipher.encryptBlock($,Z)}}),Q.Decryptor=Q.extend({processBlock:function($,Z){this._cipher.decryptBlock($,Z)}}),Q}(),q.mode.ECB})});var QY=d((oQ,qY)=>{(function(q,Q,$){if(typeof oQ==="object")qY.exports=oQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(oQ,function(q){return q.pad.AnsiX923={pad:function(Q,$){var Z=Q.sigBytes,Y=$*4,N=Y-Z%Y,V=Z+N-1;Q.clamp(),Q.words[V>>>2]|=N<<24-V%4*8,Q.sigBytes+=N},unpad:function(Q){var $=Q.words[Q.sigBytes-1>>>2]&255;Q.sigBytes-=$}},q.pad.Ansix923})});var ZY=d((aQ,$Y)=>{(function(q,Q,$){if(typeof aQ==="object")$Y.exports=aQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(aQ,function(q){return q.pad.Iso10126={pad:function(Q,$){var Z=$*4,Y=Z-Q.sigBytes%Z;Q.concat(q.lib.WordArray.random(Y-1)).concat(q.lib.WordArray.create([Y<<24],1))},unpad:function(Q){var $=Q.words[Q.sigBytes-1>>>2]&255;Q.sigBytes-=$}},q.pad.Iso10126})});var NY=d((rQ,YY)=>{(function(q,Q,$){if(typeof rQ==="object")YY.exports=rQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(rQ,function(q){return q.pad.Iso97971={pad:function(Q,$){Q.concat(q.lib.WordArray.create([2147483648],1)),q.pad.ZeroPadding.pad(Q,$)},unpad:function(Q){q.pad.ZeroPadding.unpad(Q),Q.sigBytes--}},q.pad.Iso97971})});var FY=d((tQ,DY)=>{(function(q,Q,$){if(typeof tQ==="object")DY.exports=tQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(tQ,function(q){return q.pad.ZeroPadding={pad:function(Q,$){var Z=$*4;Q.clamp(),Q.sigBytes+=Z-(Q.sigBytes%Z||Z)},unpad:function(Q){var $=Q.words,Z=Q.sigBytes-1;for(var Z=Q.sigBytes-1;Z>=0;Z--)if($[Z>>>2]>>>24-Z%4*8&255){Q.sigBytes=Z+1;break}}},q.pad.ZeroPadding})});var OY=d((eQ,VY)=>{(function(q,Q,$){if(typeof eQ==="object")VY.exports=eQ=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(eQ,function(q){return q.pad.NoPadding={pad:function(){},unpad:function(){}},q.pad.NoPadding})});var zY=d((q$,EY)=>{(function(q,Q,$){if(typeof q$==="object")EY.exports=q$=Q(c(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./cipher-core"],Q);else Q(q.CryptoJS)})(q$,function(q){return function(Q){var $=q,Z=$.lib,Y=Z.CipherParams,N=$.enc,V=N.Hex,D=$.format,F=D.Hex={stringify:function(P){return P.ciphertext.toString(V)},parse:function(P){var O=V.parse(P);return Y.create({ciphertext:O})}}}(),q.format.Hex})});var GY=d((Q$,PY)=>{(function(q,Q,$){if(typeof Q$==="object")PY.exports=Q$=Q(c(),nq(),fq(),gq(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],Q);else Q(q.CryptoJS)})(Q$,function(q){return function(){var Q=q,$=Q.lib,Z=$.BlockCipher,Y=Q.algo,N=[],V=[],D=[],F=[],P=[],O=[],z=[],E=[],j=[],G=[];(function(){var R=[];for(var U=0;U<256;U++)if(U<128)R[U]=U<<1;else R[U]=U<<1^283;var A=0,J=0;for(var U=0;U<256;U++){var v=J^J<<1^J<<2^J<<3^J<<4;v=v>>>8^v&255^99,N[A]=v,V[v]=A;var H=R[A],M=R[H],u=R[M],b=R[v]*257^v*16843008;D[A]=b<<24|b>>>8,F[A]=b<<16|b>>>16,P[A]=b<<8|b>>>24,O[A]=b;var b=u*16843009^M*65537^H*257^A*16843008;if(z[v]=b<<24|b>>>8,E[v]=b<<16|b>>>16,j[v]=b<<8|b>>>24,G[v]=b,!A)A=J=1;else A=H^R[R[R[u^H]]],J^=R[R[J]]}})();var L=[0,1,2,4,8,16,32,64,128,27,54],K=Y.AES=Z.extend({_doReset:function(){var R;if(this._nRounds&&this._keyPriorReset===this._key)return;var U=this._keyPriorReset=this._key,A=U.words,J=U.sigBytes/4,v=this._nRounds=J+6,H=(v+1)*4,M=this._keySchedule=[];for(var u=0;u<H;u++)if(u<J)M[u]=A[u];else{if(R=M[u-1],!(u%J))R=R<<8|R>>>24,R=N[R>>>24]<<24|N[R>>>16&255]<<16|N[R>>>8&255]<<8|N[R&255],R^=L[u/J|0]<<24;else if(J>6&&u%J==4)R=N[R>>>24]<<24|N[R>>>16&255]<<16|N[R>>>8&255]<<8|N[R&255];M[u]=M[u-J]^R}var b=this._invKeySchedule=[];for(var _=0;_<H;_++){var u=H-_;if(_%4)var R=M[u];else var R=M[u-4];if(_<4||u<=4)b[_]=R;else b[_]=z[N[R>>>24]]^E[N[R>>>16&255]]^j[N[R>>>8&255]]^G[N[R&255]]}},encryptBlock:function(R,U){this._doCryptBlock(R,U,this._keySchedule,D,F,P,O,N)},decryptBlock:function(R,U){var A=R[U+1];R[U+1]=R[U+3],R[U+3]=A,this._doCryptBlock(R,U,this._invKeySchedule,z,E,j,G,V);var A=R[U+1];R[U+1]=R[U+3],R[U+3]=A},_doCryptBlock:function(R,U,A,J,v,H,M,u){var b=this._nRounds,_=R[U]^A[0],I=R[U+1]^A[1],k=R[U+2]^A[2],g=R[U+3]^A[3],W=4;for(var h=1;h<b;h++){var C=J[_>>>24]^v[I>>>16&255]^H[k>>>8&255]^M[g&255]^A[W++],y=J[I>>>24]^v[k>>>16&255]^H[g>>>8&255]^M[_&255]^A[W++],n=J[k>>>24]^v[g>>>16&255]^H[_>>>8&255]^M[I&255]^A[W++],T=J[g>>>24]^v[_>>>16&255]^H[I>>>8&255]^M[k&255]^A[W++];_=C,I=y,k=n,g=T}var C=(u[_>>>24]<<24|u[I>>>16&255]<<16|u[k>>>8&255]<<8|u[g&255])^A[W++],y=(u[I>>>24]<<24|u[k>>>16&255]<<16|u[g>>>8&255]<<8|u[_&255])^A[W++],n=(u[k>>>24]<<24|u[g>>>16&255]<<16|u[_>>>8&255]<<8|u[I&255])^A[W++],T=(u[g>>>24]<<24|u[_>>>16&255]<<16|u[I>>>8&255]<<8|u[k&255])^A[W++];R[U]=C,R[U+1]=y,R[U+2]=n,R[U+3]=T},keySize:8});Q.AES=Z._createHelper(K)}(),q.AES})});var UY=d(($$,jY)=>{(function(q,Q,$){if(typeof $$==="object")jY.exports=$$=Q(c(),nq(),fq(),gq(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],Q);else Q(q.CryptoJS)})($$,function(q){return function(){var Q=q,$=Q.lib,Z=$.WordArray,Y=$.BlockCipher,N=Q.algo,V=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],D=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],F=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],P=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],O=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],z=N.DES=Y.extend({_doReset:function(){var L=this._key,K=L.words,R=[];for(var U=0;U<56;U++){var A=V[U]-1;R[U]=K[A>>>5]>>>31-A%32&1}var J=this._subKeys=[];for(var v=0;v<16;v++){var H=J[v]=[],M=F[v];for(var U=0;U<24;U++)H[U/6|0]|=R[(D[U]-1+M)%28]<<31-U%6,H[4+(U/6|0)]|=R[28+(D[U+24]-1+M)%28]<<31-U%6;H[0]=H[0]<<1|H[0]>>>31;for(var U=1;U<7;U++)H[U]=H[U]>>>(U-1)*4+3;H[7]=H[7]<<5|H[7]>>>27}var u=this._invSubKeys=[];for(var U=0;U<16;U++)u[U]=J[15-U]},encryptBlock:function(L,K){this._doCryptBlock(L,K,this._subKeys)},decryptBlock:function(L,K){this._doCryptBlock(L,K,this._invSubKeys)},_doCryptBlock:function(L,K,R){this._lBlock=L[K],this._rBlock=L[K+1],E.call(this,4,252645135),E.call(this,16,65535),j.call(this,2,858993459),j.call(this,8,16711935),E.call(this,1,1431655765);for(var U=0;U<16;U++){var A=R[U],J=this._lBlock,v=this._rBlock,H=0;for(var M=0;M<8;M++)H|=P[M][((v^A[M])&O[M])>>>0];this._lBlock=v,this._rBlock=J^H}var u=this._lBlock;this._lBlock=this._rBlock,this._rBlock=u,E.call(this,1,1431655765),j.call(this,8,16711935),j.call(this,2,858993459),E.call(this,16,65535),E.call(this,4,252645135),L[K]=this._lBlock,L[K+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function E(L,K){var R=(this._lBlock>>>L^this._rBlock)&K;this._rBlock^=R,this._lBlock^=R<<L}function j(L,K){var R=(this._rBlock>>>L^this._lBlock)&K;this._lBlock^=R,this._rBlock^=R<<L}Q.DES=Y._createHelper(z);var G=N.TripleDES=Y.extend({_doReset:function(){var L=this._key,K=L.words;if(K.length!==2&&K.length!==4&&K.length<6)throw Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");var R=K.slice(0,2),U=K.length<4?K.slice(0,2):K.slice(2,4),A=K.length<6?K.slice(0,2):K.slice(4,6);this._des1=z.createEncryptor(Z.create(R)),this._des2=z.createEncryptor(Z.create(U)),this._des3=z.createEncryptor(Z.create(A))},encryptBlock:function(L,K){this._des1.encryptBlock(L,K),this._des2.decryptBlock(L,K),this._des3.encryptBlock(L,K)},decryptBlock:function(L,K){this._des3.decryptBlock(L,K),this._des2.encryptBlock(L,K),this._des1.decryptBlock(L,K)},keySize:6,ivSize:2,blockSize:2});Q.TripleDES=Y._createHelper(G)}(),q.TripleDES})});var KY=d((Z$,RY)=>{(function(q,Q,$){if(typeof Z$==="object")RY.exports=Z$=Q(c(),nq(),fq(),gq(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],Q);else Q(q.CryptoJS)})(Z$,function(q){return function(){var Q=q,$=Q.lib,Z=$.StreamCipher,Y=Q.algo,N=Y.RC4=Z.extend({_doReset:function(){var F=this._key,P=F.words,O=F.sigBytes,z=this._S=[];for(var E=0;E<256;E++)z[E]=E;for(var E=0,j=0;E<256;E++){var G=E%O,L=P[G>>>2]>>>24-G%4*8&255;j=(j+z[E]+L)%256;var K=z[E];z[E]=z[j],z[j]=K}this._i=this._j=0},_doProcessBlock:function(F,P){F[P]^=V.call(this)},keySize:8,ivSize:0});function V(){var F=this._S,P=this._i,O=this._j,z=0;for(var E=0;E<4;E++){P=(P+1)%256,O=(O+F[P])%256;var j=F[P];F[P]=F[O],F[O]=j,z|=F[(F[P]+F[O])%256]<<24-E*8}return this._i=P,this._j=O,z}Q.RC4=Z._createHelper(N);var D=Y.RC4Drop=N.extend({cfg:N.cfg.extend({drop:192}),_doReset:function(){N._doReset.call(this);for(var F=this.cfg.drop;F>0;F--)V.call(this)}});Q.RC4Drop=Z._createHelper(D)}(),q.RC4})});var JY=d((Y$,LY)=>{(function(q,Q,$){if(typeof Y$==="object")LY.exports=Y$=Q(c(),nq(),fq(),gq(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],Q);else Q(q.CryptoJS)})(Y$,function(q){return function(){var Q=q,$=Q.lib,Z=$.StreamCipher,Y=Q.algo,N=[],V=[],D=[],F=Y.Rabbit=Z.extend({_doReset:function(){var O=this._key.words,z=this.cfg.iv;for(var E=0;E<4;E++)O[E]=(O[E]<<8|O[E]>>>24)&16711935|(O[E]<<24|O[E]>>>8)&4278255360;var j=this._X=[O[0],O[3]<<16|O[2]>>>16,O[1],O[0]<<16|O[3]>>>16,O[2],O[1]<<16|O[0]>>>16,O[3],O[2]<<16|O[1]>>>16],G=this._C=[O[2]<<16|O[2]>>>16,O[0]&4294901760|O[1]&65535,O[3]<<16|O[3]>>>16,O[1]&4294901760|O[2]&65535,O[0]<<16|O[0]>>>16,O[2]&4294901760|O[3]&65535,O[1]<<16|O[1]>>>16,O[3]&4294901760|O[0]&65535];this._b=0;for(var E=0;E<4;E++)P.call(this);for(var E=0;E<8;E++)G[E]^=j[E+4&7];if(z){var L=z.words,K=L[0],R=L[1],U=(K<<8|K>>>24)&16711935|(K<<24|K>>>8)&4278255360,A=(R<<8|R>>>24)&16711935|(R<<24|R>>>8)&4278255360,J=U>>>16|A&4294901760,v=A<<16|U&65535;G[0]^=U,G[1]^=J,G[2]^=A,G[3]^=v,G[4]^=U,G[5]^=J,G[6]^=A,G[7]^=v;for(var E=0;E<4;E++)P.call(this)}},_doProcessBlock:function(O,z){var E=this._X;P.call(this),N[0]=E[0]^E[5]>>>16^E[3]<<16,N[1]=E[2]^E[7]>>>16^E[5]<<16,N[2]=E[4]^E[1]>>>16^E[7]<<16,N[3]=E[6]^E[3]>>>16^E[1]<<16;for(var j=0;j<4;j++)N[j]=(N[j]<<8|N[j]>>>24)&16711935|(N[j]<<24|N[j]>>>8)&4278255360,O[z+j]^=N[j]},blockSize:4,ivSize:2});function P(){var O=this._X,z=this._C;for(var E=0;E<8;E++)V[E]=z[E];z[0]=z[0]+1295307597+this._b|0,z[1]=z[1]+3545052371+(z[0]>>>0<V[0]>>>0?1:0)|0,z[2]=z[2]+886263092+(z[1]>>>0<V[1]>>>0?1:0)|0,z[3]=z[3]+1295307597+(z[2]>>>0<V[2]>>>0?1:0)|0,z[4]=z[4]+3545052371+(z[3]>>>0<V[3]>>>0?1:0)|0,z[5]=z[5]+886263092+(z[4]>>>0<V[4]>>>0?1:0)|0,z[6]=z[6]+1295307597+(z[5]>>>0<V[5]>>>0?1:0)|0,z[7]=z[7]+3545052371+(z[6]>>>0<V[6]>>>0?1:0)|0,this._b=z[7]>>>0<V[7]>>>0?1:0;for(var E=0;E<8;E++){var j=O[E]+z[E],G=j&65535,L=j>>>16,K=((G*G>>>17)+G*L>>>15)+L*L,R=((j&4294901760)*j|0)+((j&65535)*j|0);D[E]=K^R}O[0]=D[0]+(D[7]<<16|D[7]>>>16)+(D[6]<<16|D[6]>>>16)|0,O[1]=D[1]+(D[0]<<8|D[0]>>>24)+D[7]|0,O[2]=D[2]+(D[1]<<16|D[1]>>>16)+(D[0]<<16|D[0]>>>16)|0,O[3]=D[3]+(D[2]<<8|D[2]>>>24)+D[1]|0,O[4]=D[4]+(D[3]<<16|D[3]>>>16)+(D[2]<<16|D[2]>>>16)|0,O[5]=D[5]+(D[4]<<8|D[4]>>>24)+D[3]|0,O[6]=D[6]+(D[5]<<16|D[5]>>>16)+(D[4]<<16|D[4]>>>16)|0,O[7]=D[7]+(D[6]<<8|D[6]>>>24)+D[5]|0}Q.Rabbit=Z._createHelper(F)}(),q.Rabbit})});var AY=d((N$,vY)=>{(function(q,Q,$){if(typeof N$==="object")vY.exports=N$=Q(c(),nq(),fq(),gq(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],Q);else Q(q.CryptoJS)})(N$,function(q){return function(){var Q=q,$=Q.lib,Z=$.StreamCipher,Y=Q.algo,N=[],V=[],D=[],F=Y.RabbitLegacy=Z.extend({_doReset:function(){var O=this._key.words,z=this.cfg.iv,E=this._X=[O[0],O[3]<<16|O[2]>>>16,O[1],O[0]<<16|O[3]>>>16,O[2],O[1]<<16|O[0]>>>16,O[3],O[2]<<16|O[1]>>>16],j=this._C=[O[2]<<16|O[2]>>>16,O[0]&4294901760|O[1]&65535,O[3]<<16|O[3]>>>16,O[1]&4294901760|O[2]&65535,O[0]<<16|O[0]>>>16,O[2]&4294901760|O[3]&65535,O[1]<<16|O[1]>>>16,O[3]&4294901760|O[0]&65535];this._b=0;for(var G=0;G<4;G++)P.call(this);for(var G=0;G<8;G++)j[G]^=E[G+4&7];if(z){var L=z.words,K=L[0],R=L[1],U=(K<<8|K>>>24)&16711935|(K<<24|K>>>8)&4278255360,A=(R<<8|R>>>24)&16711935|(R<<24|R>>>8)&4278255360,J=U>>>16|A&4294901760,v=A<<16|U&65535;j[0]^=U,j[1]^=J,j[2]^=A,j[3]^=v,j[4]^=U,j[5]^=J,j[6]^=A,j[7]^=v;for(var G=0;G<4;G++)P.call(this)}},_doProcessBlock:function(O,z){var E=this._X;P.call(this),N[0]=E[0]^E[5]>>>16^E[3]<<16,N[1]=E[2]^E[7]>>>16^E[5]<<16,N[2]=E[4]^E[1]>>>16^E[7]<<16,N[3]=E[6]^E[3]>>>16^E[1]<<16;for(var j=0;j<4;j++)N[j]=(N[j]<<8|N[j]>>>24)&16711935|(N[j]<<24|N[j]>>>8)&4278255360,O[z+j]^=N[j]},blockSize:4,ivSize:2});function P(){var O=this._X,z=this._C;for(var E=0;E<8;E++)V[E]=z[E];z[0]=z[0]+1295307597+this._b|0,z[1]=z[1]+3545052371+(z[0]>>>0<V[0]>>>0?1:0)|0,z[2]=z[2]+886263092+(z[1]>>>0<V[1]>>>0?1:0)|0,z[3]=z[3]+1295307597+(z[2]>>>0<V[2]>>>0?1:0)|0,z[4]=z[4]+3545052371+(z[3]>>>0<V[3]>>>0?1:0)|0,z[5]=z[5]+886263092+(z[4]>>>0<V[4]>>>0?1:0)|0,z[6]=z[6]+1295307597+(z[5]>>>0<V[5]>>>0?1:0)|0,z[7]=z[7]+3545052371+(z[6]>>>0<V[6]>>>0?1:0)|0,this._b=z[7]>>>0<V[7]>>>0?1:0;for(var E=0;E<8;E++){var j=O[E]+z[E],G=j&65535,L=j>>>16,K=((G*G>>>17)+G*L>>>15)+L*L,R=((j&4294901760)*j|0)+((j&65535)*j|0);D[E]=K^R}O[0]=D[0]+(D[7]<<16|D[7]>>>16)+(D[6]<<16|D[6]>>>16)|0,O[1]=D[1]+(D[0]<<8|D[0]>>>24)+D[7]|0,O[2]=D[2]+(D[1]<<16|D[1]>>>16)+(D[0]<<16|D[0]>>>16)|0,O[3]=D[3]+(D[2]<<8|D[2]>>>24)+D[1]|0,O[4]=D[4]+(D[3]<<16|D[3]>>>16)+(D[2]<<16|D[2]>>>16)|0,O[5]=D[5]+(D[4]<<8|D[4]>>>24)+D[3]|0,O[6]=D[6]+(D[5]<<16|D[5]>>>16)+(D[4]<<16|D[4]>>>16)|0,O[7]=D[7]+(D[6]<<8|D[6]>>>24)+D[5]|0}Q.RabbitLegacy=Z._createHelper(F)}(),q.RabbitLegacy})});var TY=d((D$,IY)=>{(function(q,Q,$){if(typeof D$==="object")IY.exports=D$=Q(c(),nq(),fq(),gq(),Fq());else if(typeof define==="function"&&define.amd)define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],Q);else Q(q.CryptoJS)})(D$,function(q){return function(){var Q=q,$=Q.lib,Z=$.BlockCipher,Y=Q.algo;let N=16,V=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],D=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,2909710000,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409000,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var F={pbox:[],sbox:[]};function P(G,L){let K=L>>24&255,R=L>>16&255,U=L>>8&255,A=L&255,J=G.sbox[0][K]+G.sbox[1][R];return J=J^G.sbox[2][U],J=J+G.sbox[3][A],J}function O(G,L,K){let R=L,U=K,A;for(let J=0;J<N;++J)R=R^G.pbox[J],U=P(G,R)^U,A=R,R=U,U=A;return A=R,R=U,U=A,U=U^G.pbox[N],R=R^G.pbox[N+1],{left:R,right:U}}function z(G,L,K){let R=L,U=K,A;for(let J=N+1;J>1;--J)R=R^G.pbox[J],U=P(G,R)^U,A=R,R=U,U=A;return A=R,R=U,U=A,U=U^G.pbox[1],R=R^G.pbox[0],{left:R,right:U}}function E(G,L,K){for(let v=0;v<4;v++){G.sbox[v]=[];for(let H=0;H<256;H++)G.sbox[v][H]=D[v][H]}let R=0;for(let v=0;v<N+2;v++)if(G.pbox[v]=V[v]^L[R],R++,R>=K)R=0;let U=0,A=0,J=0;for(let v=0;v<N+2;v+=2)J=O(G,U,A),U=J.left,A=J.right,G.pbox[v]=U,G.pbox[v+1]=A;for(let v=0;v<4;v++)for(let H=0;H<256;H+=2)J=O(G,U,A),U=J.left,A=J.right,G.sbox[v][H]=U,G.sbox[v][H+1]=A;return!0}var j=Y.Blowfish=Z.extend({_doReset:function(){if(this._keyPriorReset===this._key)return;var G=this._keyPriorReset=this._key,L=G.words,K=G.sigBytes/4;E(F,L,K)},encryptBlock:function(G,L){var K=O(F,G[L],G[L+1]);G[L]=K.left,G[L+1]=K.right},decryptBlock:function(G,L){var K=z(F,G[L],G[L+1]);G[L]=K.left,G[L+1]=K.right},blockSize:2,keySize:4,ivSize:2});Q.Blowfish=Z._createHelper(j)}(),q.Blowfish})});var XY=d((F$,HY)=>{(function(q,Q,$){if(typeof F$==="object")HY.exports=F$=Q(c(),GQ(),TZ(),XZ(),nq(),BZ(),fq(),g$(),hZ(),H0(),x$(),gZ(),_Z(),SZ(),yQ(),lZ(),gq(),Fq(),dZ(),sZ(),oZ(),rZ(),eZ(),QY(),ZY(),NY(),FY(),OY(),zY(),GY(),UY(),KY(),JY(),AY(),TY());else if(typeof define==="function"&&define.amd)define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],Q);else q.CryptoJS=Q(q.CryptoJS)})(F$,function(q){return q})});var PO=wY(d9(),1);var Eq={GetExtendedPublicKeyUseCase:Symbol.for("GetExtendedPublicKeyUseCase"),GetMasterFingerprintUseCase:Symbol.for("GetMasterFingerprintUseCase"),RegisterWalletUseCase:Symbol.for("RegisterWalletUseCase"),SignMessageUseCase:Symbol.for("SignMessageUseCase"),SignPsbtUseCase:Symbol.for("SignPsbtUseCase"),SignTransactionUseCase:Symbol.for("SignTransactionUseCase"),GetWalletAddressUseCase:Symbol.for("GetWalletAddressUseCase")};var IQ={DataStoreService:Symbol.for("DataStoreService")};var zq={HasherService:Symbol.for("HasherService"),MerkleTreeBuilder:Symbol.for("MerkleTreeBuilder"),MerkleMapBuilder:Symbol.for("MerkleMapBuilder")};var hq={WalletBuilder:Symbol.for("WalletBuilder"),WalletSerializer:Symbol.for("WalletSerializer")};var{defineProperty:z0,getOwnPropertyDescriptor:P0}=Object,G0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?P0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&z0(Q,$,Y),Y},TQ=(q,Q)=>($,Z)=>Q($,Z,q),HQ=class{constructor(q,Q,$,Z){this.merkleTreeBuilder=q,this.merkleMapBuilder=Q,this.walletSerializer=$,this.hasher=Z}merklizeChunks(q,Q){let $=this.merkleTreeBuilder.build(Q);return q.addMerkleTree($),$.getRoot()}merklizeWallet(q,Q){let $=this.walletSerializer.serialize(Q);q.addPreimage(this.hasher.hash($),$),q.addPreimage(this.hasher.hash(Q.descriptorBuffer),Q.descriptorBuffer),q.addMerkleTree(Q.keysTree)}merklizePsbt(q,Q){let $=this.merklizePsbtMap(Q.globalMap).map((N)=>(q.addMerkleMap(N),N.getCommitment())),Z=Q.inputMaps.reduce((N,V)=>{let D=this.merklizePsbtMap(V);return N.chain((F)=>D.map((P)=>(q.addMerkleMap(P),[...F,P.getCommitment()])))},i([])),Y=Q.outputMaps.reduce((N,V)=>{let D=this.merklizePsbtMap(V);return N.chain((F)=>D.map((P)=>(q.addMerkleMap(P),[...F,P.getCommitment()])))},i([]));return $.chain((N)=>Z.chain((V)=>Y.map((D)=>{let F=this.merkleTreeBuilder.build(V),P=this.merkleTreeBuilder.build(D);return q.addMerkleTree(F),q.addMerkleTree(P),{globalCommitment:N,inputsRoot:F.getRoot(),outputsRoot:P.getRoot()}})))}merklizePsbtMap(q){let Q=new Map(Array.from(q.entries()).sort((Y,N)=>Y[0].localeCompare(N[0]))),$=Array.from(Q.keys()).map((Y)=>yq(Y)),Z=Array.from(Q.values()).map((Y)=>Y.data);return this.merkleMapBuilder.build($,Z)}};HQ=G0([o(),TQ(0,S(zq.MerkleTreeBuilder)),TQ(1,S(zq.MerkleMapBuilder)),TQ(2,S(hq.WalletSerializer)),TQ(3,S(zq.HasherService))],HQ);var vZ=()=>new Hq(({bind:q})=>{q(IQ.DataStoreService).to(HQ)});var lq={Dmk:Symbol.for("Dmk"),SessionId:Symbol.for("SessionId"),DmkLoggerFactory:Symbol.for("DmkLoggerFactory")};function jq(q){let Q=q.extract8BitUInt();return Q===void 0?bq:Q<=252?Wq({value:Q,sizeInBytes:1}):Q===253?x.fromNullable(q.extract16BitUInt(!1)).map(($)=>({value:$,sizeInBytes:3})):Q===254?x.fromNullable(q.extract32BitUInt(!1)).map(($)=>({value:$,sizeInBytes:5})):x.fromNullable(q.extract64BitUInt(!1)).chain(($)=>$>Number.MAX_SAFE_INTEGER?bq:Wq({value:Number($),sizeInBytes:9}))}function r(q){let Q=new a;return q<=252?Q.add8BitUIntToData(q):q<=65535?(Q.add8BitUIntToData(253),Q.add16BitUIntToData(q,!1)):q<=4294967295?(Q.add8BitUIntToData(254),Q.add32BitUIntToData(q,!1)):(Q.add8BitUIntToData(255),Q.add64BitUIntToData(q,!1)),x.fromNullable(Q.tryBuild())}class u${constructor(q,Q){this.keys=q,this.values=Q}getCommitment(){let q=r(this.keys.size()).unsafeCoerce();return Uint8Array.from([...q,...this.keys.getRoot(),...this.values.getRoot()])}}var{defineProperty:j0,getOwnPropertyDescriptor:U0}=Object,R0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?U0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&j0(Q,$,Y),Y},K0=(q,Q)=>($,Z)=>Q($,Z,q),XQ=class{constructor(q){this.merkleTreeBuilder=q}build(q,Q){if(q.length!=Q.length)return f(Error("Keys and values should have the same length"));for(let Y=0;Y<q.length-1;Y++)if(Nq(q[Y])>=Nq(q[Y+1]))return f(Error("Keys should be sorted and distinct"));let $=this.merkleTreeBuilder.build(q),Z=this.merkleTreeBuilder.build(Q);return i(new u$($,Z))}};XQ=R0([o(),K0(0,S(zq.MerkleTreeBuilder))],XQ);class wQ{constructor(q,Q){this.value=q,this.hash=Q}parent=bq}class M${constructor(q,Q){this.root=q,this.leaves=Q}getRoot(){return this.root.hash}size(){return this.leaves.length}getLeaves(){return this.leaves}getLeafHash(q){return x.fromNullable(this.leaves[q]?.hash)}getProof(q){return x.fromNullable(this.leaves[q]).map((Q)=>this.proveNode(Q))}proveNode(q){return q.parent.caseOf({Just:(Q)=>Q.leftChild===q?[Q.rightChild.hash,...this.proveNode(Q)]:[Q.leftChild.hash,...this.proveNode(Q)],Nothing:()=>[]})}}class b${constructor(q,Q,$){this.leftChild=q,this.rightChild=Q,this.hash=$}parent=bq}var{defineProperty:L0,getOwnPropertyDescriptor:J0}=Object,v0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?J0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&L0(Q,$,Y),Y},A0=(q,Q)=>($,Z)=>Q($,Z,q),I0=0,T0=1,WQ=class{constructor(q){this.hasher=q}build(q){q=q.map(($)=>Uint8Array.from([I0,...$]));let Q=this.buildTree(q.map(($)=>new wQ($,this.hasher.hash($))));return new M$(Q.root,Q.leaves)}buildTree(q){if(q.length==0)return{root:new wQ(new Uint8Array,Uint8Array.from(Array(32).fill(0))),leaves:[]};if(q.length==1)return{root:q[0],leaves:q};let Q=this.highestPowerOf2LessThan(q.length),$=this.buildTree(q.slice(0,Q)),Z=this.buildTree(q.slice(Q)),Y=$.root,N=Z.root,V=this.hasher.hash(Uint8Array.from([T0,...Y.hash,...N.hash])),D=new b$(Y,N,V);return Y.parent=Wq(D),N.parent=Wq(D),{root:D,leaves:[...$.leaves,...Z.leaves]}}highestPowerOf2LessThan(q){if(q<2)throw Error("Expected n >= 2");return this.isPowerOf2(q)?q/2:1<<Math.floor(Math.log2(q))}isPowerOf2(q){return(q&q-1)===0}};WQ=v0([o(),A0(0,S(zq.HasherService))],WQ);var V$=wY(XY(),1);class _${hash(q){let Q=V$.SHA256(V$.lib.WordArray.create(q));return yq(Q.toString())}}var WY=()=>new Hq(({bind:q})=>{q(zq.HasherService).to(_$),q(zq.MerkleTreeBuilder).to(WQ),q(zq.MerkleMapBuilder).to(XQ)});var Dq={KeySerializer:Symbol.for("KeySerializer"),KeyPairSerializer:Symbol.for("KeyPairSerializer"),PsbtMapper:Symbol.for("PsbtMapper"),PsbtV2Normalizer:Symbol.for("PsbtV2Normalizer"),PsbtSerializer:Symbol.for("PsbtSerializer"),ValueFactory:Symbol.for("ValueFactory"),ValueParser:Symbol.for("ValueParser")};class Vq{constructor(q,Q=new Uint8Array){this.keyType=q,this.keyData=Q}toHexaString(){let q=new a().addBufferToData(r(this.keyType).unsafeCoerce()).addBufferToData(this.keyData).build();return Nq(q,!1)}}class C${deserialize(q){return jq(q).filter((Q)=>Q.value>0).chain((Q)=>jq(q).chain(($)=>x.fromNullable(q.extractFieldByLength(Q.value-$.sizeInBytes)).map((Z)=>new Vq($.value,Z))))}serialize(q,Q){r(Q.keyType).ifJust(($)=>r($.length+Q.keyData.length).ifJust((Z)=>{q.addBufferToData(Z),q.addBufferToData($),q.addBufferToData(Q.keyData)}))}}class O${constructor(q,Q){this.key=q,this.value=Q}}class Oq{constructor(q){this.data=q}}var{defineProperty:X0,getOwnPropertyDescriptor:w0}=Object,W0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?w0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&X0(Q,$,Y),Y},B0=(q,Q)=>($,Z)=>Q($,Z,q),E$=class{constructor(q){this.keySerializer=q}deserialize(q){return this.keySerializer.deserialize(q).chain((Q)=>jq(q).chain(($)=>x.fromNullable(q.extractFieldByLength($.value)).map((Z)=>new O$(Q,new Oq(Z)))))}serialize(q,Q){r(Q.value.data.length).ifJust(($)=>{this.keySerializer.serialize(q,Q.key),q.addBufferToData($),q.addBufferToData(Q.value.data)})}deserializeMap(q){let Q=new Map;for(;this.deserialize(q).ifJust(($)=>Q.set($.key.toHexaString(),$.value)).isJust(););return Q}serializeMap(q,Q){for(let[$,Z]of[...Q]){let Y=yq($),N=new Vq(Y[0],Y.slice(1)),V=new O$(N,Z);this.serialize(q,V)}q.add8BitUIntToData(0)}};E$=W0([B0(0,S(Dq.KeySerializer))],E$);import{Psbt as b0}from"bitcoinjs-lib";var{defineProperty:k0,getOwnPropertyDescriptor:u0}=Object,M0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?u0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&k0(Q,$,Y),Y},BY=(q,Q)=>($,Z)=>Q($,Z,q),z$=class{constructor(q,Q){this.psbtSerializer=q,this.psbtV2Normalizer=Q}map(q){if(q instanceof b0&&(q=q.toHex()),typeof q=="string"){let Q=yq(q);if(Q!==null)q=Q;else if(Q=kY(q),Q!==null)q=Q;else return f(Error("PSBT mapper: format not supported"))}return this.psbtSerializer.deserialize(q).chain((Q)=>this.psbtV2Normalizer.normalize(Q))}};z$=M0([o(),BY(0,S(Dq.PsbtSerializer)),BY(1,S(Dq.PsbtV2Normalizer))],z$);import{Transaction as C0}from"bitcoinjs-lib";var Zq=((q)=>(q[q.UNSIGNED_TX=0]="UNSIGNED_TX",q[q.XPUB=1]="XPUB",q[q.TX_VERSION=2]="TX_VERSION",q[q.FALLBACK_LOCKTIME=3]="FALLBACK_LOCKTIME",q[q.INPUT_COUNT=4]="INPUT_COUNT",q[q.OUTPUT_COUNT=5]="OUTPUT_COUNT",q[q.TX_MODIFIABLE=6]="TX_MODIFIABLE",q[q.VERSION=251]="VERSION",q))(Zq||{}),p=((q)=>(q[q.NON_WITNESS_UTXO=0]="NON_WITNESS_UTXO",q[q.WITNESS_UTXO=1]="WITNESS_UTXO",q[q.PARTIAL_SIG=2]="PARTIAL_SIG",q[q.SIGHASH_TYPE=3]="SIGHASH_TYPE",q[q.REDEEM_SCRIPT=4]="REDEEM_SCRIPT",q[q.WITNESS_SCRIPT=5]="WITNESS_SCRIPT",q[q.BIP32_DERIVATION=6]="BIP32_DERIVATION",q[q.FINAL_SCRIPTSIG=7]="FINAL_SCRIPTSIG",q[q.FINAL_SCRIPTWITNESS=8]="FINAL_SCRIPTWITNESS",q[q.POR_COMMITMENT=9]="POR_COMMITMENT",q[q.RIPEMD160=10]="RIPEMD160",q[q.SHA256=11]="SHA256",q[q.HASH160=12]="HASH160",q[q.HASH256=13]="HASH256",q[q.PREVIOUS_TXID=14]="PREVIOUS_TXID",q[q.OUTPUT_INDEX=15]="OUTPUT_INDEX",q[q.SEQUENCE=16]="SEQUENCE",q[q.REQUIRED_TIME_LOCKTIME=17]="REQUIRED_TIME_LOCKTIME",q[q.REQUIRED_HEIGHT_LOCKTIME=18]="REQUIRED_HEIGHT_LOCKTIME",q[q.TAP_KEY_SIG=19]="TAP_KEY_SIG",q[q.TAP_SCRIPT_SIG=20]="TAP_SCRIPT_SIG",q[q.TAP_LEAF_SCRIPT=21]="TAP_LEAF_SCRIPT",q[q.TAP_BIP32_DERIVATION=22]="TAP_BIP32_DERIVATION",q[q.TAP_INTERNAL_KEY=23]="TAP_INTERNAL_KEY",q[q.TAP_MERKLE_ROOT=24]="TAP_MERKLE_ROOT",q[q.MUSIG2_PARTICIPANT_PUBKEYS=26]="MUSIG2_PARTICIPANT_PUBKEYS",q[q.MUSIG2_PUB_NONCE=27]="MUSIG2_PUB_NONCE",q[q.MUSIG2_PARTIAL_SIG=28]="MUSIG2_PARTIAL_SIG",q))(p||{}),iq=((q)=>(q[q.REDEEM_SCRIPT=0]="REDEEM_SCRIPT",q[q.WITNESS_SCRIPT=1]="WITNESS_SCRIPT",q[q.BIP_32_DERIVATION=2]="BIP_32_DERIVATION",q[q.AMOUNT=3]="AMOUNT",q[q.SCRIPT=4]="SCRIPT",q[q.TAP_INTERNAL_KEY=5]="TAP_INTERNAL_KEY",q[q.TAP_TREE=6]="TAP_TREE",q[q.TAP_BIP32_DERIVATION=7]="TAP_BIP32_DERIVATION",q[q.MUSIG2_PARTICIPANT_PUBKEYS=8]="MUSIG2_PARTICIPANT_PUBKEYS",q[q.DNSSEC_PROOF=53]="DNSSEC_PROOF",q))(iq||{});class S${constructor(q=new Map,Q=[],$=[]){this.globalMap=q,this.inputMaps=Q,this.outputMaps=$}getGlobalValue(q){return x.fromNullable(this.globalMap.get(new Vq(q).toHexaString()))}getInputValue(q,Q){return x.fromNullable(this.inputMaps[q]).chain(($)=>x.fromNullable($.get(new Vq(Q).toHexaString())))}getInputKeyDatas(q,Q){let $=new Vq(Q).toHexaString();return x.fromNullable(this.inputMaps[q]).map((Z)=>Array.from(Z.keys()).filter((Y)=>Y.startsWith($)).map((Y)=>Y.slice(2)))}getOutputValue(q,Q){return x.fromNullable(this.outputMaps[q]).chain(($)=>x.fromNullable($.get(new Vq(Q).toHexaString())))}setGlobalValue(q,Q){this.globalMap.set(new Vq(q).toHexaString(),Q)}setInputValue(q,Q,$,Z){this.inputMaps[q]?.set(new Vq(Q,Z).toHexaString(),$)}getKeyDataInputValue(q,Q,$){return x.fromNullable(this.inputMaps[q]).chain((Z)=>x.fromNullable(Z.get(new Vq(Q,$).toHexaString())))}setOutputValue(q,Q,$){this.outputMaps[q]?.set(new Vq(Q).toHexaString(),$)}deleteInputEntries(q,Q){x.fromNullable(this.inputMaps[q]).map(($)=>{Q.forEach((Z)=>{let Y=new Vq(Z);$.forEach((N,V,D)=>{V.startsWith(Y.toHexaString())&&D.delete(V)})})})}}var{defineProperty:g0,getOwnPropertyDescriptor:x0}=Object,_0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?x0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&g0(Q,$,Y),Y},uY=(q,Q)=>($,Z)=>Q($,Z,q),MY=Uint8Array.from([112,115,98,116,255]),P$=class{constructor(q,Q){this.valueParser=q,this.keyPairSerializer=Q}getValue(q,Q){return x.fromNullable(q.get(new Vq(Q).toHexaString()))}sortMap(q){return new Map(Array.from(q.entries()).sort((Q,$)=>Q[0].localeCompare($[0])))}deserialize(q){let Q=new Bq(q);for(let D of MY)if(Q.extract8BitUInt()!==D)return f(Error("PSBT deserializer: Invalid magic bytes"));let $=[];for(;Q.getUnparsedRemainingLength();)$.push(this.keyPairSerializer.deserializeMap(Q));if($.length===0)return f(Error("PSBT deserializer: No map found"));let Z=$[0],Y=this.getValue(Z,Zq.UNSIGNED_TX).chain((D)=>kq.encase(()=>C0.fromHex(Nq(D.data,!1))).toMaybe()),N=this.getValue(Z,Zq.INPUT_COUNT).chain((D)=>this.valueParser.getVarint(D.data)).alt(Y.map((D)=>D.ins.length)),V=this.getValue(Z,Zq.OUTPUT_COUNT).chain((D)=>this.valueParser.getVarint(D.data)).alt(Y.map((D)=>D.outs.length));if(N.isJust()&&V.isJust()){if($.length===1+N.extract()+V.extract()){let D=$.slice(1,1+N.extract()),F=$.slice(1+N.extract());return i(new S$(Z,D,F))}return f(Error("PSBT deserializer: map count don't match input and output count"))}return f(Error("PSBT deserializer: input or output count not found in global map or transaction"))}serialize(q){let Q=new a;return q.globalMap=this.sortMap(q.globalMap),q.inputMaps=q.inputMaps.map(($)=>this.sortMap($)),q.outputMaps=q.outputMaps.map(($)=>this.sortMap($)),Q.addBufferToData(MY),this.keyPairSerializer.serializeMap(Q,q.globalMap),q.inputMaps.forEach(($)=>this.keyPairSerializer.serializeMap(Q,$)),q.outputMaps.forEach(($)=>this.keyPairSerializer.serializeMap(Q,$)),Q.build()}};P$=_0([uY(0,S(Dq.ValueParser)),uY(1,S(Dq.KeyPairSerializer))],P$);import{Transaction as y0}from"bitcoinjs-lib";var{defineProperty:S0,getOwnPropertyDescriptor:m0}=Object,h0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?m0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&S0(Q,$,Y),Y},bY=(q,Q)=>($,Z)=>Q($,Z,q),G$=class{constructor(q,Q){this.valueParser=q,this.valueFactory=Q}normalize(q){let Q=q.getGlobalValue(Zq.VERSION).chain((N)=>this.valueParser.getInt32LE(N.data)).orDefault(0);if(Q===2)return i(q);if(Q!==0)return f(Error("PSBT normalizer: unsupported PSBT version"));let $=q.getGlobalValue(Zq.UNSIGNED_TX).toEither(Error("PSBT normalizer: PSBTv0 should contain a transaction")).chain((N)=>kq.encase(()=>y0.fromHex(Nq(N.data,!1))).mapLeft((V)=>Error(`PSBT normalizer: failed to parse transaction (${V})`)));if($.isLeft())return $;let Z=$.unsafeCoerce(),Y=[[Zq.VERSION,this.valueFactory.fromInt32LE(2)],[Zq.TX_VERSION,this.valueFactory.fromInt32LE(Z.version)],[Zq.FALLBACK_LOCKTIME,this.valueFactory.fromUInt32LE(Z.locktime)],[Zq.INPUT_COUNT,this.valueFactory.fromVarint(Z.ins.length)],[Zq.OUTPUT_COUNT,this.valueFactory.fromVarint(Z.outs.length)]].reduce((N,[V,D])=>(D.ifJust((F)=>q.setGlobalValue(V,F)),N&&D.isJust()),!0);for(let N=0;N<Z.ins.length;N++)Y=[[p.PREVIOUS_TXID,Wq(new Oq(Z.ins[N].hash))],[p.OUTPUT_INDEX,this.valueFactory.fromUInt32LE(Z.ins[N].index)],[p.SEQUENCE,this.valueFactory.fromUInt32LE(Z.ins[N].sequence)]].reduce((V,[D,F])=>(F.ifJust((P)=>q.setInputValue(N,D,P)),V&&F.isJust()),Y);for(let N=0;N<Z.outs.length;N++)Y=[[iq.AMOUNT,this.valueFactory.fromInt64LE(Z.outs[N].value)],[iq.SCRIPT,Wq(new Oq(Z.outs[N].script))]].reduce((V,[D,F])=>(F.ifJust((P)=>q.setOutputValue(N,D,P)),V&&F.isJust()),Y);return q.globalMap.delete(new Vq(Zq.UNSIGNED_TX).toHexaString()),Y?i(q):f(Error("PSBT normalizer: failed to update the ¨PSBT"))}};G$=h0([o(),bY(0,S(Dq.ValueParser)),bY(1,S(Dq.ValueFactory))],G$);class m${fromInt32LE(q){return x.fromNullable(new a().add32BitIntToData(q,!1).tryBuild()).map((Q)=>new Oq(Q))}fromUInt32LE(q){return x.fromNullable(new a().add32BitUIntToData(q,!1).tryBuild()).map((Q)=>new Oq(Q))}fromInt64LE(q){return x.fromNullable(new a().add64BitIntToData(q,!1).tryBuild()).map((Q)=>new Oq(Q))}fromVarint(q){return r(q).map((Q)=>new Oq(Q))}}class h${getInt32LE(q){return x.fromNullable(new Bq(q).extract32BitInt(!1))}getUInt32LE(q){return x.fromNullable(new Bq(q).extract32BitUInt(!1))}getInt64LE(q){return x.fromNullable(new Bq(q).extract64BitInt(!1))}getVarint(q){return jq(new Bq(q)).map((Q)=>Q.value)}}var gY=()=>new Hq(({bind:q})=>{q(Dq.KeySerializer).to(C$),q(Dq.KeyPairSerializer).to(E$),q(Dq.PsbtMapper).to(z$),q(Dq.PsbtV2Normalizer).to(G$),q(Dq.PsbtSerializer).to(P$),q(Dq.ValueFactory).to(m$),q(Dq.ValueParser).to(h$)});var Pq={AppBinder:Symbol.for("AppBinder")};var{defineProperty:l0,getOwnPropertyDescriptor:n0}=Object,f0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?n0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&l0(Q,$,Y),Y},p0=(q,Q)=>($,Z)=>Q($,Z,q),j$=class{constructor(q){this._appBinder=q}execute(q,Q){return this._appBinder.getExtendedPublicKey({derivationPath:q,checkOnDevice:Q.checkOnDevice,skipOpenApp:Q.skipOpenApp})}};j$=f0([o(),p0(0,S(Pq.AppBinder))],j$);var{defineProperty:d0,getOwnPropertyDescriptor:c0}=Object,s0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?c0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&d0(Q,$,Y),Y},i0=(q,Q)=>($,Z)=>Q($,Z,q),U$=class{constructor(q){this._appBinder=q}execute(q){return this._appBinder.getMasterFingerprint({skipOpenApp:q.skipOpenApp})}};U$=s0([o(),i0(0,S(Pq.AppBinder))],U$);var{defineProperty:o0,getOwnPropertyDescriptor:a0}=Object,r0=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?a0(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&o0(Q,$,Y),Y},t0=(q,Q)=>($,Z)=>Q($,Z,q),R$=class{_appBinder;constructor(q){this._appBinder=q}execute(q,Q,$,Z,Y){return this._appBinder.getWalletAddress({wallet:Q,checkOnDevice:q,change:$,addressIndex:Z,skipOpenApp:Y})}};R$=r0([o(),t0(0,S(Pq.AppBinder))],R$);var{defineProperty:e0,getOwnPropertyDescriptor:q9}=Object,Q9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?q9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&e0(Q,$,Y),Y},$9=(q,Q)=>($,Z)=>Q($,Z,q),K$=class{constructor(q){this._appBinder=q}execute(q,Q){return this._appBinder.registerWallet({wallet:q,skipOpenApp:Q})}};K$=Q9([o(),$9(0,S(Pq.AppBinder))],K$);var{defineProperty:Z9,getOwnPropertyDescriptor:Y9}=Object,N9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?Y9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&Z9(Q,$,Y),Y},D9=(q,Q)=>($,Z)=>Q($,Z,q),L$=class{_appBinder;constructor(q){this._appBinder=q}execute(q,Q,$){return this._appBinder.signMessage({derivationPath:q,message:Q,skipOpenApp:$})}};L$=N9([o(),D9(0,S(Pq.AppBinder))],L$);var{defineProperty:F9,getOwnPropertyDescriptor:V9}=Object,O9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?V9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&F9(Q,$,Y),Y},E9=(q,Q)=>($,Z)=>Q($,Z,q),J$=class{_appBinder;constructor(q){this._appBinder=q}execute(q,Q,$){return this._appBinder.signPsbt({wallet:q,psbt:Q,skipOpenApp:$})}};J$=O9([o(),E9(0,S(Pq.AppBinder))],J$);var{defineProperty:z9,getOwnPropertyDescriptor:P9}=Object,G9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?P9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&z9(Q,$,Y),Y},j9=(q,Q)=>($,Z)=>Q($,Z,q),v$=class{_appBinder;constructor(q){this._appBinder=q}execute(q,Q,$){return this._appBinder.signTransaction({wallet:q,psbt:Q,skipOpenApp:$})}};v$=G9([o(),j9(0,S(Pq.AppBinder))],v$);var xY=()=>new Hq(({bind:q})=>{q(Eq.GetExtendedPublicKeyUseCase).to(j$),q(Eq.GetMasterFingerprintUseCase).to(U$),q(Eq.RegisterWalletUseCase).to(K$),q(Eq.SignMessageUseCase).to(L$),q(Eq.SignPsbtUseCase).to(J$),q(Eq.SignTransactionUseCase).to(v$),q(Eq.GetWalletAddressUseCase).to(R$)});var _Y=((q)=>(q.LEGACY="pkh(@0/**)",q.NESTED_SEGWIT="sh(wpkh(@0/**))",q.NATIVE_SEGWIT="wpkh(@0/**)",q.TAPROOT="tr(@0/**)",q))(_Y||{});class CY{constructor(q,Q){this.derivationPath=q,this.template=Q}}class QQ{constructor(q,Q,$,Z){this.name=q,this.descriptorTemplate=Q,this.keys=$,this.hmac=Z}}class SY{constructor(q,Q,$){this.name=q,this.descriptorTemplate=Q,this.keys=$}}class A${name;descriptorTemplate;keys;hmac;keysTree;descriptorBuffer;constructor({name:q,descriptorTemplate:Q,keys:$,hmac:Z,keysTree:Y,descriptorBuffer:N}){this.name=q,this.descriptorTemplate=Q,this.keys=$,this.hmac=Z,this.keysTree=Y,this.descriptorBuffer=N}}var{defineProperty:U9,getOwnPropertyDescriptor:R9}=Object,K9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?R9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&U9(Q,$,Y),Y},L9=(q,Q)=>($,Z)=>Q($,Z,q),I$=class{constructor(q){this.merkleTreeBuilder=q}fromRegisteredWallet(q){let Q=new TextEncoder,$=q.keys.map((N)=>Q.encode(N)),Z=this.merkleTreeBuilder.build($),Y=Q.encode(q.descriptorTemplate);return new A$({name:q.name,descriptorTemplate:q.descriptorTemplate,keys:q.keys,hmac:q.hmac,keysTree:Z,descriptorBuffer:Y})}fromDefaultWallet(q,Q,$){let Z=`${`[${Nq(q,!1)}/${$.derivationPath}]`}${Q}`,N=new Uint8Array(32).fill(0);return this.fromRegisteredWallet(new QQ("",$.template,[Z],N))}fromWalletPolicy(q){let Q=new TextEncoder,$=q.keys.map((V)=>Q.encode(V)),Z=this.merkleTreeBuilder.build($),Y=Q.encode(q.descriptorTemplate),N=new Uint8Array(32).fill(0);return new A$({name:q.name,descriptorTemplate:q.descriptorTemplate,keys:q.keys,hmac:N,keysTree:Z,descriptorBuffer:Y})}};I$=K9([o(),L9(0,S(zq.MerkleTreeBuilder))],I$);var{defineProperty:J9,getOwnPropertyDescriptor:v9}=Object,A9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?v9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&J9(Q,$,Y),Y},I9=(q,Q)=>($,Z)=>Q($,Z,q),T9=2,T$=class{constructor(q){this.hasher=q}serialize(q){let Q=r(q.descriptorBuffer.length).unsafeCoerce(),$=r(q.keys.length).unsafeCoerce();return new a().add8BitUIntToData(T9).encodeInLVFromAscii(q.name).addBufferToData(Q).addBufferToData(this.hasher.hash(q.descriptorBuffer)).addBufferToData($).addBufferToData(q.keysTree.getRoot()).build()}getId(q){return this.hasher.hash(this.serialize(q))}};T$=A9([o(),I9(0,S(zq.HasherService))],T$);var mY=()=>new Hq(({bind:q})=>{q(hq.WalletBuilder).to(I$),q(hq.WalletSerializer).to(T$)});var Uq={"6a80":{message:"Incorrect data"},"6a82":{message:"Request not supported"},6985:{message:"Rejected by user"},"6a86":{message:"Either P1 or P2 is incorrect"},"6a87":{message:"Lc or minimum APDU length is incorrect"},"6d00":{message:"No command exists with the provided INS"},"6e00":{message:"Bad CLA used for this application"},b000:{message:"Wrong response length (buffer size problem)"},b007:{message:"Aborted due to unexpected state reached"},b008:{message:"Invalid signature or HMAC"}};class yY extends hY{constructor(q){super({tag:"BtcAppCommandError",...q})}}var Rq=(q)=>new yY(q);var Kq=1,xq=32,y$=64,pq=((q)=>(q[q.YIELD=16]="YIELD",q[q.GET_PREIMAGE=64]="GET_PREIMAGE",q[q.GET_MERKLE_LEAF_PROOF=65]="GET_MERKLE_LEAF_PROOF",q[q.GET_MERKLE_LEAF_INDEX=66]="GET_MERKLE_LEAF_INDEX",q[q.GET_MORE_ELEMENTS=160]="GET_MORE_ELEMENTS",q))(pq||{}),l$=Uint8Array.from([224,0]);var H9=32,X9=32,w9=32,W9=32;class Yq{static isContinueResponse(q){return q.statusCode[0]===l$[0]&&q.statusCode[1]===l$[1]}static isSuccessResponse(q){return lY.isSuccessResponse(q)||Yq.isContinueResponse(q)}static getSignature(q){let Q=new dq(q.data),$=Q.extract8BitUInt();if($===void 0)return m({error:new e("V is missing")});let Z=Q.encodeToHexaString(Q.extractFieldByLength(H9),!0);if(!Z)return m({error:new e("R is missing")});let Y=Q.encodeToHexaString(Q.extractFieldByLength(X9),!0);return Y?m({data:{v:$,r:Z,s:Y}}):m({error:new e("S is missing")})}static getAddress(q){let Q=new dq(q.data);if(!q.data)return m({error:new e("Failed to extract address from response")});let $=Q.encodeToString(q.data.data);return m({data:{address:$}})}static getWalletRegistration(q){let Q=new dq(q.data),$=Q.extractFieldByLength(w9);if(!$)return m({error:new e("Wallet ID is missing")});let Z=Q.extractFieldByLength(W9);return Z?m({data:{walletId:$,walletHmac:Z}}):m({error:new e("Wallet HMAC is missing")})}}class jQ{constructor(q,Q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this._args=q,this._errorHelper=Q}name="getExtendedPublicKey";getApdu(){let{checkOnDevice:q,derivationPath:Q}=this._args,$={cla:225,ins:0,p1:0,p2:Kq},Z=new Lq($).add8BitUIntToData(q?1:0),Y=H$.splitPath(Q);return Z.add8BitUIntToData(Y.length),Y.forEach((N)=>{Z.add32BitUIntToData(N)}),Z.build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefaultLazy(()=>{let Q=new dq(q),$=Q.getUnparsedRemainingLength();if($<=0)return m({error:new e("Invalid response length")});let Z=Q.encodeToString(Q.extractFieldByLength($));return m({data:{extendedPublicKey:Z}})})}}var B9=4;class UQ{constructor(q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this._errorHelper=q}name="getMasterFingerprint";getApdu(){return new Lq({cla:225,ins:5,p1:0,p2:Kq}).build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefaultLazy(()=>{let Q=new dq(q).extractFieldByLength(B9);return Q?m({data:{masterFingerprint:Q}}):m({error:new e("Master fingerprint is missing")})})}}var cq=Object.freeze({OPEN_APP:"signer.btc.steps.openApp",PREPARE_WALLET_POLICY:"signer.btc.steps.prepareWalletPolicy",BUILD_PSBT:"signer.btc.steps.buildPsbt",SIGN_PSBT:"signer.btc.steps.signPsbt"});var uq="Bitcoin";class _q{merkleTrees=new Map;preimages=new Map;addPreimage(q,Q){this.preimages.set(Nq(q),Q)}addMerkleTree(q){for(let Q of q.getLeaves())this.preimages.set(Nq(Q.hash),Q.value);this.merkleTrees.set(Nq(q.getRoot()),q)}addMerkleMap(q){this.addMerkleTree(q.keys),this.addMerkleTree(q.values)}getPreimage(q){return x.fromNullable(this.preimages.get(Nq(q)))}getMerkleLeafIndex(q,Q){return x.fromNullable(this.merkleTrees.get(Nq(q))).chain(($)=>{let Z=$.getLeaves().findIndex((Y)=>Nq(Y.hash)===Nq(Q));return Z===-1?bq:Wq(Z)})}getMerkleProof(q,Q){return x.fromNullable(this.merkleTrees.get(Nq(q))).chain(($)=>$.getLeafHash(Q).chain((Z)=>$.getProof(Q).map((Y)=>({leafHash:Z,proof:Y}))))}}class n${constructor(q,Q,$,Z=()=>new _q){this._args=q,this._dataStoreService=Q,this._psbtMapper=$,this._dataStoreFactory=Z}async run(){let q=this._dataStoreFactory(),Q;return await X$(async({liftEither:$})=>(Q=await $(this._psbtMapper.map(this._args.psbt)),this._dataStoreService.merklizeWallet(q,this._args.wallet),$(this._dataStoreService.merklizePsbt(q,Q)))).caseOf({Left:($)=>m({error:new oq({error:$})}),Right:($)=>m({data:{psbtCommitment:$,dataStore:q,psbt:Q}})})}}class RQ{constructor(q,Q,$){this._api=q,this._args=Q,this._walletBuilder=$}isDefaultWallet(q){return"derivationPath"in q}async run(){let{wallet:q}=this._args;if(!this.isDefaultWallet(q))return Promise.resolve(m({data:this._walletBuilder.fromRegisteredWallet(q)}));let Q=await this._api.sendCommand(new jQ({checkOnDevice:!1,derivationPath:q.derivationPath}));if(!Qq(Q))return Q;let $=await this._api.sendCommand(new UQ);return Qq($)?m({data:this._walletBuilder.fromDefaultWallet($.data.masterFingerprint,Q.data.extendedPublicKey,q)}):$}}class f${constructor(q,Q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this._args=q,this._errorHelper=Q}name="signPsbt";getApdu(){let q=new Lq({cla:225,ins:4,p1:0,p2:Kq}),{globalCommitment:Q,inputsCount:$,inputsRoot:Z,outputsCount:Y,outputsRoot:N,walletHmac:V,walletId:D}=this._args;return q.addBufferToData(Q).add8BitUIntToData($).addBufferToData(Z).add8BitUIntToData(Y).addBufferToData(N).addBufferToData(D).addBufferToData(V).build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefault(m({data:q}))}}class p${constructor(q,Q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this._args=q,this._errorHelper=Q}name="continue";getApdu(){return new Lq({cla:248,ins:1,p1:0,p2:Kq}).addBufferToData(this._args.payload).build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefault(m({data:q}))}}class vq{_tag="ClientCommandHandlerError";originalError;constructor(q){q instanceof Error?this.originalError=q:q!==void 0&&(this.originalError=Error(String(q)))}}var nY=(q,Q)=>{let $=q.slice(1,xq+1),Z=q.slice(xq+1,xq*2+1);return Q.dataStore.getMerkleLeafIndex($,Z).mapOrDefault((Y)=>{let N=r(Y).unsafeCoerce(),V=new Uint8Array(1+N.length);return V[0]=1,V.set(N,1),i(V)},i(Uint8Array.from([0])))};var fY=(q,Q)=>{let $=q.slice(1,xq+1),Z=new Bq(q.slice(xq+1));return jq(Z).mapOrDefault(()=>jq(Z).mapOrDefault((Y)=>Q.dataStore.getMerkleProof($,Y.value).mapOrDefault(({proof:N,leafHash:V})=>{let D=$Q-xq-1-1,F=Math.floor(D/xq),P=Math.min(N.length,F),O=new a().addBufferToData(V).add8BitUIntToData(N.length).add8BitUIntToData(P);for(let E=0;E<P;E++){let j=N[E];j&&O.addBufferToData(j)}let z=O.build();if(P<N.length)for(let E=P;E<N.length;E++){let j=N[E];j instanceof Uint8Array&&Q.queue.push(j)}return i(z)},f(new vq("Merkle proof not found in dataStore"))),f(new vq("Failed to extract the proofIndex varint"))),f(new vq("Failed to extract the numberOfElements varint")))};var pY=(q,Q)=>{if(Q.queue.length===0)return f(new vq("No more elements in queue"));let $=Q.queue[0]?.length;if($===void 0)return f(new vq("Queue is empty"));if(!Q.queue.every((P)=>P.length===$))return f(new vq("Elements in queue have varying lengths"));let Z=$Q-1-1,Y=Math.floor(Z/$),N=Math.min(Y,Q.queue.length),V=2+N*$,D=new Uint8Array(V),F=0;D[F++]=N,D[F++]=$;for(let P=0;P<N;P++){let O=Q.queue[P];O&&(D.set(O,F),F+=$)}return Q.queue.splice(0,N),i(D)};var dY=(q,Q)=>{let $=q.slice(2,34),Z=Q.dataStore.getPreimage($);if(Z.isJust()){let Y=Z.extract(),N=r(Y.length).unsafeCoerce(),V=$Q-N.length-1,D=Math.min(V,Y.length),F=new a().addBufferToData(N).add8BitUIntToData(D).addBufferToData(Y.slice(0,D)).build();if(D<Y.length)for(let P=D;P<Y.length;P++)Q.queue.push(Y.slice(P,P+1));return i(F)}return f(new vq("Preimage not found in dataStore"))};var cY=(q,Q)=>{let $=q.slice(1);return Q.yieldedResults.push($),i(new Uint8Array([]))};class d${getClientCommandPayload(q,Q){let $=q[0];if($===void 0||!Object.values(pq).includes($))return f(new vq(`Unexpected command code ${$}`));switch($){case pq.YIELD:return cY(q,Q);case pq.GET_PREIMAGE:return dY(q,Q);case pq.GET_MERKLE_LEAF_PROOF:return fY(q,Q);case pq.GET_MERKLE_LEAF_INDEX:return nY(q,Q);case pq.GET_MORE_ELEMENTS:return pY(q,Q);default:return f(new vq(`Unhandled command code ${$}`))}}}class Cq{constructor(q,Q,$=new d$){this._api=q,this._clientCommandInterpreter=$,this._context={dataStore:Q,queue:[],yieldedResults:[]}}_context;async run(q){let Q=q;for(;this.isApduResult(Q)&&Yq.isContinueResponse(Q.data);)Q=await this._clientCommandInterpreter.getClientCommandPayload(Q.data.data,this._context).caseOf({Left:($)=>Promise.resolve(m({error:new oq($)})),Right:($)=>this._api.sendCommand(new p$({payload:$}))});return Q}getYieldedResults(){return this._context.yieldedResults}isApduResult=(q)=>Qq(q)&&typeof q.data=="object"&&q.data!==null&&("statusCode"in q.data)&&("data"in q.data)}var k9=4294967295,u9=4294967294,M9=65535,c$=32,KQ=33,b9=64,g9=32,x9=66;class s${constructor(q,Q,$,Z,Y=(N,V)=>new Cq(N,V)){this._api=q,this._args=Q,this._walletSerializer=$,this._valueParser=Z,this._continueTaskFactory=Y}async run(){let{psbtCommitment:{globalCommitment:q,inputsRoot:Q,outputsRoot:$},psbt:Z,wallet:Y,dataStore:N}=this._args,V=await this._api.sendCommand(new f$({globalCommitment:q,inputsRoot:Q,outputsRoot:$,inputsCount:Z.getGlobalValue(Zq.INPUT_COUNT).chain((P)=>this._valueParser.getVarint(P.data)).orDefault(0),outputsCount:Z.getGlobalValue(Zq.OUTPUT_COUNT).chain((P)=>this._valueParser.getVarint(P.data)).orDefault(0),walletId:this._walletSerializer.getId(Y),walletHmac:Y.hmac})),D=this._continueTaskFactory(this._api,N),F=await D.run(V);if(Qq(F)){let P=D.getYieldedResults(),O=[];for(let z of P){let E=this._decodePsbtSignature(z);if(E.isLeft())return m({error:E.extract()});E.isRight()&&O.push(E.extract())}return m({data:O})}return F}_decodePsbtSignature(q){let Q=new Bq(q),$=jq(Q).map((Y)=>Y.value).toEither(new e("Invalid input index or tag"));if($.isLeft())return $;let Z=$.unsafeCoerce();return Z===k9?this._decodeMusigPubNonce(Q):Z===u9?this._decodeMusigPartialSignature(Q):Z<=M9?this._decodePartialSignature(Q,Z):f(new e(`Invalid input index or tag returned: ${Z}`))}_decodeMusigPubNonce(q){let Q=jq(q).map((V)=>V.value).toEither(new e("Invalid input index")),$=x.fromNullable(q.extractFieldByLength(x9)).toEither(new e("Pubnonce is missing")),Z=x.fromNullable(q.extractFieldByLength(KQ)).toEither(new e("Participant pubkey is missing")),Y=x.fromNullable(q.extractFieldByLength(KQ)).toEither(new e("Aggregated pubkey is missing")),N=x.fromNullable(q.extractFieldByLength(q.getUnparsedRemainingLength())).orDefault(Uint8Array.from([]));return Q.chain((V)=>kq.sequence([$,Z,Y]).map((D)=>({inputIndex:V,pubnonce:D[0],participantPubkey:D[1],aggregatedPubkey:D[2],tapleafHash:N})))}_decodeMusigPartialSignature(q){let Q=jq(q).map((V)=>V.value).toEither(new e("Invalid input index")),$=x.fromNullable(q.extractFieldByLength(g9)).toEither(new e("Partial signature is missing")),Z=x.fromNullable(q.extractFieldByLength(KQ)).toEither(new e("Participant pubkey is missing")),Y=x.fromNullable(q.extractFieldByLength(KQ)).toEither(new e("Aggregated pubkey is missing")),N=x.fromNullable(q.extractFieldByLength(q.getUnparsedRemainingLength())).orDefault(Uint8Array.from([]));return Q.chain((V)=>kq.sequence([$,Z,Y]).map((D)=>({inputIndex:V,partialSignature:D[0],participantPubkey:D[1],aggregatedPubkey:D[2],tapleafHash:N})))}_decodePartialSignature(q,Q){let $=x.fromNullable(q.extract8BitUInt()).toEither(new e("Pubkey length is missing")).chain((Y)=>x.fromNullable(q.extractFieldByLength(Y)).toEither(new e("Pubkey is missing"))),Z=x.fromNullable(q.extractFieldByLength(q.getUnparsedRemainingLength())).toEither(new e("Signature is missing"));return kq.sequence([$,Z]).chain((Y)=>{let N=Y[0],V=Y[1];return N.length===b9?i({inputIndex:Q,signature:V,pubkey:N.slice(0,c$),tapleafHash:N.slice(c$)}):[c$,KQ].includes(N.length)?i({inputIndex:Q,signature:V,pubkey:N}):f(new e(`Invalid pubkey length returned: ${N.length}`))})}}class LQ extends NQ{makeStateMachine(q){let{signPsbt:Q,prepareWalletPolicy:$,buildPsbt:Z}=this.extractDependencies(q);return ZQ({types:{input:{},context:{},output:{}},actors:{openAppStateMachine:new w$({input:{appName:uq}}).makeStateMachine(q),prepareWalletPolicy:Mq($),buildPsbt:Mq(Z),signPsbt:Mq(Q)},guards:{noInternalError:({context:Y})=>Y._internalState.error===null,skipOpenApp:({context:Y})=>Y.input.skipOpenApp},actions:{assignErrorFromEvent:s({_internalState:(Y)=>({...Y.context._internalState,error:Y.event.error})})}}).createMachine({id:"SignPsbtDeviceAction",initial:"InitialState",context:({input:Y})=>({input:Y,intermediateValue:{requiredUserInteraction:qq.None,step:cq.OPEN_APP},_internalState:{error:null,wallet:null,buildPsbtResult:null,signatures:null,signedPsbt:null}}),states:{InitialState:{always:[{target:"PrepareWalletPolicy",guard:"skipOpenApp"},"OpenAppDeviceAction"]},OpenAppDeviceAction:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:cq.OPEN_APP})}),invoke:{id:"openAppStateMachine",input:{appName:uq},src:"openAppStateMachine",onSnapshot:{actions:s({intermediateValue:({event:Y})=>({...Y.snapshot.context.intermediateValue,step:cq.OPEN_APP})})},onDone:{actions:s({_internalState:(Y)=>Y.event.output.caseOf({Right:()=>Y.context._internalState,Left:(N)=>({...Y.context._internalState,error:N})})}),target:"CheckOpenAppDeviceActionResult"}}},CheckOpenAppDeviceActionResult:{always:[{target:"PrepareWalletPolicy",guard:"noInternalError"},"Error"]},PrepareWalletPolicy:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:cq.PREPARE_WALLET_POLICY})}),invoke:{id:"prepareWalletPolicy",src:"prepareWalletPolicy",input:({context:Y})=>({wallet:Y.input.wallet,walletBuilder:Y.input.walletBuilder}),onDone:{target:"PrepareWalletPolicyResultCheck",actions:s({_internalState:({event:Y,context:N})=>Qq(Y.output)?{...N._internalState,wallet:Y.output.data}:{...N._internalState,error:Y.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},PrepareWalletPolicyResultCheck:{always:[{guard:"noInternalError",target:"BuildPsbt"},{target:"Error"}]},BuildPsbt:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:cq.BUILD_PSBT})}),invoke:{id:"buildPsbt",src:"buildPsbt",input:({context:Y})=>({psbt:Y.input.psbt,wallet:Y._internalState.wallet,dataStoreService:Y.input.dataStoreService,psbtMapper:Y.input.psbtMapper}),onDone:{target:"BuildPsbtResultCheck",actions:s({_internalState:({event:Y,context:N})=>Qq(Y.output)?{...N._internalState,buildPsbtResult:Y.output.data}:{...N._internalState,error:Y.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},BuildPsbtResultCheck:{always:[{guard:"noInternalError",target:"SignPsbt"},{target:"Error"}]},SignPsbt:{entry:s({intermediateValue:{requiredUserInteraction:qq.SignTransaction,step:cq.SIGN_PSBT}}),exit:s({intermediateValue:{requiredUserInteraction:qq.None,step:cq.SIGN_PSBT}}),invoke:{id:"signPsbt",src:"signPsbt",input:({context:Y})=>({walletSerializer:Y.input.walletSerializer,valueParser:Y.input.valueParser,buildPsbtResult:Y._internalState.buildPsbtResult,wallet:Y._internalState.wallet}),onDone:{target:"SignPsbtResultCheck",actions:s({_internalState:({event:Y,context:N})=>Qq(Y.output)?{...N._internalState,signatures:Y.output.data}:{...N._internalState,error:Y.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},SignPsbtResultCheck:{always:[{guard:"noInternalError",target:"Success"},{target:"Error"}]},Success:{type:"final"},Error:{type:"final"}},output:({context:{_internalState:{signatures:Y,error:N}}})=>Y?i(Y):f(N||new YQ("No error in final state"))})}extractDependencies(q){return{prepareWalletPolicy:async(Q)=>{let{input:{walletBuilder:$,wallet:Z}}=Q;return await new RQ(q,{wallet:Z},$).run()},buildPsbt:async(Q)=>{let{input:{psbt:$,wallet:Z,dataStoreService:Y,psbtMapper:N}}=Q;return new n$({psbt:$,wallet:Z},Y,N).run()},signPsbt:async(Q)=>{let{input:{wallet:$,buildPsbtResult:Z,walletSerializer:Y,valueParser:N}}=Q;return await new s$(q,{wallet:$,...Z},Y,N).run()}}}}var aq=Object.freeze({SIGN_PSBT:"signer.btc.steps.signPsbt",UPDATE_PSBT:"signer.btc.steps.updatePsbt",EXTRACT_TRANSACTION:"signer.btc.steps.extractTransaction"});class i${constructor(q,Q){this._args=q,this._valueParser=Q}run(){let{psbt:q}=this._args,Q=new a,$=q.getGlobalValue(Zq.VERSION).chain((F)=>this._valueParser.getUInt32LE(F.data)).orDefault(0);Q.add32BitUIntToData($,!1);let Z=q.getInputValue(0,p.WITNESS_UTXO).isJust();Z&&Q.addBufferToData(Uint8Array.from([0,1]));let Y=q.getGlobalValue(Zq.INPUT_COUNT).chain((F)=>this._valueParser.getVarint(F.data)).orDefault(0);Q.addBufferToData(r(Y).extract());let N=new a;for(let F=0;F<Y;F++){Q.addBufferToData(q.getInputValue(F,p.PREVIOUS_TXID).mapOrDefault((E)=>E.data,new Uint8Array));let P=q.getInputValue(F,p.OUTPUT_INDEX).chain((E)=>this._valueParser.getUInt32LE(E.data)).orDefault(0);Q.add32BitUIntToData(P,!1);let O=q.getInputValue(F,p.FINAL_SCRIPTSIG).mapOrDefault((E)=>E.data,Uint8Array.from([]));Q.addBufferToData(r(O.length).extract()),Q.addBufferToData(O);let z=q.getInputValue(F,p.SEQUENCE).chain((E)=>this._valueParser.getUInt32LE(E.data)).orDefault(0);if(Q.add32BitUIntToData(z,!1),Z){let E=q.getInputValue(F,p.FINAL_SCRIPTWITNESS).mapOrDefault((j)=>j.data,Uint8Array.from([]));N.addBufferToData(E)}}let V=q.getGlobalValue(Zq.OUTPUT_COUNT).chain((F)=>this._valueParser.getVarint(F.data)).orDefault(0);Q.addBufferToData(r(V).extract());for(let F=0;F<V;F++){let P=q.getOutputValue(F,iq.AMOUNT).chain((z)=>this._valueParser.getInt64LE(z.data)).orDefault(0n),O=q.getOutputValue(F,iq.SCRIPT).mapOrDefault((z)=>z.data,new Uint8Array);Q.add64BitIntToData(P,!1),Q.addBufferToData(r(O.length).extract()),Q.addBufferToData(O)}Q.addBufferToData(N.build());let D=q.getGlobalValue(Zq.FALLBACK_LOCKTIME).chain((F)=>this._valueParser.getUInt32LE(F.data)).orDefault(0);return Q.add32BitUIntToData(D,!1),m({data:Nq(Q.build())})}}var sY=(q)=>("pubkey"in q);var _9=76,C9=77,S9=78,m9=255,h9=65535;function o$(q){let Q=new a;if(q.length<=S9)Q.add8BitUIntToData(q.length);else if(q.length<=m9)Q.add8BitUIntToData(_9),Q.add8BitUIntToData(q.length);else if(q.length<=h9){Q.add8BitUIntToData(C9);let $=new a().add16BitUIntToData(q.length,!1).build();Q.addBufferToData($)}return Q.addBufferToData(q),Q.build()}var y9=64,l9=65;class a${constructor(q,Q,$){this._args=q,this._valueParser=Q,this._psbtMapper=$}async run(){let{psbt:q,signatures:Q}=this._args,$=Q.filter((Z)=>sY(Z));return $.length===0?m({error:new oq("No signature provided")}):await X$(async({liftEither:Z})=>{let Y=await Z(this._psbtMapper.map(q)),N=await Z(this.getSignedPsbt(Y,$));return Z(this.getUpdatedPsbt(N))}).caseOf({Left:(Z)=>m({error:new oq(Z)}),Right:(Z)=>m({data:Z})})}getSignedPsbt(q,Q){return kq.encase(()=>{for(let $ of Q)q.getInputKeyDatas($.inputIndex,p.BIP32_DERIVATION).map((Z)=>Z.map((Y)=>new a().addHexaStringToData(Y).build())).map((Z)=>{Z.length===0?q.getInputKeyDatas($.inputIndex,p.TAP_BIP32_DERIVATION).map((Y)=>Y.map((N)=>new a().addHexaStringToData(N).build())).map((Y)=>{if(Y.length===0)throw Error(`Missing pubkey derivation for input ${$.inputIndex}`);if($.tapleafHash!==void 0)throw Error("Unhandled psbt key type PSBT_IN_TAP_SCRIPT_SIG");q.setInputValue($.inputIndex,p.TAP_KEY_SIG,new Oq($.signature))}):q.setInputValue($.inputIndex,p.PARTIAL_SIG,new Oq($.signature),$.pubkey)});return q})}getUpdatedPsbt(q){return kq.encase(()=>{let Q=q,$=Q.getGlobalValue(Zq.INPUT_COUNT).mapOrDefault((Z)=>this._valueParser.getVarint(Z.data).orDefault(0),0);for(let Z=0;Z<$;Z++){let Y=Q.getInputKeyDatas(Z,p.PARTIAL_SIG).mapOrDefault((V)=>V.map((D)=>new a().addHexaStringToData(D).build()),[]),N=Q.getInputValue(Z,p.TAP_KEY_SIG);if(Y.length===0&&N.isNothing())throw Error(`No signature for input ${Z} present`);Y.length>0?Q=this.getLegacyUpdatedPsbtInput(Q,Z,Y):Q=this.getTaprootUpdatedPsbtInput(Q,Z),this.clearUpdatedPsbtInput(Q,Z)}return Q})}clearUpdatedPsbtInput(q,Q){let $=q,Z=[p.BIP32_DERIVATION,p.PARTIAL_SIG,p.TAP_BIP32_DERIVATION,p.TAP_KEY_SIG],Y=$.getInputValue(Q,p.WITNESS_UTXO).isJust(),N=$.getInputValue(Q,p.NON_WITNESS_UTXO).isJust();return Y&&N&&Z.push(p.NON_WITNESS_UTXO),$.deleteInputEntries(Q,Z),$}getLegacyUpdatedPsbtInput(q,Q,$){let Z=q,Y=Z.getInputValue(Q,p.TAP_KEY_SIG);if($.length>1)throw Error(`Expected exactly one signature, got ${$.length}`);if(Y.isJust())throw Error("Both taproot and non-taproot signatures present.");let N=Z.getInputValue(Q,p.WITNESS_UTXO).isJust(),V=Z.getInputValue(Q,p.REDEEM_SCRIPT),D=V.isJust(),F=Z.getKeyDataInputValue(Q,p.PARTIAL_SIG,$[0]);if(F.isNothing())throw Error("Expected partial signature for input "+Q);let P=F.mapOrDefault((O)=>O.data,Uint8Array.from([]));if(N){let O=new a;if(O.addBufferToData(r(2).mapOrDefault((z)=>z,Uint8Array.from([2]))),O.addBufferToData(r(P.length).orDefault(Uint8Array.from([0]))),O.addBufferToData(P),O.addBufferToData(r($[0].length).orDefault(Uint8Array.from([0]))),O.addBufferToData($[0]),Z.setInputValue(Q,p.FINAL_SCRIPTWITNESS,new Oq(O.build())),D){let z=V.mapOrDefault((j)=>j.data,Uint8Array.from([]));if(z.length==0)throw Error("Expected non-empty redeemscript. Can't finalize intput "+Q);let E=new a;E.add8BitUIntToData(z.length),E.addBufferToData(z),Z.setInputValue(Q,p.FINAL_SCRIPTSIG,new Oq(E.build()))}}else{let O=new a;O.addBufferToData(o$(P)),O.addBufferToData(o$($[0])),Z.setInputValue(Q,p.FINAL_SCRIPTSIG,new Oq(O.build()))}return Z}getTaprootUpdatedPsbtInput(q,Q){let $=q,Z=$.getInputValue(Q,p.TAP_KEY_SIG);if(Z.isNothing())throw Error("No signature for taproot input "+Q);let Y=Z.mapOrDefault((V)=>V.data,Uint8Array.from([]));if(![y9,l9].includes(Y.length))throw Error("Unexpected length of schnorr signature.");let N=new a;return N.add8BitUIntToData(1),N.encodeInLVFromBuffer(Y),$.setInputValue(Q,p.FINAL_SCRIPTWITNESS,new Oq(N.build())),$}}class r$ extends NQ{makeStateMachine(q){let{updatePsbt:Q,extractTransaction:$}=this.extractDependencies();return ZQ({types:{input:{},context:{},output:{}},actors:{signPsbtStateMachine:new LQ({input:this.input,loggerFactory:this.getLoggerFactory(q)}).makeStateMachine(q),updatePsbt:Mq(Q),extractTransaction:Mq($)},guards:{noInternalError:({context:Z})=>Z._internalState.error===null},actions:{assignErrorFromEvent:s({_internalState:(Z)=>({...Z.context._internalState,error:Z.event.error})})}}).createMachine({id:"SignTransactionDeviceAction",initial:"SignPsbtDeviceAction",context:({input:Z})=>({input:Z,intermediateValue:{requiredUserInteraction:qq.None,step:aq.SIGN_PSBT},_internalState:{error:null,signatures:null,signedPsbt:null,transaction:null}}),states:{SignPsbtDeviceAction:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:aq.SIGN_PSBT})}),exit:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:aq.SIGN_PSBT})}),invoke:{id:"signPsbtStateMachine",src:"signPsbtStateMachine",input:({context:Z})=>Z.input,onSnapshot:{actions:s({intermediateValue:({event:Z})=>({...Z.snapshot.context.intermediateValue,step:aq.SIGN_PSBT})})},onDone:{target:"SignPsbtResultCheck",actions:s({_internalState:({event:Z,context:Y})=>Z.output.caseOf({Right:(N)=>({...Y._internalState,signatures:N}),Left:(N)=>({...Y._internalState,error:N})})})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},SignPsbtResultCheck:{always:[{guard:"noInternalError",target:"UpdatePsbt"},{target:"Error"}]},UpdatePsbt:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:aq.UPDATE_PSBT})}),invoke:{id:"updatePsbt",src:"updatePsbt",input:({context:Z})=>({psbt:Z.input.psbt,valueParser:Z.input.valueParser,psbtMapper:Z.input.psbtMapper,signatures:Z._internalState.signatures}),onDone:{target:"UpdatePsbtResultCheck",actions:s({_internalState:({event:Z,context:Y})=>Qq(Z.output)?{...Y._internalState,signedPsbt:Z.output.data}:{...Y._internalState,error:Z.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},UpdatePsbtResultCheck:{always:[{guard:"noInternalError",target:"ExtractTransaction"},{target:"Error"}]},ExtractTransaction:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:aq.EXTRACT_TRANSACTION})}),invoke:{id:"extractTransaction",src:"extractTransaction",input:({context:Z})=>({valueParser:Z.input.valueParser,psbt:Z._internalState.signedPsbt}),onDone:{target:"ExtractTransactionResultCheck",actions:s({_internalState:({event:Z,context:Y})=>Qq(Z.output)?{...Y._internalState,transaction:Z.output.data}:{...Y._internalState,error:Z.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},ExtractTransactionResultCheck:{always:[{guard:"noInternalError",target:"Success"},{target:"Error"}]},Success:{type:"final"},Error:{type:"final"}},output:({context:Z})=>Z._internalState.transaction?i(Z._internalState.transaction):f(Z._internalState.error||new YQ("No error in final state"))})}extractDependencies(){return{updatePsbt:async(q)=>{let{input:{psbt:Q,signatures:$,valueParser:Z,psbtMapper:Y}}=q;return await new a$({psbt:Q,signatures:$},Z,Y).run()},extractTransaction:async(q)=>{let{input:{psbt:Q,valueParser:$}}=q;return new i$({psbt:Q},$).run()}}}}class t${constructor(q,Q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this._args=q,this._errorHelper=Q}name="registerWalletAddress";getApdu(){let q=new Lq({cla:225,ins:2,p1:0,p2:Kq}),{walletPolicy:Q}=this._args;return q.encodeInLVFromBuffer(Q).build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefault(m({data:q}))}}class e${constructor(q,Q,$,Z,Y,N=(V,D)=>new Cq(V,D)){this._api=q,this._args=Q,this._walletBuilder=$,this._walletSerializer=Z,this._dataStoreService=Y,this._continueTaskFactory=N,this._logger=this._args.loggerFactory("RegisterWalletTask")}_logger;async run(){let{walletPolicy:q}=this._args;this._logger.debug("[run] Starting RegisterWalletTask",{data:{walletName:q.name,descriptorTemplate:q.descriptorTemplate,keysCount:q.keys?.length??0}});let Q=this._walletBuilder.fromWalletPolicy(q),$=new _q;this._dataStoreService.merklizeWallet($,Q);let Z=this._walletSerializer.serialize(Q);this._logger.debug("[run] Sending RegisterWalletAddressCommand",{data:{walletName:q.name,serializedWalletLength:Z?.length??0}});let Y=await this._api.sendCommand(new t$({walletPolicy:Z})),N=await this._continueTaskFactory(this._api,$).run(Y);if(Qq(N)){let V=Yq.getWalletRegistration(N);if(!Qq(V))return this._logger.error("[run] Wallet registration parsing failed",{data:{error:V.error}}),m({error:V.error});let{walletHmac:D}=V.data;return this._logger.debug("[run] RegisterWalletTask completed successfully",{data:{walletName:q.name,walletHmac:Array.from(D).map((F)=>F.toString(16).padStart(2,"0")).join("")}}),m({data:new QQ(q.name,q.descriptorTemplate,q.keys,D)})}return this._logger.error("[run] RegisterWalletTask failed",{data:{error:N.error}}),N}}class qZ{constructor(q,Q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this._args=q,this._errorHelper=Q}name="signMessage";getApdu(){let{derivationPath:q,messageLength:Q,messageMerkleRoot:$}=this._args,Z=new Lq({cla:225,ins:16,p1:0,p2:Kq}),Y=H$.splitPath(q);return Z.add8BitUIntToData(Y.length),Y.forEach((N)=>{Z.add32BitUIntToData(N)}),Z.addBufferToData(r(Q).unsafeCoerce()).addBufferToData($).build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefault(m({data:q}))}}class QZ{constructor(q,Q,$,Z=(Y,N)=>new Cq(Y,N)){this._api=q,this._args=Q,this._dataStoreService=$,this._continueTaskFactory=Z,this._logger=this._args.loggerFactory("SendSignMessageTask")}_logger;async run(){let{derivationPath:q,message:Q}=this._args;this._logger.debug("[run] Starting SendSignMessageTask",{data:{derivationPath:q,message:Q}});let $=new _q,Z=new TextEncoder().encode(Q),Y=[];for(let F=0;F<Z.length;F+=y$)Y.push(Z.subarray(F,F+y$));let N=this._dataStoreService.merklizeChunks($,Y);this._logger.debug("[run] Sending SignMessageCommand",{data:{derivationPath:q,chunksCount:Y.length,merkleRoot:N?Array.from(N).map((F)=>F.toString(16).padStart(2,"0")).join(""):null}});let V=await this._api.sendCommand(new qZ({derivationPath:q,messageLength:Z.length,messageMerkleRoot:N})),D=await this._continueTaskFactory(this._api,$).run(V);if(Qq(D)){let F=Yq.getSignature(D);return Qq(F)&&this._logger.debug("[run] SendSignMessageTask completed successfully",{data:{signature:F.data}}),F}return this._logger.error("[run] SendSignMessageTask failed",{data:{error:D.error}}),D}}var rq=Object.freeze({OPEN_APP:"signer.btc.steps.openApp",PREPARE_WALLET_POLICY:"signer.btc.steps.prepareWalletPolicy",GET_WALLET_ADDRESS:"signer.btc.steps.getWalletAddress"});class $Z{constructor(q,Q=new Jq(Uq,Rq,Yq.isSuccessResponse)){this.args=q,this._errorHelper=Q}name="getWalletAddress";getApdu(){return new Lq({cla:225,ins:3,p1:0,p2:Kq}).addBufferToData(Uint8Array.from([this.args.checkOnDevice?1:0])).addBufferToData(this.args.walletId).addBufferToData(this.args.walletHmac).addBufferToData(Uint8Array.from([this.args.change?1:0])).add32BitUIntToData(this.args.addressIndex).build()}parseResponse(q){return x.fromNullable(this._errorHelper.getError(q)).orDefault(m({data:q}))}}class ZZ{constructor(q,Q,$,Z,Y=(V,D)=>new Cq(V,D),N=Yq.getAddress){this._api=q,this._args=Q,this._walletSerializer=$,this._dataStoreService=Z,this._continueTaskFactory=Y,this._getAddress=N}async run(){let{checkOnDevice:q,change:Q,addressIndex:$,wallet:Z}=this._args,Y=new _q;this._dataStoreService.merklizeWallet(Y,Z);let N=this._walletSerializer.getId(Z),V=await this._api.sendCommand(new $Z({checkOnDevice:q,walletId:N,walletHmac:Z.hmac,change:Q,addressIndex:$})),D=await this._continueTaskFactory(this._api,Y).run(V);return Qq(D)?this._getAddress(D):D}}class YZ extends NQ{makeStateMachine(q){let{getWalletAddress:Q,prepareWalletPolicy:$}=this.extractDependencies(q);return ZQ({types:{input:{},context:{},output:{}},actors:{openAppStateMachine:new w$({input:{appName:uq}}).makeStateMachine(q),prepareWalletPolicy:Mq($),getWalletAddress:Mq(Q)},guards:{noInternalError:({context:Z})=>Z._internalState.error===null,skipOpenApp:({context:Z})=>Z.input.skipOpenApp},actions:{assignErrorFromEvent:s({_internalState:(Z)=>({...Z.context._internalState,error:Z.event.error})})}}).createMachine({id:"GetWalletAddressDeviceAction",initial:"InitialState",context:({input:Z})=>({input:Z,intermediateValue:{requiredUserInteraction:qq.None,step:rq.OPEN_APP},_internalState:{error:null,wallet:null,walletAddress:null}}),states:{InitialState:{always:[{target:"PrepareWalletPolicy",guard:"skipOpenApp"},"OpenAppDeviceAction"]},OpenAppDeviceAction:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:rq.OPEN_APP})}),invoke:{id:"openAppStateMachine",input:{appName:uq},src:"openAppStateMachine",onSnapshot:{actions:s({intermediateValue:({event:Z})=>({...Z.snapshot.context.intermediateValue,step:rq.OPEN_APP})})},onDone:{actions:s({_internalState:({event:Z,context:Y})=>Z.output.caseOf({Right:()=>Y._internalState,Left:(N)=>({...Y._internalState,error:N})})}),target:"CheckOpenAppDeviceActionResult"}}},CheckOpenAppDeviceActionResult:{always:[{target:"PrepareWalletPolicy",guard:"noInternalError"},"Error"]},PrepareWalletPolicy:{entry:s({intermediateValue:()=>({requiredUserInteraction:qq.None,step:rq.PREPARE_WALLET_POLICY})}),invoke:{id:"prepareWalletPolicy",src:"prepareWalletPolicy",input:({context:Z})=>({wallet:Z.input.wallet,walletBuilder:Z.input.walletBuilder}),onDone:{target:"PrepareWalletPolicyResultCheck",actions:s({_internalState:({event:Z,context:Y})=>Qq(Z.output)?{...Y._internalState,wallet:Z.output.data}:{...Y._internalState,error:Z.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},PrepareWalletPolicyResultCheck:{always:[{guard:"noInternalError",target:"GetWalletAddress"},{target:"Error"}]},GetWalletAddress:{entry:s(({context:Z})=>({intermediateValue:{requiredUserInteraction:Z.input.checkOnDevice?qq.VerifyAddress:qq.None,step:rq.GET_WALLET_ADDRESS}})),exit:s({intermediateValue:{requiredUserInteraction:qq.None,step:rq.GET_WALLET_ADDRESS}}),invoke:{id:"getWalletAddress",src:"getWalletAddress",input:({context:Z})=>({checkOnDevice:Z.input.checkOnDevice,wallet:Z._internalState.wallet,change:Z.input.change,addressIndex:Z.input.addressIndex,dataStoreService:Z.input.dataStoreService,walletSerializer:Z.input.walletSerializer,walletBuilder:Z.input.walletBuilder}),onDone:{target:"GetWalletAddressResultCheck",actions:s({_internalState:({event:Z,context:Y})=>Qq(Z.output)?{...Y._internalState,walletAddress:Z.output.data}:{...Y._internalState,error:Z.output.error}})},onError:{target:"Error",actions:"assignErrorFromEvent"}}},GetWalletAddressResultCheck:{always:[{guard:"noInternalError",target:"Success"},{target:"Error"}]},Success:{type:"final"},Error:{type:"final"}},output:({context:Z})=>Z._internalState.walletAddress?i(Z._internalState.walletAddress):f(Z._internalState.error||new YQ("No error in final state"))})}extractDependencies(q){return{getWalletAddress:async(Q)=>{let{checkOnDevice:$,wallet:Z,change:Y,addressIndex:N,walletSerializer:V,dataStoreService:D}=Q.input;return await new ZZ(q,{checkOnDevice:$,wallet:Z,change:Y,addressIndex:N},V,D).run()},prepareWalletPolicy:async(Q)=>{let{input:{walletBuilder:$,wallet:Z}}=Q;return await new RQ(q,{wallet:Z},$).run()}}}}var{defineProperty:n9,getOwnPropertyDescriptor:f9}=Object,p9=(q,Q,$,Z)=>{for(var Y=Z>1?void 0:Z?f9(Q,$):Q,N=q.length-1,V;N>=0;N--)(V=q[N])&&(Y=(Z?V(Q,$,Y):V(Y))||Y);return Z&&Y&&n9(Q,$,Y),Y},sq=(q,Q)=>($,Z)=>Q($,Z,q),W$=class{constructor(q,Q,$,Z,Y,N,V,D){this._dmk=q,this._sessionId=Q,this._walletBuilder=$,this._walletSerializer=Z,this._dataStoreService=Y,this._psbtMapper=N,this._valueParser=V,this._dmkLoggerFactory=D}getExtendedPublicKey(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new DZ({input:{command:new jQ(q),appName:uq,requiredUserInteraction:q.checkOnDevice?qq.VerifyAddress:qq.None,skipOpenApp:q.skipOpenApp},logger:this._dmkLoggerFactory("GetExtendedPublicKeyCommand")})})}getMasterFingerprint(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new DZ({input:{command:new UQ,appName:uq,requiredUserInteraction:qq.None,skipOpenApp:q.skipOpenApp},logger:this._dmkLoggerFactory("GetMasterFingerprintCommand")})})}signMessage(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new NZ({input:{task:async(Q)=>new QZ(Q,{derivationPath:q.derivationPath,message:q.message,loggerFactory:this._dmkLoggerFactory},this._dataStoreService).run(),appName:uq,requiredUserInteraction:qq.SignPersonalMessage,skipOpenApp:q.skipOpenApp},logger:this._dmkLoggerFactory("SendSignMessageTask")})})}signPsbt(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new LQ({input:{psbt:q.psbt,wallet:q.wallet,walletBuilder:this._walletBuilder,walletSerializer:this._walletSerializer,dataStoreService:this._dataStoreService,psbtMapper:this._psbtMapper,valueParser:this._valueParser,skipOpenApp:q.skipOpenApp},loggerFactory:this._dmkLoggerFactory})})}getWalletAddress(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new YZ({input:{wallet:q.wallet,skipOpenApp:q.skipOpenApp,checkOnDevice:q.checkOnDevice,change:q.change,addressIndex:q.addressIndex,walletBuilder:this._walletBuilder,walletSerializer:this._walletSerializer,dataStoreService:this._dataStoreService},loggerFactory:this._dmkLoggerFactory})})}signTransaction(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new r$({input:{psbt:q.psbt,wallet:q.wallet,walletBuilder:this._walletBuilder,walletSerializer:this._walletSerializer,dataStoreService:this._dataStoreService,psbtMapper:this._psbtMapper,valueParser:this._valueParser,skipOpenApp:q.skipOpenApp},loggerFactory:this._dmkLoggerFactory})})}registerWallet(q){return this._dmk.executeDeviceAction({sessionId:this._sessionId,deviceAction:new NZ({input:{task:async(Q)=>new e$(Q,{walletPolicy:q.wallet,loggerFactory:this._dmkLoggerFactory},this._walletBuilder,this._walletSerializer,this._dataStoreService).run(),appName:uq,requiredUserInteraction:qq.RegisterWallet,skipOpenApp:q.skipOpenApp},logger:this._dmkLoggerFactory("RegisterWalletTask")})})}};W$=p9([o(),sq(0,S(lq.Dmk)),sq(1,S(lq.SessionId)),sq(2,S(hq.WalletBuilder)),sq(3,S(hq.WalletSerializer)),sq(4,S(IQ.DataStoreService)),sq(5,S(Dq.PsbtMapper)),sq(6,S(Dq.ValueParser)),sq(7,S(lq.DmkLoggerFactory))],W$);var iY=()=>new Hq(({bind:q})=>{q(Pq.AppBinder).to(W$)});var aY=({dmk:q,sessionId:Q})=>{let $=new oY;return $.bind(lq.Dmk).toConstantValue(q),$.bind(lq.SessionId).toConstantValue(Q),$.bind(lq.DmkLoggerFactory).toConstantValue((Z)=>q.getLoggerFactory()(["SignerBtc",Z])),$.loadSync(iY(),xY(),mY(),gY(),vZ(),WY()),$};class FZ{_container;constructor({dmk:q,sessionId:Q}){this._container=aY({dmk:q,sessionId:Q})}getWalletAddress(q,Q,$){return this._container.get(Eq.GetWalletAddressUseCase).execute($?.checkOnDevice??!1,q,$?.change??!1,Q,$?.skipOpenApp??!1)}signPsbt(q,Q,$){return this._container.get(Eq.SignPsbtUseCase).execute(q,Q,$?.skipOpenApp??!1)}getExtendedPublicKey(q,Q){return this._container.get(Eq.GetExtendedPublicKeyUseCase).execute(q,{checkOnDevice:Q?.checkOnDevice??!1,skipOpenApp:Q?.skipOpenApp??!1})}getMasterFingerprint(q){return this._container.get(Eq.GetMasterFingerprintUseCase).execute({skipOpenApp:q?.skipOpenApp??!1})}registerWallet(q,Q){return this._container.get(Eq.RegisterWalletUseCase).execute(q,Q?.skipOpenApp??!1)}signMessage(q,Q,$){return this._container.get(Eq.SignMessageUseCase).execute(q,Q,$?.skipOpenApp??!1)}signTransaction(q,Q,$){return this._container.get(Eq.SignTransactionUseCase).execute(q,Q,$?.skipOpenApp??!1)}}class rY{_dmk;_sessionId;constructor({dmk:q,sessionId:Q}){this._dmk=q,this._sessionId=Q}build(){return new FZ({dmk:this._dmk,sessionId:this._sessionId})}}export{aq as signTransactionDAStateSteps,cq as signPsbtDAStateSteps,rq as getWalletAddressDAStateSteps,SY as WalletPolicy,rY as SignerBtcBuilder,QQ as RegisteredWallet,CY as DefaultWallet,_Y as DefaultDescriptorTemplate};
2
+
3
+ //# debugId=A5E2329E3639A83364756E2164756E21
4
+ //# sourceMappingURL=chunk-xmvg4cds.js.map