{"version":3,"sources":["../src/version.ts","../src/constants.ts","../src/registry.ts","../src/sdkWallets.ts","../src/utils/helpers.ts","../src/error/index.ts","../src/utils/localStorage.ts","../src/utils/walletSelector.ts","../src/WalletCore.ts","../src/ga/index.ts","../src/index.ts"],"sourcesContent":["export const WALLET_ADAPTER_CORE_VERSION = \"8.5.1\";\n","export enum WalletReadyState {\n  /**\n   * Wallet can only be in one of two states - installed or not installed\n   * Installed: wallets are detected by the browser event listeners and means they are installed on the user's browser.\n   * NotDetected: wallets are not detected by the browser event listeners and means they are not installed on the user's browser.\n   */\n  Installed = \"Installed\",\n  NotDetected = \"NotDetected\",\n}\n\nexport enum NetworkName {\n  Mainnet = \"mainnet\",\n  Testnet = \"testnet\",\n  Devnet = \"devnet\",\n}\n\nexport const ChainIdToAnsSupportedNetworkMap: Record<string, string> = {\n  \"1\": \"mainnet\", // mainnet\n  \"2\": \"testnet\", // testnet\n};\n\n/**\n * The base URL for all Aptos Connect wallets.\n *\n * @deprecated Use {@link PETRA_WEB_BASE_URL} instead.\n */\nexport const APTOS_CONNECT_BASE_URL = \"https://aptosconnect.app\";\n\n/** The base URL for all Petra Web wallets. */\nexport const PETRA_WEB_BASE_URL = \"https://web.petra.app\";\n\n/** The name of the generic wallet for Petra Web. */\nexport const PETRA_WEB_GENERIC_WALLET_NAME = \"Petra Web\";\n\n/** The name of the Petra wallet. */\nexport const PETRA_WALLET_NAME = \"Petra\";\n\n/** The default connection fallbacks for wallets that are not installed. */\nexport const DEFAULT_WALLET_CONNECTION_FALLBACKS = {\n  [PETRA_WALLET_NAME]: PETRA_WEB_GENERIC_WALLET_NAME,\n};\n\n/**\n * The URL to the Aptos Connect account page if the user is signed in to Aptos Connect.\n *\n * @deprecated Use {@link PETRA_WEB_ACCOUNT_URL} instead.\n */\nexport const APTOS_CONNECT_ACCOUNT_URL =\n  \"https://aptosconnect.app/dashboard/main-account\";\n\n/** The URL to the Petra Web account page if the user is signed in to Petra Web. */\nexport const PETRA_WEB_ACCOUNT_URL =\n  \"https://web.petra.app/dashboard/main-account\";\n","import { WalletReadyState } from \"./constants\";\nimport type { AptosStandardSupportedWallet } from \"./utils/types\";\n\n/**\n * Registry of AIP-62 wallet standard supported wallets.\n * This list is used to show supported wallets even if they are not installed on the user machine.\n *\n * AIP-62 compatible wallets are required to add their wallet info here if they want to be detected by the adapter\n *\n * @param name - The name of your wallet cast to WalletName (Ex. \"Petra\" as WalletName<\"Petra\">)\n * @param url - The link to your chrome extension or main website where new users can create an account with your wallet.\n * @param icon - An icon for your wallet. Can be one of 4 data types. Be sure to follow the below format exactly (including the literal \",\" after base64).\n *        Format: `data:image/${\"svg+xml\" | \"webp\" | \"png\" | \"gif\"};base64,${string}`\n *        Note: ${...} data in the above format should be replaced. Other characters are literals (ex. \";\")\n * @param deeplinkProvider optional - An optional deeplink provider for the wallet. If the wallet is not installed, we can redirect the user to the wallet's deeplink provider\n * @example \"https://myWallet.app/explore?link=\"\n */\nexport const aptosStandardSupportedWalletList: Array<AptosStandardSupportedWallet> =\n  [\n    {\n      name: \"Watchee\",\n      url: \"https://watcheetv.com\",\n      icon: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAHhlWElmTU0AKgAAAAgABAEaAAUAAAABAAAAPgEbAAUAAAABAAAARgEoAAMAAAABAAIAAIdpAAQAAAABAAAATgAAAAAAAAAZAAAAAQAAABkAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAECgAwAEAAAAAQAAAEAAAAAAO24RPQAAAAlwSFlzAAAD2AAAA9gBbkdjNQAAAzxJREFUeAHtWk9rE1EQn93NGtNqIlYheCm1iIggeCkqeKkHz34B714EvQgtKFrBi3ryJJ76JRRBCgUR1ENvIlgq4q3WmlSbP7vJOrPZ0JfNe3nurins7gzd5OW9eTPv/WbmzZulhvfjqgc5JjPHe/e3zgCwB+QcAQ6BnDsAsAewB+QcAQ6BnDsAH4IcAhwCOUeAQyDnDsBZgEOAQyDnCBQS7d80APAvMnUUL6JJFsmUEU3pBvMocI2AT+yXzdP0xQcA9W9vt+H3n45GxeCwZRlQPV4EM3z6oLxmswubW+3BCcGv8uECVMq95dbrLtTwISofwv4K9iswDaYrv+IDcNCCpaef4cXy9392AlrjiWoR3r++AOWKvWdRWl7RhLerW3Dt+tqQPJp35+YMLC6cIk54/uwrPHi87rdv3ZiG+/dOAzSiGcKfjB/xAUCLNRpd2NnpWaIvUPddn7DAU1jLcTylPPKOPjLN1p5esV+nWzYedkQZj7KvH4ZKBsmAqYpx5B0lTxxTtSXqtF2JANBKTwEDA5ACI411iewBY4U3BcLZA1JgpLEukT1grPCmQHj8qzBurtXG62lEauCVdqJkAUziI1aFJRNsO6jwVDJpXojaMdYgijBi/5MULvblq034uFYT5Y1sG3iHpTrAcYJ7vVATeFglmjho2yZ4/bI3kGZgXwfv/26Aj4XzClg8eSjn0twRuDJ/DIUKwkauYnAwPgAk5wAeIQWN1UR9yPvzWwOqZ1YQhOEFz1+egjcrFwHCVkXLLy18gruPvvjSFm+fhIdPzvYqQBflhPlFnZp2ohDwFcvLd7latHI/BGrOcBXphwC9XyAP0RGVv7vxSmBRNGcBEY08ttkD9tvqdPQ5dHBJyBXTYmi8K2SGjtAOsUX+mSwLRFWHCaOF6ezdh1/gSkCYOmrD+XPl4ReceHhubOzCOj5EM9MlmJ2dHLxHRF1LwL+/AJBSypqUPmVEh78qA1C6RSB8Ik+RACgTqetLlgZ10mXj5P3oBZGJNvyfNi3qVphCZMl2mwHItn31u2MP0GOUbQ72gGzbV7879gA9RtnmYA/Itn31u2MP0GOUbQ72gGzbV7879gA9Rtnm+AsQEdnPZLfcDQAAAABJRU5ErkJggg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"watcheetv://wallet/browse?url=\",\n    },\n    {\n      name: \"OKX Wallet\",\n      url: \"https://chromewebstore.google.com/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge\",\n      icon: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJDSURBVHgB7Zq9jtpAEMfHlhEgQLiioXEkoAGECwoKxMcTRHmC5E3IoyRPkPAEkI7unJYmTgEFTYwA8a3NTKScLnCHN6c9r1e3P2llWQy7M/s1Gv1twCP0ej37dDq9x+Zut1t3t9vZjDEHIiSRSPg4ZpDL5fxkMvn1cDh8m0wmfugfO53OoFQq/crn8wxfY9EymQyrVCqMfHvScZx1p9ls3pFxXBy/bKlUipGPrVbLuQqAfsCliq3zl0H84zwtjQrOw4Mt1W63P5LvBm2d+Xz+YzqdgkqUy+WgWCy+Mc/nc282m4FqLBYL+3g8fjDxenq72WxANZbLJeA13zDX67UDioL5ybXwafMYu64Ltn3bdDweQ5R97fd7GyhBQMipx4POeEDHIu2LfDdBIGGz+hJ9CQ1ABjoA2egAZPM6AgiCAEQhsi/C4jHyPA/6/f5NG3Ks2+3CYDC4aTccDrn6ojG54MnEvG00GoVmWLIRNZ7wTCwDHYBsdACy0QHIhiuRETxlICWpMMhGZHmqS8qH6JLyGegAZKMDkI0uKf8X4SWlaZo+Pp1bRrwlJU8ZKLIvUjKh0WiQ3sRUbNVq9c5Ebew7KEo2m/1p4jJ4qAmDaqDQBzj5XyiAT4VCQezJigAU+IDU+z8vJFnGWeC+bKQV/5VZ71FV6L7PA3gg3tXrdQ+DgLhC+75Wq3no69P3MC0NFQpx2lL04Ql9gHK1bRDjsSBIvScBnDTk1WrlGIZBorIDEYJj+rhdgnQ67VmWRe0zlplXl81vcyEt0rSoYDUAAAAASUVORK5CYII=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Petra\",\n      url: \"https://chromewebstore.google.com/detail/petra-aptos-wallet/ejjladinnckdgjemekebdpeokbikhfci?hl=en\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://petra.app/explore?link=\",\n    },\n    {\n      name: \"Nightly\",\n      url: \"https://nightly.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzI4MTdfMTQ1NCkiPgo8cGF0aCBkPSJNMCAwSDQ4VjQ4SDBWMFoiIGZpbGw9IiMxODFDMkYiLz4KPHBhdGggZD0iTTM4LjUxNSA1LjI1QzM1Ljc2OTkgOS4wODE0NyAzMi4zMzQ4IDExLjczODUgMjguMjc1NyAxMy41MTQ4QzI2Ljg2NjUgMTMuMTI1OCAyNS40MjA1IDEyLjkyNzYgMjMuOTk2NSAxMi45NDIzQzIyLjU3MjYgMTIuOTI3NiAyMS4xMjY2IDEzLjEzMzEgMTkuNzE3MyAxMy41MTQ4QzE1LjY1ODMgMTEuNzMxMiAxMi4yMjMyIDkuMDg4ODEgOS40NzgwMyA1LjI1QzguNjQ4NjIgNy4zMzQ1NiA1LjQ1NTcyIDE0LjUyNzcgOS4yODcyIDI0LjU4MzVDOS4yODcyIDI0LjU4MzUgOC4wNjE0MiAyOS44MzE2IDEwLjMxNDggMzQuMzM4NEMxMC4zMTQ4IDM0LjMzODQgMTMuNTczNyAzMi44NjMgMTYuMTY0OCAzNC45NDAzQzE4Ljg3MzIgMzcuMTM0OSAxOC4wMDcxIDM5LjI0ODggMTkuOTE1NSA0MS4wNjkxQzIxLjU1OTcgNDIuNzUgMjQuMDAzOSA0Mi43NSAyNC4wMDM5IDQyLjc1QzI0LjAwMzkgNDIuNzUgMjYuNDQ4MSA0Mi43NSAyOC4wOTIyIDQxLjA3NjVDMzAuMDAwNiAzOS4yNjM1IDI5LjE0MTkgMzcuMTQ5NiAzMS44NDMgMzQuOTQ3NkMzNC40MjY3IDMyLjg3MDQgMzcuNjkzIDM0LjM0NTcgMzcuNjkzIDM0LjM0NTdDMzkuOTM5IDI5LjgzOSAzOC43MjA2IDI0LjU5MDkgMzguNzIwNiAyNC41OTA5QzQyLjUzNzMgMTQuNTI3NyAzOS4zNTE4IDcuMzM0NTYgMzguNTE1IDUuMjVaTTExLjMyNzcgMjMuMTk2M0M5LjI0MzE2IDE4LjkxNzEgOC42NzA2NCAxMy4wNDUxIDkuOTg0NSA4LjQwNjE5QzExLjcyNDEgMTIuODEwMiAxNC4wODc1IDE0Ljc4NDYgMTYuODk4OCAxNi44NjkyQzE1LjcwOTcgMTkuMzQyOCAxMy40NzEgMjEuNjc2OSAxMS4zMjc3IDIzLjE5NjNaTTE3LjMyNDUgMzAuNzM0NEMxNS42ODAzIDMwLjAwNzggMTUuMzM1MyAyOC41NzY1IDE1LjMzNTMgMjguNTc2NUMxNy41NzQgMjcuMTY3MiAyMC44Njk3IDI4LjI0NjIgMjAuOTcyNSAzMS41Nzg1QzE5LjI0MDIgMzAuNTI4OSAxOC42NjA0IDMxLjMxNDMgMTcuMzI0NSAzMC43MzQ0Wk0yMy45OTY1IDQyLjU2NjVDMjIuODIyMSA0Mi41NjY1IDIxLjg2NzkgNDEuNzIyNCAyMS44Njc5IDQwLjY4NzVDMjEuODY3OSAzOS42NTI1IDIyLjgyMjEgMzguODA4NCAyMy45OTY1IDM4LjgwODRDMjUuMTcwOSAzOC44MDg0IDI2LjEyNTEgMzkuNjUyNSAyNi4xMjUxIDQwLjY4NzVDMjYuMTI1MSA0MS43Mjk3IDI1LjE3MDkgNDIuNTY2NSAyMy45OTY1IDQyLjU2NjVaTTMwLjY3NTkgMzAuNzM0NEMyOS4zNCAzMS4zMjE2IDI4Ljc2NzUgMzAuNTI4OSAyNy4wMjggMzEuNTc4NUMyNy4xMzgxIDI4LjI0NjIgMzAuNDE5IDI3LjE2NzIgMzIuNjY1MSAyOC41NzY1QzMyLjY2NTEgMjguNTY5MSAzMi4zMTI3IDMwLjAwNzggMzAuNjc1OSAzMC43MzQ0Wk0zNi42NjU0IDIzLjE5NjNDMzQuNTI5NCAyMS42NzY5IDMyLjI4MzQgMTkuMzUwMSAzMS4wODcgMTYuODY5MkMzMy44OTgyIDE0Ljc4NDYgMzYuMjY5IDEyLjgwMjggMzguMDAxMiA4LjQwNjE5QzM5LjMyOTggMTMuMDQ1MSAzOC43NTczIDE4LjkyNDQgMzYuNjY1NCAyMy4xOTYzWiIgZmlsbD0iI0Y3RjdGNyIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI4MTdfMTQ1NCI+CjxyZWN0IHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgcng9IjgiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"nightly://v1?network=aptos&url=\",\n    },\n    {\n      name: \"Backpack\",\n      url: \"https://chromewebstore.google.com/detail/backpack/aflkmfhebedbjioipglgcbcmnbpgliof\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CjxyZWN0IHg9IjEwIiB3aWR0aD0iNDQiIGhlaWdodD0iNjQiIGZpbGw9InVybCgjcGF0dGVybjBfMTdfNCkiLz4KPGRlZnM+CjxwYXR0ZXJuIGlkPSJwYXR0ZXJuMF8xN180IiBwYXR0ZXJuQ29udGVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgd2lkdGg9IjEiIGhlaWdodD0iMSI+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlMF8xN180IiB0cmFuc2Zvcm09InNjYWxlKDAuMDE4MTgxOCAwLjAxMjUpIi8+CjwvcGF0dGVybj4KPGltYWdlIGlkPSJpbWFnZTBfMTdfNCIgd2lkdGg9IjU1IiBoZWlnaHQ9IjgwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURjQUFBQlFDQVlBQUFDOUt1MmtBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBUWpTVVJCVkhnQjdadlJjZHRHRUliL1BkTFBvUjh6SThsVUJXWUY1TG1DT0JWWXFzQmhCWllyaUZPQjVRcXNWT0FqWFlDWkNrUmJtc2xqK0I0U20xMlFZaUNKU2tqY3dpSXc5ODF3UUkxQTRIN2NZZkh2M29GUUFaZmVkOXBBanhib3dmRnpCanBZZnRZdzA4UXh2bklMa3prd09RNWhCbU1JaGx4NTc2WFZiOEFpNm82WUxWcHl3Um45ZnZRNW5NTUlFM0VxaXBqZk02T0xTS1JCMDh6UjhDaUVDMFRpRU1sVnYvOEdHWCt5RUtiSUVPNVN4aC96NDBZUzFYUExCdEFaS2lKakdqNzdITjZoSktYRlNkRG90ak8rUkxYTTVvNk95d2FiTmtvaVArenF5VUUwbFNzMGtXSDVsUml6ckFWdHlJeVFiM1cvNlVQSG1PUGZvYXpEMFMzUVlaSkFSSGdPRFVqTXZSYmc1WHYwL1pkSUpLckgxS0hjNVUrSnFMb3RCbzdDaVdjU0xHWS9oakJGUlVTTDIrQWplMWcrMEhleFh4SjFNZEV0WlRTeThwdWx4S21nSnd1Y3NPT2ZSSWhIVlJDQytNMFBUMW9JWlhwNEozRUZZK3p4blNIQ09STjlPQXdoYlAyYmJYYkszWWdZNDhjUWRRL0pIdHBFdzIxNjhuK05zL2pIMTduTjJnZGhDdVBsWE5xempiRitzT2Z5UU1IOGNXOUViVUo2Y1U1MCtsRGcyU2h1SmV6VEt1bTBhWWQ0VU4weTg3MnNQTzdBRWxtSlhtd1N1SEZZbWdtVEU1T2tMZUxzbng2TXdyRitEc2VqcCtyMDJkR3BCSWtwWXBGMmFudTFRKzZmL2c3Zit2MWZDZlFMSWxGUkIxdmtZbGQ5ZnlZdGpFNU1HZnp1YUR3ZTNtcEQ4WTl2M3A5SUZ2d2VrVWp4NTNTWFdvalZlZUhvUmZGUmNXdFlPbzYvZ25LOTN1NWE1SkY2aWV4UHZ5RVN2VURGNGJrV3AxY3Z0ZzZpeFozRGNUaERDZVlPWjFnbHVHWFJoTGVkWVgxTHJjV1o5QnFYdi9yTGFCZmZlOUtJMXpmZmNuRnFxMHlxVitJQkVRRTVrM0pDSjdlSldJbVQyc2NyR0hBUXdnUVIvQTJEUjRPUzRhVnVWc09TUGZZQXU1STY1NTFGMTk3M09PTXZNRUFmMWpFTnpKMVJ4bi9CZ0xZWUJaY3RiQ3JGK1FFUjUycGlmMTlrc1lCM1lvSE1Ebmd6MXN0aWRlOHJVdi9zdVZVQjFPcVFyMjdxSnJ1aU9hT1k2aE1ZUWNRL1NFQmhPNGN1WVhqTzVXeFVtdzNzVndHdDVUZ3h5VjFZSXZuZjlXQ3dVMFB6L1kzelJobmlIYm9lK0VzWkRsMFlvMWFzSlViMnY4b0JWZFprOVB4MDFSOHdxbVExWTBvdFRIVlNaS0dKcWtTeXlpdG5ldXJLeFQwaTBUT3IrMHdTVjFlU3VMcVN4TldWSks2dUpIRjFKWW1ySzFwbUNHZ2lSQmRPWnlaTjVzbjJDWmtYYkJPRzZ5bXNteEowM2RIRk83R1Y3MFFpa2JoSEhpMTFOUTRSblZndG4zOVVTTmRiYzlDVkRXUzFOR1Avb0xkYVR2ZG9JQ1NUTXVvdDdhYXc5b2g4S1Q4YVRCSlhWNUs0dXBMRTFaVWtycTQwWHB6NSs5bjdncE5VcDVIaWRLbUdrOXlua2VLWVNNU0Iva0FEa1pSbjZzamhIQTBreTJpMExETU1CbDhzWDIxNWJQUitPeGlQanZOSGdaVFVmMjVNU1YxcUtMcm1iUG0xZ0w1YmdBeGVoRDZUZjNTcldQQm16RXlqUFM5ZnVwOHc0ZGJMZy84QUhSZXNCMHpiQzQ0QUFBQUFTVVZPUks1Q1lJST0iLz4KPC9kZWZzPgo8L3N2Zz4K\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://backpack.app/ul/v1?url=\",\n    },\n    {\n      name: \"Bitget Wallet\",\n      url: \"https://web3.bitget.com\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSIjMDAxRjI5Ii8+CjxwYXRoIGQ9Ik0yMTkuOTQ4IDk1LjcwMjJDMjAxLjYyMyA5NS42OTI5IDE4My4zMyA5NS42ODM1IDE2NC45NDEgOTUuNzExNkMxNTMuODIyIDk1LjcxMTYgMTQ5LjY1MSAxMDkuNjcxIDE1Ny45MjEgMTE3LjkzOUwyODMuMDk4IDI0My4xMTdDMjg3LjAwNCAyNDYuNjkgMjg5LjQ0MSAyNTAuNTc0IDI4OS41MyAyNTUuNjkzQzI4OS40NDEgMjYwLjgxMiAyODcuMDA0IDI2NC42OTYgMjgzLjA5OCAyNjguMjY5TDE1Ny45MjEgMzkzLjQ0NkMxNDkuNjUxIDQwMS43MTUgMTUzLjgyMiA0MTUuNjc0IDE2NC45NDEgNDE1LjY3NEMxODMuMzMgNDE1LjcwMiAyMDEuNjIzIDQxNS42OTMgMjE5Ljk0OCA0MTUuNjgzQzIyOS4xMjIgNDE1LjY3OSAyMzguMzA1IDQxNS42NzQgMjQ3LjUxMSA0MTUuNjc0QzI1OS41NTUgNDE1LjY3NCAyNjYuNzIgNDA5LjI0IDI3My4xNTQgNDAyLjgwNUwzODYuMDQ3IDI4OS45MTJDMzk1LjA1NyAyODAuOTAyIDQwMy4xMTkgMjY4LjkzOSA0MDMuMDA5IDI1NS42OTNDNDAzLjExOSAyNDIuNDQ3IDM5NS4wNTcgMjMwLjQ4NCAzODYuMDQ3IDIyMS40NzRMMjczLjE1NCAxMDguNThDMjY2LjcyIDEwMi4xNDYgMjU5LjU1NSA5NS43MTE2IDI0Ny41MTEgOTUuNzExNkMyMzguMzA1IDk1LjcxMTYgMjI5LjEyMiA5NS43MDY5IDIxOS45NDggOTUuNzAyMloiIGZpbGw9IiMwMEYwRkYiLz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Gate Wallet\",\n      url: \"https://www.gate.com/zh/web3/\",\n      icon: \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNjAwcHgiIGhlaWdodD0iNjAwcHgiIHZpZXdCb3g9IjAgMCA2MDAgNjAwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPue8lue7hCA3PC90aXRsZT4KICAgIDxkZWZzPgogICAgICAgIDxwb2x5Z29uIGlkPSJwYXRoLTEiIHBvaW50cz0iMCAwIDYwMCAwIDYwMCA2MDAgMCA2MDAiPjwvcG9seWdvbj4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLmjaLoibIiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJTVkciIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xNzU1LjAwMDAwMCwgLTU1MTguMDAwMDAwKSI+CiAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QtNyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTc1NS4wMDAwMDAsIDU1MTguMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uEIj4KICAgICAgICAgICAgICAgICAgICA8bWFzayBpZD0ibWFzay0yIiBmaWxsPSJ3aGl0ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgPC9tYXNrPgogICAgICAgICAgICAgICAgICAgIDxnIGlkPSJDbGlwLTIiPjwvZz4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMzAwLDQ2NC45OTg0MjcgQzIwOC44NzMwNjksNDY0Ljk5ODQyNyAxMzQuOTk2NTA0LDM5MS4xMjI1NjYgMTM0Ljk5NjUwNCwyOTkuOTk2NTA0IEMxMzQuOTk2NTA0LDIwOC44NzA0NDIgMjA4Ljg3MzA2OSwxMzUuMDAwOTM4IDMwMCwxMzUuMDAwOTM4IEwzMDAsLTAuMDAwNjM1NjAwNjI0IEMxMzQuMzEwMDQ5LC0wLjAwMDYzNTYwMDYyNCAwLDEzNC4zMTQ0ODkgMCwyOTkuOTk2NTA0IEMwLDQ2NS42Nzg1MiAxMzQuMzEwMDQ5LDYwMCAzMDAsNjAwIEM0NjUuNjg5OTUxLDYwMCA2MDAsNDY1LjY3ODUyIDYwMCwyOTkuOTk2NTA0IEw0NjUuMDAzNDk2LDI5OS45OTY1MDQgQzQ2NS4wMDM0OTYsMzkxLjEyMjU2NiAzOTEuMTI2OTMxLDQ2NC45OTg0MjcgMzAwLDQ2NC45OTg0MjciIGlkPSJGaWxsLTEiIGZpbGw9IiMyMzU0RTYiIG1hc2s9InVybCgjbWFzay0yKSI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IkZpbGwtMyIgZmlsbD0iIzE3RTZBMSIgcG9pbnRzPSIyOTkuOTkyMzczIDI5OS45OTcxNCA0NjQuOTk1ODY5IDI5OS45OTcxNCA0NjQuOTk1ODY5IDEzNC45OTUyMTcgMjk5Ljk5MjM3MyAxMzQuOTk1MjE3Ij48L3BvbHlnb24+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Cosmostation Wallet\",\n      url: \"https://www.cosmostation.io/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI4IiBoZWlnaHQ9IjEyOCIgdmlld0JveD0iMCAwIDEyOCAxMjgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0wIDQwQzAgMTcuOTA4NiAxNy45MDg2IDAgNDAgMEg4OEMxMTAuMDkxIDAgMTI4IDE3LjkwODYgMTI4IDQwVjg4QzEyOCAxMTAuMDkxIDExMC4wOTEgMTI4IDg4IDEyOEg0MEMxNy45MDg2IDEyOCAwIDExMC4wOTEgMCA4OFY0MFoiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl85MDg4XzE0OTgxKSIvPgo8cGF0aCBkPSJNNTEuMDI1MyA4Ni4xNTkxTDM1Ljg2NiA1OS45MDI1QzM1LjQ4ODEgNTkuMjQ3OSAzNS4yODkxIDU4LjUwNTUgMzUuMjg5MSA1Ny43NDk3QzM1LjI4OTEgNTYuOTkzOSAzNS40ODgxIDU2LjI1MTQgMzUuODY2IDU1LjU5NjlMNTEuMDI1MyAyOS4zNTNDNTEuNDAzMiAyOC42OTg0IDUxLjk0NjggMjguMTU0OSA1Mi42MDE0IDI3Ljc3N0M1My4yNTU5IDI3LjM5OTEgNTMuOTk4NSAyNy4yMDAyIDU0Ljc1NDMgMjcuMjAwMkg4NS4wNjAyQzg1LjgxNjEgMjcuMjAwMiA4Ni41NTg2IDI3LjM5OTEgODcuMjEzMiAyNy43NzdDODcuODY3OCAyOC4xNTQ5IDg4LjQxMTMgMjguNjk4NCA4OC43ODkyIDI5LjM1M0wxMDQgNTUuNjIyNEw5Ni41NDE5IDU5LjkyODFMODIuNjI1NSAzNS44MzcxSDU3LjI0MDNMNDQuNTY2OSA1Ny43NzUyTDU4LjQ4MzMgODEuODc5TDUxLjAyNTMgODYuMTU5MVoiIGZpbGw9IiM5QzZDRkYiLz4KPHBhdGggZD0iTTczLjI0NTYgMTAwLjQ0OEg0Mi44NzU1QzQyLjExOTcgMTAwLjQ0OCA0MS4zNzcyIDEwMC4yNDkgNDAuNzIyNiA5OS44NzExQzQwLjA2ODEgOTkuNDkzMiAzOS41MjQ1IDk4Ljk0OTYgMzkuMTQ2NiA5OC4yOTUxTDI0IDcyLjA2NDFMMzEuNDQ1MSA2Ny43NTg1TDQ1LjM2MTUgOTEuODYyM0g3MC42ODI3TDgzLjM0MzMgNjkuOTExM0w2OS40Mzk3IDQ1LjgyMDNMNzYuODg0OSA0MS41MTQ2TDkyLjA0NDIgNjcuNzU4NUM5Mi40MjIxIDY4LjQxMyA5Mi42MjExIDY5LjE1NTUgOTIuNjIxMSA2OS45MTEzQzkyLjYyMTEgNzAuNjY3MSA5Mi40MjIxIDcxLjQwOTYgOTIuMDQ0MiA3Mi4wNjQxTDc2Ljg4NDkgOTguMzIwN0M3Ni41MTM0IDk4Ljk1OTIgNzUuOTgzIDk5LjQ5MDYgNzUuMzQ1MyA5OS44NjM0Qzc0LjcwNzUgMTAwLjIzNiA3My45ODQyIDEwMC40MzggNzMuMjQ1NiAxMDAuNDQ4WiIgZmlsbD0iIzA1RDJERCIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzkwODhfMTQ5ODEiIHgxPSI2NCIgeTE9IjAiIHgyPSI2NCIgeTI9IjEyOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMjEyMTIxIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzE3MTcxNyIvPgo8L2xpbmVhckdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPgo=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n  ];\n\nexport const solanaStandardSupportedWalletList: Array<AptosStandardSupportedWallet> =\n  [\n    {\n      name: \"Phantom (Solana)\",\n      url: \"https://phantom.com/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4IiBoZWlnaHQ9IjEwOCIgdmlld0JveD0iMCAwIDEwOCAxMDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIxMDgiIGhlaWdodD0iMTA4IiByeD0iMjYiIGZpbGw9IiNBQjlGRjIiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00Ni41MjY3IDY5LjkyMjlDNDIuMDA1NCA3Ni44NTA5IDM0LjQyOTIgODUuNjE4MiAyNC4zNDggODUuNjE4MkMxOS41ODI0IDg1LjYxODIgMTUgODMuNjU2MyAxNSA3NS4xMzQyQzE1IDUzLjQzMDUgNDQuNjMyNiAxOS44MzI3IDcyLjEyNjggMTkuODMyN0M4Ny43NjggMTkuODMyNyA5NCAzMC42ODQ2IDk0IDQzLjAwNzlDOTQgNTguODI1OCA4My43MzU1IDc2LjkxMjIgNzMuNTMyMSA3Ni45MTIyQzcwLjI5MzkgNzYuOTEyMiA2OC43MDUzIDc1LjEzNDIgNjguNzA1MyA3Mi4zMTRDNjguNzA1MyA3MS41NzgzIDY4LjgyNzUgNzAuNzgxMiA2OS4wNzE5IDY5LjkyMjlDNjUuNTg5MyA3NS44Njk5IDU4Ljg2ODUgODEuMzg3OCA1Mi41NzU0IDgxLjM4NzhDNDcuOTkzIDgxLjM4NzggNDUuNjcxMyA3OC41MDYzIDQ1LjY3MTMgNzQuNDU5OEM0NS42NzEzIDcyLjk4ODQgNDUuOTc2OCA3MS40NTU2IDQ2LjUyNjcgNjkuOTIyOVpNODMuNjc2MSA0Mi41Nzk0QzgzLjY3NjEgNDYuMTcwNCA4MS41NTc1IDQ3Ljk2NTggNzkuMTg3NSA0Ny45NjU4Qzc2Ljc4MTYgNDcuOTY1OCA3NC42OTg5IDQ2LjE3MDQgNzQuNjk4OSA0Mi41Nzk0Qzc0LjY5ODkgMzguOTg4NSA3Ni43ODE2IDM3LjE5MzEgNzkuMTg3NSAzNy4xOTMxQzgxLjU1NzUgMzcuMTkzMSA4My42NzYxIDM4Ljk4ODUgODMuNjc2MSA0Mi41Nzk0Wk03MC4yMTAzIDQyLjU3OTVDNzAuMjEwMyA0Ni4xNzA0IDY4LjA5MTYgNDcuOTY1OCA2NS43MjE2IDQ3Ljk2NThDNjMuMzE1NyA0Ny45NjU4IDYxLjIzMyA0Ni4xNzA0IDYxLjIzMyA0Mi41Nzk1QzYxLjIzMyAzOC45ODg1IDYzLjMxNTcgMzcuMTkzMSA2NS43MjE2IDM3LjE5MzFDNjguMDkxNiAzNy4xOTMxIDcwLjIxMDMgMzguOTg4NSA3MC4yMTAzIDQyLjU3OTVaIiBmaWxsPSIjRkZGREY4Ii8+Cjwvc3ZnPgo=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: `https://phantom.app/ul/browse/`,\n    },\n    {\n      name: \"Nightly (Solana)\",\n      url: \"https://nightly.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzI4MTdfMTQ1NCkiPgo8cGF0aCBkPSJNMCAwSDQ4VjQ4SDBWMFoiIGZpbGw9IiMxODFDMkYiLz4KPHBhdGggZD0iTTM4LjUxNSA1LjI1QzM1Ljc2OTkgOS4wODE0NyAzMi4zMzQ4IDExLjczODUgMjguMjc1NyAxMy41MTQ4QzI2Ljg2NjUgMTMuMTI1OCAyNS40MjA1IDEyLjkyNzYgMjMuOTk2NSAxMi45NDIzQzIyLjU3MjYgMTIuOTI3NiAyMS4xMjY2IDEzLjEzMzEgMTkuNzE3MyAxMy41MTQ4QzE1LjY1ODMgMTEuNzMxMiAxMi4yMjMyIDkuMDg4ODEgOS40NzgwMyA1LjI1QzguNjQ4NjIgNy4zMzQ1NiA1LjQ1NTcyIDE0LjUyNzcgOS4yODcyIDI0LjU4MzVDOS4yODcyIDI0LjU4MzUgOC4wNjE0MiAyOS44MzE2IDEwLjMxNDggMzQuMzM4NEMxMC4zMTQ4IDM0LjMzODQgMTMuNTczNyAzMi44NjMgMTYuMTY0OCAzNC45NDAzQzE4Ljg3MzIgMzcuMTM0OSAxOC4wMDcxIDM5LjI0ODggMTkuOTE1NSA0MS4wNjkxQzIxLjU1OTcgNDIuNzUgMjQuMDAzOSA0Mi43NSAyNC4wMDM5IDQyLjc1QzI0LjAwMzkgNDIuNzUgMjYuNDQ4MSA0Mi43NSAyOC4wOTIyIDQxLjA3NjVDMzAuMDAwNiAzOS4yNjM1IDI5LjE0MTkgMzcuMTQ5NiAzMS44NDMgMzQuOTQ3NkMzNC40MjY3IDMyLjg3MDQgMzcuNjkzIDM0LjM0NTcgMzcuNjkzIDM0LjM0NTdDMzkuOTM5IDI5LjgzOSAzOC43MjA2IDI0LjU5MDkgMzguNzIwNiAyNC41OTA5QzQyLjUzNzMgMTQuNTI3NyAzOS4zNTE4IDcuMzM0NTYgMzguNTE1IDUuMjVaTTExLjMyNzcgMjMuMTk2M0M5LjI0MzE2IDE4LjkxNzEgOC42NzA2NCAxMy4wNDUxIDkuOTg0NSA4LjQwNjE5QzExLjcyNDEgMTIuODEwMiAxNC4wODc1IDE0Ljc4NDYgMTYuODk4OCAxNi44NjkyQzE1LjcwOTcgMTkuMzQyOCAxMy40NzEgMjEuNjc2OSAxMS4zMjc3IDIzLjE5NjNaTTE3LjMyNDUgMzAuNzM0NEMxNS42ODAzIDMwLjAwNzggMTUuMzM1MyAyOC41NzY1IDE1LjMzNTMgMjguNTc2NUMxNy41NzQgMjcuMTY3MiAyMC44Njk3IDI4LjI0NjIgMjAuOTcyNSAzMS41Nzg1QzE5LjI0MDIgMzAuNTI4OSAxOC42NjA0IDMxLjMxNDMgMTcuMzI0NSAzMC43MzQ0Wk0yMy45OTY1IDQyLjU2NjVDMjIuODIyMSA0Mi41NjY1IDIxLjg2NzkgNDEuNzIyNCAyMS44Njc5IDQwLjY4NzVDMjEuODY3OSAzOS42NTI1IDIyLjgyMjEgMzguODA4NCAyMy45OTY1IDM4LjgwODRDMjUuMTcwOSAzOC44MDg0IDI2LjEyNTEgMzkuNjUyNSAyNi4xMjUxIDQwLjY4NzVDMjYuMTI1MSA0MS43Mjk3IDI1LjE3MDkgNDIuNTY2NSAyMy45OTY1IDQyLjU2NjVaTTMwLjY3NTkgMzAuNzM0NEMyOS4zNCAzMS4zMjE2IDI4Ljc2NzUgMzAuNTI4OSAyNy4wMjggMzEuNTc4NUMyNy4xMzgxIDI4LjI0NjIgMzAuNDE5IDI3LjE2NzIgMzIuNjY1MSAyOC41NzY1QzMyLjY2NTEgMjguNTY5MSAzMi4zMTI3IDMwLjAwNzggMzAuNjc1OSAzMC43MzQ0Wk0zNi42NjU0IDIzLjE5NjNDMzQuNTI5NCAyMS42NzY5IDMyLjI4MzQgMTkuMzUwMSAzMS4wODcgMTYuODY5MkMzMy44OTgyIDE0Ljc4NDYgMzYuMjY5IDEyLjgwMjggMzguMDAxMiA4LjQwNjE5QzM5LjMyOTggMTMuMDQ1MSAzOC43NTczIDE4LjkyNDQgMzYuNjY1NCAyMy4xOTYzWiIgZmlsbD0iI0Y3RjdGNyIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI4MTdfMTQ1NCI+CjxyZWN0IHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgcng9IjgiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"nightly://v1?network=solana&url=\",\n    },\n    {\n      name: \"MetaMask (Solana)\",\n      url: \"https://metamask.io/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiB2aWV3Qm94PSIwIDAgMjU2IDI0MCI+PHBhdGggZmlsbD0iI0UxNzcyNiIgZD0iTTI1MC4wNjYgMEwxNDAuMjE5IDgxLjI3OWwyMC40MjctNDcuOXoiLz48cGF0aCBmaWxsPSIjRTI3NjI1IiBkPSJtNi4xOTEuMDk2bDg5LjE4MSAzMy4yODlsMTkuMzk2IDQ4LjUyOHpNMjA1Ljg2IDE3Mi44NThsNDguNTUxLjkyNGwtMTYuOTY4IDU3LjY0MmwtNTkuMjQzLTE2LjMxMXptLTE1NS43MjEgMGwyNy41NTcgNDIuMjU1bC01OS4xNDMgMTYuMzEybC0xNi44NjUtNTcuNjQzeiIvPjxwYXRoIGZpbGw9IiNFMjc2MjUiIGQ9Im0xMTIuMTMxIDY5LjU1MmwxLjk4NCA2NC4wODNsLTU5LjM3MS0yLjcwMWwxNi44ODgtMjUuNDc4bC4yMTQtLjI0NXptMzEuMTIzLS43MTVsNDAuOSAzNi4zNzZsLjIxMi4yNDRsMTYuODg4IDI1LjQ3OGwtNTkuMzU4IDIuN3pNNzkuNDM1IDE3My4wNDRsMzIuNDE4IDI1LjI1OWwtMzcuNjU4IDE4LjE4MXptOTcuMTM2LS4wMDRsNS4xMzEgNDMuNDQ1bC0zNy41NTMtMTguMTg0eiIvPjxwYXRoIGZpbGw9IiNENUJGQjIiIGQ9Im0xNDQuOTc4IDE5NS45MjJsMzguMTA3IDE4LjQ1MmwtMzUuNDQ3IDE2Ljg0NmwuMzY4LTExLjEzNHptLTMzLjk2Ny4wMDhsLTIuOTA5IDIzLjk3NGwuMjM5IDExLjMwM2wtMzUuNTMtMTYuODMzeiIvPjxwYXRoIGZpbGw9IiMyMzM0NDciIGQ9Im0xMDAuMDA3IDE0MS45OTlsOS45NTggMjAuOTI4bC0zMy45MDMtOS45MzJ6bTU1Ljk4NS4wMDJsMjQuMDU4IDEwLjk5NGwtMzQuMDE0IDkuOTI5eiIvPjxwYXRoIGZpbGw9IiNDQzYyMjgiIGQ9Im04Mi4wMjYgMTcyLjgzbC01LjQ4IDQ1LjA0bC0yOS4zNzMtNDQuMDU1em05MS45NS4wMDFsMzQuODU0Ljk4NGwtMjkuNDgzIDQ0LjA1N3ptMjguMTM2LTQ0LjQ0NGwtMjUuMzY1IDI1Ljg1MWwtMTkuNTU3LTguOTM3bC05LjM2MyAxOS42ODRsLTYuMTM4LTMzLjg0OXptLTE0OC4yMzcgMGw2MC40MzUgMi43NDlsLTYuMTM5IDMzLjg0OWwtOS4zNjUtMTkuNjgxbC0xOS40NTMgOC45MzV6Ii8+PHBhdGggZmlsbD0iI0UyNzUyNSIgZD0ibTUyLjE2NiAxMjMuMDgybDI4LjY5OCAyOS4xMjFsLjk5NCAyOC43NDl6bTE1MS42OTctLjA1MmwtMjkuNzQ2IDU3Ljk3M2wxLjEyLTI4Ljh6bS05MC45NTYgMS44MjZsMS4xNTUgNy4yN2wyLjg1NCAxOC4xMTFsLTEuODM1IDU1LjYyNWwtOC42NzUtNDQuNjg1bC0uMDAzLS40NjJ6bTMwLjE3MS0uMTAxbDYuNTIxIDM1Ljk2bC0uMDAzLjQ2MmwtOC42OTcgNDQuNzk3bC0uMzQ0LTExLjIwNWwtMS4zNTctNDQuODYyeiIvPjxwYXRoIGZpbGw9IiNGNTg0MUYiIGQ9Im0xNzcuNzg4IDE1MS4wNDZsLS45NzEgMjQuOTc4bC0zMC4yNzQgMjMuNTg3bC02LjEyLTQuMzI0bDYuODYtMzUuMzM1em0tOTkuNDcxIDBsMzAuMzk5IDguOTA2bDYuODYgMzUuMzM1bC02LjEyIDQuMzI0bC0zMC4yNzUtMjMuNTg5eiIvPjxwYXRoIGZpbGw9IiNDMEFDOUQiIGQ9Im02Ny4wMTggMjA4Ljg1OGwzOC43MzIgMTguMzUybC0uMTY0LTcuODM3bDMuMjQxLTIuODQ1aDM4LjMzNGwzLjM1OCAyLjgzNWwtLjI0OCA3LjgzMWwzOC40ODctMTguMjlsLTE4LjcyOCAxNS40NzZsLTIyLjY0NSAxNS41NTNoLTM4Ljg2OWwtMjIuNjMtMTUuNjE3eiIvPjxwYXRoIGZpbGw9IiMxNjE2MTYiIGQ9Im0xNDIuMjA0IDE5My40NzlsNS40NzYgMy44NjlsMy4yMDkgMjUuNjA0bC00LjY0NC0zLjkyMWgtMzYuNDc2bC00LjU1NiA0bDMuMTA0LTI1LjY4MWw1LjQ3OC0zLjg3MXoiLz48cGF0aCBmaWxsPSIjNzYzRTFBIiBkPSJNMjQyLjgxNCAyLjI1TDI1NiA0MS44MDdsLTguMjM1IDM5Ljk5N2w1Ljg2NCA0LjUyM2wtNy45MzUgNi4wNTRsNS45NjQgNC42MDZsLTcuODk3IDcuMTkxbDQuODQ4IDMuNTExbC0xMi44NjYgMTUuMDI2bC01Mi43Ny0xNS4zNjVsLS40NTctLjI0NWwtMzguMDI3LTMyLjA3OHptLTIyOS42MjggMGw5OC4zMjYgNzIuNzc3bC0zOC4wMjggMzIuMDc4bC0uNDU3LjI0NWwtNTIuNzcgMTUuMzY1bC0xMi44NjYtMTUuMDI2bDQuODQ0LTMuNTA4bC03Ljg5Mi03LjE5NGw1Ljk1Mi00LjYwMWwtOC4wNTQtNi4wNzFsNi4wODUtNC41MjZMMCA0MS44MDl6Ii8+PHBhdGggZmlsbD0iI0Y1ODQxRiIgZD0ibTE4MC4zOTIgMTAzLjk5bDU1LjkxMyAxNi4yNzlsMTguMTY1IDU1Ljk4NmgtNDcuOTI0bC0zMy4wMi40MTZsMjQuMDE0LTQ2LjgwOHptLTEwNC43ODQgMGwtMTcuMTUxIDI1Ljg3M2wyNC4wMTcgNDYuODA4bC0zMy4wMDUtLjQxNkgxLjYzMWwxOC4wNjMtNTUuOTg1em04Ny43NzYtNzAuODc4bC0xNS42MzkgNDIuMjM5bC0zLjMxOSA1Ny4wNmwtMS4yNyAxNy44ODVsLS4xMDEgNDUuNjg4aC0zMC4xMTFsLS4wOTgtNDUuNjAybC0xLjI3NC0xNy45ODZsLTMuMzItNTcuMDQ1bC0xNS42MzctNDIuMjM5eiIvPjwvc3ZnPg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://link.metamask.io/dapp/\",\n    },\n    {\n      name: \"Coinbase (Solana)\",\n      url: \"https://wallet.coinbase.com/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAyNCIgaGVpZ2h0PSIxMDI0IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8Y2lyY2xlIGN4PSI1MTIiIGN5PSI1MTIiIHI9IjUxMiIgZmlsbD0iIzAwNTJGRiIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTUxMiAyOTZDMzkyLjQ3MSAyOTYgMjk2IDM5Mi40NzEgMjk2IDUxMkMyOTYgNjMxLjUyOSAzOTIuNDcxIDcyOCA1MTIgNzI4QzYzMS41MjkgNzI4IDcyOCA2MzEuNTI5IDcyOCA1MTJDNzI4IDM5Mi40NzEgNjMxLjUyOSAyOTYgNTEyIDI5NlpNNDIwLjggNDY0LjhDNDIwLjggNDUyLjU5NiA0MzAuNTk2IDQ0Mi44IDQ0Mi44IDQ0Mi44SDU4MS4yQzU5My40MDQgNDQyLjggNjAzLjIgNDUyLjU5NiA2MDMuMiA0NjQuOFY1NTkuMkM2MDMuMiA1NzEuNDA0IDU5My40MDQgNTgxLjIgNTgxLjIgNTgxLjJINDQyLjhDNDMwLjU5NiA1ODEuMiA0MjAuOCA1NzEuNDA0IDQyMC44IDU1OS4yVjQ2NC44WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://wallet.coinbase.com/wsegue?cb_url=\",\n    },\n    {\n      name: \"Backpack (Solana)\",\n      url: \"https://backpack.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CjxyZWN0IHg9IjEwIiB3aWR0aD0iNDQiIGhlaWdodD0iNjQiIGZpbGw9InVybCgjcGF0dGVybjBfMTdfNCkiLz4KPGRlZnM+CjxwYXR0ZXJuIGlkPSJwYXR0ZXJuMF8xN180IiBwYXR0ZXJuQ29udGVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgd2lkdGg9IjEiIGhlaWdodD0iMSI+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlMF8xN180IiB0cmFuc2Zvcm09InNjYWxlKDAuMDE4MTgxOCAwLjAxMjUpIi8+CjwvcGF0dGVybj4KPGltYWdlIGlkPSJpbWFnZTBfMTdfNCIgd2lkdGg9IjU1IiBoZWlnaHQ9IjgwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURjQUFBQlFDQVlBQUFDOUt1MmtBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBUWpTVVJCVkhnQjdadlJjZHRHRUliL1BkTFBvUjh6SThsVUJXWUY1TG1DT0JWWXFzQmhCWllyaUZPQjVRcXNWT0FqWFlDWkNrUmJtc2xqK0I0U20xMlFZaUNKU2tqY3dpSXc5ODF3UUkxQTRIN2NZZkh2M29GUUFaZmVkOXBBanhib3dmRnpCanBZZnRZdzA4UXh2bklMa3prd09RNWhCbU1JaGx4NTc2WFZiOEFpNm82WUxWcHl3Um45ZnZRNW5NTUlFM0VxaXBqZk02T0xTS1JCMDh6UjhDaUVDMFRpRU1sVnYvOEdHWCt5RUtiSUVPNVN4aC96NDBZUzFYUExCdEFaS2lKakdqNzdITjZoSktYRlNkRG90ak8rUkxYTTVvNk95d2FiTmtvaVArenF5VUUwbFNzMGtXSDVsUml6ckFWdHlJeVFiM1cvNlVQSG1PUGZvYXpEMFMzUVlaSkFSSGdPRFVqTXZSYmc1WHYwL1pkSUpLckgxS0hjNVUrSnFMb3RCbzdDaVdjU0xHWS9oakJGUlVTTDIrQWplMWcrMEhleFh4SjFNZEV0WlRTeThwdWx4S21nSnd1Y3NPT2ZSSWhIVlJDQytNMFBUMW9JWlhwNEozRUZZK3p4blNIQ09STjlPQXdoYlAyYmJYYkszWWdZNDhjUWRRL0pIdHBFdzIxNjhuK05zL2pIMTduTjJnZGhDdVBsWE5xempiRitzT2Z5UU1IOGNXOUViVUo2Y1U1MCtsRGcyU2h1SmV6VEt1bTBhWWQ0VU4weTg3MnNQTzdBRWxtSlhtd1N1SEZZbWdtVEU1T2tMZUxzbng2TXdyRitEc2VqcCtyMDJkR3BCSWtwWXBGMmFudTFRKzZmL2c3Zit2MWZDZlFMSWxGUkIxdmtZbGQ5ZnlZdGpFNU1HZnp1YUR3ZTNtcEQ4WTl2M3A5SUZ2d2VrVWp4NTNTWFdvalZlZUhvUmZGUmNXdFlPbzYvZ25LOTN1NWE1SkY2aWV4UHZ5RVN2VURGNGJrV3AxY3Z0ZzZpeFozRGNUaERDZVlPWjFnbHVHWFJoTGVkWVgxTHJjV1o5QnFYdi9yTGFCZmZlOUtJMXpmZmNuRnFxMHlxVitJQkVRRTVrM0pDSjdlSldJbVQyc2NyR0hBUXdnUVIvQTJEUjRPUzRhVnVWc09TUGZZQXU1STY1NTFGMTk3M09PTXZNRUFmMWpFTnpKMVJ4bi9CZ0xZWUJaY3RiQ3JGK1FFUjUycGlmMTlrc1lCM1lvSE1Ebmd6MXN0aWRlOHJVdi9zdVZVQjFPcVFyMjdxSnJ1aU9hT1k2aE1ZUWNRL1NFQmhPNGN1WVhqTzVXeFVtdzNzVndHdDVUZ3h5VjFZSXZuZjlXQ3dVMFB6L1kzelJobmlIYm9lK0VzWkRsMFlvMWFzSlViMnY4b0JWZFprOVB4MDFSOHdxbVExWTBvdFRIVlNaS0dKcWtTeXlpdG5ldXJLeFQwaTBUT3IrMHdTVjFlU3VMcVN4TldWSks2dUpIRjFKWW1ySzFwbUNHZ2lSQmRPWnlaTjVzbjJDWmtYYkJPRzZ5bXNteEowM2RIRk83R1Y3MFFpa2JoSEhpMTFOUTRSblZndG4zOVVTTmRiYzlDVkRXUzFOR1Avb0xkYVR2ZG9JQ1NUTXVvdDdhYXc5b2g4S1Q4YVRCSlhWNUs0dXBMRTFaVWtycTQwWHB6NSs5bjdncE5VcDVIaWRLbUdrOXlua2VLWVNNU0Iva0FEa1pSbjZzamhIQTBreTJpMExETU1CbDhzWDIxNWJQUitPeGlQanZOSGdaVFVmMjVNU1YxcUtMcm1iUG0xZ0w1YmdBeGVoRDZUZjNTcldQQm16RXlqUFM5ZnVwOHc0ZGJMZy84QUhSZXNCMHpiQzQ0QUFBQUFTVVZPUks1Q1lJST0iLz4KPC9kZWZzPgo8L3N2Zz4K\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://backpack.app/ul/v1?url=\",\n    },\n    {\n      name: \"OKX Wallet (Solana)\",\n      url: \"https://chromewebstore.google.com/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge\",\n      icon: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJDSURBVHgB7Zq9jtpAEMfHlhEgQLiioXEkoAGECwoKxMcTRHmC5E3IoyRPkPAEkI7unJYmTgEFTYwA8a3NTKScLnCHN6c9r1e3P2llWQy7M/s1Gv1twCP0ej37dDq9x+Zut1t3t9vZjDEHIiSRSPg4ZpDL5fxkMvn1cDh8m0wmfugfO53OoFQq/crn8wxfY9EymQyrVCqMfHvScZx1p9ls3pFxXBy/bKlUipGPrVbLuQqAfsCliq3zl0H84zwtjQrOw4Mt1W63P5LvBm2d+Xz+YzqdgkqUy+WgWCy+Mc/nc282m4FqLBYL+3g8fjDxenq72WxANZbLJeA13zDX67UDioL5ybXwafMYu64Ltn3bdDweQ5R97fd7GyhBQMipx4POeEDHIu2LfDdBIGGz+hJ9CQ1ABjoA2egAZPM6AgiCAEQhsi/C4jHyPA/6/f5NG3Ks2+3CYDC4aTccDrn6ojG54MnEvG00GoVmWLIRNZ7wTCwDHYBsdACy0QHIhiuRETxlICWpMMhGZHmqS8qH6JLyGegAZKMDkI0uKf8X4SWlaZo+Pp1bRrwlJU8ZKLIvUjKh0WiQ3sRUbNVq9c5Ebew7KEo2m/1p4jJ4qAmDaqDQBzj5XyiAT4VCQezJigAU+IDU+z8vJFnGWeC+bKQV/5VZ71FV6L7PA3gg3tXrdQ+DgLhC+75Wq3no69P3MC0NFQpx2lL04Ql9gHK1bRDjsSBIvScBnDTk1WrlGIZBorIDEYJj+rhdgnQ67VmWRe0zlplXl81vcyEt0rSoYDUAAAAASUVORK5CYII=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Bitget Wallet (Solana)\",\n      url: \"https://web3.bitget.com\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSIjMDAxRjI5Ii8+CjxwYXRoIGQ9Ik0yMTkuOTQ4IDk1LjcwMjJDMjAxLjYyMyA5NS42OTI5IDE4My4zMyA5NS42ODM1IDE2NC45NDEgOTUuNzExNkMxNTMuODIyIDk1LjcxMTYgMTQ5LjY1MSAxMDkuNjcxIDE1Ny45MjEgMTE3LjkzOUwyODMuMDk4IDI0My4xMTdDMjg3LjAwNCAyNDYuNjkgMjg5LjQ0MSAyNTAuNTc0IDI4OS41MyAyNTUuNjkzQzI4OS40NDEgMjYwLjgxMiAyODcuMDA0IDI2NC42OTYgMjgzLjA5OCAyNjguMjY5TDE1Ny45MjEgMzkzLjQ0NkMxNDkuNjUxIDQwMS43MTUgMTUzLjgyMiA0MTUuNjc0IDE2NC45NDEgNDE1LjY3NEMxODMuMzMgNDE1LjcwMiAyMDEuNjIzIDQxNS42OTMgMjE5Ljk0OCA0MTUuNjgzQzIyOS4xMjIgNDE1LjY3OSAyMzguMzA1IDQxNS42NzQgMjQ3LjUxMSA0MTUuNjc0QzI1OS41NTUgNDE1LjY3NCAyNjYuNzIgNDA5LjI0IDI3My4xNTQgNDAyLjgwNUwzODYuMDQ3IDI4OS45MTJDMzk1LjA1NyAyODAuOTAyIDQwMy4xMTkgMjY4LjkzOSA0MDMuMDA5IDI1NS42OTNDNDAzLjExOSAyNDIuNDQ3IDM5NS4wNTcgMjMwLjQ4NCAzODYuMDQ3IDIyMS40NzRMMjczLjE1NCAxMDguNThDMjY2LjcyIDEwMi4xNDYgMjU5LjU1NSA5NS43MTE2IDI0Ny41MTEgOTUuNzExNkMyMzguMzA1IDk1LjcxMTYgMjI5LjEyMiA5NS43MDY5IDIxOS45NDggOTUuNzAyMloiIGZpbGw9IiMwMEYwRkYiLz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Fuse (Solana)\",\n      url: \"https://fusewallet.com/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Solflare (Solana)\",\n      url: \"https://www.solflare.com/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Trust (Solana)\",\n      url: \"https://trustwallet.com/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n  ];\n\nexport const ethereumStandardSupportedWalletList: Array<AptosStandardSupportedWallet> =\n  [\n    {\n      name: \"Phantom (Ethereum)\",\n      url: \"https://phantom.com/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4IiBoZWlnaHQ9IjEwOCIgdmlld0JveD0iMCAwIDEwOCAxMDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIxMDgiIGhlaWdodD0iMTA4IiByeD0iMjYiIGZpbGw9IiNBQjlGRjIiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00Ni41MjY3IDY5LjkyMjlDNDIuMDA1NCA3Ni44NTA5IDM0LjQyOTIgODUuNjE4MiAyNC4zNDggODUuNjE4MkMxOS41ODI0IDg1LjYxODIgMTUgODMuNjU2MyAxNSA3NS4xMzQyQzE1IDUzLjQzMDUgNDQuNjMyNiAxOS44MzI3IDcyLjEyNjggMTkuODMyN0M4Ny43NjggMTkuODMyNyA5NCAzMC42ODQ2IDk0IDQzLjAwNzlDOTQgNTguODI1OCA4My43MzU1IDc2LjkxMjIgNzMuNTMyMSA3Ni45MTIyQzcwLjI5MzkgNzYuOTEyMiA2OC43MDUzIDc1LjEzNDIgNjguNzA1MyA3Mi4zMTRDNjguNzA1MyA3MS41NzgzIDY4LjgyNzUgNzAuNzgxMiA2OS4wNzE5IDY5LjkyMjlDNjUuNTg5MyA3NS44Njk5IDU4Ljg2ODUgODEuMzg3OCA1Mi41NzU0IDgxLjM4NzhDNDcuOTkzIDgxLjM4NzggNDUuNjcxMyA3OC41MDYzIDQ1LjY3MTMgNzQuNDU5OEM0NS42NzEzIDcyLjk4ODQgNDUuOTc2OCA3MS40NTU2IDQ2LjUyNjcgNjkuOTIyOVpNODMuNjc2MSA0Mi41Nzk0QzgzLjY3NjEgNDYuMTcwNCA4MS41NTc1IDQ3Ljk2NTggNzkuMTg3NSA0Ny45NjU4Qzc2Ljc4MTYgNDcuOTY1OCA3NC42OTg5IDQ2LjE3MDQgNzQuNjk4OSA0Mi41Nzk0Qzc0LjY5ODkgMzguOTg4NSA3Ni43ODE2IDM3LjE5MzEgNzkuMTg3NSAzNy4xOTMxQzgxLjU1NzUgMzcuMTkzMSA4My42NzYxIDM4Ljk4ODUgODMuNjc2MSA0Mi41Nzk0Wk03MC4yMTAzIDQyLjU3OTVDNzAuMjEwMyA0Ni4xNzA0IDY4LjA5MTYgNDcuOTY1OCA2NS43MjE2IDQ3Ljk2NThDNjMuMzE1NyA0Ny45NjU4IDYxLjIzMyA0Ni4xNzA0IDYxLjIzMyA0Mi41Nzk1QzYxLjIzMyAzOC45ODg1IDYzLjMxNTcgMzcuMTkzMSA2NS43MjE2IDM3LjE5MzFDNjguMDkxNiAzNy4xOTMxIDcwLjIxMDMgMzguOTg4NSA3MC4yMTAzIDQyLjU3OTVaIiBmaWxsPSIjRkZGREY4Ii8+Cjwvc3ZnPgo=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: `https://phantom.app/ul/browse/`,\n    },\n    {\n      name: \"Nightly (Ethereum)\",\n      url: \"https://nightly.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzI4MTdfMTQ1NCkiPgo8cGF0aCBkPSJNMCAwSDQ4VjQ4SDBWMFoiIGZpbGw9IiMxODFDMkYiLz4KPHBhdGggZD0iTTM4LjUxNSA1LjI1QzM1Ljc2OTkgOS4wODE0NyAzMi4zMzQ4IDExLjczODUgMjguMjc1NyAxMy41MTQ4QzI2Ljg2NjUgMTMuMTI1OCAyNS40MjA1IDEyLjkyNzYgMjMuOTk2NSAxMi45NDIzQzIyLjU3MjYgMTIuOTI3NiAyMS4xMjY2IDEzLjEzMzEgMTkuNzE3MyAxMy41MTQ4QzE1LjY1ODMgMTEuNzMxMiAxMi4yMjMyIDkuMDg4ODEgOS40NzgwMyA1LjI1QzguNjQ4NjIgNy4zMzQ1NiA1LjQ1NTcyIDE0LjUyNzcgOS4yODcyIDI0LjU4MzVDOS4yODcyIDI0LjU4MzUgOC4wNjE0MiAyOS44MzE2IDEwLjMxNDggMzQuMzM4NEMxMC4zMTQ4IDM0LjMzODQgMTMuNTczNyAzMi44NjMgMTYuMTY0OCAzNC45NDAzQzE4Ljg3MzIgMzcuMTM0OSAxOC4wMDcxIDM5LjI0ODggMTkuOTE1NSA0MS4wNjkxQzIxLjU1OTcgNDIuNzUgMjQuMDAzOSA0Mi43NSAyNC4wMDM5IDQyLjc1QzI0LjAwMzkgNDIuNzUgMjYuNDQ4MSA0Mi43NSAyOC4wOTIyIDQxLjA3NjVDMzAuMDAwNiAzOS4yNjM1IDI5LjE0MTkgMzcuMTQ5NiAzMS44NDMgMzQuOTQ3NkMzNC40MjY3IDMyLjg3MDQgMzcuNjkzIDM0LjM0NTcgMzcuNjkzIDM0LjM0NTdDMzkuOTM5IDI5LjgzOSAzOC43MjA2IDI0LjU5MDkgMzguNzIwNiAyNC41OTA5QzQyLjUzNzMgMTQuNTI3NyAzOS4zNTE4IDcuMzM0NTYgMzguNTE1IDUuMjVaTTExLjMyNzcgMjMuMTk2M0M5LjI0MzE2IDE4LjkxNzEgOC42NzA2NCAxMy4wNDUxIDkuOTg0NSA4LjQwNjE5QzExLjcyNDEgMTIuODEwMiAxNC4wODc1IDE0Ljc4NDYgMTYuODk4OCAxNi44NjkyQzE1LjcwOTcgMTkuMzQyOCAxMy40NzEgMjEuNjc2OSAxMS4zMjc3IDIzLjE5NjNaTTE3LjMyNDUgMzAuNzM0NEMxNS42ODAzIDMwLjAwNzggMTUuMzM1MyAyOC41NzY1IDE1LjMzNTMgMjguNTc2NUMxNy41NzQgMjcuMTY3MiAyMC44Njk3IDI4LjI0NjIgMjAuOTcyNSAzMS41Nzg1QzE5LjI0MDIgMzAuNTI4OSAxOC42NjA0IDMxLjMxNDMgMTcuMzI0NSAzMC43MzQ0Wk0yMy45OTY1IDQyLjU2NjVDMjIuODIyMSA0Mi41NjY1IDIxLjg2NzkgNDEuNzIyNCAyMS44Njc5IDQwLjY4NzVDMjEuODY3OSAzOS42NTI1IDIyLjgyMjEgMzguODA4NCAyMy45OTY1IDM4LjgwODRDMjUuMTcwOSAzOC44MDg0IDI2LjEyNTEgMzkuNjUyNSAyNi4xMjUxIDQwLjY4NzVDMjYuMTI1MSA0MS43Mjk3IDI1LjE3MDkgNDIuNTY2NSAyMy45OTY1IDQyLjU2NjVaTTMwLjY3NTkgMzAuNzM0NEMyOS4zNCAzMS4zMjE2IDI4Ljc2NzUgMzAuNTI4OSAyNy4wMjggMzEuNTc4NUMyNy4xMzgxIDI4LjI0NjIgMzAuNDE5IDI3LjE2NzIgMzIuNjY1MSAyOC41NzY1QzMyLjY2NTEgMjguNTY5MSAzMi4zMTI3IDMwLjAwNzggMzAuNjc1OSAzMC43MzQ0Wk0zNi42NjU0IDIzLjE5NjNDMzQuNTI5NCAyMS42NzY5IDMyLjI4MzQgMTkuMzUwMSAzMS4wODcgMTYuODY5MkMzMy44OTgyIDE0Ljc4NDYgMzYuMjY5IDEyLjgwMjggMzguMDAxMiA4LjQwNjE5QzM5LjMyOTggMTMuMDQ1MSAzOC43NTczIDE4LjkyNDQgMzYuNjY1NCAyMy4xOTYzWiIgZmlsbD0iI0Y3RjdGNyIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI4MTdfMTQ1NCI+CjxyZWN0IHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgcng9IjgiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"nightly://v1?network=ethereum&url=\",\n    },\n    {\n      name: \"MetaMask (Ethereum)\",\n      url: \"https://metamask.io/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiB2aWV3Qm94PSIwIDAgMjU2IDI0MCI+PHBhdGggZmlsbD0iI0UxNzcyNiIgZD0iTTI1MC4wNjYgMEwxNDAuMjE5IDgxLjI3OWwyMC40MjctNDcuOXoiLz48cGF0aCBmaWxsPSIjRTI3NjI1IiBkPSJtNi4xOTEuMDk2bDg5LjE4MSAzMy4yODlsMTkuMzk2IDQ4LjUyOHpNMjA1Ljg2IDE3Mi44NThsNDguNTUxLjkyNGwtMTYuOTY4IDU3LjY0MmwtNTkuMjQzLTE2LjMxMXptLTE1NS43MjEgMGwyNy41NTcgNDIuMjU1bC01OS4xNDMgMTYuMzEybC0xNi44NjUtNTcuNjQzeiIvPjxwYXRoIGZpbGw9IiNFMjc2MjUiIGQ9Im0xMTIuMTMxIDY5LjU1MmwxLjk4NCA2NC4wODNsLTU5LjM3MS0yLjcwMWwxNi44ODgtMjUuNDc4bC4yMTQtLjI0NXptMzEuMTIzLS43MTVsNDAuOSAzNi4zNzZsLjIxMi4yNDRsMTYuODg4IDI1LjQ3OGwtNTkuMzU4IDIuN3pNNzkuNDM1IDE3My4wNDRsMzIuNDE4IDI1LjI1OWwtMzcuNjU4IDE4LjE4MXptOTcuMTM2LS4wMDRsNS4xMzEgNDMuNDQ1bC0zNy41NTMtMTguMTg0eiIvPjxwYXRoIGZpbGw9IiNENUJGQjIiIGQ9Im0xNDQuOTc4IDE5NS45MjJsMzguMTA3IDE4LjQ1MmwtMzUuNDQ3IDE2Ljg0NmwuMzY4LTExLjEzNHptLTMzLjk2Ny4wMDhsLTIuOTA5IDIzLjk3NGwuMjM5IDExLjMwM2wtMzUuNTMtMTYuODMzeiIvPjxwYXRoIGZpbGw9IiMyMzM0NDciIGQ9Im0xMDAuMDA3IDE0MS45OTlsOS45NTggMjAuOTI4bC0zMy45MDMtOS45MzJ6bTU1Ljk4NS4wMDJsMjQuMDU4IDEwLjk5NGwtMzQuMDE0IDkuOTI5eiIvPjxwYXRoIGZpbGw9IiNDQzYyMjgiIGQ9Im04Mi4wMjYgMTcyLjgzbC01LjQ4IDQ1LjA0bC0yOS4zNzMtNDQuMDU1em05MS45NS4wMDFsMzQuODU0Ljk4NGwtMjkuNDgzIDQ0LjA1N3ptMjguMTM2LTQ0LjQ0NGwtMjUuMzY1IDI1Ljg1MWwtMTkuNTU3LTguOTM3bC05LjM2MyAxOS42ODRsLTYuMTM4LTMzLjg0OXptLTE0OC4yMzcgMGw2MC40MzUgMi43NDlsLTYuMTM5IDMzLjg0OWwtOS4zNjUtMTkuNjgxbC0xOS40NTMgOC45MzV6Ii8+PHBhdGggZmlsbD0iI0UyNzUyNSIgZD0ibTUyLjE2NiAxMjMuMDgybDI4LjY5OCAyOS4xMjFsLjk5NCAyOC43NDl6bTE1MS42OTctLjA1MmwtMjkuNzQ2IDU3Ljk3M2wxLjEyLTI4Ljh6bS05MC45NTYgMS44MjZsMS4xNTUgNy4yN2wyLjg1NCAxOC4xMTFsLTEuODM1IDU1LjYyNWwtOC42NzUtNDQuNjg1bC0uMDAzLS40NjJ6bTMwLjE3MS0uMTAxbDYuNTIxIDM1Ljk2bC0uMDAzLjQ2MmwtOC42OTcgNDQuNzk3bC0uMzQ0LTExLjIwNWwtMS4zNTctNDQuODYyeiIvPjxwYXRoIGZpbGw9IiNGNTg0MUYiIGQ9Im0xNzcuNzg4IDE1MS4wNDZsLS45NzEgMjQuOTc4bC0zMC4yNzQgMjMuNTg3bC02LjEyLTQuMzI0bDYuODYtMzUuMzM1em0tOTkuNDcxIDBsMzAuMzk5IDguOTA2bDYuODYgMzUuMzM1bC02LjEyIDQuMzI0bC0zMC4yNzUtMjMuNTg5eiIvPjxwYXRoIGZpbGw9IiNDMEFDOUQiIGQ9Im02Ny4wMTggMjA4Ljg1OGwzOC43MzIgMTguMzUybC0uMTY0LTcuODM3bDMuMjQxLTIuODQ1aDM4LjMzNGwzLjM1OCAyLjgzNWwtLjI0OCA3LjgzMWwzOC40ODctMTguMjlsLTE4LjcyOCAxNS40NzZsLTIyLjY0NSAxNS41NTNoLTM4Ljg2OWwtMjIuNjMtMTUuNjE3eiIvPjxwYXRoIGZpbGw9IiMxNjE2MTYiIGQ9Im0xNDIuMjA0IDE5My40NzlsNS40NzYgMy44NjlsMy4yMDkgMjUuNjA0bC00LjY0NC0zLjkyMWgtMzYuNDc2bC00LjU1NiA0bDMuMTA0LTI1LjY4MWw1LjQ3OC0zLjg3MXoiLz48cGF0aCBmaWxsPSIjNzYzRTFBIiBkPSJNMjQyLjgxNCAyLjI1TDI1NiA0MS44MDdsLTguMjM1IDM5Ljk5N2w1Ljg2NCA0LjUyM2wtNy45MzUgNi4wNTRsNS45NjQgNC42MDZsLTcuODk3IDcuMTkxbDQuODQ4IDMuNTExbC0xMi44NjYgMTUuMDI2bC01Mi43Ny0xNS4zNjVsLS40NTctLjI0NWwtMzguMDI3LTMyLjA3OHptLTIyOS42MjggMGw5OC4zMjYgNzIuNzc3bC0zOC4wMjggMzIuMDc4bC0uNDU3LjI0NWwtNTIuNzcgMTUuMzY1bC0xMi44NjYtMTUuMDI2bDQuODQ0LTMuNTA4bC03Ljg5Mi03LjE5NGw1Ljk1Mi00LjYwMWwtOC4wNTQtNi4wNzFsNi4wODUtNC41MjZMMCA0MS44MDl6Ii8+PHBhdGggZmlsbD0iI0Y1ODQxRiIgZD0ibTE4MC4zOTIgMTAzLjk5bDU1LjkxMyAxNi4yNzlsMTguMTY1IDU1Ljk4NmgtNDcuOTI0bC0zMy4wMi40MTZsMjQuMDE0LTQ2LjgwOHptLTEwNC43ODQgMGwtMTcuMTUxIDI1Ljg3M2wyNC4wMTcgNDYuODA4bC0zMy4wMDUtLjQxNkgxLjYzMWwxOC4wNjMtNTUuOTg1em04Ny43NzYtNzAuODc4bC0xNS42MzkgNDIuMjM5bC0zLjMxOSA1Ny4wNmwtMS4yNyAxNy44ODVsLS4xMDEgNDUuNjg4aC0zMC4xMTFsLS4wOTgtNDUuNjAybC0xLjI3NC0xNy45ODZsLTMuMzItNTcuMDQ1bC0xNS42MzctNDIuMjM5eiIvPjwvc3ZnPg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://link.metamask.io/dapp/\",\n    },\n    {\n      name: \"Coinbase Wallet (Ethereum)\",\n      url: \"https://wallet.coinbase.com/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAyNCIgaGVpZ2h0PSIxMDI0IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8Y2lyY2xlIGN4PSI1MTIiIGN5PSI1MTIiIHI9IjUxMiIgZmlsbD0iIzAwNTJGRiIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTUxMiAyOTZDMzkyLjQ3MSAyOTYgMjk2IDM5Mi40NzEgMjk2IDUxMkMyOTYgNjMxLjUyOSAzOTIuNDcxIDcyOCA1MTIgNzI4QzYzMS41MjkgNzI4IDcyOCA2MzEuNTI5IDcyOCA1MTJDNzI4IDM5Mi40NzEgNjMxLjUyOSAyOTYgNTEyIDI5NlpNNDIwLjggNDY0LjhDNDIwLjggNDUyLjU5NiA0MzAuNTk2IDQ0Mi44IDQ0Mi44IDQ0Mi44SDU4MS4yQzU5My40MDQgNDQyLjggNjAzLjIgNDUyLjU5NiA2MDMuMiA0NjQuOFY1NTkuMkM2MDMuMiA1NzEuNDA0IDU5My40MDQgNTgxLjIgNTgxLjIgNTgxLjJINDQyLjhDNDMwLjU5NiA1ODEuMiA0MjAuOCA1NzEuNDA0IDQyMC44IDU1OS4yVjQ2NC44WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://wallet.coinbase.com/wsegue?cb_url=\",\n    },\n    {\n      name: \"Backpack (Ethereum)\",\n      url: \"https://backpack.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CjxyZWN0IHg9IjEwIiB3aWR0aD0iNDQiIGhlaWdodD0iNjQiIGZpbGw9InVybCgjcGF0dGVybjBfMTdfNCkiLz4KPGRlZnM+CjxwYXR0ZXJuIGlkPSJwYXR0ZXJuMF8xN180IiBwYXR0ZXJuQ29udGVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgd2lkdGg9IjEiIGhlaWdodD0iMSI+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlMF8xN180IiB0cmFuc2Zvcm09InNjYWxlKDAuMDE4MTgxOCAwLjAxMjUpIi8+CjwvcGF0dGVybj4KPGltYWdlIGlkPSJpbWFnZTBfMTdfNCIgd2lkdGg9IjU1IiBoZWlnaHQ9IjgwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURjQUFBQlFDQVlBQUFDOUt1MmtBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBUWpTVVJCVkhnQjdadlJjZHRHRUliL1BkTFBvUjh6SThsVUJXWUY1TG1DT0JWWXFzQmhCWllyaUZPQjVRcXNWT0FqWFlDWkNrUmJtc2xqK0I0U20xMlFZaUNKU2tqY3dpSXc5ODF3UUkxQTRIN2NZZkh2M29GUUFaZmVkOXBBanhib3dmRnpCanBZZnRZdzA4UXh2bklMa3prd09RNWhCbU1JaGx4NTc2WFZiOEFpNm82WUxWcHl3Um45ZnZRNW5NTUlFM0VxaXBqZk02T0xTS1JCMDh6UjhDaUVDMFRpRU1sVnYvOEdHWCt5RUtiSUVPNVN4aC96NDBZUzFYUExCdEFaS2lKakdqNzdITjZoSktYRlNkRG90ak8rUkxYTTVvNk95d2FiTmtvaVArenF5VUUwbFNzMGtXSDVsUml6ckFWdHlJeVFiM1cvNlVQSG1PUGZvYXpEMFMzUVlaSkFSSGdPRFVqTXZSYmc1WHYwL1pkSUpLckgxS0hjNVUrSnFMb3RCbzdDaVdjU0xHWS9oakJGUlVTTDIrQWplMWcrMEhleFh4SjFNZEV0WlRTeThwdWx4S21nSnd1Y3NPT2ZSSWhIVlJDQytNMFBUMW9JWlhwNEozRUZZK3p4blNIQ09STjlPQXdoYlAyYmJYYkszWWdZNDhjUWRRL0pIdHBFdzIxNjhuK05zL2pIMTduTjJnZGhDdVBsWE5xempiRitzT2Z5UU1IOGNXOUViVUo2Y1U1MCtsRGcyU2h1SmV6VEt1bTBhWWQ0VU4weTg3MnNQTzdBRWxtSlhtd1N1SEZZbWdtVEU1T2tMZUxzbng2TXdyRitEc2VqcCtyMDJkR3BCSWtwWXBGMmFudTFRKzZmL2c3Zit2MWZDZlFMSWxGUkIxdmtZbGQ5ZnlZdGpFNU1HZnp1YUR3ZTNtcEQ4WTl2M3A5SUZ2d2VrVWp4NTNTWFdvalZlZUhvUmZGUmNXdFlPbzYvZ25LOTN1NWE1SkY2aWV4UHZ5RVN2VURGNGJrV3AxY3Z0ZzZpeFozRGNUaERDZVlPWjFnbHVHWFJoTGVkWVgxTHJjV1o5QnFYdi9yTGFCZmZlOUtJMXpmZmNuRnFxMHlxVitJQkVRRTVrM0pDSjdlSldJbVQyc2NyR0hBUXdnUVIvQTJEUjRPUzRhVnVWc09TUGZZQXU1STY1NTFGMTk3M09PTXZNRUFmMWpFTnpKMVJ4bi9CZ0xZWUJaY3RiQ3JGK1FFUjUycGlmMTlrc1lCM1lvSE1Ebmd6MXN0aWRlOHJVdi9zdVZVQjFPcVFyMjdxSnJ1aU9hT1k2aE1ZUWNRL1NFQmhPNGN1WVhqTzVXeFVtdzNzVndHdDVUZ3h5VjFZSXZuZjlXQ3dVMFB6L1kzelJobmlIYm9lK0VzWkRsMFlvMWFzSlViMnY4b0JWZFprOVB4MDFSOHdxbVExWTBvdFRIVlNaS0dKcWtTeXlpdG5ldXJLeFQwaTBUT3IrMHdTVjFlU3VMcVN4TldWSks2dUpIRjFKWW1ySzFwbUNHZ2lSQmRPWnlaTjVzbjJDWmtYYkJPRzZ5bXNteEowM2RIRk83R1Y3MFFpa2JoSEhpMTFOUTRSblZndG4zOVVTTmRiYzlDVkRXUzFOR1Avb0xkYVR2ZG9JQ1NUTXVvdDdhYXc5b2g4S1Q4YVRCSlhWNUs0dXBMRTFaVWtycTQwWHB6NSs5bjdncE5VcDVIaWRLbUdrOXlua2VLWVNNU0Iva0FEa1pSbjZzamhIQTBreTJpMExETU1CbDhzWDIxNWJQUitPeGlQanZOSGdaVFVmMjVNU1YxcUtMcm1iUG0xZ0w1YmdBeGVoRDZUZjNTcldQQm16RXlqUFM5ZnVwOHc0ZGJMZy84QUhSZXNCMHpiQzQ0QUFBQUFTVVZPUks1Q1lJST0iLz4KPC9kZWZzPgo8L3N2Zz4K\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://backpack.app/ul/v1?url=\",\n    },\n    {\n      name: \"OKX Wallet (Ethereum)\",\n      url: \"https://chromewebstore.google.com/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge\",\n      icon: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJDSURBVHgB7Zq9jtpAEMfHlhEgQLiioXEkoAGECwoKxMcTRHmC5E3IoyRPkPAEkI7unJYmTgEFTYwA8a3NTKScLnCHN6c9r1e3P2llWQy7M/s1Gv1twCP0ej37dDq9x+Zut1t3t9vZjDEHIiSRSPg4ZpDL5fxkMvn1cDh8m0wmfugfO53OoFQq/crn8wxfY9EymQyrVCqMfHvScZx1p9ls3pFxXBy/bKlUipGPrVbLuQqAfsCliq3zl0H84zwtjQrOw4Mt1W63P5LvBm2d+Xz+YzqdgkqUy+WgWCy+Mc/nc282m4FqLBYL+3g8fjDxenq72WxANZbLJeA13zDX67UDioL5ybXwafMYu64Ltn3bdDweQ5R97fd7GyhBQMipx4POeEDHIu2LfDdBIGGz+hJ9CQ1ABjoA2egAZPM6AgiCAEQhsi/C4jHyPA/6/f5NG3Ks2+3CYDC4aTccDrn6ojG54MnEvG00GoVmWLIRNZ7wTCwDHYBsdACy0QHIhiuRETxlICWpMMhGZHmqS8qH6JLyGegAZKMDkI0uKf8X4SWlaZo+Pp1bRrwlJU8ZKLIvUjKh0WiQ3sRUbNVq9c5Ebew7KEo2m/1p4jJ4qAmDaqDQBzj5XyiAT4VCQezJigAU+IDU+z8vJFnGWeC+bKQV/5VZ71FV6L7PA3gg3tXrdQ+DgLhC+75Wq3no69P3MC0NFQpx2lL04Ql9gHK1bRDjsSBIvScBnDTk1WrlGIZBorIDEYJj+rhdgnQ67VmWRe0zlplXl81vcyEt0rSoYDUAAAAASUVORK5CYII=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Bitget Wallet (Ethereum)\",\n      url: \"https://web3.bitget.com\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSIjMDAxRjI5Ii8+CjxwYXRoIGQ9Ik0yMTkuOTQ4IDk1LjcwMjJDMjAxLjYyMyA5NS42OTI5IDE4My4zMyA5NS42ODM1IDE2NC45NDEgOTUuNzExNkMxNTMuODIyIDk1LjcxMTYgMTQ5LjY1MSAxMDkuNjcxIDE1Ny45MjEgMTE3LjkzOUwyODMuMDk4IDI0My4xMTdDMjg3LjAwNCAyNDYuNjkgMjg5LjQ0MSAyNTAuNTc0IDI4OS41MyAyNTUuNjkzQzI4OS40NDEgMjYwLjgxMiAyODcuMDA0IDI2NC42OTYgMjgzLjA5OCAyNjguMjY5TDE1Ny45MjEgMzkzLjQ0NkMxNDkuNjUxIDQwMS43MTUgMTUzLjgyMiA0MTUuNjc0IDE2NC45NDEgNDE1LjY3NEMxODMuMzMgNDE1LjcwMiAyMDEuNjIzIDQxNS42OTMgMjE5Ljk0OCA0MTUuNjgzQzIyOS4xMjIgNDE1LjY3OSAyMzguMzA1IDQxNS42NzQgMjQ3LjUxMSA0MTUuNjc0QzI1OS41NTUgNDE1LjY3NCAyNjYuNzIgNDA5LjI0IDI3My4xNTQgNDAyLjgwNUwzODYuMDQ3IDI4OS45MTJDMzk1LjA1NyAyODAuOTAyIDQwMy4xMTkgMjY4LjkzOSA0MDMuMDA5IDI1NS42OTNDNDAzLjExOSAyNDIuNDQ3IDM5NS4wNTcgMjMwLjQ4NCAzODYuMDQ3IDIyMS40NzRMMjczLjE1NCAxMDguNThDMjY2LjcyIDEwMi4xNDYgMjU5LjU1NSA5NS43MTE2IDI0Ny41MTEgOTUuNzExNkMyMzguMzA1IDk1LjcxMTYgMjI5LjEyMiA5NS43MDY5IDIxOS45NDggOTUuNzAyMloiIGZpbGw9IiMwMEYwRkYiLz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Trust Wallet (Ethereum)\",\n      url: \"https://trustwallet.com/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Rabby (Ethereum)\",\n      url: \"https://rabby.io/\",\n      icon: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAABtlBMVEUAAAB1hfV1gPhxgvKGjvVyg/NygvJAKqOPn/+AjPV3hvRxgvN2hvQ/KKWiov9zgvGcn/twgPNNRb+mpv9xgvGkpP+PlvlFMa90g/GEj/eCjfVwgPKXn/uGkPiGkPZxfOthZNpXT8VCLaqen/2SmfpocuZPSMKJk/iYnf2UmvpwgPFUU8t/i/ZseexjaN6lpf+Nk/hDMKyJk/dNQLxGNbGfoP2AjfWZn/twgPODj/ePl/uAjfVGNrOZnfpwgPGIk/hxgfSipfxlbd+hof+UnPxmbNyFj/poeOdAQK9AIJ9wgfNvgPKPlvmSmPqNlfmBjPaanfyXnPuKk/iVmvuTmfqDjvZlbeGdoP2bnvyHkfeFj/ehov6gof18ifR5h/NmcORygvJseuxqdeloc+djat9eYNZIOLVHNLCJkvh7iPR2hfNgZdujpP5+i/Z+ivR1hPNte+5rd+tiZ92mpf9vfvBufe9wdeRfYtlbXNNaWdFYVc1UT8dSS8RQR8FPRL9KPLhBK6l3hvN+hO11e+heXdRkYdNWUcpMQLxDMK0/KKaHjfN2futaWM99he92f+x6eeJvb95satovxyQQAAAASnRSTlMAIBDv35+AIBDv37+voH9QQEAg39+/v2dgX0AwIO/v7+/v79/f39/Qz8/Pz7+/v6+vr6CgoJ+fj4+Af39/cHBvb2BgX19QMCAQENRxhjIAAAH8SURBVDjLdZP3Q9pAFMeP6YCCtq62du+9995tLkPAgKCJgCUhoeKgtLUuZLRQu/yPfXcJYNC835LP5959c++CdlbQ7/OPOJB9DaSSuixdPmgrXFpZXY7+nRXcdsr+s2s/15WaICbch2yMW+uKWlfK8Wz4oV2T2/VSSS2HeXao20bp2ldqqGWe5S6AYac01F8sN37e+toZ9Ho83qDTUP5xXCR0bwd2eFxMcm5Dlnruwkl1X4cGkdBEX4s/d2EGJ+d0TYJTeIvO8SCExiZONfl9jImgb2j5WUE8cjMMQgSE2CuDexnMMAw0kLW8IIqJbJhlyQ6xqUHKDxNODVkCIRGHBhBhDIRJmsJncAYX5+W2EKJCgDRo8vlUekYzhXESYWry0zX4Pp+BcRH4dFoQ41me50jGGAgH0EVz/WeyPvpxMd+KQIUCwtjkC+npaHQxt2mJUCggF25xWJ/LVNoRYtBgED2lPLUwY/DqJonAtiKMwpC8uGjyr5lvS3+yZIfTqO9J4E7gBZ14v8lzhH+v1iow6teWQV9Jt/mP5ZXVtZobWerdGZP/ppxc3MfIWi+vHs9Ul9pcUYdRZznfHKt8gfq/dUJR1frJXYKjl1wWGPXQ6PvhG6XGbi5rkiCIR5/Rxw9dHbzfpcvQoOeBswM0uXFfHwHeu0YG9F7/3r/jNk9Ow0G2UrkeAAAAAElFTkSuQmCC\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Rainbow (Ethereum)\",\n      url: \"https://rainbow.me/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Safe (Ethereum)\",\n      url: \"https://safe.global/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n  ];\n\nexport const suiStandardSupportedWalletList: Array<AptosStandardSupportedWallet> =\n  [\n    {\n      name: \"Slush (Sui)\",\n      url: \"https://slush.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAgMTZDMCA3LjE2MzQ0IDcuMTYzNDQgMCAxNiAwVjBDMjQuODM2NiAwIDMyIDcuMTYzNDQgMzIgMTZWMTZDMzIgMjQuODM2NiAyNC44MzY2IDMyIDE2IDMyVjMyQzcuMTYzNDQgMzIgMCAyNC44MzY2IDAgMTZWMTZaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEuMjQyMzUgMTZDMS4yNDIzNSAyNC4xNTA0IDcuODQ5NTggMzAuNzU3NiAxNiAzMC43NTc2QzI0LjE1MDQgMzAuNzU3NiAzMC43NTc2IDI0LjE1MDQgMzAuNzU3NiAxNkMzMC43NTc2IDcuODQ5NTggMjQuMTUwNCAxLjI0MjM1IDE2IDEuMjQyMzVDNy44NDk1OCAxLjI0MjM1IDEuMjQyMzUgNy44NDk1OCAxLjI0MjM1IDE2Wk0xNiAwQzcuMTYzNDQgMCAwIDcuMTYzNDQgMCAxNkMwIDI0LjgzNjYgNy4xNjM0NCAzMiAxNiAzMkMyNC44MzY2IDMyIDMyIDI0LjgzNjYgMzIgMTZDMzIgNy4xNjM0NCAyNC44MzY2IDAgMTYgMFoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xMC43MjA2IDIwLjA3NDVDMTEuMjI0NSAyMS45NTUxIDEzLjEwNjYgMjMuNjU3NSAxNy4wMDA3IDIyLjYxNDFDMjAuNzE2MyAyMS42MTg1IDIzLjA0NDkgMTguNTYyIDIyLjQ0MTEgMTYuMzA4NUMyMi4yMzI2IDE1LjUzMDMgMjEuNjA0NSAxNS4wMDM2IDIwLjYzNjIgMTUuMDg5M0wxMS45Nzc5IDE1LjgxMDdDMTEuNDMyNyAxNS44NTI1IDExLjE4MjYgMTUuNzYzMiAxMS4wMzg0IDE1LjQxOTVDMTAuODk4NSAxNS4wOTIxIDEwLjk3ODIgMTQuNzQwNiAxMS42MzY4IDE0LjQwNzhMMTguMjI1OSAxMS4wMjYzQzE4LjczMDkgMTAuNzY5MyAxOS4wNjczIDEwLjY2MTggMTkuMzc0NyAxMC43NzA2QzE5LjU2NzQgMTAuODQwNiAxOS42OTQyIDExLjExOTQgMTkuNTc3NyAxMS40NjM0TDE5LjE1MDUgMTIuNzI0NkMxOC42MjYyIDE0LjI3MjYgMTkuNzQ4NiAxNC42MzIxIDIwLjM4MTMgMTQuNDYyNkMyMS4zMzg2IDE0LjIwNiAyMS41NjM5IDEzLjI5NDMgMjEuMjU1NCAxMi4xNDMyQzIwLjQ3MzUgOS4yMjUxIDE3LjM3NzYgOC43Njg4NSAxNC41NzA2IDkuNTIwOTdDMTEuNzE0OSAxMC4yODYxIDkuMjM5NTIgMTIuNjAwMSA5Ljk5NTM3IDE1LjQyMUMxMC4xNzM1IDE2LjA4NTcgMTAuNzg1MyAxNi42MTY4IDExLjQ5NCAxNi42MDA2TDEyLjU3NTkgMTYuNTk4QzEyLjc5ODQgMTYuNTkyOSAxMi43MTgzIDE2LjYxMTIgMTMuMTQ3NSAxNi41NzU2QzEzLjU3NjggMTYuNTQgMTQuNzIzMSAxNi4zOTkgMTQuNzIzMSAxNi4zOTlMMjAuMzQ4MyAxNS43NjI0TDIwLjQ5MzIgMTUuNzQxM0MyMC44MjIyIDE1LjY4NTIgMjEuMDcwOCAxNS43NzA3IDIxLjI4MSAxNi4xMzI4QzIxLjU5NTYgMTYuNjc0NyAyMS4xMTU3IDE3LjA4MzMgMjAuNTQxMSAxNy41NzI1QzIwLjUyNTggMTcuNTg1NiAyMC41MTAzIDE3LjU5ODcgMjAuNDk0OCAxNy42MTE5TDE1LjU1MDEgMjEuODczNEMxNC43MDI2IDIyLjYwNDQgMTQuMTA3MiAyMi4zMjk1IDEzLjg5ODcgMjEuNTUxM0wxMy4xNjAyIDE4Ljc5NTNDMTIuOTc3OCAxOC4xMTQ0IDEyLjMxMjkgMTcuNTgwMSAxMS41MzQxIDE3Ljc4ODhDMTAuNTYwNiAxOC4wNDk3IDEwLjQ4MTcgMTkuMTgyOSAxMC43MjA2IDIwLjA3NDVaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Phantom (Sui)\",\n      url: \"https://phantom.com/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTA4IiBoZWlnaHQ9IjEwOCIgdmlld0JveD0iMCAwIDEwOCAxMDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIxMDgiIGhlaWdodD0iMTA4IiByeD0iMjYiIGZpbGw9IiNBQjlGRjIiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00Ni41MjY3IDY5LjkyMjlDNDIuMDA1NCA3Ni44NTA5IDM0LjQyOTIgODUuNjE4MiAyNC4zNDggODUuNjE4MkMxOS41ODI0IDg1LjYxODIgMTUgODMuNjU2MyAxNSA3NS4xMzQyQzE1IDUzLjQzMDUgNDQuNjMyNiAxOS44MzI3IDcyLjEyNjggMTkuODMyN0M4Ny43NjggMTkuODMyNyA5NCAzMC42ODQ2IDk0IDQzLjAwNzlDOTQgNTguODI1OCA4My43MzU1IDc2LjkxMjIgNzMuNTMyMSA3Ni45MTIyQzcwLjI5MzkgNzYuOTEyMiA2OC43MDUzIDc1LjEzNDIgNjguNzA1MyA3Mi4zMTRDNjguNzA1MyA3MS41NzgzIDY4LjgyNzUgNzAuNzgxMiA2OS4wNzE5IDY5LjkyMjlDNjUuNTg5MyA3NS44Njk5IDU4Ljg2ODUgODEuMzg3OCA1Mi41NzU0IDgxLjM4NzhDNDcuOTkzIDgxLjM4NzggNDUuNjcxMyA3OC41MDYzIDQ1LjY3MTMgNzQuNDU5OEM0NS42NzEzIDcyLjk4ODQgNDUuOTc2OCA3MS40NTU2IDQ2LjUyNjcgNjkuOTIyOVpNODMuNjc2MSA0Mi41Nzk0QzgzLjY3NjEgNDYuMTcwNCA4MS41NTc1IDQ3Ljk2NTggNzkuMTg3NSA0Ny45NjU4Qzc2Ljc4MTYgNDcuOTY1OCA3NC42OTg5IDQ2LjE3MDQgNzQuNjk4OSA0Mi41Nzk0Qzc0LjY5ODkgMzguOTg4NSA3Ni43ODE2IDM3LjE5MzEgNzkuMTg3NSAzNy4xOTMxQzgxLjU1NzUgMzcuMTkzMSA4My42NzYxIDM4Ljk4ODUgODMuNjc2MSA0Mi41Nzk0Wk03MC4yMTAzIDQyLjU3OTVDNzAuMjEwMyA0Ni4xNzA0IDY4LjA5MTYgNDcuOTY1OCA2NS43MjE2IDQ3Ljk2NThDNjMuMzE1NyA0Ny45NjU4IDYxLjIzMyA0Ni4xNzA0IDYxLjIzMyA0Mi41Nzk1QzYxLjIzMyAzOC45ODg1IDYzLjMxNTcgMzcuMTkzMSA2NS43MjE2IDM3LjE5MzFDNjguMDkxNiAzNy4xOTMxIDcwLjIxMDMgMzguOTg4NSA3MC4yMTAzIDQyLjU3OTVaIiBmaWxsPSIjRkZGREY4Ii8+Cjwvc3ZnPgo=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: `https://phantom.app/ul/browse/`,\n    },\n\n    {\n      name: \"Nightly (Sui)\",\n      url: \"https://nightly.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzI4MTdfMTQ1NCkiPgo8cGF0aCBkPSJNMCAwSDQ4VjQ4SDBWMFoiIGZpbGw9IiMxODFDMkYiLz4KPHBhdGggZD0iTTM4LjUxNSA1LjI1QzM1Ljc2OTkgOS4wODE0NyAzMi4zMzQ4IDExLjczODUgMjguMjc1NyAxMy41MTQ4QzI2Ljg2NjUgMTMuMTI1OCAyNS40MjA1IDEyLjkyNzYgMjMuOTk2NSAxMi45NDIzQzIyLjU3MjYgMTIuOTI3NiAyMS4xMjY2IDEzLjEzMzEgMTkuNzE3MyAxMy41MTQ4QzE1LjY1ODMgMTEuNzMxMiAxMi4yMjMyIDkuMDg4ODEgOS40NzgwMyA1LjI1QzguNjQ4NjIgNy4zMzQ1NiA1LjQ1NTcyIDE0LjUyNzcgOS4yODcyIDI0LjU4MzVDOS4yODcyIDI0LjU4MzUgOC4wNjE0MiAyOS44MzE2IDEwLjMxNDggMzQuMzM4NEMxMC4zMTQ4IDM0LjMzODQgMTMuNTczNyAzMi44NjMgMTYuMTY0OCAzNC45NDAzQzE4Ljg3MzIgMzcuMTM0OSAxOC4wMDcxIDM5LjI0ODggMTkuOTE1NSA0MS4wNjkxQzIxLjU1OTcgNDIuNzUgMjQuMDAzOSA0Mi43NSAyNC4wMDM5IDQyLjc1QzI0LjAwMzkgNDIuNzUgMjYuNDQ4MSA0Mi43NSAyOC4wOTIyIDQxLjA3NjVDMzAuMDAwNiAzOS4yNjM1IDI5LjE0MTkgMzcuMTQ5NiAzMS44NDMgMzQuOTQ3NkMzNC40MjY3IDMyLjg3MDQgMzcuNjkzIDM0LjM0NTcgMzcuNjkzIDM0LjM0NTdDMzkuOTM5IDI5LjgzOSAzOC43MjA2IDI0LjU5MDkgMzguNzIwNiAyNC41OTA5QzQyLjUzNzMgMTQuNTI3NyAzOS4zNTE4IDcuMzM0NTYgMzguNTE1IDUuMjVaTTExLjMyNzcgMjMuMTk2M0M5LjI0MzE2IDE4LjkxNzEgOC42NzA2NCAxMy4wNDUxIDkuOTg0NSA4LjQwNjE5QzExLjcyNDEgMTIuODEwMiAxNC4wODc1IDE0Ljc4NDYgMTYuODk4OCAxNi44NjkyQzE1LjcwOTcgMTkuMzQyOCAxMy40NzEgMjEuNjc2OSAxMS4zMjc3IDIzLjE5NjNaTTE3LjMyNDUgMzAuNzM0NEMxNS42ODAzIDMwLjAwNzggMTUuMzM1MyAyOC41NzY1IDE1LjMzNTMgMjguNTc2NUMxNy41NzQgMjcuMTY3MiAyMC44Njk3IDI4LjI0NjIgMjAuOTcyNSAzMS41Nzg1QzE5LjI0MDIgMzAuNTI4OSAxOC42NjA0IDMxLjMxNDMgMTcuMzI0NSAzMC43MzQ0Wk0yMy45OTY1IDQyLjU2NjVDMjIuODIyMSA0Mi41NjY1IDIxLjg2NzkgNDEuNzIyNCAyMS44Njc5IDQwLjY4NzVDMjEuODY3OSAzOS42NTI1IDIyLjgyMjEgMzguODA4NCAyMy45OTY1IDM4LjgwODRDMjUuMTcwOSAzOC44MDg0IDI2LjEyNTEgMzkuNjUyNSAyNi4xMjUxIDQwLjY4NzVDMjYuMTI1MSA0MS43Mjk3IDI1LjE3MDkgNDIuNTY2NSAyMy45OTY1IDQyLjU2NjVaTTMwLjY3NTkgMzAuNzM0NEMyOS4zNCAzMS4zMjE2IDI4Ljc2NzUgMzAuNTI4OSAyNy4wMjggMzEuNTc4NUMyNy4xMzgxIDI4LjI0NjIgMzAuNDE5IDI3LjE2NzIgMzIuNjY1MSAyOC41NzY1QzMyLjY2NTEgMjguNTY5MSAzMi4zMTI3IDMwLjAwNzggMzAuNjc1OSAzMC43MzQ0Wk0zNi42NjU0IDIzLjE5NjNDMzQuNTI5NCAyMS42NzY5IDMyLjI4MzQgMTkuMzUwMSAzMS4wODcgMTYuODY5MkMzMy44OTgyIDE0Ljc4NDYgMzYuMjY5IDEyLjgwMjggMzguMDAxMiA4LjQwNjE5QzM5LjMyOTggMTMuMDQ1MSAzOC43NTczIDE4LjkyNDQgMzYuNjY1NCAyMy4xOTYzWiIgZmlsbD0iI0Y3RjdGNyIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzI4MTdfMTQ1NCI+CjxyZWN0IHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgcng9IjgiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"nightly://v1?network=sui&url=\",\n    },\n\n    {\n      name: \"Backpack (Sui)\",\n      url: \"https://backpack.app/\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CjxyZWN0IHg9IjEwIiB3aWR0aD0iNDQiIGhlaWdodD0iNjQiIGZpbGw9InVybCgjcGF0dGVybjBfMTdfNCkiLz4KPGRlZnM+CjxwYXR0ZXJuIGlkPSJwYXR0ZXJuMF8xN180IiBwYXR0ZXJuQ29udGVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgd2lkdGg9IjEiIGhlaWdodD0iMSI+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlMF8xN180IiB0cmFuc2Zvcm09InNjYWxlKDAuMDE4MTgxOCAwLjAxMjUpIi8+CjwvcGF0dGVybj4KPGltYWdlIGlkPSJpbWFnZTBfMTdfNCIgd2lkdGg9IjU1IiBoZWlnaHQ9IjgwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURjQUFBQlFDQVlBQUFDOUt1MmtBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBUWpTVVJCVkhnQjdadlJjZHRHRUliL1BkTFBvUjh6SThsVUJXWUY1TG1DT0JWWXFzQmhCWllyaUZPQjVRcXNWT0FqWFlDWkNrUmJtc2xqK0I0U20xMlFZaUNKU2tqY3dpSXc5ODF3UUkxQTRIN2NZZkh2M29GUUFaZmVkOXBBanhib3dmRnpCanBZZnRZdzA4UXh2bklMa3prd09RNWhCbU1JaGx4NTc2WFZiOEFpNm82WUxWcHl3Um45ZnZRNW5NTUlFM0VxaXBqZk02T0xTS1JCMDh6UjhDaUVDMFRpRU1sVnYvOEdHWCt5RUtiSUVPNVN4aC96NDBZUzFYUExCdEFaS2lKakdqNzdITjZoSktYRlNkRG90ak8rUkxYTTVvNk95d2FiTmtvaVArenF5VUUwbFNzMGtXSDVsUml6ckFWdHlJeVFiM1cvNlVQSG1PUGZvYXpEMFMzUVlaSkFSSGdPRFVqTXZSYmc1WHYwL1pkSUpLckgxS0hjNVUrSnFMb3RCbzdDaVdjU0xHWS9oakJGUlVTTDIrQWplMWcrMEhleFh4SjFNZEV0WlRTeThwdWx4S21nSnd1Y3NPT2ZSSWhIVlJDQytNMFBUMW9JWlhwNEozRUZZK3p4blNIQ09STjlPQXdoYlAyYmJYYkszWWdZNDhjUWRRL0pIdHBFdzIxNjhuK05zL2pIMTduTjJnZGhDdVBsWE5xempiRitzT2Z5UU1IOGNXOUViVUo2Y1U1MCtsRGcyU2h1SmV6VEt1bTBhWWQ0VU4weTg3MnNQTzdBRWxtSlhtd1N1SEZZbWdtVEU1T2tMZUxzbng2TXdyRitEc2VqcCtyMDJkR3BCSWtwWXBGMmFudTFRKzZmL2c3Zit2MWZDZlFMSWxGUkIxdmtZbGQ5ZnlZdGpFNU1HZnp1YUR3ZTNtcEQ4WTl2M3A5SUZ2d2VrVWp4NTNTWFdvalZlZUhvUmZGUmNXdFlPbzYvZ25LOTN1NWE1SkY2aWV4UHZ5RVN2VURGNGJrV3AxY3Z0ZzZpeFozRGNUaERDZVlPWjFnbHVHWFJoTGVkWVgxTHJjV1o5QnFYdi9yTGFCZmZlOUtJMXpmZmNuRnFxMHlxVitJQkVRRTVrM0pDSjdlSldJbVQyc2NyR0hBUXdnUVIvQTJEUjRPUzRhVnVWc09TUGZZQXU1STY1NTFGMTk3M09PTXZNRUFmMWpFTnpKMVJ4bi9CZ0xZWUJaY3RiQ3JGK1FFUjUycGlmMTlrc1lCM1lvSE1Ebmd6MXN0aWRlOHJVdi9zdVZVQjFPcVFyMjdxSnJ1aU9hT1k2aE1ZUWNRL1NFQmhPNGN1WVhqTzVXeFVtdzNzVndHdDVUZ3h5VjFZSXZuZjlXQ3dVMFB6L1kzelJobmlIYm9lK0VzWkRsMFlvMWFzSlViMnY4b0JWZFprOVB4MDFSOHdxbVExWTBvdFRIVlNaS0dKcWtTeXlpdG5ldXJLeFQwaTBUT3IrMHdTVjFlU3VMcVN4TldWSks2dUpIRjFKWW1ySzFwbUNHZ2lSQmRPWnlaTjVzbjJDWmtYYkJPRzZ5bXNteEowM2RIRk83R1Y3MFFpa2JoSEhpMTFOUTRSblZndG4zOVVTTmRiYzlDVkRXUzFOR1Avb0xkYVR2ZG9JQ1NUTXVvdDdhYXc5b2g4S1Q4YVRCSlhWNUs0dXBMRTFaVWtycTQwWHB6NSs5bjdncE5VcDVIaWRLbUdrOXlua2VLWVNNU0Iva0FEa1pSbjZzamhIQTBreTJpMExETU1CbDhzWDIxNWJQUitPeGlQanZOSGdaVFVmMjVNU1YxcUtMcm1iUG0xZ0w1YmdBeGVoRDZUZjNTcldQQm16RXlqUFM5ZnVwOHc0ZGJMZy84QUhSZXNCMHpiQzQ0QUFBQUFTVVZPUks1Q1lJST0iLz4KPC9kZWZzPgo8L3N2Zz4K\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n      deeplinkProvider: \"https://backpack.app/ul/v1?url=\",\n    },\n    {\n      name: \"OKX Wallet (Sui)\",\n      url: \"https://chromewebstore.google.com/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge\",\n      icon: \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJDSURBVHgB7Zq9jtpAEMfHlhEgQLiioXEkoAGECwoKxMcTRHmC5E3IoyRPkPAEkI7unJYmTgEFTYwA8a3NTKScLnCHN6c9r1e3P2llWQy7M/s1Gv1twCP0ej37dDq9x+Zut1t3t9vZjDEHIiSRSPg4ZpDL5fxkMvn1cDh8m0wmfugfO53OoFQq/crn8wxfY9EymQyrVCqMfHvScZx1p9ls3pFxXBy/bKlUipGPrVbLuQqAfsCliq3zl0H84zwtjQrOw4Mt1W63P5LvBm2d+Xz+YzqdgkqUy+WgWCy+Mc/nc282m4FqLBYL+3g8fjDxenq72WxANZbLJeA13zDX67UDioL5ybXwafMYu64Ltn3bdDweQ5R97fd7GyhBQMipx4POeEDHIu2LfDdBIGGz+hJ9CQ1ABjoA2egAZPM6AgiCAEQhsi/C4jHyPA/6/f5NG3Ks2+3CYDC4aTccDrn6ojG54MnEvG00GoVmWLIRNZ7wTCwDHYBsdACy0QHIhiuRETxlICWpMMhGZHmqS8qH6JLyGegAZKMDkI0uKf8X4SWlaZo+Pp1bRrwlJU8ZKLIvUjKh0WiQ3sRUbNVq9c5Ebew7KEo2m/1p4jJ4qAmDaqDQBzj5XyiAT4VCQezJigAU+IDU+z8vJFnGWeC+bKQV/5VZ71FV6L7PA3gg3tXrdQ+DgLhC+75Wq3no69P3MC0NFQpx2lL04Ql9gHK1bRDjsSBIvScBnDTk1WrlGIZBorIDEYJj+rhdgnQ67VmWRe0zlplXl81vcyEt0rSoYDUAAAAASUVORK5CYII=\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Bitget Wallet (Sui)\",\n      url: \"https://web3.bitget.com\",\n      icon: \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSIjMDAxRjI5Ii8+CjxwYXRoIGQ9Ik0yMTkuOTQ4IDk1LjcwMjJDMjAxLjYyMyA5NS42OTI5IDE4My4zMyA5NS42ODM1IDE2NC45NDEgOTUuNzExNkMxNTMuODIyIDk1LjcxMTYgMTQ5LjY1MSAxMDkuNjcxIDE1Ny45MjEgMTE3LjkzOUwyODMuMDk4IDI0My4xMTdDMjg3LjAwNCAyNDYuNjkgMjg5LjQ0MSAyNTAuNTc0IDI4OS41MyAyNTUuNjkzQzI4OS40NDEgMjYwLjgxMiAyODcuMDA0IDI2NC42OTYgMjgzLjA5OCAyNjguMjY5TDE1Ny45MjEgMzkzLjQ0NkMxNDkuNjUxIDQwMS43MTUgMTUzLjgyMiA0MTUuNjc0IDE2NC45NDEgNDE1LjY3NEMxODMuMzMgNDE1LjcwMiAyMDEuNjIzIDQxNS42OTMgMjE5Ljk0OCA0MTUuNjgzQzIyOS4xMjIgNDE1LjY3OSAyMzguMzA1IDQxNS42NzQgMjQ3LjUxMSA0MTUuNjc0QzI1OS41NTUgNDE1LjY3NCAyNjYuNzIgNDA5LjI0IDI3My4xNTQgNDAyLjgwNUwzODYuMDQ3IDI4OS45MTJDMzk1LjA1NyAyODAuOTAyIDQwMy4xMTkgMjY4LjkzOSA0MDMuMDA5IDI1NS42OTNDNDAzLjExOSAyNDIuNDQ3IDM5NS4wNTcgMjMwLjQ4NCAzODYuMDQ3IDIyMS40NzRMMjczLjE1NCAxMDguNThDMjY2LjcyIDEwMi4xNDYgMjU5LjU1NSA5NS43MTE2IDI0Ny41MTEgOTUuNzExNkMyMzguMzA1IDk1LjcxMTYgMjI5LjEyMiA5NS43MDY5IDIxOS45NDggOTUuNzAyMloiIGZpbGw9IiMwMEYwRkYiLz4KPC9zdmc+Cg==\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Trust (Sui)\",\n      url: \"https://trustwallet.com/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n    {\n      name: \"Ethos Defi (Sui)\",\n      url: \"https://www.ethosdefi.com/\",\n      icon: \"data:image/png;base64,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\",\n      readyState: WalletReadyState.NotDetected,\n      isAIP62Standard: true,\n    },\n  ];\n","import {\n  AptosConnectAppleWallet,\n  AptosConnectGenericWallet,\n  AptosConnectGoogleWallet,\n} from \"@aptos-connect/wallet-adapter-plugin\";\nimport type { AdapterWallet, DappConfig } from \"./WalletCore\";\n\nexport function getSDKWallets(dappConfig?: DappConfig) {\n  const sdkWallets: AdapterWallet[] = [];\n\n  // Need to check window is defined for AptosConnect\n  if (typeof window !== \"undefined\") {\n    sdkWallets.push(\n      new AptosConnectGoogleWallet({\n        network: dappConfig?.network,\n        dappId: dappConfig?.aptosConnectDappId,\n        ...dappConfig?.aptosConnect,\n      }),\n      new AptosConnectAppleWallet({\n        network: dappConfig?.network,\n        dappId: dappConfig?.aptosConnectDappId,\n        ...dappConfig?.aptosConnect,\n      }),\n      new AptosConnectGenericWallet({\n        network: dappConfig?.network,\n        dappId: dappConfig?.aptosConnectDappId,\n        ...dappConfig?.aptosConnect,\n      }),\n    );\n  }\n\n  // Add new SDK wallet plugins (ones that should be installed as packages) here:\n  // Ex. sdkWallets.push(new YourSDKWallet(dappConfig))\n\n  return sdkWallets;\n}\n","import {\n  Aptos,\n  AptosConfig,\n  Hex,\n  Network,\n  NetworkToNodeAPI,\n  type PluginSettings,\n} from \"@aptos-labs/ts-sdk\";\nimport type {\n  NetworkInfo,\n  NetworkInfo as StandardNetworkInfo,\n} from \"@aptos-labs/wallet-standard\";\nimport { WalletSignAndSubmitMessageError } from \"../error\";\nimport type { DappConfig } from \"../WalletCore\";\nimport type { InputTransactionData } from \"./types\";\n\nexport function isMobile(): boolean {\n  return /Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/i.test(\n    navigator.userAgent,\n  );\n}\n\nexport function isInAppBrowser(): boolean {\n  const isIphone = /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(\n    navigator.userAgent,\n  );\n\n  const isAndroid = /(Android).*Version\\/[\\d.]+.*Chrome\\/[^\\s]+ Mobile/i.test(\n    navigator.userAgent,\n  );\n\n  return isIphone || isAndroid;\n}\n\nexport function isRedirectable(): boolean {\n  // SSR: return false\n  if (typeof navigator === \"undefined\" || !navigator) return false;\n\n  // if we are on mobile and NOT in a in-app browser we will redirect to a wallet app\n\n  return isMobile() && !isInAppBrowser();\n}\n\nexport function generalizedErrorMessage(error: any): string {\n  return error !== null && typeof error === \"object\" && \"message\" in error\n    ? error.message\n    : error;\n}\n\n/**\n * Helper function to get AptosConfig that supports Aptos and Custom networks\n *\n * @param networkInfo\n * @param dappConfig\n * @returns AptosConfig\n */\nexport const getAptosConfig = (\n  networkInfo: NetworkInfo | null,\n  dappConfig: DappConfig | undefined,\n): AptosConfig => {\n  if (!networkInfo) {\n    throw new Error(\"Undefined network\");\n  }\n\n  const pluginSettings: PluginSettings = {\n    TRANSACTION_SUBMITTER: dappConfig?.transactionSubmitter,\n  };\n\n  if (isAptosNetwork(networkInfo)) {\n    const currentNetwork = convertNetwork(networkInfo);\n\n    if (isAptosLiveNetwork(currentNetwork)) {\n      const apiKey = dappConfig?.aptosApiKeys;\n      return new AptosConfig({\n        network: currentNetwork,\n        clientConfig: { API_KEY: apiKey ? apiKey[currentNetwork] : undefined },\n        pluginSettings,\n      });\n    }\n\n    return new AptosConfig({\n      network: currentNetwork,\n      pluginSettings,\n    });\n  }\n\n  const knownNetworks = {\n    okx: \"https://wallet.okx.com/fullnode/aptos/discover/rpc\",\n  };\n\n  if (networkInfo.url) {\n    const isKnownNetwork = Object.values(knownNetworks).includes(\n      networkInfo.url,\n    );\n\n    if (isKnownNetwork) {\n      return new AptosConfig({\n        network: Network.CUSTOM,\n        fullnode: networkInfo.url,\n        pluginSettings,\n      });\n    }\n  }\n\n  // Custom networks are not supported, please ensure that the wallet is returning the appropriate network Mainnet, Testnet, Devnet, Local\n  throw new Error(\n    `Invalid network, network ${networkInfo.name} not supported with Aptos wallet adapter to prevent user from using an unexpected network.`,\n  );\n};\n\n/**\n * Helper function to resolve if the current connected network is an Aptos network\n *\n * @param networkInfo\n * @returns boolean\n */\nexport const isAptosNetwork = (\n  networkInfo: NetworkInfo | StandardNetworkInfo | null,\n): boolean => {\n  if (!networkInfo) {\n    throw new Error(\"Undefined network\");\n  }\n  return NetworkToNodeAPI[networkInfo.name] !== undefined;\n};\n\nexport const isAptosLiveNetwork = (networkInfo: Network): boolean => {\n  return (\n    networkInfo === \"devnet\" ||\n    networkInfo === \"testnet\" ||\n    networkInfo === \"mainnet\"\n  );\n};\n\n/**\n * Helper function to fetch Devnet chain id\n */\nexport const fetchDevnetChainId = async (): Promise<number> => {\n  const aptos = new Aptos(); // default to devnet\n  return await aptos.getChainId();\n};\n\n/**\n * A helper function to handle the publish package transaction.\n * The Aptos SDK expects the metadataBytes and byteCode to be Uint8Array, but in case the arguments are passed in\n * as a string, this function converts the string to Uint8Array.\n */\nexport const handlePublishPackageTransaction = (\n  transactionInput: InputTransactionData,\n) => {\n  // convert the first argument, metadataBytes, to uint8array if is a string\n  let metadataBytes = transactionInput.data.functionArguments[0];\n  if (typeof metadataBytes === \"string\") {\n    metadataBytes = Hex.fromHexInput(metadataBytes).toUint8Array();\n  }\n\n  // convert the second argument, byteCode, to uint8array if is a string\n  let byteCode = transactionInput.data.functionArguments[1];\n  if (Array.isArray(byteCode)) {\n    byteCode = byteCode.map((byte) => {\n      if (typeof byte === \"string\") {\n        return Hex.fromHexInput(byte).toUint8Array();\n      }\n      return byte;\n    });\n  } else {\n    throw new WalletSignAndSubmitMessageError(\n      \"The bytecode argument must be an array.\",\n    ).message;\n  }\n\n  return { metadataBytes, byteCode };\n};\n\n// old => new\nexport function convertNetwork(networkInfo: NetworkInfo | null): Network {\n  switch (networkInfo?.name) {\n    case \"mainnet\" as Network:\n      return Network.MAINNET;\n    case \"testnet\" as Network:\n      return Network.TESTNET;\n    case \"devnet\" as Network:\n      return Network.DEVNET;\n    case \"local\" as Network:\n      return Network.LOCAL;\n    case \"shelbynet\" as Network:\n      return Network.SHELBYNET;\n    default:\n      throw new Error(\"Invalid Aptos network name\");\n  }\n}\n","export class WalletError extends Error {\n  public error: any;\n\n  constructor(message?: string, error?: any) {\n    super(message);\n    this.error = error;\n  }\n}\n\nexport class WalletNotSelectedError extends WalletError {\n  name = \"WalletNotSelectedError\";\n}\n\nexport class WalletNotReadyError extends WalletError {\n  name = \"WalletNotReadyError\";\n}\n\nexport class WalletLoadError extends WalletError {\n  name = \"WalletLoadError\";\n}\n\nexport class WalletConfigError extends WalletError {\n  name = \"WalletConfigError\";\n}\n\nexport class WalletConnectionError extends WalletError {\n  name = \"WalletConnectionError\";\n}\n\nexport class WalletDisconnectedError extends WalletError {\n  name = \"WalletDisconnectedError\";\n}\n\nexport class WalletDisconnectionError extends WalletError {\n  name = \"WalletDisconnectionError\";\n}\n\nexport class WalletAccountError extends WalletError {\n  name = \"WalletAccountError\";\n}\nexport class WalletGetNetworkError extends WalletError {\n  name = \"WalletGetNetworkError\";\n}\n\nexport class WalletAccountChangeError extends WalletError {\n  name = \"WalletAccountChangeError\";\n}\n\nexport class WalletNetworkChangeError extends WalletError {\n  name = \"WalletNetworkChangeError\";\n}\n\nexport class WalletPublicKeyError extends WalletError {\n  name = \"WalletPublicKeyError\";\n}\n\nexport class WalletKeypairError extends WalletError {\n  name = \"WalletKeypairError\";\n}\n\nexport class WalletNotConnectedError extends WalletError {\n  name = \"WalletNotConnectedError\";\n}\n\nexport class WalletSendTransactionError extends WalletError {\n  name = \"WalletSendTransactionError\";\n}\n\nexport class WalletSignMessageError extends WalletError {\n  name = \"WalletSignMessageError\";\n}\n\nexport class WalletSignMessageAndVerifyError extends WalletError {\n  name = \"WalletSignMessageAndVerifyError\";\n}\n\nexport class WalletSignAndSubmitMessageError extends WalletError {\n  name = \"WalletSignAndSubmitMessageError\";\n}\n\nexport class WalletSignTransactionError extends WalletError {\n  name = \"WalletSignTransactionError\";\n}\n\nexport class WalletTimeoutError extends WalletError {\n  name = \"WalletTimeoutError\";\n}\n\nexport class WalletWindowBlockedError extends WalletError {\n  name = \"WalletWindowBlockedError\";\n}\n\nexport class WalletWindowClosedError extends WalletError {\n  name = \"WalletWindowClosedError\";\n}\n\nexport class WalletResponseError extends WalletError {\n  name = \"WalletResponseError\";\n}\n\nexport class WalletNotSupportedMethod extends WalletError {\n  name = \"WalletNotSupportedMethod\";\n}\n\nexport class WalletChangeNetworkError extends WalletError {\n  name = \"WalletChangeNetworkError\";\n}\n\nexport class WalletSubmitTransactionError extends WalletError {\n  name = \"WalletSubmitTransactionError\";\n}\n\nexport class WalletNotFoundError extends WalletError {\n  name = \"WalletNotFoundError\";\n}\n","const LOCAL_STORAGE_ITEM_KEY = \"AptosWalletName\";\n\nexport function setLocalStorage(walletName: string) {\n  localStorage.setItem(LOCAL_STORAGE_ITEM_KEY, walletName);\n}\n\nexport function removeLocalStorage() {\n  localStorage.removeItem(LOCAL_STORAGE_ITEM_KEY);\n}\n\nexport function getLocalStorage() {\n  localStorage.getItem(LOCAL_STORAGE_ITEM_KEY);\n}\n","import {\n  APTOS_CONNECT_BASE_URL,\n  PETRA_WEB_BASE_URL,\n  PETRA_WEB_GENERIC_WALLET_NAME,\n  WalletReadyState,\n} from \"../constants\";\nimport type { AdapterNotDetectedWallet, AdapterWallet } from \"../WalletCore\";\nimport { isRedirectable } from \"./helpers\";\nimport type { AvailableWallets, WalletInfo } from \"./types\";\n\n/**\n * A function that will partition the provided wallets into two list — `defaultWallets` and `moreWallets`.\n * By default, the wallets will be partitioned by whether or not they are installed or loadable.\n * You can pass your own partition function if you wish to customize this behavior.\n */\nexport function partitionWallets(\n  wallets: ReadonlyArray<AdapterWallet | AdapterNotDetectedWallet>,\n  partitionFunction: (\n    wallet: AdapterWallet | AdapterNotDetectedWallet,\n  ) => boolean = isInstalledOrLoadable,\n) {\n  const defaultWallets: Array<AdapterWallet> = [];\n  const moreWallets: Array<AdapterNotDetectedWallet> = [];\n\n  for (const wallet of wallets) {\n    if (partitionFunction(wallet)) {\n      defaultWallets.push(wallet as AdapterWallet);\n    } else {\n      moreWallets.push(wallet as AdapterNotDetectedWallet);\n    }\n  }\n\n  return { defaultWallets, moreWallets };\n}\n\n/** Returns true if the wallet is installed or loadable. */\nexport function isInstalledOrLoadable(\n  wallet: AdapterWallet | AdapterNotDetectedWallet,\n): wallet is AdapterWallet {\n  return wallet.readyState === WalletReadyState.Installed;\n}\n\n/**\n * Returns true if the user is on desktop and the provided wallet requires installation of a browser extension.\n * This can be used to decide whether to show a \"Connect\" button or \"Install\" link in the UI.\n */\nexport function isInstallRequired(\n  wallet: AdapterWallet | AdapterNotDetectedWallet,\n) {\n  const isWalletReady = isInstalledOrLoadable(wallet);\n  const isMobile = !isWalletReady && isRedirectable();\n\n  return !isMobile && !isWalletReady;\n}\n\nexport function shouldUseFallbackWallet(\n  wallet: AdapterWallet | AdapterNotDetectedWallet,\n): boolean {\n  return (\n    !!wallet.fallbackWallet &&\n    isInstallRequired(wallet) &&\n    isInstalledOrLoadable(wallet.fallbackWallet)\n  );\n}\n\n/** Truncates the provided wallet address at the middle with an ellipsis. */\nexport function truncateAddress(address: string | undefined) {\n  if (!address) return;\n  return `${address.slice(0, 6)}...${address.slice(-5)}`;\n}\n\n/**\n * Returns `true` if the provided wallet is an Aptos Connect wallet.\n *\n * @deprecated Use {@link isPetraWebWallet} instead.\n */\nexport function isAptosConnectWallet(wallet: WalletInfo | AdapterWallet) {\n  return isPetraWebWallet(wallet);\n}\n\n/** Returns `true` if the provided wallet is a Petra Web wallet. This will automatically exclude the generic wallet. */\nexport function isPetraWebWallet(\n  wallet: WalletInfo | AdapterWallet,\n  ignoreGenericWallet: boolean = true,\n) {\n  if (!wallet.url) return false;\n  if (ignoreGenericWallet && isPetraWebGenericWallet(wallet)) {\n    return false;\n  }\n  return (\n    wallet.url.startsWith(APTOS_CONNECT_BASE_URL) ||\n    wallet.url.startsWith(PETRA_WEB_BASE_URL)\n  );\n}\n\n/** Returns true if the wallet is a generic wallet. */\nexport function isPetraWebGenericWallet(\n  wallet: AdapterWallet | AdapterNotDetectedWallet | WalletInfo,\n) {\n  return wallet.name === PETRA_WEB_GENERIC_WALLET_NAME;\n}\n\n/**\n * Partitions the `wallets` array so that Aptos Connect wallets are grouped separately from the rest.\n * Petra Web is a web wallet that uses social login to create accounts on the blockchain.\n *\n * @deprecated Use {@link getPetraWebWallets} instead.\n */\nexport function getAptosConnectWallets(\n  wallets: ReadonlyArray<AdapterWallet | AdapterNotDetectedWallet>,\n) {\n  const { defaultWallets, moreWallets } = partitionWallets(\n    wallets,\n    isAptosConnectWallet,\n  );\n  return {\n    aptosConnectWallets: defaultWallets,\n    otherWallets: moreWallets,\n  };\n}\n\n/**\n * Partitions the `wallets` array so that Petra Web wallets are grouped separately from the rest.\n * Petra Web is a web wallet that uses social login to create accounts on the blockchain.\n */\nexport function getPetraWebWallets(\n  wallets: ReadonlyArray<AdapterWallet | AdapterNotDetectedWallet>,\n) {\n  const { defaultWallets, moreWallets } = partitionWallets(\n    wallets,\n    isPetraWebWallet,\n  );\n  return {\n    petraWebWallets: defaultWallets,\n    otherWallets: moreWallets,\n  };\n}\n\nexport interface WalletSortingOptions {\n  /**\n   * An optional function for sorting Aptos Connect wallets.\n   *\n   * @deprecated Use {@link sortPetraWebWallets} instead.\n   */\n  sortAptosConnectWallets?: (a: AdapterWallet, b: AdapterWallet) => number;\n  /** An optional function for sorting Petra Web wallets. */\n  sortPetraWebWallets?: (a: AdapterWallet, b: AdapterWallet) => number;\n  /** An optional function for sorting wallets that are currently installed or loadable. */\n  sortAvailableWallets?: (\n    a: AdapterWallet | AdapterNotDetectedWallet,\n    b: AdapterWallet | AdapterNotDetectedWallet,\n  ) => number;\n  /** An optional function for sorting wallets that are NOT currently installed or loadable. */\n  sortInstallableWallets?: (\n    a: AdapterWallet | AdapterNotDetectedWallet,\n    b: AdapterWallet | AdapterNotDetectedWallet,\n  ) => number;\n  /**\n   * A map of wallet names to fallback wallet names.\n   * If a wallet is not installed and has a fallback wallet that IS installed,\n   * the fallback wallet will be attached to the not-installed wallet and it will\n   * be moved to the available wallets list.\n   *\n   * @example\n   * ```ts\n   * // Override the default fallbacks\n   * fallbacks: { connections: { \"Petra\": \"Petra Web\", \"OtherWallet\": \"OtherFallback\" } }\n   * ```\n   */\n  fallbacks?: {\n    /** A map of wallet names to fallback wallet names. */\n    connections: Record<string | AvailableWallets, string | AvailableWallets>;\n    /** An optional array of wallets that are available but not intended for display. These wallets will only be shown if there is logic to explicitly show them (e.g. `fallbacks`) */\n    additionalFallbackWallets?: ReadonlyArray<AdapterWallet>;\n  };\n}\n\n/**\n * Partitions the `wallets` array into three distinct groups:\n *\n * `aptosConnectWallets` - Use {@link petraWebWallets} instead.\n *\n * `petraWebWallets` - Wallets that use social login to create accounts on\n * the blockchain via Petra Web.\n *\n * `availableWallets` - Wallets that are currently installed or loadable by the client.\n *\n * `availableWalletsWithFallbacks` - Wallets that are currently uninstalled that have a fallback wallet.\n *\n * `installableWallets` - Wallets that are NOT current installed or loadable and\n * require the client to install a browser extension first.\n *\n * Additionally, these wallet groups can be sorted by passing sort functions via the `options` argument.\n */\nexport function groupAndSortWallets(\n  wallets: ReadonlyArray<AdapterWallet | AdapterNotDetectedWallet>,\n  options?: WalletSortingOptions,\n) {\n  const {\n    fallbacks: {\n      connections: fallbackConnections,\n      additionalFallbackWallets,\n    } = {},\n  } = options ?? {};\n  const { aptosConnectWallets } = getAptosConnectWallets(wallets);\n  const { otherWallets, petraWebWallets } = getPetraWebWallets(wallets);\n  const { defaultWallets, moreWallets } = partitionWallets(otherWallets);\n\n  // Attach fallback wallets to not-installed wallets and move them to available wallets if the fallback is installed\n  // TODO: Deprecate this and combine this with `availableWallets` in the next major version.\n  const availableWalletsWithFallbacks: Array<\n    AdapterWallet | AdapterNotDetectedWallet\n  > = [];\n\n  if (fallbackConnections && Object.keys(fallbackConnections).length > 0) {\n    for (let i = moreWallets.length - 1; i >= 0; i--) {\n      const wallet = moreWallets[i];\n      const fallbackName = fallbackConnections[wallet.name];\n\n      if (fallbackName) {\n        const fallbackWallet = [\n          ...wallets,\n          ...(additionalFallbackWallets ?? []),\n        ].find((w) => w.name === fallbackName && isInstalledOrLoadable(w)) as\n          | AdapterWallet\n          | undefined;\n\n        // If we found an installed fallback, attach it and move to available wallets\n        if (fallbackWallet) {\n          const walletWithFallback: AdapterNotDetectedWallet = {\n            ...wallet,\n            fallbackWallet,\n          };\n\n          // Remove from installable wallets\n          moreWallets.splice(i, 1);\n\n          // Add to the list to be added to available wallets\n          availableWalletsWithFallbacks.push(walletWithFallback);\n        }\n      }\n    }\n  }\n\n  if (options?.sortAptosConnectWallets) {\n    aptosConnectWallets.sort(options.sortAptosConnectWallets);\n  }\n  if (options?.sortPetraWebWallets) {\n    petraWebWallets.sort(options.sortPetraWebWallets);\n  }\n  if (options?.sortAvailableWallets) {\n    defaultWallets.sort(options.sortAvailableWallets);\n  }\n  if (options?.sortInstallableWallets) {\n    moreWallets.sort(options.sortInstallableWallets);\n  }\n\n  return {\n    /** @deprecated Use {@link petraWebWallets} instead. */\n    aptosConnectWallets,\n    /** Wallets that use social login to create an account on the blockchain */\n    petraWebWallets,\n    /** Wallets that are currently installed or loadable. */\n    availableWallets: defaultWallets,\n    /** Wallets that are currently uninstalled that have a fallback wallet. */\n    availableWalletsWithFallbacks,\n    /** Wallets that are NOT currently installed or loadable. */\n    installableWallets: moreWallets,\n  };\n}\n","import type { AptosConnectWalletConfig } from \"@aptos-connect/wallet-adapter-plugin\";\nimport {\n  AccountAddress,\n  type AccountAuthenticator,\n  type AnyRawTransaction,\n  Aptos,\n  type InputSubmitTransactionData,\n  Network,\n  NetworkToChainId,\n  type PendingTransactionResponse,\n  type TransactionSubmitter,\n} from \"@aptos-labs/ts-sdk\";\nimport {\n  type AccountInfo,\n  type AptosChangeNetworkOutput,\n  type AptosSignAndSubmitTransactionOutput,\n  type AptosSignInInput,\n  type AptosSignInOutput,\n  type AptosSignMessageInput,\n  type AptosSignMessageOutput,\n  type AptosSignTransactionInputV1_1,\n  type AptosSignTransactionMethod,\n  type AptosSignTransactionMethodV1_1,\n  type AptosSignTransactionOutputV1_1,\n  type AptosWallet,\n  getAptosWallets,\n  isWalletWithRequiredFeatureSet,\n  type NetworkInfo,\n  type UserResponse,\n  UserResponseStatus,\n} from \"@aptos-labs/wallet-standard\";\nimport EventEmitter from \"eventemitter3\";\n\nexport type {\n  AccountAddress,\n  AccountAuthenticator,\n  AnyPublicKey,\n  AnyRawTransaction,\n  InputGenerateTransactionOptions,\n  InputSubmitTransactionData,\n  Network,\n  PendingTransactionResponse,\n  TransactionSubmitter,\n} from \"@aptos-labs/ts-sdk\";\nexport type {\n  AccountInfo,\n  AptosChangeNetworkOutput,\n  AptosSignAndSubmitTransactionOutput,\n  AptosSignMessageInput,\n  AptosSignMessageOutput,\n  AptosSignTransactionOutputV1_1,\n  NetworkInfo,\n} from \"@aptos-labs/wallet-standard\";\n\nimport { ChainIdToAnsSupportedNetworkMap, WalletReadyState } from \"./constants\";\nimport {\n  WalletAccountChangeError,\n  WalletAccountError,\n  WalletChangeNetworkError,\n  WalletConnectionError,\n  WalletDisconnectionError,\n  WalletGetNetworkError,\n  WalletNetworkChangeError,\n  WalletNotConnectedError,\n  WalletNotFoundError,\n  WalletNotReadyError,\n  WalletNotSelectedError,\n  WalletNotSupportedMethod,\n  WalletSignAndSubmitMessageError,\n  WalletSignMessageAndVerifyError,\n  WalletSignMessageError,\n  WalletSignTransactionError,\n  WalletSubmitTransactionError,\n} from \"./error\";\nimport { GA4 } from \"./ga\";\nimport {\n  aptosStandardSupportedWalletList,\n  ethereumStandardSupportedWalletList,\n  solanaStandardSupportedWalletList,\n  suiStandardSupportedWalletList,\n} from \"./registry\";\nimport { getSDKWallets } from \"./sdkWallets\";\nimport {\n  fetchDevnetChainId,\n  generalizedErrorMessage,\n  getAptosConfig,\n  handlePublishPackageTransaction,\n  isAptosNetwork,\n  isRedirectable,\n  removeLocalStorage,\n  setLocalStorage,\n} from \"./utils\";\nimport type {\n  AptosStandardSupportedWallet,\n  AvailableWallets,\n  InputTransactionData,\n} from \"./utils/types\";\nimport { WALLET_ADAPTER_CORE_VERSION } from \"./version\";\n\n// An adapter wallet types is a wallet that is compatible with the wallet standard and the wallet adapter properties\nexport type AdapterWallet = AptosWallet & {\n  readyState?: WalletReadyState;\n  isAptosNativeWallet?: boolean;\n  /** A fallback wallet to use when this wallet is not installed */\n  fallbackWallet?: AdapterWallet;\n};\n\n// An adapter not detected wallet types is a wallet that is compatible with the wallet standard but not detected\nexport type AdapterNotDetectedWallet = Omit<\n  AdapterWallet,\n  \"features\" | \"version\" | \"chains\" | \"accounts\"\n> & {\n  readyState: WalletReadyState.NotDetected;\n};\n\nexport interface DappConfig {\n  network: Network;\n  /**\n   * If provided, the wallet adapter will submit transactions using the provided\n   * transaction submitter rather than via the wallet.\n   */\n  transactionSubmitter?: TransactionSubmitter;\n  aptosApiKeys?: Partial<Record<Network, string>>;\n  aptosConnectDappId?: string;\n  aptosConnect?: Omit<AptosConnectWalletConfig, \"network\">;\n  /**\n   * @deprecated will be removed in a future version\n   */\n  mizuwallet?: {\n    manifestURL: string;\n    appId?: string;\n  };\n  /**\n   * @deprecated will be removed in a future version\n   */\n  msafeWalletConfig?: {\n    appId?: string;\n    appUrl?: string;\n  };\n  crossChainWallets?: boolean;\n}\n\nexport declare interface WalletCoreEvents {\n  connect(account: AccountInfo | null): void;\n  disconnect(): void;\n  standardWalletsAdded(wallets: AdapterWallet): void;\n  standardWalletsHiddenAdded(wallets: AdapterWallet): void;\n  standardNotDetectedWalletAdded(wallets: AdapterNotDetectedWallet): void;\n  networkChange(network: NetworkInfo | null): void;\n  accountChange(account: AccountInfo | null): void;\n}\n\nexport type AdapterAccountInfo = Omit<AccountInfo, \"ansName\"> & {\n  // ansName is a read-only property on the standard AccountInfo type\n  ansName?: string;\n};\n\nexport class WalletCore extends EventEmitter<WalletCoreEvents> {\n  // Local private variable to hold the wallet that is currently connected\n  private _wallet: AdapterWallet | null = null;\n\n  // Local private variable to hold SDK wallets in the adapter\n  private readonly _sdkWallets: AdapterWallet[] = [];\n\n  // Local array that holds all the wallets that are AIP-62 standard compatible\n  private _standard_wallets: AdapterWallet[] = [];\n\n  // Local array that holds all the wallets that are AIP-62 standard compatible but are not installed on the user machine\n  private _standard_not_detected_wallets: AdapterNotDetectedWallet[] = [];\n\n  // Local array that holds all the wallets that are AIP-62 standard compatible but are hidden from normal display and that are installed on the user machine\n  private _standard_wallets_hidden: AdapterWallet[] = [];\n\n  // Local private variable to hold the network that is currently connected\n  private _network: NetworkInfo | null = null;\n\n  // Local private variable to hold the connecting state\n  private _connecting: boolean = false;\n\n  // Local private variable to hold the wallet connected state\n  private _connected: boolean = false;\n\n  // Local private variable to hold the account that is currently connected\n  private _account: AdapterAccountInfo | null = null;\n\n  // JSON configuration for AptosConnect\n  private _dappConfig: DappConfig | undefined;\n\n  // Private array that holds all the Wallets a dapp decided to opt-in to\n  private _optInWallets: ReadonlyArray<AvailableWallets> = [];\n\n  // Private array that holds all the Wallets a dapp decided to hide from normal display\n  private _hideWallets: ReadonlyArray<AvailableWallets> = [];\n\n  // Local flag to disable the adapter telemetry tool\n  private _disableTelemetry: boolean = false;\n\n  // Google Analytics 4 module\n  private readonly ga4: GA4 | null = null;\n\n  constructor(\n    optInWallets?: ReadonlyArray<AvailableWallets>,\n    dappConfig?: DappConfig,\n    disableTelemetry?: boolean,\n    hideWallets: ReadonlyArray<AvailableWallets> = [\"Petra Web\"],\n  ) {\n    super();\n    this._optInWallets = optInWallets || [];\n    this._hideWallets = hideWallets;\n    this._dappConfig = dappConfig;\n    this._disableTelemetry = disableTelemetry ?? false;\n    this._sdkWallets = getSDKWallets(this._dappConfig);\n\n    // If disableTelemetry set to false (by default), start GA4\n    if (!this._disableTelemetry) {\n      this.ga4 = new GA4();\n    }\n    // Strategy to detect AIP-62 standard compatible extension wallets\n    this.fetchExtensionAIP62AptosWallets();\n    // Strategy to detect AIP-62 standard compatible SDK wallets.\n    // We separate the extension and sdk detection process so we dont refetch sdk wallets everytime a new\n    // extension wallet is detected\n    this.fetchSDKAIP62AptosWallets();\n    // Strategy to append not detected AIP-62 standard compatible extension wallets\n    this.appendNotDetectedStandardSupportedWallets();\n  }\n\n  private fetchExtensionAIP62AptosWallets(): void {\n    const { aptosWallets, on } = getAptosWallets();\n    this.setExtensionAIP62Wallets(aptosWallets);\n\n    if (typeof window === \"undefined\") return;\n\n    const _removeRegisterListener = on(\"register\", () => {\n      const { aptosWallets } = getAptosWallets();\n      this.setExtensionAIP62Wallets(aptosWallets);\n    });\n\n    const _removeUnregisterListener = on(\"unregister\", () => {\n      const { aptosWallets } = getAptosWallets();\n      this.setExtensionAIP62Wallets(aptosWallets);\n    });\n  }\n\n  /**\n   * Set AIP-62 extension wallets\n   *\n   * @param extensionwWallets\n   */\n  private setExtensionAIP62Wallets(\n    extensionwWallets: readonly AptosWallet[],\n  ): void {\n    extensionwWallets.map((wallet: AdapterWallet) => {\n      if (this.excludeWallet(wallet)) {\n        return;\n      }\n\n      // Rimosafe is not supported anymore, so hiding it\n      if (wallet.name === \"Rimosafe\") {\n        return;\n      }\n\n      const isValid = isWalletWithRequiredFeatureSet(wallet);\n\n      if (isValid) {\n        // check if we already have this wallet as a not detected wallet\n        const index = this._standard_not_detected_wallets.findIndex(\n          (notDetctedWallet) => notDetctedWallet.name === wallet.name,\n        );\n        // if we do, remove it from the not detected wallets array as it is now become detected\n        if (index !== -1) {\n          this._standard_not_detected_wallets.splice(index, 1);\n        }\n\n        // ✅ Check if wallet already exists in _standard_wallets or _standard_wallets_hidden\n        const alreadyExists =\n          this._standard_wallets.some((w) => w.name === wallet.name) ||\n          this._standard_wallets_hidden.some((w) => w.name === wallet.name);\n        if (!alreadyExists) {\n          wallet.readyState = WalletReadyState.Installed;\n          wallet.isAptosNativeWallet = this.isAptosNativeWallet(wallet);\n          if (!this.hideWallet(wallet)) {\n            this._standard_wallets.push(wallet);\n            this.emit(\"standardWalletsAdded\", wallet);\n          } else {\n            this._standard_wallets_hidden.push(wallet);\n            this.emit(\"standardWalletsHiddenAdded\", wallet);\n          }\n        }\n      }\n    });\n  }\n\n  /**\n   * Set AIP-62 SDK wallets\n   */\n  private fetchSDKAIP62AptosWallets(): void {\n    this._sdkWallets.map((wallet: AdapterWallet) => {\n      if (this.excludeWallet(wallet)) {\n        return;\n      }\n      const isValid = isWalletWithRequiredFeatureSet(wallet);\n\n      if (isValid) {\n        wallet.readyState = WalletReadyState.Installed;\n        wallet.isAptosNativeWallet = this.isAptosNativeWallet(wallet);\n        if (!this.hideWallet(wallet)) {\n          this._standard_wallets.push(wallet);\n        } else {\n          this._standard_wallets_hidden.push(wallet);\n        }\n      }\n    });\n  }\n\n  // Aptos native wallets do not have an authenticationFunction property\n  private isAptosNativeWallet(wallet: AptosWallet): boolean {\n    return !(\"authenticationFunction\" in wallet);\n  }\n\n  // Since we can't discover AIP-62 wallets that are not installed on the user machine,\n  // we hold a AIP-62 wallets registry to show on the wallet selector modal for the users.\n  // Append wallets from wallet standard support registry to the `_standard_not_detected_wallets` array\n  // when wallet is not installed on the user machine\n  private appendNotDetectedStandardSupportedWallets(): void {\n    const walletRegistry = this._dappConfig?.crossChainWallets\n      ? [\n          ...aptosStandardSupportedWalletList,\n          ...solanaStandardSupportedWalletList,\n          ...ethereumStandardSupportedWalletList,\n          ...suiStandardSupportedWalletList,\n        ]\n      : aptosStandardSupportedWalletList;\n    // Loop over the registry map\n    walletRegistry.map((supportedWallet: AptosStandardSupportedWallet) => {\n      // Check if we already have this wallet as a detected AIP-62 wallet standard\n      const existingStandardWallet =\n        this._standard_wallets.find(\n          (wallet) => wallet.name === supportedWallet.name,\n        ) ||\n        this._standard_wallets_hidden.find(\n          (wallet) => wallet.name === supportedWallet.name,\n        );\n      // If it is detected, it means the user has the wallet installed, so dont add it to the wallets array\n      if (existingStandardWallet) {\n        return;\n      }\n      // If AIP-62 wallet detected but it is excluded by the dapp, dont add it to the wallets array\n      if (this.excludeWallet(supportedWallet)) {\n        return;\n      }\n      // If AIP-62 wallet does not exist, append it to the wallet selector modal\n      // as an undetected wallet\n      if (!existingStandardWallet) {\n        // Aptos native wallets do not have an authenticationFunction property\n        supportedWallet.isAptosNativeWallet = !(\n          \"authenticationFunction\" in supportedWallet\n        );\n        this._standard_not_detected_wallets.push(supportedWallet);\n        this.emit(\"standardNotDetectedWalletAdded\", supportedWallet);\n      }\n    });\n  }\n\n  /**\n   * A function that excludes an AIP-62 compatible wallet the dapp doesnt want to include\n   *\n   * @param wallet AdapterWallet | AdapterNotDetectedWallet\n   * @returns boolean\n   */\n  excludeWallet(wallet: AdapterWallet | AdapterNotDetectedWallet): boolean {\n    // If _optInWallets is not empty, and does not include the provided wallet,\n    // return true to exclude the wallet, otherwise return false\n    if (\n      this._optInWallets.length > 0 &&\n      !this._optInWallets.includes(wallet.name as AvailableWallets)\n    ) {\n      return true;\n    }\n    return false;\n  }\n\n  /**\n   * A function that hides an AIP-62 compatible wallet from normal display.\n   *\n   * @param wallet AdapterWallet | AdapterNotDetectedWallet\n   * @returns boolean\n   */\n  hideWallet(wallet: AdapterWallet | AdapterNotDetectedWallet): boolean {\n    return (\n      this._hideWallets.length > 0 &&\n      this._hideWallets.includes(wallet.name as AvailableWallets)\n    );\n  }\n\n  private recordEvent(eventName: string, additionalInfo?: object): void {\n    this.ga4?.gtag(\"event\", `wallet_adapter_${eventName}`, {\n      wallet: this._wallet?.name,\n      network: this._network?.name,\n      network_url: this._network?.url,\n      adapter_core_version: WALLET_ADAPTER_CORE_VERSION,\n      send_to: process.env.GAID,\n      ...additionalInfo,\n    });\n  }\n\n  /**\n   * Helper function to ensure wallet exists\n   *\n   * @param wallet A wallet\n   */\n  private ensureWalletExists(\n    wallet: AdapterWallet | null,\n  ): asserts wallet is AdapterWallet {\n    if (!wallet) {\n      throw new WalletNotConnectedError().name;\n    }\n    if (!(wallet.readyState === WalletReadyState.Installed))\n      throw new WalletNotReadyError(\"Wallet is not set\").name;\n  }\n\n  /**\n   * Helper function to ensure account exists\n   *\n   * @param account An account\n   */\n  private ensureAccountExists(\n    account: AccountInfo | null,\n  ): asserts account is AccountInfo {\n    if (!account) {\n      throw new WalletAccountError(\"Account is not set\").name;\n    }\n  }\n\n  /**\n   * Queries and sets ANS name for the current connected wallet account\n   */\n  private async setAnsName(): Promise<void> {\n    if (this._network?.chainId && this._account) {\n      if (this._account.ansName) return;\n      // ANS supports only MAINNET or TESTNET\n      if (\n        !ChainIdToAnsSupportedNetworkMap[this._network.chainId] ||\n        !isAptosNetwork(this._network)\n      ) {\n        this._account.ansName = undefined;\n        return;\n      }\n\n      const aptosConfig = getAptosConfig(this._network, this._dappConfig);\n      const aptos = new Aptos(aptosConfig);\n      try {\n        const name = await aptos.ans.getPrimaryName({\n          address: this._account.address.toString(),\n        });\n        this._account.ansName = name;\n      } catch (error: any) {\n        console.log(`Error setting ANS name ${error}`);\n      }\n    }\n  }\n\n  /**\n   * Function to cleat wallet adapter data.\n   *\n   * - Removes current connected wallet state\n   * - Removes current connected account state\n   * - Removes current connected network state\n   * - Removes autoconnect local storage value\n   */\n  private clearData(): void {\n    this._connected = false;\n    this.setWallet(null);\n    this.setAccount(null);\n    this.setNetwork(null);\n    removeLocalStorage();\n  }\n\n  /**\n   * Sets the connected wallet\n   *\n   * @param wallet A wallet\n   */\n  setWallet(wallet: AptosWallet | null): void {\n    this._wallet = wallet;\n  }\n\n  /**\n   * Sets the connected account\n   *\n   * @param account An account\n   */\n  setAccount(account: AccountInfo | null): void {\n    this._account = account;\n  }\n\n  /**\n   * Sets the connected network\n   *\n   * @param network A network\n   */\n  setNetwork(network: NetworkInfo | null): void {\n    this._network = network;\n  }\n\n  /**\n   * Helper function to detect whether a wallet is connected\n   *\n   * @returns boolean\n   */\n  isConnected(): boolean {\n    return this._connected;\n  }\n\n  /**\n   * Getter to fetch all detected wallets\n   */\n  get wallets(): ReadonlyArray<AptosWallet> {\n    return this._standard_wallets;\n  }\n\n  /**\n   * Getter to fetch all hidden wallets\n   */\n  get hiddenWallets(): ReadonlyArray<AdapterWallet> {\n    return this._standard_wallets_hidden;\n  }\n\n  get notDetectedWallets(): ReadonlyArray<AdapterNotDetectedWallet> {\n    return this._standard_not_detected_wallets;\n  }\n\n  /**\n   * Getter for the current connected wallet\n   *\n   * @return wallet info\n   * @throws WalletNotSelectedError\n   */\n  get wallet(): AptosWallet | null {\n    try {\n      if (!this._wallet) return null;\n      return this._wallet;\n    } catch (error: any) {\n      throw new WalletNotSelectedError(error).message;\n    }\n  }\n\n  /**\n   * Getter for the current connected account\n   *\n   * @return account info\n   * @throws WalletAccountError\n   */\n  get account(): AccountInfo | null {\n    try {\n      return this._account;\n    } catch (error: any) {\n      throw new WalletAccountError(error).message;\n    }\n  }\n\n  /**\n   * Getter for the current wallet network\n   *\n   * @return network info\n   * @throws WalletGetNetworkError\n   */\n  get network(): NetworkInfo | null {\n    try {\n      return this._network;\n    } catch (error: any) {\n      throw new WalletGetNetworkError(error).message;\n    }\n  }\n\n  /**\n   * Helper function to run some checks before we connect with a wallet.\n   *\n   * @param walletName. The wallet name we want to connect with.\n   */\n  async connect(walletName: string): Promise<undefined | string> {\n    // First, handle mobile case\n    // Check if we are in a redirectable view (i.e on mobile AND not in an in-app browser)\n    if (isRedirectable()) {\n      const selectedWallet = this._standard_not_detected_wallets.find(\n        (wallet: AdapterNotDetectedWallet) => wallet.name === walletName,\n      );\n\n      if (selectedWallet) {\n        // If wallet has a deeplinkProvider property, use it\n        const uninstalledWallet =\n          selectedWallet as unknown as AptosStandardSupportedWallet;\n        if (uninstalledWallet.deeplinkProvider) {\n          let parameter = \"\";\n          if (uninstalledWallet.name.includes(\"Phantom\")) {\n            // Phantom required parameters https://docs.phantom.com/phantom-deeplinks/other-methods/browse#parameters\n            const url = encodeURIComponent(window.location.href);\n            const ref = encodeURIComponent(window.location.origin);\n            parameter = `${url}?ref=${ref}`;\n          } else if (uninstalledWallet.name.includes(\"MetaMask\")) {\n            // MetaMask expects the raw URL as a path parameter\n            // Format: https://link.metamask.io/dapp/aptos-labs.github.io\n            parameter = window.location.href;\n          } else {\n            parameter = encodeURIComponent(window.location.href);\n          }\n          const location = uninstalledWallet.deeplinkProvider.concat(parameter);\n          window.location.href = location;\n          return;\n        }\n      }\n    }\n\n    // Checks the wallet exists in the detected wallets array\n    const allDetectedWallets = [\n      ...this._standard_wallets,\n      ...this._standard_wallets_hidden,\n    ];\n\n    const selectedWallet = allDetectedWallets.find(\n      (wallet: AdapterWallet) => wallet.name === walletName,\n    );\n\n    if (!selectedWallet) return;\n\n    // Check if wallet is already connected\n    if (this._connected && this._account) {\n      // if the selected wallet is already connected, we don't need to connect again\n      if (this._wallet?.name === walletName)\n        throw new WalletConnectionError(\n          `${walletName} wallet is already connected`,\n        ).message;\n    }\n\n    await this.connectWallet(selectedWallet, async () => {\n      const response = await selectedWallet.features[\"aptos:connect\"].connect();\n      if (response.status === UserResponseStatus.REJECTED) {\n        throw new WalletConnectionError(\"User has rejected the request\")\n          .message;\n      }\n\n      return { account: response.args, output: undefined };\n    });\n  }\n\n  /**\n   * Signs into the wallet by connecting and signing an authentication messages.\n   *\n   * For more information, visit: https://siwa.aptos.dev\n   *\n   * @param args\n   * @param args.input The AptosSignInInput which defines how the SIWA Message should be constructed\n   * @param args.walletName The name of the wallet to sign into\n   * @returns The AptosSignInOutput which contains the account and signature information\n   */\n  async signIn(args: {\n    input: AptosSignInInput;\n    walletName: string;\n  }): Promise<AptosSignInOutput> {\n    const { input, walletName } = args;\n\n    const allDetectedWallets = this._standard_wallets;\n    const selectedWallet = allDetectedWallets.find(\n      (wallet: AdapterWallet) => wallet.name === walletName,\n    );\n\n    if (!selectedWallet) {\n      throw new WalletNotFoundError(`Wallet ${walletName} not found`).message;\n    }\n\n    if (!selectedWallet.features[\"aptos:signIn\"]) {\n      throw new WalletNotSupportedMethod(\n        `aptos:signIn is not supported by ${walletName}`,\n      ).message;\n    }\n\n    return await this.connectWallet(selectedWallet, async () => {\n      if (!selectedWallet.features[\"aptos:signIn\"]) {\n        throw new WalletNotSupportedMethod(\n          `aptos:signIn is not supported by ${selectedWallet.name}`,\n        ).message;\n      }\n\n      const response =\n        await selectedWallet.features[\"aptos:signIn\"].signIn(input);\n      if (response.status === UserResponseStatus.REJECTED) {\n        throw new WalletConnectionError(\"User has rejected the request\")\n          .message;\n      }\n\n      return { account: response.args.account, output: response.args };\n    });\n  }\n\n  /**\n   * Connects a wallet to the dapp.\n   * On connect success, we set the current account and the network, and keeping the selected wallet\n   * name in LocalStorage to support autoConnect function.\n   *\n   * @param selectedWallet. The wallet we want to connect.\n   * @emit emits \"connect\" event\n   * @throws WalletConnectionError\n   */\n  private async connectWallet<T>(\n    selectedWallet: AdapterWallet,\n    onConnect: () => Promise<{ account: AccountInfo; output: T }>,\n  ): Promise<T> {\n    try {\n      this._connecting = true;\n      this.setWallet(selectedWallet);\n      const { account, output } = await onConnect();\n      this.setAccount(account);\n      const network = await selectedWallet.features[\"aptos:network\"].network();\n      this.setNetwork(network);\n      await this.setAnsName();\n      setLocalStorage(selectedWallet.name);\n      this._connected = true;\n      this.recordEvent(\"wallet_connect\");\n      this.emit(\"connect\", account);\n      return output;\n    } catch (error: any) {\n      this.clearData();\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletConnectionError(errMsg).message;\n    } finally {\n      this._connecting = false;\n    }\n  }\n\n  /**\n   * Disconnect the current connected wallet. On success, we clear the\n   * current account, current network and LocalStorage data.\n   *\n   * @emit emits \"disconnect\" event\n   * @throws WalletDisconnectionError\n   */\n  async disconnect(): Promise<void> {\n    try {\n      this.ensureWalletExists(this._wallet);\n      await this._wallet.features[\"aptos:disconnect\"].disconnect();\n      this.clearData();\n      this.recordEvent(\"wallet_disconnect\");\n      this.emit(\"disconnect\");\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletDisconnectionError(errMsg).message;\n    }\n  }\n\n  /**\n   * Signs and submits a transaction to chain\n   *\n   * @param transactionInput InputTransactionData\n   * @returns AptosSignAndSubmitTransactionOutput\n   */\n  async signAndSubmitTransaction(\n    transactionInput: InputTransactionData,\n  ): Promise<AptosSignAndSubmitTransactionOutput> {\n    try {\n      if (\"function\" in transactionInput.data) {\n        if (\n          transactionInput.data.function ===\n          \"0x1::account::rotate_authentication_key_call\"\n        ) {\n          throw new WalletSignAndSubmitMessageError(\"SCAM SITE DETECTED\")\n            .message;\n        }\n\n        if (\n          transactionInput.data.function === \"0x1::code::publish_package_txn\"\n        ) {\n          ({\n            metadataBytes: transactionInput.data.functionArguments[0],\n            byteCode: transactionInput.data.functionArguments[1],\n          } = handlePublishPackageTransaction(transactionInput));\n        }\n      }\n      this.ensureWalletExists(this._wallet);\n      this.ensureAccountExists(this._account);\n      this.recordEvent(\"sign_and_submit_transaction\");\n\n      // We'll submit ourselves if a custom transaction submitter has been provided.\n      const shouldUseTxnSubmitter = !!(\n        this._dappConfig?.transactionSubmitter ||\n        transactionInput.transactionSubmitter\n      );\n\n      if (\n        this._wallet.features[\"aptos:signAndSubmitTransaction\"] &&\n        !shouldUseTxnSubmitter\n      ) {\n        // check for backward compatibility. before version 1.1.0 the standard expected\n        // AnyRawTransaction input so the adapter built the transaction before sending it to the wallet\n        if (\n          this._wallet.features[\"aptos:signAndSubmitTransaction\"].version !==\n          \"1.1.0\"\n        ) {\n          const aptosConfig = getAptosConfig(this._network, this._dappConfig);\n\n          const aptos = new Aptos(aptosConfig);\n          const transaction = await aptos.transaction.build.simple({\n            sender: this._account.address.toString(),\n            data: transactionInput.data,\n            options: transactionInput.options,\n          });\n\n          type AptosSignAndSubmitTransactionV1Method = (\n            transaction: AnyRawTransaction,\n          ) => Promise<UserResponse<AptosSignAndSubmitTransactionOutput>>;\n\n          const signAndSubmitTransactionMethod = this._wallet.features[\n            \"aptos:signAndSubmitTransaction\"\n          ]\n            .signAndSubmitTransaction as unknown as AptosSignAndSubmitTransactionV1Method;\n\n          const response = (await signAndSubmitTransactionMethod(\n            transaction,\n          )) as UserResponse<AptosSignAndSubmitTransactionOutput>;\n\n          if (response.status === UserResponseStatus.REJECTED) {\n            throw new WalletConnectionError(\"User has rejected the request\")\n              .message;\n          }\n\n          return response.args;\n        }\n\n        const response = await this._wallet.features[\n          \"aptos:signAndSubmitTransaction\"\n        ].signAndSubmitTransaction({\n          payload: transactionInput.data,\n          gasUnitPrice: transactionInput.options?.gasUnitPrice,\n          maxGasAmount: transactionInput.options?.maxGasAmount,\n        });\n        if (response.status === UserResponseStatus.REJECTED) {\n          throw new WalletConnectionError(\"User has rejected the request\")\n            .message;\n        }\n        return response.args;\n      }\n\n      // If wallet does not support signAndSubmitTransaction or a transaction submitter\n      // is provided, the adapter will sign and submit it for the dapp.\n      const aptosConfig = getAptosConfig(this._network, this._dappConfig);\n      const aptos = new Aptos(aptosConfig);\n      const transaction = await aptos.transaction.build.simple({\n        sender: this._account.address.toString(),\n        data: transactionInput.data,\n        options: transactionInput.options,\n        withFeePayer: shouldUseTxnSubmitter,\n      });\n\n      const signTransactionResponse = await this.signTransaction({\n        transactionOrPayload: transaction,\n      });\n      const response = await this.submitTransaction({\n        transaction,\n        senderAuthenticator: signTransactionResponse.authenticator,\n        transactionSubmitter: transactionInput.transactionSubmitter,\n        pluginParams: transactionInput.pluginParams,\n      });\n      return { hash: response.hash };\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletSignAndSubmitMessageError(errMsg).message;\n    }\n  }\n\n  /**\n   * Signs a transaction\n   *\n   * This method supports 2 input types -\n   * 1. A raw transaction that was already built by the dapp,\n   * 2. A transaction data input as JSON. This is for the wallet to be able to simulate before signing\n   *\n   * @param transactionOrPayload AnyRawTransaction | InputTransactionData\n   * @param asFeePayer optional. A flag indicates to sign the transaction as the fee payer\n   * @param options optional. Transaction options\n   *\n   * @returns AccountAuthenticator\n   */\n  async signTransaction(args: {\n    transactionOrPayload: AnyRawTransaction | InputTransactionData;\n    asFeePayer?: boolean;\n  }): Promise<{\n    authenticator: AccountAuthenticator;\n    rawTransaction: Uint8Array;\n  }> {\n    const { transactionOrPayload, asFeePayer } = args;\n    /**\n     * All standard compatible wallets should support AnyRawTransaction for signTransaction version 1.0.0\n     * For standard signTransaction version 1.1.0, the standard expects a transaction input\n     *\n     * So, if the input is AnyRawTransaction, we can directly call the wallet's signTransaction method\n     *\n     *\n     * If the input is InputTransactionData, we need to\n     * 1. check if the wallet supports signTransaction version 1.1.0 - if so, we convert the input to the standard expected input\n     * 2. if it does not support signTransaction version 1.1.0, we convert it to a rawTransaction input and call the wallet's signTransaction method\n     */\n\n    try {\n      this.ensureWalletExists(this._wallet);\n      this.ensureAccountExists(this._account);\n      this.recordEvent(\"sign_transaction\");\n\n      // dapp sends a generated transaction (i.e AnyRawTransaction), which is supported by the wallet standard at signTransaction version 1.0.0\n      if (\"rawTransaction\" in transactionOrPayload) {\n        const response = (await this._wallet?.features[\n          \"aptos:signTransaction\"\n        ].signTransaction(\n          transactionOrPayload,\n          asFeePayer,\n        )) as UserResponse<AccountAuthenticator>;\n        if (response.status === UserResponseStatus.REJECTED) {\n          throw new WalletConnectionError(\"User has rejected the request\")\n            .message;\n        }\n        return {\n          authenticator: response.args,\n          rawTransaction: transactionOrPayload.rawTransaction.bcsToBytes(),\n        };\n      } // dapp sends a transaction data input (i.e InputTransactionData), which is supported by the wallet standard at signTransaction version 1.1.0\n      else if (\n        this._wallet.features[\"aptos:signTransaction\"]?.version === \"1.1.0\"\n      ) {\n        // convert input to standard expected input\n        const signTransactionV1_1StandardInput: AptosSignTransactionInputV1_1 =\n          {\n            payload: transactionOrPayload.data,\n            expirationTimestamp:\n              transactionOrPayload.options?.expirationTimestamp,\n            expirationSecondsFromNow:\n              transactionOrPayload.options?.expirationSecondsFromNow,\n            gasUnitPrice: transactionOrPayload.options?.gasUnitPrice,\n            maxGasAmount: transactionOrPayload.options?.maxGasAmount,\n            sequenceNumber: transactionOrPayload.options?.accountSequenceNumber,\n            sender: transactionOrPayload.sender\n              ? { address: AccountAddress.from(transactionOrPayload.sender) }\n              : undefined,\n          };\n\n        const walletSignTransactionMethod = this._wallet?.features[\n          \"aptos:signTransaction\"\n        ].signTransaction as AptosSignTransactionMethod &\n          AptosSignTransactionMethodV1_1;\n\n        const response = (await walletSignTransactionMethod(\n          signTransactionV1_1StandardInput,\n        )) as UserResponse<AptosSignTransactionOutputV1_1>;\n        if (response.status === UserResponseStatus.REJECTED) {\n          throw new WalletConnectionError(\"User has rejected the request\")\n            .message;\n        }\n        return {\n          authenticator: response.args.authenticator,\n          rawTransaction: response.args.rawTransaction.bcsToBytes(),\n        };\n      } else {\n        // dapp input is InputTransactionData but the wallet does not support it, so we convert it to a rawTransaction\n        const aptosConfig = getAptosConfig(this._network, this._dappConfig);\n        const aptos = new Aptos(aptosConfig);\n\n        const transaction = await aptos.transaction.build.simple({\n          sender: this._account.address,\n          data: transactionOrPayload.data,\n          options: transactionOrPayload.options,\n          withFeePayer: transactionOrPayload.withFeePayer,\n        });\n\n        const response = (await this._wallet?.features[\n          \"aptos:signTransaction\"\n        ].signTransaction(\n          transaction,\n          asFeePayer,\n        )) as UserResponse<AccountAuthenticator>;\n        if (response.status === UserResponseStatus.REJECTED) {\n          throw new WalletConnectionError(\"User has rejected the request\")\n            .message;\n        }\n\n        return {\n          authenticator: response.args,\n          rawTransaction: transaction.bcsToBytes(),\n        };\n      }\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletSignTransactionError(errMsg).message;\n    }\n  }\n\n  /**\n   * Sign a message (doesnt submit to chain).\n   *\n   * @param message - AptosSignMessageInput\n   *\n   * @return response from the wallet's signMessage function\n   * @throws WalletSignMessageError\n   */\n  async signMessage(\n    message: AptosSignMessageInput,\n  ): Promise<AptosSignMessageOutput> {\n    try {\n      this.ensureWalletExists(this._wallet);\n      this.recordEvent(\"sign_message\");\n\n      const response =\n        await this._wallet?.features[\"aptos:signMessage\"]?.signMessage(message);\n      if (response.status === UserResponseStatus.REJECTED) {\n        throw new WalletConnectionError(\"User has rejected the request\")\n          .message;\n      }\n      return response.args;\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletSignMessageError(errMsg).message;\n    }\n  }\n\n  /**\n   * Submits transaction to chain\n   *\n   * @param transaction - InputSubmitTransactionData\n   * @returns PendingTransactionResponse\n   */\n  async submitTransaction(\n    transaction: InputSubmitTransactionData,\n  ): Promise<PendingTransactionResponse> {\n    // The standard does not support submitTransaction, so we use the adapter to submit the transaction\n    try {\n      this.ensureWalletExists(this._wallet);\n\n      const { additionalSignersAuthenticators } = transaction;\n      const transactionType =\n        additionalSignersAuthenticators !== undefined\n          ? \"multi-agent\"\n          : \"simple\";\n      this.recordEvent(\"submit_transaction\", {\n        transaction_type: transactionType,\n      });\n\n      const aptosConfig = getAptosConfig(this._network, this._dappConfig);\n      const aptos = new Aptos(aptosConfig);\n      if (additionalSignersAuthenticators !== undefined) {\n        const multiAgentTxn = {\n          ...transaction,\n          additionalSignersAuthenticators,\n        };\n        return aptos.transaction.submit.multiAgent(multiAgentTxn);\n      } else {\n        return aptos.transaction.submit.simple(transaction);\n      }\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletSubmitTransactionError(errMsg).message;\n    }\n  }\n\n  /**\n   Event for when account has changed on the wallet\n   @return the new account info\n   @throws WalletAccountChangeError\n   */\n  async onAccountChange(): Promise<void> {\n    try {\n      this.ensureWalletExists(this._wallet);\n      await this._wallet.features[\"aptos:onAccountChange\"]?.onAccountChange(\n        async (data: AccountInfo) => {\n          this.setAccount(data);\n          await this.setAnsName();\n          this.recordEvent(\"account_change\");\n          this.emit(\"accountChange\", this._account);\n        },\n      );\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletAccountChangeError(errMsg).message;\n    }\n  }\n\n  /**\n   Event for when network has changed on the wallet\n   @return the new network info\n   @throws WalletNetworkChangeError\n   */\n  async onNetworkChange(): Promise<void> {\n    try {\n      this.ensureWalletExists(this._wallet);\n      await this._wallet.features[\"aptos:onNetworkChange\"]?.onNetworkChange(\n        async (data: NetworkInfo) => {\n          this.setNetwork(data);\n          await this.setAnsName();\n          this.emit(\"networkChange\", this._network);\n        },\n      );\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletNetworkChangeError(errMsg).message;\n    }\n  }\n\n  /**\n   * Sends a change network request to the wallet to change the connected network\n   *\n   * @param network - Network\n   * @returns AptosChangeNetworkOutput\n   */\n  async changeNetwork(network: Network): Promise<AptosChangeNetworkOutput> {\n    try {\n      this.ensureWalletExists(this._wallet);\n      this.recordEvent(\"change_network_request\", {\n        from: this._network?.name,\n        to: network,\n      });\n      const chainId =\n        network === Network.DEVNET\n          ? await fetchDevnetChainId()\n          : NetworkToChainId[network];\n\n      const networkInfo: NetworkInfo = {\n        name: network,\n        chainId,\n      };\n\n      if (this._wallet.features[\"aptos:changeNetwork\"]) {\n        const response =\n          await this._wallet.features[\"aptos:changeNetwork\"].changeNetwork(\n            networkInfo,\n          );\n        if (response.status === UserResponseStatus.REJECTED) {\n          throw new WalletConnectionError(\"User has rejected the request\")\n            .message;\n        }\n        return response.args;\n      }\n\n      throw new WalletChangeNetworkError(\n        `${this._wallet.name} does not support changing network request`,\n      ).message;\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletChangeNetworkError(errMsg).message;\n    }\n  }\n\n  /**\n   * Signs a message and verifies the signer\n   * @param message - AptosSignMessageInput\n   * @returns boolean\n   */\n  async signMessageAndVerify(message: AptosSignMessageInput): Promise<boolean> {\n    try {\n      this.ensureWalletExists(this._wallet);\n      this.ensureAccountExists(this._account);\n      this.recordEvent(\"sign_message_and_verify\");\n\n      // sign the message\n      const response = (await this._wallet.features[\n        \"aptos:signMessage\"\n      ].signMessage(message)) as UserResponse<AptosSignMessageOutput>;\n\n      if (response.status === UserResponseStatus.REJECTED) {\n        throw new WalletConnectionError(\"Failed to sign a message\").message;\n      }\n\n      const aptosConfig = getAptosConfig(this._network, this._dappConfig);\n      const signingMessage = new TextEncoder().encode(\n        response.args.fullMessage,\n      );\n      if (\"verifySignatureAsync\" in (this._account.publicKey as Object)) {\n        return await this._account.publicKey.verifySignatureAsync({\n          aptosConfig,\n          message: signingMessage,\n          signature: response.args.signature,\n          options: { throwErrorWithReason: true },\n        });\n      }\n      return this._account.publicKey.verifySignature({\n        message: signingMessage,\n        signature: response.args.signature,\n      });\n    } catch (error: any) {\n      const errMsg = generalizedErrorMessage(error);\n      throw new WalletSignMessageAndVerifyError(errMsg).message;\n    }\n  }\n}\n","export class GA4 {\n  readonly aptosGAID: string | undefined = process.env.GAID;\n\n  constructor() {\n    // Inject Aptos Google Analytics 4 script\n    this.injectGA(this.aptosGAID);\n  }\n\n  gtag(...args: [string, string | object, object?]) {\n    const dataLayer = (window as any).dataLayer || [];\n    dataLayer.push(...args);\n  }\n\n  private injectGA(gaID?: string) {\n    if (typeof window === \"undefined\") return;\n    if (!gaID) return;\n\n    const head = document.getElementsByTagName(\"head\")[0];\n\n    var myScript = document.createElement(\"script\");\n\n    myScript.setAttribute(\n      \"src\",\n      `https://www.googletagmanager.com/gtag/js?id=${gaID}`,\n    );\n\n    myScript.onload = () => {\n      this.gtag(\"js\", new Date());\n      this.gtag(\"config\", `${gaID}`, {\n        send_page_view: false,\n      });\n    };\n\n    head.insertBefore(myScript, head.children[1]);\n  }\n}\n","import type { AptosSignInBoundFields } from \"@aptos-labs/wallet-standard\";\nimport { WALLET_ADAPTER_CORE_VERSION } from \"./version\";\n\nexport type {\n  AptosSignInBoundFields,\n  AptosSignInInput,\n  AptosSignInOutput,\n} from \"@aptos-labs/wallet-standard\";\n/**\n * @deprecated Use `AptosSignInBoundFields` instead. This will be removed in future versions.\n */\nexport type AptosSignInRequiredFields = AptosSignInBoundFields;\n\nexport * from \"./constants\";\nexport * from \"./registry\";\nexport * from \"./sdkWallets\";\nexport * from \"./utils\";\nexport * from \"./WalletCore\";\n\n// inject adapter core version to the window\nif (typeof window !== \"undefined\") {\n  (window as any).WALLET_ADAPTER_CORE_VERSION = WALLET_ADAPTER_CORE_VERSION;\n}\n"],"mappings":";AAAO,IAAM,8BAA8B;;;ACApC,IAAK,mBAAL,kBAAKA,sBAAL;AAML,EAAAA,kBAAA,eAAY;AACZ,EAAAA,kBAAA,iBAAc;AAPJ,SAAAA;AAAA,GAAA;AAUL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,YAAS;AAHC,SAAAA;AAAA,GAAA;AAML,IAAM,kCAA0D;AAAA,EACrE,KAAK;AAAA;AAAA,EACL,KAAK;AAAA;AACP;AAOO,IAAM,yBAAyB;AAG/B,IAAM,qBAAqB;AAG3B,IAAM,gCAAgC;AAGtC,IAAM,oBAAoB;AAG1B,IAAM,sCAAsC;AAAA,EACjD,CAAC,iBAAiB,GAAG;AACvB;AAOO,IAAM,4BACX;AAGK,IAAM,wBACX;;;ACnCK,IAAM,mCACX;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AACF;AAEK,IAAM,oCACX;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AACF;AAEK,IAAM,sCACX;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AACF;AAEK,IAAM,iCACX;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EAEA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EAEA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,KAAK;AAAA,IACL,MAAM;AAAA,IACN;AAAA,IACA,iBAAiB;AAAA,EACnB;AACF;;;ACrTF;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGA,SAAS,cAAc,YAAyB;AACrD,QAAM,aAA8B,CAAC;AAGrC,MAAI,OAAO,WAAW,aAAa;AACjC,eAAW;AAAA,MACT,IAAI,yBAAyB;AAAA,QAC3B,SAAS,YAAY;AAAA,QACrB,QAAQ,YAAY;AAAA,QACpB,GAAG,YAAY;AAAA,MACjB,CAAC;AAAA,MACD,IAAI,wBAAwB;AAAA,QAC1B,SAAS,YAAY;AAAA,QACrB,QAAQ,YAAY;AAAA,QACpB,GAAG,YAAY;AAAA,MACjB,CAAC;AAAA,MACD,IAAI,0BAA0B;AAAA,QAC5B,SAAS,YAAY;AAAA,QACrB,QAAQ,YAAY;AAAA,QACpB,GAAG,YAAY;AAAA,MACjB,CAAC;AAAA,IACH;AAAA,EACF;AAKA,SAAO;AACT;;;ACnCA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;;;ACPA,IAAM,cAAN,cAA0B,MAAM;AAAA,EAC9B;AAAA,EAEP,YAAY,SAAkB,OAAa;AACzC,UAAM,OAAO;AACb,SAAK,QAAQ;AAAA,EACf;AACF;AAEO,IAAM,yBAAN,cAAqC,YAAY;AAAA,EACtD,OAAO;AACT;AAEO,IAAM,sBAAN,cAAkC,YAAY;AAAA,EACnD,OAAO;AACT;AAUO,IAAM,wBAAN,cAAoC,YAAY;AAAA,EACrD,OAAO;AACT;AAMO,IAAM,2BAAN,cAAuC,YAAY;AAAA,EACxD,OAAO;AACT;AAEO,IAAM,qBAAN,cAAiC,YAAY;AAAA,EAClD,OAAO;AACT;AACO,IAAM,wBAAN,cAAoC,YAAY;AAAA,EACrD,OAAO;AACT;AAEO,IAAM,2BAAN,cAAuC,YAAY;AAAA,EACxD,OAAO;AACT;AAEO,IAAM,2BAAN,cAAuC,YAAY;AAAA,EACxD,OAAO;AACT;AAUO,IAAM,0BAAN,cAAsC,YAAY;AAAA,EACvD,OAAO;AACT;AAMO,IAAM,yBAAN,cAAqC,YAAY;AAAA,EACtD,OAAO;AACT;AAEO,IAAM,kCAAN,cAA8C,YAAY;AAAA,EAC/D,OAAO;AACT;AAEO,IAAM,kCAAN,cAA8C,YAAY;AAAA,EAC/D,OAAO;AACT;AAEO,IAAM,6BAAN,cAAyC,YAAY;AAAA,EAC1D,OAAO;AACT;AAkBO,IAAM,2BAAN,cAAuC,YAAY;AAAA,EACxD,OAAO;AACT;AAEO,IAAM,2BAAN,cAAuC,YAAY;AAAA,EACxD,OAAO;AACT;AAEO,IAAM,+BAAN,cAA2C,YAAY;AAAA,EAC5D,OAAO;AACT;AAEO,IAAM,sBAAN,cAAkC,YAAY;AAAA,EACnD,OAAO;AACT;;;ADlGO,SAAS,WAAoB;AAClC,SAAO,oKAAoK;AAAA,IACzK,UAAU;AAAA,EACZ;AACF;AAEO,SAAS,iBAA0B;AACxC,QAAM,WAAW,+CAA+C;AAAA,IAC9D,UAAU;AAAA,EACZ;AAEA,QAAM,YAAY,qDAAqD;AAAA,IACrE,UAAU;AAAA,EACZ;AAEA,SAAO,YAAY;AACrB;AAEO,SAAS,iBAA0B;AAExC,MAAI,OAAO,cAAc,eAAe,CAAC,UAAW,QAAO;AAI3D,SAAO,SAAS,KAAK,CAAC,eAAe;AACvC;AAEO,SAAS,wBAAwB,OAAoB;AAC1D,SAAO,UAAU,QAAQ,OAAO,UAAU,YAAY,aAAa,QAC/D,MAAM,UACN;AACN;AASO,IAAM,iBAAiB,CAC5B,aACA,eACgB;AAChB,MAAI,CAAC,aAAa;AAChB,UAAM,IAAI,MAAM,mBAAmB;AAAA,EACrC;AAEA,QAAM,iBAAiC;AAAA,IACrC,uBAAuB,YAAY;AAAA,EACrC;AAEA,MAAI,eAAe,WAAW,GAAG;AAC/B,UAAM,iBAAiB,eAAe,WAAW;AAEjD,QAAI,mBAAmB,cAAc,GAAG;AACtC,YAAM,SAAS,YAAY;AAC3B,aAAO,IAAI,YAAY;AAAA,QACrB,SAAS;AAAA,QACT,cAAc,EAAE,SAAS,SAAS,OAAO,cAAc,IAAI,OAAU;AAAA,QACrE;AAAA,MACF,CAAC;AAAA,IACH;AAEA,WAAO,IAAI,YAAY;AAAA,MACrB,SAAS;AAAA,MACT;AAAA,IACF,CAAC;AAAA,EACH;AAEA,QAAM,gBAAgB;AAAA,IACpB,KAAK;AAAA,EACP;AAEA,MAAI,YAAY,KAAK;AACnB,UAAM,iBAAiB,OAAO,OAAO,aAAa,EAAE;AAAA,MAClD,YAAY;AAAA,IACd;AAEA,QAAI,gBAAgB;AAClB,aAAO,IAAI,YAAY;AAAA,QACrB,SAAS,QAAQ;AAAA,QACjB,UAAU,YAAY;AAAA,QACtB;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAGA,QAAM,IAAI;AAAA,IACR,4BAA4B,YAAY,IAAI;AAAA,EAC9C;AACF;AAQO,IAAM,iBAAiB,CAC5B,gBACY;AACZ,MAAI,CAAC,aAAa;AAChB,UAAM,IAAI,MAAM,mBAAmB;AAAA,EACrC;AACA,SAAO,iBAAiB,YAAY,IAAI,MAAM;AAChD;AAEO,IAAM,qBAAqB,CAAC,gBAAkC;AACnE,SACE,gBAAgB,YAChB,gBAAgB,aAChB,gBAAgB;AAEpB;AAKO,IAAM,qBAAqB,YAA6B;AAC7D,QAAM,QAAQ,IAAI,MAAM;AACxB,SAAO,MAAM,MAAM,WAAW;AAChC;AAOO,IAAM,kCAAkC,CAC7C,qBACG;AAEH,MAAI,gBAAgB,iBAAiB,KAAK,kBAAkB,CAAC;AAC7D,MAAI,OAAO,kBAAkB,UAAU;AACrC,oBAAgB,IAAI,aAAa,aAAa,EAAE,aAAa;AAAA,EAC/D;AAGA,MAAI,WAAW,iBAAiB,KAAK,kBAAkB,CAAC;AACxD,MAAI,MAAM,QAAQ,QAAQ,GAAG;AAC3B,eAAW,SAAS,IAAI,CAAC,SAAS;AAChC,UAAI,OAAO,SAAS,UAAU;AAC5B,eAAO,IAAI,aAAa,IAAI,EAAE,aAAa;AAAA,MAC7C;AACA,aAAO;AAAA,IACT,CAAC;AAAA,EACH,OAAO;AACL,UAAM,IAAI;AAAA,MACR;AAAA,IACF,EAAE;AAAA,EACJ;AAEA,SAAO,EAAE,eAAe,SAAS;AACnC;AAGO,SAAS,eAAe,aAA0C;AACvE,UAAQ,aAAa,MAAM;AAAA,IACzB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB;AACE,YAAM,IAAI,MAAM,4BAA4B;AAAA,EAChD;AACF;;;AE7LA,IAAM,yBAAyB;AAExB,SAAS,gBAAgB,YAAoB;AAClD,eAAa,QAAQ,wBAAwB,UAAU;AACzD;AAEO,SAAS,qBAAqB;AACnC,eAAa,WAAW,sBAAsB;AAChD;AAEO,SAAS,kBAAkB;AAChC,eAAa,QAAQ,sBAAsB;AAC7C;;;ACGO,SAAS,iBACd,SACA,oBAEe,uBACf;AACA,QAAM,iBAAuC,CAAC;AAC9C,QAAM,cAA+C,CAAC;AAEtD,aAAW,UAAU,SAAS;AAC5B,QAAI,kBAAkB,MAAM,GAAG;AAC7B,qBAAe,KAAK,MAAuB;AAAA,IAC7C,OAAO;AACL,kBAAY,KAAK,MAAkC;AAAA,IACrD;AAAA,EACF;AAEA,SAAO,EAAE,gBAAgB,YAAY;AACvC;AAGO,SAAS,sBACd,QACyB;AACzB,SAAO,OAAO;AAChB;AAMO,SAAS,kBACd,QACA;AACA,QAAM,gBAAgB,sBAAsB,MAAM;AAClD,QAAMC,YAAW,CAAC,iBAAiB,eAAe;AAElD,SAAO,CAACA,aAAY,CAAC;AACvB;AAEO,SAAS,wBACd,QACS;AACT,SACE,CAAC,CAAC,OAAO,kBACT,kBAAkB,MAAM,KACxB,sBAAsB,OAAO,cAAc;AAE/C;AAGO,SAAS,gBAAgB,SAA6B;AAC3D,MAAI,CAAC,QAAS;AACd,SAAO,GAAG,QAAQ,MAAM,GAAG,CAAC,CAAC,MAAM,QAAQ,MAAM,EAAE,CAAC;AACtD;AAOO,SAAS,qBAAqB,QAAoC;AACvE,SAAO,iBAAiB,MAAM;AAChC;AAGO,SAAS,iBACd,QACA,sBAA+B,MAC/B;AACA,MAAI,CAAC,OAAO,IAAK,QAAO;AACxB,MAAI,uBAAuB,wBAAwB,MAAM,GAAG;AAC1D,WAAO;AAAA,EACT;AACA,SACE,OAAO,IAAI,WAAW,sBAAsB,KAC5C,OAAO,IAAI,WAAW,kBAAkB;AAE5C;AAGO,SAAS,wBACd,QACA;AACA,SAAO,OAAO,SAAS;AACzB;AAQO,SAAS,uBACd,SACA;AACA,QAAM,EAAE,gBAAgB,YAAY,IAAI;AAAA,IACtC;AAAA,IACA;AAAA,EACF;AACA,SAAO;AAAA,IACL,qBAAqB;AAAA,IACrB,cAAc;AAAA,EAChB;AACF;AAMO,SAAS,mBACd,SACA;AACA,QAAM,EAAE,gBAAgB,YAAY,IAAI;AAAA,IACtC;AAAA,IACA;AAAA,EACF;AACA,SAAO;AAAA,IACL,iBAAiB;AAAA,IACjB,cAAc;AAAA,EAChB;AACF;AA0DO,SAAS,oBACd,SACA,SACA;AACA,QAAM;AAAA,IACJ,WAAW;AAAA,MACT,aAAa;AAAA,MACb;AAAA,IACF,IAAI,CAAC;AAAA,EACP,IAAI,WAAW,CAAC;AAChB,QAAM,EAAE,oBAAoB,IAAI,uBAAuB,OAAO;AAC9D,QAAM,EAAE,cAAc,gBAAgB,IAAI,mBAAmB,OAAO;AACpE,QAAM,EAAE,gBAAgB,YAAY,IAAI,iBAAiB,YAAY;AAIrE,QAAM,gCAEF,CAAC;AAEL,MAAI,uBAAuB,OAAO,KAAK,mBAAmB,EAAE,SAAS,GAAG;AACtE,aAAS,IAAI,YAAY,SAAS,GAAG,KAAK,GAAG,KAAK;AAChD,YAAM,SAAS,YAAY,CAAC;AAC5B,YAAM,eAAe,oBAAoB,OAAO,IAAI;AAEpD,UAAI,cAAc;AAChB,cAAM,iBAAiB;AAAA,UACrB,GAAG;AAAA,UACH,GAAI,6BAA6B,CAAC;AAAA,QACpC,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,gBAAgB,sBAAsB,CAAC,CAAC;AAKjE,YAAI,gBAAgB;AAClB,gBAAM,qBAA+C;AAAA,YACnD,GAAG;AAAA,YACH;AAAA,UACF;AAGA,sBAAY,OAAO,GAAG,CAAC;AAGvB,wCAA8B,KAAK,kBAAkB;AAAA,QACvD;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,MAAI,SAAS,yBAAyB;AACpC,wBAAoB,KAAK,QAAQ,uBAAuB;AAAA,EAC1D;AACA,MAAI,SAAS,qBAAqB;AAChC,oBAAgB,KAAK,QAAQ,mBAAmB;AAAA,EAClD;AACA,MAAI,SAAS,sBAAsB;AACjC,mBAAe,KAAK,QAAQ,oBAAoB;AAAA,EAClD;AACA,MAAI,SAAS,wBAAwB;AACnC,gBAAY,KAAK,QAAQ,sBAAsB;AAAA,EACjD;AAEA,SAAO;AAAA;AAAA,IAEL;AAAA;AAAA,IAEA;AAAA;AAAA,IAEA,kBAAkB;AAAA;AAAA,IAElB;AAAA;AAAA,IAEA,oBAAoB;AAAA,EACtB;AACF;;;AC5QA;AAAA,EACE;AAAA,EAGA,SAAAC;AAAA,EAEA,WAAAC;AAAA,EACA;AAAA,OAGK;AACP;AAAA,EAaE;AAAA,EACA;AAAA,EAGA;AAAA,OACK;AACP,OAAO,kBAAkB;;;AC/BlB,IAAM,MAAN,MAAU;AAAA,EACN,YAAgC;AAAA,EAEzC,cAAc;AAEZ,SAAK,SAAS,KAAK,SAAS;AAAA,EAC9B;AAAA,EAEA,QAAQ,MAA0C;AAChD,UAAM,YAAa,OAAe,aAAa,CAAC;AAChD,cAAU,KAAK,GAAG,IAAI;AAAA,EACxB;AAAA,EAEQ,SAAS,MAAe;AAC9B,QAAI,OAAO,WAAW,YAAa;AACnC,QAAI,CAAC,KAAM;AAEX,UAAM,OAAO,SAAS,qBAAqB,MAAM,EAAE,CAAC;AAEpD,QAAI,WAAW,SAAS,cAAc,QAAQ;AAE9C,aAAS;AAAA,MACP;AAAA,MACA,+CAA+C,IAAI;AAAA,IACrD;AAEA,aAAS,SAAS,MAAM;AACtB,WAAK,KAAK,MAAM,oBAAI,KAAK,CAAC;AAC1B,WAAK,KAAK,UAAU,GAAG,IAAI,IAAI;AAAA,QAC7B,gBAAgB;AAAA,MAClB,CAAC;AAAA,IACH;AAEA,SAAK,aAAa,UAAU,KAAK,SAAS,CAAC,CAAC;AAAA,EAC9C;AACF;;;AD0HO,IAAM,aAAN,cAAyB,aAA+B;AAAA;AAAA,EAErD,UAAgC;AAAA;AAAA,EAGvB,cAA+B,CAAC;AAAA;AAAA,EAGzC,oBAAqC,CAAC;AAAA;AAAA,EAGtC,iCAA6D,CAAC;AAAA;AAAA,EAG9D,2BAA4C,CAAC;AAAA;AAAA,EAG7C,WAA+B;AAAA;AAAA,EAG/B,cAAuB;AAAA;AAAA,EAGvB,aAAsB;AAAA;AAAA,EAGtB,WAAsC;AAAA;AAAA,EAGtC;AAAA;AAAA,EAGA,gBAAiD,CAAC;AAAA;AAAA,EAGlD,eAAgD,CAAC;AAAA;AAAA,EAGjD,oBAA6B;AAAA;AAAA,EAGpB,MAAkB;AAAA,EAEnC,YACE,cACA,YACA,kBACA,cAA+C,CAAC,WAAW,GAC3D;AACA,UAAM;AACN,SAAK,gBAAgB,gBAAgB,CAAC;AACtC,SAAK,eAAe;AACpB,SAAK,cAAc;AACnB,SAAK,oBAAoB,oBAAoB;AAC7C,SAAK,cAAc,cAAc,KAAK,WAAW;AAGjD,QAAI,CAAC,KAAK,mBAAmB;AAC3B,WAAK,MAAM,IAAI,IAAI;AAAA,IACrB;AAEA,SAAK,gCAAgC;AAIrC,SAAK,0BAA0B;AAE/B,SAAK,0CAA0C;AAAA,EACjD;AAAA,EAEQ,kCAAwC;AAC9C,UAAM,EAAE,cAAc,GAAG,IAAI,gBAAgB;AAC7C,SAAK,yBAAyB,YAAY;AAE1C,QAAI,OAAO,WAAW,YAAa;AAEnC,UAAM,0BAA0B,GAAG,YAAY,MAAM;AACnD,YAAM,EAAE,cAAAC,cAAa,IAAI,gBAAgB;AACzC,WAAK,yBAAyBA,aAAY;AAAA,IAC5C,CAAC;AAED,UAAM,4BAA4B,GAAG,cAAc,MAAM;AACvD,YAAM,EAAE,cAAAA,cAAa,IAAI,gBAAgB;AACzC,WAAK,yBAAyBA,aAAY;AAAA,IAC5C,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOQ,yBACN,mBACM;AACN,sBAAkB,IAAI,CAAC,WAA0B;AAC/C,UAAI,KAAK,cAAc,MAAM,GAAG;AAC9B;AAAA,MACF;AAGA,UAAI,OAAO,SAAS,YAAY;AAC9B;AAAA,MACF;AAEA,YAAM,UAAU,+BAA+B,MAAM;AAErD,UAAI,SAAS;AAEX,cAAM,QAAQ,KAAK,+BAA+B;AAAA,UAChD,CAAC,qBAAqB,iBAAiB,SAAS,OAAO;AAAA,QACzD;AAEA,YAAI,UAAU,IAAI;AAChB,eAAK,+BAA+B,OAAO,OAAO,CAAC;AAAA,QACrD;AAGA,cAAM,gBACJ,KAAK,kBAAkB,KAAK,CAAC,MAAM,EAAE,SAAS,OAAO,IAAI,KACzD,KAAK,yBAAyB,KAAK,CAAC,MAAM,EAAE,SAAS,OAAO,IAAI;AAClE,YAAI,CAAC,eAAe;AAClB,iBAAO;AACP,iBAAO,sBAAsB,KAAK,oBAAoB,MAAM;AAC5D,cAAI,CAAC,KAAK,WAAW,MAAM,GAAG;AAC5B,iBAAK,kBAAkB,KAAK,MAAM;AAClC,iBAAK,KAAK,wBAAwB,MAAM;AAAA,UAC1C,OAAO;AACL,iBAAK,yBAAyB,KAAK,MAAM;AACzC,iBAAK,KAAK,8BAA8B,MAAM;AAAA,UAChD;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA,EAKQ,4BAAkC;AACxC,SAAK,YAAY,IAAI,CAAC,WAA0B;AAC9C,UAAI,KAAK,cAAc,MAAM,GAAG;AAC9B;AAAA,MACF;AACA,YAAM,UAAU,+BAA+B,MAAM;AAErD,UAAI,SAAS;AACX,eAAO;AACP,eAAO,sBAAsB,KAAK,oBAAoB,MAAM;AAC5D,YAAI,CAAC,KAAK,WAAW,MAAM,GAAG;AAC5B,eAAK,kBAAkB,KAAK,MAAM;AAAA,QACpC,OAAO;AACL,eAAK,yBAAyB,KAAK,MAAM;AAAA,QAC3C;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAAA,EAGQ,oBAAoB,QAA8B;AACxD,WAAO,EAAE,4BAA4B;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMQ,4CAAkD;AACxD,UAAM,iBAAiB,KAAK,aAAa,oBACrC;AAAA,MACE,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,IACL,IACA;AAEJ,mBAAe,IAAI,CAAC,oBAAkD;AAEpE,YAAM,yBACJ,KAAK,kBAAkB;AAAA,QACrB,CAAC,WAAW,OAAO,SAAS,gBAAgB;AAAA,MAC9C,KACA,KAAK,yBAAyB;AAAA,QAC5B,CAAC,WAAW,OAAO,SAAS,gBAAgB;AAAA,MAC9C;AAEF,UAAI,wBAAwB;AAC1B;AAAA,MACF;AAEA,UAAI,KAAK,cAAc,eAAe,GAAG;AACvC;AAAA,MACF;AAGA,UAAI,CAAC,wBAAwB;AAE3B,wBAAgB,sBAAsB,EACpC,4BAA4B;AAE9B,aAAK,+BAA+B,KAAK,eAAe;AACxD,aAAK,KAAK,kCAAkC,eAAe;AAAA,MAC7D;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,cAAc,QAA2D;AAGvE,QACE,KAAK,cAAc,SAAS,KAC5B,CAAC,KAAK,cAAc,SAAS,OAAO,IAAwB,GAC5D;AACA,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,WAAW,QAA2D;AACpE,WACE,KAAK,aAAa,SAAS,KAC3B,KAAK,aAAa,SAAS,OAAO,IAAwB;AAAA,EAE9D;AAAA,EAEQ,YAAY,WAAmB,gBAA+B;AACpE,SAAK,KAAK,KAAK,SAAS,kBAAkB,SAAS,IAAI;AAAA,MACrD,QAAQ,KAAK,SAAS;AAAA,MACtB,SAAS,KAAK,UAAU;AAAA,MACxB,aAAa,KAAK,UAAU;AAAA,MAC5B,sBAAsB;AAAA,MACtB,SAAS;AAAA,MACT,GAAG;AAAA,IACL,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOQ,mBACN,QACiC;AACjC,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI,wBAAwB,EAAE;AAAA,IACtC;AACA,QAAI,EAAE,OAAO;AACX,YAAM,IAAI,oBAAoB,mBAAmB,EAAE;AAAA,EACvD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOQ,oBACN,SACgC;AAChC,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI,mBAAmB,oBAAoB,EAAE;AAAA,IACrD;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKA,MAAc,aAA4B;AACxC,QAAI,KAAK,UAAU,WAAW,KAAK,UAAU;AAC3C,UAAI,KAAK,SAAS,QAAS;AAE3B,UACE,CAAC,gCAAgC,KAAK,SAAS,OAAO,KACtD,CAAC,eAAe,KAAK,QAAQ,GAC7B;AACA,aAAK,SAAS,UAAU;AACxB;AAAA,MACF;AAEA,YAAM,cAAc,eAAe,KAAK,UAAU,KAAK,WAAW;AAClE,YAAM,QAAQ,IAAIC,OAAM,WAAW;AACnC,UAAI;AACF,cAAM,OAAO,MAAM,MAAM,IAAI,eAAe;AAAA,UAC1C,SAAS,KAAK,SAAS,QAAQ,SAAS;AAAA,QAC1C,CAAC;AACD,aAAK,SAAS,UAAU;AAAA,MAC1B,SAAS,OAAY;AACnB,gBAAQ,IAAI,0BAA0B,KAAK,EAAE;AAAA,MAC/C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUQ,YAAkB;AACxB,SAAK,aAAa;AAClB,SAAK,UAAU,IAAI;AACnB,SAAK,WAAW,IAAI;AACpB,SAAK,WAAW,IAAI;AACpB,uBAAmB;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAU,QAAkC;AAC1C,SAAK,UAAU;AAAA,EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,WAAW,SAAmC;AAC5C,SAAK,WAAW;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,WAAW,SAAmC;AAC5C,SAAK,WAAW;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,cAAuB;AACrB,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,UAAsC;AACxC,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,gBAA8C;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,qBAA8D;AAChE,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,IAAI,SAA6B;AAC/B,QAAI;AACF,UAAI,CAAC,KAAK,QAAS,QAAO;AAC1B,aAAO,KAAK;AAAA,IACd,SAAS,OAAY;AACnB,YAAM,IAAI,uBAAuB,KAAK,EAAE;AAAA,IAC1C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,IAAI,UAA8B;AAChC,QAAI;AACF,aAAO,KAAK;AAAA,IACd,SAAS,OAAY;AACnB,YAAM,IAAI,mBAAmB,KAAK,EAAE;AAAA,IACtC;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,IAAI,UAA8B;AAChC,QAAI;AACF,aAAO,KAAK;AAAA,IACd,SAAS,OAAY;AACnB,YAAM,IAAI,sBAAsB,KAAK,EAAE;AAAA,IACzC;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,QAAQ,YAAiD;AAG7D,QAAI,eAAe,GAAG;AACpB,YAAMC,kBAAiB,KAAK,+BAA+B;AAAA,QACzD,CAAC,WAAqC,OAAO,SAAS;AAAA,MACxD;AAEA,UAAIA,iBAAgB;AAElB,cAAM,oBACJA;AACF,YAAI,kBAAkB,kBAAkB;AACtC,cAAI,YAAY;AAChB,cAAI,kBAAkB,KAAK,SAAS,SAAS,GAAG;AAE9C,kBAAM,MAAM,mBAAmB,OAAO,SAAS,IAAI;AACnD,kBAAM,MAAM,mBAAmB,OAAO,SAAS,MAAM;AACrD,wBAAY,GAAG,GAAG,QAAQ,GAAG;AAAA,UAC/B,WAAW,kBAAkB,KAAK,SAAS,UAAU,GAAG;AAGtD,wBAAY,OAAO,SAAS;AAAA,UAC9B,OAAO;AACL,wBAAY,mBAAmB,OAAO,SAAS,IAAI;AAAA,UACrD;AACA,gBAAM,WAAW,kBAAkB,iBAAiB,OAAO,SAAS;AACpE,iBAAO,SAAS,OAAO;AACvB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAGA,UAAM,qBAAqB;AAAA,MACzB,GAAG,KAAK;AAAA,MACR,GAAG,KAAK;AAAA,IACV;AAEA,UAAM,iBAAiB,mBAAmB;AAAA,MACxC,CAAC,WAA0B,OAAO,SAAS;AAAA,IAC7C;AAEA,QAAI,CAAC,eAAgB;AAGrB,QAAI,KAAK,cAAc,KAAK,UAAU;AAEpC,UAAI,KAAK,SAAS,SAAS;AACzB,cAAM,IAAI;AAAA,UACR,GAAG,UAAU;AAAA,QACf,EAAE;AAAA,IACN;AAEA,UAAM,KAAK,cAAc,gBAAgB,YAAY;AACnD,YAAM,WAAW,MAAM,eAAe,SAAS,eAAe,EAAE,QAAQ;AACxE,UAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,cAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,MACL;AAEA,aAAO,EAAE,SAAS,SAAS,MAAM,QAAQ,OAAU;AAAA,IACrD,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,MAAM,OAAO,MAGkB;AAC7B,UAAM,EAAE,OAAO,WAAW,IAAI;AAE9B,UAAM,qBAAqB,KAAK;AAChC,UAAM,iBAAiB,mBAAmB;AAAA,MACxC,CAAC,WAA0B,OAAO,SAAS;AAAA,IAC7C;AAEA,QAAI,CAAC,gBAAgB;AACnB,YAAM,IAAI,oBAAoB,UAAU,UAAU,YAAY,EAAE;AAAA,IAClE;AAEA,QAAI,CAAC,eAAe,SAAS,cAAc,GAAG;AAC5C,YAAM,IAAI;AAAA,QACR,oCAAoC,UAAU;AAAA,MAChD,EAAE;AAAA,IACJ;AAEA,WAAO,MAAM,KAAK,cAAc,gBAAgB,YAAY;AAC1D,UAAI,CAAC,eAAe,SAAS,cAAc,GAAG;AAC5C,cAAM,IAAI;AAAA,UACR,oCAAoC,eAAe,IAAI;AAAA,QACzD,EAAE;AAAA,MACJ;AAEA,YAAM,WACJ,MAAM,eAAe,SAAS,cAAc,EAAE,OAAO,KAAK;AAC5D,UAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,cAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,MACL;AAEA,aAAO,EAAE,SAAS,SAAS,KAAK,SAAS,QAAQ,SAAS,KAAK;AAAA,IACjE,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAc,cACZ,gBACA,WACY;AACZ,QAAI;AACF,WAAK,cAAc;AACnB,WAAK,UAAU,cAAc;AAC7B,YAAM,EAAE,SAAS,OAAO,IAAI,MAAM,UAAU;AAC5C,WAAK,WAAW,OAAO;AACvB,YAAM,UAAU,MAAM,eAAe,SAAS,eAAe,EAAE,QAAQ;AACvE,WAAK,WAAW,OAAO;AACvB,YAAM,KAAK,WAAW;AACtB,sBAAgB,eAAe,IAAI;AACnC,WAAK,aAAa;AAClB,WAAK,YAAY,gBAAgB;AACjC,WAAK,KAAK,WAAW,OAAO;AAC5B,aAAO;AAAA,IACT,SAAS,OAAY;AACnB,WAAK,UAAU;AACf,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,sBAAsB,MAAM,EAAE;AAAA,IAC1C,UAAE;AACA,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,aAA4B;AAChC,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,YAAM,KAAK,QAAQ,SAAS,kBAAkB,EAAE,WAAW;AAC3D,WAAK,UAAU;AACf,WAAK,YAAY,mBAAmB;AACpC,WAAK,KAAK,YAAY;AAAA,IACxB,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,yBAAyB,MAAM,EAAE;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,yBACJ,kBAC8C;AAC9C,QAAI;AACF,UAAI,cAAc,iBAAiB,MAAM;AACvC,YACE,iBAAiB,KAAK,aACtB,gDACA;AACA,gBAAM,IAAI,gCAAgC,oBAAoB,EAC3D;AAAA,QACL;AAEA,YACE,iBAAiB,KAAK,aAAa,kCACnC;AACA,WAAC;AAAA,YACC,eAAe,iBAAiB,KAAK,kBAAkB,CAAC;AAAA,YACxD,UAAU,iBAAiB,KAAK,kBAAkB,CAAC;AAAA,UACrD,IAAI,gCAAgC,gBAAgB;AAAA,QACtD;AAAA,MACF;AACA,WAAK,mBAAmB,KAAK,OAAO;AACpC,WAAK,oBAAoB,KAAK,QAAQ;AACtC,WAAK,YAAY,6BAA6B;AAG9C,YAAM,wBAAwB,CAAC,EAC7B,KAAK,aAAa,wBAClB,iBAAiB;AAGnB,UACE,KAAK,QAAQ,SAAS,gCAAgC,KACtD,CAAC,uBACD;AAGA,YACE,KAAK,QAAQ,SAAS,gCAAgC,EAAE,YACxD,SACA;AACA,gBAAMC,eAAc,eAAe,KAAK,UAAU,KAAK,WAAW;AAElE,gBAAMC,SAAQ,IAAIH,OAAME,YAAW;AACnC,gBAAME,eAAc,MAAMD,OAAM,YAAY,MAAM,OAAO;AAAA,YACvD,QAAQ,KAAK,SAAS,QAAQ,SAAS;AAAA,YACvC,MAAM,iBAAiB;AAAA,YACvB,SAAS,iBAAiB;AAAA,UAC5B,CAAC;AAMD,gBAAM,iCAAiC,KAAK,QAAQ,SAClD,gCACF,EACG;AAEH,gBAAME,YAAY,MAAM;AAAA,YACtBD;AAAA,UACF;AAEA,cAAIC,UAAS,WAAW,mBAAmB,UAAU;AACnD,kBAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,UACL;AAEA,iBAAOA,UAAS;AAAA,QAClB;AAEA,cAAMA,YAAW,MAAM,KAAK,QAAQ,SAClC,gCACF,EAAE,yBAAyB;AAAA,UACzB,SAAS,iBAAiB;AAAA,UAC1B,cAAc,iBAAiB,SAAS;AAAA,UACxC,cAAc,iBAAiB,SAAS;AAAA,QAC1C,CAAC;AACD,YAAIA,UAAS,WAAW,mBAAmB,UAAU;AACnD,gBAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,QACL;AACA,eAAOA,UAAS;AAAA,MAClB;AAIA,YAAM,cAAc,eAAe,KAAK,UAAU,KAAK,WAAW;AAClE,YAAM,QAAQ,IAAIL,OAAM,WAAW;AACnC,YAAM,cAAc,MAAM,MAAM,YAAY,MAAM,OAAO;AAAA,QACvD,QAAQ,KAAK,SAAS,QAAQ,SAAS;AAAA,QACvC,MAAM,iBAAiB;AAAA,QACvB,SAAS,iBAAiB;AAAA,QAC1B,cAAc;AAAA,MAChB,CAAC;AAED,YAAM,0BAA0B,MAAM,KAAK,gBAAgB;AAAA,QACzD,sBAAsB;AAAA,MACxB,CAAC;AACD,YAAM,WAAW,MAAM,KAAK,kBAAkB;AAAA,QAC5C;AAAA,QACA,qBAAqB,wBAAwB;AAAA,QAC7C,sBAAsB,iBAAiB;AAAA,QACvC,cAAc,iBAAiB;AAAA,MACjC,CAAC;AACD,aAAO,EAAE,MAAM,SAAS,KAAK;AAAA,IAC/B,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,gCAAgC,MAAM,EAAE;AAAA,IACpD;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAeA,MAAM,gBAAgB,MAMnB;AACD,UAAM,EAAE,sBAAsB,WAAW,IAAI;AAa7C,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,WAAK,oBAAoB,KAAK,QAAQ;AACtC,WAAK,YAAY,kBAAkB;AAGnC,UAAI,oBAAoB,sBAAsB;AAC5C,cAAM,WAAY,MAAM,KAAK,SAAS,SACpC,uBACF,EAAE;AAAA,UACA;AAAA,UACA;AAAA,QACF;AACA,YAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,gBAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,QACL;AACA,eAAO;AAAA,UACL,eAAe,SAAS;AAAA,UACxB,gBAAgB,qBAAqB,eAAe,WAAW;AAAA,QACjE;AAAA,MACF,WAEE,KAAK,QAAQ,SAAS,uBAAuB,GAAG,YAAY,SAC5D;AAEA,cAAM,mCACJ;AAAA,UACE,SAAS,qBAAqB;AAAA,UAC9B,qBACE,qBAAqB,SAAS;AAAA,UAChC,0BACE,qBAAqB,SAAS;AAAA,UAChC,cAAc,qBAAqB,SAAS;AAAA,UAC5C,cAAc,qBAAqB,SAAS;AAAA,UAC5C,gBAAgB,qBAAqB,SAAS;AAAA,UAC9C,QAAQ,qBAAqB,SACzB,EAAE,SAAS,eAAe,KAAK,qBAAqB,MAAM,EAAE,IAC5D;AAAA,QACN;AAEF,cAAM,8BAA8B,KAAK,SAAS,SAChD,uBACF,EAAE;AAGF,cAAM,WAAY,MAAM;AAAA,UACtB;AAAA,QACF;AACA,YAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,gBAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,QACL;AACA,eAAO;AAAA,UACL,eAAe,SAAS,KAAK;AAAA,UAC7B,gBAAgB,SAAS,KAAK,eAAe,WAAW;AAAA,QAC1D;AAAA,MACF,OAAO;AAEL,cAAM,cAAc,eAAe,KAAK,UAAU,KAAK,WAAW;AAClE,cAAM,QAAQ,IAAIA,OAAM,WAAW;AAEnC,cAAM,cAAc,MAAM,MAAM,YAAY,MAAM,OAAO;AAAA,UACvD,QAAQ,KAAK,SAAS;AAAA,UACtB,MAAM,qBAAqB;AAAA,UAC3B,SAAS,qBAAqB;AAAA,UAC9B,cAAc,qBAAqB;AAAA,QACrC,CAAC;AAED,cAAM,WAAY,MAAM,KAAK,SAAS,SACpC,uBACF,EAAE;AAAA,UACA;AAAA,UACA;AAAA,QACF;AACA,YAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,gBAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,QACL;AAEA,eAAO;AAAA,UACL,eAAe,SAAS;AAAA,UACxB,gBAAgB,YAAY,WAAW;AAAA,QACzC;AAAA,MACF;AAAA,IACF,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,2BAA2B,MAAM,EAAE;AAAA,IAC/C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAM,YACJ,SACiC;AACjC,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,WAAK,YAAY,cAAc;AAE/B,YAAM,WACJ,MAAM,KAAK,SAAS,SAAS,mBAAmB,GAAG,YAAY,OAAO;AACxE,UAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,cAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,MACL;AACA,aAAO,SAAS;AAAA,IAClB,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,uBAAuB,MAAM,EAAE;AAAA,IAC3C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,kBACJ,aACqC;AAErC,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AAEpC,YAAM,EAAE,gCAAgC,IAAI;AAC5C,YAAM,kBACJ,oCAAoC,SAChC,gBACA;AACN,WAAK,YAAY,sBAAsB;AAAA,QACrC,kBAAkB;AAAA,MACpB,CAAC;AAED,YAAM,cAAc,eAAe,KAAK,UAAU,KAAK,WAAW;AAClE,YAAM,QAAQ,IAAIA,OAAM,WAAW;AACnC,UAAI,oCAAoC,QAAW;AACjD,cAAM,gBAAgB;AAAA,UACpB,GAAG;AAAA,UACH;AAAA,QACF;AACA,eAAO,MAAM,YAAY,OAAO,WAAW,aAAa;AAAA,MAC1D,OAAO;AACL,eAAO,MAAM,YAAY,OAAO,OAAO,WAAW;AAAA,MACpD;AAAA,IACF,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,6BAA6B,MAAM,EAAE;AAAA,IACjD;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,kBAAiC;AACrC,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,YAAM,KAAK,QAAQ,SAAS,uBAAuB,GAAG;AAAA,QACpD,OAAO,SAAsB;AAC3B,eAAK,WAAW,IAAI;AACpB,gBAAM,KAAK,WAAW;AACtB,eAAK,YAAY,gBAAgB;AACjC,eAAK,KAAK,iBAAiB,KAAK,QAAQ;AAAA,QAC1C;AAAA,MACF;AAAA,IACF,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,yBAAyB,MAAM,EAAE;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,kBAAiC;AACrC,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,YAAM,KAAK,QAAQ,SAAS,uBAAuB,GAAG;AAAA,QACpD,OAAO,SAAsB;AAC3B,eAAK,WAAW,IAAI;AACpB,gBAAM,KAAK,WAAW;AACtB,eAAK,KAAK,iBAAiB,KAAK,QAAQ;AAAA,QAC1C;AAAA,MACF;AAAA,IACF,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,yBAAyB,MAAM,EAAE;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,cAAc,SAAqD;AACvE,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,WAAK,YAAY,0BAA0B;AAAA,QACzC,MAAM,KAAK,UAAU;AAAA,QACrB,IAAI;AAAA,MACN,CAAC;AACD,YAAM,UACJ,YAAYM,SAAQ,SAChB,MAAM,mBAAmB,IACzB,iBAAiB,OAAO;AAE9B,YAAM,cAA2B;AAAA,QAC/B,MAAM;AAAA,QACN;AAAA,MACF;AAEA,UAAI,KAAK,QAAQ,SAAS,qBAAqB,GAAG;AAChD,cAAM,WACJ,MAAM,KAAK,QAAQ,SAAS,qBAAqB,EAAE;AAAA,UACjD;AAAA,QACF;AACF,YAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,gBAAM,IAAI,sBAAsB,+BAA+B,EAC5D;AAAA,QACL;AACA,eAAO,SAAS;AAAA,MAClB;AAEA,YAAM,IAAI;AAAA,QACR,GAAG,KAAK,QAAQ,IAAI;AAAA,MACtB,EAAE;AAAA,IACJ,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,yBAAyB,MAAM,EAAE;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,qBAAqB,SAAkD;AAC3E,QAAI;AACF,WAAK,mBAAmB,KAAK,OAAO;AACpC,WAAK,oBAAoB,KAAK,QAAQ;AACtC,WAAK,YAAY,yBAAyB;AAG1C,YAAM,WAAY,MAAM,KAAK,QAAQ,SACnC,mBACF,EAAE,YAAY,OAAO;AAErB,UAAI,SAAS,WAAW,mBAAmB,UAAU;AACnD,cAAM,IAAI,sBAAsB,0BAA0B,EAAE;AAAA,MAC9D;AAEA,YAAM,cAAc,eAAe,KAAK,UAAU,KAAK,WAAW;AAClE,YAAM,iBAAiB,IAAI,YAAY,EAAE;AAAA,QACvC,SAAS,KAAK;AAAA,MAChB;AACA,UAAI,0BAA2B,KAAK,SAAS,WAAsB;AACjE,eAAO,MAAM,KAAK,SAAS,UAAU,qBAAqB;AAAA,UACxD;AAAA,UACA,SAAS;AAAA,UACT,WAAW,SAAS,KAAK;AAAA,UACzB,SAAS,EAAE,sBAAsB,KAAK;AAAA,QACxC,CAAC;AAAA,MACH;AACA,aAAO,KAAK,SAAS,UAAU,gBAAgB;AAAA,QAC7C,SAAS;AAAA,QACT,WAAW,SAAS,KAAK;AAAA,MAC3B,CAAC;AAAA,IACH,SAAS,OAAY;AACnB,YAAM,SAAS,wBAAwB,KAAK;AAC5C,YAAM,IAAI,gCAAgC,MAAM,EAAE;AAAA,IACpD;AAAA,EACF;AACF;;;AE/oCA,IAAI,OAAO,WAAW,aAAa;AACjC,EAAC,OAAe,8BAA8B;AAChD;","names":["WalletReadyState","NetworkName","isMobile","Aptos","Network","aptosWallets","Aptos","selectedWallet","aptosConfig","aptos","transaction","response","Network"]}