File size: 173,249 Bytes
cbacdac |
1 |
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[931],{65125:function(e,t,s){Promise.resolve().then(s.bind(s,70863))},70863:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return tI}});var n=s(57437),i=s(4867),r=s(34270),a=s(89028),o=s(2265),c=s(18951),l=s(78068),d=s(46260),u=s(80018),m=s(89183),h=s(14635),x=s(65530),p=s(69893),g=s(13201),f=s(36393),k=s(62052),y=s(68628),v=s(3682);let b=(0,k.hu)("Consensus Core",k.$5.consensusCore),w=(0,a.ri)().quorumSettings;async function q(e,t,s,n){b.debug("Consensus ".concat(e.requestId,": Running final consensus with ").concat(e.quorum.length," commits "),e);let i=Math.ceil(n.secPercentage*e.quorum.length);e.quorum=e.quorum.filter(e=>e.reveal),b.debug("Consensus ".concat(e.requestId,": Removed non-revealed commits, ").concat(e.quorum.length," commits remaining"));let r=[];if(e.quorum=(await Promise.all(e.quorum.map(async n=>{if(n.synthientId===s)return n;if(!n.reveal)return!1;let i=t.find(e=>e.text===n.reveal.output);if(!i)return b.error("Consensus ".concat(e.requestId,": Could not find verified embedding for revealed commit "),n," from results ",t),!1;let a=(0,y.Z)(n.reveal.bEmbedding,i.binaryEmbedding);if(a<1-w.bEmbeddingThreshold)return b.warn("Consensus ".concat(e.requestId,": Rejecting reveal for ").concat(n.inferenceId," from ").concat(n.synthientId," - our embeddings didn't match"),n," with similarity ",a," to verified embedding ",i," over threshold ",w.bEmbeddingThreshold),r.push({createdAt:(0,g.MQ)(new Date),type:"inferenceRevealRejected",requestId:e.requestId,inferenceId:n.inferenceId,rejectReason:{type:"computed_bembedding_fails_threshold",computedBEmbedding:i.binaryEmbedding,revealedBEmbedding:n.reveal.bEmbedding}}),!1;let o=await (0,v.TU)(Object.values(n.reveal.bEmbedding),n.synthientId);return o!==n.bEmbeddingHash?(b.warn("Consensus ".concat(e.requestId,": Rejecting reveal for ").concat(n.inferenceId," from ").concat(n.synthientId," - our hash didn't match"),n," with hash mismatch ",o," !== ",n.bEmbeddingHash),r.push({createdAt:(0,g.MQ)(new Date),type:"inferenceRevealRejected",requestId:e.requestId,inferenceId:n.inferenceId,rejectReason:{type:"bembedding_hash_mismatch",computedBEmbeddingHash:o,revealedBEmbeddingHash:n.bEmbeddingHash,revealedBEmbedding:n.reveal.bEmbedding}}),!1):n}))).filter(e=>!1!==e),b.debug("Consensus ".concat(e.requestId,": Removed non-verified commits, ").concat(e.quorum.length," commits remaining")),e.quorum.length<e.quorumThreshold)return b.debug("Consensus ".concat(e.requestId,": Quorum for ").concat(e.requestId," did not reach threshold, ").concat(e.quorum.length," < threshold ").concat(e.quorumThreshold)),{requestId:e.requestId,success:!1,reason:"did_not_reach_threshold_after_prune",debug:{clusterSizeNeeded:i},rejectionPackets:r};console.time("Computing clusters for ".concat(e.quorum.length," commits"));let a=[];for(let t=0;t<e.quorum.length;t++){a[t]=[];for(let s=0;s<e.quorum.length;s++)a[t][s]=t===s?0:Math.sqrt(e.quorum[t].reveal.bEmbedding.reduce((t,n,i)=>t+Math.pow(n-e.quorum[s].reveal.bEmbedding[i],2),0))}b.debug("Consensus ".concat(e.requestId,": Computed distances for ").concat(e.quorum.length," commits"),a);let o=a.map(e=>e.filter(e=>e<n.secDistance)).map((e,t)=>({commitIndex:t,clusterSize:e.length}));b.debug("Consensus ".concat(e.requestId,": Computed cluster sizes for ").concat(e.quorum.length," commits"),o),b.debug("Consensus ".concat(e.requestId,": Computed cluster size needed for ").concat(e.quorum.length," commits: ").concat(i));let c=o.filter(e=>e.clusterSize>=i).sort((e,t)=>t.clusterSize-e.clusterSize);if(b.debug("Consensus ".concat(e.requestId,": Computed largest cluster sizes for ").concat(e.quorum.length," commits"),c),console.timeEnd("Computing clusters for ".concat(e.quorum.length," commits")),!c.length)return b.debug("Consensus ".concat(e.requestId,": No clusters found with size ").concat(i," or greater")),{requestId:e.requestId,success:!1,reason:"no_clusters_found_of_needed_size",debug:{clusterSizeNeeded:i,distances:a},rejectionPackets:r};let l=c[0];b.debug("Consensus ".concat(e.requestId,": Found largest cluster with size ").concat(l.clusterSize," at index ").concat(l.commitIndex));let d=a[l.commitIndex].map((e,t)=>!(e>=n.secDistance)&&t).filter(e=>!1!==e);b.debug("Consensus ".concat(e.requestId,": Accepted ").concat(d.length," inferences for largest cluster"),d);let u=d.map(t=>e.quorum[t]);b.debug("Consensus ".concat(e.requestId,": Accepted inferences for largest cluster"),u);let m=await (0,v.Wu)(e.requestId+u.map(e=>e.bEmbeddingHash+e.inferenceId).join("")),h=u[parseInt(m.slice(0,16),16)%u.length],x={type:"inferenceQuorumComputed",createdAt:(0,g.MQ)(new Date),requestId:e.requestId,verifiedBy:s,submittedInferences:e.quorum.map(e=>({inferenceId:e.inferenceId})),validInferences:u.map(e=>({inferenceId:e.inferenceId})),validInferenceJointHash:m,validSingleInference:{output:h.reveal.output,fromSynthientId:h.synthientId,bEmbeddingHash:h.bEmbeddingHash}};return b.debug("Consensus ".concat(e.requestId,": Computed Final inference quorum"),x),{rejectionPackets:r,success:!0,requestId:e.requestId,reason:"success",debug:{clusterSizeNeeded:i,distances:a},computedQuorumPacket:x}}let j=(0,k.hu)("QuorumDB",k.$5.databases.quorumDB),I=(0,a.ri)().quorumSettings;class R extends h.ZP{constructor(){super("QuorumDatabase"),this.version(2).stores({quorums:"requestId, status, endingAt, consensusRequestedAt"})}}class E extends h.ZP{constructor(){super("ConsensusResultsDatabase"),this.version(1).stores({consensusResults:"requestId, success, reason"})}}class D extends h.ZP{constructor(){super("ExternalConsensusResultsDatabase"),this.version(1).stores({consensusResults:"[requestId+verifiedBy]"})}}class S extends f.Z{async getQuorum(e){return this.db.quorums.get(e)}async getQuorums(e){return this.db.quorums.where("requestId").anyOf(e).toArray()}async getConsensusResults(e){return this.consensusResultsDB.consensusResults.where("requestId").anyOf(e).toArray()}async getExternalConsensusResults(e){return this.externalConsensusResultsDB.consensusResults.where("requestId").anyOf(e).toArray()}async checkQuorumsReadyForReveal(){j.debug("Checking quorums for reveal");let e=new Date,t=new Date(e.getTime()-I.quorumRevealRequestIssueTimeoutMs),s=(await this.db.quorums.where("endingAt").between(t,e).toArray()).filter(e=>"awaiting_commitments"===e.status),n=s.filter(e=>e.quorum.length<e.quorumThreshold);j.debug("".concat(n.length," quorums failed to reach threshold"),n),n.forEach(e=>e.status="failed"),await this.db.quorums.bulkPut(n).catch(h.ZP.BulkError,e=>{j.error("Failed to update quorums to failed",e)});let i=s.filter(e=>e.quorum.length>=e.quorumThreshold);j.debug("".concat(i.length," quorums passed commitment thresholds"),i),i.forEach(e=>e.status="awaiting_reveal"),await this.db.quorums.bulkPut(i).catch(h.ZP.BulkError,e=>{j.error("Failed to update quorums to awaiting_reveal for these quorums: ",e)}),i.length&&this.emit("requestReveal",i)}async processInferenceReveal(e){let t=await this.db.quorums.get(e.packet.requestId);if(!t){j.debug("No quorum found for reveal packet ".concat(e.packet.requestId),e);return}if(e.receivedTime&&e.receivedTime.getTime()>t.endingAt.getTime()+I.quorumRevealTimeoutMs){j.debug("Received reveal packet after reveal timeout, discarding.",e);return}let s=t.quorum.find(t=>t.synthientId===e.synthientId&&t.inferenceId===e.packet.inferenceId);if(!s){j.debug("No commit found for reveal packet",e);return}s.reveal||(s.reveal={embedding:e.packet.embedding,bEmbedding:e.packet.bEmbedding,output:e.packet.output,receivedAt:new Date},t.quorumRevealed+=1,await this.db.quorums.put(t),j.debug("Updated quorum with reveal",t),await this.checkQuorumsReadyForConsensus())}async checkQuorumsReadyForConsensus(){this.quorumConsensusTimeout&&clearTimeout(this.quorumConsensusTimeout);let e=new Date,t=new Date(e.getTime()-I.quorumRevealTimeoutMs),s=new Date(e.getTime()-I.quorumRevealTimeoutMs-I.quorumConsensusWindowMs),n=(await this.db.quorums.where("endingAt").between(s,t).toArray()).filter(e=>"awaiting_reveal"===e.status&&!e.consensusRequestedAt);for(let e of(j.debug("".concat(n.length," Quorums ready for consensus processing"),n),n)){if(e.quorumRevealed<e.quorumThreshold){j.debug("".concat(e.requestId," Quorum didn't meet threshold for consensus processing"),e),e.status="failed";continue}e.status="awaiting_consensus",e.consensusRequestedAt=new Date,j.debug("Emitting newQuorumAwaitingConsensus for quorum ".concat(e.requestId),e),this.emit("newQuorumAwaitingConsensus",e.requestId,e.embeddingModel,e.consensusRequestedAt,e.quorum.some(e=>e.synthientId===this.mySynthientId))}await this.db.quorums.bulkPut(n).catch(h.ZP.BulkError,e=>{j.error("Failed to update quorums to awaiting_consensus",e)});let i=(await this.db.quorums.where("endingAt").above(t).toArray()).filter(e=>"awaiting_reveal"===e.status).sort((e,t)=>e.endingAt.getTime()-t.endingAt.getTime());i.length&&(j.debug("Setting timeout for next quorum check: ".concat(i[0].endingAt.getTime()-Date.now()+I.quorumRevealTimeoutMs-10),i[0]),this.quorumConsensusTimeout=setTimeout(()=>this.checkQuorumsReadyForConsensus(),i[0].endingAt.getTime()+I.quorumRevealTimeoutMs-Date.now()+10))}async getQuorumConsensusQueue(){let e=new Date(new Date().getTime()-I.quorumConsensusWindowMs);return(await this.db.quorums.where("consensusRequestedAt").above(e).toArray()).filter(e=>!!e.consensusRequestedAt).sort((e,t)=>e.consensusRequestedAt.getTime()-t.consensusRequestedAt.getTime())}async refreshQuorumRevealTimeout(){this.quorumRevealTimeout&&clearTimeout(this.quorumRevealTimeout);let e=(await this.db.quorums.where("endingAt").above(new Date).toArray()).filter(e=>"awaiting_commitments"===e.status).sort((e,t)=>e.endingAt.getTime()-t.endingAt.getTime());j.trace("Got quorums for setting Timeout: ",e),e.length&&(this.quorumRevealTimeout=setTimeout(async()=>{j.debug("Checking to see if any quorums are ready for reveal"),await this.checkQuorumsReadyForReveal(),setTimeout(()=>this.refreshQuorumRevealTimeout(),0)},e[0].endingAt.getTime()-Date.now()))}async processExternalConsensus(e){if(await this.externalConsensusResultsDB.consensusResults.get([e.requestId,e.verifiedBy])){j.debug("Received redundant external consensus for ".concat(e.requestId," from ").concat(e.verifiedBy,", dropping"));return}this.externalConsensusResultsDB.consensusResults.put(e)}async processVerifiedConsensusEmbeddings(e,t){j.debug("Processing verified consensus embeddings for ".concat(e.requestId),t," for request: ",e),await this.db.quorums.update(e.requestId,{status:"verifying_consensus"});let s=await this.db.quorums.get(e.requestId);if(!s){j.error("No quorum found for request ".concat(e.requestId),e);return}let n=await q(s,t,this.mySynthientId,e.payload.securityFrame);j.debug("Final consensus computed for ".concat(e.requestId),n),this.consensusResultsDB.consensusResults.put(n);let i=n.rejectionPackets;n.success?(n.computedQuorumPacket&&i.push(n.computedQuorumPacket),this.db.quorums.update(e.requestId,{status:"completed"})):this.db.quorums.update(e.requestId,{status:"failed"}),this.emit("consensusPackets",i)}async processInferenceCommit(e,t){let s=await this.db.quorums.get(e.packet.requestId);j.debug("Received inference commit",e),s?s.quorum.find(t=>t.synthientId===e.synthientId&&t.inferenceId===e.packet.inferenceId)?j.debug("Commit already exists in quorum",s):(j.debug("Adding new commit to quorum",s),s.quorum.push({inferenceId:e.packet.inferenceId,synthientId:e.synthientId,bEmbeddingHash:e.packet.bEmbeddingHash,commitReceivedAt:new Date}),s.quorumCommitted+=1,this.db.quorums.put(s)):(j.debug("Creating new quorum for commit",e),this.db.quorums.put({requestId:e.packet.requestId,status:"awaiting_commitments",quorumThreshold:t.payload.securityFrame.quorum,endingAt:t.endingAt,quorumCommitted:1,quorumRevealed:0,embeddingModel:t.payload.securityFrame.embeddingModel,quorum:[{inferenceId:e.packet.inferenceId,synthientId:e.synthientId,bEmbeddingHash:e.packet.bEmbeddingHash,commitReceivedAt:new Date}]})),this.refreshQuorumRevealTimeout()}constructor(e){super(),this.mySynthientId=e,this.quorumRevealTimeout=null,this.quorumConsensusTimeout=null,this.db=new R,this.consensusResultsDB=new E,this.externalConsensusResultsDB=new D}}let C=(0,a.ri)().quorumSettings,A=(0,k.hu)("InferenceDB",k.$5.databases.inferenceDB);class _ extends h.ZP{constructor(e={}){super("InferenceEmbeddingDB",e),this.version(2).stores({inferenceEmbeddings:"inferenceId, requestId"})}}class T extends h.ZP{constructor(e={}){super("InferenceRequestDB",e),this.version(2).stores({inferenceRequests:"requestId, endingAt"})}}class z extends h.ZP{constructor(e={}){super("InferenceResultDB",e),this.version(2).stores({inferenceResults:"inferenceId, requestId"})}}class P extends f.Z{async completeBoot(){let e=(await this.inferenceResultDb.inferenceResults.toArray()).reduce((e,t)=>t.result.success?e+t.result.tokenCount:e,0);this.totalTokens+=e,A.debug("Our total inference tokens so far - ".concat(this.totalTokens)),this.refreshCleanupTimeout(),this.emit("bootComplete",this.totalTokens)}async processExternalConsensus(e){if(!await this.inferenceRequestDb.inferenceRequests.get(e.requestId)){A.error("No matching request for consensus packet for ".concat(e.requestId,", dropping"),e);return}await this.quorumDb.processExternalConsensus(e)}async getInferences(e){let t=await this.inferenceRequestDb.inferenceRequests.orderBy("endingAt").reverse().limit(e).toArray(),s=await this.inferenceResultDb.inferenceResults.where("requestId").anyOf(t.map(e=>e.requestId)).toArray(),n=await this.inferenceEmbeddingDb.inferenceEmbeddings.where("requestId").anyOf(t.map(e=>e.requestId)).toArray(),i=await this.quorumDb.getExternalConsensusResults(t.map(e=>e.requestId)),r=await this.quorumDb.getQuorums(t.map(e=>e.requestId)),a=await this.quorumDb.getConsensusResults(t.map(e=>e.requestId));return t.map(e=>{let t=s.find(t=>t.requestId===e.requestId),o=n.find(t=>t.requestId===e.requestId),c=r.find(t=>t.requestId===e.requestId),l=a.find(t=>t.requestId===e.requestId);return{requestId:e.requestId,requestedAt:e.payload.createdAt,endingAt:e.endingAt,fromSynthientId:e.fromSynthientId,requestPayload:e.payload,ourResult:t&&{payload:t,bEmbeddingHash:null==o?void 0:o.bEmbeddingHash},quorum:c&&{consensusRequestedAt:null==c?void 0:c.consensusRequestedAt,status:c.status,quorumThreshold:c.quorumThreshold,quorumCommitted:c.quorumCommitted,quorumRevealed:c.quorumRevealed,quorum:c.quorum.map(e=>({inferenceId:e.inferenceId,synthientId:e.synthientId,commitReceivedAt:e.commitReceivedAt,bEmbeddingHash:e.bEmbeddingHash,reveal:e.reveal&&{output:e.reveal.output,receivedAt:e.reveal.receivedAt}}))},consensusResult:l&&{status:l.reason,result:l.computedQuorumPacket&&{submittedInferences:l.computedQuorumPacket.submittedInferences,validInferences:l.computedQuorumPacket.validInferences,validInferenceJointHash:l.computedQuorumPacket.validInferenceJointHash,validInference:{output:l.computedQuorumPacket.validSingleInference.output,fromSynthientId:l.computedQuorumPacket.validSingleInference.fromSynthientId,bEmbeddingHash:l.computedQuorumPacket.validSingleInference.bEmbeddingHash}}},externalConsensuses:i.filter(t=>t.requestId===e.requestId).map(e=>({verifiedBy:e.verifiedBy,bEmbeddingHash:e.validSingleInference.bEmbeddingHash,validCommitments:e.validInferences.length,allCommitments:e.submittedInferences.length,output:e.validSingleInference.output,validInferenceBy:e.validSingleInference.fromSynthientId}))}})}emitRevealRequests(e){let t=e.map(e=>({createdAt:(0,g.MQ)(new Date),type:"inferenceRevealRequest",requestId:e.requestId,quorum:e.quorum.map(e=>({inferenceId:e.inferenceId,synthientId:e.synthientId,bEmbeddingHash:e.bEmbeddingHash})),timeoutMs:C.quorumRevealTimeoutMs}));A.debug("Emitting reveal requests for ".concat(t.length," packets"),t),this.emit("requestQuorumReveal",t)}refreshCleanupTimeout(){this.cleanupTimeout&&(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=null);let e=new Date;if(this.activeInferenceRequests=this.activeInferenceRequests.filter(t=>t.endingAt>e),!this.activeInferenceRequests.length)return;let t=this.activeInferenceRequests.sort((e,t)=>e.endingAt.getTime()-t.endingAt.getTime());this.cleanupTimeout=setTimeout(()=>{this.cleanupExpiredInferences()},t[0].endingAt.getTime()-e.getTime())}async cleanupExpiredInferences(){let e=new Date,t=(await this.inferenceResultDb.inferenceResults.where("requestId").anyOf(this.activeInferenceRequests.map(e=>e.requestId)).toArray()).map(e=>e.requestId);this.activeInferenceRequests=this.activeInferenceRequests.filter(s=>!(s.endingAt<=e)&&!t.includes(s.requestId)),A.debug("Active inferences after cleanup: ".concat(this.activeInferenceRequests.length),this.activeInferenceRequests.length),this.activeInferenceRequests.length>0&&this.refreshCleanupTimeout()}async processInferenceReveal(e){if(!await this.inferenceRequestDb.inferenceRequests.get(e.packet.requestId)){A.error("No matching request for revealed inference, skipping ".concat(e.packet.requestId),e);return}this.quorumDb.processInferenceReveal(e)}async processVerifiedConsensusEmbeddings(e){if(!e.results){A.error("No results to process for verified embeddings we just did",e);return}let t=await this.inferenceRequestDb.inferenceRequests.get(e.requestId);if(!t){A.error("No matching request for verified embeddings to run final consensus",e);return}await this.quorumDb.processVerifiedConsensusEmbeddings(t,e.results)}async processInferenceRevealRequest(e){let t=await this.inferenceRequestDb.inferenceRequests.get(e.packet.requestId);if(!t){A.error("We were asked to reveal our inference. No matching request for reveal request ".concat(e.packet.requestId),e);return}if(t.endingAt>new Date){A.error("We were asked to reveal our inference. Request ".concat(t.requestId," is still active. Not revealing embeddings."));return}let s=e.packet.quorum.find(e=>e.synthientId===this.mySynthientId);if(!s){A.error("We were asked to reveal our inference. No matching commit with our synthient id for ".concat(e.packet.requestId),e);return}let n=await this.inferenceResultDb.inferenceResults.get(s.inferenceId);if(!n){A.error("We were asked to reveal our inference. No matching result for reveal request ".concat(e.packet.requestId),e);return}if(!n.result.success){A.error("We were asked to reveal our inference for ".concat(e.packet.requestId," - Result was not successful. Not revealing embeddings."));return}let i=await this.inferenceEmbeddingDb.inferenceEmbeddings.get(n.inferenceId);if(!i){A.error("No matching embedding for reveal request ".concat(e.packet.requestId),e);return}A.debug("Revealing our inference for ".concat(e.packet.requestId," to ").concat(e.synthientId)),this.emit("revealedInference",{createdAt:(0,g.MQ)(new Date),type:"inferenceReveal",requestedSynthientId:e.synthientId,requestId:t.requestId,inferenceId:n.inferenceId,output:n.result.result,embedding:i.embedding,bEmbedding:i.bEmbedding})}async saveInferenceEmbedding(e,t){if(!await this.inferenceResultDb.inferenceResults.get(e.inferenceId))throw Error("No matching inference result for embedding - ".concat(e.inferenceId));if(await this.inferenceEmbeddingDb.inferenceEmbeddings.get(t.inferenceId)){A.debug("Embedding already exists. Skipping save.");return}await this.inferenceEmbeddingDb.inferenceEmbeddings.put(t),this.emit("newInferenceEmbedding",t)}async saveInferenceResult(e){if(this.activeInferenceRequests=this.activeInferenceRequests.filter(t=>t.requestId!==e.requestId),await this.inferenceResultDb.inferenceResults.put(e),e.result.success){this.totalTokens=(this.totalTokens||0)+e.result.tokenCount;let t=await this.inferenceRequestDb.inferenceRequests.get(e.requestId);t&&t.endingAt>new Date&&this.emit("inferenceResultAwaitingEmbedding",t,e)}}async saveInferenceCommit(e){let t=await this.inferenceRequestDb.inferenceRequests.get(e.packet.requestId);if(!t){A.error("No matching inference request for commit to save ".concat(e.packet.requestId),e);return}await this.quorumDb.processInferenceCommit(e,t)}async saveInferenceRequest(e){var t;let s=Object.values(e.payload).join("");if(null!==(t=e.requestId)&&void 0!==t||(e.requestId=p.UG.bytesToHex((0,x.J)(s))+"."+(0,g.zs)(8)),await this.inferenceRequestDb.inferenceRequests.get(e.requestId)){A.trace("Inference request ".concat(e.requestId," already exists. Skipping save."));return}let n=new Date(new Date(e.payload.createdAt).getTime()+e.payload.securityFrame.maxTimeMs);e.endingAt=n;let i={...e,endingAt:n,requestId:e.requestId};A.debug("Saving ".concat(i.requestId," ending in ").concat((i.endingAt.getTime()-Date.now())/1e3,"s"),i),await this.inferenceRequestDb.inferenceRequests.put(i),n>new Date&&(this.activeInferenceRequests.push(i),A.debug("".concat(this.activeInferenceRequests.length," Active inferences after save")),this.refreshCleanupTimeout()),i.endingAt>new Date&&setTimeout(()=>this.emit("newActiveInferenceRequest",i),0),setTimeout(()=>this.emit("newInferenceRequest",i),0)}constructor(e,t={}){super(),this.mySynthientId=e,this.activeInferenceRequests=[],this.totalTokens=0,this.cleanupTimeout=null,this.inferenceRequestDb=new T(t),this.inferenceResultDb=new z(t),this.inferenceEmbeddingDb=new _(t),this.quorumDb=new S(e),this.quorumDb.on("requestReveal",e=>{this.emitRevealRequests(e)}),this.completeBoot()}}var B=s(24754),N=s(12683),V=s(37678),M=s(31406),Q=s(30701);let F=(0,k.hu)("Domain",k.$5.theDomain),G=(0,Q.e)((0,a.ri)().p2pSettings);class W{static createP2PNetworkInstance(e,t){switch(e){case"gun":return new V.p(t,{gunPeers:G.PEWPEW.bootstrapPeers,gunTopic:G.PEWPEW.topic,startupDelayMs:G.PEWPEW.bootFixedDelayMs});case"nkn":return new N.t(t,{nknTopic:G.NKN.topic,nknWalletPassword:"password"},G.NKN);case"nostr":return new M.f(t,{relayRedundancy:G.TRYSTERO.relayRedundancy,rtcConfig:G.TRYSTERO.rtcConfig,trysteroTopic:G.TRYSTERO.topic,trysteroAppId:G.TRYSTERO.appId,trysteroType:"nostr"},G.TRYSTERO);case"torrent":return new M.f(t,{relayRedundancy:G.TRYSTERO.relayRedundancy,rtcConfig:G.TRYSTERO.rtcConfig,trysteroTopic:G.TRYSTERO.topic,trysteroAppId:G.TRYSTERO.appId,trysteroType:"torrent"},G.TRYSTERO);default:throw Error("Unsupported P2P network: ".concat(e))}}static async initializeP2PNetworks(e,t){let s=e.map(e=>!1);if("timeout"===await Promise.race([(0,g.GR)(t),Promise.all(e.map((e,t)=>e.waitForReady().then(()=>s[t]=!0)))])&&(F.debug("Timed out waiting for all networks to load."),e.filter((e,t)=>!s[t]).length>=e.length))throw Error("No p2p networks could be loaded in time. Please check logs for errors.");return e.filter((e,t)=>s[t])}}var L=s(22170),H=s.n(L),O=s(28580);let Z=(0,k.hu)("Domain",k.$5.theDomain),Y=(0,a.ri)();class J{static getInstance(){return this.instance?this.instance:null}hookupConnections(){for(let e of this.p2pNetworkInstances){let t=e.listenForPacket(async e=>{this.packetDB.receivePacket(e)});this.shutdownListeners.push(()=>t())}this.shutdownListeners.push(function(e,t,s){let n=(e,n)=>{s.debug("Saving p2p inference request to our db"),setTimeout(()=>t.saveInferenceRequest({fetchedAt:new Date,fromSynthientId:n,requestId:e.requestId,payload:e.payload}),0)},i=e=>{setTimeout(()=>{s.debug("Processing new inference commit"),t.saveInferenceCommit(e)},0)},r=e=>{setTimeout(()=>{s.debug("Processing new inference reveal request"),t.processInferenceRevealRequest(e)},0)},a=e=>{setTimeout(()=>{s.debug("Processing new inference reveal"),t.processInferenceReveal(e)},0)},o=e=>{setTimeout(()=>{s.debug("Processing new consensus packet"),t.processExternalConsensus(e)},0)};return e.on("newP2PInferenceRequest",n),e.on("newInferenceCommit",i),e.on("newInferenceRevealRequest",r),e.on("newInferenceRevealed",a),e.on("consensusPacketReceived",o),()=>{e.removeListener("newP2PInferenceRequest",n),e.removeListener("newInferenceCommit",i),e.removeListener("newInferenceRevealRequest",r),e.removeListener("newInferenceRevealed",a),e.removeListener("consensusPacketReceived",o)}}(this.packetDB,this.inferenceDB,Z)),this.shutdownListeners.push(function(e,t,s){let n=t=>{setTimeout(()=>{s.debug("New inference embedding, committing to result"),e.transmitPacket({type:"inferenceCommit",bEmbeddingHash:t.bEmbeddingHash,requestId:t.requestId,inferenceId:t.inferenceId,createdAt:(0,g.MQ)(new Date)})},0)},i=t=>{setTimeout(()=>{s.debug("Publishing reveal requests"),t.forEach(t=>{e.transmitPacket(t)})},0)},r=t=>{setTimeout(()=>{s.debug("Publishing revealed inference"),e.transmitPacket(t)},0)},a=t=>{t.forEach(t=>{setTimeout(()=>{s.debug("New consensus packets, propagating"),e.transmitPacket(t)},0)})};return t.on("newInferenceEmbedding",n),t.on("requestQuorumReveal",i),t.on("revealedInference",r),t.quorumDb.on("consensusPackets",a),()=>{t.removeListener("newInferenceEmbedding",n),t.removeListener("requestQuorumReveal",i),t.removeListener("revealedInference",r),t.quorumDb.removeListener("consensusPackets",a)}}(this.packetDB,this.inferenceDB,Z)),this.inferenceDB.quorumDb.on("newQuorumAwaitingConsensus",(e,t,s,n)=>{Z.debug("New quorum awaiting consensus verification - ".concat(e," with our work included: ").concat(n)),this.inferenceStatus.embeddingQueue.find(t=>"consensusVerification"===t.request.type&&t.request.requestId===e)||this.inferenceStatus.embeddingQueue.push({model:t,request:{type:"consensusVerification",requestId:e,priorityConsensusVerification:n},expiresAt:new Date(s.getTime()+Y.quorumSettings.quorumConsensusWindowMs),queued:!1}),setTimeout(()=>this.processEmbeddingQueue(),0)}),this.embeddingEngine.on("workerFree",()=>{Z.debug("Worker free, checking for jobs"),setTimeout(()=>this.processEmbeddingQueue(),0)}),this.llmEngine.on("workerFree",()=>{Z.debug("Worker free, checking for jobs"),setTimeout(()=>this.processInferenceRequestQueue(),0)}),this.llmEngine.on("workerLoaded",e=>{let{modelName:t,workerId:s}=e;this.packetDB.transmitPacket({type:"peerStatusUpdate",status:"loaded_worker",totalWorkers:Object.keys(this.llmEngine.getWorkerStates()).length,createdAt:(0,g.MQ)(new Date),modelName:t})}),this.inferenceDB.on("inferenceResultAwaitingEmbedding",(e,t)=>{Z.debug("New inference awaiting embedding"),this.inferenceStatus.embeddingQueue.push({model:e.payload.securityFrame.embeddingModel,expiresAt:e.endingAt,request:{type:"resultEmbedding",request:e,result:t},queued:!1}),setTimeout(()=>this.processEmbeddingQueue(),0)}),this.inferenceDB.on("newActiveInferenceRequest",e=>{Z.debug("New active inference request, starting inference loop."),setTimeout(()=>this.processInferenceRequestQueue(),0)})}async getStats(e){let{peerStats:t,packetCount:s}=await this.packetDB.getStats(e);return{peerStats:t,packetCount:s,ourStats:{tokens:this.inferenceDB.totalTokens,workers:Object.keys(this.llmEngine.getWorkerStates()).length}}}async addChainIdentity(e,t,s){let n=await (0,v.YK)(this.synthientId,e);if(this.chainIdentities.find(e=>e.address===n))return Z.debug("Identity already exists for this address ".concat(n)),!0;if(!n)return Z.error("Could not recover address from signed chain identity",e),!1;try{this.chainIdentities.push({address:n,chain:t,signedWithWallet:s,synthientIdSignature:e}),await (0,c.il)(this.clientInfo,this.identityPassword),Z.debug("Updated local identity with new chain ids."),await this.packetDB.transmitPacket({type:"peerConnectedChain",createdAt:(0,g.MQ)(new Date),identities:this.chainIdentities})}catch(e){return Z.error("Could not save new chain identity",e),!1}return!0}async processEmbeddingQueue(){let e=(0,g.zs)(3);Z.debug("EmbeddingQueue: ".concat(e,": Processing embedding queue."));let t=this.embeddingEngine.getAvailableModels();Z.debug("EmbeddingQueue: ".concat(e,": Available models - ").concat(t)),this.inferenceStatus.embeddingQueue=this.inferenceStatus.embeddingQueue.filter(e=>e.expiresAt>new Date).sort((e,t)=>"consensusVerification"===e.request.type&&e.request.priorityConsensusVerification&&("consensusVerification"!==t.request.type||!t.request.priorityConsensusVerification)?-1:"consensusVerification"===t.request.type&&t.request.priorityConsensusVerification&&("consensusVerification"!==e.request.type||!e.request.priorityConsensusVerification)?1:"resultEmbedding"===e.request.type&&"resultEmbedding"!==t.request.type?-1:"resultEmbedding"!==e.request.type&&"resultEmbedding"===t.request.type?1:e.expiresAt.getTime()-t.expiresAt.getTime()),Z.trace("EmbeddingQueue: ",e,": Sorted embedding queue - ",this.inferenceStatus.embeddingQueue);let s=this.inferenceStatus.embeddingQueue.filter(e=>!e.queued&&t.includes(e.model));Z.debug("EmbeddingQueue: ".concat(e,": Items to process - ").concat(s.length),s);let n=Array.from(new Set(s.map(e=>e.model)));Z.debug("EmbeddingQueue: ".concat(e,": Usable models - ").concat(n));let i=Object.values(this.embeddingEngine.embeddingWorkers).filter(e=>!e.busy&&n.includes(e.modelName));Z.debug("EmbeddingQueue: ".concat(e,": Available workers - ").concat(i.length)),i.length&&s.length&&this.packetDB.transmitPacket({type:"peerStatusUpdate",status:"computing_bEmbeddingHash",embeddingModels:n,createdAt:(0,g.MQ)(new Date)});for(let t=0;t<Math.min(i.length,s.length);t++){let n=s[t];n.queued=!0,Z.debug("EmbeddingQueue: ".concat(e,": Embedding ").concat(n.request.type),"resultEmbedding"===n.request.type?n.request.result.result:n.request.requestId);let i=[];if("consensusVerification"===n.request.type){let e=await this.inferenceDB.quorumDb.getQuorum(n.request.requestId);if(!e){Z.error("EmbeddingQueue: Could not find quorum for consensus verification",n.request.requestId),this.inferenceStatus.embeddingQueue=this.inferenceStatus.embeddingQueue.filter(e=>e!==s[t]);continue}i=e.quorum.filter(e=>!!e.reveal&&e.synthientId!==this.clientInfo.synthientId).map(e=>e.reveal.output)}else i=[n.request.result.result.result];if(!i.length){Z.error("EmbeddingQueue: No embeddings to embed for payload",n),this.inferenceStatus.embeddingQueue=this.inferenceStatus.embeddingQueue.filter(e=>e!==s[t]);continue}Z.debug("EmbeddingQueue: Embedding now",i),this.embeddingEngine.embedText(i,n.model).then(async e=>{if(Z.debug("EmbeddingQueue: Embedding completed",n," - ",e&&(null==e?void 0:e.length)),e&&e.length){if("resultEmbedding"===n.request.type){let t=e[0],s=await (0,v.TU)(t.binaryEmbedding,this.clientInfo.synthientId);this.inferenceDB.saveInferenceEmbedding(n.request.result,{inferenceId:n.request.result.inferenceId,requestId:n.request.result.requestId,embedding:t.embedding,bEmbedding:t.binaryEmbedding,bEmbeddingHash:s})}else this.inferenceDB.processVerifiedConsensusEmbeddings({requestId:n.request.requestId,results:e})}else Z.error("EmbeddingQueue: Embedding failed for ".concat(n.request.type))}).catch(e=>{Z.error("EmbeddingQueue: Error embedding - ".concat(e))})}}async shutdownDomain(){for(let e of this.shutdownListeners)e()}static async bootup(e){let{identityPassword:t,overwriteIdentity:s,initialEmbeddingWorkers:n,initialLLMWorkers:i}=e;if(J.instance)return J.instance;if(J.loadingPromise)return J.loadingPromise.promise;J.loadingPromise=new O.C,Z.debug("Booting up the the domain...");let r=await (0,c.K6)(t,s);Z.debug("Identity retrieved/created successfully.");let a=Y.theDomainSettings.enabledP2PNetworks.map(e=>W.createP2PNetworkInstance(e,r.synthientId));Z.debug("Initialized p2p networks, waiting for bootup...");let o=await W.initializeP2PNetworks(a,Y.theDomainSettings.waitForP2PBootupMs);return Z.debug("Connecting up working networks."),this.instance=new J(t,r,o,n,i),J.loadingPromise.resolve(this.instance),this.instance}constructor(e,t,s,n,i){this.identityPassword=e,this.clientInfo=t,this.p2pNetworkInstances=s,this.shutdownListeners=[],this.inferenceStatus={inferenceIdsInProcess:[],inferenceCompletionInterval:null,waitingForWorker:!1,embeddingQueue:[]},this.processInferenceRequestQueue=H()(()=>{let e=(0,g.zs)(3),t=this.inferenceDB.activeInferenceRequests.filter(e=>e.endingAt>new Date&&!this.inferenceStatus.inferenceIdsInProcess.includes(e.requestId));Z.debug("Request Inference Queue: ".concat(e,": Processing inference request queue: ").concat(t.length," available."));let s=Array.from(new Set(t.map(e=>e.payload.acceptedModels).flat()));Z.debug("Request Inference Queue: ".concat(e,": Models needed - ").concat(s));let n=this.llmEngine.getWorkerAvailability(s);Z.debug("Request Inference Queue: ".concat(e,": Worker availability - "),n);let i=t.filter(e=>e.payload.acceptedModels.some(e=>n[e]&&n[e].free>0));if(Z.debug("Request Inference Queue: ".concat(e,": Possible inferences - ").concat(i.length)),!i.length){Z.debug("Request Inference Queue: ".concat(e,": No inferences to process."));return}let r=i.sort((e,t)=>t.endingAt.getTime()-e.endingAt.getTime()),a=r.filter(e=>Math.abs(e.endingAt.getTime()-r[0].endingAt.getTime())<Y.theDomainSettings.requestSimilarityTimeWindowMs);Z.debug("Request Inference Queue: Random selection group has ".concat(a.length," inferences"));let o=a[Math.floor(Math.random()*a.length)];Z.debug("Request Inference Queue: ".concat(e,": Selected inference - ").concat(o.requestId)),this.inferenceStatus.inferenceIdsInProcess.push(o.requestId);let c=new Date;this.packetDB.transmitPacket({type:"peerStatusUpdate",status:"inferencing",modelName:o.payload.acceptedModels[0],createdAt:(0,g.MQ)(new Date)}),this.llmEngine.runInferenceNonStreaming({modelName:o.payload.acceptedModels[0],messages:[{role:"user",content:o.payload.prompt}]}).then(t=>{Z.debug("Request Inference Queue: ".concat(e,": Inference completed for ").concat(o.requestId),t);let s=new Date;if(t.success){let e=s.getTime()/1e3-c.getTime()/1e3,n=t.tokenCount&&e?t.tokenCount/e:0;this.packetDB.transmitPacket({type:"peerStatusUpdate",status:"completed_inference",modelName:o.payload.acceptedModels[0],tps:n,totalTokens:this.inferenceDB.totalTokens,createdAt:(0,g.MQ)(new Date)})}return this.inferenceDB.saveInferenceResult({requestId:o.requestId,inferenceId:o.requestId+"."+(0,g.zs)(),startedAt:(0,g.MQ)(c),completedAt:(0,g.MQ)(new Date),result:t})}).then(()=>{this.inferenceStatus.inferenceIdsInProcess=this.inferenceStatus.inferenceIdsInProcess.filter(e=>e!==o.requestId)}).catch(e=>(Z.error("Request Inference Queue: Error running inference - ".concat(e)),this.inferenceDB.saveInferenceResult({requestId:o.requestId,inferenceId:o.requestId+"."+(0,g.zs)(),startedAt:(0,g.MQ)(c),completedAt:(0,g.MQ)(new Date),result:{success:!1,error:e}}))),Z.debug("Request Inference Queue: ".concat(e,": Waiting a tick before next inference.")),setTimeout(()=>this.processInferenceRequestQueue(),0)},Y.theDomainSettings.inferenceRequestQueueDebounceMs,{leading:!0});let r=async e=>{await Promise.all(this.p2pNetworkInstances.map(t=>t.broadcastPacket(e)))};this.synthientId=t.synthientId,this.chainIdentities=t.chainIds,this.packetDB=new B.j(t,r),this.inferenceDB=new P(t.synthientId),Z.debug("Databases created."),this.embeddingEngine=new u.X,this.llmEngine=new m.g,Z.debug("Setting up connections..."),this.hookupConnections(),Z.debug("Starting workers...");let a=[];for(let e of n)a.push(this.embeddingEngine.scaleEmbeddingWorkers(e.modelName,e.count));for(let e of i)a.push(this.llmEngine.scaleLLMWorkers(e.modelName,e.count));this.inferenceDB.on("bootComplete",e=>{this.packetDB.transmitPacket({type:"peerStatusUpdate",status:"boot",totalTokens:e,createdAt:(0,g.MQ)(new Date)})}),this.chainIdentities.length&&this.packetDB.transmitPacket({type:"peerConnectedChain",createdAt:(0,g.MQ)(new Date),identities:this.chainIdentities})}}J.loadingPromise=null;let U=new Date;U.setDate(U.getDate()-1);var K=JSON.parse('{"v":"5.9.4","fr":30,"ip":29,"op":87,"w":502,"h":530,"nm":"Ball 1","ddd":0,"assets":[{"id":"comp_0","nm":"1","fr":30,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[540,540,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-309,-310],[66,-63]],"o":[[0,0],[81.956,82.221],[-36.884,35.207]],"v":[[-105,62],[61,-218],[121,212.999]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[48]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":14,"s":[32.8]},{"i":{"x":[0.3],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":34,"s":[32.8]},{"t":50,"s":[0]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[52]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":14,"s":[46.6]},{"i":{"x":[0.3],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":34,"s":[46.6]},{"t":50,"s":[6]}],"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[196]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":14,"s":[111.75]},{"i":{"x":[0.3],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":34,"s":[15.75]},{"t":50,"s":[6]}],"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"gs","o":{"a":0,"k":100,"ix":9},"w":{"a":0,"k":134,"ix":10},"g":{"p":3,"k":{"a":0,"k":[0,0.973,0.797,0.469,0.5,0.986,0.724,0.235,1,1,0.652,0],"ix":8}},"s":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"t":0,"s":[-178,48],"to":[36.667,-14.667],"ti":[-18.667,44.667]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":14,"s":[42,-40],"to":[18.667,-44.667],"ti":[37.333,-13.333]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"t":34,"s":[-66,-220],"to":[-37.333,13.333],"ti":[19.333,-43.333]},{"t":50,"s":[-182,40]}],"ix":4},"e":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"t":0,"s":[-48,10],"to":[40,-17.333],"ti":[-10.667,58.667]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":14,"s":[192,-94],"to":[10.667,-58.667],"ti":[38,-15.333]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"t":34,"s":[16,-342],"to":[-38,15.333],"ti":[8.667,-56.667]},{"t":50,"s":[-36,-2]}],"ix":5},"t":1,"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":13},"bm":0,"nm":"Gradient Stroke 1","mn":"ADBE Vector Graphic - G-Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180,"st":0,"ct":1,"bm":0}]},{"id":"comp_1","nm":"2","fr":30,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[540,540,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-309,-310],[66,-63]],"o":[[0,0],[81.956,82.221],[-36.884,35.207]],"v":[[-105,62],[61,-218],[121,212.999]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[48]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":14,"s":[32.8]},{"i":{"x":[0.3],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":34,"s":[32.8]},{"t":50,"s":[0]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[52]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":14,"s":[46.6]},{"i":{"x":[0.3],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":34,"s":[46.6]},{"t":50,"s":[6]}],"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[196]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":14,"s":[111.75]},{"i":{"x":[0.3],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":34,"s":[15.75]},{"t":50,"s":[6]}],"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"gs","o":{"a":0,"k":100,"ix":9},"w":{"a":0,"k":134,"ix":10},"g":{"p":3,"k":{"a":0,"k":[0,0.028,0.426,0.557,0.5,0.192,0.592,0.71,1,0.355,0.758,0.863],"ix":8}},"s":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"t":0,"s":[-176,56],"to":[36.667,-16.667],"ti":[-18,46]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":14,"s":[44,-44],"to":[18,-46],"ti":[36,-14.667]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"t":34,"s":[-68,-220],"to":[-36,14.667],"ti":[17.333,-44]},{"t":50,"s":[-172,44]}],"ix":4},"e":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"t":0,"s":[-24,4],"to":[38.667,-16],"ti":[-4.667,60]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":14,"s":[208,-92],"to":[4.667,-60],"ti":[46,-4.667]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"t":34,"s":[4,-356],"to":[-46,4.667],"ti":[12,-48.667]},{"t":50,"s":[-68,-64]}],"ix":5},"t":1,"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":13},"bm":0,"nm":"Gradient Stroke 1","mn":"ADBE Vector Graphic - G-Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180,"st":0,"ct":1,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"1","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[238,336.72,0],"ix":2,"l":2},"a":{"a":0,"k":[540,540,0],"ix":1,"l":2},"s":{"a":0,"k":[78,78,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[-4,-12],[0,0],[0,0],[0,0],[25.25,-7.25],[22.25,1.75],[0,0],[0,0],[0,0],[-1.5,-30.75],[62,3.75]],"o":[[0,0],[0,0],[4,12],[0,0],[0,0],[0,0],[-28.75,7.25],[-76.75,-16.75],[0,0],[0,0],[0,0],[-1,36.25],[-101.956,-2.983]],"v":[[285,354],[306,272],[454,100],[962,276],[838,640],[806,656],[745,701],[673.5,706],[607,637],[555,571],[553,505],[475,383.5],[367.5,443]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":1080,"h":1080,"ip":58,"op":108,"st":58,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"2","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[238,336.72,0],"ix":2,"l":2},"a":{"a":0,"k":[540,540,0],"ix":1,"l":2},"s":{"a":0,"k":[78,78,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[-4,-12],[0,0],[0,0],[0,0],[25.25,-7.25],[22.25,1.75],[0,0],[0,0],[0,0],[-1.5,-30.75],[62,3.75]],"o":[[0,0],[0,0],[4,12],[0,0],[0,0],[0,0],[-28.75,7.25],[-76.75,-16.75],[0,0],[0,0],[0,0],[-1,36.25],[-101.956,-2.983]],"v":[[285,354],[306,272],[454,100],[962,276],[838,640],[806,656],[745,701],[673.5,706],[607,637],[555,571],[553,505],[475,383.5],[367.5,443]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":1080,"h":1080,"ip":29,"op":79,"st":29,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"1","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[238,336.72,0],"ix":2,"l":2},"a":{"a":0,"k":[540,540,0],"ix":1,"l":2},"s":{"a":0,"k":[78,78,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[-4,-12],[0,0],[0,0],[0,0],[25.25,-7.25],[22.25,1.75],[0,0],[0,0],[0,0],[-1.5,-30.75],[62,3.75]],"o":[[0,0],[0,0],[4,12],[0,0],[0,0],[0,0],[-28.75,7.25],[-76.75,-16.75],[0,0],[0,0],[0,0],[-1,36.25],[-101.956,-2.983]],"v":[[285,354],[306,272],[454,100],[962,276],[838,640],[806,656],[745,701],[673.5,706],[607,637],[555,571],[553,505],[475,383.5],[367.5,443]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":1080,"h":1080,"ip":0,"op":50,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[113.2,215.04,0],"ix":2,"l":2},"a":{"a":0,"k":[-276,36,0],"ix":1,"l":2},"s":{"a":0,"k":[78,78,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[188,120],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.345098039216,0.094117647059,0.270588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-276,36],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[362.8,420.96,0],"ix":2,"l":2},"a":{"a":0,"k":[-276,36,0],"ix":1,"l":2},"s":{"a":0,"k":[78,78,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[188,120],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.345098039216,0.094117647059,0.270588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-276,36],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180,"st":0,"ct":1,"bm":0}],"markers":[]}'),$=s.t(K,2),X=s(42421),ee=s(60287),et=s(38364),es=s(12218),en=s(49354);let ei=(0,es.j)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),er=o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(et.f,{ref:t,className:(0,en.cn)(ei(),s),...i})});er.displayName=et.f.displayName;var ea=s(4919),eo=s(79798);function ec(e){let{submitInferenceRequest:t}=e,s=(0,o.useRef)(null),[i,a]=(0,o.useState)(["gemma-2b-it-q4f16_1"]),[c,d]=(0,o.useState)("50"),[u,m]=(0,o.useState)("500"),[h,x]=(0,o.useState)("2"),[p,g]=(0,o.useState)("30"),{toast:f}=(0,l.pm)();function k(){var e;let n={prompt:null===(e=s.current)||void 0===e?void 0:e.value.slice(0,4e3),models:i,minimumParticipants:parseInt(h),timeAvailableSeconds:parseInt(p),percentageAgreement:parseInt(c)};if(!n.prompt){f({variant:"destructive",title:"Prompt is empty",description:"Please enter a prompt before sending an inference request."});return}if(0===n.models.length){f({variant:"destructive",title:"No models selected",description:"Please select at least one model before sending an inference request."});return}if(isNaN(n.minimumParticipants)||n.minimumParticipants<=0){f({variant:"destructive",title:"Invalid number of nodes",description:"Please enter a valid number of nodes before sending an inference request."});return}if(isNaN(n.timeAvailableSeconds)||n.timeAvailableSeconds<=0){f({variant:"destructive",title:"Invalid expiry timeout",description:"Please enter a valid expiry timeout in seconds before sending an inference request."});return}if(isNaN(n.percentageAgreement)||n.percentageAgreement<=0||n.percentageAgreement>100){f({variant:"destructive",title:"Invalid consensus percentage",description:"Please enter a valid consensus percentage before sending an inference request."});return}t(n.prompt,n.models,n.minimumParticipants,n.timeAvailableSeconds,n.percentageAgreement),s.current.value=""}return(0,n.jsxs)("div",{className:"relative overflow-hidden rounded-lg border bg-background focus-within:ring-2 focus-within:ring-ring ring-1",children:[(0,n.jsx)(er,{htmlFor:"prompt",className:"sr-only",children:"Prompt"}),(0,n.jsx)(ea.g,{id:"prompt",autoFocus:!0,ref:s,placeholder:"Type your prompt for inference here...",className:"min-h-24 resize-none border-0 p-3 shadow-none focus-visible:ring-0 text-md",onKeyDown:e=>{"Enter"===e.key&&e.metaKey&&k()}}),(0,n.jsxs)(r.kC,{justify:"center",p:"2",pt:"0",gap:"2",children:[(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsxs)(r.zx,{variant:"ghost",mt:"2",size:"2",color:"gray",ml:"3",children:["Models ",(0,n.jsx)(X.Z,{width:15})]})}),(0,n.jsx)(r.J2.Content,{width:"250px",children:(0,n.jsxs)(r.kC,{direction:"column",gap:"2",p:"3",children:[(0,n.jsx)("label",{children:(0,n.jsx)(r.xv,{as:"div",size:"2",mb:"1",weight:"bold",color:"gray",children:"Which models are allowed?"})}),(0,n.jsx)(r.cO.Root,{defaultValue:i,name:"selectedModels",onValueChange:e=>a(e),children:eo.o.map(e=>(0,n.jsx)(r.cO.Item,{value:e,children:e},e))})]})})]}),(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsxs)(r.zx,{variant:"ghost",mt:"2",size:"2",color:"gray",ml:"3",children:["Consensus ",(0,n.jsx)(X.Z,{width:15})]})}),(0,n.jsx)(r.J2.Content,{width:"250px",children:(0,n.jsxs)(r.kC,{direction:"column",gap:"2",p:"3",children:[(0,n.jsx)("label",{children:(0,n.jsx)(r.xv,{as:"div",size:"2",mb:"1",weight:"bold",color:"gray",children:"How many nodes should participate and how many should agree?"})}),(0,n.jsxs)(r.kC,{gap:"2",children:[(0,n.jsx)(r.nv.Root,{placeholder:"30",size:"2",type:"number",className:"max-w-14",value:c,onInput:e=>d(e.currentTarget.value),children:(0,n.jsx)(r.nv.Slot,{side:"right",children:(0,n.jsx)(r.xv,{children:"%"})})}),(0,n.jsx)(r.xv,{size:"2",children:"of"}),(0,n.jsx)(r.nv.Root,{placeholder:"6000",size:"2",type:"number",value:h,onInput:e=>x(e.currentTarget.value),children:(0,n.jsx)(r.nv.Slot,{side:"right",children:(0,n.jsx)(r.xv,{children:"nodes"})})})]}),(0,n.jsx)("label",{children:(0,n.jsx)(r.xv,{as:"div",size:"2",mt:"2",mb:"1",weight:"bold",color:"gray",children:"How big should the consensus circle be? (Feel free to play around with this!)"})}),(0,n.jsx)(r.nv.Root,{placeholder:"6000",size:"2",type:"number",value:u,onInput:e=>m(e.currentTarget.value)})]})})]}),(0,n.jsx)(r.u,{content:"Maximum timeout for inferences to come in.",children:(0,n.jsx)(r.nv.Root,{placeholder:"6000",ml:"3",className:"w-[5.3rem] flex-shrink mt-1",value:p,onInput:e=>g(e.currentTarget.value),children:(0,n.jsx)(r.nv.Slot,{side:"right",children:(0,n.jsx)(r.xv,{children:"secs"})})})}),(0,n.jsxs)(r.zx,{type:"submit",size:"3",variant:"solid",color:"indigo",highContrast:!0,ml:"auto",className:"ml-auto gap-1.5 flex-grow",onClick:k,children:["Send to Rakis",(0,n.jsx)(ee.Z,{className:"size-3.5"})]})]})]})}var el=s(64341),ed=s(71935),eu=s(24972),em=s(33565);eu.Z.addDefaultLocale(em.Z);let eh=new eu.Z("en-US");function ex(){let[e,t]=(0,o.useState)([]),[s,a]=(0,o.useState)("all"),[c,l]=(0,o.useState)("all"),[d,u]=(0,o.useState)([]),[m,h]=(0,o.useState)([]);return(0,o.useEffect)(()=>{let e=()=>{t(k.HQ.getInstance().logs.filter(e=>("all"===s||e.logger===s)&&("all"===c||e.type===c))),u(Array.from(new Set(k.HQ.getInstance().logs.map(e=>e.logger)))),h(Array.from(new Set(k.HQ.getInstance().logs.map(e=>e.type))))};return e(),k.HQ.getInstance().on("newLog",e),()=>{k.HQ.getInstance().off("newLog",e)}},[s,c]),(0,n.jsxs)(r.kC,{direction:"column",gap:"5",py:"4",px:"2",children:[(0,n.jsxs)(r.kC,{gap:"2",children:[(0,n.jsx)("label",{children:(0,n.jsx)(r.xv,{size:"2",color:"gray",mt:"1",children:"Showing"})}),(0,n.jsxs)(r.Ph.Root,{defaultValue:"all",value:s,onValueChange:a,children:[(0,n.jsx)(r.Ph.Trigger,{variant:"soft"}),(0,n.jsxs)(r.Ph.Content,{children:[(0,n.jsx)(r.Ph.Group,{children:(0,n.jsx)(r.Ph.Item,{value:"all",children:"All"})}),(0,n.jsx)(r.Ph.Group,{children:d.map(e=>(0,n.jsx)(r.Ph.Item,{value:e,children:e},e))})]})]}),(0,n.jsx)(r.xv,{size:"2",color:"gray",mt:"1",children:"logs of type"}),(0,n.jsxs)(r.Ph.Root,{defaultValue:"all",value:c,onValueChange:l,children:[(0,n.jsx)(r.Ph.Trigger,{variant:"soft"}),(0,n.jsxs)(r.Ph.Content,{children:[(0,n.jsx)(r.Ph.Group,{children:(0,n.jsx)(r.Ph.Item,{value:"all",children:"All"})}),(0,n.jsx)(r.Ph.Group,{children:m.map(e=>(0,n.jsx)(r.Ph.Item,{value:e,children:e.slice(0,1).toUpperCase()+e.slice(1)},e))})]})]})]}),e.map(e=>(0,n.jsx)(r.Zb,{variant:"ghost",style:{borderBottom:"1px solid var(--gray-3)",..."warn"===e.type?{backgroundColor:"var(--orange-5)"}:"error"===e.type?{backgroundColor:"var(--red-5)"}:{}},children:(0,n.jsxs)(r.kC,{gap:"2",align:"center",children:[(0,n.jsx)(r.xu,{minWidth:"10px",mr:"2",children:"debug"===e.type||"trace"===e.type?(0,n.jsx)(i.H4u,{height:"18",width:"18",className:"mb-4"}):"info"===e.type?(0,n.jsx)(i.H4u,{height:"18",width:"18",className:"mb-4"}):"warn"===e.type?(0,n.jsx)(el.Z,{height:"18",width:"18",className:"mb-4"}):(0,n.jsx)(ed.Z,{height:"18",width:"18",className:"mb-4"})}),(0,n.jsxs)(r.kC,{direction:"column",flexGrow:"1",children:[(0,n.jsx)(r.xv,{size:"2",children:e.message}),(0,n.jsxs)(r.kC,{justify:"between",mt:"1",children:[(0,n.jsx)(r.xv,{size:"1",color:"gray",weight:"medium",children:e.logger}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:eh.format(e.at)})]})]})]})},e.id))]})}function ep(e){let{packetLimit:t}=e,[s,n]=(0,o.useState)(null),i=(0,o.useRef)(null),[r,a]=(0,o.useState)(null),c=(0,o.useRef)(null),l=H()(async()=>{s&&a(await s.packetDB.getLastPackets(t))},10);return(0,o.useEffect)(()=>(s||i.current?s&&!c.current&&(c.current=setInterval(()=>{l()},1e3),l()):i.current=setInterval(()=>{let e=J.getInstance();e&&(clearInterval(i.current),i.current=null,n(e))}),()=>{i.current&&(clearInterval(i.current),i.current=null),c.current&&(clearInterval(c.current),c.current=null)}),[s,t,l]),r}var eg=s(43061),ef=s(94207),ek=s(11240),ey=s(55182),ev=s(30690),eb=s(92940),ew=s(54817);let eq=new eu.Z("en-US"),ej=e=>{switch(e){case"loaded_worker":case"inferencing":case"completed_inference":return"blue";case"computing_bEmbeddingHash":case"verifying quorum":return"orange";default:return"gray"}},eI=e=>e.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "),eR=e=>{switch(e){case"peerStatusUpdate":return(0,n.jsx)(ef.Z,{size:20});case"knownPeers":return(0,n.jsx)(ek.Z,{size:20});case"peerHeart":return(0,n.jsx)(ey.Z,{size:20});case"peerInfo":return(0,n.jsx)(ev.Z,{size:20});case"peerConnectedChain":return(0,n.jsx)(eb.Z,{size:20});case"inferenceCommit":case"inferenceRevealRequest":case"inferenceReveal":case"inferenceRevealRejected":case"inferenceQuorumComputed":case"p2pInferenceRequest":return(0,n.jsx)(ew.Z,{size:20});default:return null}},eE=e=>{switch(e.packet.type){case"peerStatusUpdate":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:ej(e.packet.status),children:eI(e.packet.status)}),"loaded_worker"===e.packet.status&&(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Model: ",e.packet.modelName]}),"inferencing"===e.packet.status&&(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Model: ",e.packet.modelName]}),"completed_inference"===e.packet.status&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Model: ",e.packet.modelName]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["TPS: ",e.packet.tps]})]}),"computing_bEmbeddingHash"===e.packet.status&&(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Embedding Models: ",e.packet.embeddingModels.join(", ")]}),"verifying quorum"===e.packet.status&&(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]})]});case"knownPeers":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"blue",children:"Known Peers"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:[e.packet.peerList.length," peers"]})]});case"peerHeart":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"green",children:"Peer Heartbeat"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Window X: ",e.packet.windowX]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Window Y: ",e.packet.windowY]})]});case"peerInfo":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"blue",children:"Peer Info"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Device Info: ",e.packet.deviceInfo]})]});case"peerConnectedChain":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"green",children:"Connected Chains"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:[e.packet.identities.length," chains"]})]});case"inferenceCommit":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"orange",children:"Inference Commit"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Inference ID: ",e.packet.inferenceId]})]});case"inferenceRevealRequest":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"orange",children:"Inference Reveal Request"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Quorum Size: ",e.packet.quorum.length]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Timeout: ",e.packet.timeoutMs,"ms"]})]});case"inferenceReveal":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"green",children:"Inference Reveal"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Inference ID: ",e.packet.inferenceId]})]});case"inferenceRevealRejected":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"red",children:"Inference Reveal Rejected"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Inference ID: ",e.packet.inferenceId]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Reject Reason: ",eI(e.packet.rejectReason.type)]})]});case"inferenceQuorumComputed":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"green",children:"Inference Quorum Computed"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Verified By: ",e.packet.verifiedBy]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Submitted Inferences: ",e.packet.submittedInferences.length]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Valid Inferences: ",e.packet.validInferences.length]})]});case"p2pInferenceRequest":return(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"3",color:"blue",children:"P2P Inference Request"}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:["Request ID: ",e.packet.requestId]})]});default:return null}};function eD(){let e=ep({packetLimit:500}),[t,s]=(0,o.useState)(""),a=(0,eg.Nr)(t,100),[c,l]=(0,o.useState)([]);return(0,o.useEffect)(()=>{e&&(a?l(e.packets.filter(e=>e.packet.type.toLowerCase().includes(a.split(" ").join("").toLowerCase()))):l(e.packets))},[a,e]),e&&(0,n.jsxs)(r.kC,{direction:"column",gap:"4",py:"4",children:[(0,n.jsx)(r.nv.Root,{placeholder:"Search packet types (".concat(e.total," packets)..."),value:t,onChange:e=>s(e.target.value),children:(0,n.jsx)(r.nv.Slot,{children:(0,n.jsx)(i._Ve,{height:"16",width:"16"})})}),c.map(e=>(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsx)(r.Zb,{style:{backgroundColor:e.packet.type.startsWith("inference")||"p2pInferenceRequest"===e.packet.type?"$orange3":"$gray3"},children:(0,n.jsxs)(r.kC,{align:"center",gap:"2",children:[eR(e.packet.type),(0,n.jsxs)(r.kC,{direction:"column",flexGrow:"1",children:[eE(e),(0,n.jsxs)(r.kC,{justify:"between",mt:"1",children:[(0,n.jsxs)(r.xv,{size:"1",color:"gray",weight:"medium",children:["from ",e.synthientId.slice(0,8)]}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:eq.format(e.receivedTime||new Date(e.packet.createdAt))})]})]})]})},e.signature+e.synthientId)}),(0,n.jsx)(r.J2.Content,{children:(0,n.jsx)(r.xu,{maxHeight:"300px",overflowY:"auto",children:(0,n.jsx)(r.FR.fC,{size:"1",children:Object.keys(e.packet).map(t=>(0,n.jsxs)(r.FR.ck,{children:[(0,n.jsx)(r.FR.__,{children:t}),(0,n.jsx)(r.FR.B4,{children:e.packet[t].constructor==Object||Array.isArray(e.packet[t])?JSON.stringify(e.packet[t]):"".concat(e.packet[t]).slice(0,100)})]},t))})})})]},e.signature+e.synthientId))]})||(0,n.jsx)(r.$j,{size:"2"})}function eS(e){let{}=e;return ep({packetLimit:500}),(0,n.jsxs)(r.kC,{direction:"column",gap:"2",children:[(0,n.jsx)(r.xv,{size:"2",weight:"medium",mt:"3",children:"Logs and Packets"}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:"Packets you send and receive are here (just the latest few), along with your node's logs."}),(0,n.jsx)(r.xu,{children:(0,n.jsx)(r.Zb,{children:(0,n.jsxs)(r.mQ.Root,{defaultValue:"logs",children:[(0,n.jsxs)(r.mQ.List,{children:[(0,n.jsx)(r.mQ.Trigger,{value:"logs",children:"Logs"}),(0,n.jsx)(r.mQ.Trigger,{value:"packets",children:"Packets"})]}),(0,n.jsxs)(r.xu,{maxHeight:"300px",overflowY:"scroll",children:[(0,n.jsx)(r.mQ.Content,{value:"logs",children:(0,n.jsx)(ex,{})}),(0,n.jsx)(r.mQ.Content,{value:"packets",children:(0,n.jsx)(eD,{})})]})]})})})]})}let eC=(0,a.ri)();var eA=s(6884);eu.Z.addDefaultLocale(em.Z);let e_=new eu.Z("en-US"),eT=()=>(0,n.jsx)(r.xu,{width:"8px",height:"8px",position:"absolute",mt:"1",ml:"-1",left:"0",style:{backgroundColor:"var(--teal-9)",borderRadius:"100%"}});function ez(e){let{inference:t}=e;return t.quorum&&t.quorum.quorum&&t.quorum.quorum.length?(0,n.jsxs)(r.Vq.Root,{children:[(0,n.jsx)(r.Vq.Trigger,{children:(0,n.jsx)(r.zx,{size:"1",variant:"outline",color:"gray",children:"View Commits"})}),(0,n.jsxs)(r.Vq.Content,{maxWidth:"650px",children:[(0,n.jsxs)(r.Vq.Title,{children:["Commits for ",t.requestId.slice(0,10)]}),(0,n.jsx)(r.Vq.Description,{size:"1",children:"Inferences committed and revealed by other nodes."}),(0,n.jsx)(r.xu,{mt:"2",maxHeight:"600px",overflowY:"scroll",children:(0,n.jsx)(r.kC,{gap:"2",direction:"column",children:t.quorum.quorum.map((e,t)=>(0,n.jsxs)(r.xu,{children:[(0,n.jsxs)(r.xv,{as:"div",size:"2",mt:"1",children:["from ",e.synthientId.slice(0,10),"..."]}),(0,n.jsxs)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:["Commited at ",e.commitReceivedAt.toLocaleString(),":"," ",e.bEmbeddingHash.slice(0,25)]}),e.reveal&&(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"3",weight:"medium",mt:"1",children:e.reveal.output}),(0,n.jsxs)(r.xv,{as:"div",size:"1",color:"gray",mt:"1",children:["Revealed at ",e.reveal.receivedAt.toLocaleString()]})]})||null]},t))})})]})]}):null}function eP(e){let{inference:t,mySynthientId:s}=e,{toast:i}=(0,l.pm)();return(0,n.jsx)(r.Zb,{children:(0,n.jsxs)(r.rj,{gap:"2",columns:"2",rows:"1",height:"125px",children:[(0,n.jsx)(r.xu,{height:"100%",children:(0,n.jsxs)(r.kC,{direction:"column",gap:"1",className:"h-full",children:[(0,n.jsx)(r.kC,{justify:"between",mx:"1",children:(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsxs)(r.zx,{size:"1",variant:"ghost",color:"gray",style:{padding:"0 5px"},children:["Parameters ",(0,n.jsx)(X.Z,{width:15})]})}),(0,n.jsx)(r.J2.Content,{width:"450px",style:{padding:"20px 30px"},children:(0,n.jsxs)(r.FR.fC,{children:[(0,n.jsxs)(r.FR.ck,{children:[(0,n.jsx)(r.FR.__,{minWidth:"88px",children:"Request Id"}),(0,n.jsx)(r.FR.B4,{children:t.requestId})]}),(0,n.jsxs)(r.FR.ck,{children:[(0,n.jsx)(r.FR.__,{minWidth:"88px",children:"Accepted Models"}),(0,n.jsxs)(r.FR.B4,{children:["(",t.requestPayload.acceptedModels.length,")"," ",t.requestPayload.acceptedModels.join(", ").slice(0,100)]})]}),(0,n.jsxs)(r.FR.ck,{children:[(0,n.jsx)(r.FR.__,{minWidth:"88px",children:"Embedding Model"}),(0,n.jsx)(r.FR.B4,{children:t.requestPayload.securityFrame.embeddingModel})]}),(0,n.jsxs)(r.FR.ck,{children:[(0,n.jsx)(r.FR.__,{minWidth:"88px",children:"Security Distance"}),(0,n.jsxs)(r.FR.B4,{children:[t.requestPayload.securityFrame.secDistance," ","distance in embedding space"]})]})]})})]})}),(0,n.jsx)(r.xu,{className:"flex-grow",mt:"1",children:(0,n.jsx)(r.u,{content:t.requestPayload.prompt,children:(0,n.jsxs)(r.xv,{size:"3",weight:"medium",children:[t.requestPayload.prompt.slice(0,60),t.requestPayload.prompt.length>60?"...":""]})})}),(0,n.jsxs)(r.xv,{size:"1",color:t.quorum&&t.quorum.quorumCommitted>=t.quorum.quorumThreshold?"grass":"amber",align:"right",mt:"1",children:[Math.floor(t.requestPayload.securityFrame.quorum*t.requestPayload.securityFrame.secPercentage),"/",t.requestPayload.securityFrame.quorum," nodes need to agree"]}),(0,n.jsxs)(r.xv,{size:"1",color:"gray",align:"right",children:["from ".concat(t.fromSynthientId?"".concat(t.fromSynthientId.slice(0,5),"..."):"unknown"," (on ").concat(t.requestPayload.fromChain,")")," ",e_.format(new Date(t.requestedAt))]})]})}),(0,n.jsxs)(r.W2,{size:"1",overflowY:"scroll",pl:"3",style:{position:"relative"},children:[(0,n.jsx)(r.xu,{position:"absolute",top:"0",left:"0",right:"0",height:"20px",style:{pointerEvents:"none",zIndex:1}}),(0,n.jsxs)(r.xu,{position:"relative",pt:"1",children:[(0,n.jsx)(r.xu,{position:"absolute",top:"0",bottom:"0",width:"1px",ml:"-0.5px",children:(0,n.jsx)(r.Z0,{size:"4",orientation:"vertical",mt:"2",style:{}})}),(0,n.jsx)(r.xu,{pl:"6",children:(0,n.jsx)(r.kC,{direction:"column-reverse",gap:"4",children:t.states.map((e,a)=>(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(eT,{}),"requested"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsxs)(r.xv,{as:"p",size:"3",children:["Requested"," ",e.by?"by ".concat(e.by===s?"this node":e.by.slice(0,5)):""]}),(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mt:"1",children:e.endingAt>new Date?"ending in ".concat(((e.endingAt.getTime()-new Date().getTime())/1e3).toFixed(1)," seconds"):"ended at ".concat(e.endingAt.toLocaleString())})]}):"committing"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsx)(r.xv,{as:"p",size:"3",children:"Collecting Inferences"}),(0,n.jsxs)(r.xv,{size:"2",weight:"bold",color:e.commitmentsCollected>=e.commitmentsNeeded?"grass":"amber",children:[e.commitmentsCollected," of ",e.commitmentsNeeded," needed"]}),(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mt:"1",children:e.endingAt>new Date?"ending in ".concat(((e.endingAt.getTime()-new Date().getTime())/1e3).toFixed(1)," seconds"):"ended at ".concat(e.endingAt.toLocaleString())})]}):"revealRequested"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsxs)(r.kC,{justify:"between",children:[(0,n.jsx)(r.xv,{as:"p",size:"3",children:"Requesting Nodes to reveal"}),(0,n.jsx)(ez,{inference:t})]}),(0,n.jsxs)(r.xv,{size:"2",weight:"bold",color:e.revealsCollected>=e.revealsNeeded?"grass":"amber",children:[e.revealsCollected," of ",e.commitments," revealed"]}),(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mt:"1",children:e.endingAt>new Date?"ending in ".concat(((e.endingAt.getTime()-new Date().getTime())/1e3).toFixed(1)," seconds"):"ended at ".concat(e.endingAt.toLocaleString())})]}):"calculatingConsensus"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsx)(r.xv,{as:"p",size:"3",children:"Nodes are calculating consensus"}),(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mt:"1",children:e.endingAt>new Date?"ending in ".concat(((e.endingAt.getTime()-new Date().getTime())/1e3).toFixed(1)," seconds"):"ended at ".concat(e.endingAt.toLocaleString())})]}):"collectingExternalConsensuses"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsx)(r.xv,{as:"p",size:"3",children:"Collecting peer consensus"}),e.collectedExternalConsensuses>0&&(0,n.jsxs)(r.xv,{size:"1",color:"gray",children:[e.collectedExternalConsensuses," collected"]}),(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mt:"1",children:e.endingAt>new Date?"ending in ".concat(((e.endingAt.getTime()-new Date().getTime())/1e3).toFixed(1)," seconds"):"ended at ".concat(e.endingAt.toLocaleString())})]}):"completed"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsx)(r.xv,{as:"p",size:"1",children:"Verified inference:"}),(0,n.jsx)(r.u,{content:e.finalOutput+" (click to copy)",children:(0,n.jsxs)(r.kC,{direction:"row",gap:"2",ml:"-5",onClick:()=>{navigator.clipboard.writeText(e.finalOutput),i({title:"Copied to clipboard"})},children:[(0,n.jsx)(r.hU,{size:"1","aria-label":"Copy value",color:"gray",variant:"ghost",children:(0,n.jsx)(eA.Z,{width:"15"})}),(0,n.jsxs)(r.xv,{as:"p",size:"3",weight:"medium",wrap:"wrap",color:"green",children:[e.finalOutput.slice(0,100),"..."]})]})}),(0,n.jsxs)(r.xv,{as:"p",size:"1",mt:"2",children:[e.validCommitments,"/",e.revealedCommitments," reveals judged valid"]}),(0,n.jsxs)(r.xv,{as:"p",size:"1",color:"gray",mt:"2",children:["Computed by ",e.external?"network":"this node"]}),(0,n.jsxs)(r.xv,{as:"p",size:"1",color:"gray",mt:"1",children:[e.bEmbeddingHash.slice(0,25),"..."]}),(0,n.jsxs)(r.xv,{as:"p",size:"1",color:"gray",mt:"1",children:[e.consensusAgreedWith," agree, ",e.consensusDisagreedWith," ","disagree"]})]}):"failed"===e.state?(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"div",size:"1",color:"gray",mb:"1",children:e.at.toLocaleString()}),(0,n.jsxs)(r.kC,{justify:"between",children:[(0,n.jsx)(r.xv,{as:"p",size:"4",weight:"medium",color:"ruby",children:"Failed"}),(0,n.jsx)(ez,{inference:t})]}),(0,n.jsx)(r.xv,{mt:"1",size:"2",children:e.reason})]}):void 0]},a))})})]})]})]})})}function eB(e){let{mySynthientId:t}=e,s=function(e){let{inferenceLimit:t}=e,[s,n]=(0,o.useState)(null),i=(0,o.useRef)(null),[r,a]=(0,o.useState)(null),c=(0,o.useRef)(null),l=H()(async()=>{s&&a((await s.inferenceDB.getInferences(t)).map(e=>{let t=function(e){let t=[];t.push({state:"requested",at:new Date(e.requestedAt),endingAt:e.endingAt,by:e.fromSynthientId});let s=!1;if(e.quorum&&(e.quorum.quorum.length>0&&t.push({state:"committing",at:e.quorum.quorum.sort((e,t)=>e.commitReceivedAt.getTime()-t.commitReceivedAt.getTime())[0].commitReceivedAt,commitmentsCollected:e.quorum.quorum.length,commitmentsNeeded:e.quorum.quorumThreshold,endingAt:e.endingAt}),e.endingAt<new Date&&(!e.quorum||e.quorum.quorumCommitted<e.quorum.quorumThreshold)&&(t.push({state:"failed",reason:"Not enough commitments",at:e.endingAt}),s=!0),!s&&("awaiting_reveal"===e.quorum.status||e.quorum.quorum.filter(e=>!!e.reveal).length)&&t.push({state:"revealRequested",at:e.endingAt,revealsNeeded:e.quorum.quorumThreshold,revealsCollected:e.quorum.quorum.filter(e=>!!e.reveal).length,commitments:e.quorum.quorum.length,endingAt:new Date(e.endingAt.getTime()+eC.quorumSettings.quorumRevealTimeoutMs)}),!s&&new Date(e.endingAt.getTime()+eC.quorumSettings.quorumRevealTimeoutMs)<new Date&&!e.quorum.quorum.filter(e=>!!e.reveal).length&&(t.push({state:"failed",reason:"Not enough reveals",at:new Date(e.endingAt.getTime()+eC.quorumSettings.quorumRevealTimeoutMs)}),s=!0),!s&&e.quorum.consensusRequestedAt&&(t.push({state:"calculatingConsensus",at:e.quorum.consensusRequestedAt,endingAt:new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs)}),!(new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs)<new Date)||e.consensusResult&&e.externalConsensuses.length||(t.push({state:"failed",reason:"No consensus computed",at:new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs)}),s=!0),!s&&e.externalConsensuses.length&&t.push({state:"collectingExternalConsensuses",at:e.quorum.consensusRequestedAt,endingAt:new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs),collectedExternalConsensuses:e.externalConsensuses.length}),!s&&new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs)<new Date&&(e.consensusResult&&e.consensusResult.result||e.externalConsensuses.length)))){if(e.consensusResult&&e.consensusResult.result)t.push({state:"completed",at:new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs),external:!0,finalOutput:e.consensusResult.result.validInference.output,validCommitments:e.consensusResult.result.validInferences.length,revealedCommitments:e.quorum.quorum.filter(e=>!!e.reveal).length,quorumThreshold:e.quorum.quorumThreshold,bEmbeddingHash:e.consensusResult.result.validInferenceJointHash,consensusAgreedWith:e.externalConsensuses.filter(t=>t.bEmbeddingHash===e.consensusResult.result.validInference.bEmbeddingHash).length,consensusDisagreedWith:e.externalConsensuses.filter(t=>t.bEmbeddingHash!==e.consensusResult.result.validInference.bEmbeddingHash).length});else if(e.externalConsensuses.length){let s={};e.externalConsensuses.forEach(e=>{s[e.bEmbeddingHash]||(s[e.bEmbeddingHash]=0),s[e.bEmbeddingHash]++});let n=Object.keys(s).reduce((e,t)=>s[e]>s[t]?e:t),i=e.externalConsensuses.find(e=>e.bEmbeddingHash===n);t.push({state:"completed",external:!0,at:new Date(e.quorum.consensusRequestedAt.getTime()+eC.quorumSettings.quorumConsensusWindowMs),finalOutput:i.output,validCommitments:i.validCommitments,revealedCommitments:i.allCommitments,quorumThreshold:e.quorum.quorumThreshold,bEmbeddingHash:i.bEmbeddingHash,consensusAgreedWith:e.externalConsensuses.filter(e=>e.bEmbeddingHash===i.bEmbeddingHash).length,consensusDisagreedWith:e.externalConsensuses.filter(e=>e.bEmbeddingHash!==i.bEmbeddingHash).length})}}return t}(e);return{...e,states:t,updatedAt:t.sort((e,t)=>e.at.getTime()-t.at.getTime())[0].at}}).sort((e,t)=>t.updatedAt.getTime()-e.updatedAt.getTime()))},10,{leading:!0});return(0,o.useEffect)(()=>(s||i.current?s&&!c.current&&(c.current=setInterval(()=>{l()},1e3),l(),s.inferenceDB.on("inferenceResultAwaitingEmbedding",l),s.inferenceDB.on("newActiveInferenceRequest",l),s.inferenceDB.on("newInferenceRequest",l),s.inferenceDB.on("requestQuorumReveal",l),s.inferenceDB.on("revealedInference",l),s.inferenceDB.on("newInferenceEmbedding",l),s.packetDB.on("newInferenceCommit",l),s.packetDB.on("newInferenceRevealRequest",l),s.packetDB.on("newInferenceRevealed",l),s.packetDB.on("newP2PInferenceRequest",l)):i.current=setInterval(()=>{let e=J.getInstance();e&&(clearInterval(i.current),i.current=null,n(e))}),()=>{i.current&&(clearInterval(i.current),i.current=null),c.current&&(clearInterval(c.current),c.current=null),s&&(s.inferenceDB.off("inferenceResultAwaitingEmbedding",l),s.inferenceDB.off("newActiveInferenceRequest",l),s.inferenceDB.off("newInferenceRequest",l),s.inferenceDB.off("requestQuorumReveal",l),s.inferenceDB.off("revealedInference",l),s.inferenceDB.off("newInferenceEmbedding",l),s.packetDB.off("newInferenceCommit",l),s.packetDB.off("newInferenceRevealRequest",l),s.packetDB.off("newInferenceRevealed",l),s.packetDB.off("newP2PInferenceRequest",l))}),[s,t,l]),r}({inferenceLimit:50});return(0,n.jsx)(r.Zb,{children:(0,n.jsx)(r.W2,{maxHeight:{initial:"50vh",lg:"65vh"},overflowY:"scroll",children:(0,n.jsx)(r.kC,{gap:"2",direction:"column",children:s&&s.length&&s.map(e=>(0,n.jsx)(eP,{inference:e,mySynthientId:t},e.requestId))||(0,n.jsxs)(r.kC,{gap:"2",direction:"column",children:[(0,n.jsx)(r.xv,{size:"4",weight:"bold",children:"No Inferences yet"}),(0,n.jsx)(r.xv,{size:"2",children:"Inferences on Rakis are ephemeral - you only see the ones that happen after you node has been live. Leave your node running or send an inference to see them here."})]})})})})}var eN=s(24934),eV=s(4842),eM=s(74703),eQ=s(58961),eF=e=>{let{chainIdentities:t,synthientId:s,addNewChainIdentity:i}=e,{connectors:a,connect:c}=(0,eN.$)(),{address:l,isConnected:d,connector:u,chain:m}=(0,eV.m)(),{disconnect:h}=(0,eM.q)(),{signMessageAsync:x}=(0,eQ.Q)(),p=(0,o.useRef)(!1);return(0,o.useEffect)(()=>{d&&l&&!t.find(e=>e.address===l)&&!p.current&&(p.current=!0,console.log("Waiting to connect identity"),(async()=>{console.log("Connecting a new identity ",l);try{let e=await x({account:l,message:s});console.log("Got signature ",e),e&&await i(e,(null==m?void 0:m.name)||"unknown",(null==u?void 0:u.name)||"unknown"),h()}catch(e){console.error("Could not sign message",e)}})())},[l,m,d,s,i,h,x,t,u]),(0,n.jsx)(r.u,{content:t&&t.length?t.map(e=>(0,n.jsxs)("div",{children:[(0,n.jsx)(r.Ct,{children:e.chain}),(0,n.jsxs)("p",{children:[e.address.slice(0,10),"...",e.address.slice(-10)]})]},e.address+e.chain)).join("\n"):"Click to add an identity",children:(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsxs)(r.zx,{color:"grass",variant:"soft",size:"2",children:["Connect On-Chain Identity"," ",t.length?"(".concat(t.length,")"):""]})}),(0,n.jsx)(r.J2.Content,{children:(0,n.jsxs)(r.kC,{direction:"column",gap:"2",children:[(function(e){let t=e.filter(e=>"injected"===e.type);return t.length?t:e})(a).map(e=>(0,n.jsxs)(r.zx,{size:"4",variant:"surface",onClick:()=>c({connector:e}),children:[e.icon&&(0,n.jsx)("img",{src:e.icon,alt:e.name,className:"mr-2 h-4 w-4"}),e.name]},e.uid)),t.map((e,t)=>(0,n.jsxs)(r.Ct,{size:"2",children:[e.chain,": ",e.address.slice(0,10),"...",e.address.slice(-10)]},t))]})})]})})},eG=s(61485);let eW=eG.fC,eL=eG.xz;eG.ee;let eH=o.forwardRef((e,t)=>{let{className:s,align:i="center",sideOffset:r=4,...a}=e;return(0,n.jsx)(eG.h_,{children:(0,n.jsx)(eG.VY,{ref:t,align:i,sideOffset:r,className:(0,en.cn)("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...a})})});eH.displayName=eG.VY.displayName;var eO=s(16876),eZ=s(13304);eZ.fC,eZ.xz;let eY=eZ.h_;eZ.x8;let eJ=o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eZ.aV,{ref:t,className:(0,en.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",s),...i})});eJ.displayName=eZ.aV.displayName,o.forwardRef((e,t)=>{let{className:s,children:r,...a}=e;return(0,n.jsxs)(eY,{children:[(0,n.jsx)(eJ,{}),(0,n.jsxs)(eZ.VY,{ref:t,className:(0,en.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",s),...a,children:[r,(0,n.jsxs)(eZ.x8,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[(0,n.jsx)(i.Pxu,{className:"h-4 w-4"}),(0,n.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}).displayName=eZ.VY.displayName,o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eZ.Dx,{ref:t,className:(0,en.cn)("text-lg font-semibold leading-none tracking-tight",s),...i})}).displayName=eZ.Dx.displayName,o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eZ.dk,{ref:t,className:(0,en.cn)("text-sm text-muted-foreground",s),...i})}).displayName=eZ.dk.displayName;let eU=o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eO.mY,{ref:t,className:(0,en.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",s),...i})});eU.displayName=eO.mY.displayName;let eK=o.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,n.jsxs)("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[(0,n.jsx)(i._Ve,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),(0,n.jsx)(eO.mY.Input,{ref:t,className:(0,en.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",s),...r})]})});eK.displayName=eO.mY.Input.displayName;let e$=o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eO.mY.List,{ref:t,className:(0,en.cn)("max-h-[300px] overflow-y-auto overflow-x-hidden",s),...i})});e$.displayName=eO.mY.List.displayName;let eX=o.forwardRef((e,t)=>(0,n.jsx)(eO.mY.Empty,{ref:t,className:"py-6 text-center text-sm",...e}));eX.displayName=eO.mY.Empty.displayName;let e0=o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eO.mY.Group,{ref:t,className:(0,en.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",s),...i})});e0.displayName=eO.mY.Group.displayName,o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eO.mY.Separator,{ref:t,className:(0,en.cn)("-mx-1 h-px bg-border",s),...i})}).displayName=eO.mY.Separator.displayName;let e1=o.forwardRef((e,t)=>{let{className:s,...i}=e;return(0,n.jsx)(eO.mY.Item,{ref:t,className:(0,en.cn)("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50",s),...i})});e1.displayName=eO.mY.Item.displayName;var e2=s(89733),e7=s(1282),e4=s(22468);function e5(e){let{workerCount:t,scaleLLMWorkers:s}=e,[i,a]=(0,o.useState)(!1),[c,l]=(0,o.useState)(!1),[d,u]=(0,o.useState)("gemma-2b-it-q4f16_1"),[m,h]=(0,o.useState)("");return(0,o.useEffect)(()=>{h("".concat(d&&t[d]+1||1))},[d,t]),(0,n.jsxs)(r.Vq.Root,{open:c,onOpenChange:l,children:[(0,n.jsx)(r.Vq.Trigger,{children:(0,n.jsx)(r.zx,{variant:"soft",size:"2",children:"Scale Workers"})}),(0,n.jsx)(r.Vq.Content,{maxWidth:"330px",children:(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)("label",{children:(0,n.jsx)(r.xv,{as:"div",size:"2",mb:"1",weight:"bold",children:"Model Name"})}),(0,n.jsxs)(eW,{open:i,onOpenChange:a,children:[(0,n.jsx)(eL,{asChild:!0,children:(0,n.jsxs)(e2.z,{variant:"outline",role:"combobox","aria-expanded":i,className:"w-[280px] justify-between",children:["".concat(d.slice(0,30)).concat(d.length>30?"...":"")||"Select model...",(0,n.jsx)(e7.Z,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,n.jsx)(eH,{className:"w-[300px] p-0 z-50",children:(0,n.jsxs)(eU,{children:[(0,n.jsx)(eK,{placeholder:"Search model..."}),(0,n.jsxs)(e$,{children:[(0,n.jsx)(eX,{children:"No model found."}),(0,n.jsx)(e0,{children:eo.o.map(e=>(0,n.jsxs)(e1,{value:e,onSelect:e=>{u(e===d?"":e),a(!1)},children:[(0,n.jsx)(e4.Z,{className:(0,en.cn)("mr-2 h-4 w-4",d===e?"opacity-100":"opacity-0")}),e]},e))})]})]})})]}),(0,n.jsx)("label",{children:(0,n.jsx)(r.xv,{as:"div",size:"2",mt:"4",mb:"1",weight:"bold",children:"Number of Workers"})}),(0,n.jsx)(r.nv.Root,{size:"3",type:"number",onChange:e=>h(e.target.value),value:m,className:"max-w-[280px]"}),(0,n.jsx)(r.zx,{mt:"4",variant:"solid",color:d&&t[d]&&!isNaN(parseInt(m))?t[d]<parseInt(m)?"green":"crimson":"blue",size:"3",onClick:function(){d&&!isNaN(parseInt(m))&&parseInt(m)>=0&&(s(d,parseInt(m)),l(!1))},disabled:!!(d&&t[d]&&!isNaN(parseInt(m))&&t[d]===parseInt(m)),children:d&&t[d]&&!isNaN(parseInt(m))?t[d]>parseInt(m)?"Delete Workers":"Add Workers":"Scale Workers"})]})})]})}var e6=s(29178),e3=s(75438),e9=s(91334),e8=s(95982),te=s(92762),tt=s(19997);function ts(){let[e,t]=(0,eg._)("rakisHelpApiKey"),[s,i]=(0,eg._)("rakisCoreCode","uninitialized"),[a,c]=(0,eg._)("rakisIntroPost","uninitialized"),[l,d]=(0,o.useState)(""),[u,m]=(0,o.useState)("smart"),[h,x]=(0,o.useState)(null),[p,g]=(0,o.useState)(""),[f,k]=(0,o.useState)("");function y(e){return e.startsWith("sk-ant")&&108===e.length?"anthropic":!!e.startsWith("sk-proj")&&56===e.length&&"openai"}return(0,o.useEffect)(()=>{e&&("anthropic"===y(e)?(console.log("Setting help provider to anthropic"),x((0,e3.D3)({apiKey:e})("smart"===u?"claude-3-5-sonnet-20240620":"claude-3-haiku-20240307"))):"openai"===y(e)&&(console.log("Setting help provider to openai"),x((0,e9.JV)({apiKey:e})("smart"===u?"gpt-4-turbo-2024-04-09":"gpt-4o"))))},[e,u,x]),(0,o.useEffect)(()=>{"uninitialized"===s&&(console.log("Setting core code"),fetch("https://raw.githubusercontent.com/hrishioa/rakis/master/help/core-code-for-LLMs.txt").then(e=>e.text()).then(e=>i(e)))},[s,i]),(0,o.useEffect)(()=>{"uninitialized"===a&&(console.log("Setting intro post"),fetch("https://raw.githubusercontent.com/hrishioa/rakis/master/help/intro-post.txt").then(e=>e.text()).then(e=>c(e)))},[a,c]),(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsx)(r.zx,{variant:"soft",size:"2",color:"bronze",children:"Ask Questions"})}),(0,n.jsx)(r.J2.Content,{maxWidth:"450px",children:"uninitialized"!==s&&"uninitialized"!==a?(0,n.jsxs)(r.kC,{gap:"2",direction:"column",children:[(0,n.jsxs)(r.xv,{as:"div",size:"2",children:["Ask questions about Rakis, after plugging in an"," ",(0,n.jsx)(r.rU,{href:"https://platform.openai.com/account/api-keys",target:"_blank",children:"OpenAI"})," ","key (your keys are local to this browser). We use"," ",(0,n.jsx)(r.rU,{href:"https://github.com/hrishioa/rakis/tree/master/help",children:"these files"})," ","for context (about 40k tokens). If you like an answer or would like to fact-check, tweet @hrishioa with a screenshot!"]}),(0,n.jsxs)(r.nv.Root,{placeholder:e?"Save new key...":"Enter a key…",type:"password",size:"2",value:l,onInput:e=>d(e.currentTarget.value),children:[(0,n.jsx)(r.nv.Slot,{children:(0,n.jsx)(e6.Z,{width:16,height:16})}),l&&y(l)&&(0,n.jsx)(r.nv.Slot,{children:(0,n.jsx)(r.zx,{size:"1",variant:"outline",color:"green",onClick:()=>t(l),children:e?e!==l?"Update":"Saved":"Save"})})]}),e?(0,n.jsxs)(r.xu,{maxWidth:"600px",children:[(0,n.jsx)(r.xv,{size:"1",mb:"4",children:"Pick a model"}),(0,n.jsxs)(r.Jx.Root,{columns:{initial:"smart",sm:"2"},onValueChange:e=>m(e),value:u,children:[(0,n.jsx)(r.Jx.Item,{value:"smart",children:(0,n.jsxs)(r.kC,{direction:"column",width:"100%",children:[(0,n.jsx)(r.xv,{weight:"bold",size:"2",children:"Smart"}),(0,n.jsx)(r.xv,{size:"2",children:"anthropic"===y(e)?"Sonnet 3.5":"GPT-4"})]})}),(0,n.jsx)(r.Jx.Item,{value:"dumb",children:(0,n.jsxs)(r.kC,{direction:"column",width:"100%",children:[(0,n.jsx)(r.xv,{weight:"bold",children:"Dumb"}),(0,n.jsx)(r.xv,{children:"anthropic"===y(e)?"Haiku":"GPT-4o"})]})})]})]}):null,h?(0,n.jsx)(r.nv.Root,{size:"3",placeholder:"Ask Question!",value:f,onInput:e=>k(e.currentTarget.value),onKeyDown:e=>{"Enter"===e.key&&f&&(async()=>{g("Asking...");let e=await (0,e8.kP)({model:h,prompt:"<Code>".concat(s,"</Code>\n<IntroPost>").concat(a,"</IntroPost>\n\nPlease use the code and the introductory post to answer the following question: ").concat(f,". Answer in markdown and well formatted.")}),t="";for await(let s of e.textStream)g(t+=s)})()}}):null,p?(0,n.jsx)(r.xu,{maxHeight:"300px",overflowY:"scroll",children:(0,n.jsx)(te.U,{remarkPlugins:[tt.Z],components:{h1(e){let{children:t}=e;return(0,n.jsx)(r.X6,{size:"4",mt:"3",children:t})},h2(e){let{children:t}=e;return(0,n.jsx)(r.X6,{size:"3",mt:"3",children:t})},h3(e){let{children:t}=e;return(0,n.jsx)(r.X6,{size:"2",mt:"3",children:t})},h4(e){let{children:t}=e;return(0,n.jsx)(r.X6,{size:"1",mt:"3",children:t})},h5(e){let{children:t}=e;return(0,n.jsx)(r.X6,{size:"1",mt:"3",children:t})},p(e){let{children:t}=e;return(0,n.jsx)(r.xv,{as:"p",size:"2",mt:"2",children:t})},code(e){let{children:t}=e;return(0,n.jsx)(r.EK,{size:"2",style:{margin:"10px"},children:t})}},children:p})}):null]}):(0,n.jsx)(r.xv,{size:"1",children:"Loading Artifacts..."})})]})}let tn=()=>(0,n.jsx)(r.xu,{width:"8px",height:"8px",position:"absolute",mt:"3",ml:"-1",left:"0",style:{backgroundColor:"var(--teal-9)",borderRadius:"100%"}});function ti(e){let{llmWorkerStates:t,mySynthientId:s,scaleLLMWorkers:i,chainIdentities:a,addNewChainIdentity:o}=e;return(0,n.jsxs)(r.kC,{direction:{initial:"column",sm:"row"},justify:"center",gap:"2",children:[(0,n.jsx)(r.u,{content:"".concat(s),children:(0,n.jsxs)(r.zx,{variant:"ghost",size:"3",children:["You are ",s.slice(0,10)]})}),(0,n.jsx)(r.xu,{flexGrow:"1"}),(0,n.jsxs)(r.J2.Root,{children:[(0,n.jsx)(r.J2.Trigger,{children:(0,n.jsx)(r.zx,{variant:"ghost",size:"2",children:"How Rakis Works"})}),(0,n.jsx)(r.J2.Content,{children:(0,n.jsxs)(r.Zb,{children:[(0,n.jsxs)(r.xv,{size:"1",children:["All Rakis nodes run the exact same code you are currently running, to process AI inference requests."," ",(0,n.jsx)(r.rU,{size:"2",href:"https://olickel.com/introducing-rakis",target:"_blank",children:"Learn in more detail here"}),". In short, here's how it works:"]}),(0,n.jsxs)(r.W2,{size:"1",overflowY:"scroll",pl:"3",pt:"3",style:{position:"relative"},children:[(0,n.jsx)(r.xu,{position:"absolute",top:"0",left:"0",right:"0",height:"20px",style:{pointerEvents:"none",zIndex:1}}),(0,n.jsxs)(r.xu,{position:"relative",pt:"1",children:[(0,n.jsx)(r.xu,{position:"absolute",top:"0",bottom:"0",width:"1px",ml:"-0.5px",children:(0,n.jsx)(r.Z0,{size:"4",orientation:"vertical",mt:"2",style:{}})}),(0,n.jsx)(r.xu,{pl:"6",children:(0,n.jsxs)(r.kC,{direction:"column",gap:"4",children:[(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(tn,{}),(0,n.jsx)(r.xv,{size:"3",children:"Inference requests are picked up from another node, or from a supported blockchain contract (not fully implemented yet)."})]}),(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(tn,{}),(0,n.jsx)(r.xv,{size:"3",children:"The Inference request contains a timeout until which nodes can submit commitments, which are hashes that commit them to a result without revealing it."})]}),(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(tn,{}),(0,n.jsx)(r.xv,{size:"3",children:"At the end of the allotted time, if there are enough commits (as specified by the request), nodes are requested to reveal their results."})]}),(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(tn,{}),(0,n.jsx)(r.xv,{size:"3",children:"Once results are revealed, all nodes double check the embeddings and hashes to validate prior commitments."})]}),(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(tn,{}),(0,n.jsx)(r.xv,{size:"3",children:"Among the validated commitments, the outputs are clustered in embedding space, and the densest cluster of results is chosen."})]}),(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(tn,{}),(0,n.jsx)(r.xv,{size:"3",children:"Nodes communicate their independent results of consensus, to check for agreement. This is the final output you can see."})]})]})})]})]})]})})]}),(0,n.jsx)(r.xu,{flexGrow:"1"}),(0,n.jsx)(ts,{}),(0,n.jsx)(e5,{workerCount:Object.keys(t).map(e=>t[e].modelName).reduce((e,t)=>{var s;return null!==(s=e[t])&&void 0!==s||(e[t]=0),e[t]++,e},{}),scaleLLMWorkers:i}),(0,n.jsx)(eF,{chainIdentities:a,synthientId:s,addNewChainIdentity:o})]})}function tr(){let e=function(e){let[t,s]=(0,o.useState)(null),n=(0,o.useRef)(null),[i,r]=(0,o.useState)(null),a=(0,o.useRef)(null);return(0,o.useEffect)(()=>{t||n.current?t&&!a.current&&(a.current=setInterval(async()=>{let e=new Date;e.setDate(e.getDate()-7),r(await t.getStats(e))},3e3)):n.current=setInterval(()=>{let e=J.getInstance();e&&(clearInterval(n.current),n.current=null,s(e))})}),i}(0);function t(e){return isNaN(e)?"-":e>1e9?"".concat((e/1e9).toFixed(1),"B"):e>1e6?"".concat((e/1e6).toFixed(1),"M"):e>1e3?"".concat((e/1e3).toFixed(1),"K"):e}return e&&(0,n.jsxs)(r.kC,{direction:"column",gap:"2",children:[(0,n.jsx)(r.xv,{size:"2",weight:"medium",mt:"3",children:"Your Stats"}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:"Rakis has no central servers, so these stats are collected from p2p exchanges during your time in the network. YMMV!"}),(0,n.jsxs)(r.kC,{direction:"row",gap:"2",children:[(0,n.jsx)(r.xu,{children:(0,n.jsxs)(r.Zb,{children:[(0,n.jsx)(r.X6,{size:"7",children:t(e.peerStats.totalPeers)}),(0,n.jsx)(r.xv,{size:"2",children:"Peers"})]})}),(0,n.jsx)(r.xu,{children:(0,n.jsxs)(r.Zb,{children:[(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"span",size:"7",children:t(e.ourStats.tokens)}),(0,n.jsxs)(r.xv,{as:"span",size:"7",weight:"bold",children:[" ","/"," ",t(e.peerStats.totalTokens+e.ourStats.tokens)]})]}),(0,n.jsx)(r.xv,{size:"2",children:"Tokens (you/network)"})]})}),(0,n.jsx)(r.xu,{children:(0,n.jsxs)(r.Zb,{children:[(0,n.jsxs)(r.xu,{children:[(0,n.jsx)(r.xv,{as:"span",size:"7",children:t(e.ourStats.workers)}),(0,n.jsxs)(r.xv,{as:"span",size:"7",weight:"bold",children:[" ","/"," ",t(e.peerStats.totalWorkers+e.ourStats.workers)]})]}),(0,n.jsx)(r.xv,{size:"2",children:"AI Workers (you/network)"})]})})," "]})]})||null}var ta=s(10462),to=JSON.parse('{"v":"5.3.4","fr":120,"ip":118,"op":669,"w":700,"h":700,"nm":"Final","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Combine","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":180,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":550,"op":851,"st":550,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"Combine","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":275,"op":577,"st":275,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"Combine","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":180,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":0,"op":301,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Small 4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":120,"ix":10},"p":{"s":true,"x":{"a":0,"k":500,"ix":3},"y":{"a":0,"k":500,"ix":4}},"a":{"a":0,"k":[-300,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.87450986376,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.87450986376,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 2","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":26,"op":183,"st":127,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Small 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":-120,"ix":10},"p":{"s":true,"x":{"a":0,"k":500,"ix":3},"y":{"a":0,"k":500,"ix":4}},"a":{"a":0,"k":[-300,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.160784313725,0.450980422076,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.160784313725,0.450980422076,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 2","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":212,"op":801,"st":201,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Small 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":60,"ix":10},"p":{"s":true,"x":{"a":0,"k":500,"ix":3},"y":{"a":0,"k":500,"ix":4}},"a":{"a":0,"k":[-300,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.160784313725,0.450980392157,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.160784313725,0.450980392157,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 2","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":94,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Small","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":0,"k":200,"ix":3},"y":{"a":0,"k":500,"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.505882352941,0,0.674509803922,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":123,"op":276,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"Gradient bubble","refId":"comp_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":0,"op":123,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":0,"nm":"Gradient bubble 2","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":60,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":94,"op":212,"st":91,"bm":0},{"ddd":0,"ind":7,"ty":0,"nm":"Gradient bubble 3","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":120,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":183,"op":3783,"st":183,"bm":0}]},{"id":"comp_2","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Small 2","parent":4,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0,0,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,1,0.165,0.1,0.5,1,0.165,0.099,1,1,0.165,0.098],"ix":9}},"s":{"a":0,"k":[0,0],"ix":5},"e":{"a":0,"k":[100,0],"ix":6},"t":1,"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":4,"op":3604,"st":4,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Middle 2","tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[25,25,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":44,"s":[{"i":[[-173.529,0],[-90.002,-132.024],[-12.439,-28.365],[0,-71.349],[25.943,-60.455],[17.464,-25.863],[172.632,0],[89.122,137.333],[10.875,24.758],[0,71.457],[-29.676,63.926],[-14.207,21.268]],"o":[[171.836,0],[17.262,25.321],[26.93,61.409],[0,69.955],[-12.444,28.999],[-89.845,133.057],[-175.911,0],[-14.578,-22.464],[-27.006,-61.482],[0,-75.118],[10.863,-23.4],[89.659,-134.222]],"v":[[0,-500],[413.429,-281.292],[458.126,-200.617],[500,0],[459.691,197.009],[414.675,279.456],[0,500],[-419.728,271.823],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.07,-277.379]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[407,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":54,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[407,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[536,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":62,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[536,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-174.816,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.804,139.028],[10.683,24.786],[0,70.234],[-28.796,63.141],[-14.008,21.299]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-177.204,0],[-14.385,-22.52],[-26.139,-60.647],[0,-73.927],[10.672,-23.401],[89.377,-135.901]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[463.424,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-421.682,268.788],[-459.38,197.733],[-500,0],[-455.16,-207.248],[-418.056,-274.383]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":70,"s":[{"i":[[-174.816,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.804,139.028],[10.683,24.786],[0,70.234],[-28.796,63.141],[-14.008,21.299]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-177.204,0],[-14.385,-22.52],[-26.139,-60.647],[0,-73.927],[10.672,-23.401],[89.377,-135.901]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[463.424,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-421.682,268.788],[-459.38,197.733],[-500,0],[-455.16,-207.248],[-418.056,-274.383]],"c":true}],"e":[{"i":[[-174.161,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.97,138.149],[10.747,24.636],[0,71.013],[-29.357,63.641],[-14.031,21.165]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.534,0],[-14.412,-22.378],[-26.692,-61.179],[0,-74.686],[10.728,-23.26],[89.522,-135.046]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[458.057,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.67,270.362],[-458.503,199.747],[-500,0],[-454.267,-209.188],[-417.046,-275.908]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":71,"s":[{"i":[[-174.161,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.97,138.149],[10.747,24.636],[0,71.013],[-29.357,63.641],[-14.031,21.165]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.534,0],[-14.412,-22.378],[-26.692,-61.179],[0,-74.686],[10.728,-23.26],[89.522,-135.046]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[458.057,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.67,270.362],[-458.503,199.747],[-500,0],[-454.267,-209.188],[-417.046,-275.908]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[455,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":72,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[455,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[509.432,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-548,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":80,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[509.432,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-548,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[485.728,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-447,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":91,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[485.728,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-447,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[494.72,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-533,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":101,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[494.72,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-533,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":107,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-467,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":111,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-467,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-506,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":121,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-506,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"t":131}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44,"s":[0,1,0.875,0,0.05,1,0.875,0,0.998,1,0.875,0],"e":[0.316,0.506,0,0.675,0.658,0.753,0.437,0.337,1,1,0.875,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[0.316,0.506,0,0.675,0.658,0.753,0.437,0.337,1,1,0.875,0],"e":[1,0.506,0,0.675,1,0.753,0.437,0.337,1,1,0.875,0]},{"t":109}],"ix":9}},"s":{"a":0,"k":[2000,0],"ix":5},"e":{"a":0,"k":[-2000,0],"ix":6},"t":2,"h":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":44,"s":[-100],"e":[100]},{"t":109}],"ix":7},"a":{"a":0,"k":0,"ix":8},"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":13,"op":3600,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Middle","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[25,25,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-276.142,0],[0,-276.142],[276.142,0],[0,276.142]],"o":[[276.142,0],[0,276.142],[-276.142,0],[0,-276.142]],"v":[[0,-500],[500,0],[0,500],[-500,0]],"c":true},"ix":2,"x":"var $bm_rt;\\n$bm_rt = thisComp.layer(\'Middle 2\').content(\'Ellipse 1\').content(\'Path 1\').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,1,0.875,0,0.05,1,0.875,0,0.998,1,0.875,0],"ix":9}},"s":{"a":0,"k":[0,0],"ix":5},"e":{"a":0,"k":[100,0],"ix":6},"t":1,"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3600,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Small","tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.501],"y":[1]},"o":{"x":[0.5],"y":[0]},"n":["0p501_1_0p5_0"],"t":0,"s":[800],"e":[200]},{"t":120}],"ix":3},"y":{"a":1,"k":[{"i":{"x":[0.99],"y":[1]},"o":{"x":[0.01],"y":[0]},"n":["0p99_1_0p01_0"],"t":0,"s":[500],"e":[500]},{"t":120}],"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.505882352941,0,0.674509803922,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3600,"st":0,"bm":0}]},{"id":"comp_3","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Small 2","parent":4,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0,0,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,1,0.165,0.1,0.5,1,0.165,0.099,1,1,0.165,0.098],"ix":9}},"s":{"a":0,"k":[0,0],"ix":5},"e":{"a":0,"k":[100,0],"ix":6},"t":1,"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":4,"op":3604,"st":4,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Middle 2","tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[25,25,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":44,"s":[{"i":[[-173.529,0],[-90.002,-132.024],[-12.439,-28.365],[0,-71.349],[25.943,-60.455],[17.464,-25.863],[172.632,0],[89.122,137.333],[10.875,24.758],[0,71.457],[-29.676,63.926],[-14.207,21.268]],"o":[[171.836,0],[17.262,25.321],[26.93,61.409],[0,69.955],[-12.444,28.999],[-89.845,133.057],[-175.911,0],[-14.578,-22.464],[-27.006,-61.482],[0,-75.118],[10.863,-23.4],[89.659,-134.222]],"v":[[0,-500],[413.429,-281.292],[458.126,-200.617],[500,0],[459.691,197.009],[414.675,279.456],[0,500],[-419.728,271.823],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.07,-277.379]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[407,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":54,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[407,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[536,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":62,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[536,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-174.816,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.804,139.028],[10.683,24.786],[0,70.234],[-28.796,63.141],[-14.008,21.299]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-177.204,0],[-14.385,-22.52],[-26.139,-60.647],[0,-73.927],[10.672,-23.401],[89.377,-135.901]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[463.424,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-421.682,268.788],[-459.38,197.733],[-500,0],[-455.16,-207.248],[-418.056,-274.383]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":70,"s":[{"i":[[-174.816,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.804,139.028],[10.683,24.786],[0,70.234],[-28.796,63.141],[-14.008,21.299]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-177.204,0],[-14.385,-22.52],[-26.139,-60.647],[0,-73.927],[10.672,-23.401],[89.377,-135.901]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[463.424,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-421.682,268.788],[-459.38,197.733],[-500,0],[-455.16,-207.248],[-418.056,-274.383]],"c":true}],"e":[{"i":[[-174.161,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.97,138.149],[10.747,24.636],[0,71.013],[-29.357,63.641],[-14.031,21.165]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.534,0],[-14.412,-22.378],[-26.692,-61.179],[0,-74.686],[10.728,-23.26],[89.522,-135.046]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[458.057,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.67,270.362],[-458.503,199.747],[-500,0],[-454.267,-209.188],[-417.046,-275.908]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":71,"s":[{"i":[[-174.161,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.97,138.149],[10.747,24.636],[0,71.013],[-29.357,63.641],[-14.031,21.165]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.534,0],[-14.412,-22.378],[-26.692,-61.179],[0,-74.686],[10.728,-23.26],[89.522,-135.046]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[458.057,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.67,270.362],[-458.503,199.747],[-500,0],[-454.267,-209.188],[-417.046,-275.908]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[455,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":72,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[455,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[509.432,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-548,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":80,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[509.432,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-548,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[485.728,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-447,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":91,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[485.728,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-447,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[494.72,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-533,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":101,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[494.72,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-533,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":107,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-467,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":111,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-467,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-506,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":121,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-506,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"t":131}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44,"s":[0,0.506,0,0.675,0.05,0.506,0,0.675,1,0.506,0,0.675],"e":[0.316,1,0.161,0.451,0.658,0.753,0.08,0.563,1,0.506,0,0.675]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[0.316,1,0.161,0.451,0.658,0.753,0.08,0.563,1,0.506,0,0.675],"e":[1,1,0.161,0.451,1,0.753,0.08,0.563,1,0.506,0,0.675]},{"t":109}],"ix":9}},"s":{"a":0,"k":[2000,0],"ix":5},"e":{"a":0,"k":[-2000,0],"ix":6},"t":2,"h":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":44,"s":[-100],"e":[100]},{"t":109}],"ix":7},"a":{"a":0,"k":0,"ix":8},"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":25,"op":3600,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Middle","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[25,25,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-276.142,0],[0,-276.142],[276.142,0],[0,276.142]],"o":[[276.142,0],[0,276.142],[-276.142,0],[0,-276.142]],"v":[[0,-500],[500,0],[0,500],[-500,0]],"c":true},"ix":2,"x":"var $bm_rt;\\n$bm_rt = thisComp.layer(\'Middle 2\').content(\'Ellipse 1\').content(\'Path 1\').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,0.506,0,0.675,0.05,0.506,0,0.675,1,0.506,0,0.675],"ix":9}},"s":{"a":0,"k":[0,0],"ix":5},"e":{"a":0,"k":[100,0],"ix":6},"t":1,"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3600,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Small","tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.501],"y":[1]},"o":{"x":[0.5],"y":[0]},"n":["0p501_1_0p5_0"],"t":0,"s":[800],"e":[200]},{"t":120}],"ix":3},"y":{"a":1,"k":[{"i":{"x":[0.99],"y":[1]},"o":{"x":[0.01],"y":[0]},"n":["0p99_1_0p01_0"],"t":0,"s":[500],"e":[500]},{"t":120}],"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.160784313725,0.450980392157,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3600,"st":0,"bm":0}]},{"id":"comp_4","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Small 2","parent":4,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0,0,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,1,0.165,0.1,0.5,1,0.165,0.099,1,1,0.165,0.098],"ix":9}},"s":{"a":0,"k":[0,0],"ix":5},"e":{"a":0,"k":[100,0],"ix":6},"t":1,"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":4,"op":3604,"st":4,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Middle 2","tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[25,25,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":44,"s":[{"i":[[-173.529,0],[-90.002,-132.024],[-12.439,-28.365],[0,-71.349],[25.943,-60.455],[17.464,-25.863],[172.632,0],[89.122,137.333],[10.875,24.758],[0,71.457],[-29.676,63.926],[-14.207,21.268]],"o":[[171.836,0],[17.262,25.321],[26.93,61.409],[0,69.955],[-12.444,28.999],[-89.845,133.057],[-175.911,0],[-14.578,-22.464],[-27.006,-61.482],[0,-75.118],[10.863,-23.4],[89.659,-134.222]],"v":[[0,-500],[413.429,-281.292],[458.126,-200.617],[500,0],[459.691,197.009],[414.675,279.456],[0,500],[-419.728,271.823],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.07,-277.379]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[407,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":54,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[407,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[536,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":62,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[536,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-174.816,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.804,139.028],[10.683,24.786],[0,70.234],[-28.796,63.141],[-14.008,21.299]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-177.204,0],[-14.385,-22.52],[-26.139,-60.647],[0,-73.927],[10.672,-23.401],[89.377,-135.901]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[463.424,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-421.682,268.788],[-459.38,197.733],[-500,0],[-455.16,-207.248],[-418.056,-274.383]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":70,"s":[{"i":[[-174.816,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.804,139.028],[10.683,24.786],[0,70.234],[-28.796,63.141],[-14.008,21.299]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-177.204,0],[-14.385,-22.52],[-26.139,-60.647],[0,-73.927],[10.672,-23.401],[89.377,-135.901]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[463.424,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-421.682,268.788],[-459.38,197.733],[-500,0],[-455.16,-207.248],[-418.056,-274.383]],"c":true}],"e":[{"i":[[-174.161,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.97,138.149],[10.747,24.636],[0,71.013],[-29.357,63.641],[-14.031,21.165]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.534,0],[-14.412,-22.378],[-26.692,-61.179],[0,-74.686],[10.728,-23.26],[89.522,-135.046]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[458.057,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.67,270.362],[-458.503,199.747],[-500,0],[-454.267,-209.188],[-417.046,-275.908]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":71,"s":[{"i":[[-174.161,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[88.97,138.149],[10.747,24.636],[0,71.013],[-29.357,63.641],[-14.031,21.165]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.534,0],[-14.412,-22.378],[-26.692,-61.179],[0,-74.686],[10.728,-23.26],[89.522,-135.046]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[458.057,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.67,270.362],[-458.503,199.747],[-500,0],[-454.267,-209.188],[-417.046,-275.908]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[455,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":72,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[455,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[509.432,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-548,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":80,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[509.432,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-548,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[485.728,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-447,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":91,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[485.728,-0.001],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-447,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[494.72,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-533,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":101,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[494.72,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-533,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":107,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-467,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":111,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-467,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-506,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"n":"0p667_1_0p333_0","t":121,"s":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-506,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}],"e":[{"i":[[-173.787,0],[-89.945,-132.406],[-12.328,-28.112],[0,-71.349],[25.943,-60.455],[17.275,-25.672],[172.918,0],[89.064,137.648],[10.784,24.551],[0,71.457],[-29.676,63.926],[-14.043,21.089]],"o":[[172.13,0],[17.068,25.125],[26.93,61.409],[0,69.955],[-12.338,28.751],[-89.787,133.428],[-176.152,0],[-14.427,-22.297],[-27.006,-61.482],[0,-75.118],[10.76,-23.179],[89.604,-134.559]],"v":[[0,-500],[413.89,-280.614],[458.126,-200.617],[500,0],[459.691,197.009],[415.121,278.794],[0,500],[-420.093,271.259],[-458.004,200.894],[-500,0],[-453.759,-210.293],[-416.471,-276.778]],"c":true}]},{"t":131}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44,"s":[0,1,0.161,0.451,0.05,1,0.161,0.451,1,1,0.161,0.451],"e":[0.316,1,0.875,0,0.658,1,0.518,0.225,1,1,0.161,0.451]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[0.316,1,0.875,0,0.658,1,0.518,0.225,1,1,0.161,0.451],"e":[1,1,0.875,0,1,1,0.518,0.225,1,1,0.161,0.451]},{"t":109}],"ix":9}},"s":{"a":0,"k":[2000,0],"ix":5},"e":{"a":0,"k":[-2000,0],"ix":6},"t":2,"h":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":44,"s":[-100],"e":[100]},{"t":109}],"ix":7},"a":{"a":0,"k":0,"ix":8},"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":25,"op":3600,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Middle","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[25,25,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-276.142,0],[0,-276.142],[276.142,0],[0,276.142]],"o":[[276.142,0],[0,276.142],[-276.142,0],[0,-276.142]],"v":[[0,-500],[500,0],[0,500],[-500,0]],"c":true},"ix":2,"x":"var $bm_rt;\\n$bm_rt = thisComp.layer(\'Middle 2\').content(\'Ellipse 1\').content(\'Path 1\').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":3,"k":{"a":0,"k":[0,1,0.161,0.451,0.05,1,0.161,0.451,1,1,0.161,0.451],"ix":9}},"s":{"a":0,"k":[0,0],"ix":5},"e":{"a":0,"k":[100,0],"ix":6},"t":1,"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3600,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Small","tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.501],"y":[1]},"o":{"x":[0.5],"y":[0]},"n":["0p501_1_0p5_0"],"t":0,"s":[800],"e":[200]},{"t":120}],"ix":3},"y":{"a":1,"k":[{"i":{"x":[0.99],"y":[1]},"o":{"x":[0.01],"y":[0]},"n":["0p99_1_0p01_0"],"t":0,"s":[500],"e":[500]},{"t":120}],"ix":4}},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[50,50],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.874509803922,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":3600,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Combine 2","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":118,"s":[0],"e":[360]},{"t":669}],"ix":10},"p":{"a":0,"k":[350,350,0],"ix":2},"a":{"a":0,"k":[500,500,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1000,"h":1000,"ip":0,"op":3600,"st":0,"bm":0}],"markers":[]}'),tc=s.t(to,2);function tl(e){let{llmWorkerStates:t}=e;return(0,n.jsxs)(r.xu,{children:[(0,n.jsxs)(r.kC,{direction:"column",children:[(0,n.jsx)(r.xv,{size:"2",weight:"medium",mt:"3",children:"Local LLM Workers"}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:"These are the local models you're running that will pick up inference requests from the network. First time loads will take 10-15 minutes, subsequent loads will likely be less than a minute."})]}),(0,n.jsx)(r.kC,{direction:"row",overflowY:"scroll",children:Object.keys(t).sort((e,s)=>"idle"===t[e].state&&"idle"!==t[s].state?-1:"idle"!==t[e].state&&"idle"===t[s].state?1:0).map(e=>(0,n.jsx)(r.Zb,{size:"2",m:"2",className:"min-w-60",variant:"surface",children:(0,n.jsxs)(r.kC,{gap:"3",align:"center",children:["inference-in-progress"===t[e].state?(0,n.jsx)(r.xu,{width:"40px",children:(0,n.jsx)(d.Z,{options:{loop:!0,autoplay:!0,animationData:tc,rendererSettings:{preserveAspectRatio:"xMidYMid slice"}},style:{width:"100%",height:"auto"}})}):(0,n.jsx)(ta.Z,{width:"20",height:"20",className:"ml-2"}),(0,n.jsxs)(r.xu,{children:[(0,n.jsxs)(r.xv,{as:"div",size:"2",weight:"bold",children:[t[e].modelName.slice(0,20),t[e].modelName.length>20?"...":""]}),t[e].loadingProgress<1?(0,n.jsx)(r.Ex,{value:100*t[e].loadingProgress,size:"3",mt:"2",variant:"classic"}):(0,n.jsx)(r.xv,{as:"div",size:"2",color:"gray",children:"inference-in-progress"===t[e].state?"Inference in progress":"idle"===t[e].state?"Idle":"Ready"})]})]})},e))})]})}function td(e){let{password:t,overwrite:s}=e,{llmWorkerStates:i,mySynthientId:c,scaleLLMWorkers:l,submitInferenceRequest:u,chainIdentities:m,addNewChainIdentity:h}=function(e,t){let s=(0,o.useRef)(null),[n,i]=(0,o.useState)(null),[r,c]=(0,o.useState)({}),[l,d]=(0,o.useState)([]),u=H()((e,t,n,i,r)=>{var a;null===(a=s.current)||void 0===a||a.packetDB.transmitPacket({type:"p2pInferenceRequest",requestId:(0,g.zs)(10),payload:{fromChain:"rakis",blockNumber:0,createdAt:(0,g.MQ)(new Date),prompt:e,acceptedModels:t,temperature:1,maxTokens:2048,securityFrame:{quorum:n,maxTimeMs:1e3*i,secDistance:4500,secPercentage:r/100,embeddingModel:"nomic-ai/nomic-embed-text-v1.5"}},createdAt:(0,g.MQ)(new Date)})},500);async function m(e,t,n){var i,r;if(await (null===(i=s.current)||void 0===i?void 0:i.addChainIdentity(e,t,n))){let e=null===(r=s.current)||void 0===r?void 0:r.chainIdentities;e&&d(e)}}return(0,o.useEffect)(()=>{let n=H()(()=>{var e,t;let n=null===(t=s.current)||void 0===t?void 0:null===(e=t.llmEngine)||void 0===e?void 0:e.getWorkerStates();console.log("Got engine states",n),n&&c(n)},100);(async()=>{let r=(0,a.ri)(),o=await J.bootup({identityPassword:e,overwriteIdentity:t,initialEmbeddingWorkers:r.workerSettings.initialEmbeddingWorkers,initialLLMWorkers:r.workerSettings.initialLLMWorkers});s.current=o,i(o.synthientId),d(o.chainIdentities||[]),o.llmEngine.on("workerFree",n),o.llmEngine.on("workerLoading",n),o.llmEngine.on("workerLoadFailed",n),o.llmEngine.on("workerBusy",n),o.llmEngine.on("workerLoaded",n),o.llmEngine.on("workerUnloaded",n),o.llmEngine.on("modelLoadingProgress",n),c(o.llmEngine.getWorkerStates())})();let r=setInterval(async()=>{if(!s.current)return;let[e,t,n,i,r]=await Promise.all([s.current.packetDB.peerDB.getLastPeers(U,100),s.current.packetDB.getLastPackets(100),s.current.llmEngine.getEngineLogs(100),s.current.inferenceDB.getInferences(10),s.current.packetDB.peerDB.getPeerCount()])},3e3);return()=>{var e,t,i,a;clearInterval(r),null===(e=s.current)||void 0===e||e.llmEngine.removeListener("workerFree",n),null===(t=s.current)||void 0===t||t.llmEngine.removeListener("workerLoadFailed",n),null===(i=s.current)||void 0===i||i.llmEngine.removeListener("workerLoaded",n),null===(a=s.current)||void 0===a||a.llmEngine.removeListener("workerUnloaded",n)}},[e,t]),{mySynthientId:n,llmWorkerStates:r,scaleLLMWorkers:function(e,t){var n;null===(n=s.current)||void 0===n||n.llmEngine.scaleLLMWorkers(e,t)},submitInferenceRequest:u,chainIdentities:l,addNewChainIdentity:m}}(t,s),{width:x}=(0,eg.iP)(),[p,f]=(0,o.useState)(!1);return(0,o.useEffect)(()=>{x&&(x<1280?f(!0):f(!1))},[x]),c&&(0,n.jsxs)(r.kC,{direction:"column",justify:"start",gap:"2",height:"100vh",p:"4",className:"w-full",children:[(0,n.jsx)(r.xu,{mt:"1",children:(0,n.jsx)(ti,{llmWorkerStates:i,mySynthientId:c,scaleLLMWorkers:l,chainIdentities:m,addNewChainIdentity:h})}),(0,n.jsxs)(r.kC,{direction:{initial:"column",lg:"row"},gap:"4",children:[(0,n.jsx)(r.xu,{minWidth:"490px",maxWidth:{initial:"unset",lg:"590px"},children:(0,n.jsx)(r.kC,{direction:"row",children:(0,n.jsxs)(r.kC,{direction:"column",gap:"2",children:[(0,n.jsxs)(r.kC,{direction:"column",gap:"2",className:"bg-lime-200 p-3",style:{borderRadius:"7px"},children:[(0,n.jsx)(r.xv,{size:"5",weight:"medium",children:"Run a prompt!"}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:"Send an inference request to the Rakis network from here. Feel free to adjust the consensus settings to see what succeeds and fails."}),(0,n.jsx)(ec,{submitInferenceRequest:u})]}),(0,n.jsx)(tr,{}),p?null:(0,n.jsx)(eS,{})]})})}),(0,n.jsxs)(r.xu,{flexGrow:"1",minWidth:"500px",children:[i&&Object.keys(i).length?(0,n.jsx)(r.kC,{direction:"column",gap:"2",children:(0,n.jsx)(tl,{llmWorkerStates:i})}):null,(0,n.jsxs)(r.kC,{direction:"column",gap:"2",children:[(0,n.jsx)(r.xv,{size:"2",weight:"medium",children:"Step two: watch inferences"}),(0,n.jsx)(r.xv,{size:"1",color:"gray",children:"Rakis is completely public. Watch inference requests from the networks here, as they pass through each stage of validation."}),(0,n.jsx)(eB,{mySynthientId:c})]})]}),p?(0,n.jsx)(eS,{}):null]})]})||(0,n.jsx)("div",{className:" h-dvh w-full flex justify-center items-center",children:(0,n.jsx)("div",{className:"w-1/4",children:(0,n.jsx)(d.Z,{options:{loop:!0,autoplay:!0,animationData:$,rendererSettings:{preserveAspectRatio:"xMidYMid slice"}},style:{width:"100%",height:"auto"}})})})}var tu=s(40181),tm=s(43151),th=s(93191),tx=s(55925),tp=s(87446),tg=s(16491),tf=s(8483),tk=s(80755),ty=s(53611),tv=s(993),tb=s(55767);let tw=(0,a.ri)().chainConnectionSettings,tq=(0,tx._)({chains:[tg.R,tf.F,tk.y,ty.y,tv.p],connectors:[(0,tb.O)({dappMetadata:{name:tw.dAppName,url:tw.url}})],transports:{[tg.R.id]:(0,tp.d)(),[tf.F.id]:(0,tp.d)(),[tk.y.id]:(0,tp.d)(),[ty.y.id]:(0,tp.d)(),[tv.p.id]:(0,tp.d)()}}),tj=new tm.S;function tI(){let[e,t]=(0,o.useState)(!1),[s,d]=(0,o.useState)(!1),[u,m]=(0,o.useState)(""),[h,x]=(0,o.useState)(!1);(0,o.useEffect)(()=>{localStorage.getItem(a.wK)&&t(!0)},[]);let p=()=>{console.log("Trying to decrypt identity with ",u," and ",s),(async()=>{try{await (0,c.K6)(u,s)?(console.log("Client info initialized successfully"),x(!0)):(0,l.Am)({variant:"destructive",title:"Could not decrypt identity.",description:"Please try again or overwrite!"})}catch(e){(0,l.Am)({variant:"destructive",title:"Could not decrypt identity.",description:"Please try again or overwrite!"})}})()};return h?(0,n.jsx)(tu.F,{config:tq,children:(0,n.jsx)(th.aH,{client:tj,children:(0,n.jsx)(td,{password:u,overwrite:s})})}):(0,n.jsx)(r.kC,{direction:"column",justify:"center",height:"100vh",children:(0,n.jsx)(r.kC,{direction:"row",justify:"center",children:(0,n.jsx)(r.Zb,{variant:"ghost",children:(0,n.jsxs)(r.W2,{size:"1",p:"4",children:[(0,n.jsx)(r.X6,{size:"9",weight:"medium",children:"Welcome to Rakis."}),(0,n.jsx)(r.kC,{justify:"end",className:"mt-2",children:(0,n.jsx)(r.rU,{color:"blue",href:"https://twitter.com/hrishioa",target:"_blank",children:"built as a two-week experiment by @hrishioa"})}),(0,n.jsx)(r.xv,{color:"gray",as:"div",size:"4",className:"mt-6",children:"Rakis is a permissionless inference network that runs entirely in the browser. Choose a password below and instantly be a part of the network."})," ",(0,n.jsxs)(r.kC,{direction:"row",className:"mt-3",justify:"between",children:[(0,n.jsx)(r.rU,{color:"amber",href:"https://olickel.com/introducing-rakis",target:"_blank",children:"The Story"}),(0,n.jsx)(r.rU,{color:"amber",href:"https://rakis-docs.vercel.app",target:"_blank",children:"Docs"}),(0,n.jsx)(r.rU,{color:"amber",href:"https://github.com/hrishioa/rakis",target:"_blank",children:"See the code"})]}),(0,n.jsxs)(r.kC,{direction:"row",className:"mt-6",gap:"3",children:[(0,n.jsx)(r.xu,{flexGrow:"1",children:(0,n.jsx)(r.nv.Root,{onKeyDown:e=>{"Enter"===e.key&&p()},size:"3",variant:"classic",autoFocus:!0,type:"password",value:u,onChange:e=>m(e.target.value),placeholder:e?"Enter password...":"Create a password...",children:e&&(0,n.jsx)(r.nv.Slot,{side:"right",children:(0,n.jsx)(r.xv,{as:"label",size:"2",children:(0,n.jsxs)(r.kC,{gap:"2",children:[(0,n.jsx)(r.rs,{size:"1",variant:"soft",checked:s,onCheckedChange:e=>d(!!e)})," ","Overwrite Existing"]})})})})}),(0,n.jsx)(r.xu,{children:(0,n.jsxs)(r.zx,{size:"3",variant:"classic",onClick:p,children:[(0,n.jsx)(i.Ymj,{})," Join"]})})]})]})})})})}},78068:function(e,t,s){"use strict";s.d(t,{Am:function(){return u},pm:function(){return m}});var n=s(2265);let i=0,r=new Map,a=e=>{if(r.has(e))return;let t=setTimeout(()=>{r.delete(e),d({type:"REMOVE_TOAST",toastId:e})},1e6);r.set(e,t)},o=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:s}=t;return s?a(s):e.toasts.forEach(e=>{a(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===s||void 0===s?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},c=[],l={toasts:[]};function d(e){l=o(l,e),c.forEach(e=>{e(l)})}function u(e){let{...t}=e,s=(i=(i+1)%Number.MAX_SAFE_INTEGER).toString(),n=()=>d({type:"DISMISS_TOAST",toastId:s});return d({type:"ADD_TOAST",toast:{...t,id:s,open:!0,onOpenChange:e=>{e||n()}}}),{id:s,dismiss:n,update:e=>d({type:"UPDATE_TOAST",toast:{...e,id:s}})}}function m(){let[e,t]=n.useState(l);return n.useEffect(()=>(c.push(t),()=>{let e=c.indexOf(t);e>-1&&c.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>d({type:"DISMISS_TOAST",toastId:e})}}}},function(e){e.O(0,[333,443,310,218,864,705,868,708,33,297,959,786,207,813,635,380,672,104,483,971,23,744],function(){return e(e.s=65125)}),_N_E=e.O()}]); |