From b67774b335e25c4acaf7b0045b5018fc83e97827 Mon Sep 17 00:00:00 2001 From: David Dal Busco Date: Fri, 8 May 2026 16:06:02 +0900 Subject: [PATCH 1/2] feat: remove icdraw Signed-off-by: David Dal Busco --- ...no-web3-dapp-architecture-social-image.png | Bin 14737 -> 0 bytes .../icscan-achitecture.png | Bin 29210 -> 0 bytes .../icscan-timer.png | Bin 23089 -> 0 bytes .../icscan-web-workers.png | Bin 32475 -> 0 bytes .../index.md | 394 ------------------ showcase.json | 7 - 6 files changed, 401 deletions(-) delete mode 100644 blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/exploring-a-juno-web3-dapp-architecture-social-image.png delete mode 100644 blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-achitecture.png delete mode 100644 blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-timer.png delete mode 100644 blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-web-workers.png delete mode 100644 blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/index.md diff --git a/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/exploring-a-juno-web3-dapp-architecture-social-image.png b/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/exploring-a-juno-web3-dapp-architecture-social-image.png deleted file mode 100644 index a805f334767ab0cd86d7c9972fa86f48a45f4d0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14737 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 diff --git a/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-timer.png b/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-timer.png deleted file mode 100644 index e8e6df2fa56d92f9ad63253ac499300e889d7932..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23089 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 TR$siHMl7JKWu#fIZX5bPqh?;d diff --git a/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-web-workers.png b/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/icscan-web-workers.png deleted file mode 100644 index a37023cc11285e1b246a6b1c276b86fc75c6e86d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32475 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 X%NBX!>8)pPE*?-tXaE%oW+DFv`Js$f diff --git a/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/index.md b/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/index.md deleted file mode 100644 index 22447d3e..00000000 --- a/blog/2023-06-23-exploring-a-juno-web3-dapp-architecture/index.md +++ /dev/null @@ -1,394 +0,0 @@ ---- -slug: exploring-a-juno-web3-dapp-architecture -title: Exploring a Juno's Web3 Dapp Architecture -authors: [peterpeterparker] -tags: [dapp, web3, programming, webdev] -image: https://juno.build/assets/images/exploring-a-juno-web3-dapp-architecture-social-image-a34be2835d21e01fd97b954a3c16563b.png ---- - -![](./exploring-a-juno-web3-dapp-architecture-social-image.png) - ---- - -I developed a web-based drawing application — [icdraw.com](https://icdraw.com/) — on the [Internet Computer](https://internetcomputer.org/) blockchain in just a single weekend, thanks to the smooth integration provided by [Juno](https://juno.build/) 🛰️. In this blog post, I present some insights into the architecture of the frontend application I’ve built. - - - ---- - -## Architecture - -From a fundamental perspective, developing a JavaScript frontend application running entirely on blockchain using Juno does not differ significantly in terms of architecture compared to traditional Web2 serverless solutions. - -At the heart of the application lies a library responsible for evaluating the user’s authentication status, enabling or disabling access to different features based on this assessment. Each of these features has the capability to interact with and manipulate data and files on the blockchain, allowing for read, write, update, or delete operations. The only minor distinction is that modifying a state on the blockchain introduces a slight delay of a few seconds compared to saving data on a centralized server. This delay is due to the requirement of certifying the information through a consensus round. - -![Architecture](./icscan-achitecture.png) - -While there are no significant other differences, one crucial aspect stands out: my personal aversion to using applications that necessitate “manual save.” To address this, I envisioned and implemented an auto-save feature. - -However, as I understand that data persistence requires resources, I strategically incorporated this process within a Web Worker. By doing so, the burden of this task is shifted away from the UI, ensuring a seamless user experience. - -![Web Workers architecture](./icscan-web-workers.png) - -Instead of implementing an approach where the UI triggers any changes by directly interacting with the worker, I opted for a different approach in this project. Upon app initialization, a cron timer is initiated within the web worker. This timer periodically checks for any changes and processes the save operation if any modifications are detected. - -![Timer flow](./icscan-timer.png) - -Due to Juno’s ability to simplify and abstract the backend complexities associated with interfacing with the Internet Computer, there are no particular architectural details of the project really worth mentioning in my opinion. However, as the application was developed using React, I can provide some insights into the code structure. - ---- - -## Code Structure - -In my development process, I generally adopt a code organization strategy based on layers rather than features. It is worth noting that this practice may not be considered a current best practice, as it probably originates from my past experience working on projects using Java with Maven, quite some time ago 😅. - -In the case of this project developed with React, the code was structured as follows: - -![](https://cdn-images-1.medium.com/max/2000/1*5McpLM70W97RxCX6lEOVsQ.png) - -I developed the UI using several independent and reusable UI components. Rather than relying on an external state management system, I opted to utilize a few React contexts for the few information that needed to be available globally. - ---- - -## Context - -The integration process of Juno begins with a straightforward initialization at the root of the project, specifically in App.tsx , connecting the application to its associated smart contract, which we affectionately named “Satellite.” Once connected, it gains the ability to interact with the blockchain. - -```typescript jsx -import { initSatellite } from "@junobuild/core"; -import { useEffect, useState } from "react"; -import { Scene } from "./components/Scene.tsx"; -import { Auth } from "./components/context/Auth.tsx"; -import { Worker } from "./components/context/Worker.tsx"; - -const App = () => { - const [ready, setReady] = useState(false); - - useEffect(() => { - (async () => { - await initSatellite({ - satelliteId: "fqotu-wqaaa-aaaal-acp3a-cai", - }); - - setReady(true); - })(); - }, []); - - return ( - - - - - - ); -}; - -export default App; -``` - -In the code snippet mentioned above, you may have noticed the use of two contexts: - -- Auth: Handles the loading and synchronization of the user’s authentication state. - -- Worker: Manages the initialization and communication with the web workers. - ---- - -### Authentication Context - -Juno offers a convenient observable function called authSubscribe() which provides information about the user’s sign-in status. To replicate this status across the entire application, I leveraged an effect and context mechanism. This allowed me to effectively propagate the user’s sign-in status throughout the app. - -```typescript jsx -import { authSubscribe, User } from "@junobuild/core"; -import { createContext, ReactNode, useEffect, useState } from "react"; -import { Spinner } from "../misc/Spinner.tsx"; -import styles from "./Auth.module.scss"; - -export const AuthContext = createContext<{ - user: undefined | null | User; - setBusy: - | React.Dispatch> - | undefined; -}>({ - user: undefined, - setBusy: undefined, -}); - -export const Auth = ({ children }: { children?: ReactNode }) => { - const [user, setUser] = useState(undefined); - const [busy, setBusy] = useState(undefined); - - useEffect(() => { - const sub = authSubscribe((user) => setUser(user)); - - return () => sub(); - }, []); - - return ( - - {children} - - {busy ? ( -

