From 30881904115d56f4ac3e294dd69e6f3855d64fec Mon Sep 17 00:00:00 2001 From: zylim726 Date: Thu, 26 Feb 2026 19:09:56 +0800 Subject: [PATCH 1/5] Solve Problem 1 using three methods to sum numbers up to n --- src/problem1/.keep | 0 src/problem1/advance_variants.js | 111 +++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) delete mode 100644 src/problem1/.keep create mode 100644 src/problem1/advance_variants.js diff --git a/src/problem1/.keep b/src/problem1/.keep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/problem1/advance_variants.js b/src/problem1/advance_variants.js new file mode 100644 index 0000000000..b976fdeeb3 --- /dev/null +++ b/src/problem1/advance_variants.js @@ -0,0 +1,111 @@ +/* +======================================================== +Problem 1: Three ways to sum to n +======================================================== + +Task: +Provide 3 unique implementations of the following function in JavaScript. +Input: n - any integer +*Assuming this input will always produce a result lesser than `Number.MAX_SAFE_INTEGER`. +Output: return - summation to n, i.e. sum_to_n(5) === 1 + 2 + 3 + 4 + 5 === 15 +======================================================== +*/ + + +/*-------------------------------------------------------- +Implementation A — Iterative Approach +-------------------------------------------------------- +Function Signature Example: +sum_to_n_a(5) => 15 + +Explanation: +Uses a loop to accumulate values from 1 to n. +Time Complexity: O(n) +Space Complexity: O(1) + +*/ +var sum_to_n_a = function(n) { + let sum = 0; + for (let i = 1; i <= n; i++) { + sum += i; + } + return sum; +}; + + +/*-------------------------------------------------------- +Implementation B — Formula Approach (Optimal) +-------------------------------------------------------- +Function Signature Example: +sum_to_n_b(5) => 15 + +Explanation : +Uses Gauss’ summation formula: sum = n * (n + 1) / 2 +No loop needed. Constant time solution. +Time Complexity: O(1) +Space Complexity: O(1) + +*/ +var sum_to_n_b = function(n) { + return n * (n + 1) / 2; +}; + + +/*-------------------------------------------------------- +Implementation C — Functional Approach +-------------------------------------------------------- +Function Signature Example: +sum_to_n_c(5) => 15 + +Explanation : +Generates an array [1..n] and sums using reduce(). +Demonstrates modern JavaScript and functional programming style. +Time Complexity: O(n) +Space Complexity: O(n) + +*/ +var sum_to_n_c = function(n) { + return Array.from({ length: n }, (_, i) => i + 1) + .reduce((acc, val) => acc + val, 0); +}; + + +/*-------------------------------------------------------- +Test Cases +-------------------------------------------------------- +Verifies correctness of all 3 implementations +*/ +function runTests() { + const testCases = [ + { input: 0, expected: 0 }, + { input: 1, expected: 1 }, + { input: 5, expected: 15 }, + { input: 10, expected: 55 }, + { input: 100, expected: 5050 } + ]; + + const implementations = [ + { name: "Iterative", fn: sum_to_n_a }, + { name: "Formula", fn: sum_to_n_b }, + { name: "Functional", fn: sum_to_n_c } + ]; + + console.log("Running Tests...\n"); + + testCases.forEach(({ input, expected }) => { + console.log(`Test n = ${input} (expected: ${expected})`); + implementations.forEach(({ name, fn }) => { + const result = fn(input); + const pass = result === expected; + console.log( + ` ${name.padEnd(12)} → ${result} ${pass ? "✅ PASS" : "❌ FAIL"}` + ); + }); + console.log(""); + }); + + console.log("All tests completed."); +} + +// Execute test cases +runTests(); \ No newline at end of file From f3943f13bb5cb82bf2cdc08414c2f70ab2b5430d Mon Sep 17 00:00:00 2001 From: zylim726 Date: Thu, 26 Feb 2026 21:08:05 +0800 Subject: [PATCH 2/5] submit the swap form --- src/problem2/fancy-swap/.gitignore | 24 + src/problem2/fancy-swap/README.md | 5 + src/problem2/fancy-swap/index.html | 13 + src/problem2/fancy-swap/package-lock.json | 1217 +++++++++ src/problem2/fancy-swap/package.json | 25 + src/problem2/fancy-swap/public/vite.svg | 1 + src/problem2/fancy-swap/src/App.vue | 17 + .../fancy-swap/src/assets/tokens/1INCH.svg | 17 + .../fancy-swap/src/assets/tokens/AAVE.svg | 4 + .../fancy-swap/src/assets/tokens/ACT.svg | 15 + .../fancy-swap/src/assets/tokens/ADA.svg | 4 + .../fancy-swap/src/assets/tokens/AEVO.svg | 12 + .../fancy-swap/src/assets/tokens/AGI.svg | 6 + .../fancy-swap/src/assets/tokens/AI16Z.svg | 19 + .../fancy-swap/src/assets/tokens/AIXBT.svg | 19 + .../fancy-swap/src/assets/tokens/AKRO.svg | 10 + .../fancy-swap/src/assets/tokens/AKT.svg | 5 + .../fancy-swap/src/assets/tokens/ALGO.svg | 4 + .../fancy-swap/src/assets/tokens/ALPHA.svg | 20 + .../fancy-swap/src/assets/tokens/ALT.svg | 15 + .../fancy-swap/src/assets/tokens/AMP.svg | 5 + .../fancy-swap/src/assets/tokens/ANC.svg | 6 + .../fancy-swap/src/assets/tokens/ANDR.svg | 48 + .../fancy-swap/src/assets/tokens/ANIME.svg | 97 + .../fancy-swap/src/assets/tokens/ANKR.svg | 4 + .../fancy-swap/src/assets/tokens/ANT.svg | 20 + .../fancy-swap/src/assets/tokens/ANY.svg | 10 + .../fancy-swap/src/assets/tokens/APE.svg | 14 + .../fancy-swap/src/assets/tokens/APOLLO.svg | 21 + .../fancy-swap/src/assets/tokens/APT.svg | 11 + .../fancy-swap/src/assets/tokens/AR.svg | 5 + .../fancy-swap/src/assets/tokens/ARB.svg | 16 + .../fancy-swap/src/assets/tokens/ARCH.svg | 11 + .../fancy-swap/src/assets/tokens/ASA.svg | 4 + .../fancy-swap/src/assets/tokens/ASTRO.svg | 12 + .../src/assets/tokens/ATOM-dATOM.svg | 20 + .../fancy-swap/src/assets/tokens/ATOM.svg | 9 + .../fancy-swap/src/assets/tokens/AUDIO.svg | 10 + .../fancy-swap/src/assets/tokens/AUT.svg | 208 ++ .../fancy-swap/src/assets/tokens/AVA.svg | 10 + .../fancy-swap/src/assets/tokens/AVAIL.svg | 200 ++ .../fancy-swap/src/assets/tokens/AVAX.svg | 4 + .../fancy-swap/src/assets/tokens/AXL.svg | 4 + .../fancy-swap/src/assets/tokens/AXS.svg | 4 + .../fancy-swap/src/assets/tokens/AXT.svg | 71 + .../fancy-swap/src/assets/tokens/BAKE.svg | 16 + .../fancy-swap/src/assets/tokens/BAL.svg | 6 + .../fancy-swap/src/assets/tokens/BAND.svg | 4 + .../fancy-swap/src/assets/tokens/BAT.svg | 4 + .../fancy-swap/src/assets/tokens/BCD.svg | 4 + .../fancy-swap/src/assets/tokens/BCH.svg | 4 + .../fancy-swap/src/assets/tokens/BCHA.svg | 5 + .../fancy-swap/src/assets/tokens/BCN.svg | 4 + .../fancy-swap/src/assets/tokens/BCNA.svg | 6 + .../fancy-swap/src/assets/tokens/BELT.svg | 1 + .../fancy-swap/src/assets/tokens/BERA.svg | 11 + .../fancy-swap/src/assets/tokens/BETH.svg | 21 + .../fancy-swap/src/assets/tokens/BHC.svg | 4 + .../fancy-swap/src/assets/tokens/BIT.svg | 4 + .../fancy-swap/src/assets/tokens/BLAST.svg | 11 + .../fancy-swap/src/assets/tokens/BLD.svg | 19 + .../fancy-swap/src/assets/tokens/BLOX.svg | 23 + .../fancy-swap/src/assets/tokens/BLUR.svg | 19 + .../fancy-swap/src/assets/tokens/BNB.svg | 4 + .../fancy-swap/src/assets/tokens/BNT.svg | 4 + .../fancy-swap/src/assets/tokens/BOLT.svg | 21 + .../fancy-swap/src/assets/tokens/BONK.svg | 424 ++++ .../fancy-swap/src/assets/tokens/BOOT.svg | 10 + .../fancy-swap/src/assets/tokens/BRAINS.svg | 11 + .../fancy-swap/src/assets/tokens/BRETT.svg | 34 + .../fancy-swap/src/assets/tokens/BRKL.svg | 276 +++ .../fancy-swap/src/assets/tokens/BTC.svg | 5 + .../fancy-swap/src/assets/tokens/BTCST.svg | 4 + .../fancy-swap/src/assets/tokens/BTG.svg | 4 + .../fancy-swap/src/assets/tokens/BTM.svg | 7 + .../fancy-swap/src/assets/tokens/BTMX.svg | 5 + .../fancy-swap/src/assets/tokens/BTSG.svg | 4 + .../fancy-swap/src/assets/tokens/BTT.svg | 7 + .../fancy-swap/src/assets/tokens/BUNNY.svg | 4 + .../fancy-swap/src/assets/tokens/BUSD.svg | 8 + .../fancy-swap/src/assets/tokens/BUSDT.svg | 5 + .../fancy-swap/src/assets/tokens/C98.svg | 7 + .../fancy-swap/src/assets/tokens/CAKE.svg | 8 + .../fancy-swap/src/assets/tokens/CANTO.svg | 11 + .../fancy-swap/src/assets/tokens/CARB.svg | 11 + .../fancy-swap/src/assets/tokens/CAT.svg | 65 + .../fancy-swap/src/assets/tokens/CEL.svg | 11 + .../fancy-swap/src/assets/tokens/CELO.svg | 4 + .../fancy-swap/src/assets/tokens/CETH.svg | 17 + .../fancy-swap/src/assets/tokens/CFX.svg | 5 + .../fancy-swap/src/assets/tokens/CGAS.svg | 4 + .../fancy-swap/src/assets/tokens/CHEQ.svg | 34 + .../fancy-swap/src/assets/tokens/CHOG.svg | 20 + .../fancy-swap/src/assets/tokens/CHSB.svg | 10 + .../fancy-swap/src/assets/tokens/CHT.svg | 54 + .../fancy-swap/src/assets/tokens/CHZ.svg | 4 + .../fancy-swap/src/assets/tokens/CKB.svg | 5 + .../fancy-swap/src/assets/tokens/CMDX.svg | 4 + .../fancy-swap/src/assets/tokens/CMST.svg | 13 + .../fancy-swap/src/assets/tokens/CNT.svg | 110 + .../fancy-swap/src/assets/tokens/COIN.svg | 4 + .../fancy-swap/src/assets/tokens/COMP.svg | 4 + .../fancy-swap/src/assets/tokens/COOK.svg | 40 + .../fancy-swap/src/assets/tokens/CRBRUS.svg | 88 + .../fancy-swap/src/assets/tokens/CRE.svg | 42 + .../fancy-swap/src/assets/tokens/CRO.svg | 8 + .../fancy-swap/src/assets/tokens/CRV.svg | 790 ++++++ .../fancy-swap/src/assets/tokens/CTK.svg | 7 + .../fancy-swap/src/assets/tokens/CW.svg | 13 + .../fancy-swap/src/assets/tokens/DAG.svg | 10 + .../fancy-swap/src/assets/tokens/DAI.svg | 4 + .../fancy-swap/src/assets/tokens/DAK.svg | 20 + .../fancy-swap/src/assets/tokens/DARC.svg | 9 + .../fancy-swap/src/assets/tokens/DASH.svg | 5 + .../fancy-swap/src/assets/tokens/DBC.svg | 4 + .../fancy-swap/src/assets/tokens/DCR.svg | 11 + .../fancy-swap/src/assets/tokens/DEC.svg | 38 + .../fancy-swap/src/assets/tokens/DEGEN.svg | 12 + .../fancy-swap/src/assets/tokens/DENT.svg | 15 + .../fancy-swap/src/assets/tokens/DGB.svg | 4 + .../fancy-swap/src/assets/tokens/DIG.svg | 54 + .../fancy-swap/src/assets/tokens/DKT.svg | 65 + .../fancy-swap/src/assets/tokens/DODO.svg | 6 + .../fancy-swap/src/assets/tokens/DOGE.svg | 124 + .../fancy-swap/src/assets/tokens/DOT.svg | 5 + .../fancy-swap/src/assets/tokens/DPL.svg | 16 + .../fancy-swap/src/assets/tokens/DPX.svg | 15 + .../fancy-swap/src/assets/tokens/DRFT.svg | 83 + .../fancy-swap/src/assets/tokens/DROP.svg | 13 + .../fancy-swap/src/assets/tokens/DSM.svg | 4 + .../fancy-swap/src/assets/tokens/DUVT.svg | 24 + .../fancy-swap/src/assets/tokens/DVPN.svg | 5 + .../fancy-swap/src/assets/tokens/DYDX.svg | 20 + .../fancy-swap/src/assets/tokens/DYM.svg | 11 + .../fancy-swap/src/assets/tokens/EEUR.svg | 16 + .../fancy-swap/src/assets/tokens/EGLD.svg | 36 + .../fancy-swap/src/assets/tokens/EIGEN.svg | 4 + .../fancy-swap/src/assets/tokens/ELA.svg | 5 + .../fancy-swap/src/assets/tokens/ELF.svg | 4 + .../fancy-swap/src/assets/tokens/ENA.svg | 21 + .../fancy-swap/src/assets/tokens/ENJ.svg | 63 + .../fancy-swap/src/assets/tokens/ENS.svg | 10 + .../fancy-swap/src/assets/tokens/EOS.svg | 4 + .../fancy-swap/src/assets/tokens/EPS.svg | 25 + .../fancy-swap/src/assets/tokens/ETC.svg | 6 + .../fancy-swap/src/assets/tokens/ETH.svg | 9 + .../fancy-swap/src/assets/tokens/ETHBTC.svg | 10 + .../fancy-swap/src/assets/tokens/ETN.svg | 4 + .../fancy-swap/src/assets/tokens/EUROC.svg | 12 + .../fancy-swap/src/assets/tokens/EUT.svg | 208 ++ .../fancy-swap/src/assets/tokens/EVMOS.svg | 4 + .../fancy-swap/src/assets/tokens/EWT.svg | 5 + .../fancy-swap/src/assets/tokens/FARTCOIN.svg | 158 ++ .../fancy-swap/src/assets/tokens/FBTC.svg | 29 + .../fancy-swap/src/assets/tokens/FEES.svg | 10 + .../fancy-swap/src/assets/tokens/FET.svg | 19 + .../fancy-swap/src/assets/tokens/FIL.svg | 4 + .../fancy-swap/src/assets/tokens/FIS.svg | 20 + .../fancy-swap/src/assets/tokens/FLIX.svg | 37 + .../fancy-swap/src/assets/tokens/FLM.svg | 13 + .../fancy-swap/src/assets/tokens/FLOW.svg | 5 + .../fancy-swap/src/assets/tokens/FLUID.svg | 53 + .../fancy-swap/src/assets/tokens/FLUO.svg | 11 + .../fancy-swap/src/assets/tokens/FRANK.svg | 268 ++ .../fancy-swap/src/assets/tokens/FSGLP.svg | 15 + .../fancy-swap/src/assets/tokens/FTM.svg | 4 + .../fancy-swap/src/assets/tokens/FTT.svg | 7 + .../fancy-swap/src/assets/tokens/FTTC.svg | 7 + .../fancy-swap/src/assets/tokens/FUN.svg | 4 + .../fancy-swap/src/assets/tokens/GALA.svg | 6 + .../fancy-swap/src/assets/tokens/GAMBIT.svg | 24 + .../fancy-swap/src/assets/tokens/GAS.svg | 4 + .../fancy-swap/src/assets/tokens/GBT.svg | 212 ++ .../fancy-swap/src/assets/tokens/GLP.svg | 15 + .../fancy-swap/src/assets/tokens/GM.svg | 7 + .../fancy-swap/src/assets/tokens/GMX.svg | 15 + .../fancy-swap/src/assets/tokens/GNO.svg | 7 + .../fancy-swap/src/assets/tokens/GNS.svg | 34 + .../fancy-swap/src/assets/tokens/GOAT.svg | 2174 +++++++++++++++++ .../fancy-swap/src/assets/tokens/GRASS.svg | 4 + .../fancy-swap/src/assets/tokens/GRAV.svg | 44 + .../fancy-swap/src/assets/tokens/GRT.svg | 4 + .../fancy-swap/src/assets/tokens/GT.svg | 4 + .../fancy-swap/src/assets/tokens/HBAR.svg | 4 + .../fancy-swap/src/assets/tokens/HDN.png | Bin 0 -> 20649 bytes .../fancy-swap/src/assets/tokens/HDN.svg | 9 + .../fancy-swap/src/assets/tokens/HELMET.svg | 9 + .../fancy-swap/src/assets/tokens/HKT.svg | 45 + .../fancy-swap/src/assets/tokens/HNT.svg | 4 + .../fancy-swap/src/assets/tokens/HOPE.svg | 144 ++ .../fancy-swap/src/assets/tokens/HOT.svg | 4 + .../fancy-swap/src/assets/tokens/HT.svg | 5 + .../fancy-swap/src/assets/tokens/HUAHUA.svg | 22 + .../fancy-swap/src/assets/tokens/HUNY.svg | 1 + .../fancy-swap/src/assets/tokens/HUSD.svg | 6 + .../fancy-swap/src/assets/tokens/HYPE.svg | 4 + .../fancy-swap/src/assets/tokens/IBCX.svg | 14 + .../fancy-swap/src/assets/tokens/ICP.svg | 16 + .../fancy-swap/src/assets/tokens/ICX.svg | 7 + .../fancy-swap/src/assets/tokens/IDT.svg | 54 + .../fancy-swap/src/assets/tokens/INIT.svg | 11 + .../fancy-swap/src/assets/tokens/INJ.svg | 14 + .../fancy-swap/src/assets/tokens/INT.svg | 82 + .../fancy-swap/src/assets/tokens/ION.svg | 114 + .../fancy-swap/src/assets/tokens/IOST.svg | 4 + .../fancy-swap/src/assets/tokens/IOTX.svg | 26 + .../fancy-swap/src/assets/tokens/IOV.svg | 9 + .../fancy-swap/src/assets/tokens/IP.svg | 24 + .../fancy-swap/src/assets/tokens/IRIS.svg | 51 + .../fancy-swap/src/assets/tokens/IXO.svg | 4 + .../fancy-swap/src/assets/tokens/JPT.svg | 54 + .../fancy-swap/src/assets/tokens/JTO.svg | 6 + .../fancy-swap/src/assets/tokens/JUNO.svg | 6 + .../fancy-swap/src/assets/tokens/JUP.svg | 34 + .../fancy-swap/src/assets/tokens/KAITO.svg | 16 + .../fancy-swap/src/assets/tokens/KAS.svg | 3 + .../fancy-swap/src/assets/tokens/KBONK.svg | 424 ++++ .../fancy-swap/src/assets/tokens/KCS.svg | 4 + .../fancy-swap/src/assets/tokens/KFLOKI.svg | 40 + .../fancy-swap/src/assets/tokens/KLAY.svg | 7 + .../fancy-swap/src/assets/tokens/KMD.svg | 15 + .../fancy-swap/src/assets/tokens/KNC.svg | 7 + .../fancy-swap/src/assets/tokens/KPEPE.svg | 28 + .../fancy-swap/src/assets/tokens/KRT.svg | 248 ++ .../fancy-swap/src/assets/tokens/KSHIB.svg | 17 + .../fancy-swap/src/assets/tokens/KSM.svg | 4 + .../fancy-swap/src/assets/tokens/KUJI.svg | 19 + .../fancy-swap/src/assets/tokens/LAYER.svg | 11 + .../fancy-swap/src/assets/tokens/LBTC.svg | 26 + .../fancy-swap/src/assets/tokens/LDO.svg | 12 + .../fancy-swap/src/assets/tokens/LEO.svg | 77 + .../fancy-swap/src/assets/tokens/LET.svg | 15 + .../fancy-swap/src/assets/tokens/LIKE.svg | 41 + .../fancy-swap/src/assets/tokens/LINK.svg | 4 + .../fancy-swap/src/assets/tokens/LKT.svg | 16 + .../fancy-swap/src/assets/tokens/LOOM.svg | 15 + .../fancy-swap/src/assets/tokens/LOOP.svg | 35 + .../fancy-swap/src/assets/tokens/LOTA.svg | 10 + .../src/assets/tokens/LPLBTC_29MAY2025.svg | 35 + .../fancy-swap/src/assets/tokens/LPT.svg | 4 + .../assets/tokens/LPberaSTONE_10APR2025.svg | 29 + .../src/assets/tokens/LPcmETH_26JUN2025.svg | 31 + .../fancy-swap/src/assets/tokens/LRC.svg | 4 + .../fancy-swap/src/assets/tokens/LSI.svg | 53 + .../fancy-swap/src/assets/tokens/LSK.svg | 4 + .../fancy-swap/src/assets/tokens/LTC.svg | 4 + .../fancy-swap/src/assets/tokens/LUM.svg | 12 + .../fancy-swap/src/assets/tokens/LUNA.svg | 15 + .../fancy-swap/src/assets/tokens/LUNAX.svg | 10 + .../fancy-swap/src/assets/tokens/LUNC.svg | 6 + .../fancy-swap/src/assets/tokens/LUNI.svg | 29 + .../fancy-swap/src/assets/tokens/LUNR.svg | 4 + .../fancy-swap/src/assets/tokens/LUV.svg | 49 + .../fancy-swap/src/assets/tokens/LVN.svg | 11 + .../assets/tokens/Liquid Staking Index.svg | 29 + .../fancy-swap/src/assets/tokens/M87.svg | 11 + .../fancy-swap/src/assets/tokens/MANA.svg | 26 + .../fancy-swap/src/assets/tokens/MANTA.svg | 25 + .../fancy-swap/src/assets/tokens/MARBLE.svg | 8 + .../fancy-swap/src/assets/tokens/MATH.svg | 4 + .../fancy-swap/src/assets/tokens/MATIC.svg | 10 + .../fancy-swap/src/assets/tokens/MDX.svg | 5 + .../fancy-swap/src/assets/tokens/ME.svg | 11 + .../fancy-swap/src/assets/tokens/MED.svg | 8 + .../fancy-swap/src/assets/tokens/MEME.svg | 13 + .../fancy-swap/src/assets/tokens/METIS.svg | 11 + .../fancy-swap/src/assets/tokens/MEW.svg | 25 + .../fancy-swap/src/assets/tokens/MIAW.svg | 7 + .../fancy-swap/src/assets/tokens/MILK.svg | 12 + .../fancy-swap/src/assets/tokens/MINA.svg | 4 + .../fancy-swap/src/assets/tokens/MINE.svg | 11 + .../fancy-swap/src/assets/tokens/MIOTA.svg | 4 + .../fancy-swap/src/assets/tokens/MIR.svg | 4 + .../fancy-swap/src/assets/tokens/MKR.svg | 10 + .../fancy-swap/src/assets/tokens/MMOG.svg | 20 + .../fancy-swap/src/assets/tokens/MNT.svg | 4 + .../fancy-swap/src/assets/tokens/MNTA.svg | 18 + .../fancy-swap/src/assets/tokens/MNTL.svg | 17 + .../fancy-swap/src/assets/tokens/MON.svg | 11 + .../fancy-swap/src/assets/tokens/MOODENG.svg | 15 + .../fancy-swap/src/assets/tokens/MORPHO.svg | 14 + .../fancy-swap/src/assets/tokens/MYT.svg | 171 ++ .../fancy-swap/src/assets/tokens/NANO.svg | 6 + .../fancy-swap/src/assets/tokens/NAS.svg | 4 + .../fancy-swap/src/assets/tokens/NAT.svg | 8 + .../fancy-swap/src/assets/tokens/NEAR.svg | 4 + .../fancy-swap/src/assets/tokens/NEIROETH.svg | 15 + .../fancy-swap/src/assets/tokens/NEO.svg | 6 + .../fancy-swap/src/assets/tokens/NETA.svg | 6 + .../fancy-swap/src/assets/tokens/NEX.svg | 5 + .../fancy-swap/src/assets/tokens/NEXO.svg | 9 + .../fancy-swap/src/assets/tokens/NGM.svg | 6 + .../fancy-swap/src/assets/tokens/NIM.svg | 23 + .../fancy-swap/src/assets/tokens/NKN.svg | 22 + .../fancy-swap/src/assets/tokens/NMR.svg | 5 + .../fancy-swap/src/assets/tokens/NOT.svg | 11 + .../fancy-swap/src/assets/tokens/NOTE.svg | 17 + .../src/assets/tokens/NTRN-dATOM.svg | 21 + .../fancy-swap/src/assets/tokens/NTRN.svg | 12 + .../fancy-swap/src/assets/tokens/NXM.svg | 8 + .../fancy-swap/src/assets/tokens/OCEAN.svg | 4 + .../fancy-swap/src/assets/tokens/OCH.svg | 15 + .../fancy-swap/src/assets/tokens/OGN.svg | 4 + .../fancy-swap/src/assets/tokens/OKB.svg | 15 + .../fancy-swap/src/assets/tokens/OKT.svg | 15 + .../fancy-swap/src/assets/tokens/OM.svg | 15 + .../fancy-swap/src/assets/tokens/OMG.svg | 7 + .../fancy-swap/src/assets/tokens/OMG_2.svg | 4 + .../fancy-swap/src/assets/tokens/OMI.svg | 18 + .../fancy-swap/src/assets/tokens/OMNI.svg | 11 + .../fancy-swap/src/assets/tokens/ONDO.svg | 11 + .../fancy-swap/src/assets/tokens/ONE.svg | 10 + .../fancy-swap/src/assets/tokens/ONT.svg | 4 + .../fancy-swap/src/assets/tokens/OP.svg | 12 + .../fancy-swap/src/assets/tokens/OPUL.svg | 7 + .../fancy-swap/src/assets/tokens/ORDI.svg | 11 + .../fancy-swap/src/assets/tokens/ORION.svg | 8 + .../fancy-swap/src/assets/tokens/ORNE.svg | 6 + .../fancy-swap/src/assets/tokens/OSMO.svg | 121 + .../fancy-swap/src/assets/tokens/OXT.svg | 7 + .../fancy-swap/src/assets/tokens/OXY.svg | 22 + .../fancy-swap/src/assets/tokens/PAX.svg | 11 + .../fancy-swap/src/assets/tokens/PAXG.svg | 22 + .../fancy-swap/src/assets/tokens/PENDLE.svg | 17 + .../fancy-swap/src/assets/tokens/PENGU.svg | 15 + .../fancy-swap/src/assets/tokens/PEPE.svg | 28 + .../fancy-swap/src/assets/tokens/PHT.svg | 124 + .../fancy-swap/src/assets/tokens/PLAY.svg | 23 + .../fancy-swap/src/assets/tokens/PLQ.svg | 15 + .../fancy-swap/src/assets/tokens/PLY.svg | 42 + .../fancy-swap/src/assets/tokens/PNUT.svg | 15 + .../fancy-swap/src/assets/tokens/POL.svg | 19 + .../fancy-swap/src/assets/tokens/POLY.svg | 55 + .../fancy-swap/src/assets/tokens/POPCAT.svg | 10 + .../fancy-swap/src/assets/tokens/PORT.svg | 4 + .../fancy-swap/src/assets/tokens/PROM.svg | 5 + .../fancy-swap/src/assets/tokens/PSI.svg | 4 + .../fancy-swap/src/assets/tokens/PSTAKE.svg | 5 + .../src/assets/tokens/PTLBTC_29MAY2025.svg | 27 + .../src/assets/tokens/PTMETH_26DEC2024.svg | 30 + .../assets/tokens/PTberaSTONE_10APR2025.svg | 21 + .../src/assets/tokens/PTcmETH_26JUN2025.svg | 23 + .../fancy-swap/src/assets/tokens/PUDGY.svg | 23 + .../fancy-swap/src/assets/tokens/PUMP.svg | 67 + .../fancy-swap/src/assets/tokens/PUNDIX.svg | 4 + .../fancy-swap/src/assets/tokens/PURR.svg | 62 + .../fancy-swap/src/assets/tokens/PURSE.svg | 22 + .../fancy-swap/src/assets/tokens/PYTH.svg | 12 + .../fancy-swap/src/assets/tokens/QCK.svg | 80 + .../fancy-swap/src/assets/tokens/QKC.svg | 10 + .../fancy-swap/src/assets/tokens/QNT.svg | 10 + .../fancy-swap/src/assets/tokens/QTUM.svg | 4 + .../fancy-swap/src/assets/tokens/RAY.svg | 14 + .../fancy-swap/src/assets/tokens/RBN.svg | 4 + .../fancy-swap/src/assets/tokens/REEF.svg | 10 + .../fancy-swap/src/assets/tokens/REGEN.svg | 24 + .../fancy-swap/src/assets/tokens/REN.svg | 16 + .../fancy-swap/src/assets/tokens/REP.svg | 5 + .../fancy-swap/src/assets/tokens/REV.svg | 12 + .../fancy-swap/src/assets/tokens/RLB.svg | 11 + .../fancy-swap/src/assets/tokens/RLC.svg | 4 + .../fancy-swap/src/assets/tokens/RNDR.svg | 11 + .../fancy-swap/src/assets/tokens/ROAR.svg | 18 + .../fancy-swap/src/assets/tokens/ROWAN.svg | 11 + .../fancy-swap/src/assets/tokens/RSR.svg | 4 + .../fancy-swap/src/assets/tokens/RUNE.svg | 10 + .../fancy-swap/src/assets/tokens/RVN.svg | 6 + .../fancy-swap/src/assets/tokens/S.svg | 4 + .../fancy-swap/src/assets/tokens/SAFEMOON.svg | 27 + .../fancy-swap/src/assets/tokens/SAGA.svg | 12 + .../fancy-swap/src/assets/tokens/SAND.svg | 10 + .../fancy-swap/src/assets/tokens/SAYVE.svg | 5 + .../fancy-swap/src/assets/tokens/SC.svg | 4 + .../fancy-swap/src/assets/tokens/SCRT.svg | 5 + .../fancy-swap/src/assets/tokens/SDT.svg | 48 + .../fancy-swap/src/assets/tokens/SEI.svg | 14 + .../fancy-swap/src/assets/tokens/SET.svg | 65 + .../fancy-swap/src/assets/tokens/SGT.svg | 138 ++ .../fancy-swap/src/assets/tokens/SHD.svg | 34 + .../fancy-swap/src/assets/tokens/SHIB.svg | 17 + .../fancy-swap/src/assets/tokens/SHIDO.svg | 20 + .../fancy-swap/src/assets/tokens/SITY.svg | 8 + .../fancy-swap/src/assets/tokens/SLERF.svg | 24 + .../fancy-swap/src/assets/tokens/SNT.svg | 4 + .../fancy-swap/src/assets/tokens/SNX.svg | 10 + .../fancy-swap/src/assets/tokens/SOL.svg | 12 + .../fancy-swap/src/assets/tokens/SOLETH.svg | 12 + .../fancy-swap/src/assets/tokens/SOM.svg | 10 + .../fancy-swap/src/assets/tokens/SOMM.svg | 65 + .../fancy-swap/src/assets/tokens/SPEC.svg | 4 + .../fancy-swap/src/assets/tokens/SRM.svg | 20 + .../fancy-swap/src/assets/tokens/SRV.svg | 5 + .../fancy-swap/src/assets/tokens/STARS.svg | 16 + .../fancy-swap/src/assets/tokens/STEEM.svg | 6 + .../fancy-swap/src/assets/tokens/STMX.svg | 4 + .../fancy-swap/src/assets/tokens/STORJ.svg | 13 + .../fancy-swap/src/assets/tokens/STRAX.svg | 12 + .../fancy-swap/src/assets/tokens/STRD.svg | 4 + .../fancy-swap/src/assets/tokens/STREAM.svg | 4 + .../fancy-swap/src/assets/tokens/STRK.svg | 13 + .../fancy-swap/src/assets/tokens/STT.svg | 4 + .../fancy-swap/src/assets/tokens/STX.svg | 4 + .../fancy-swap/src/assets/tokens/SUI.svg | 11 + .../fancy-swap/src/assets/tokens/SUN.svg | 60 + .../fancy-swap/src/assets/tokens/SUSHI.svg | 26 + .../src/assets/tokens/SWTH-LEGACY.svg | 4 + .../fancy-swap/src/assets/tokens/SWTH.svg | 71 + .../fancy-swap/src/assets/tokens/SXP.svg | 10 + .../fancy-swap/src/assets/tokens/TAO.svg | 4 + .../fancy-swap/src/assets/tokens/TEL.svg | 4 + .../fancy-swap/src/assets/tokens/TFUEL.svg | 11 + .../fancy-swap/src/assets/tokens/THETA.svg | 13 + .../fancy-swap/src/assets/tokens/THT.svg | 68 + .../fancy-swap/src/assets/tokens/TIA.svg | 11 + .../fancy-swap/src/assets/tokens/TICK.svg | 17 + .../fancy-swap/src/assets/tokens/TITAN.svg | 11 + .../fancy-swap/src/assets/tokens/TLAND.svg | 5 + .../fancy-swap/src/assets/tokens/TLM.svg | 16 + .../fancy-swap/src/assets/tokens/TOMO.svg | 6 + .../fancy-swap/src/assets/tokens/TON.svg | 11 + .../fancy-swap/src/assets/tokens/TPC.svg | 17 + .../fancy-swap/src/assets/tokens/TRAXX.svg | 14 + .../fancy-swap/src/assets/tokens/TRB.svg | 11 + .../fancy-swap/src/assets/tokens/TRU.svg | 6 + .../fancy-swap/src/assets/tokens/TRUMP.svg | 20 + .../fancy-swap/src/assets/tokens/TRX.svg | 4 + .../fancy-swap/src/assets/tokens/TTT.svg | 6 + .../fancy-swap/src/assets/tokens/TUSD.svg | 6 + .../fancy-swap/src/assets/tokens/TWD.svg | 18 + .../fancy-swap/src/assets/tokens/TWT.svg | 77 + .../fancy-swap/src/assets/tokens/Token.svg | 15 + .../fancy-swap/src/assets/tokens/UBQ.svg | 7 + .../fancy-swap/src/assets/tokens/UMEE.svg | 39 + .../fancy-swap/src/assets/tokens/UNA.svg | 7 + .../fancy-swap/src/assets/tokens/UNI.svg | 15 + .../fancy-swap/src/assets/tokens/UOS.svg | 5 + .../src/assets/tokens/USC-Minted.svg | 37 + .../fancy-swap/src/assets/tokens/USC.svg | 37 + .../fancy-swap/src/assets/tokens/USD.svg | 8 + .../src/assets/tokens/USDC-dATOM.svg | 17 + .../fancy-swap/src/assets/tokens/USDC.e.svg | 6 + .../fancy-swap/src/assets/tokens/USDC.grv.svg | 14 + .../fancy-swap/src/assets/tokens/USDC.svg | 6 + .../fancy-swap/src/assets/tokens/USDP.svg | 12 + .../fancy-swap/src/assets/tokens/USDT.svg | 5 + .../fancy-swap/src/assets/tokens/USDY.svg | 11 + .../fancy-swap/src/assets/tokens/USK.svg | 19 + .../fancy-swap/src/assets/tokens/UST.svg | 5 + .../fancy-swap/src/assets/tokens/USUAL.svg | 48 + .../fancy-swap/src/assets/tokens/VDL.svg | 6 + .../fancy-swap/src/assets/tokens/VET.svg | 4 + .../fancy-swap/src/assets/tokens/VIRTUAL.svg | 24 + .../fancy-swap/src/assets/tokens/VKR.svg | 4 + .../fancy-swap/src/assets/tokens/VRTX.svg | 22 + .../fancy-swap/src/assets/tokens/W.svg | 11 + .../fancy-swap/src/assets/tokens/WAL.svg | 11 + .../fancy-swap/src/assets/tokens/WAVAX.svg | 4 + .../fancy-swap/src/assets/tokens/WAVE.svg | 4 + .../fancy-swap/src/assets/tokens/WBNB.svg | 4 + .../fancy-swap/src/assets/tokens/WBTC.svg | 9 + .../fancy-swap/src/assets/tokens/WETH.svg | 17 + .../fancy-swap/src/assets/tokens/WHALE.svg | 10 + .../fancy-swap/src/assets/tokens/WIF.svg | 23 + .../fancy-swap/src/assets/tokens/WIN.svg | 5 + .../fancy-swap/src/assets/tokens/WLD.svg | 11 + .../fancy-swap/src/assets/tokens/WMATIC.svg | 6 + .../fancy-swap/src/assets/tokens/WMNT.svg | 4 + .../fancy-swap/src/assets/tokens/WMON.png | Bin 0 -> 826 bytes .../fancy-swap/src/assets/tokens/WRX.svg | 7 + .../fancy-swap/src/assets/tokens/XCAD.svg | 12 + .../fancy-swap/src/assets/tokens/XDC.svg | 6 + .../fancy-swap/src/assets/tokens/XEM.svg | 4 + .../fancy-swap/src/assets/tokens/XKI.svg | 5 + .../fancy-swap/src/assets/tokens/XLM.svg | 5 + .../fancy-swap/src/assets/tokens/XMR.svg | 5 + .../fancy-swap/src/assets/tokens/XPRT.svg | 5 + .../fancy-swap/src/assets/tokens/XRP.svg | 4 + .../fancy-swap/src/assets/tokens/XSGD.svg | 11 + .../fancy-swap/src/assets/tokens/XTRA.svg | 9 + .../fancy-swap/src/assets/tokens/XTZ.svg | 4 + .../fancy-swap/src/assets/tokens/XVG.svg | 4 + .../fancy-swap/src/assets/tokens/XVS.svg | 11 + .../fancy-swap/src/assets/tokens/YAKI.svg | 20 + .../fancy-swap/src/assets/tokens/YAM.svg | 47 + .../fancy-swap/src/assets/tokens/YFI.svg | 6 + .../fancy-swap/src/assets/tokens/YieldUSD.svg | 17 + .../fancy-swap/src/assets/tokens/ZCH.svg | 6 + .../fancy-swap/src/assets/tokens/ZEC.svg | 10 + .../fancy-swap/src/assets/tokens/ZEN.svg | 20 + .../fancy-swap/src/assets/tokens/ZIL.svg | 7 + .../fancy-swap/src/assets/tokens/ZRO.svg | 12 + .../fancy-swap/src/assets/tokens/ZRX.svg | 7 + .../fancy-swap/src/assets/tokens/ZWAP.svg | 5 + .../fancy-swap/src/assets/tokens/ampKUJI.svg | 12 + .../fancy-swap/src/assets/tokens/ampLUNA.svg | 15 + .../fancy-swap/src/assets/tokens/axlUSDC.svg | 6 + .../fancy-swap/src/assets/tokens/bCFX.svg | 5 + .../fancy-swap/src/assets/tokens/bNEO.svg | 12 + .../src/assets/tokens/beraSTONE.svg | 20 + .../fancy-swap/src/assets/tokens/cUSD.svg | 21 + .../fancy-swap/src/assets/tokens/cbBTC.svg | 5 + .../fancy-swap/src/assets/tokens/cbETH.svg | 10 + .../fancy-swap/src/assets/tokens/cmETH.svg | 22 + .../fancy-swap/src/assets/tokens/dATOM.svg | 13 + .../fancy-swap/src/assets/tokens/dGLP.svg | 20 + .../fancy-swap/src/assets/tokens/dINJ.svg | 20 + .../fancy-swap/src/assets/tokens/dXCAD.svg | 13 + .../fancy-swap/src/assets/tokens/ePLAY.svg | 23 + .../fancy-swap/src/assets/tokens/esFLUO.svg | 18 + .../fancy-swap/src/assets/tokens/gZIL.svg | 12 + .../fancy-swap/src/assets/tokens/iSEI.svg | 10 + .../fancy-swap/src/assets/tokens/iUSD.svg | 5 + .../fancy-swap/src/assets/tokens/mETH.svg | 24 + .../fancy-swap/src/assets/tokens/milkTIA.svg | 18 + .../fancy-swap/src/assets/tokens/nLEND.svg | 19 + .../fancy-swap/src/assets/tokens/nNEO.svg | 6 + .../fancy-swap/src/assets/tokens/rATOM.svg | 55 + .../fancy-swap/src/assets/tokens/rSWTH.svg | 88 + .../fancy-swap/src/assets/tokens/sARCH.svg | 11 + .../fancy-swap/src/assets/tokens/stATOM.svg | 22 + .../fancy-swap/src/assets/tokens/stDYDX.svg | 6 + .../fancy-swap/src/assets/tokens/stDYM.svg | 11 + .../fancy-swap/src/assets/tokens/stETH.svg | 18 + .../fancy-swap/src/assets/tokens/stEVMOS.svg | 16 + .../fancy-swap/src/assets/tokens/stFLUO.svg | 18 + .../fancy-swap/src/assets/tokens/stIBCX.svg | 4 + .../fancy-swap/src/assets/tokens/stINJ.svg | 4 + .../fancy-swap/src/assets/tokens/stJUNO.svg | 5 + .../fancy-swap/src/assets/tokens/stLUNA.svg | 9 + .../fancy-swap/src/assets/tokens/stOKT.svg | 8 + .../fancy-swap/src/assets/tokens/stOSMO.svg | 16 + .../fancy-swap/src/assets/tokens/stSAGA.svg | 5 + .../fancy-swap/src/assets/tokens/stSTARS.svg | 5 + .../fancy-swap/src/assets/tokens/stTIA.svg | 4 + .../fancy-swap/src/assets/tokens/stZIL.svg | 8 + .../fancy-swap/src/assets/tokens/stkATOM.svg | 20 + .../fancy-swap/src/assets/tokens/stkDYDX.svg | 22 + .../fancy-swap/src/assets/tokens/stkSTARS.svg | 15 + .../fancy-swap/src/assets/tokens/vZWAP.svg | 12 + .../fancy-swap/src/assets/tokens/veFLUO.svg | 18 + .../fancy-swap/src/assets/tokens/wKAS.svg | 5 + .../fancy-swap/src/assets/tokens/wstETH.svg | 11 + .../src/components/SwapForm/index.vue | 281 +++ .../src/components/TokenSelect/index.vue | 54 + .../src/composables/usePrice.script.ts | 62 + src/problem2/fancy-swap/src/main.ts | 5 + src/problem2/fancy-swap/src/style.css | 79 + src/problem2/fancy-swap/src/type/swap.type.ts | 9 + .../fancy-swap/src/type/tokenSelect.type.ts | 4 + src/problem2/fancy-swap/tsconfig.json | 14 + src/problem2/fancy-swap/vite.config.ts | 7 + src/problem2/index.html | 27 - src/problem2/script.js | 0 src/problem2/style.css | 8 - 554 files changed, 16282 insertions(+), 35 deletions(-) create mode 100644 src/problem2/fancy-swap/.gitignore create mode 100644 src/problem2/fancy-swap/README.md create mode 100644 src/problem2/fancy-swap/index.html create mode 100644 src/problem2/fancy-swap/package-lock.json create mode 100644 src/problem2/fancy-swap/package.json create mode 100644 src/problem2/fancy-swap/public/vite.svg create mode 100644 src/problem2/fancy-swap/src/App.vue create mode 100644 src/problem2/fancy-swap/src/assets/tokens/1INCH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AAVE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ACT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ADA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AEVO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AGI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AI16Z.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AIXBT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AKRO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AKT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ALGO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ALPHA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ALT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AMP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ANC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ANDR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ANIME.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ANKR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ANT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ANY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/APE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/APOLLO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/APT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ARB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ARCH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ASA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ASTRO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ATOM-dATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AUDIO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AUT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AVA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AVAIL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AVAX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AXL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AXS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/AXT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BAKE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BAL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BAND.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BAT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BCD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BCH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BCHA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BCN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BCNA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BELT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BERA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BHC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BIT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BLAST.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BLD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BLOX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BLUR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BNB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BOLT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BONK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BOOT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BRAINS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BRETT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BRKL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTCST.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTMX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTSG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BTT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BUNNY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BUSD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/BUSDT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/C98.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CAKE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CANTO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CARB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CAT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CEL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CELO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CFX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CGAS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CHEQ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CHOG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CHSB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CHT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CHZ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CKB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CMDX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CMST.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/COIN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/COMP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/COOK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CRBRUS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CRE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CRO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CRV.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CTK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/CW.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DAG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DAI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DAK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DARC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DASH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DBC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DCR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DEC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DEGEN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DENT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DGB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DIG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DKT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DODO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DOGE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DOT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DPL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DPX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DRFT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DROP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DSM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DUVT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DVPN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DYDX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/DYM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EEUR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EGLD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EIGEN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ELA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ELF.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ENA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ENJ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ENS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EOS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EPS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ETC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ETHBTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ETN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EUROC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EUT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EVMOS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/EWT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FARTCOIN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FBTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FEES.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FET.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FIL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FIS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FLIX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FLM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FLOW.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FLUID.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FLUO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FRANK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FSGLP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FTM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FTT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FTTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/FUN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GALA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GAMBIT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GAS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GBT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GLP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GMX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GNO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GNS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GOAT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GRASS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GRAV.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GRT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/GT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HBAR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HDN.png create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HDN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HELMET.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HKT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HOPE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HOT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HUAHUA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HUNY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HUSD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/HYPE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IBCX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ICP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ICX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IDT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/INIT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/INJ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/INT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ION.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IOST.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IOTX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IOV.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IRIS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/IXO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/JPT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/JTO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/JUNO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/JUP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KAITO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KAS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KBONK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KCS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KFLOKI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KLAY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KMD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KNC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KPEPE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KRT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KSHIB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KSM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/KUJI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LAYER.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LBTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LDO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LEO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LET.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LIKE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LINK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LKT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LOOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LOOP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LOTA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LPLBTC_29MAY2025.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LPT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LPberaSTONE_10APR2025.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LPcmETH_26JUN2025.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LRC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LSI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LSK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUNA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUNAX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUNC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUNI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUNR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LUV.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/LVN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/Liquid Staking Index.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/M87.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MANA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MANTA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MARBLE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MATH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MATIC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MDX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ME.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MED.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MEME.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/METIS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MEW.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MIAW.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MILK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MINA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MINE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MIOTA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MIR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MKR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MMOG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MNTA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MNTL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MON.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MOODENG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MORPHO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/MYT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NANO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NAS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NAT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NEAR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NEIROETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NEO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NETA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NEX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NEXO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NGM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NIM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NKN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NMR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NOT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NOTE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NTRN-dATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NTRN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/NXM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OCEAN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OCH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OGN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OKB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OKT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OMG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OMG_2.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OMI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OMNI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ONDO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ONE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ONT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OPUL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ORDI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ORION.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ORNE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OSMO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OXT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/OXY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PAX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PAXG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PENDLE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PENGU.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PEPE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PHT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PLAY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PLQ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PLY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PNUT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/POL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/POLY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/POPCAT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PORT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PROM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PSI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PSTAKE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PTLBTC_29MAY2025.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PTMETH_26DEC2024.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PTberaSTONE_10APR2025.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PTcmETH_26JUN2025.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PUDGY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PUMP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PUNDIX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PURR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PURSE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/PYTH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/QCK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/QKC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/QNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/QTUM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RAY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RBN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/REEF.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/REGEN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/REN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/REP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/REV.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RLB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RLC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RNDR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ROAR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ROWAN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RSR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RUNE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/RVN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/S.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SAFEMOON.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SAGA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SAND.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SAYVE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SCRT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SDT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SEI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SET.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SGT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SHD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SHIB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SHIDO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SITY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SLERF.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SNX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SOL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SOLETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SOMM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SPEC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SRM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SRV.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STARS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STEEM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STMX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STORJ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STRAX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STRD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STREAM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STRK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/STX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SUI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SUN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SUSHI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SWTH-LEGACY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SWTH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/SXP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TAO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TEL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TFUEL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/THETA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/THT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TIA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TICK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TITAN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TLAND.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TLM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TOMO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TON.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TPC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TRAXX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TRB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TRU.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TRUMP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TRX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TTT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TUSD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TWD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/TWT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/Token.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/UBQ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/UMEE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/UNA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/UNI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/UOS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USC-Minted.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDC-dATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDC.e.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDC.grv.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USDY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USK.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/UST.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/USUAL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/VDL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/VET.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/VIRTUAL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/VKR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/VRTX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/W.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WAL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WAVAX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WAVE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WBNB.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WBTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WHALE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WIF.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WIN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WLD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WMATIC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WMNT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WMON.png create mode 100644 src/problem2/fancy-swap/src/assets/tokens/WRX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XCAD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XDC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XEM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XKI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XLM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XMR.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XPRT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XRP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XSGD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XTRA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XTZ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XVG.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/XVS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/YAKI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/YAM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/YFI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/YieldUSD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZCH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZEC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZEN.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZIL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZRO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZRX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ZWAP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ampKUJI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ampLUNA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/axlUSDC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/bCFX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/bNEO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/beraSTONE.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/cUSD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/cbBTC.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/cbETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/cmETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/dATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/dGLP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/dINJ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/dXCAD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/ePLAY.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/esFLUO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/gZIL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/iSEI.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/iUSD.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/mETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/milkTIA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/nLEND.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/nNEO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/rATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/rSWTH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/sARCH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stDYDX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stDYM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stETH.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stEVMOS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stFLUO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stIBCX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stINJ.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stJUNO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stLUNA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stOKT.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stOSMO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stSAGA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stSTARS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stTIA.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stZIL.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stkATOM.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stkDYDX.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/stkSTARS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/vZWAP.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/veFLUO.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/wKAS.svg create mode 100644 src/problem2/fancy-swap/src/assets/tokens/wstETH.svg create mode 100644 src/problem2/fancy-swap/src/components/SwapForm/index.vue create mode 100644 src/problem2/fancy-swap/src/components/TokenSelect/index.vue create mode 100644 src/problem2/fancy-swap/src/composables/usePrice.script.ts create mode 100644 src/problem2/fancy-swap/src/main.ts create mode 100644 src/problem2/fancy-swap/src/style.css create mode 100644 src/problem2/fancy-swap/src/type/swap.type.ts create mode 100644 src/problem2/fancy-swap/src/type/tokenSelect.type.ts create mode 100644 src/problem2/fancy-swap/tsconfig.json create mode 100644 src/problem2/fancy-swap/vite.config.ts delete mode 100644 src/problem2/index.html delete mode 100644 src/problem2/script.js delete mode 100644 src/problem2/style.css diff --git a/src/problem2/fancy-swap/.gitignore b/src/problem2/fancy-swap/.gitignore new file mode 100644 index 0000000000..a547bf36d8 --- /dev/null +++ b/src/problem2/fancy-swap/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/src/problem2/fancy-swap/README.md b/src/problem2/fancy-swap/README.md new file mode 100644 index 0000000000..33895ab200 --- /dev/null +++ b/src/problem2/fancy-swap/README.md @@ -0,0 +1,5 @@ +# Vue 3 + TypeScript + Vite + +This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 ` + + diff --git a/src/problem2/fancy-swap/package-lock.json b/src/problem2/fancy-swap/package-lock.json new file mode 100644 index 0000000000..bf6baa88bf --- /dev/null +++ b/src/problem2/fancy-swap/package-lock.json @@ -0,0 +1,1217 @@ +{ + "name": "problem2", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "problem2", + "version": "0.0.0", + "dependencies": { + "vue": "^3.5.25" + }, + "devDependencies": { + "@types/node": "^24.10.1", + "@vitejs/plugin-vue": "^6.0.2", + "@vue/tsconfig": "^0.8.1", + "typescript": "~5.9.3", + "vite": "^8.0.0-beta.13", + "vue-tsc": "^3.1.5" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", + "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", + "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", + "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.1.tgz", + "integrity": "sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1", + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + } + }, + "node_modules/@oxc-project/runtime": { + "version": "0.114.0", + "resolved": "https://registry.npmjs.org/@oxc-project/runtime/-/runtime-0.114.0.tgz", + "integrity": "sha512-mVGQvr/uFJGQ3hsvgQ1sJfh79t5owyZZZtw+VaH+WhtvsmtgjT6imznB9sz2Q67Q0/4obM9mOOtQscU4aJteSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@oxc-project/types": { + "version": "0.114.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.114.0.tgz", + "integrity": "sha512-//nBfbzHQHvJs8oFIjv6coZ6uxQ4alLfiPe6D5vit6c4pmxATHHlVwgB1k+Hv4yoAMyncdxgRBF5K4BYWUCzvA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.5.tgz", + "integrity": "sha512-zCEmUrt1bggwgBgeKLxNj217J1OrChrp3jJt24VK9jAharSTeVaHODNL+LpcQVhRz+FktYWfT9cjo5oZ99ZLpg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.5.tgz", + "integrity": "sha512-ZP9xb9lPAex36pvkNWCjSEJW/Gfdm9I3ssiqOFLmpZ/vosPXgpoGxCmh+dX1Qs+/bWQE6toNFXWWL8vYoKoK9Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.5.tgz", + "integrity": "sha512-7IdrPunf6dp9mywMgTOKMMGDnMHQ6+h5gRl6LW8rhD8WK2kXX0IwzcM5Zc0B5J7xQs8QWOlKjv8BJsU/1CD3pg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.5.tgz", + "integrity": "sha512-o/JCk+dL0IN68EBhZ4DqfsfvxPfMeoM6cJtxORC1YYoxGHZyth2Kb2maXDb4oddw2wu8iIbnYXYPEzBtAF5CAg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.5.tgz", + "integrity": "sha512-IIBwTtA6VwxQLcEgq2mfrUgam7VvPZjhd/jxmeS1npM+edWsrrpRLHUdze+sk4rhb8/xpP3flemgcZXXUW6ukw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.5.tgz", + "integrity": "sha512-KSol1De1spMZL+Xg7K5IBWXIvRWv7+pveaxFWXpezezAG7CS6ojzRjtCGCiLxQricutTAi/LkNWKMsd2wNhMKQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.5.tgz", + "integrity": "sha512-WFljyDkxtXRlWxMjxeegf7xMYXxUr8u7JdXlOEWKYgDqEgxUnSEsVDxBiNWQ1D5kQKwf8Wo4sVKEYPRhCdsjwA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.5.tgz", + "integrity": "sha512-CUlplTujmbDWp2gamvrqVKi2Or8lmngXT1WxsizJfts7JrvfGhZObciaY/+CbdbS9qNnskvwMZNEhTPrn7b+WA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.5.tgz", + "integrity": "sha512-wdf7g9NbVZCeAo2iGhsjJb7I8ZFfs6X8bumfrWg82VK+8P6AlLXwk48a1ASiJQDTS7Svq2xVzZg3sGO2aXpHRA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.5.tgz", + "integrity": "sha512-0CWY7ubu12nhzz+tkpHjoG3IRSTlWYe0wrfJRf4qqjqQSGtAYgoL9kwzdvlhaFdZ5ffVeyYw9qLsChcjUMEloQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.5.tgz", + "integrity": "sha512-LztXnGzv6t2u830mnZrFLRVqT/DPJ9DL4ZTz/y93rqUVkeHjMMYIYaFj+BUthiYxbVH9dH0SZYufETspKY/NhA==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^1.1.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.5.tgz", + "integrity": "sha512-jUct1XVeGtyjqJXEAfvdFa8xoigYZ2rge7nYEm70ppQxpfH9ze2fbIrpHmP2tNM2vL/F6Dd0CpXhpjPbC6bSxQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.5.tgz", + "integrity": "sha512-VQ8F9ld5gw29epjnVGdrx8ugiLTe8BMqmhDYy7nGbdeDo4HAt4bgdZvLbViEhg7DZyHLpiEUlO5/jPSUrIuxRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.2.tgz", + "integrity": "sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/node": { + "version": "24.10.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.14.tgz", + "integrity": "sha512-OowOUbD1lBCOFIPOZ8xnMIhgqA4sCutMiYOmPHL1PTLt5+y1XA+g2+yC9OOyz8p+deMZqPZLxfMjYIfrKsPeFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~7.16.0" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-6.0.4.tgz", + "integrity": "sha512-uM5iXipgYIn13UUQCZNdWkYk+sysBeA97d5mHsAoAt1u/wpN3+zxOmsVJWosuzX+IMGRzeYUNytztrYznboIkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rolldown/pluginutils": "1.0.0-rc.2" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", + "vue": "^3.2.25" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.28.tgz", + "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.28" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.28.tgz", + "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@volar/typescript": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.28.tgz", + "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.29.tgz", + "integrity": "sha512-cuzPhD8fwRHk8IGfmYaR4eEe4cAyJEL66Ove/WZL7yWNL134nqLddSLwNRIsFlnnW1kK+p8Ck3viFnC0chXCXw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.0", + "@vue/shared": "3.5.29", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.29.tgz", + "integrity": "sha512-n0G5o7R3uBVmVxjTIYcz7ovr8sy7QObFG8OQJ3xGCDNhbG60biP/P5KnyY8NLd81OuT1WJflG7N4KWYHaeeaIg==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.29", + "@vue/shared": "3.5.29" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.29.tgz", + "integrity": "sha512-oJZhN5XJs35Gzr50E82jg2cYdZQ78wEwvRO6Y63TvLVTc+6xICzJHP1UIecdSPPYIbkautNBanDiWYa64QSFIA==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.0", + "@vue/compiler-core": "3.5.29", + "@vue/compiler-dom": "3.5.29", + "@vue/compiler-ssr": "3.5.29", + "@vue/shared": "3.5.29", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.29.tgz", + "integrity": "sha512-Y/ARJZE6fpjzL5GH/phJmsFwx3g6t2KmHKHx5q+MLl2kencADKIrhH5MLF6HHpRMmlRAYBRSvv347Mepf1zVNw==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.29", + "@vue/shared": "3.5.29" + } + }, + "node_modules/@vue/language-core": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.2.5.tgz", + "integrity": "sha512-d3OIxN/+KRedeM5wQ6H6NIpwS3P5gC9nmyaHgBk+rO6dIsjY+tOh4UlPpiZbAh3YtLdCGEX4M16RmsBqPmJV+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "@vue/compiler-dom": "^3.5.0", + "@vue/shared": "^3.5.0", + "alien-signals": "^3.0.0", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1", + "picomatch": "^4.0.2" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.29.tgz", + "integrity": "sha512-zcrANcrRdcLtmGZETBxWqIkoQei8HaFpZWx/GHKxx79JZsiZ8j1du0VUJtu4eJjgFvU/iKL5lRXFXksVmI+5DA==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.29" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.29.tgz", + "integrity": "sha512-8DpW2QfdwIWOLqtsNcds4s+QgwSaHSJY/SUe04LptianUQ/0xi6KVsu/pYVh+HO3NTVvVJjIPL2t6GdeKbS4Lg==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.29", + "@vue/shared": "3.5.29" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.29.tgz", + "integrity": "sha512-AHvvJEtcY9tw/uk+s/YRLSlxxQnqnAkjqvK25ZiM4CllCZWzElRAoQnCM42m9AHRLNJ6oe2kC5DCgD4AUdlvXg==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.29", + "@vue/runtime-core": "3.5.29", + "@vue/shared": "3.5.29", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.29.tgz", + "integrity": "sha512-G/1k6WK5MusLlbxSE2YTcqAAezS+VuwHhOvLx2KnQU7G2zCH6KIb+5Wyt6UjMq7a3qPzNEjJXs1hvAxDclQH+g==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.29", + "@vue/shared": "3.5.29" + }, + "peerDependencies": { + "vue": "3.5.29" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.29.tgz", + "integrity": "sha512-w7SR0A5zyRByL9XUkCfdLs7t9XOHUyJ67qPGQjOou3p6GvBeBW+AVjUUmlxtZ4PIYaRvE+1LmK44O4uajlZwcg==", + "license": "MIT" + }, + "node_modules/@vue/tsconfig": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.8.1.tgz", + "integrity": "sha512-aK7feIWPXFSUhsCP9PFqPyFOcz4ENkb8hZ2pneL6m2UjCkccvaOhC/5KCKluuBufvp2KzkbdA2W2pk20vLzu3g==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "typescript": "5.x", + "vue": "^3.4.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "vue": { + "optional": true + } + } + }, + "node_modules/alien-signals": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-3.1.2.tgz", + "integrity": "sha512-d9dYqZTS90WLiU0I5c6DHj/HcKkF8ZyGN3G5x8wSbslulz70KOxaqCT0hQCo9KOyhVqzqGojvNdJXoTumZOtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/lightningcss": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.31.1.tgz", + "integrity": "sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.31.1", + "lightningcss-darwin-arm64": "1.31.1", + "lightningcss-darwin-x64": "1.31.1", + "lightningcss-freebsd-x64": "1.31.1", + "lightningcss-linux-arm-gnueabihf": "1.31.1", + "lightningcss-linux-arm64-gnu": "1.31.1", + "lightningcss-linux-arm64-musl": "1.31.1", + "lightningcss-linux-x64-gnu": "1.31.1", + "lightningcss-linux-x64-musl": "1.31.1", + "lightningcss-win32-arm64-msvc": "1.31.1", + "lightningcss-win32-x64-msvc": "1.31.1" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.31.1.tgz", + "integrity": "sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.31.1.tgz", + "integrity": "sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.31.1.tgz", + "integrity": "sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.31.1.tgz", + "integrity": "sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.31.1.tgz", + "integrity": "sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.31.1.tgz", + "integrity": "sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.31.1.tgz", + "integrity": "sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.31.1.tgz", + "integrity": "sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.31.1.tgz", + "integrity": "sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.31.1.tgz", + "integrity": "sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.31.1", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.31.1.tgz", + "integrity": "sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/rolldown": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.5.tgz", + "integrity": "sha512-0AdalTs6hNTioaCYIkAa7+xsmHBfU5hCNclZnM/lp7lGGDuUOb6N4BVNtwiomybbencDjq/waKjTImqiGCs5sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/types": "=0.114.0", + "@rolldown/pluginutils": "1.0.0-rc.5" + }, + "bin": { + "rolldown": "bin/cli.mjs" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "optionalDependencies": { + "@rolldown/binding-android-arm64": "1.0.0-rc.5", + "@rolldown/binding-darwin-arm64": "1.0.0-rc.5", + "@rolldown/binding-darwin-x64": "1.0.0-rc.5", + "@rolldown/binding-freebsd-x64": "1.0.0-rc.5", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.5", + "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.5", + "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.5", + "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.5", + "@rolldown/binding-linux-x64-musl": "1.0.0-rc.5", + "@rolldown/binding-openharmony-arm64": "1.0.0-rc.5", + "@rolldown/binding-wasm32-wasi": "1.0.0-rc.5", + "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.5", + "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.5" + } + }, + "node_modules/rolldown/node_modules/@rolldown/pluginutils": { + "version": "1.0.0-rc.5", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.5.tgz", + "integrity": "sha512-RxlLX/DPoarZ9PtxVrQgZhPoor987YtKQqCo5zkjX+0S0yLJ7Vv515Wk6+xtTL67VONKJKxETWZwuZjss2idYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "license": "0BSD", + "optional": true + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite": { + "version": "8.0.0-beta.15", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.0-beta.15.tgz", + "integrity": "sha512-RHX7IvsJlEfjyA1rS7MY0UsmF91etdLAamslHR5lfuO3W/BXRdXm2tRE64ztpSPZbKqB4wAAZ0AwtF6QzfKZLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/runtime": "0.114.0", + "lightningcss": "^1.31.1", + "picomatch": "^4.0.3", + "postcss": "^8.5.6", + "rolldown": "1.0.0-rc.5", + "tinyglobby": "^0.2.15" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "@vitejs/devtools": "^0.0.0-alpha.31", + "esbuild": "^0.27.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "@vitejs/devtools": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/vue": { + "version": "3.5.29", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.29.tgz", + "integrity": "sha512-BZqN4Ze6mDQVNAni0IHeMJ5mwr8VAJ3MQC9FmprRhcBYENw+wOAAjRj8jfmN6FLl0j96OXbR+CjWhmAmM+QGnA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.29", + "@vue/compiler-sfc": "3.5.29", + "@vue/runtime-dom": "3.5.29", + "@vue/server-renderer": "3.5.29", + "@vue/shared": "3.5.29" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-tsc": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-3.2.5.tgz", + "integrity": "sha512-/htfTCMluQ+P2FISGAooul8kO4JMheOTCbCy4M6dYnYYjqLe3BExZudAua6MSIKSFYQtFOYAll7XobYwcpokGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "2.4.28", + "@vue/language-core": "3.2.5" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + } + } +} diff --git a/src/problem2/fancy-swap/package.json b/src/problem2/fancy-swap/package.json new file mode 100644 index 0000000000..e486b38b44 --- /dev/null +++ b/src/problem2/fancy-swap/package.json @@ -0,0 +1,25 @@ +{ + "name": "problem2", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vue-tsc -b && vite build", + "preview": "vite preview" + }, + "dependencies": { + "vue": "^3.5.25" + }, + "devDependencies": { + "@types/node": "^24.10.1", + "@vitejs/plugin-vue": "^6.0.2", + "@vue/tsconfig": "^0.8.1", + "typescript": "~5.9.3", + "vite": "^8.0.0-beta.13", + "vue-tsc": "^3.1.5" + }, + "overrides": { + "vite": "^8.0.0-beta.13" + } +} diff --git a/src/problem2/fancy-swap/public/vite.svg b/src/problem2/fancy-swap/public/vite.svg new file mode 100644 index 0000000000..e7b8dfb1b2 --- /dev/null +++ b/src/problem2/fancy-swap/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/App.vue b/src/problem2/fancy-swap/src/App.vue new file mode 100644 index 0000000000..614f4f2cdb --- /dev/null +++ b/src/problem2/fancy-swap/src/App.vue @@ -0,0 +1,17 @@ + + + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/assets/tokens/1INCH.svg b/src/problem2/fancy-swap/src/assets/tokens/1INCH.svg new file mode 100644 index 0000000000..5970f7bd55 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/1INCH.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AAVE.svg b/src/problem2/fancy-swap/src/assets/tokens/AAVE.svg new file mode 100644 index 0000000000..10e65a3210 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AAVE.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ACT.svg b/src/problem2/fancy-swap/src/assets/tokens/ACT.svg new file mode 100644 index 0000000000..2415fef55c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ACT.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ADA.svg b/src/problem2/fancy-swap/src/assets/tokens/ADA.svg new file mode 100644 index 0000000000..c57bee9598 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ADA.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AEVO.svg b/src/problem2/fancy-swap/src/assets/tokens/AEVO.svg new file mode 100644 index 0000000000..26c36a62dd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AEVO.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AGI.svg b/src/problem2/fancy-swap/src/assets/tokens/AGI.svg new file mode 100644 index 0000000000..2617764b4c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AGI.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AI16Z.svg b/src/problem2/fancy-swap/src/assets/tokens/AI16Z.svg new file mode 100644 index 0000000000..d6b38455f9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AI16Z.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AIXBT.svg b/src/problem2/fancy-swap/src/assets/tokens/AIXBT.svg new file mode 100644 index 0000000000..2fd4c736d7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AIXBT.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AKRO.svg b/src/problem2/fancy-swap/src/assets/tokens/AKRO.svg new file mode 100644 index 0000000000..33501e5c2e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AKRO.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AKT.svg b/src/problem2/fancy-swap/src/assets/tokens/AKT.svg new file mode 100644 index 0000000000..a0733cd5e8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AKT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ALGO.svg b/src/problem2/fancy-swap/src/assets/tokens/ALGO.svg new file mode 100644 index 0000000000..0c79ab88fd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ALGO.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ALPHA.svg b/src/problem2/fancy-swap/src/assets/tokens/ALPHA.svg new file mode 100644 index 0000000000..9d916fb949 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ALPHA.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ALT.svg b/src/problem2/fancy-swap/src/assets/tokens/ALT.svg new file mode 100644 index 0000000000..fb551dfa7d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ALT.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AMP.svg b/src/problem2/fancy-swap/src/assets/tokens/AMP.svg new file mode 100644 index 0000000000..71bec9f9b4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AMP.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ANC.svg b/src/problem2/fancy-swap/src/assets/tokens/ANC.svg new file mode 100644 index 0000000000..bd414783cf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ANC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ANDR.svg b/src/problem2/fancy-swap/src/assets/tokens/ANDR.svg new file mode 100644 index 0000000000..fc7e23b4ef --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ANDR.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ANIME.svg b/src/problem2/fancy-swap/src/assets/tokens/ANIME.svg new file mode 100644 index 0000000000..975db35cd4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ANIME.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ANKR.svg b/src/problem2/fancy-swap/src/assets/tokens/ANKR.svg new file mode 100644 index 0000000000..b8599f0165 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ANKR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ANT.svg b/src/problem2/fancy-swap/src/assets/tokens/ANT.svg new file mode 100644 index 0000000000..f805ff79f5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ANT.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ANY.svg b/src/problem2/fancy-swap/src/assets/tokens/ANY.svg new file mode 100644 index 0000000000..c504391175 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ANY.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/APE.svg b/src/problem2/fancy-swap/src/assets/tokens/APE.svg new file mode 100644 index 0000000000..26ff9cfd4e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/APE.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/APOLLO.svg b/src/problem2/fancy-swap/src/assets/tokens/APOLLO.svg new file mode 100644 index 0000000000..852aa5cea2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/APOLLO.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/APT.svg b/src/problem2/fancy-swap/src/assets/tokens/APT.svg new file mode 100644 index 0000000000..df0a169047 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/APT.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AR.svg b/src/problem2/fancy-swap/src/assets/tokens/AR.svg new file mode 100644 index 0000000000..5efc91fdb4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AR.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ARB.svg b/src/problem2/fancy-swap/src/assets/tokens/ARB.svg new file mode 100644 index 0000000000..2666c28ab2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ARB.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ARCH.svg b/src/problem2/fancy-swap/src/assets/tokens/ARCH.svg new file mode 100644 index 0000000000..b6deb843a1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ARCH.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ASA.svg b/src/problem2/fancy-swap/src/assets/tokens/ASA.svg new file mode 100644 index 0000000000..7023a06245 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ASA.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ASTRO.svg b/src/problem2/fancy-swap/src/assets/tokens/ASTRO.svg new file mode 100644 index 0000000000..23047ab947 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ASTRO.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ATOM-dATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/ATOM-dATOM.svg new file mode 100644 index 0000000000..07e4a7d4c2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ATOM-dATOM.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/ATOM.svg new file mode 100644 index 0000000000..f3f9d10429 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ATOM.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AUDIO.svg b/src/problem2/fancy-swap/src/assets/tokens/AUDIO.svg new file mode 100644 index 0000000000..527d7ae79e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AUDIO.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AUT.svg b/src/problem2/fancy-swap/src/assets/tokens/AUT.svg new file mode 100644 index 0000000000..4f442bcfe1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AUT.svg @@ -0,0 +1,208 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AVA.svg b/src/problem2/fancy-swap/src/assets/tokens/AVA.svg new file mode 100644 index 0000000000..b88859ee56 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AVA.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AVAIL.svg b/src/problem2/fancy-swap/src/assets/tokens/AVAIL.svg new file mode 100644 index 0000000000..6b011a7f67 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AVAIL.svg @@ -0,0 +1,200 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AVAX.svg b/src/problem2/fancy-swap/src/assets/tokens/AVAX.svg new file mode 100644 index 0000000000..e85981529c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AVAX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AXL.svg b/src/problem2/fancy-swap/src/assets/tokens/AXL.svg new file mode 100644 index 0000000000..a0d81a72ff --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AXL.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AXS.svg b/src/problem2/fancy-swap/src/assets/tokens/AXS.svg new file mode 100644 index 0000000000..ab64a1a097 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AXS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/AXT.svg b/src/problem2/fancy-swap/src/assets/tokens/AXT.svg new file mode 100644 index 0000000000..a0be2a7e32 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/AXT.svg @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BAKE.svg b/src/problem2/fancy-swap/src/assets/tokens/BAKE.svg new file mode 100644 index 0000000000..48e18cc4c8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BAKE.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BAL.svg b/src/problem2/fancy-swap/src/assets/tokens/BAL.svg new file mode 100644 index 0000000000..274d48692b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BAL.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BAND.svg b/src/problem2/fancy-swap/src/assets/tokens/BAND.svg new file mode 100644 index 0000000000..fe0b053178 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BAND.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BAT.svg b/src/problem2/fancy-swap/src/assets/tokens/BAT.svg new file mode 100644 index 0000000000..6bea15edba --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BAT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BCD.svg b/src/problem2/fancy-swap/src/assets/tokens/BCD.svg new file mode 100644 index 0000000000..2eae4d86ac --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BCD.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BCH.svg b/src/problem2/fancy-swap/src/assets/tokens/BCH.svg new file mode 100644 index 0000000000..c1b2185860 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BCH.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BCHA.svg b/src/problem2/fancy-swap/src/assets/tokens/BCHA.svg new file mode 100644 index 0000000000..d1c50093bd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BCHA.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BCN.svg b/src/problem2/fancy-swap/src/assets/tokens/BCN.svg new file mode 100644 index 0000000000..446afbc222 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BCN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BCNA.svg b/src/problem2/fancy-swap/src/assets/tokens/BCNA.svg new file mode 100644 index 0000000000..81cb2950dc --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BCNA.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BELT.svg b/src/problem2/fancy-swap/src/assets/tokens/BELT.svg new file mode 100644 index 0000000000..0711b1485c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BELT.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/assets/tokens/BERA.svg b/src/problem2/fancy-swap/src/assets/tokens/BERA.svg new file mode 100644 index 0000000000..e77de0c563 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BERA.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BETH.svg b/src/problem2/fancy-swap/src/assets/tokens/BETH.svg new file mode 100644 index 0000000000..46a2401959 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BETH.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BHC.svg b/src/problem2/fancy-swap/src/assets/tokens/BHC.svg new file mode 100644 index 0000000000..c1b2185860 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BHC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BIT.svg b/src/problem2/fancy-swap/src/assets/tokens/BIT.svg new file mode 100644 index 0000000000..123a839eb5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BIT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BLAST.svg b/src/problem2/fancy-swap/src/assets/tokens/BLAST.svg new file mode 100644 index 0000000000..d931df3f89 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BLAST.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BLD.svg b/src/problem2/fancy-swap/src/assets/tokens/BLD.svg new file mode 100644 index 0000000000..1674899d4e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BLD.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BLOX.svg b/src/problem2/fancy-swap/src/assets/tokens/BLOX.svg new file mode 100644 index 0000000000..7a3045c57f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BLOX.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BLUR.svg b/src/problem2/fancy-swap/src/assets/tokens/BLUR.svg new file mode 100644 index 0000000000..bf1e280984 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BLUR.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BNB.svg b/src/problem2/fancy-swap/src/assets/tokens/BNB.svg new file mode 100644 index 0000000000..a7c6699768 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BNB.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BNT.svg b/src/problem2/fancy-swap/src/assets/tokens/BNT.svg new file mode 100644 index 0000000000..4c29bec3c9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BNT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BOLT.svg b/src/problem2/fancy-swap/src/assets/tokens/BOLT.svg new file mode 100644 index 0000000000..a74a21608e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BOLT.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BONK.svg b/src/problem2/fancy-swap/src/assets/tokens/BONK.svg new file mode 100644 index 0000000000..5df777e894 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BONK.svg @@ -0,0 +1,424 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BOOT.svg b/src/problem2/fancy-swap/src/assets/tokens/BOOT.svg new file mode 100644 index 0000000000..2469b80cfd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BOOT.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BRAINS.svg b/src/problem2/fancy-swap/src/assets/tokens/BRAINS.svg new file mode 100644 index 0000000000..5c6a1d4184 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BRAINS.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BRETT.svg b/src/problem2/fancy-swap/src/assets/tokens/BRETT.svg new file mode 100644 index 0000000000..a799d64779 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BRETT.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BRKL.svg b/src/problem2/fancy-swap/src/assets/tokens/BRKL.svg new file mode 100644 index 0000000000..5963d18244 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BRKL.svg @@ -0,0 +1,276 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTC.svg b/src/problem2/fancy-swap/src/assets/tokens/BTC.svg new file mode 100644 index 0000000000..cd3b1e78e2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTC.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTCST.svg b/src/problem2/fancy-swap/src/assets/tokens/BTCST.svg new file mode 100644 index 0000000000..63d5b3c441 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTCST.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTG.svg b/src/problem2/fancy-swap/src/assets/tokens/BTG.svg new file mode 100644 index 0000000000..41629e7d6a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTG.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTM.svg b/src/problem2/fancy-swap/src/assets/tokens/BTM.svg new file mode 100644 index 0000000000..16fdbdfda4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTM.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTMX.svg b/src/problem2/fancy-swap/src/assets/tokens/BTMX.svg new file mode 100644 index 0000000000..5e4a26a71e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTMX.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTSG.svg b/src/problem2/fancy-swap/src/assets/tokens/BTSG.svg new file mode 100644 index 0000000000..9b82cf6a0b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTSG.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BTT.svg b/src/problem2/fancy-swap/src/assets/tokens/BTT.svg new file mode 100644 index 0000000000..736450a2db --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BTT.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BUNNY.svg b/src/problem2/fancy-swap/src/assets/tokens/BUNNY.svg new file mode 100644 index 0000000000..4bed16291f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BUNNY.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BUSD.svg b/src/problem2/fancy-swap/src/assets/tokens/BUSD.svg new file mode 100644 index 0000000000..b992764bd1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BUSD.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/BUSDT.svg b/src/problem2/fancy-swap/src/assets/tokens/BUSDT.svg new file mode 100644 index 0000000000..08bbf0587d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/BUSDT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/C98.svg b/src/problem2/fancy-swap/src/assets/tokens/C98.svg new file mode 100644 index 0000000000..3a0ff2bb70 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/C98.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CAKE.svg b/src/problem2/fancy-swap/src/assets/tokens/CAKE.svg new file mode 100644 index 0000000000..ce45fbe253 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CAKE.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CANTO.svg b/src/problem2/fancy-swap/src/assets/tokens/CANTO.svg new file mode 100644 index 0000000000..d2758becf9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CANTO.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CARB.svg b/src/problem2/fancy-swap/src/assets/tokens/CARB.svg new file mode 100644 index 0000000000..02e14d0bfe --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CARB.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CAT.svg b/src/problem2/fancy-swap/src/assets/tokens/CAT.svg new file mode 100644 index 0000000000..8f81af95be --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CAT.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CEL.svg b/src/problem2/fancy-swap/src/assets/tokens/CEL.svg new file mode 100644 index 0000000000..02cfbd269c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CEL.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CELO.svg b/src/problem2/fancy-swap/src/assets/tokens/CELO.svg new file mode 100644 index 0000000000..5ff3c6c83c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CELO.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CETH.svg b/src/problem2/fancy-swap/src/assets/tokens/CETH.svg new file mode 100644 index 0000000000..448a94a7a7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CETH.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CFX.svg b/src/problem2/fancy-swap/src/assets/tokens/CFX.svg new file mode 100644 index 0000000000..07e8c434db --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CFX.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CGAS.svg b/src/problem2/fancy-swap/src/assets/tokens/CGAS.svg new file mode 100644 index 0000000000..3c31d75c0c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CGAS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CHEQ.svg b/src/problem2/fancy-swap/src/assets/tokens/CHEQ.svg new file mode 100644 index 0000000000..ed1621a482 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CHEQ.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CHOG.svg b/src/problem2/fancy-swap/src/assets/tokens/CHOG.svg new file mode 100644 index 0000000000..adee63f975 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CHOG.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CHSB.svg b/src/problem2/fancy-swap/src/assets/tokens/CHSB.svg new file mode 100644 index 0000000000..0118cfce5c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CHSB.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CHT.svg b/src/problem2/fancy-swap/src/assets/tokens/CHT.svg new file mode 100644 index 0000000000..19d6392712 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CHT.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CHZ.svg b/src/problem2/fancy-swap/src/assets/tokens/CHZ.svg new file mode 100644 index 0000000000..68897c58f1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CHZ.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CKB.svg b/src/problem2/fancy-swap/src/assets/tokens/CKB.svg new file mode 100644 index 0000000000..888ff3323e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CKB.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CMDX.svg b/src/problem2/fancy-swap/src/assets/tokens/CMDX.svg new file mode 100644 index 0000000000..028d44e951 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CMDX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CMST.svg b/src/problem2/fancy-swap/src/assets/tokens/CMST.svg new file mode 100644 index 0000000000..cd6cb419eb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CMST.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CNT.svg b/src/problem2/fancy-swap/src/assets/tokens/CNT.svg new file mode 100644 index 0000000000..c098860f72 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CNT.svg @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/COIN.svg b/src/problem2/fancy-swap/src/assets/tokens/COIN.svg new file mode 100644 index 0000000000..098ee36d37 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/COIN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/COMP.svg b/src/problem2/fancy-swap/src/assets/tokens/COMP.svg new file mode 100644 index 0000000000..563bf3af25 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/COMP.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/COOK.svg b/src/problem2/fancy-swap/src/assets/tokens/COOK.svg new file mode 100644 index 0000000000..615625b404 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/COOK.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CRBRUS.svg b/src/problem2/fancy-swap/src/assets/tokens/CRBRUS.svg new file mode 100644 index 0000000000..d847b37b3c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CRBRUS.svg @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CRE.svg b/src/problem2/fancy-swap/src/assets/tokens/CRE.svg new file mode 100644 index 0000000000..4008331be2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CRE.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CRO.svg b/src/problem2/fancy-swap/src/assets/tokens/CRO.svg new file mode 100644 index 0000000000..75ddad7d51 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CRO.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CRV.svg b/src/problem2/fancy-swap/src/assets/tokens/CRV.svg new file mode 100644 index 0000000000..f9fa597fac --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CRV.svg @@ -0,0 +1,790 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CTK.svg b/src/problem2/fancy-swap/src/assets/tokens/CTK.svg new file mode 100644 index 0000000000..96bfa4f618 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CTK.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/CW.svg b/src/problem2/fancy-swap/src/assets/tokens/CW.svg new file mode 100644 index 0000000000..e0d8eef0af --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/CW.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DAG.svg b/src/problem2/fancy-swap/src/assets/tokens/DAG.svg new file mode 100644 index 0000000000..a06db4c405 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DAG.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DAI.svg b/src/problem2/fancy-swap/src/assets/tokens/DAI.svg new file mode 100644 index 0000000000..00fdd7ae1b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DAI.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DAK.svg b/src/problem2/fancy-swap/src/assets/tokens/DAK.svg new file mode 100644 index 0000000000..bbfa1b2640 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DAK.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DARC.svg b/src/problem2/fancy-swap/src/assets/tokens/DARC.svg new file mode 100644 index 0000000000..8e131ded9b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DARC.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DASH.svg b/src/problem2/fancy-swap/src/assets/tokens/DASH.svg new file mode 100644 index 0000000000..17e5eb7146 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DASH.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DBC.svg b/src/problem2/fancy-swap/src/assets/tokens/DBC.svg new file mode 100644 index 0000000000..91e7b72378 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DBC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DCR.svg b/src/problem2/fancy-swap/src/assets/tokens/DCR.svg new file mode 100644 index 0000000000..d97040bcfe --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DCR.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DEC.svg b/src/problem2/fancy-swap/src/assets/tokens/DEC.svg new file mode 100644 index 0000000000..025f6329b0 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DEC.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DEGEN.svg b/src/problem2/fancy-swap/src/assets/tokens/DEGEN.svg new file mode 100644 index 0000000000..44233e8e9d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DEGEN.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DENT.svg b/src/problem2/fancy-swap/src/assets/tokens/DENT.svg new file mode 100644 index 0000000000..10035d5a1a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DENT.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DGB.svg b/src/problem2/fancy-swap/src/assets/tokens/DGB.svg new file mode 100644 index 0000000000..ecf85eb29f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DGB.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DIG.svg b/src/problem2/fancy-swap/src/assets/tokens/DIG.svg new file mode 100644 index 0000000000..b75f6740df --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DIG.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DKT.svg b/src/problem2/fancy-swap/src/assets/tokens/DKT.svg new file mode 100644 index 0000000000..8d1d5a5604 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DKT.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DODO.svg b/src/problem2/fancy-swap/src/assets/tokens/DODO.svg new file mode 100644 index 0000000000..514dd23b5e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DODO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DOGE.svg b/src/problem2/fancy-swap/src/assets/tokens/DOGE.svg new file mode 100644 index 0000000000..f019ca4b5e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DOGE.svg @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DOT.svg b/src/problem2/fancy-swap/src/assets/tokens/DOT.svg new file mode 100644 index 0000000000..db6de54b24 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DOT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DPL.svg b/src/problem2/fancy-swap/src/assets/tokens/DPL.svg new file mode 100644 index 0000000000..e511541f14 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DPL.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DPX.svg b/src/problem2/fancy-swap/src/assets/tokens/DPX.svg new file mode 100644 index 0000000000..d96e812979 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DPX.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DRFT.svg b/src/problem2/fancy-swap/src/assets/tokens/DRFT.svg new file mode 100644 index 0000000000..3f64fd9620 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DRFT.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DROP.svg b/src/problem2/fancy-swap/src/assets/tokens/DROP.svg new file mode 100644 index 0000000000..dbb6c318b4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DROP.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DSM.svg b/src/problem2/fancy-swap/src/assets/tokens/DSM.svg new file mode 100644 index 0000000000..b305f5f5ea --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DSM.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DUVT.svg b/src/problem2/fancy-swap/src/assets/tokens/DUVT.svg new file mode 100644 index 0000000000..4bced3bdb9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DUVT.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DVPN.svg b/src/problem2/fancy-swap/src/assets/tokens/DVPN.svg new file mode 100644 index 0000000000..cb35dbc086 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DVPN.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DYDX.svg b/src/problem2/fancy-swap/src/assets/tokens/DYDX.svg new file mode 100644 index 0000000000..7977307c0f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DYDX.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/DYM.svg b/src/problem2/fancy-swap/src/assets/tokens/DYM.svg new file mode 100644 index 0000000000..e696de4fd5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/DYM.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EEUR.svg b/src/problem2/fancy-swap/src/assets/tokens/EEUR.svg new file mode 100644 index 0000000000..25f940a5b3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EEUR.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EGLD.svg b/src/problem2/fancy-swap/src/assets/tokens/EGLD.svg new file mode 100644 index 0000000000..e42ad2510e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EGLD.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EIGEN.svg b/src/problem2/fancy-swap/src/assets/tokens/EIGEN.svg new file mode 100644 index 0000000000..350b748dd4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EIGEN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ELA.svg b/src/problem2/fancy-swap/src/assets/tokens/ELA.svg new file mode 100644 index 0000000000..7612168452 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ELA.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ELF.svg b/src/problem2/fancy-swap/src/assets/tokens/ELF.svg new file mode 100644 index 0000000000..fd3bc6cfe8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ELF.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ENA.svg b/src/problem2/fancy-swap/src/assets/tokens/ENA.svg new file mode 100644 index 0000000000..2445033b08 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ENA.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ENJ.svg b/src/problem2/fancy-swap/src/assets/tokens/ENJ.svg new file mode 100644 index 0000000000..7b832779f7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ENJ.svg @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ENS.svg b/src/problem2/fancy-swap/src/assets/tokens/ENS.svg new file mode 100644 index 0000000000..94d385bc10 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ENS.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EOS.svg b/src/problem2/fancy-swap/src/assets/tokens/EOS.svg new file mode 100644 index 0000000000..61de71db6d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EOS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EPS.svg b/src/problem2/fancy-swap/src/assets/tokens/EPS.svg new file mode 100644 index 0000000000..ef8bb614e1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EPS.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ETC.svg b/src/problem2/fancy-swap/src/assets/tokens/ETC.svg new file mode 100644 index 0000000000..7b3e8b3869 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ETC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ETH.svg b/src/problem2/fancy-swap/src/assets/tokens/ETH.svg new file mode 100644 index 0000000000..6a7cd5afc4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ETH.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ETHBTC.svg b/src/problem2/fancy-swap/src/assets/tokens/ETHBTC.svg new file mode 100644 index 0000000000..bd01fc187e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ETHBTC.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ETN.svg b/src/problem2/fancy-swap/src/assets/tokens/ETN.svg new file mode 100644 index 0000000000..a13bc14247 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ETN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EUROC.svg b/src/problem2/fancy-swap/src/assets/tokens/EUROC.svg new file mode 100644 index 0000000000..81134495c6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EUROC.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EUT.svg b/src/problem2/fancy-swap/src/assets/tokens/EUT.svg new file mode 100644 index 0000000000..56c4d324a5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EUT.svg @@ -0,0 +1,208 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EVMOS.svg b/src/problem2/fancy-swap/src/assets/tokens/EVMOS.svg new file mode 100644 index 0000000000..8d0b90acb4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EVMOS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/EWT.svg b/src/problem2/fancy-swap/src/assets/tokens/EWT.svg new file mode 100644 index 0000000000..db6e0ec632 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/EWT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FARTCOIN.svg b/src/problem2/fancy-swap/src/assets/tokens/FARTCOIN.svg new file mode 100644 index 0000000000..9fa8534fdc --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FARTCOIN.svg @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FBTC.svg b/src/problem2/fancy-swap/src/assets/tokens/FBTC.svg new file mode 100644 index 0000000000..89b376bbf9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FBTC.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FEES.svg b/src/problem2/fancy-swap/src/assets/tokens/FEES.svg new file mode 100644 index 0000000000..f31a2e1f85 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FEES.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FET.svg b/src/problem2/fancy-swap/src/assets/tokens/FET.svg new file mode 100644 index 0000000000..20b53be3d1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FET.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FIL.svg b/src/problem2/fancy-swap/src/assets/tokens/FIL.svg new file mode 100644 index 0000000000..a875441006 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FIL.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FIS.svg b/src/problem2/fancy-swap/src/assets/tokens/FIS.svg new file mode 100644 index 0000000000..ae28f926c9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FIS.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FLIX.svg b/src/problem2/fancy-swap/src/assets/tokens/FLIX.svg new file mode 100644 index 0000000000..962e47fb2d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FLIX.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FLM.svg b/src/problem2/fancy-swap/src/assets/tokens/FLM.svg new file mode 100644 index 0000000000..73ba619981 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FLM.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FLOW.svg b/src/problem2/fancy-swap/src/assets/tokens/FLOW.svg new file mode 100644 index 0000000000..7cf7e32db2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FLOW.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FLUID.svg b/src/problem2/fancy-swap/src/assets/tokens/FLUID.svg new file mode 100644 index 0000000000..9202222f8f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FLUID.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FLUO.svg b/src/problem2/fancy-swap/src/assets/tokens/FLUO.svg new file mode 100644 index 0000000000..d4e4c7f345 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FLUO.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FRANK.svg b/src/problem2/fancy-swap/src/assets/tokens/FRANK.svg new file mode 100644 index 0000000000..6a49dcfec1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FRANK.svg @@ -0,0 +1,268 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FSGLP.svg b/src/problem2/fancy-swap/src/assets/tokens/FSGLP.svg new file mode 100644 index 0000000000..1392a246bb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FSGLP.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FTM.svg b/src/problem2/fancy-swap/src/assets/tokens/FTM.svg new file mode 100644 index 0000000000..0f46c6923c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FTM.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FTT.svg b/src/problem2/fancy-swap/src/assets/tokens/FTT.svg new file mode 100644 index 0000000000..fcd829ef4f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FTT.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FTTC.svg b/src/problem2/fancy-swap/src/assets/tokens/FTTC.svg new file mode 100644 index 0000000000..b53103bc49 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FTTC.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/FUN.svg b/src/problem2/fancy-swap/src/assets/tokens/FUN.svg new file mode 100644 index 0000000000..59cdc4bf25 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/FUN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GALA.svg b/src/problem2/fancy-swap/src/assets/tokens/GALA.svg new file mode 100644 index 0000000000..58a423f8bb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GALA.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GAMBIT.svg b/src/problem2/fancy-swap/src/assets/tokens/GAMBIT.svg new file mode 100644 index 0000000000..b2ef5aadb3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GAMBIT.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GAS.svg b/src/problem2/fancy-swap/src/assets/tokens/GAS.svg new file mode 100644 index 0000000000..3c31d75c0c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GAS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GBT.svg b/src/problem2/fancy-swap/src/assets/tokens/GBT.svg new file mode 100644 index 0000000000..7dcf617c3e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GBT.svg @@ -0,0 +1,212 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GLP.svg b/src/problem2/fancy-swap/src/assets/tokens/GLP.svg new file mode 100644 index 0000000000..c5eefed0ad --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GLP.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GM.svg b/src/problem2/fancy-swap/src/assets/tokens/GM.svg new file mode 100644 index 0000000000..7739426dcb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GM.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GMX.svg b/src/problem2/fancy-swap/src/assets/tokens/GMX.svg new file mode 100644 index 0000000000..80a8c19e74 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GMX.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GNO.svg b/src/problem2/fancy-swap/src/assets/tokens/GNO.svg new file mode 100644 index 0000000000..b53b4961bc --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GNO.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GNS.svg b/src/problem2/fancy-swap/src/assets/tokens/GNS.svg new file mode 100644 index 0000000000..f47eaabf71 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GNS.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GOAT.svg b/src/problem2/fancy-swap/src/assets/tokens/GOAT.svg new file mode 100644 index 0000000000..f52285aaa9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GOAT.svg @@ -0,0 +1,2174 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GRASS.svg b/src/problem2/fancy-swap/src/assets/tokens/GRASS.svg new file mode 100644 index 0000000000..caa370fffe --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GRASS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GRAV.svg b/src/problem2/fancy-swap/src/assets/tokens/GRAV.svg new file mode 100644 index 0000000000..658e155072 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GRAV.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GRT.svg b/src/problem2/fancy-swap/src/assets/tokens/GRT.svg new file mode 100644 index 0000000000..2d283004da --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GRT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/GT.svg b/src/problem2/fancy-swap/src/assets/tokens/GT.svg new file mode 100644 index 0000000000..6cb00ff5c5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/GT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HBAR.svg b/src/problem2/fancy-swap/src/assets/tokens/HBAR.svg new file mode 100644 index 0000000000..62d8831906 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HBAR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HDN.png b/src/problem2/fancy-swap/src/assets/tokens/HDN.png new file mode 100644 index 0000000000000000000000000000000000000000..fd7e612922734d7b5dcc6cdae2d9e3c1b7a9e1cc GIT binary patch literal 20649 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 + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HELMET.svg b/src/problem2/fancy-swap/src/assets/tokens/HELMET.svg new file mode 100644 index 0000000000..1a50859878 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HELMET.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HKT.svg b/src/problem2/fancy-swap/src/assets/tokens/HKT.svg new file mode 100644 index 0000000000..d2f5c930a7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HKT.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HNT.svg b/src/problem2/fancy-swap/src/assets/tokens/HNT.svg new file mode 100644 index 0000000000..402e236890 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HNT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HOPE.svg b/src/problem2/fancy-swap/src/assets/tokens/HOPE.svg new file mode 100644 index 0000000000..b7541ae4a9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HOPE.svg @@ -0,0 +1,144 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HOT.svg b/src/problem2/fancy-swap/src/assets/tokens/HOT.svg new file mode 100644 index 0000000000..eab9101a1f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HOT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HT.svg b/src/problem2/fancy-swap/src/assets/tokens/HT.svg new file mode 100644 index 0000000000..72cdfdd097 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HUAHUA.svg b/src/problem2/fancy-swap/src/assets/tokens/HUAHUA.svg new file mode 100644 index 0000000000..e94cd98d8d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HUAHUA.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HUNY.svg b/src/problem2/fancy-swap/src/assets/tokens/HUNY.svg new file mode 100644 index 0000000000..b06f2f5457 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HUNY.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/assets/tokens/HUSD.svg b/src/problem2/fancy-swap/src/assets/tokens/HUSD.svg new file mode 100644 index 0000000000..30b26c0373 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HUSD.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/HYPE.svg b/src/problem2/fancy-swap/src/assets/tokens/HYPE.svg new file mode 100644 index 0000000000..24eb8536f1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/HYPE.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IBCX.svg b/src/problem2/fancy-swap/src/assets/tokens/IBCX.svg new file mode 100644 index 0000000000..061c6ccefe --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IBCX.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ICP.svg b/src/problem2/fancy-swap/src/assets/tokens/ICP.svg new file mode 100644 index 0000000000..c7a99ba9bd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ICP.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ICX.svg b/src/problem2/fancy-swap/src/assets/tokens/ICX.svg new file mode 100644 index 0000000000..53efc54ef9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ICX.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IDT.svg b/src/problem2/fancy-swap/src/assets/tokens/IDT.svg new file mode 100644 index 0000000000..91288c58bf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IDT.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/INIT.svg b/src/problem2/fancy-swap/src/assets/tokens/INIT.svg new file mode 100644 index 0000000000..47395f6439 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/INIT.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/INJ.svg b/src/problem2/fancy-swap/src/assets/tokens/INJ.svg new file mode 100644 index 0000000000..b6d304e498 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/INJ.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/INT.svg b/src/problem2/fancy-swap/src/assets/tokens/INT.svg new file mode 100644 index 0000000000..9ab0d29f35 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/INT.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ION.svg b/src/problem2/fancy-swap/src/assets/tokens/ION.svg new file mode 100644 index 0000000000..adad5f300f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ION.svg @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IOST.svg b/src/problem2/fancy-swap/src/assets/tokens/IOST.svg new file mode 100644 index 0000000000..8f791796a3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IOST.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IOTX.svg b/src/problem2/fancy-swap/src/assets/tokens/IOTX.svg new file mode 100644 index 0000000000..97a8461838 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IOTX.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IOV.svg b/src/problem2/fancy-swap/src/assets/tokens/IOV.svg new file mode 100644 index 0000000000..2c37835fff --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IOV.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IP.svg b/src/problem2/fancy-swap/src/assets/tokens/IP.svg new file mode 100644 index 0000000000..be63bba6d7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IP.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IRIS.svg b/src/problem2/fancy-swap/src/assets/tokens/IRIS.svg new file mode 100644 index 0000000000..59b13b5aa6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IRIS.svg @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/IXO.svg b/src/problem2/fancy-swap/src/assets/tokens/IXO.svg new file mode 100644 index 0000000000..0d1fb10136 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/IXO.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/JPT.svg b/src/problem2/fancy-swap/src/assets/tokens/JPT.svg new file mode 100644 index 0000000000..14014e4cb8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/JPT.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/JTO.svg b/src/problem2/fancy-swap/src/assets/tokens/JTO.svg new file mode 100644 index 0000000000..3ce7f51587 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/JTO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/JUNO.svg b/src/problem2/fancy-swap/src/assets/tokens/JUNO.svg new file mode 100644 index 0000000000..d65fb3da31 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/JUNO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/JUP.svg b/src/problem2/fancy-swap/src/assets/tokens/JUP.svg new file mode 100644 index 0000000000..adf9284819 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/JUP.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KAITO.svg b/src/problem2/fancy-swap/src/assets/tokens/KAITO.svg new file mode 100644 index 0000000000..f51471047a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KAITO.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KAS.svg b/src/problem2/fancy-swap/src/assets/tokens/KAS.svg new file mode 100644 index 0000000000..1c9ea6bc49 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KAS.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KBONK.svg b/src/problem2/fancy-swap/src/assets/tokens/KBONK.svg new file mode 100644 index 0000000000..5df777e894 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KBONK.svg @@ -0,0 +1,424 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KCS.svg b/src/problem2/fancy-swap/src/assets/tokens/KCS.svg new file mode 100644 index 0000000000..a4b333dfb8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KCS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KFLOKI.svg b/src/problem2/fancy-swap/src/assets/tokens/KFLOKI.svg new file mode 100644 index 0000000000..d35699e87e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KFLOKI.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KLAY.svg b/src/problem2/fancy-swap/src/assets/tokens/KLAY.svg new file mode 100644 index 0000000000..6f1d4cabef --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KLAY.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KMD.svg b/src/problem2/fancy-swap/src/assets/tokens/KMD.svg new file mode 100644 index 0000000000..62598658bb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KMD.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KNC.svg b/src/problem2/fancy-swap/src/assets/tokens/KNC.svg new file mode 100644 index 0000000000..d9ed00657f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KNC.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KPEPE.svg b/src/problem2/fancy-swap/src/assets/tokens/KPEPE.svg new file mode 100644 index 0000000000..92665e5502 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KPEPE.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KRT.svg b/src/problem2/fancy-swap/src/assets/tokens/KRT.svg new file mode 100644 index 0000000000..e6ea416cf6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KRT.svg @@ -0,0 +1,248 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KSHIB.svg b/src/problem2/fancy-swap/src/assets/tokens/KSHIB.svg new file mode 100644 index 0000000000..adbb2f009b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KSHIB.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KSM.svg b/src/problem2/fancy-swap/src/assets/tokens/KSM.svg new file mode 100644 index 0000000000..771f73596e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KSM.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/KUJI.svg b/src/problem2/fancy-swap/src/assets/tokens/KUJI.svg new file mode 100644 index 0000000000..7c169dd724 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/KUJI.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LAYER.svg b/src/problem2/fancy-swap/src/assets/tokens/LAYER.svg new file mode 100644 index 0000000000..9e9036df30 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LAYER.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LBTC.svg b/src/problem2/fancy-swap/src/assets/tokens/LBTC.svg new file mode 100644 index 0000000000..1476de62ab --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LBTC.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LDO.svg b/src/problem2/fancy-swap/src/assets/tokens/LDO.svg new file mode 100644 index 0000000000..c8860768cf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LDO.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LEO.svg b/src/problem2/fancy-swap/src/assets/tokens/LEO.svg new file mode 100644 index 0000000000..f94a11c945 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LEO.svg @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LET.svg b/src/problem2/fancy-swap/src/assets/tokens/LET.svg new file mode 100644 index 0000000000..8f6a4a06e6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LET.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LIKE.svg b/src/problem2/fancy-swap/src/assets/tokens/LIKE.svg new file mode 100644 index 0000000000..a0ac6ac6ac --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LIKE.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LINK.svg b/src/problem2/fancy-swap/src/assets/tokens/LINK.svg new file mode 100644 index 0000000000..8484106a43 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LINK.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LKT.svg b/src/problem2/fancy-swap/src/assets/tokens/LKT.svg new file mode 100644 index 0000000000..f224ae0ff2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LKT.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LOOM.svg b/src/problem2/fancy-swap/src/assets/tokens/LOOM.svg new file mode 100644 index 0000000000..5ad0435613 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LOOM.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LOOP.svg b/src/problem2/fancy-swap/src/assets/tokens/LOOP.svg new file mode 100644 index 0000000000..6c69420439 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LOOP.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LOTA.svg b/src/problem2/fancy-swap/src/assets/tokens/LOTA.svg new file mode 100644 index 0000000000..10c742ae6d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LOTA.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LPLBTC_29MAY2025.svg b/src/problem2/fancy-swap/src/assets/tokens/LPLBTC_29MAY2025.svg new file mode 100644 index 0000000000..d75f81bcd5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LPLBTC_29MAY2025.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LPT.svg b/src/problem2/fancy-swap/src/assets/tokens/LPT.svg new file mode 100644 index 0000000000..c026842d93 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LPT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LPberaSTONE_10APR2025.svg b/src/problem2/fancy-swap/src/assets/tokens/LPberaSTONE_10APR2025.svg new file mode 100644 index 0000000000..24fd8ebe9a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LPberaSTONE_10APR2025.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LPcmETH_26JUN2025.svg b/src/problem2/fancy-swap/src/assets/tokens/LPcmETH_26JUN2025.svg new file mode 100644 index 0000000000..dd4bb6fbbc --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LPcmETH_26JUN2025.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LRC.svg b/src/problem2/fancy-swap/src/assets/tokens/LRC.svg new file mode 100644 index 0000000000..2319bb063d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LRC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LSI.svg b/src/problem2/fancy-swap/src/assets/tokens/LSI.svg new file mode 100644 index 0000000000..48618f66b3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LSI.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LSK.svg b/src/problem2/fancy-swap/src/assets/tokens/LSK.svg new file mode 100644 index 0000000000..d7b38f123e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LSK.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LTC.svg b/src/problem2/fancy-swap/src/assets/tokens/LTC.svg new file mode 100644 index 0000000000..d734c3ac54 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LTC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUM.svg b/src/problem2/fancy-swap/src/assets/tokens/LUM.svg new file mode 100644 index 0000000000..8994d02ad5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUM.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUNA.svg b/src/problem2/fancy-swap/src/assets/tokens/LUNA.svg new file mode 100644 index 0000000000..6a839981dd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUNA.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUNAX.svg b/src/problem2/fancy-swap/src/assets/tokens/LUNAX.svg new file mode 100644 index 0000000000..afc19e17de --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUNAX.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUNC.svg b/src/problem2/fancy-swap/src/assets/tokens/LUNC.svg new file mode 100644 index 0000000000..fe40173c96 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUNC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUNI.svg b/src/problem2/fancy-swap/src/assets/tokens/LUNI.svg new file mode 100644 index 0000000000..1721643744 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUNI.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUNR.svg b/src/problem2/fancy-swap/src/assets/tokens/LUNR.svg new file mode 100644 index 0000000000..1b8b15237f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUNR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LUV.svg b/src/problem2/fancy-swap/src/assets/tokens/LUV.svg new file mode 100644 index 0000000000..0f7342c490 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LUV.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/LVN.svg b/src/problem2/fancy-swap/src/assets/tokens/LVN.svg new file mode 100644 index 0000000000..65aac46ea5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/LVN.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/Liquid Staking Index.svg b/src/problem2/fancy-swap/src/assets/tokens/Liquid Staking Index.svg new file mode 100644 index 0000000000..58533746be --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/Liquid Staking Index.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/M87.svg b/src/problem2/fancy-swap/src/assets/tokens/M87.svg new file mode 100644 index 0000000000..77f8c882b5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/M87.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MANA.svg b/src/problem2/fancy-swap/src/assets/tokens/MANA.svg new file mode 100644 index 0000000000..0629467224 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MANA.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MANTA.svg b/src/problem2/fancy-swap/src/assets/tokens/MANTA.svg new file mode 100644 index 0000000000..1970537a1f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MANTA.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MARBLE.svg b/src/problem2/fancy-swap/src/assets/tokens/MARBLE.svg new file mode 100644 index 0000000000..4e9c2214f2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MARBLE.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MATH.svg b/src/problem2/fancy-swap/src/assets/tokens/MATH.svg new file mode 100644 index 0000000000..144d40f0bb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MATH.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MATIC.svg b/src/problem2/fancy-swap/src/assets/tokens/MATIC.svg new file mode 100644 index 0000000000..98d07c7d95 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MATIC.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MDX.svg b/src/problem2/fancy-swap/src/assets/tokens/MDX.svg new file mode 100644 index 0000000000..8f3b267801 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MDX.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ME.svg b/src/problem2/fancy-swap/src/assets/tokens/ME.svg new file mode 100644 index 0000000000..f354182728 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ME.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MED.svg b/src/problem2/fancy-swap/src/assets/tokens/MED.svg new file mode 100644 index 0000000000..900d139258 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MED.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MEME.svg b/src/problem2/fancy-swap/src/assets/tokens/MEME.svg new file mode 100644 index 0000000000..d784304a65 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MEME.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/METIS.svg b/src/problem2/fancy-swap/src/assets/tokens/METIS.svg new file mode 100644 index 0000000000..3bd43ffadb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/METIS.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MEW.svg b/src/problem2/fancy-swap/src/assets/tokens/MEW.svg new file mode 100644 index 0000000000..dc9532c537 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MEW.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MIAW.svg b/src/problem2/fancy-swap/src/assets/tokens/MIAW.svg new file mode 100644 index 0000000000..ddf46721c7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MIAW.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MILK.svg b/src/problem2/fancy-swap/src/assets/tokens/MILK.svg new file mode 100644 index 0000000000..e6a434e9c1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MILK.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MINA.svg b/src/problem2/fancy-swap/src/assets/tokens/MINA.svg new file mode 100644 index 0000000000..d5aafd7398 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MINA.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MINE.svg b/src/problem2/fancy-swap/src/assets/tokens/MINE.svg new file mode 100644 index 0000000000..ff71cab9e7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MINE.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MIOTA.svg b/src/problem2/fancy-swap/src/assets/tokens/MIOTA.svg new file mode 100644 index 0000000000..3d3c08c604 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MIOTA.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MIR.svg b/src/problem2/fancy-swap/src/assets/tokens/MIR.svg new file mode 100644 index 0000000000..0247791318 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MIR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MKR.svg b/src/problem2/fancy-swap/src/assets/tokens/MKR.svg new file mode 100644 index 0000000000..9a639d1374 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MKR.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MMOG.svg b/src/problem2/fancy-swap/src/assets/tokens/MMOG.svg new file mode 100644 index 0000000000..6bb1f33b10 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MMOG.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MNT.svg b/src/problem2/fancy-swap/src/assets/tokens/MNT.svg new file mode 100644 index 0000000000..1aa231ddd4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MNT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MNTA.svg b/src/problem2/fancy-swap/src/assets/tokens/MNTA.svg new file mode 100644 index 0000000000..e3b7cfa957 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MNTA.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MNTL.svg b/src/problem2/fancy-swap/src/assets/tokens/MNTL.svg new file mode 100644 index 0000000000..71e1c497e9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MNTL.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MON.svg b/src/problem2/fancy-swap/src/assets/tokens/MON.svg new file mode 100644 index 0000000000..be988333af --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MON.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MOODENG.svg b/src/problem2/fancy-swap/src/assets/tokens/MOODENG.svg new file mode 100644 index 0000000000..679ffc5b35 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MOODENG.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MORPHO.svg b/src/problem2/fancy-swap/src/assets/tokens/MORPHO.svg new file mode 100644 index 0000000000..a27a0fb363 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MORPHO.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/MYT.svg b/src/problem2/fancy-swap/src/assets/tokens/MYT.svg new file mode 100644 index 0000000000..92cbc6468d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/MYT.svg @@ -0,0 +1,171 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NANO.svg b/src/problem2/fancy-swap/src/assets/tokens/NANO.svg new file mode 100644 index 0000000000..9ed54dd843 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NANO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NAS.svg b/src/problem2/fancy-swap/src/assets/tokens/NAS.svg new file mode 100644 index 0000000000..071766c17c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NAS.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NAT.svg b/src/problem2/fancy-swap/src/assets/tokens/NAT.svg new file mode 100644 index 0000000000..d72f7e18fc --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NAT.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NEAR.svg b/src/problem2/fancy-swap/src/assets/tokens/NEAR.svg new file mode 100644 index 0000000000..7bc784c808 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NEAR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NEIROETH.svg b/src/problem2/fancy-swap/src/assets/tokens/NEIROETH.svg new file mode 100644 index 0000000000..3ced226feb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NEIROETH.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NEO.svg b/src/problem2/fancy-swap/src/assets/tokens/NEO.svg new file mode 100644 index 0000000000..d4a90e1b27 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NEO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NETA.svg b/src/problem2/fancy-swap/src/assets/tokens/NETA.svg new file mode 100644 index 0000000000..b617dbef98 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NETA.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NEX.svg b/src/problem2/fancy-swap/src/assets/tokens/NEX.svg new file mode 100644 index 0000000000..34be620b9e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NEX.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NEXO.svg b/src/problem2/fancy-swap/src/assets/tokens/NEXO.svg new file mode 100644 index 0000000000..4f8507a40f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NEXO.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NGM.svg b/src/problem2/fancy-swap/src/assets/tokens/NGM.svg new file mode 100644 index 0000000000..ebdc8a035d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NGM.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NIM.svg b/src/problem2/fancy-swap/src/assets/tokens/NIM.svg new file mode 100644 index 0000000000..ec74006b7c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NIM.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NKN.svg b/src/problem2/fancy-swap/src/assets/tokens/NKN.svg new file mode 100644 index 0000000000..e008ac5d71 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NKN.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NMR.svg b/src/problem2/fancy-swap/src/assets/tokens/NMR.svg new file mode 100644 index 0000000000..fcb458cafa --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NMR.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NOT.svg b/src/problem2/fancy-swap/src/assets/tokens/NOT.svg new file mode 100644 index 0000000000..5561ccec77 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NOT.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NOTE.svg b/src/problem2/fancy-swap/src/assets/tokens/NOTE.svg new file mode 100644 index 0000000000..9f44e1971f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NOTE.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NTRN-dATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/NTRN-dATOM.svg new file mode 100644 index 0000000000..5b3303f21b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NTRN-dATOM.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NTRN.svg b/src/problem2/fancy-swap/src/assets/tokens/NTRN.svg new file mode 100644 index 0000000000..150a6137d2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NTRN.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/NXM.svg b/src/problem2/fancy-swap/src/assets/tokens/NXM.svg new file mode 100644 index 0000000000..165bc3b984 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/NXM.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OCEAN.svg b/src/problem2/fancy-swap/src/assets/tokens/OCEAN.svg new file mode 100644 index 0000000000..ad0f99d6ae --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OCEAN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OCH.svg b/src/problem2/fancy-swap/src/assets/tokens/OCH.svg new file mode 100644 index 0000000000..51c3f8e039 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OCH.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OGN.svg b/src/problem2/fancy-swap/src/assets/tokens/OGN.svg new file mode 100644 index 0000000000..e15dbac858 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OGN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OKB.svg b/src/problem2/fancy-swap/src/assets/tokens/OKB.svg new file mode 100644 index 0000000000..786f75ba42 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OKB.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OKT.svg b/src/problem2/fancy-swap/src/assets/tokens/OKT.svg new file mode 100644 index 0000000000..0afcd8a1cf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OKT.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OM.svg b/src/problem2/fancy-swap/src/assets/tokens/OM.svg new file mode 100644 index 0000000000..6305bd1560 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OM.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OMG.svg b/src/problem2/fancy-swap/src/assets/tokens/OMG.svg new file mode 100644 index 0000000000..2d3d8ae8e6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OMG.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OMG_2.svg b/src/problem2/fancy-swap/src/assets/tokens/OMG_2.svg new file mode 100644 index 0000000000..5735f9f726 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OMG_2.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OMI.svg b/src/problem2/fancy-swap/src/assets/tokens/OMI.svg new file mode 100644 index 0000000000..b1d5020084 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OMI.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OMNI.svg b/src/problem2/fancy-swap/src/assets/tokens/OMNI.svg new file mode 100644 index 0000000000..ea1ce8353d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OMNI.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ONDO.svg b/src/problem2/fancy-swap/src/assets/tokens/ONDO.svg new file mode 100644 index 0000000000..84482f794d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ONDO.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ONE.svg b/src/problem2/fancy-swap/src/assets/tokens/ONE.svg new file mode 100644 index 0000000000..63c1260c06 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ONE.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ONT.svg b/src/problem2/fancy-swap/src/assets/tokens/ONT.svg new file mode 100644 index 0000000000..93378b4745 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ONT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OP.svg b/src/problem2/fancy-swap/src/assets/tokens/OP.svg new file mode 100644 index 0000000000..b5feac7946 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OP.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OPUL.svg b/src/problem2/fancy-swap/src/assets/tokens/OPUL.svg new file mode 100644 index 0000000000..c7ae4dbf3e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OPUL.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ORDI.svg b/src/problem2/fancy-swap/src/assets/tokens/ORDI.svg new file mode 100644 index 0000000000..380181270d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ORDI.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ORION.svg b/src/problem2/fancy-swap/src/assets/tokens/ORION.svg new file mode 100644 index 0000000000..b5f9ba6fff --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ORION.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ORNE.svg b/src/problem2/fancy-swap/src/assets/tokens/ORNE.svg new file mode 100644 index 0000000000..d986b3f31e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ORNE.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OSMO.svg b/src/problem2/fancy-swap/src/assets/tokens/OSMO.svg new file mode 100644 index 0000000000..e98545517b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OSMO.svg @@ -0,0 +1,121 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OXT.svg b/src/problem2/fancy-swap/src/assets/tokens/OXT.svg new file mode 100644 index 0000000000..bba9547da1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OXT.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/OXY.svg b/src/problem2/fancy-swap/src/assets/tokens/OXY.svg new file mode 100644 index 0000000000..9175a0b900 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/OXY.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PAX.svg b/src/problem2/fancy-swap/src/assets/tokens/PAX.svg new file mode 100644 index 0000000000..32b0ef8211 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PAX.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PAXG.svg b/src/problem2/fancy-swap/src/assets/tokens/PAXG.svg new file mode 100644 index 0000000000..5ff89051f8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PAXG.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PENDLE.svg b/src/problem2/fancy-swap/src/assets/tokens/PENDLE.svg new file mode 100644 index 0000000000..367540fbb0 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PENDLE.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PENGU.svg b/src/problem2/fancy-swap/src/assets/tokens/PENGU.svg new file mode 100644 index 0000000000..a5c99add38 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PENGU.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PEPE.svg b/src/problem2/fancy-swap/src/assets/tokens/PEPE.svg new file mode 100644 index 0000000000..1e6ba151a3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PEPE.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PHT.svg b/src/problem2/fancy-swap/src/assets/tokens/PHT.svg new file mode 100644 index 0000000000..d515118058 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PHT.svg @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PLAY.svg b/src/problem2/fancy-swap/src/assets/tokens/PLAY.svg new file mode 100644 index 0000000000..bae2577420 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PLAY.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PLQ.svg b/src/problem2/fancy-swap/src/assets/tokens/PLQ.svg new file mode 100644 index 0000000000..31b353bb45 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PLQ.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PLY.svg b/src/problem2/fancy-swap/src/assets/tokens/PLY.svg new file mode 100644 index 0000000000..c79b320445 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PLY.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PNUT.svg b/src/problem2/fancy-swap/src/assets/tokens/PNUT.svg new file mode 100644 index 0000000000..90abdb384d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PNUT.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/POL.svg b/src/problem2/fancy-swap/src/assets/tokens/POL.svg new file mode 100644 index 0000000000..ceff03709c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/POL.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/POLY.svg b/src/problem2/fancy-swap/src/assets/tokens/POLY.svg new file mode 100644 index 0000000000..b894fef5d5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/POLY.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/POPCAT.svg b/src/problem2/fancy-swap/src/assets/tokens/POPCAT.svg new file mode 100644 index 0000000000..ab8fa4c5e5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/POPCAT.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PORT.svg b/src/problem2/fancy-swap/src/assets/tokens/PORT.svg new file mode 100644 index 0000000000..d846537361 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PORT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PROM.svg b/src/problem2/fancy-swap/src/assets/tokens/PROM.svg new file mode 100644 index 0000000000..044c9e3576 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PROM.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PSI.svg b/src/problem2/fancy-swap/src/assets/tokens/PSI.svg new file mode 100644 index 0000000000..674744b4e5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PSI.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PSTAKE.svg b/src/problem2/fancy-swap/src/assets/tokens/PSTAKE.svg new file mode 100644 index 0000000000..caf13d8d63 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PSTAKE.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PTLBTC_29MAY2025.svg b/src/problem2/fancy-swap/src/assets/tokens/PTLBTC_29MAY2025.svg new file mode 100644 index 0000000000..afb01c923b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PTLBTC_29MAY2025.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PTMETH_26DEC2024.svg b/src/problem2/fancy-swap/src/assets/tokens/PTMETH_26DEC2024.svg new file mode 100644 index 0000000000..3256ec9f5f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PTMETH_26DEC2024.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PTberaSTONE_10APR2025.svg b/src/problem2/fancy-swap/src/assets/tokens/PTberaSTONE_10APR2025.svg new file mode 100644 index 0000000000..1444e75dfb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PTberaSTONE_10APR2025.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PTcmETH_26JUN2025.svg b/src/problem2/fancy-swap/src/assets/tokens/PTcmETH_26JUN2025.svg new file mode 100644 index 0000000000..860a1e3892 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PTcmETH_26JUN2025.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PUDGY.svg b/src/problem2/fancy-swap/src/assets/tokens/PUDGY.svg new file mode 100644 index 0000000000..239424d8cd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PUDGY.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PUMP.svg b/src/problem2/fancy-swap/src/assets/tokens/PUMP.svg new file mode 100644 index 0000000000..3b8ac28fda --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PUMP.svg @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PUNDIX.svg b/src/problem2/fancy-swap/src/assets/tokens/PUNDIX.svg new file mode 100644 index 0000000000..a522d0d26e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PUNDIX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PURR.svg b/src/problem2/fancy-swap/src/assets/tokens/PURR.svg new file mode 100644 index 0000000000..c8b82375cb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PURR.svg @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PURSE.svg b/src/problem2/fancy-swap/src/assets/tokens/PURSE.svg new file mode 100644 index 0000000000..9188e092de --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PURSE.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/PYTH.svg b/src/problem2/fancy-swap/src/assets/tokens/PYTH.svg new file mode 100644 index 0000000000..b34cc9ea3d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/PYTH.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/QCK.svg b/src/problem2/fancy-swap/src/assets/tokens/QCK.svg new file mode 100644 index 0000000000..358cb7dbbf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/QCK.svg @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/QKC.svg b/src/problem2/fancy-swap/src/assets/tokens/QKC.svg new file mode 100644 index 0000000000..e312777506 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/QKC.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/QNT.svg b/src/problem2/fancy-swap/src/assets/tokens/QNT.svg new file mode 100644 index 0000000000..a611eaa24a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/QNT.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/QTUM.svg b/src/problem2/fancy-swap/src/assets/tokens/QTUM.svg new file mode 100644 index 0000000000..e96f6cf2ca --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/QTUM.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RAY.svg b/src/problem2/fancy-swap/src/assets/tokens/RAY.svg new file mode 100644 index 0000000000..e769284e27 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RAY.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RBN.svg b/src/problem2/fancy-swap/src/assets/tokens/RBN.svg new file mode 100644 index 0000000000..ef40c376d8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RBN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/REEF.svg b/src/problem2/fancy-swap/src/assets/tokens/REEF.svg new file mode 100644 index 0000000000..5c777f840f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/REEF.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/REGEN.svg b/src/problem2/fancy-swap/src/assets/tokens/REGEN.svg new file mode 100644 index 0000000000..242a4c66c9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/REGEN.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/REN.svg b/src/problem2/fancy-swap/src/assets/tokens/REN.svg new file mode 100644 index 0000000000..bae08ca56f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/REN.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/REP.svg b/src/problem2/fancy-swap/src/assets/tokens/REP.svg new file mode 100644 index 0000000000..c311970b6d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/REP.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/REV.svg b/src/problem2/fancy-swap/src/assets/tokens/REV.svg new file mode 100644 index 0000000000..6dcaa131aa --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/REV.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RLB.svg b/src/problem2/fancy-swap/src/assets/tokens/RLB.svg new file mode 100644 index 0000000000..344fe8e022 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RLB.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RLC.svg b/src/problem2/fancy-swap/src/assets/tokens/RLC.svg new file mode 100644 index 0000000000..c816edf016 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RLC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RNDR.svg b/src/problem2/fancy-swap/src/assets/tokens/RNDR.svg new file mode 100644 index 0000000000..031e8816b3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RNDR.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ROAR.svg b/src/problem2/fancy-swap/src/assets/tokens/ROAR.svg new file mode 100644 index 0000000000..d29ab09634 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ROAR.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ROWAN.svg b/src/problem2/fancy-swap/src/assets/tokens/ROWAN.svg new file mode 100644 index 0000000000..6b395742d4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ROWAN.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RSR.svg b/src/problem2/fancy-swap/src/assets/tokens/RSR.svg new file mode 100644 index 0000000000..f85bb78c23 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RSR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RUNE.svg b/src/problem2/fancy-swap/src/assets/tokens/RUNE.svg new file mode 100644 index 0000000000..ccbb65ceff --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RUNE.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/RVN.svg b/src/problem2/fancy-swap/src/assets/tokens/RVN.svg new file mode 100644 index 0000000000..4d6d30eeef --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/RVN.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/S.svg b/src/problem2/fancy-swap/src/assets/tokens/S.svg new file mode 100644 index 0000000000..b216a1804f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/S.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SAFEMOON.svg b/src/problem2/fancy-swap/src/assets/tokens/SAFEMOON.svg new file mode 100644 index 0000000000..9ff12873a5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SAFEMOON.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SAGA.svg b/src/problem2/fancy-swap/src/assets/tokens/SAGA.svg new file mode 100644 index 0000000000..53455ea0dd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SAGA.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SAND.svg b/src/problem2/fancy-swap/src/assets/tokens/SAND.svg new file mode 100644 index 0000000000..4e01196b45 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SAND.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SAYVE.svg b/src/problem2/fancy-swap/src/assets/tokens/SAYVE.svg new file mode 100644 index 0000000000..2cea35fc51 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SAYVE.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SC.svg b/src/problem2/fancy-swap/src/assets/tokens/SC.svg new file mode 100644 index 0000000000..aebc27644b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SCRT.svg b/src/problem2/fancy-swap/src/assets/tokens/SCRT.svg new file mode 100644 index 0000000000..9451de4116 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SCRT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SDT.svg b/src/problem2/fancy-swap/src/assets/tokens/SDT.svg new file mode 100644 index 0000000000..222a72897f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SDT.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SEI.svg b/src/problem2/fancy-swap/src/assets/tokens/SEI.svg new file mode 100644 index 0000000000..65ea99277e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SEI.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SET.svg b/src/problem2/fancy-swap/src/assets/tokens/SET.svg new file mode 100644 index 0000000000..f46a6ba24f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SET.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SGT.svg b/src/problem2/fancy-swap/src/assets/tokens/SGT.svg new file mode 100644 index 0000000000..a975dece90 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SGT.svg @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SHD.svg b/src/problem2/fancy-swap/src/assets/tokens/SHD.svg new file mode 100644 index 0000000000..bdb7e6c29c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SHD.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SHIB.svg b/src/problem2/fancy-swap/src/assets/tokens/SHIB.svg new file mode 100644 index 0000000000..adbb2f009b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SHIB.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SHIDO.svg b/src/problem2/fancy-swap/src/assets/tokens/SHIDO.svg new file mode 100644 index 0000000000..bd7deeeb4b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SHIDO.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SITY.svg b/src/problem2/fancy-swap/src/assets/tokens/SITY.svg new file mode 100644 index 0000000000..7cfb8209bf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SITY.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SLERF.svg b/src/problem2/fancy-swap/src/assets/tokens/SLERF.svg new file mode 100644 index 0000000000..713f29af95 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SLERF.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SNT.svg b/src/problem2/fancy-swap/src/assets/tokens/SNT.svg new file mode 100644 index 0000000000..cc8ad2df4c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SNT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SNX.svg b/src/problem2/fancy-swap/src/assets/tokens/SNX.svg new file mode 100644 index 0000000000..14e0591389 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SNX.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SOL.svg b/src/problem2/fancy-swap/src/assets/tokens/SOL.svg new file mode 100644 index 0000000000..0568e80881 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SOL.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SOLETH.svg b/src/problem2/fancy-swap/src/assets/tokens/SOLETH.svg new file mode 100644 index 0000000000..c7f81893f8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SOLETH.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SOM.svg b/src/problem2/fancy-swap/src/assets/tokens/SOM.svg new file mode 100644 index 0000000000..778bf9b5c9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SOM.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SOMM.svg b/src/problem2/fancy-swap/src/assets/tokens/SOMM.svg new file mode 100644 index 0000000000..fa82d261ee --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SOMM.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SPEC.svg b/src/problem2/fancy-swap/src/assets/tokens/SPEC.svg new file mode 100644 index 0000000000..75c9b37b2b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SPEC.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SRM.svg b/src/problem2/fancy-swap/src/assets/tokens/SRM.svg new file mode 100644 index 0000000000..e488de82db --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SRM.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SRV.svg b/src/problem2/fancy-swap/src/assets/tokens/SRV.svg new file mode 100644 index 0000000000..b15a61c77f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SRV.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STARS.svg b/src/problem2/fancy-swap/src/assets/tokens/STARS.svg new file mode 100644 index 0000000000..de6d376db8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STARS.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STEEM.svg b/src/problem2/fancy-swap/src/assets/tokens/STEEM.svg new file mode 100644 index 0000000000..503009b90d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STEEM.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STMX.svg b/src/problem2/fancy-swap/src/assets/tokens/STMX.svg new file mode 100644 index 0000000000..976e86474b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STMX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STORJ.svg b/src/problem2/fancy-swap/src/assets/tokens/STORJ.svg new file mode 100644 index 0000000000..85a332a6ce --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STORJ.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STRAX.svg b/src/problem2/fancy-swap/src/assets/tokens/STRAX.svg new file mode 100644 index 0000000000..a34822931d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STRAX.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STRD.svg b/src/problem2/fancy-swap/src/assets/tokens/STRD.svg new file mode 100644 index 0000000000..f25a48536c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STRD.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STREAM.svg b/src/problem2/fancy-swap/src/assets/tokens/STREAM.svg new file mode 100644 index 0000000000..fba4ce0609 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STREAM.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STRK.svg b/src/problem2/fancy-swap/src/assets/tokens/STRK.svg new file mode 100644 index 0000000000..22c139824d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STRK.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STT.svg b/src/problem2/fancy-swap/src/assets/tokens/STT.svg new file mode 100644 index 0000000000..d37590a8d3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/STX.svg b/src/problem2/fancy-swap/src/assets/tokens/STX.svg new file mode 100644 index 0000000000..ed89fc9276 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/STX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SUI.svg b/src/problem2/fancy-swap/src/assets/tokens/SUI.svg new file mode 100644 index 0000000000..7687a88042 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SUI.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SUN.svg b/src/problem2/fancy-swap/src/assets/tokens/SUN.svg new file mode 100644 index 0000000000..1159b6cbfd --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SUN.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SUSHI.svg b/src/problem2/fancy-swap/src/assets/tokens/SUSHI.svg new file mode 100644 index 0000000000..e118f213b5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SUSHI.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SWTH-LEGACY.svg b/src/problem2/fancy-swap/src/assets/tokens/SWTH-LEGACY.svg new file mode 100644 index 0000000000..60ba0650e1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SWTH-LEGACY.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SWTH.svg b/src/problem2/fancy-swap/src/assets/tokens/SWTH.svg new file mode 100644 index 0000000000..353c1b5bcc --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SWTH.svg @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/SXP.svg b/src/problem2/fancy-swap/src/assets/tokens/SXP.svg new file mode 100644 index 0000000000..89fd3b147e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/SXP.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TAO.svg b/src/problem2/fancy-swap/src/assets/tokens/TAO.svg new file mode 100644 index 0000000000..9f0dbfcf8e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TAO.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TEL.svg b/src/problem2/fancy-swap/src/assets/tokens/TEL.svg new file mode 100644 index 0000000000..2992514bf1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TEL.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TFUEL.svg b/src/problem2/fancy-swap/src/assets/tokens/TFUEL.svg new file mode 100644 index 0000000000..d57d7d9493 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TFUEL.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/THETA.svg b/src/problem2/fancy-swap/src/assets/tokens/THETA.svg new file mode 100644 index 0000000000..8ff93f4019 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/THETA.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/THT.svg b/src/problem2/fancy-swap/src/assets/tokens/THT.svg new file mode 100644 index 0000000000..8ee5eb9ff3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/THT.svg @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TIA.svg b/src/problem2/fancy-swap/src/assets/tokens/TIA.svg new file mode 100644 index 0000000000..41d8ab96c1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TIA.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TICK.svg b/src/problem2/fancy-swap/src/assets/tokens/TICK.svg new file mode 100644 index 0000000000..3be70db269 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TICK.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TITAN.svg b/src/problem2/fancy-swap/src/assets/tokens/TITAN.svg new file mode 100644 index 0000000000..d52faa138c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TITAN.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TLAND.svg b/src/problem2/fancy-swap/src/assets/tokens/TLAND.svg new file mode 100644 index 0000000000..9f9e3e2330 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TLAND.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TLM.svg b/src/problem2/fancy-swap/src/assets/tokens/TLM.svg new file mode 100644 index 0000000000..1fe3283fee --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TLM.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TOMO.svg b/src/problem2/fancy-swap/src/assets/tokens/TOMO.svg new file mode 100644 index 0000000000..45bda83d4b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TOMO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TON.svg b/src/problem2/fancy-swap/src/assets/tokens/TON.svg new file mode 100644 index 0000000000..c1e0b91485 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TON.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TPC.svg b/src/problem2/fancy-swap/src/assets/tokens/TPC.svg new file mode 100644 index 0000000000..29f8a4af8d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TPC.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TRAXX.svg b/src/problem2/fancy-swap/src/assets/tokens/TRAXX.svg new file mode 100644 index 0000000000..05c2ec0999 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TRAXX.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TRB.svg b/src/problem2/fancy-swap/src/assets/tokens/TRB.svg new file mode 100644 index 0000000000..e319e65d7e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TRB.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TRU.svg b/src/problem2/fancy-swap/src/assets/tokens/TRU.svg new file mode 100644 index 0000000000..29ddc8ac24 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TRU.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TRUMP.svg b/src/problem2/fancy-swap/src/assets/tokens/TRUMP.svg new file mode 100644 index 0000000000..2571b5e20f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TRUMP.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TRX.svg b/src/problem2/fancy-swap/src/assets/tokens/TRX.svg new file mode 100644 index 0000000000..c105ddc307 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TRX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TTT.svg b/src/problem2/fancy-swap/src/assets/tokens/TTT.svg new file mode 100644 index 0000000000..13e6080a8a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TTT.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TUSD.svg b/src/problem2/fancy-swap/src/assets/tokens/TUSD.svg new file mode 100644 index 0000000000..712ec923da --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TUSD.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TWD.svg b/src/problem2/fancy-swap/src/assets/tokens/TWD.svg new file mode 100644 index 0000000000..014f525557 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TWD.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/TWT.svg b/src/problem2/fancy-swap/src/assets/tokens/TWT.svg new file mode 100644 index 0000000000..b67bf37535 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/TWT.svg @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/Token.svg b/src/problem2/fancy-swap/src/assets/tokens/Token.svg new file mode 100644 index 0000000000..bed64e2942 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/Token.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/UBQ.svg b/src/problem2/fancy-swap/src/assets/tokens/UBQ.svg new file mode 100644 index 0000000000..139af049ce --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/UBQ.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/UMEE.svg b/src/problem2/fancy-swap/src/assets/tokens/UMEE.svg new file mode 100644 index 0000000000..f9243257df --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/UMEE.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/UNA.svg b/src/problem2/fancy-swap/src/assets/tokens/UNA.svg new file mode 100644 index 0000000000..077c1555e7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/UNA.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/UNI.svg b/src/problem2/fancy-swap/src/assets/tokens/UNI.svg new file mode 100644 index 0000000000..37996b6c05 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/UNI.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/UOS.svg b/src/problem2/fancy-swap/src/assets/tokens/UOS.svg new file mode 100644 index 0000000000..eb07c3cce8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/UOS.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USC-Minted.svg b/src/problem2/fancy-swap/src/assets/tokens/USC-Minted.svg new file mode 100644 index 0000000000..466cda74f0 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USC-Minted.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USC.svg b/src/problem2/fancy-swap/src/assets/tokens/USC.svg new file mode 100644 index 0000000000..32bd9541f5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USC.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USD.svg b/src/problem2/fancy-swap/src/assets/tokens/USD.svg new file mode 100644 index 0000000000..abf67ab105 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USD.svg @@ -0,0 +1,8 @@ + + + Token Symbol/USD + + + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDC-dATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/USDC-dATOM.svg new file mode 100644 index 0000000000..7202b50ae7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDC-dATOM.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDC.e.svg b/src/problem2/fancy-swap/src/assets/tokens/USDC.e.svg new file mode 100644 index 0000000000..eee4251a7b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDC.e.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDC.grv.svg b/src/problem2/fancy-swap/src/assets/tokens/USDC.grv.svg new file mode 100644 index 0000000000..458ab4901a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDC.grv.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDC.svg b/src/problem2/fancy-swap/src/assets/tokens/USDC.svg new file mode 100644 index 0000000000..eee4251a7b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDP.svg b/src/problem2/fancy-swap/src/assets/tokens/USDP.svg new file mode 100644 index 0000000000..b7e76ff9d1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDP.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDT.svg b/src/problem2/fancy-swap/src/assets/tokens/USDT.svg new file mode 100644 index 0000000000..8b3986d057 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USDY.svg b/src/problem2/fancy-swap/src/assets/tokens/USDY.svg new file mode 100644 index 0000000000..118da5939c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USDY.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USK.svg b/src/problem2/fancy-swap/src/assets/tokens/USK.svg new file mode 100644 index 0000000000..15ba03fe9d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USK.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/UST.svg b/src/problem2/fancy-swap/src/assets/tokens/UST.svg new file mode 100644 index 0000000000..2a0a597074 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/UST.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/USUAL.svg b/src/problem2/fancy-swap/src/assets/tokens/USUAL.svg new file mode 100644 index 0000000000..1bdf52827d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/USUAL.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/VDL.svg b/src/problem2/fancy-swap/src/assets/tokens/VDL.svg new file mode 100644 index 0000000000..d839e0da4d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/VDL.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/VET.svg b/src/problem2/fancy-swap/src/assets/tokens/VET.svg new file mode 100644 index 0000000000..88ebf982a5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/VET.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/VIRTUAL.svg b/src/problem2/fancy-swap/src/assets/tokens/VIRTUAL.svg new file mode 100644 index 0000000000..7d623039a9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/VIRTUAL.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/VKR.svg b/src/problem2/fancy-swap/src/assets/tokens/VKR.svg new file mode 100644 index 0000000000..cb3c68d595 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/VKR.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/VRTX.svg b/src/problem2/fancy-swap/src/assets/tokens/VRTX.svg new file mode 100644 index 0000000000..8cb3dc30ef --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/VRTX.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/W.svg b/src/problem2/fancy-swap/src/assets/tokens/W.svg new file mode 100644 index 0000000000..95823f2252 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/W.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WAL.svg b/src/problem2/fancy-swap/src/assets/tokens/WAL.svg new file mode 100644 index 0000000000..8d06c07e14 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WAL.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WAVAX.svg b/src/problem2/fancy-swap/src/assets/tokens/WAVAX.svg new file mode 100644 index 0000000000..e244ad3aa6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WAVAX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WAVE.svg b/src/problem2/fancy-swap/src/assets/tokens/WAVE.svg new file mode 100644 index 0000000000..2ca6ac0708 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WAVE.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WBNB.svg b/src/problem2/fancy-swap/src/assets/tokens/WBNB.svg new file mode 100644 index 0000000000..e45c696b5c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WBNB.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WBTC.svg b/src/problem2/fancy-swap/src/assets/tokens/WBTC.svg new file mode 100644 index 0000000000..b597b84a4a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WBTC.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WETH.svg b/src/problem2/fancy-swap/src/assets/tokens/WETH.svg new file mode 100644 index 0000000000..cba6f1d783 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WETH.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WHALE.svg b/src/problem2/fancy-swap/src/assets/tokens/WHALE.svg new file mode 100644 index 0000000000..a42a2449d8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WHALE.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WIF.svg b/src/problem2/fancy-swap/src/assets/tokens/WIF.svg new file mode 100644 index 0000000000..6df4ea15a2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WIF.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WIN.svg b/src/problem2/fancy-swap/src/assets/tokens/WIN.svg new file mode 100644 index 0000000000..bc2435409b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WIN.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WLD.svg b/src/problem2/fancy-swap/src/assets/tokens/WLD.svg new file mode 100644 index 0000000000..62191032d6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WLD.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WMATIC.svg b/src/problem2/fancy-swap/src/assets/tokens/WMATIC.svg new file mode 100644 index 0000000000..ba0630b510 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WMATIC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WMNT.svg b/src/problem2/fancy-swap/src/assets/tokens/WMNT.svg new file mode 100644 index 0000000000..8b8784b36a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WMNT.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/WMON.png b/src/problem2/fancy-swap/src/assets/tokens/WMON.png new file mode 100644 index 0000000000000000000000000000000000000000..452cae24b2c588ca08de28a09ee5ed1a99d599e6 GIT binary patch literal 826 zcmV-A1I7G_P)JyI+|hhb^x;`Js-NNz}Q3Is?XrH4=vpullw zH#z+32AS& z@=uMO1wYoF3~KyGgY!XOd7Z4q6p-b}*elVCRGLA)BtfAlLB9uZ(6OQQ)tRUP(SBBK zTwEV1aAQtk0mwuzXR-_)R1~+x{O&hV)OOj?R62$HwC#SPsIkrP@wHdk^= z=qpL4!#oTbFAc<-LE*xpJc{{2+lC*XZP(f;sG7cUuYAxOsCDda?6)Ab3k(i_@% literal 0 HcmV?d00001 diff --git a/src/problem2/fancy-swap/src/assets/tokens/WRX.svg b/src/problem2/fancy-swap/src/assets/tokens/WRX.svg new file mode 100644 index 0000000000..543f570909 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/WRX.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XCAD.svg b/src/problem2/fancy-swap/src/assets/tokens/XCAD.svg new file mode 100644 index 0000000000..545a88d1b9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XCAD.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XDC.svg b/src/problem2/fancy-swap/src/assets/tokens/XDC.svg new file mode 100644 index 0000000000..c90381022e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XDC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XEM.svg b/src/problem2/fancy-swap/src/assets/tokens/XEM.svg new file mode 100644 index 0000000000..da54e72a22 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XEM.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XKI.svg b/src/problem2/fancy-swap/src/assets/tokens/XKI.svg new file mode 100644 index 0000000000..dd5fea7cf0 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XKI.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XLM.svg b/src/problem2/fancy-swap/src/assets/tokens/XLM.svg new file mode 100644 index 0000000000..d836619c15 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XLM.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XMR.svg b/src/problem2/fancy-swap/src/assets/tokens/XMR.svg new file mode 100644 index 0000000000..475a95cb7d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XMR.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XPRT.svg b/src/problem2/fancy-swap/src/assets/tokens/XPRT.svg new file mode 100644 index 0000000000..7ecd4ace95 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XPRT.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XRP.svg b/src/problem2/fancy-swap/src/assets/tokens/XRP.svg new file mode 100644 index 0000000000..b3d441bf40 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XRP.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XSGD.svg b/src/problem2/fancy-swap/src/assets/tokens/XSGD.svg new file mode 100644 index 0000000000..f04caab93b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XSGD.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XTRA.svg b/src/problem2/fancy-swap/src/assets/tokens/XTRA.svg new file mode 100644 index 0000000000..1c6367d3be --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XTRA.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XTZ.svg b/src/problem2/fancy-swap/src/assets/tokens/XTZ.svg new file mode 100644 index 0000000000..28b924e5c7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XTZ.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XVG.svg b/src/problem2/fancy-swap/src/assets/tokens/XVG.svg new file mode 100644 index 0000000000..537378cff6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XVG.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/XVS.svg b/src/problem2/fancy-swap/src/assets/tokens/XVS.svg new file mode 100644 index 0000000000..3176f9fb66 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/XVS.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/YAKI.svg b/src/problem2/fancy-swap/src/assets/tokens/YAKI.svg new file mode 100644 index 0000000000..5179eb95aa --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/YAKI.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/YAM.svg b/src/problem2/fancy-swap/src/assets/tokens/YAM.svg new file mode 100644 index 0000000000..2e8a654216 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/YAM.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/YFI.svg b/src/problem2/fancy-swap/src/assets/tokens/YFI.svg new file mode 100644 index 0000000000..b7674608b7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/YFI.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/YieldUSD.svg b/src/problem2/fancy-swap/src/assets/tokens/YieldUSD.svg new file mode 100644 index 0000000000..e435a687c9 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/YieldUSD.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZCH.svg b/src/problem2/fancy-swap/src/assets/tokens/ZCH.svg new file mode 100644 index 0000000000..1e9d4250d4 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZCH.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZEC.svg b/src/problem2/fancy-swap/src/assets/tokens/ZEC.svg new file mode 100644 index 0000000000..b6b86dcc1d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZEC.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZEN.svg b/src/problem2/fancy-swap/src/assets/tokens/ZEN.svg new file mode 100644 index 0000000000..b305169acb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZEN.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZIL.svg b/src/problem2/fancy-swap/src/assets/tokens/ZIL.svg new file mode 100644 index 0000000000..c89e8ce16f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZIL.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZRO.svg b/src/problem2/fancy-swap/src/assets/tokens/ZRO.svg new file mode 100644 index 0000000000..e485e3b2ab --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZRO.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZRX.svg b/src/problem2/fancy-swap/src/assets/tokens/ZRX.svg new file mode 100644 index 0000000000..f42e914a6a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZRX.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ZWAP.svg b/src/problem2/fancy-swap/src/assets/tokens/ZWAP.svg new file mode 100644 index 0000000000..130d14d73b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ZWAP.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ampKUJI.svg b/src/problem2/fancy-swap/src/assets/tokens/ampKUJI.svg new file mode 100644 index 0000000000..2692787da5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ampKUJI.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ampLUNA.svg b/src/problem2/fancy-swap/src/assets/tokens/ampLUNA.svg new file mode 100644 index 0000000000..ebeab58687 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ampLUNA.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/axlUSDC.svg b/src/problem2/fancy-swap/src/assets/tokens/axlUSDC.svg new file mode 100644 index 0000000000..fc879f679a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/axlUSDC.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/bCFX.svg b/src/problem2/fancy-swap/src/assets/tokens/bCFX.svg new file mode 100644 index 0000000000..07e8c434db --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/bCFX.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/bNEO.svg b/src/problem2/fancy-swap/src/assets/tokens/bNEO.svg new file mode 100644 index 0000000000..561b2282d8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/bNEO.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/beraSTONE.svg b/src/problem2/fancy-swap/src/assets/tokens/beraSTONE.svg new file mode 100644 index 0000000000..3da255f504 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/beraSTONE.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/cUSD.svg b/src/problem2/fancy-swap/src/assets/tokens/cUSD.svg new file mode 100644 index 0000000000..33407ebc96 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/cUSD.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/cbBTC.svg b/src/problem2/fancy-swap/src/assets/tokens/cbBTC.svg new file mode 100644 index 0000000000..77fee5c013 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/cbBTC.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/cbETH.svg b/src/problem2/fancy-swap/src/assets/tokens/cbETH.svg new file mode 100644 index 0000000000..5a18b92644 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/cbETH.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/cmETH.svg b/src/problem2/fancy-swap/src/assets/tokens/cmETH.svg new file mode 100644 index 0000000000..0a82791d04 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/cmETH.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/dATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/dATOM.svg new file mode 100644 index 0000000000..b73e04155e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/dATOM.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/dGLP.svg b/src/problem2/fancy-swap/src/assets/tokens/dGLP.svg new file mode 100644 index 0000000000..84cac9cdeb --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/dGLP.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/dINJ.svg b/src/problem2/fancy-swap/src/assets/tokens/dINJ.svg new file mode 100644 index 0000000000..05b1763cc2 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/dINJ.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/dXCAD.svg b/src/problem2/fancy-swap/src/assets/tokens/dXCAD.svg new file mode 100644 index 0000000000..881f50fd02 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/dXCAD.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/ePLAY.svg b/src/problem2/fancy-swap/src/assets/tokens/ePLAY.svg new file mode 100644 index 0000000000..bae2577420 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/ePLAY.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/esFLUO.svg b/src/problem2/fancy-swap/src/assets/tokens/esFLUO.svg new file mode 100644 index 0000000000..0b69ed3189 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/esFLUO.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/gZIL.svg b/src/problem2/fancy-swap/src/assets/tokens/gZIL.svg new file mode 100644 index 0000000000..27334389ba --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/gZIL.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/iSEI.svg b/src/problem2/fancy-swap/src/assets/tokens/iSEI.svg new file mode 100644 index 0000000000..246b86f8a1 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/iSEI.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/iUSD.svg b/src/problem2/fancy-swap/src/assets/tokens/iUSD.svg new file mode 100644 index 0000000000..ca263a0474 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/iUSD.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/mETH.svg b/src/problem2/fancy-swap/src/assets/tokens/mETH.svg new file mode 100644 index 0000000000..6d6d5d0762 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/mETH.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/milkTIA.svg b/src/problem2/fancy-swap/src/assets/tokens/milkTIA.svg new file mode 100644 index 0000000000..d595abfa30 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/milkTIA.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/nLEND.svg b/src/problem2/fancy-swap/src/assets/tokens/nLEND.svg new file mode 100644 index 0000000000..d5c91b274f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/nLEND.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/nNEO.svg b/src/problem2/fancy-swap/src/assets/tokens/nNEO.svg new file mode 100644 index 0000000000..d4a90e1b27 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/nNEO.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/rATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/rATOM.svg new file mode 100644 index 0000000000..8cd5f8056f --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/rATOM.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/rSWTH.svg b/src/problem2/fancy-swap/src/assets/tokens/rSWTH.svg new file mode 100644 index 0000000000..d5250ff90d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/rSWTH.svg @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/sARCH.svg b/src/problem2/fancy-swap/src/assets/tokens/sARCH.svg new file mode 100644 index 0000000000..3ec2b656f0 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/sARCH.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/stATOM.svg new file mode 100644 index 0000000000..c3e505f8b3 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stATOM.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stDYDX.svg b/src/problem2/fancy-swap/src/assets/tokens/stDYDX.svg new file mode 100644 index 0000000000..6d851637a8 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stDYDX.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stDYM.svg b/src/problem2/fancy-swap/src/assets/tokens/stDYM.svg new file mode 100644 index 0000000000..d961755725 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stDYM.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stETH.svg b/src/problem2/fancy-swap/src/assets/tokens/stETH.svg new file mode 100644 index 0000000000..8c490e47f0 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stETH.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stEVMOS.svg b/src/problem2/fancy-swap/src/assets/tokens/stEVMOS.svg new file mode 100644 index 0000000000..a2a8888208 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stEVMOS.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/assets/tokens/stFLUO.svg b/src/problem2/fancy-swap/src/assets/tokens/stFLUO.svg new file mode 100644 index 0000000000..bf182c96de --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stFLUO.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stIBCX.svg b/src/problem2/fancy-swap/src/assets/tokens/stIBCX.svg new file mode 100644 index 0000000000..8a10d241d5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stIBCX.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stINJ.svg b/src/problem2/fancy-swap/src/assets/tokens/stINJ.svg new file mode 100644 index 0000000000..6b97bec4f7 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stINJ.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stJUNO.svg b/src/problem2/fancy-swap/src/assets/tokens/stJUNO.svg new file mode 100644 index 0000000000..8d92f375c6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stJUNO.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stLUNA.svg b/src/problem2/fancy-swap/src/assets/tokens/stLUNA.svg new file mode 100644 index 0000000000..606be7947d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stLUNA.svg @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/assets/tokens/stOKT.svg b/src/problem2/fancy-swap/src/assets/tokens/stOKT.svg new file mode 100644 index 0000000000..33b541d11d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stOKT.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stOSMO.svg b/src/problem2/fancy-swap/src/assets/tokens/stOSMO.svg new file mode 100644 index 0000000000..73d296046b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stOSMO.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stSAGA.svg b/src/problem2/fancy-swap/src/assets/tokens/stSAGA.svg new file mode 100644 index 0000000000..d6092fc7cf --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stSAGA.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stSTARS.svg b/src/problem2/fancy-swap/src/assets/tokens/stSTARS.svg new file mode 100644 index 0000000000..ffc7def96a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stSTARS.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stTIA.svg b/src/problem2/fancy-swap/src/assets/tokens/stTIA.svg new file mode 100644 index 0000000000..3d3e28470d --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stTIA.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stZIL.svg b/src/problem2/fancy-swap/src/assets/tokens/stZIL.svg new file mode 100644 index 0000000000..81323f746a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stZIL.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stkATOM.svg b/src/problem2/fancy-swap/src/assets/tokens/stkATOM.svg new file mode 100644 index 0000000000..1e6c7a2b2c --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stkATOM.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stkDYDX.svg b/src/problem2/fancy-swap/src/assets/tokens/stkDYDX.svg new file mode 100644 index 0000000000..2d2883a9e6 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stkDYDX.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/stkSTARS.svg b/src/problem2/fancy-swap/src/assets/tokens/stkSTARS.svg new file mode 100644 index 0000000000..97e87da6ea --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/stkSTARS.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/vZWAP.svg b/src/problem2/fancy-swap/src/assets/tokens/vZWAP.svg new file mode 100644 index 0000000000..0874b89e8b --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/vZWAP.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/veFLUO.svg b/src/problem2/fancy-swap/src/assets/tokens/veFLUO.svg new file mode 100644 index 0000000000..3624b5647a --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/veFLUO.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/wKAS.svg b/src/problem2/fancy-swap/src/assets/tokens/wKAS.svg new file mode 100644 index 0000000000..14185747c5 --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/wKAS.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/problem2/fancy-swap/src/assets/tokens/wstETH.svg b/src/problem2/fancy-swap/src/assets/tokens/wstETH.svg new file mode 100644 index 0000000000..15c8a9716e --- /dev/null +++ b/src/problem2/fancy-swap/src/assets/tokens/wstETH.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/problem2/fancy-swap/src/components/SwapForm/index.vue b/src/problem2/fancy-swap/src/components/SwapForm/index.vue new file mode 100644 index 0000000000..4aec17d916 --- /dev/null +++ b/src/problem2/fancy-swap/src/components/SwapForm/index.vue @@ -0,0 +1,281 @@ + + + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/components/TokenSelect/index.vue b/src/problem2/fancy-swap/src/components/TokenSelect/index.vue new file mode 100644 index 0000000000..1a2bc9db48 --- /dev/null +++ b/src/problem2/fancy-swap/src/components/TokenSelect/index.vue @@ -0,0 +1,54 @@ + + + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/composables/usePrice.script.ts b/src/problem2/fancy-swap/src/composables/usePrice.script.ts new file mode 100644 index 0000000000..ae11ac10f4 --- /dev/null +++ b/src/problem2/fancy-swap/src/composables/usePrice.script.ts @@ -0,0 +1,62 @@ +import { ref, onMounted } from "vue"; +import type { Prices, PriceItem } from "../type/swap.type"; + +const LOCAL_TOKENS = ["SWTH", "BTC", "ETH", "USDT", "USDC", "OSMO", "ATOM"]; + +const MOCK_PRICES: Prices = { + SWTH: 0.00403985, + BTC: 26002.82, + ETH: 1645.93, + USDT: 1, + USDC: 1, + OSMO: 0.3773, + ATOM: 7.18, +}; + +export function usePrices() { + const prices = ref({}); + const tokens = ref([]); + + async function fetchPrices() { + try { + const controller = new AbortController(); + const timeout = setTimeout(() => controller.abort(), 60000); + + const res = await fetch("https://interview.switcheo.com/prices.json", { + signal: controller.signal, + }); + clearTimeout(timeout); + + if (!res.ok) throw new Error(`HTTP error! status: ${res.status}`); + const data: PriceItem[] = await res.json(); + + // 过滤本地有 svg 的 token,取最新价格 + const filtered: Prices = {}; + const seen: Record = {}; + + data.forEach((item) => { + const token = item.currency; + if (LOCAL_TOKENS.includes(token)) { + const prev = seen[token]; + if (!prev || new Date(item.date) > new Date(prev.date)) + seen[token] = item; + } + }); + + Object.keys(seen).forEach((token) => { + filtered[token] = seen[token].price; + }); + + prices.value = Object.keys(filtered).length ? filtered : MOCK_PRICES; + tokens.value = Object.keys(prices.value); + } catch { + console.warn("Fetch failed or timeout, using mock prices."); + prices.value = MOCK_PRICES; + tokens.value = Object.keys(prices.value); + } + } + + onMounted(fetchPrices); + + return { prices, tokens }; +} diff --git a/src/problem2/fancy-swap/src/main.ts b/src/problem2/fancy-swap/src/main.ts new file mode 100644 index 0000000000..de275e7aa9 --- /dev/null +++ b/src/problem2/fancy-swap/src/main.ts @@ -0,0 +1,5 @@ +import { createApp } from "vue"; +import App from "./App.vue"; +import "./style.css"; + +createApp(App).mount("#app"); diff --git a/src/problem2/fancy-swap/src/style.css b/src/problem2/fancy-swap/src/style.css new file mode 100644 index 0000000000..f691315434 --- /dev/null +++ b/src/problem2/fancy-swap/src/style.css @@ -0,0 +1,79 @@ +:root { + font-family: system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +.card { + padding: 2em; +} + +#app { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/src/problem2/fancy-swap/src/type/swap.type.ts b/src/problem2/fancy-swap/src/type/swap.type.ts new file mode 100644 index 0000000000..e2b3136e33 --- /dev/null +++ b/src/problem2/fancy-swap/src/type/swap.type.ts @@ -0,0 +1,9 @@ +export interface Prices { + [token: string]: number; +} + +export interface PriceItem { + currency: string; + date: string; + price: number; +} diff --git a/src/problem2/fancy-swap/src/type/tokenSelect.type.ts b/src/problem2/fancy-swap/src/type/tokenSelect.type.ts new file mode 100644 index 0000000000..36f5e05a05 --- /dev/null +++ b/src/problem2/fancy-swap/src/type/tokenSelect.type.ts @@ -0,0 +1,4 @@ +export interface TokenSelectProps { + modelValue: string; + tokens: string[]; +} diff --git a/src/problem2/fancy-swap/tsconfig.json b/src/problem2/fancy-swap/tsconfig.json new file mode 100644 index 0000000000..c6d56dc616 --- /dev/null +++ b/src/problem2/fancy-swap/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "target": "ESNext", + "module": "ESNext", + "moduleResolution": "node", + "strict": true, + "jsx": "preserve", + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "lib": ["DOM", "ES2015"] + }, + "include": ["src"] +} \ No newline at end of file diff --git a/src/problem2/fancy-swap/vite.config.ts b/src/problem2/fancy-swap/vite.config.ts new file mode 100644 index 0000000000..bbcf80cca9 --- /dev/null +++ b/src/problem2/fancy-swap/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [vue()], +}) diff --git a/src/problem2/index.html b/src/problem2/index.html deleted file mode 100644 index 4058a68bff..0000000000 --- a/src/problem2/index.html +++ /dev/null @@ -1,27 +0,0 @@ - - - - - Fancy Form - - - - - - - - -
-
Swap
- - - - - - - -
- - - - diff --git a/src/problem2/script.js b/src/problem2/script.js deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/problem2/style.css b/src/problem2/style.css deleted file mode 100644 index 915af91c72..0000000000 --- a/src/problem2/style.css +++ /dev/null @@ -1,8 +0,0 @@ -body { - display: flex; - flex-direction: row; - align-items: center; - justify-content: center; - min-width: 360px; - font-family: Arial, Helvetica, sans-serif; -} From 49ee4273d7d0341a408e891e0314d7c555387fbc Mon Sep 17 00:00:00 2001 From: zylim726 Date: Thu, 26 Feb 2026 21:35:44 +0800 Subject: [PATCH 3/5] explain problem 3 which wrong or any issue then update correct code --- src/problem3/.keep | 0 src/problem3/readme.md | 114 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+) delete mode 100644 src/problem3/.keep create mode 100644 src/problem3/readme.md diff --git a/src/problem3/.keep b/src/problem3/.keep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/problem3/readme.md b/src/problem3/readme.md new file mode 100644 index 0000000000..4ad8b66a22 --- /dev/null +++ b/src/problem3/readme.md @@ -0,0 +1,114 @@ +# ** Enhance Code and Correct Changes ** + +type Blockchain = 'Osmosis' | 'Ethereum' | 'Arbitrum' | 'Zilliqa' | 'Neo'; + +interface WalletBalance { +currency: string; +amount: number; +blockchain: Blockchain; +} + +interface Props {} + +const PRIORITY_MAP: Record = { +Osmosis: 100, +Ethereum: 50, +Arbitrum: 30, +Zilliqa: 20, +Neo: 20, +}; + +const WalletPage: React.FC = ({ children, ...rest }) => { +const balances = useWalletBalances(); +const prices = usePrices(); + +const walletRows = useMemo(() => { +return balances +.filter(b => b.amount > 0 && (PRIORITY_MAP[b.blockchain] ?? -99) > -99) +.slice() +.sort((a, b) => (PRIORITY_MAP[b.blockchain] ?? -99) - (PRIORITY_MAP[a.blockchain] ?? -99)) +.map(b => { +const formattedAmount = b.amount.toFixed(2); +const usdValue = (prices[b.currency] ?? 0) \* b.amount; +const key = `${b.blockchain}-${b.currency}`; +return ( + +); +}); +}, [balances, prices]); + +return
{walletRows}{children}
; +}; + +# **WalletPage — Potential Issues & Refactor Explanation ** + +## **1️⃣ Filter logic bug ** + +- Original code used an undefined variable `lhsPriority` in filter, and kept balances with amount <= 0. Only positive balances should be displayed. + +## **2️⃣ Type safety** + +- `getPriority` used `any`. TypeScript cannot check if the blockchain string is valid. + +## **3️⃣ Repeated priority calculation** + +- `getPriority` is called multiple times in filter and sort, wasting CPU for large arrays. + +## **4️⃣ useMemo dependencies ** + +- Original useMemo included `prices` even when not used in calculation, causing unnecessary recalculation. + +## **5️⃣ sort mutates original array ** + +- `sort` modifies the original balances array, which may come from a hook or props. This can break React’s expectation of immutability. + +## **6️⃣ Unused map ** + +- `formattedBalances` was created but never used. + +## **7️⃣ Using index as key ** + +- Using array index as key may cause React to update the wrong DOM elements when array order changes. + +## **8️⃣ Business logic in render ** + +- USD value is computed inside the render loop, causing it to run every render and mix business logic with UI. + +## **9️⃣ Type assertion too early ** + +- sortedBalances was asserted as FormattedWalletBalance before formatting fields exist. + +## **🔟 Error handling ** + +- prices[balance.currency] may be undefined → usdValue becomes NaN. + +## **1️⃣1️⃣ Floating point display ** + +- amount.toFixed() may produce inconsistent decimals. + +## **1️⃣2️⃣ Separation of concerns ** + +- Component mixes data fetch, filter, sort, format, and render. + +## **1️⃣3️⃣ WalletRow re-render / WalletRow ** + +- Each WalletRow re-renders every parent render. + +## **1️⃣4️⃣ Missing tie-breake** + +- Equal priority items may render in random order. + +## **1️⃣5️⃣ Empty state ** + +- No handling if balances is empty → UI may appear blank. + +# **Summary ** + +- Fix filter bug, type safety, repeated calculations, key usage, render logic, array mutation, floating point formatting, tie-breaker, error handling. +- useMemo handles all calculation; render only displays. +- Stable keys and memoized rows improve performance. From dd3e28df0f0f8456904d17f30fb345321c55ea7e Mon Sep 17 00:00:00 2001 From: zylim726 Date: Fri, 27 Feb 2026 09:40:08 +0800 Subject: [PATCH 4/5] enhancement the UI and function for problem 2 --- src/problem2/fancy-swap/src/App.vue | 21 +- .../src/components/SwapForm/index.css | 155 +++++++ .../src/components/SwapForm/index.vue | 439 ++++++++---------- .../src/components/TokenSelect/index.css | 208 +++++++++ .../src/components/TokenSelect/index.vue | 201 ++++++-- .../src/composables/usePrice.script.ts | 100 ++-- src/problem2/fancy-swap/src/style.css | 89 +--- src/problem2/fancy-swap/src/type/swap.type.ts | 10 +- .../fancy-swap/src/type/tokenSelect.type.ts | 16 +- 9 files changed, 835 insertions(+), 404 deletions(-) create mode 100644 src/problem2/fancy-swap/src/components/SwapForm/index.css create mode 100644 src/problem2/fancy-swap/src/components/TokenSelect/index.css diff --git a/src/problem2/fancy-swap/src/App.vue b/src/problem2/fancy-swap/src/App.vue index 614f4f2cdb..55b4b637df 100644 --- a/src/problem2/fancy-swap/src/App.vue +++ b/src/problem2/fancy-swap/src/App.vue @@ -1,17 +1,16 @@ - - \ No newline at end of file +import SwapForm from '../src/components/SwapForm/index.vue'; + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/components/SwapForm/index.css b/src/problem2/fancy-swap/src/components/SwapForm/index.css new file mode 100644 index 0000000000..d84b8bce84 --- /dev/null +++ b/src/problem2/fancy-swap/src/components/SwapForm/index.css @@ -0,0 +1,155 @@ + + +.swap-container { + max-width: 500px; + width: 100%; + padding: 36px; + border-radius: 32px; + background: rgba(255, 255, 255, 0.04); + backdrop-filter: blur(20px); + border: 1px solid rgba(255, 255, 255, 0.08); + box-shadow: 0 40px 80px rgba(0, 0, 0, 0.5); + color: white; + position: relative; +} + +.swap-card { + padding: 22px 20px; + border-radius: 22px; + background: rgba(255, 255, 255, 0.03); + margin-bottom: 26px; +} + +.card-label { + font-size: 13px; + margin-bottom: 12px; + opacity: 0.55; + letter-spacing: 0.3px; +} + +.input-group { + display: flex; + align-items: stretch; + gap: 14px; +} + +input[type="number"], +input[type="text"] { + flex: 1; + height: 50px; + padding: 0 16px; + border-radius: 16px; + border: 1px solid rgba(255, 255, 255, 0.08); + background: rgba(255, 255, 255, 0.05); + color: #fff; + font-size: 16px; +} + +.balance { + margin-top: 8px; + font-size: 12px; + color: rgba(255, 255, 255, 0.45); +} + +.swap-arrow { + position: absolute; + left: 50%; + transform: translateX(-50%); + top: 120px; + width: 48px; + height: 48px; + border-radius: 50%; + border: 1px solid rgba(255, 255, 255, 0.18); + background: linear-gradient(135deg, #4e54c8, #8f94fb); + cursor: pointer; + font-size: 20px; + color: white; + display: flex; + align-items: center; + justify-content: center; +} + +.exchange-info { + display: flex; + justify-content: space-between; + font-size: 13px; + margin: 18px 0 22px; + color: rgba(255, 255, 255, 0.6); +} + +.error-text { + margin-bottom: 14px; + font-size: 14px; + color: #ff6b6b; +} + +.swap-btn { + width: 100%; + height: 52px; + border: none; + border-radius: 18px; + background: linear-gradient(135deg, #4e54c8, #8f94fb); + font-weight: 600; + font-size: 16px; + cursor: pointer; + color: white; + letter-spacing: 0.3px; +} + +.swap-btn:disabled { + opacity: 0.5; + cursor: not-allowed; +} + +/* ---------------- Modal ---------------- */ + +.modal-overlay { + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.6); + display: flex; + align-items: center; + justify-content: center; +} + +.modal-content { + background: #f5f1e8; + color: #2c2c2c; + padding: 34px 30px; + border-radius: 28px; + min-width: 340px; + text-align: center; + box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2); +} + +.modal-content h3 { + margin-bottom: 20px; +} + +.modal-row { + display: flex; + justify-content: space-between; + margin: 12px 0; + font-size: 14px; +} + +.modal-close { + margin-top: 24px; + padding: 12px 20px; + border: none; + border-radius: 16px; + background: linear-gradient(135deg, #4e54c8, #8f94fb); + color: white; + cursor: pointer; + font-size: 15px; +} + +/* Fade */ +.fade-enter-active, +.fade-leave-active { + transition: opacity 0.25s ease; +} +.fade-enter-from, +.fade-leave-to { + opacity: 0; +} \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/components/SwapForm/index.vue b/src/problem2/fancy-swap/src/components/SwapForm/index.vue index 4aec17d916..49acc5ab57 100644 --- a/src/problem2/fancy-swap/src/components/SwapForm/index.vue +++ b/src/problem2/fancy-swap/src/components/SwapForm/index.vue @@ -1,281 +1,246 @@ - - \ No newline at end of file + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/components/TokenSelect/index.css b/src/problem2/fancy-swap/src/components/TokenSelect/index.css new file mode 100644 index 0000000000..9824e78f76 --- /dev/null +++ b/src/problem2/fancy-swap/src/components/TokenSelect/index.css @@ -0,0 +1,208 @@ + +.select-wrapper { + width: 100%; + position: relative; + font-size: 13px; +} + +/* Floating label */ +.floating-label { + position: absolute; + top: -18px; + left: 4px; + font-size: 11px; + color: rgba(255, 255, 255, 0.6); +} + +.required { + color: #ff6b6b; +} + +/* Select display */ +.select-display { + height: 44px; + padding: 0 12px; + border-radius: 14px; + background: rgba(255, 255, 255, 0.12); + backdrop-filter: blur(12px); + border: 1px solid rgba(255, 255, 255, 0.18); + display: flex; + align-items: center; + cursor: pointer; + color: white; + transition: all 0.2s ease; + position: relative; +} + +.select-display:hover { + border-color: rgba(255, 255, 255, 0.35); +} + +.select-display.disabled { + opacity: 0.5; + cursor: not-allowed; +} + +.selected-content { + display: flex; + align-items: center; + gap: 8px; + overflow: hidden; + white-space: nowrap; +} + +.dropdown { + position: absolute; +top: 53px; +left: 0; +width: 105%; +max-height: 220px; +overflow-y: auto; +border-radius: 10px; +background: #ffffff; +backdrop-filter: none; +border: 1px solid #e6dfd2; +box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18); +padding: 8px; +z-index: 999; +} + +/* Search */ +.search-box { + position: relative; + margin-bottom: 8px; +} + +.search-box input { + height: 34px; + padding-left: 10px; + border-radius: 10px; + border: 1px solid #ddd4c5; + background: white; + color: #2c2c2c; + outline: none; + font-size: 12px; +} + +.search-box input::placeholder { + color: #999; +} + +.search-box button { + position: absolute; + right: 8px; + top: 6px; + border: none; + background: none; + color: #666; + cursor: pointer; +} + +/* ✅ Option */ +.option { + display: flex; + align-items: center; + gap: 10px; + padding: 10px; + border-radius: 12px; + cursor: pointer; + transition: all 0.15s ease; + + color: #2c2c2c; /* 深色文字 */ +} + +.option:hover { + background: #ebe4d8; +} + +.option.selected { + background: linear-gradient(135deg, #4e54c8, #8f94fb); + color: white; +} + +/* Token */ +.token-icon { + width: 24px; + height: 24px; + border-radius: 50%; +} + +.token-info { + display: flex; + flex-direction: column; +} + +.token-name { + font-size: 13px; + font-weight: 500; +} + +.token-price { + font-size: 11px; + opacity: 0.6; + color: #5f5f5f; +} + + +/* Empty */ +.empty { + text-align: center; + padding: 12px; + opacity: 0.6; + font-size: 12px; + color: #666; +} + +/* Animation */ +.fade-slide-enter-active, +.fade-slide-leave-active { + transition: all 0.18s ease; +} + +.fade-slide-enter-from { + opacity: 0; + transform: translateY(-6px); +} + +.fade-slide-leave-to { + opacity: 0; + transform: translateY(-6px); +} + +/* Loader */ +.loading-overlay { + position: absolute; + inset: 0; + background: rgba(0, 0, 0, 0.25); + display: flex; + align-items: center; + justify-content: center; + border-radius: 14px; +} + +.dot-loader span { + width: 6px; + height: 6px; + margin: 0 2px; + border-radius: 50%; + background: #4ddd87; + animation: bounce 0.9s infinite ease-in-out; +} + +.dot-loader span:nth-child(2) { + animation-delay: 0.15s; +} +.dot-loader span:nth-child(3) { + animation-delay: 0.3s; +} + +@keyframes bounce { + 0%, 80%, 100% { + transform: translateY(0); + opacity: 0.4; + } + 40% { + transform: translateY(-5px); + opacity: 1; + } +} \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/components/TokenSelect/index.vue b/src/problem2/fancy-swap/src/components/TokenSelect/index.vue index 1a2bc9db48..3951d05c9d 100644 --- a/src/problem2/fancy-swap/src/components/TokenSelect/index.vue +++ b/src/problem2/fancy-swap/src/components/TokenSelect/index.vue @@ -1,54 +1,181 @@ +const selectId = `token-select-${Math.random().toString(36).slice(2, 9)}`; + +const filteredOptions = computed(() => { + if (!searchQuery.value) return props.initialOptions; + return props.initialOptions.filter(opt => + opt.label.toLowerCase().includes(searchQuery.value.toLowerCase()) + ); +}); + +const selectedLabel = computed(() => { + const found = props.initialOptions.find(o => o.value === props.modelValue); + return found?.label || ""; +}); + +function getTokenIcon(symbol: string) { + return new URL(`/src/assets/tokens/${symbol}.svg`, import.meta.url).href; +} - \ No newline at end of file + +function handleSearchInput() { + if (!props.isSearchable) return; + emit("parentSearchOptions", searchQuery.value); +} + +async function handleScroll() { + const el = dropdownList.value; + if (!el || !props.hasMore || isLoadingMore.value) return; + + const threshold = 40; + const bottom = el.scrollHeight - (el.scrollTop + el.clientHeight); + + if (bottom < threshold && props.parentLoadOptions) { + isLoadingMore.value = true; + await props.parentLoadOptions(); + isLoadingMore.value = false; + } +} + +function handleClickOutside(e: MouseEvent) { + if (!wrapper.value) return; + if (!wrapper.value.contains(e.target as Node)) { + isOpen.value = false; + } +} + +onMounted(() => { + document.addEventListener("click", handleClickOutside); +}); + +onBeforeUnmount(() => { + document.removeEventListener("click", handleClickOutside); +}); + + + \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/composables/usePrice.script.ts b/src/problem2/fancy-swap/src/composables/usePrice.script.ts index ae11ac10f4..81c75d96f8 100644 --- a/src/problem2/fancy-swap/src/composables/usePrice.script.ts +++ b/src/problem2/fancy-swap/src/composables/usePrice.script.ts @@ -1,62 +1,80 @@ -import { ref, onMounted } from "vue"; -import type { Prices, PriceItem } from "../type/swap.type"; - -const LOCAL_TOKENS = ["SWTH", "BTC", "ETH", "USDT", "USDC", "OSMO", "ATOM"]; - -const MOCK_PRICES: Prices = { - SWTH: 0.00403985, - BTC: 26002.82, - ETH: 1645.93, - USDT: 1, - USDC: 1, - OSMO: 0.3773, - ATOM: 7.18, -}; - -export function usePrices() { +import { ref, onMounted, onUnmounted } from "vue"; +import type { PriceItem, Prices } from "../type/tokenSelect.type"; + +export function usePrices(refreshInterval = 10000) { const prices = ref({}); const tokens = ref([]); + const loading = ref(false); + + let intervalId: number | null = null; async function fetchPrices() { try { - const controller = new AbortController(); - const timeout = setTimeout(() => controller.abort(), 60000); - - const res = await fetch("https://interview.switcheo.com/prices.json", { - signal: controller.signal, - }); - clearTimeout(timeout); + loading.value = true; + const res = await fetch("https://interview.switcheo.com/prices.json"); if (!res.ok) throw new Error(`HTTP error! status: ${res.status}`); + const data: PriceItem[] = await res.json(); - // 过滤本地有 svg 的 token,取最新价格 - const filtered: Prices = {}; - const seen: Record = {}; + /* + latestMap purpose: + ------------------ + Store ONLY the most recent price record for each token. + + Because the API returns historical price records, + we must compare dates and keep the newest one. + */ + const latestMap: Record = {}; data.forEach((item) => { - const token = item.currency; - if (LOCAL_TOKENS.includes(token)) { - const prev = seen[token]; - if (!prev || new Date(item.date) > new Date(prev.date)) - seen[token] = item; + const prev = latestMap[item.currency]; + + // If no record yet OR current item is newer + if (!prev || new Date(item.date) > new Date(prev.date)) { + latestMap[item.currency] = item; } }); - Object.keys(seen).forEach((token) => { - filtered[token] = seen[token].price; + /* + Convert latestMap into simple: + { ETH: 3500, BNB: 600 } + */ + const newPrices: Prices = {}; + + Object.keys(latestMap).forEach((token) => { + newPrices[token] = latestMap[token].price; }); - prices.value = Object.keys(filtered).length ? filtered : MOCK_PRICES; - tokens.value = Object.keys(prices.value); - } catch { - console.warn("Fetch failed or timeout, using mock prices."); - prices.value = MOCK_PRICES; - tokens.value = Object.keys(prices.value); + /* + Only update state if prices actually changed. + Prevents unnecessary UI re-render. + */ + if (JSON.stringify(newPrices) !== JSON.stringify(prices.value)) { + prices.value = newPrices; + tokens.value = Object.keys(newPrices); + console.log("Prices updated"); + } + } catch (err) { + console.error("Fetch failed:", err); + } finally { + loading.value = false; } } - onMounted(fetchPrices); + onMounted(() => { + fetchPrices(); + + intervalId = window.setInterval(() => { + fetchPrices(); + }, refreshInterval); + }); + + onUnmounted(() => { + if (intervalId) { + clearInterval(intervalId); + } + }); - return { prices, tokens }; + return { prices, tokens, loading }; } diff --git a/src/problem2/fancy-swap/src/style.css b/src/problem2/fancy-swap/src/style.css index f691315434..4be0838997 100644 --- a/src/problem2/fancy-swap/src/style.css +++ b/src/problem2/fancy-swap/src/style.css @@ -1,79 +1,34 @@ -:root { - font-family: system-ui, Avenir, Helvetica, Arial, sans-serif; - line-height: 1.5; - font-weight: 400; - - color-scheme: light dark; - color: rgba(255, 255, 255, 0.87); - background-color: #242424; - - font-synthesis: none; - text-rendering: optimizeLegibility; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -a { - font-weight: 500; - color: #646cff; - text-decoration: inherit; -} -a:hover { - color: #535bf2; -} body { + font-family: 'Inter', system-ui, Avenir, Helvetica, Arial, sans-serif; margin: 0; - display: flex; - place-items: center; - min-width: 320px; min-height: 100vh; + display: flex; + justify-content: center; + align-items: center; + background: linear-gradient(135deg, #2b0054 0%, #7d007d 50%, #0080ff 100%); + color: #fff; } -h1 { - font-size: 3.2em; - line-height: 1.1; -} -button { - border-radius: 8px; - border: 1px solid transparent; - padding: 0.6em 1.2em; - font-size: 1em; - font-weight: 500; - font-family: inherit; - background-color: #1a1a1a; - cursor: pointer; - transition: border-color 0.25s; -} -button:hover { - border-color: #646cff; -} -button:focus, -button:focus-visible { - outline: 4px auto -webkit-focus-ring-color; +.glass-card { + background: rgba(255, 255, 255, 0.03); + backdrop-filter: blur(20px); + border: 1px solid rgba(255, 255, 255, 0.1); + box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); + border-radius: 32px; + padding: 2rem; } -.card { - padding: 2em; +.btn-gradient { + background: linear-gradient(90deg, #ff6b00 0%, #e64a19 100%); + transition: all 0.3s ease; } - -#app { - max-width: 1280px; - margin: 0 auto; - padding: 2rem; - text-align: center; +.btn-gradient:hover { + box-shadow: 0 0 30px rgba(255, 107, 0, 0.6); + filter: brightness(1.1); } -@media (prefers-color-scheme: light) { - :root { - color: #213547; - background-color: #ffffff; - } - a:hover { - color: #747bff; - } - button { - background-color: #f9f9f9; - } -} +.active { + background: #e0e7ff; +} \ No newline at end of file diff --git a/src/problem2/fancy-swap/src/type/swap.type.ts b/src/problem2/fancy-swap/src/type/swap.type.ts index e2b3136e33..4b7efb4abf 100644 --- a/src/problem2/fancy-swap/src/type/swap.type.ts +++ b/src/problem2/fancy-swap/src/type/swap.type.ts @@ -1,9 +1,3 @@ -export interface Prices { - [token: string]: number; -} - -export interface PriceItem { - currency: string; - date: string; - price: number; +export interface Balances { + [currency: string]: number; } diff --git a/src/problem2/fancy-swap/src/type/tokenSelect.type.ts b/src/problem2/fancy-swap/src/type/tokenSelect.type.ts index 36f5e05a05..5efec948e8 100644 --- a/src/problem2/fancy-swap/src/type/tokenSelect.type.ts +++ b/src/problem2/fancy-swap/src/type/tokenSelect.type.ts @@ -1,4 +1,14 @@ -export interface TokenSelectProps { - modelValue: string; - tokens: string[]; +export interface TokenOption { + value: string; + label: string; +} + +export interface PriceItem { + currency: string; + date: string; + price: number; +} + +export interface Prices { + [currency: string]: number; } From edd7f832e65d0587d8efbd103283db9ceb578f4f Mon Sep 17 00:00:00 2001 From: zylim726 Date: Fri, 27 Feb 2026 12:26:49 +0800 Subject: [PATCH 5/5] Update index.css --- src/problem2/fancy-swap/src/components/SwapForm/index.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/problem2/fancy-swap/src/components/SwapForm/index.css b/src/problem2/fancy-swap/src/components/SwapForm/index.css index d84b8bce84..dc2920d600 100644 --- a/src/problem2/fancy-swap/src/components/SwapForm/index.css +++ b/src/problem2/fancy-swap/src/components/SwapForm/index.css @@ -55,7 +55,7 @@ input[type="text"] { position: absolute; left: 50%; transform: translateX(-50%); - top: 120px; + top: 174px; width: 48px; height: 48px; border-radius: 50%;