- ) : undefined} - - ); -}; -``` - -In addition to the authentication functionality, I also incorporated a “busy” indicator within the context. This indicator displays a backdrop and spinner over the content when a sign-in process is in progress. But hey, I developed the project over a weekend, so I had to make some trade-offs. - ---- - -### Worker Context - -Implementing the initialization and interaction with web workers within a context was a new experience for me, and I must say, it’s pretty cool. In fact, I might even consider writing a separate blog post about it on my personal website because it’s an intriguing topic worth exploring further. - -```typescript jsx -import { - createContext, - ReactNode, - useContext, - useEffect, - useState, -} from "react"; -import { - PostMessage, - PostMessageDataResponse, -} from "../../types/post-message.ts"; -import { AuthContext } from "./Auth.tsx"; - -export const WorkerContext = createContext<{ - worker: Worker | undefined; - busy: boolean; -}>({ - worker: undefined, - busy: false, -}); - -export const Worker = ({ children }: { children?: ReactNode }) => { - const [worker, setWorker] = useState(undefined); - const [busy, setBusy] = useState(false); - - const { user } = useContext(AuthContext); - - useEffect(() => { - (async () => { - let w: Worker | undefined = worker; - - // Lazy load Web Worker - if (w === undefined) { - const Worker = await import("../../workers/worker?worker"); - w = new Worker.default(); - - setWorker(w); - } - - // Start or stop cron job - w?.postMessage({ - msg: user !== undefined && user !== null ? "start" : "stop", - data: { - user, - }, - }); - - // Receive messages from the worker - if (w !== undefined) { - w.onmessage = ({ - data, - }: MessageEvent>) => { - const { msg } = data; - setBusy(msg === "busy"); - }; - } - })(); - - return () => worker?.postMessage({ msg: "stop" }); - - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [user]); - - return ( - - {children} - - ); -}; -``` - -Within an effect, the user’s status passed through the previously defined context is observed. Based on whether the user is signed in or not, the worker is invoked to start or stop the cron job accordingly. - -Furthermore, when the user is defined, it is passed to the worker using the postMessage method. This ensures that the worker performs its tasks only when the user is signed in too. - -It’s worth noting that the web worker is lazily loaded. This approach was implemented to address bundling issues and ensure performance efficiency by loading the worker module only when necessary. - ---- - -## IndexedDB - -To save the edited data on the UI side and retrieve it in the worker before replicating it on the blockchain, I utilized IndexedDB with the assistance of one of my favorite libraries called [idb-keyval](https://github.com/jakearchibald/idb-keyval). - -```typescript -import { createStore, get, setMany } from "idb-keyval"; -import { Metadata } from "../types/app.ts"; - -const stateStore = createStore("icdraw-state", "state"); - -const KEY_SCENE = "scene-key"; -const KEY_NAME = "scene-name"; -const KEY_LAST_CHANGE = "last-change"; - -// Not exhaustives functions example - -export const setMetadata = ({ key, name }: Metadata) => - setMany( - [ - [KEY_LAST_CHANGE, Date.now()], - [KEY_SCENE, key], - [KEY_NAME, name] - ], - stateStore - ); - -export const getLastChange = (): Promise => - get(KEY_LAST_CHANGE, stateStore); -``` - -Using the “last change” information, the cron job timer running in the web worker can determine if data needs to be saved on the blockchain or not. - -```typescript -let lastChangeProcessed: number | undefined = undefined; - -const sync = async () => { - const lastChange = await getLastChange(); - - if (lastChange === undefined) { - // There weren't any changes - return; - } - - if (lastChangeProcessed !== undefined && lastChange <= lastChangeProcessed) { - // No new changes - return; - } - - // Do the job - - lastChangeProcessed = lastChange; -}; -``` - ---- - -## Web Worker - -As mentioned in the architecture chapter, the concept of the project is to continuously monitor for new changes rather than waiting for specific messages to trigger processes. Therefore, the worker receives only start and stop information and executes the necessary tasks accordingly. - -```typescript -onmessage = async ({ - data: { msg, data } -}: MessageEvent>) => { - switch (msg) { - case "start": - await startTimer(data?.user); - break; - case "stop": - stopTimer(); - break; - } -}; - -let timer: NodeJS.Timeout | undefined = undefined; - -const stopTimer = () => { - if (!timer) { - return; - } - - clearInterval(timer); - timer = undefined; -}; - -const startTimer = async (user: User | undefined | null) => { - if (user === null || user === undefined) { - // We do nothing if no user - console.error("Attempted to initiate a worker without a user."); - return; - } - - const execute = async () => await sync(user); - - // We start now but also schedule the update after wards - await execute(); - - timer = setInterval(execute, 1000); -}; -``` - -On the UI side, Juno is initialized with `initSatellite` which allow the library to automatically provide the information to authenticate each call made to the API smart contract. However, in the worker, I did not utilize this functionality. Instead, I manually constructed the necessary information required by the smart contract to validate the calls. - -```typescript -const sync = async (user: User | undefined | null) => { - - // Some checks and logic - - const satellite = { - identity: await unsafeIdentity(), - satelliteId: "fqotu-wqaaa-aaaal-acp3a-cai", - }; - - const doc = await getDoc({ - collection: "scenes", - key, - satellite, - }); -``` - -The function responsible for resolving the identity is named unsafeIdentity because it returns imperative information that can include an anonymous identity. As such, it should only be used when necessary, and its specific name serves as a reminder to handle it with caution. - -While the majority of the work was delegated to the web worker, I still wanted to visually indicate to the user when certain tasks were in progress. To achieve this, I implemented a messaging system where the worker sends messages to the UI indicating whether it is in a busy or idle state. This status information is then used to display a spinner and disable action buttons. - -```typescript -// Web Worker -postMessage({ - msg: "busy", // or "idle" -}); - -// UI -import { SyncOutlined } from "@ant-design/icons"; -import { useContext } from "react"; -import { WorkerContext } from "../context/Worker.tsx"; -import styles from "./Busy.module.scss"; - -export const Busy = () => { - const { busy } = useContext(WorkerContext); - - return ( -
- {busy ? : undefined} -
- ); -}; -``` - -Because the interaction with the worker was scoped and shared within a context, I could utilize this information in a component without the need to pass properties or reinstantiate the worker. - ---- - -## Resources - -The project I developed over the weekend, which I have described in this blog post, is open source, just like [Juno](https://juno.build)! 🤗 - -- icdraw 👉 [https://github.com/peterpeterparker/icdraw](https://github.com/peterpeterparker/icdraw) - -- Juno 👉 [https://github.com/junobuild/juno](https://github.com/junobuild/juno) - ---- - -👋 - -Thank you for reading! Stay connected with Juno by following us on [Twitter](https://twitter.com/junobuild) to keep up with our latest updates. - -And if you made it this far, we’d love to have you join the Juno community on [Discord](https://discord.gg/wHZ57Z2RAG). 😉 diff --git a/showcase.json b/showcase.json index 1e7d633c..036c86e3 100644 --- a/showcase.json +++ b/showcase.json @@ -23,13 +23,6 @@ "description": "An adventure around the world to meet great souls and promote good stuff.", "img": "/showcase/aegir.jpg" }, - { - "title": "icdraw", - "url": "https://icdraw.com", - "description": "A whiteboard for sketching hand-drawn like diagrams on Web3.", - "img": "https://icdraw.com/social-image.jpg", - "github": "https://github.com/peterpeterparker/icdraw" - }, { "title": "proposals.network", "url": "https://proposals.network", From 56610a81510b5731a200ca92738de4fa4a3fcf66 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 8 May 2026 07:08:40 +0000 Subject: [PATCH 2/2] =?UTF-8?q?=F0=9F=93=84=20Update=20LLMs.txt=20snapshot?= =?UTF-8?q?=20for=20PR=20review?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .llms-snapshots/llms-full.txt | 60 +++++++++++++++++------------------ 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/.llms-snapshots/llms-full.txt b/.llms-snapshots/llms-full.txt index 977c344e..9ebdf06d 100644 --- a/.llms-snapshots/llms-full.txt +++ b/.llms-snapshots/llms-full.txt @@ -10200,36 +10200,36 @@ For most applications, we recommend using the default subnets and staying on the | Subnet ID | Type | Canisters (Running/Stopped) | Nodes (Up/Total) | | --- | --- | --- | --- | -| 6pbhf-qzpdk-kuqbr-pklfa-5ehhf-jfjps-zsj6q-57nrl-kzhpd-mu7hc-vae | Juno's Subnet | 36239/705 | 13/13 | -| pzp6e-ekpqk-3c5x7-2h6so-njoeq-mt45d-h3h6c-q3mxf-vpeq5-fk5o7-yae | Fiduciary | 3784/51 | 34/34 | -| bkfrj-6k62g-dycql-7h53p-atvkj-zg4to-gaogh-netha-ptybj-ntsgw-rqe | European | 25195/718 | 13/13 | -| brlsh-zidhj-3yy3e-6vqbz-7xnih-xeq2l-as5oc-g32c4-i5pdn-2wwof-oae | | 40631/3105 | 13/13 | -| o3ow2-2ipam-6fcjo-3j5vt-fzbge-2g7my-5fz2m-p4o2t-dwlc4-gt2q7-5ae | | 62897/2621 | 13/13 | -| 4ecnw-byqwz-dtgss-ua2mh-pfvs7-c3lct-gtf4e-hnu75-j7eek-iifqm-sqe | | 14032/2669 | 13/13 | -| opn46-zyspe-hhmyp-4zu6u-7sbrh-dok77-m7dch-im62f-vyimr-a3n2c-4ae | | 45968/3193 | 13/13 | -| nl6hn-ja4yw-wvmpy-3z2jx-ymc34-pisx3-3cp5z-3oj4a-qzzny-jbsv3-4qe | | 37244/3167 | 13/13 | -| io67a-2jmkw-zup3h-snbwi-g6a5n-rm5dn-b6png-lvdpl-nqnto-yih6l-gqe | | 8400/4104 | 13/13 | -| ejbmu-grnam-gk6ol-6irwa-htwoj-7ihfl-goimw-hlnvh-abms4-47v2e-zqe | | 16891/2458 | 13/13 | -| gmq5v-hbozq-uui6y-o55wc-ihop3-562wb-3qspg-nnijg-npqp5-he3cj-3ae | | 39707/2520 | 13/13 | -| pjljw-kztyl-46ud4-ofrj6-nzkhm-3n4nt-wi3jt-ypmav-ijqkt-gjf66-uae | | 38043/2604 | 13/13 | -| 4zbus-z2bmt-ilreg-xakz4-6tyre-hsqj4-slb4g-zjwqo-snjcc-iqphi-3qe | | 71502/2364 | 13/13 | -| 5kdm2-62fc6-fwnja-hutkz-ycsnm-4z33i-woh43-4cenu-ev7mi-gii6t-4ae | | 18638/2404 | 13/13 | -| e66qm-3cydn-nkf4i-ml4rb-4ro6o-srm5s-x5hwq-hnprz-3meqp-s7vks-5qe | | 41166/3138 | 13/13 | -| qdvhd-os4o2-zzrdw-xrcv4-gljou-eztdp-bj326-e6jgr-tkhuc-ql6v2-yqe | | 58789/2366 | 13/13 | -| snjp4-xlbw4-mnbog-ddwy6-6ckfd-2w5a2-eipqo-7l436-pxqkh-l6fuv-vae | | 9861/3288 | 13/13 | -| shefu-t3kr5-t5q3w-mqmdq-jabyv-vyvtf-cyyey-3kmo4-toyln-emubw-4qe | | 8360/4158 | 12/13 | -| csyj4-zmann-ys6ge-3kzi6-onexi-obayx-2fvak-zersm-euci4-6pslt-lae | | 9121/3452 | 13/13 | -| yinp6-35cfo-wgcd2-oc4ty-2kqpf-t4dul-rfk33-fsq3r-mfmua-m2ngh-jqe | | 13861/2699 | 13/13 | -| w4asl-4nmyj-qnr7c-6cqq4-tkwmt-o26di-iupkq-vx4kt-asbrx-jzuxh-4ae | | 8465/4153 | 13/13 | -| c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae | | 6975/5761 | 13/13 | -| mpubz-g52jc-grhjo-5oze5-qcj74-sex34-omprz-ivnsm-qvvhr-rfzpv-vae | | 61396/2580 | 13/13 | -| fuqsr-in2lc-zbcjj-ydmcw-pzq7h-4xm2z-pto4i-dcyee-5z4rz-x63ji-nae | | 28775/2439 | 13/13 | -| cv73p-6v7zi-u67oy-7jc3h-qspsz-g5lrj-4fn7k-xrax3-thek2-sl46v-jae | | 57106/2558 | 13/13 | -| pae4o-o6dxf-xki7q-ezclx-znyd6-fnk6w-vkv5z-5lfwh-xym2i-otrrw-fqe | | 10337/2862 | 13/13 | -| qxesv-zoxpm-vc64m-zxguk-5sj74-35vrb-tbgwg-pcird-5gr26-62oxl-cae | | 8043/4678 | 13/13 | -| 4utr6-xo2fz-v7fsb-t3wsg-k7sfl-cj2ba-ghdnd-kcrfo-xavdb-ebean-mqe | | 7823/4812 | 13/13 | -| lspz2-jx4pu-k3e7p-znm7j-q4yum-ork6e-6w4q6-pijwq-znehu-4jabe-kqe | | 45637/3300 | 13/13 | -| jtdsg-3h6gi-hs7o5-z2soi-43w3z-soyl3-ajnp3-ekni5-sw553-5kw67-nqe | | 33152/2504 | 13/13 | +| 6pbhf-qzpdk-kuqbr-pklfa-5ehhf-jfjps-zsj6q-57nrl-kzhpd-mu7hc-vae | Juno's Subnet | 36246/707 | 13/13 | +| pzp6e-ekpqk-3c5x7-2h6so-njoeq-mt45d-h3h6c-q3mxf-vpeq5-fk5o7-yae | Fiduciary | 3839/51 | 34/34 | +| bkfrj-6k62g-dycql-7h53p-atvkj-zg4to-gaogh-netha-ptybj-ntsgw-rqe | European | 25203/720 | 13/13 | +| brlsh-zidhj-3yy3e-6vqbz-7xnih-xeq2l-as5oc-g32c4-i5pdn-2wwof-oae | | 41102/3393 | 13/13 | +| o3ow2-2ipam-6fcjo-3j5vt-fzbge-2g7my-5fz2m-p4o2t-dwlc4-gt2q7-5ae | | 63277/2922 | 13/13 | +| 4ecnw-byqwz-dtgss-ua2mh-pfvs7-c3lct-gtf4e-hnu75-j7eek-iifqm-sqe | | 14500/2948 | 13/13 | +| opn46-zyspe-hhmyp-4zu6u-7sbrh-dok77-m7dch-im62f-vyimr-a3n2c-4ae | | 46286/3512 | 12/13 | +| nl6hn-ja4yw-wvmpy-3z2jx-ymc34-pisx3-3cp5z-3oj4a-qzzny-jbsv3-4qe | | 37617/3503 | 13/13 | +| io67a-2jmkw-zup3h-snbwi-g6a5n-rm5dn-b6png-lvdpl-nqnto-yih6l-gqe | | 8698/4391 | 13/13 | +| ejbmu-grnam-gk6ol-6irwa-htwoj-7ihfl-goimw-hlnvh-abms4-47v2e-zqe | | 17317/2708 | 13/13 | +| gmq5v-hbozq-uui6y-o55wc-ihop3-562wb-3qspg-nnijg-npqp5-he3cj-3ae | | 40142/2848 | 13/13 | +| pjljw-kztyl-46ud4-ofrj6-nzkhm-3n4nt-wi3jt-ypmav-ijqkt-gjf66-uae | | 38484/2874 | 13/13 | +| 4zbus-z2bmt-ilreg-xakz4-6tyre-hsqj4-slb4g-zjwqo-snjcc-iqphi-3qe | | 72117/2781 | 13/13 | +| 5kdm2-62fc6-fwnja-hutkz-ycsnm-4z33i-woh43-4cenu-ev7mi-gii6t-4ae | | 19030/2713 | 13/13 | +| e66qm-3cydn-nkf4i-ml4rb-4ro6o-srm5s-x5hwq-hnprz-3meqp-s7vks-5qe | | 41524/3469 | 13/13 | +| qdvhd-os4o2-zzrdw-xrcv4-gljou-eztdp-bj326-e6jgr-tkhuc-ql6v2-yqe | | 59176/2707 | 13/13 | +| snjp4-xlbw4-mnbog-ddwy6-6ckfd-2w5a2-eipqo-7l436-pxqkh-l6fuv-vae | | 10278/3607 | 13/13 | +| shefu-t3kr5-t5q3w-mqmdq-jabyv-vyvtf-cyyey-3kmo4-toyln-emubw-4qe | | 8764/4473 | 12/13 | +| csyj4-zmann-ys6ge-3kzi6-onexi-obayx-2fvak-zersm-euci4-6pslt-lae | | 9403/3803 | 13/13 | +| yinp6-35cfo-wgcd2-oc4ty-2kqpf-t4dul-rfk33-fsq3r-mfmua-m2ngh-jqe | | 14269/2992 | 13/13 | +| w4asl-4nmyj-qnr7c-6cqq4-tkwmt-o26di-iupkq-vx4kt-asbrx-jzuxh-4ae | | 8763/4557 | 13/13 | +| c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae | | 7323/6086 | 13/13 | +| mpubz-g52jc-grhjo-5oze5-qcj74-sex34-omprz-ivnsm-qvvhr-rfzpv-vae | | 61751/2956 | 13/13 | +| fuqsr-in2lc-zbcjj-ydmcw-pzq7h-4xm2z-pto4i-dcyee-5z4rz-x63ji-nae | | 29196/2758 | 13/13 | +| cv73p-6v7zi-u67oy-7jc3h-qspsz-g5lrj-4fn7k-xrax3-thek2-sl46v-jae | | 57482/2814 | 13/13 | +| pae4o-o6dxf-xki7q-ezclx-znyd6-fnk6w-vkv5z-5lfwh-xym2i-otrrw-fqe | | 10743/3209 | 13/13 | +| qxesv-zoxpm-vc64m-zxguk-5sj74-35vrb-tbgwg-pcird-5gr26-62oxl-cae | | 8232/5103 | 13/13 | +| 4utr6-xo2fz-v7fsb-t3wsg-k7sfl-cj2ba-ghdnd-kcrfo-xavdb-ebean-mqe | | 8127/5162 | 13/13 | +| lspz2-jx4pu-k3e7p-znm7j-q4yum-ork6e-6w4q6-pijwq-znehu-4jabe-kqe | | 45976/3643 | 13/13 | +| jtdsg-3h6gi-hs7o5-z2soi-43w3z-soyl3-ajnp3-ekni5-sw553-5kw67-nqe | | 33498/2811 | 13/13 | ---

EP5*}?5N}Is=oeNPEOFT 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