@cartridge/controller 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/.turbo/turbo-build$colon$deps.log +52 -76
  2. package/.turbo/turbo-build.log +53 -77
  3. package/dist/controller.cjs +860 -0
  4. package/dist/controller.cjs.map +1 -0
  5. package/dist/controller.d.cts +33 -0
  6. package/dist/controller.d.ts +4 -4
  7. package/dist/controller.js +84 -68
  8. package/dist/controller.js.map +1 -1
  9. package/dist/index.cjs +2200 -0
  10. package/dist/index.cjs.map +1 -0
  11. package/dist/index.d.cts +17 -0
  12. package/dist/index.d.ts +12 -7
  13. package/dist/index.js +161 -7601
  14. package/dist/index.js.map +1 -1
  15. package/dist/lookup.cjs +59 -0
  16. package/dist/lookup.cjs.map +1 -0
  17. package/dist/lookup.d.cts +4 -0
  18. package/dist/lookup.js +7 -7
  19. package/dist/lookup.js.map +1 -1
  20. package/dist/{provider.js → node/index.cjs} +499 -25
  21. package/dist/node/index.cjs.map +1 -0
  22. package/dist/node/index.d.cts +56 -0
  23. package/dist/node/index.d.ts +56 -0
  24. package/dist/{telegram/provider.js → node/index.js} +354 -135
  25. package/dist/node/index.js.map +1 -0
  26. package/dist/{policies.d.ts → policies-DD1aPjQ4.d.cts} +6 -4
  27. package/dist/policies-DD1aPjQ4.d.ts +21 -0
  28. package/dist/{types-CVnDQVqD.d.ts → provider-ap1C1ypF.d.cts} +27 -10
  29. package/dist/provider-ap1C1ypF.d.ts +201 -0
  30. package/dist/session/{provider.js → index.cjs} +82 -73
  31. package/dist/session/index.cjs.map +1 -0
  32. package/dist/session/{provider.d.ts → index.d.cts} +6 -3
  33. package/dist/session/index.d.ts +37 -8
  34. package/dist/session/index.js +47 -64
  35. package/dist/session/index.js.map +1 -1
  36. package/package.json +35 -16
  37. package/src/controller.ts +43 -15
  38. package/src/iframe/base.ts +1 -11
  39. package/src/node/account.ts +72 -0
  40. package/src/node/backend.ts +159 -0
  41. package/src/node/index.ts +4 -0
  42. package/src/node/provider.ts +178 -0
  43. package/src/node/server.ts +89 -0
  44. package/src/session/account.ts +1 -1
  45. package/src/session/provider.ts +0 -16
  46. package/src/types.ts +3 -6
  47. package/tsconfig.json +2 -1
  48. package/dist/__tests__/parseChainId.test.d.ts +0 -2
  49. package/dist/__tests__/parseChainId.test.js +0 -89
  50. package/dist/__tests__/parseChainId.test.js.map +0 -1
  51. package/dist/account.d.ts +0 -38
  52. package/dist/account.js +0 -110
  53. package/dist/account.js.map +0 -1
  54. package/dist/constants.d.ts +0 -5
  55. package/dist/constants.js +0 -10
  56. package/dist/constants.js.map +0 -1
  57. package/dist/errors.d.ts +0 -5
  58. package/dist/errors.js +0 -11
  59. package/dist/errors.js.map +0 -1
  60. package/dist/icon.d.ts +0 -3
  61. package/dist/icon.js +0 -6
  62. package/dist/icon.js.map +0 -1
  63. package/dist/iframe/base.d.ts +0 -5
  64. package/dist/iframe/base.js +0 -126
  65. package/dist/iframe/base.js.map +0 -1
  66. package/dist/iframe/index.d.ts +0 -5
  67. package/dist/iframe/index.js +0 -188
  68. package/dist/iframe/index.js.map +0 -1
  69. package/dist/iframe/keychain.d.ts +0 -5
  70. package/dist/iframe/keychain.js +0 -147
  71. package/dist/iframe/keychain.js.map +0 -1
  72. package/dist/iframe/profile.d.ts +0 -5
  73. package/dist/iframe/profile.js +0 -167
  74. package/dist/iframe/profile.js.map +0 -1
  75. package/dist/index.d-BbTUPBeO.d.ts +0 -68
  76. package/dist/mutex.d.ts +0 -14
  77. package/dist/mutex.js +0 -22
  78. package/dist/mutex.js.map +0 -1
  79. package/dist/policies.js +0 -26
  80. package/dist/policies.js.map +0 -1
  81. package/dist/provider.d.ts +0 -24
  82. package/dist/provider.js.map +0 -1
  83. package/dist/session/account.d.ts +0 -37
  84. package/dist/session/account.js +0 -94
  85. package/dist/session/account.js.map +0 -1
  86. package/dist/session/backend.d.ts +0 -60
  87. package/dist/session/backend.js +0 -39
  88. package/dist/session/backend.js.map +0 -1
  89. package/dist/session/provider.js.map +0 -1
  90. package/dist/telegram/backend.d.ts +0 -33
  91. package/dist/telegram/backend.js +0 -40
  92. package/dist/telegram/backend.js.map +0 -1
  93. package/dist/telegram/provider.d.ts +0 -27
  94. package/dist/telegram/provider.js.map +0 -1
  95. package/dist/types.d.ts +0 -5
  96. package/dist/types.js +0 -13
  97. package/dist/types.js.map +0 -1
  98. package/dist/utils.d.ts +0 -19
  99. package/dist/utils.js +0 -141
  100. package/dist/utils.js.map +0 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/account.ts","../src/types.ts","../src/utils.ts","../src/iframe/base.ts","../src/constants.ts","../src/iframe/keychain.ts","../src/iframe/profile.ts","../src/errors.ts","../src/provider.ts","../package.json","../src/icon.ts","../src/mutex.ts","../src/controller.ts","../src/lookup.ts","../../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+b0def0f/node_modules/@cartridge/presets/src/generated/controller-configs.ts","../../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+b0def0f/node_modules/@cartridge/presets/src/generated/erc20-metadata.ts","../../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+b0def0f/node_modules/@cartridge/presets/src/index.ts"],"sourcesContent":["import {\n InvokeFunctionResponse,\n TypedData,\n WalletAccount,\n Call,\n AllowArray,\n} from \"starknet\";\n\nimport { SPEC } from \"@starknet-io/types-js\";\n\nimport {\n ConnectError,\n Keychain,\n KeychainOptions,\n Modal,\n ResponseCodes,\n} from \"./types\";\nimport { AsyncMethodReturns } from \"@cartridge/penpal\";\nimport BaseProvider from \"./provider\";\nimport { toArray } from \"./utils\";\n\nclass ControllerAccount extends WalletAccount {\n address: string;\n private keychain: AsyncMethodReturns<Keychain>;\n private modal: Modal;\n private options?: KeychainOptions;\n\n constructor(\n provider: BaseProvider,\n rpcUrl: string,\n address: string,\n keychain: AsyncMethodReturns<Keychain>,\n options: KeychainOptions,\n modal: Modal,\n ) {\n super({ nodeUrl: rpcUrl }, provider);\n\n this.address = address;\n this.keychain = keychain;\n this.options = options;\n this.modal = modal;\n }\n\n /**\n * Invoke execute function in account contract\n *\n * @param calls the invocation object or an array of them, containing:\n * - contractAddress - the address of the contract\n * - entrypoint - the entrypoint of the contract\n * - calldata - (defaults to []) the calldata\n * - signature - (defaults to []) the signature\n * @param abis (optional) the abi of the contract for better displaying\n *\n * @returns response from addTransaction\n */\n async execute(calls: AllowArray<Call>): Promise<InvokeFunctionResponse> {\n calls = toArray(calls);\n\n return new Promise(async (resolve, reject) => {\n const sessionExecute = await this.keychain.execute(\n calls,\n undefined,\n undefined,\n false,\n );\n\n // Session call succeeded\n if (sessionExecute.code === ResponseCodes.SUCCESS) {\n resolve(sessionExecute as InvokeFunctionResponse);\n return;\n }\n\n // Propagates session txn error back to caller\n if (this.options?.propagateSessionErrors) {\n reject((sessionExecute as ConnectError).error);\n return;\n }\n\n // Session call or Paymaster flow failed.\n // Session not avaialble, manual flow fallback\n this.modal.open();\n const manualExecute = await this.keychain.execute(\n calls,\n undefined,\n undefined,\n true,\n (sessionExecute as ConnectError).error,\n );\n\n // Manual call succeeded\n if (manualExecute.code === ResponseCodes.SUCCESS) {\n resolve(manualExecute as InvokeFunctionResponse);\n this.modal.close();\n return;\n }\n\n reject((manualExecute as ConnectError).error);\n return;\n });\n }\n\n /**\n * Sign an JSON object for off-chain usage with the starknet private key and return the signature\n * This adds a message prefix so it cant be interchanged with transactions\n *\n * @param json - JSON object to be signed\n * @returns the signature of the JSON object\n * @throws {Error} if the JSON object is not a valid JSON\n */\n async signMessage(typedData: TypedData): Promise<SPEC.SIGNATURE> {\n return new Promise(async (resolve, reject) => {\n const sessionSign = await this.keychain.signMessage(typedData, \"\", true);\n\n // Session sign succeeded\n if (!(\"code\" in sessionSign)) {\n resolve(sessionSign as SPEC.SIGNATURE);\n return;\n }\n\n // Session not avaialble, manual flow fallback\n this.modal.open();\n const manualSign = await this.keychain.signMessage(typedData, \"\", false);\n\n if (!(\"code\" in manualSign)) {\n resolve(manualSign as SPEC.SIGNATURE);\n } else {\n reject((manualSign as ConnectError).error);\n }\n this.modal.close();\n });\n }\n}\n\nexport default ControllerAccount;\n","import {\n constants,\n BigNumberish,\n Call,\n Abi,\n InvocationsDetails,\n} from \"starknet\";\nimport {\n AddInvokeTransactionResult,\n ChainId,\n Signature,\n TypedData,\n} from \"@starknet-io/types-js\";\nimport { KeychainIFrame, ProfileIFrame } from \"./iframe\";\nimport { ColorMode, Policy, SessionPolicies } from \"@cartridge/presets\";\n\nexport type Session = {\n chainId: constants.StarknetChainId;\n policies: Policy[];\n maxFee: BigNumberish;\n expiresAt: bigint;\n credentials: {\n authorization: string[];\n privateKey: string;\n };\n};\n\nexport enum ResponseCodes {\n SUCCESS = \"SUCCESS\",\n NOT_CONNECTED = \"NOT_CONNECTED\",\n ERROR = \"ERROR\",\n CANCELED = \"CANCELED\",\n USER_INTERACTION_REQUIRED = \"USER_INTERACTION_REQUIRED\",\n}\n\nexport type ConnectError = {\n code: ResponseCodes;\n message: string;\n error?: ControllerError;\n};\n\nexport type ControllerError = {\n code: Number;\n message: string;\n data?: any;\n};\n\nexport type ConnectReply = {\n code: ResponseCodes.SUCCESS;\n address: string;\n policies?: SessionPolicies;\n};\n\nexport type ExecuteReply =\n | (AddInvokeTransactionResult & {\n code: ResponseCodes.SUCCESS;\n })\n | {\n code: ResponseCodes.USER_INTERACTION_REQUIRED;\n };\n\nexport type ProbeReply = {\n code: ResponseCodes.SUCCESS;\n address: string;\n};\n\nexport type DeployReply = {\n code: ResponseCodes.SUCCESS;\n transaction_hash: string;\n};\n\nexport type IFrames = {\n keychain: KeychainIFrame;\n profile?: ProfileIFrame;\n version?: number;\n};\n\nexport interface LookupRequest {\n usernames?: string[];\n addresses?: string[];\n}\n\nexport interface LookupResult {\n username: string;\n addresses: string[];\n}\n\nexport interface LookupResponse {\n results: LookupResult[];\n}\n\ntype ContractAddress = string;\ntype CartridgeID = string;\nexport type ControllerAccounts = Record<ContractAddress, CartridgeID>;\n\nexport interface Keychain {\n probe(rpcUrl: string): Promise<ProbeReply | ConnectError>;\n connect(\n policies: SessionPolicies,\n rpcUrl: string,\n ): Promise<ConnectReply | ConnectError>;\n disconnect(): void;\n\n reset(): void;\n revoke(origin: string): void;\n\n deploy(): Promise<DeployReply | ConnectError>;\n execute(\n calls: Call | Call[],\n abis?: Abi[],\n transactionsDetail?: InvocationsDetails,\n sync?: boolean,\n paymaster?: any,\n error?: ControllerError,\n ): Promise<ExecuteReply | ConnectError>;\n signMessage(\n typedData: TypedData,\n account: string,\n async?: boolean,\n ): Promise<Signature | ConnectError>;\n logout(): Promise<void>;\n openSettings(): Promise<void | ConnectError>;\n session(): Promise<Session>;\n sessions(): Promise<{\n [key: string]: Session;\n }>;\n delegateAccount(): string;\n username(): string;\n fetchControllers(contractAddresses: string[]): Promise<ControllerAccounts>;\n openPurchaseCredits(): void;\n openExecute(calls: Call[]): Promise<void>;\n}\n\nexport interface Profile {\n navigate(path: string): void;\n}\n\nexport interface Modal {\n open: () => void;\n close: () => void;\n}\n\n/**\n * Options for configuring the controller\n */\nexport type ControllerOptions = ProviderOptions &\n KeychainOptions &\n ProfileOptions;\n\nexport type IFrameOptions = {\n /** The ID of the starter pack to use */\n starterPackId?: string;\n /** The theme to use */\n theme?: string;\n /** The preset to use */\n preset?: string;\n /** The color mode to use */\n colorMode?: ColorMode;\n};\n\nexport type Chain = {\n rpcUrl: string;\n};\n\nexport type ProviderOptions = {\n defaultChainId: ChainId;\n chains: Chain[];\n};\n\nexport type KeychainOptions = IFrameOptions & {\n policies?: SessionPolicies;\n /** The URL of keychain */\n url?: string;\n /** The origin of keychain */\n origin?: string;\n /** Propagate transaction errors back to caller instead of showing modal */\n propagateSessionErrors?: boolean;\n};\n\nexport type ProfileOptions = IFrameOptions & {\n /** The URL of profile. Mainly for internal development purpose */\n profileUrl?: string;\n /** The project name of Slot instance. */\n slot?: string;\n /** The namespace to use to fetch trophies data from indexer. Will be mandatory once profile page is in production */\n namespace?: string;\n /** The tokens to be listed on Inventory modal */\n tokens?: Tokens;\n};\n\nexport type ProfileContextTypeVariant =\n | \"inventory\"\n | \"trophies\"\n | \"achievements\"\n | \"activity\";\n\nexport type Tokens = {\n erc20?: string[];\n};\n","import {\n addAddressPadding,\n Call,\n CallData,\n constants,\n getChecksumAddress,\n hash,\n shortString,\n typedData,\n TypedDataRevision,\n} from \"starknet\";\nimport wasm from \"@cartridge/account-wasm/controller\";\nimport { Policies, SessionPolicies } from \"@cartridge/presets\";\nimport { ChainId } from \"@starknet-io/types-js\";\nimport { ParsedSessionPolicies } from \"./policies\";\n\n// Whitelist of allowed property names to prevent prototype pollution\nconst ALLOWED_PROPERTIES = new Set([\n \"contracts\",\n \"messages\",\n \"target\",\n \"method\",\n \"name\",\n \"description\",\n \"types\",\n \"domain\",\n \"primaryType\",\n]);\n\nfunction validatePropertyName(prop: string): void {\n if (!ALLOWED_PROPERTIES.has(prop)) {\n throw new Error(`Invalid property name: ${prop}`);\n }\n}\n\nfunction safeObjectAccess<T>(obj: any, prop: string): T {\n validatePropertyName(prop);\n return obj[prop];\n}\n\nexport function normalizeCalls(calls: Call | Call[]) {\n return toArray(calls).map((call) => {\n return {\n entrypoint: call.entrypoint,\n contractAddress: addAddressPadding(call.contractAddress),\n calldata: CallData.toHex(call.calldata),\n };\n });\n}\n\nexport function toSessionPolicies(policies: Policies): SessionPolicies {\n return Array.isArray(policies)\n ? policies.reduce<SessionPolicies>(\n (prev, p) => {\n if (safeObjectAccess<string>(p, \"target\")) {\n const target = getChecksumAddress(\n safeObjectAccess<string>(p, \"target\"),\n );\n const entrypoint = safeObjectAccess<string>(p, \"method\");\n const contracts = safeObjectAccess<Record<string, any>>(\n prev,\n \"contracts\",\n );\n const item = {\n name: humanizeString(entrypoint),\n entrypoint: entrypoint,\n description: safeObjectAccess<string>(p, \"description\"),\n };\n\n if (target in contracts) {\n const methods = toArray(contracts[target].methods);\n contracts[target] = {\n methods: [...methods, item],\n };\n } else {\n contracts[target] = {\n methods: [item],\n };\n }\n } else {\n const messages = safeObjectAccess<any[]>(prev, \"messages\");\n messages.push(p);\n }\n\n return prev;\n },\n { contracts: {}, messages: [] },\n )\n : policies;\n}\n\nexport function toWasmPolicies(policies: ParsedSessionPolicies): wasm.Policy[] {\n return [\n ...Object.entries(policies.contracts ?? {}).flatMap(\n ([target, { methods }]) =>\n toArray(methods).map((m) => ({\n target,\n method: m.entrypoint,\n authorized: m.authorized,\n })),\n ),\n ...(policies.messages ?? []).map((p) => {\n const domainHash = typedData.getStructHash(\n p.types,\n \"StarknetDomain\",\n p.domain,\n TypedDataRevision.ACTIVE,\n );\n const typeHash = typedData.getTypeHash(\n p.types,\n p.primaryType,\n TypedDataRevision.ACTIVE,\n );\n\n return {\n scope_hash: hash.computePoseidonHash(domainHash, typeHash),\n authorized: p.authorized,\n };\n }),\n ];\n}\n\nexport function toArray<T>(val: T | T[]): T[] {\n return Array.isArray(val) ? val : [val];\n}\n\nexport function humanizeString(str: string): string {\n return (\n str\n // Convert from camelCase or snake_case\n .replace(/([a-z])([A-Z])/g, \"$1 $2\") // camelCase to spaces\n .replace(/_/g, \" \") // snake_case to spaces\n .toLowerCase()\n // Capitalize first letter\n .replace(/^\\w/, (c) => c.toUpperCase())\n );\n}\n\nexport function parseChainId(url: URL): ChainId {\n const parts = url.pathname.split(\"/\");\n\n if (parts.includes(\"starknet\")) {\n if (parts.includes(\"mainnet\")) {\n return constants.StarknetChainId.SN_MAIN;\n } else if (parts.includes(\"sepolia\")) {\n return constants.StarknetChainId.SN_SEPOLIA;\n }\n } else if (parts.length >= 3) {\n const projectName = parts[2];\n if (parts.includes(\"katana\")) {\n return shortString.encodeShortString(\n `WP_${projectName.toUpperCase().replace(/-/g, \"_\")}`,\n ) as ChainId;\n } else if (parts.includes(\"mainnet\")) {\n return shortString.encodeShortString(\n `GG_${projectName.toUpperCase().replace(/-/g, \"_\")}`,\n ) as ChainId;\n }\n }\n\n throw new Error(`Chain ${url.toString()} not supported`);\n}\n","import { AsyncMethodReturns, connectToChild } from \"@cartridge/penpal\";\nimport { ControllerOptions, Modal } from \"../types\";\n\nexport type IFrameOptions<CallSender> = Omit<\n ConstructorParameters<typeof IFrame>[0],\n \"id\" | \"url\" | \"onConnect\"\n> & {\n url?: string;\n onConnect: (child: AsyncMethodReturns<CallSender>) => void;\n};\n\nexport class IFrame<CallSender extends {}> implements Modal {\n url?: URL;\n private iframe?: HTMLIFrameElement;\n private container?: HTMLDivElement;\n private onClose?: () => void;\n\n constructor({\n id,\n url,\n preset,\n theme,\n colorMode,\n onClose,\n onConnect,\n methods = {},\n }: Pick<ControllerOptions, \"theme\" | \"preset\" | \"colorMode\"> & {\n id: string;\n url: URL;\n onClose?: () => void;\n onConnect: (child: AsyncMethodReturns<CallSender>) => void;\n methods?: { [key: string]: (...args: any[]) => void };\n }) {\n if (typeof document === \"undefined\") {\n return;\n }\n\n if (theme) {\n url.searchParams.set(\"theme\", theme);\n }\n\n if (preset) {\n url.searchParams.set(\"preset\", preset);\n }\n\n if (colorMode) {\n url.searchParams.set(\"colorMode\", colorMode);\n }\n\n this.url = url;\n\n const iframe = document.createElement(\"iframe\");\n iframe.src = url.toString();\n iframe.id = id;\n iframe.style.border = \"none\";\n iframe.sandbox.add(\"allow-forms\");\n iframe.sandbox.add(\"allow-popups\");\n iframe.sandbox.add(\"allow-scripts\");\n iframe.sandbox.add(\"allow-same-origin\");\n iframe.allow =\n \"publickey-credentials-create *; publickey-credentials-get *; clipboard-write\";\n if (!!document.hasStorageAccess) {\n iframe.sandbox.add(\"allow-storage-access-by-user-activation\");\n }\n\n const container = document.createElement(\"div\");\n container.id = \"controller\";\n container.style.position = \"fixed\";\n container.style.height = \"100%\";\n container.style.width = \"100%\";\n container.style.top = \"0\";\n container.style.left = \"0\";\n container.style.zIndex = \"10000\";\n container.style.backgroundColor = \"rgba(0,0,0,0.6)\";\n container.style.display = \"flex\";\n container.style.alignItems = \"center\";\n container.style.justifyContent = \"center\";\n container.style.visibility = \"hidden\";\n container.style.opacity = \"0\";\n container.style.transition = \"opacity 0.2s ease\";\n container.appendChild(iframe);\n\n this.iframe = iframe;\n this.container = container;\n\n connectToChild<CallSender>({\n iframe: this.iframe,\n methods: { close: () => this.close(), ...methods },\n }).promise.then(onConnect);\n\n this.resize();\n window.addEventListener(\"resize\", () => this.resize());\n\n const observer = new MutationObserver(() => {\n const existingController = document.getElementById(\"controller\");\n if (document.body) {\n if (\n (id === \"controller-keychain\" && !existingController) ||\n id === \"controller-profile\"\n ) {\n document.body.appendChild(container);\n observer.disconnect();\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true,\n });\n\n const existingController = document.getElementById(\"controller\");\n if (document.body) {\n if (\n (id === \"controller-keychain\" && !existingController) ||\n id === \"controller-profile\"\n ) {\n document.body.appendChild(container);\n }\n }\n\n this.onClose = onClose;\n }\n\n open() {\n if (!this.container) return;\n document.body.style.overflow = \"hidden\";\n\n this.container.style.visibility = \"visible\";\n this.container.style.opacity = \"1\";\n }\n\n close() {\n if (!this.container) return;\n this.onClose?.();\n\n document.body.style.overflow = \"auto\";\n\n this.container.style.visibility = \"hidden\";\n this.container.style.opacity = \"0\";\n }\n\n sendBackward() {\n if (!this.container) return;\n this.container.style.zIndex = \"9999\";\n }\n\n sendForward() {\n if (!this.container) return;\n this.container.style.zIndex = \"10000\";\n }\n\n private resize() {\n if (!this.iframe) return;\n\n this.iframe.style.userSelect = \"none\";\n\n if (window.innerWidth < 768) {\n this.iframe.style.height = \"100%\";\n this.iframe.style.width = \"100%\";\n this.iframe.style.borderRadius = \"0\";\n return;\n }\n\n this.iframe.style.height = \"600px\";\n this.iframe.style.width = \"432px\";\n this.iframe.style.borderRadius = \"8px\";\n }\n}\n","export const KEYCHAIN_URL = \"https://x.cartridge.gg\";\nexport const PROFILE_URL = \"https://profile.cartridge.gg\";\nexport const API_URL = \"https://api.cartridge.gg\";\n","import { KEYCHAIN_URL } from \"../constants\";\nimport { Keychain, KeychainOptions } from \"../types\";\nimport { IFrame, IFrameOptions } from \"./base\";\n\ntype KeychainIframeOptions = IFrameOptions<Keychain> & KeychainOptions;\n\nexport class KeychainIFrame extends IFrame<Keychain> {\n constructor({ url, policies, ...iframeOptions }: KeychainIframeOptions) {\n const _url = new URL(url ?? KEYCHAIN_URL);\n\n if (policies) {\n _url.searchParams.set(\n \"policies\",\n encodeURIComponent(JSON.stringify(policies)),\n );\n }\n\n super({\n ...iframeOptions,\n id: \"controller-keychain\",\n url: _url,\n });\n }\n}\n","import { PROFILE_URL } from \"../constants\";\nimport { Profile, ProfileOptions } from \"../types\";\nimport { IFrame, IFrameOptions } from \"./base\";\n\nexport type ProfileIFrameOptions = IFrameOptions<Profile> &\n ProfileOptions & {\n rpcUrl: string;\n version?: string;\n username: string;\n slot?: string;\n namespace?: string;\n };\n\nexport class ProfileIFrame extends IFrame<Profile> {\n constructor({\n profileUrl,\n rpcUrl,\n version,\n username,\n slot,\n namespace,\n tokens,\n ...iframeOptions\n }: ProfileIFrameOptions) {\n const _profileUrl = (profileUrl || PROFILE_URL).replace(/\\/$/, \"\");\n let _url = new URL(\n slot\n ? namespace\n ? `${_profileUrl}/account/${username}/slot/${slot}?ps=${encodeURIComponent(\n slot,\n )}&ns=${encodeURIComponent(namespace)}`\n : `${_profileUrl}/account/${username}/slot/${slot}?ps=${encodeURIComponent(\n slot,\n )}`\n : `${_profileUrl}/account/${username}`,\n );\n\n if (version) {\n _url.searchParams.set(\"v\", encodeURIComponent(version));\n }\n\n _url.searchParams.set(\"rpcUrl\", encodeURIComponent(rpcUrl));\n\n if (tokens?.erc20) {\n _url.searchParams.set(\n \"erc20\",\n encodeURIComponent(tokens.erc20.toString()),\n );\n }\n\n super({\n ...iframeOptions,\n id: \"controller-profile\",\n url: _url,\n });\n }\n}\n","export class NotReadyToConnect extends Error {\n constructor() {\n super(\"Not ready to connect\");\n\n Object.setPrototypeOf(this, NotReadyToConnect.prototype);\n }\n}\n","import { WalletAccount } from \"starknet\";\nimport {\n AddInvokeTransactionParameters,\n AddStarknetChainParameters,\n Errors,\n Permission,\n RequestAccountsParameters,\n RequestFn,\n StarknetWindowObject,\n SwitchStarknetChainParameters,\n TypedData,\n WalletEventHandlers,\n WalletEventListener,\n WalletEvents,\n} from \"@starknet-io/types-js\";\nimport manifest from \"../package.json\";\n\nimport { icon } from \"./icon\";\nimport { Mutex } from \"./mutex\";\n\nconst mutex = new Mutex();\n\nexport default abstract class BaseProvider implements StarknetWindowObject {\n public id = \"controller\";\n public name = \"Controller\";\n public version = manifest.version;\n public icon = icon;\n\n public account?: WalletAccount;\n public subscriptions: WalletEvents[] = [];\n\n private _probePromise: Promise<WalletAccount | undefined> | null = null;\n\n protected async safeProbe(): Promise<WalletAccount | undefined> {\n // If we already have an account, return it\n if (this.account) {\n return this.account;\n }\n\n // If we're already probing, wait for the existing probe\n if (this._probePromise) {\n return this._probePromise;\n }\n\n const release = await mutex.obtain();\n return await new Promise<WalletAccount | undefined>(async (resolve) => {\n try {\n this._probePromise = this.probe();\n const result = await this._probePromise;\n resolve(result);\n } finally {\n this._probePromise = null;\n }\n }).finally(() => {\n release();\n });\n }\n\n request: RequestFn = async (call) => {\n switch (call.type) {\n case \"wallet_getPermissions\":\n await this.safeProbe();\n\n if (this.account) {\n return [Permission.ACCOUNTS];\n }\n\n return [];\n\n case \"wallet_requestAccounts\": {\n if (this.account) {\n return [this.account.address];\n }\n\n const silentMode =\n call.params && (call.params as RequestAccountsParameters).silent_mode;\n\n this.account = await this.safeProbe();\n\n if (!this.account && !silentMode) {\n this.account = await this.connect();\n }\n\n if (this.account) {\n return [this.account.address];\n }\n\n return [];\n }\n\n case \"wallet_watchAsset\":\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"wallet_watchAsset not implemented\",\n } as Errors.UNEXPECTED_ERROR;\n\n case \"wallet_addStarknetChain\": {\n let params = call.params as AddStarknetChainParameters;\n return this.addStarknetChain(params);\n }\n\n case \"wallet_switchStarknetChain\": {\n let params = call.params as SwitchStarknetChainParameters;\n return this.switchStarknetChain(params.chainId);\n }\n\n case \"wallet_requestChainId\":\n if (!this.account) {\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"Account not initialized\",\n } as Errors.UNEXPECTED_ERROR;\n }\n\n return await this.account.getChainId();\n\n case \"wallet_deploymentData\":\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"wallet_deploymentData not implemented\",\n } as Errors.UNEXPECTED_ERROR;\n\n case \"wallet_addInvokeTransaction\":\n if (!this.account) {\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"Account not initialized\",\n } as Errors.UNEXPECTED_ERROR;\n }\n\n let params = call.params as AddInvokeTransactionParameters;\n return await this.account.execute(\n params.calls.map((call) => ({\n contractAddress: call.contract_address,\n entrypoint: call.entry_point,\n calldata: call.calldata,\n })),\n );\n\n case \"wallet_addDeclareTransaction\":\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"wallet_addDeclareTransaction not implemented\",\n } as Errors.UNEXPECTED_ERROR;\n\n case \"wallet_signTypedData\": {\n if (!this.account) {\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"Account not initialized\",\n } as Errors.UNEXPECTED_ERROR;\n }\n\n return await this.account.signMessage(call.params as TypedData);\n }\n\n case \"wallet_supportedSpecs\":\n return [];\n case \"wallet_supportedWalletApi\":\n return [];\n default:\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: `Unknown RPC call type: ${call.type}`,\n } as Errors.UNEXPECTED_ERROR;\n }\n };\n\n on: WalletEventListener = <E extends keyof WalletEventHandlers>(\n event: E,\n handler: WalletEventHandlers[E],\n ): void => {\n if (event !== \"accountsChanged\" && event !== \"networkChanged\") {\n throw new Error(`Unknown event: ${event}`);\n }\n this.subscriptions.push({ type: event, handler } as WalletEvents);\n };\n\n off: WalletEventListener = <E extends keyof WalletEventHandlers>(\n event: E,\n handler: WalletEventHandlers[E],\n ): void => {\n if (event !== \"accountsChanged\" && event !== \"networkChanged\") {\n throw new Error(`Unknown event: ${event}`);\n }\n const idx = this.subscriptions.findIndex(\n (sub) => sub.type === event && sub.handler === handler,\n );\n if (idx >= 0) {\n this.subscriptions.splice(idx, 1);\n }\n };\n\n protected emitNetworkChanged(chainId: string) {\n this.subscriptions\n .filter((sub) => sub.type === \"networkChanged\")\n .forEach((sub) => {\n (sub.handler as WalletEventHandlers[\"networkChanged\"])(chainId);\n });\n }\n\n protected emitAccountsChanged(accounts: string[]) {\n this.subscriptions\n .filter((sub) => sub.type === \"accountsChanged\")\n .forEach((sub) => {\n (sub.handler as WalletEventHandlers[\"accountsChanged\"])(accounts);\n });\n }\n\n abstract probe(): Promise<WalletAccount | undefined>;\n abstract connect(): Promise<WalletAccount | undefined>;\n abstract switchStarknetChain(chainId: string): Promise<boolean>;\n abstract addStarknetChain(\n chain: AddStarknetChainParameters,\n ): Promise<boolean>;\n}\n","{\n \"name\": \"@cartridge/controller\",\n \"version\": \"0.6.0\",\n \"description\": \"Cartridge Controller\",\n \"module\": \"dist/index.js\",\n \"types\": \"dist/index.d.ts\",\n \"type\": \"module\",\n \"scripts\": {\n \"build:deps\": \"tsup --dts-resolve\",\n \"build\": \"pnpm build:deps\",\n \"format\": \"prettier --write \\\"src/**/*.ts\\\"\",\n \"format:check\": \"prettier --check \\\"src/**/*.ts\\\"\",\n \"test\": \"jest\",\n \"version\": \"pnpm pkg get version\"\n },\n \"exports\": {\n \".\": {\n \"types\": \"./dist/index.d.ts\",\n \"default\": \"./dist/index.js\"\n },\n \"./session\": {\n \"types\": \"./dist/session/index.d.ts\",\n \"default\": \"./dist/session/index.js\"\n },\n \"./provider\": {\n \"types\": \"./dist/provider/index.d.ts\",\n \"default\": \"./dist/provider/index.js\"\n },\n \"./types\": {\n \"types\": \"./dist/types/index.d.ts\",\n \"default\": \"./dist/types/index.js\"\n }\n },\n \"tsup\": {\n \"entry\": [\n \"src/**\"\n ],\n \"format\": [\n \"esm\"\n ],\n \"splitting\": false,\n \"sourcemap\": true,\n \"clean\": true\n },\n \"peerDependencies\": {\n \"starknet\": \"^6.21.0\"\n },\n \"dependencies\": {\n \"@cartridge/account-wasm\": \"workspace:*\",\n \"@cartridge/penpal\": \"^6.2.3\",\n \"@starknet-io/types-js\": \"^0.7.7\",\n \"@telegram-apps/sdk\": \"^2.4.0\",\n \"base64url\": \"^3.0.1\",\n \"cbor-x\": \"^1.5.0\",\n \"fast-deep-equal\": \"^3.1.3\",\n \"query-string\": \"^7.1.1\"\n },\n \"devDependencies\": {\n \"@cartridge/tsconfig\": \"workspace:*\",\n \"@types/jest\": \"^29.5.14\",\n \"@types/node\": \"^20.6.0\",\n \"jest\": \"^29.7.0\",\n \"ts-jest\": \"^29.2.5\",\n \"typescript\": \"^5.4.5\"\n }\n}\n","export const icon =\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABkyAAAZMgGvFqWRAAAAB3RJTUUH6AkEFwsj7EvbJQAAAAZiS0dEAP8A/wD/oL2nkwAAK45JREFUeNrt3XmUXVWBqPE42+3Qj5hQ995zb1WlUqkkVZlIAhnJPIKAIogICEGGtlugFVBaxAbsVgw+FWlooEFtRFAmZRbClDAlICAg4MTQDY4MAiIy6X5nX8JrQQippKruOef+vrW+Zf9hr2XOsPd3T52z96BBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgCWhpaRlWqVT2LFcq/5m6MvW+1EdTn08N3CCfX3sM7ysnydXpf56UHuNlpVKp3RUHAGjkpP+2dEL6aDox3WSyHljT4766lCQfSf/zb12JAIABobOz8y3pxHNIOhE9ZDJuuL8tVSoH9/T0vNmVCQDoN9KJf2Y66fzExJs570qSZJorFADQH5P/J9OJ5jmTbWb/LPBsKUkOdKUCAPqKN5TL5f8wyeYmBI5Lz9nrXbYAgI3hdemkcrKJNXee5NIFAGww6a/JI0ymGbFc7tV/v5Qkh7mCAQC9Jp1wFqcTyZ9Mvrn1T2nALXAlAwDWm8GDB7+zVKn8wiSaex8cMmTIO1zRAID1+/WfJF82eRbmpcCjXdEAgNekVqtV0onjaZNnYXxq6NChJVc2AGCdpL8Yl5s0C+fnXdkAgHXxxnSy+JUJs1jG9znSc/sGlzcA4NV+/S80YRbTliSZ5woHALwi6S/FL5gsC2qSfM4VDgB4RdKJ4jqTZWFd5QoHALxaADxqoiysD7nCAQB/RWtr6yYmyWIbF3hypQMAXkKpVGo3SRZ+UaBWVzoA4OUB0GOSLPjngKVStysdAPASWqrVsSbJgn8K2NIyxpUOABAAAgAAIAAEgAAAAAgACgAAgACgAAAACAAKAACAAKAAAAAIAAoAAIAAoAAAAAgACgAAgACgAAAACAAKAACAAKAAAAAIAAoAAIAAoAAAAAgACgAAgACgAAAACAABIAAAAAJAAAAAIAAEAABAAGTTreZ0hudu2iqTLp3dKQAAAAJAAAgAAIAAEAACAADQX7S2tm5SKpU2r1Qq25bL5X1Llcpn0oH/W6krXsv0/+cGAVDsAFh7jl/rWrg0vXZOqF875fI+a6+lye3t7f/HHQYADaZarQ5OB+YF6SB9cDlJTk3/79XpwP1w0V9iEwAN96F6RKTXXLz24jUYr0V3JAD0D69PkmR8+ivsn9IB+NzU+5v1LXYBkFnvr1+b5fIBaRCMS6/Z17ltAWDDfuF3pr+w/jH9pXV2/NXlEzYBkLcnBWkMnJVew/+waa023B0NAOugUqmMTCf8Q9PB81YTiAAomLemQfCpJEm63OkAsHbSjy9bpf95u0lCADSD6fV+WylJDovXvhEAQFPR3t7+1vTX0G7pYLjKhCAAmtyV6b2wa7wnjAwACkutVquUk+Rz6aD3iIFfAPAlPpzeG/82pK2tbKQAUKTH/BNTv5EOcs8Y6AUA1+kz8V6J94yRA0Au6enpeXMpSXZcu7CKgV0AsPf+IC5EVK1W/8aIAiAPv/Zr8VFmOnj9xgAuANgn/ibeU/HeMsIAyBqvS5JkfjpInZMOVs8ZsAUA+8Xn4j0W77VBFhoC0EgGDx78zvpiPZXKXQZnASAABtS74r0X70EjEYABo1QqdVcqlePSQegJA7EAEAAN9Yl4L8Z70sgEoL94Y7lcfl862FyZDjp/NvAKAAGQKf9cvzfTezTeq4YrABtNS0vLpunA8slm3oBHAAiAPJner78sVSpHJUlSNYIB6DXpL4lJ5SQ5MR1QnjKoCgABkNs1Bc6MWxYb0QCsk87OzrfEb/fTXw/XGzwFgAAolLfENQVaWlreZqQD8P+J25XGR4b15UgNlAJAABT5zwOP1Z/slcujjXxA8/L6+GgwPiJMB4bnDY4CQAA0lX+Kq3TGJ37pWPAGwyHQBGzS0fF38VGgb/cFgABg3SS5J77omzrECAkUkPTm3mztS31PGvQEgADgK/h0fCKYJMk0IyaQc2zIIwAEAG1EBDQRcU/xtd/uP2AgEwACgBuzEVH9BeFyuc3ICmT7Mf/Mtd/9PmvgEgACgH390mA6tmwzyEZEQEZ+7Q8Z8o74qC69MW83SAkAAcAB8CfxCWNra+smRmCgASRJ0rX22/1HDUgCQACwERsRxReLW6rVsUZkoP958dv9C2zIIwAEADPktfU1BSZNepNhGuhDbMhDAUAbEQFNhA15KABoIyKgSbAhDwUAbUQENNdj/o61L/U9ZMCgAKCNiIDmeKnPhjwUALQREVB0bMhDAUDWnwr8PL7gnCTJu8wMKDQ25KEAIG1EhCbBhjwUAKSNiNBE2JCHAoC0ERGaiLXf7p9qQx4KALJvXhqMq5+uXVPARkTI2K99G/JQAAgA2ogIzUO1Wh1hQx4KAAFAGxGhObAhDwWAAGDWNiIaNOiNpif0CzbkyZ8Tx7aFHZZ0hf13GxOWHzgxnP6FqeGKk7YMN5w6O9xyxpxc+uPvzstsAMT/bXk9rvGaiNdGvEbitRKvmXjtxGvIvZSvjYiq1WpixkJfvtRnQ56MW6slYZv5I8JRH9usPpD/+vJFmZ0omS/jtXT5iTPr19a7542oX2vuORsRoaC8uCFPeiFd52bKrh3DqmGfHbvDecdMD79btdhkxQExXmvfO2ZG2GuH0WFYe9W9mG1vXvuC9t+a2fBaj/ltyJMDt57bGc784rTw+DVLTEhsqI+tWhK+c/TU+rsZ7k0bESG/L/XZkCfjj/j3eX93WHPaHBMPM+ma02bXn0j5E4GNiJBx2tvb35pO+h9Nf/H/zE2RXcd1t4Uj99ss3H/xApMMc+EvLlsYvnrIJC8QZtw49sc5IM4FZsTm4Q3pSV9mid5su2hWZ/ivf90iPHn9UpMKc+lTNywN3/3K9LDj0pHu6Wz7QJwTPBEoOPFRf3qyf+iCz6ZtbUnYb5eecNuZc00gLJR3nzsvHLrv+DC8w0uDGfautX8aQJGoVqvjyuXyVS7wbDp1Ynv9kelvr/TpHovtIyuX1J9szZrS4d7PqulcYYXBgnzOl/7qP9LGPNkzqSb1R6PxEenTazzmZ3P5THrNX3XylmHvHbtDteqlwQx+NfBs6hFxDjGT5pAkSaalJ/JOF3O2HNlZDQcuG1d/JGoiILcK91wwv/6ia8+oVmNE9ryzJUmmmlHzwxvTclu+9nMPF3BGXDBzeP3Rp2/3yVf2D9e/8NLg1nNHGDMy9ulgXB9mkL0GMv+3/iQ9Wde4YLNha2tSf8QZH3Ua4Mn1N+5PEJ+UWWkwU66q1WoVM20GKVWrc9IT9CsXaeOd0NNaf6T5wKULDebkRvirFYvqL8huPqHd2JINHyqXy4vNuNn6vO8TVvFrvNsuGFF/hPnH1V7qI/vjpcHdthsVKomxpsE+X6pUDjbzNp7XpZP/0S7IxjlieK3+qPKOs73URw6EPz3vhZcGR3XVjEGNXUnw2HQOer1puAHE5RvLSXK2C7ExTp88rP5o8uGr7MJHNmpXwvhi7dxp1hRomOkcZCnhAWbw4MHvjC9kuAAH/tv9+AgyPop89kYDMJmllwbjKpqtNeNUI14OjHOSmXlg/t7/t2l1Xe2iGzjHdr/wUt99F9mQh8yyD162yEZEjflzwPVDhw59uxm6fz/z+5s0AK5wwQ3shjy/v863+6SNiPgaEXB5nKPM1P1AT0/Pm9PJ/0IXWv9vyBO/3Y97mxtIyfz7w+/Mrb+oayOiAfFSywf3w9v+6YH9lour/5wy8YWX+n5zhQ15yCJvRLSljYj6+8XAb8Y5y7TdR6QH9FAXlg15SNqIKCc7Cv6zmbsvJv9y+b3W9bchD0kbEeXIP5eS5P1m8I176W9ceiCfdDHZkIekjYhy5pNxDjOTb+jnfpXK3S4iG/KQtBFRTr0rzmVm9N4++q9UTnLxbPyGPP/zfRvykLQRUQPfBzjBjN77v/u7cDbw2/1vL58anlptACPZNy8NXnL8zPoLwzYi2sA1ArwPsH4MaWsrpwfsEReNDXlI2ogoJ7/yX+u/88jQoUNLZvjXoFSpnOGCWj+nTbIhD0kbEeXEb5nh1/3i3wIXyfp9ux8fydmQh2SjveHU2fUXjWs1awq8lnGOM9O/ylK/3vq3IQ/JfG9EtNkYGxGtY7+An9k++JVf/PuUC8SGPCRtRFTwpYIPNeP/Ba2trZukB+ZRF8dLN+RZ/U0b8pDMr7d+e46NiP76zwCPJUnyLjP///7tf7kLw4Y8JG1E1CR/CjjKzJ9Sq9Uq6QF5yoY8NuQhaSOiJvEPce7z679S+fdmvAC6Ol/4dv8uG/KQbEJ/fsGC+ovN3SNbm/UpwFebfbOfwc222U98BHbSZza3IQ9Jrt2IKK5eOn/G8KZ7CtDU7wI0y5v/cUOev/9AT/172Q29SX5w+pyw5/u6w+Tx7fbwJpm5P2VOGtcWdn/v6LDmtA0f5+IYGcfKOGY2yQuBn2zO2X/SpDelB+CBIp/c+D3sFw+aFH5x2cZtyHPpCVs2zQ1BMuc/eGqVcMGx0zdqzItjZhw7m2BNgf+Jc2Ez/u3/A0U9qdsv6grfO2ZG+OPqjX+pL35TO8HCGiRzZM+o1vDEtRv/Z844hsaxNI6pBX4KsFMzbvd7WdE25PnEh8eGO8/p25f64q9/AwrJvHneMdP7dCyMY2scY+NYW7BjdUkzfvr3fFG+3T/58C3Coyv7Z0Oe4w7d3GBCMncefdDEfhkT41gbx9w49hbkWD0fd8Ftph3/Dsr7SesYVg3LD5wYnry+f7/d//InJhlMSObOzx2wWf8uObx6q/oXVZ3DC7DKYJJ8vJkC4LY8n6xl23eH/75k4YB8IiMASAqAV/f+ixfUvz7I+fG6tSkm/5aWlo7cvqyRVOq/+gdyG14BQFIArNs4Jsdl1JMcfyK9aa02vBm+/T8gjycnPma68NgZA75IhgAgKQDWz8tOmBlGdubzTwKVSmU/b/9ndPKPC/E0YpUsAUBSAKy/N6VjdU53H/x+0R//vy39Rz6dt0UtVpw4s2HLZAoAkgKgd159yqw8Lp729NChQ99e3Jf/SqWlebuIz/zitIauky0ASAqA3nvG8mn5O27l8pIir/53ZJ5Oxj/tPrbhG2UIAJICYMPcf9cxeXsP4IgiB8AVeTkRcfndh69aLABIMqcB8MjKJfVNinJ03C4r6vz/hvQf90ReTkR8mzQLW2UKAJICYOO+DMjRcXs8zpXFewGwWh2bl5PwvsVdmdkrWwCQFAAbZ542EyqVSj12/2ug8Q1SAUCSxQiAq07Oz6ZqpSTZsYgBcMQ63nzMzMHfeu6IzFy0AoCkAOgbt57bmZcAOKyIAfCdPBz8+OmIACDJYgXA6UdNzcuxO90GQA1a9CcLb/4LAJICoI+/CLh6cV4WByrexkDpP+rRrB/4XbYZmakLVgCQFAB95wfePSoPx+7hQk3+7e3tb83DBXvKkVsIAJIsaACcfPgWeTh2f+7p6XlzkZYAbs/DBXtTgzb8EQAkBUD/u+a02XlZEbBWnDUAkmRq1g94tZqEJ65dIgBIsqABEMf4ONbnYC2AzYvz9/9yeUnWD/isKR2Zu1gFAEkB0LfO3KIj+8evXF5cpAB4b9YP+E5bjxQAJFnwANhhSfZXBaxUKtsWaQ2AnbN+wPfesVsAkGTBA+DDO3TnIQB2KlIALMv6Af/4HmMFAEkWPADiNu85WA1w9yL9CWCfrB/wT//9eAFAkgUPgDjW5+AdgH2KFAD7Zv2AHyYAuJ6O7qqF2VM7wtSJ7WFYe9UxIXMUAIflIwD2FQACQABkxOEd1fBv6YB25znzXnJ+nrphabj8xJnhQ+8Z7TiRAkAACAABUCS3XTAiPHDpwtc8V1ectGUY1VVzzEgBIAAEgADIux/cZlT4/XXrv0DUXefOC+N72hw7CgABIAAEgADIq0tnd4bHr+n96pB3nD3PkwAKAAEgAASAAMijUye1h1+tWLRRa453DPOCIAWAABAAAkAA5MYJY9rCvRct2Ohzd8nxM0OtljimFAACQAAIAAGQdbs6a+G2M+f22fn79vKpoZI4rhQAAkAACAABkFlbW5Nw5X9u2efn8JhPOocUAAJAAAgAAZBJk2oSvvuV6f12Hv/lH8Y7zhQAAkAACAABkDVPOGxyv57HZ2/cKuy/2xjHmgJAAAgAASAAsuJn9x+YgerpNUvDsu27HXMKAAEgAASAAGi0H9m5p/7rfKDOZ1xUaLuFXY49BYAAEAACQAA0yh2WdNXX8h/oc/rIyiVh/ozhzgEFgAAQAAJAAAy0i2d1hsdWLWnYeX3w0oVh8wntzgUFgAAQAAJAAAzYKn8T28MvVyxs+Ln9+fkLwrhu+wZQAAgAASAABEC/O2Z0a/jZ+fMzc35vP2tuGDnCvgEUAAJAAAgAAdBvjhheC7d+e07mzvHKr80KbW2WDKYAEAACQAAIgL5f5a9WCZefODOT5zh64bEzQrUqAigABIAAEAACoM+Ma/GfsXxaZif/F/3GZ7dwvigABIAAEAACoK88/tObZ37yf9GjD5ronFEACAABIAAEwMZ6yF7jcjP5v+g/7T7WuWugc6d1hC+l992lJ2wZbjp9TrjljMZ4c+qKE2fWA3bruSMEgAAQAAKA6+u86cPDU6u3yl0A/OH6pWHmFh3OYQNeEo3bNw/kypC9MQZJnj4bFQACQAAIgIb5/f+YmbvJ/0XjzoTO4QC+JNqahOu+MSvz18Xd587LzWejAkAACAAB0BDH97TVN9/JawDEJYqtDzBwHvHRCbm5Nk4+YgsBIAAEgADgq7n7e0fndvJ/0fdvNdK5HCB/et783FwXv1u1uP7EQgAIAAEgAPgKHrzn2NwHwEd3GeNcDtAaEc/k7GlRXM5aAAgAASAA+Aruv9uY3AfA3jt2O5cD4PCOau6ujTnThgsAASAABABfyW3mj8h9AMSvGJxLASAABIAAEADs5VvdD121OLeT/4OXLbI0sAAQAAJAAAgAg/SG+NVDJuU2AL7wMSsCCgABIAAEgAAwSG+Q8TO6+y9ekLvBPW5XHCcl51AACAABIAAEADfQRbM6wyMrl+RmYP/tlYtyMbgLAAEgAASAABAAmTcOlneeMy/zg/ptZ84N0ycPc84EgAAQAAJAAAiAvrJWS8L+u44JV58yKzxxbXaeCDy2akm44qQtw0d27vHSnwAQAAJAAAgAAdDv7wd0VsOorlpD7eq01K8AEAACQAAIAAFACgABIAAEgAAQAKQAEAACQAAIAJICQAAIAAEgAEgKAAEgAASAACApAASAABAAAoCkABAAAkAACIDcOntqRzj6oInhkuNnhjWnzQkrTpwZjv3nyeHd80aYuFKTahJ2WNIVTjhscn0tgXiMLvr3GfWBNw/7xQsAASAABIAAEAAvcVx3W/jeMTPWeVxWf3N2mDu9o2knrW0XjAh3nPXqqxs+s2Zp+Nbnp9bXOzDJCwABIAAEgADIvPNnDA8PXLpwvY7Nk9cvDcu27266Cevje4wNT6cT/Poco5+eNz9MneRpgAAQAAJAAAiADLv9oq5eb9zz1A1Lw9ZzO5vmGO227aj6r/veHKNfrlgYFm7ZabIXAAJAAAgAAZA94y/5+It+Q47RXefOq6/1X/Rj1Dm8Gh5cz6cjL/fRlYvr7wuY8AWAABAAAkAAZMYDl41b70far+Ye248u/HE6eM+xG3WM/pAG1l47jDbpCwABIAAEgABovEfut1l49saNP06nHzW18BNV/ApiY49TDK0YEiZ+ASAABIAAEAAN+4Tt5MO36LPjdMsZcwo/UT2wgY//X8nlH59o8hcAAkAACAABMLC2tibh3C9P79PjdO+F8ws/UT1+zZI+PWZfO3JKPcSsp5DUXybNUwBMGNMmAASAABAA+fu11RePsl/ufRctKPxE9fvrlvT5cbvw2BmhvU0E3HDq7NxM/vem13olqQgAASAABEB+HN1VC2tO65+BVgBsuKu+Pit0ddaaOgB2f+/o3ATAJz6cj3c4BIAAEAACoO7mE9rDT743v9+OkwDYOO84e14uHiv3p8d8clLmJ//TvzA1N3+2EQACQAAIgPqa/v/z/YX9epwEQN+8R9Hsqwbuu1NP/ThkbRx48LJF9a838vDoXwAIAAEgAOpuNacz/PbKRf1+nARA3/iLyxbWl2Nu5giopr+wt547ov6oPX6m2kgP2XtcfYXM+OJs3o6jABAAAqCJA2C37UYNyKQlAPrWx1YtCTsuHekTQQoAASAABEDv3W+XnvDU6oE7TgKgb42rBu69Y7eJjAJAAAgAAbD+Hrrv+D5Z3U8ANC4AXlw18KBlVg2kABAAAkAAvIbxBaVjPzW5IcdJAPSfXz1kkgmNAkAACAAB8OovTn3n6KkNO04CoH894bDJJjUKAAEgAATAX3vKkVs09DgJgP73qI9tZmKjABAAAkAA/MXb/tuOavhxEgD9b3yvY8nsTpMbBYAAEAAC4AVvP2uuAGiCAIhefuJMkxsFgAAQAAKgEqZPHpaJ4yQABu7LgJ5RrSY4CgABIACaPQD233WMAGiiAIju/O5RJjgKAAEgAJo9AOJypQKguQIgRp8JjgJAAAiAJg+AQ/YaJwCaLAD2fJ8VAikABIAAaPoA+MC7RwmAJguAudM7THAUAAJAADR7ALS1JeHRlYsFQJMEwL3pcc7TlrQUAAJAAAiAfvTYf54sAJokAOI+DyY3CgABIAAEQN2uzlq498L5AqDgAfDD78wNrTUTGwWAABAAAuBl6wH8+vJFAqCgARAf/U8Y02ZiowAQAAJAAPy1Uye2h5+fv0AAFCwA7jp3Xpg8vt2kRgEgAASAAHh1x/e0hVu/PUcAFCQA1pw2O3SPtPIfBYAAEAACYD3sHF4NK06cKQByHgAXHjsjDGuvmswoAASAABAA629raxLO/OI0AZDTADj58C1CUk1MZBQAAkAACIDeG78XX37gRAGQowCIW/7Gc2YCowAQAAJAAGy0n9p3fHhmzVIBkPEA+OPqpeFje4w1eVEACAABIAD6zmXbd4cnr18qADIaAI9fsyR8cBu7/FEACAABIAD6we0XdYVHrl4sADIWAL9csTAsmtVp0voLR3XVwnsWdtU3Ptp7x8a41w6j6/fMuO42ASAABIAAyL+zp3aE/75koQDISADcc8H8MG3SMJP+WhfMHB4uPWHL8HQ//8mqt+9lXPeNWfUYEAACQAAIgFwbF5WJi8v09Up1RZ+cnri2bwPgptPnhDGjfeP/ov/4wTHhqRuWZnIciMb3aI7cbzMBIAAEgADIt6O7auGGU2f32XG67cy5hZ+gHrys75Zajr9yh3f4xv9FF8/qrL8EmdXJ/y/d/b2jBYAAEAACIN/GrYTP/cr0PjlOZ31xWuEnqZVfm9Unx+r0L0y1qc/LvOT4mbmY/KN3nD1PAAgAASAA8m+1moSvHTllo49TfHxb9Enq8H+YsNHH6f8ePKm+PoNJ/6XGryDyEgDRPPzpRgAIAAEgANZ7sIgvO23IMbr/4gWhva34q9bFNfk39CuK+FLbwXv6xv+V7BhWzdXkH40v0woAASAABEBh3H/XMb3+O2x8MWrXbZvn+/UDPjSm19dQ/Hpgj+1Hm+xfxfguRN4CYM604QJAAAgAAVAs42I0j61ast6fRx2y17imm7C+eNCk9b5+fnvlorDN/BEmegEgAASAABAA2XfLKR31T9Re67O/D7y7eVeu22fH7vCLy9a9nsLVp8yqf3JpkhcAAkAACAABkKuNhHbZZmT9jfUfnT23vtDP3efOC+d8aVr4yM499d0GTVzV+p8ELjh2evjxd+fVj9HtZ80N//WvW+Ru0RgBIAAEgAAQAAKAFAACQAAIAAEgAEgBIAAEgAAQACQFgAAQAAJAAJAUAAJAAAgAAUBSAAgAASAABABJASAABIAAEAD8iyV141oDi2Z1NtT4v2FUV805EQACQAAIAAEgAPrLrs5afUCK38tn6fzG1QzvPGdeOOKjE2zPKwAEgAAQAAJAAPSlcVGcBy9blPlB/b8vWRi2nmvZXgEgAASAABAAAmCjff9WI8Mfrl+am4E9btyz3UKr+AkAASAABIAAEAAb7ISe1vpmOHkb3OPTiviegnMoAASAABAAAoAb4NeOnJK7gf1Fjzt0c+dQAAgAASAABIBBurd2DKuu97bCWfShqxbb8EgACAABIAAEgEG6t75vcVduJ/8XXTq707kUAAJAAAgAAcDe+PE9xuY+APbdqce5FAACQAAIAAHA3njQsvwHwD9+cIxzKQAEgAAQAAKAvXGXbUbmPgDi+gXOpQAQAAJAAAgA9sLRXbXw1A1Lczv5P3HtEisDCgABIAAEgAAwSG+I53xpWm4D4Fufn+ocDpBtbUnuro8Zmw8TAAJAAAgAvppTJ7aHx6/J36eAj65cHCaNa3MOB9AHL12Ym+sjPtmKn7kKAAEgAAQA12F8kz5uuJOXwf2ZNUvDsu27nbsB9vhPb56ba+TcL0/PxTEVAAJAAAiAhht32svL4P7pPAxOBXTkiFq454L5mb8+fn35ojB5fLsAEAACQABwff2Pw7L/C2/5gROdqwa6+YT28IPT52T2+ohbWc+d1pGb4ykABIAAEACZsJJUwreXT83s4P71z05xnjJgtZqEfd7fHS44dnq496IF4eGrFjfUuEX0pSdsGQ740JjcLQ0tAASAABAAmbG1VglX/ueWmTvHFx47oz7xOEcskgJAAAgAAZApuzpr4YffmZuZ87vya7Pqn6E5NxQAAkAACAAB0M+O7W4NPz9/QcPP7c1nzAkjhtecEwoAASAABIAAGLA1Aia1h1+tWNSw8xoDZFy3b/0pAASAABAAAmDAXTK7Mzy2auAXCoqLzsQ3zp0DCgABIAAEgABo4KZBf1w9cHsGPLJySZg3fbhjTwEgAASAABAAjTZuuzsQqwX+/rolYdsFIxxzCgABIAAEgABolsHqqdVb1Z82ONZ0TwkAASAABEDGPPEz/bNaYHy6sP+uYxxjCgABIAAEgADIokk1Cd/9yvQ+P4ef+Yj1/SkABIAAEAACINurBbYm4aqTt3T+SAEgAASAAGjG1QJvP2vjVws8Y/m0+h4EjikFgAAQAAJAAOTECWPawn0XbfhqgRcfNyPUapb4pQAQAAJAAAiA3DlrSkd46KrFvT5nq74+K7Rb358CQAAIAAEgAPLr1nM7exUBN5w6O4zsrDp2FAACQAAIAAFQhCcBr/VOQPzU7/SjpvrlTwoAASAABECRrFaTsN8uPWHFiTPD49csecm6/qd9bkp9XwHHiRQAAkAACICCG7fxbfNrnxQAAkAACACSFAACQAAIAJICQAAIAAEgAEgKAAEgAASAACApAASAABAAAoCkABAAAkAACACSAkAACAABIABICgABIAAEAEkKAAEgAAQASQoAASAABABJCgABIAAEAEkKAAEgAAQASQoAASAABABJCgABIAAEAEkKAAEgAAQASQoAASAABABJCgABIAAEAEkKAAFQiAD4tAAgycIHwKcFwIAHwD5ZP+CH7D1OAJBkwQPgkL3G5SEA9ilSAOyd9QN+0LKxAoAkCx4ABy7LfgBUKpW9ChMA6T/mw1k/4Ad8aIwAIMmCB8D+u43JQwDsWaQnALtl/YDvvWO3ACDJggfAXjuMzsOfAHYp0hOA92T9gG+3sCuTF+u/HzrZYEIydy4/cGImx9Rt5o/IwxOAbQoTAC1JMi/rB3zM6NZMXqwXHzfDYEIyd5775emZHFN7RrVm/tiVSqXZRfoTwOQ8XLD3X7wgcxfr769bkosLliRftKuzFn63anHmxtP7LlqQi+NXqVQmFulPAK15OOhf/+yUTBbrOV+aFpJqYmAhmf3JK6mE078wNZNjaRzj83AMkySpDioQb0gj4NmsH/T3Lc7mewDRFSfODFvPHRFaW4UAyewZx6alszvDJcfPzOw4uv2irjwcy2fSOfP1RQqAQek/6t48XMQ3nzEnsxdv9Jk1S8PDVy0myUz5dDo2ZXnsjGN7HuagUqXys0FFo1KpXJmHg//+rUaGZ2/cKtMXMkly/Y1j+k5bj8xLAFxexAD4el4eZZ32uSluGpIsiN/8tym5+VNKGgCnFC4AyknysbycgI5h1bDmtDluHJLMubecMSd0Dq/m532KcvmAIj4BmJ6nF1rG97SFey+c7wYiyZwax/A4ludp7mlJkqmFC4D29va3xrcb83QiJo9vD/dcIAJIMm/GdV2mTByWt68pnuns7HzLoCJSTpIb8/ZpS4yAn1+wwA1Fkjma/LfYbFj+PqdM58hBRaVUqRybx+9bJ41rEwEkmQPjan+5nPxfeAHwq4UNgEqlsnNeF7kQASRp8u/nJYB3LmwAJEnyrvQf+bwIIEma/F/i83GOHFRk0n/ktXle7rIeAeeLAJLM0uS/+YT2vC+nvHJQ0alUKp/I+5rXE8eKAJLMxKd+xZj849//D2qGAKil/9g/iQCSpMm/7p+KtgPgq/8ZoFy+qgi7X8UFJu4+d54bkSQH2J+dP7/+Q6wQWyhXKlcMahZKSbJHUbbAFAEkOfCT/2ZjijH51x//p3Ni0wRAXOko/Uf/pkgRcJcIIEmTf+99qFqt/s2gZiL9R3++QCcwjOsWASRp8u/15j//OqjZqFQqranPigCS5Gv50/MKOPlXKs+kv/6TQc1I+o8/qWAnUwSQZD9M/hOKN/nHX/8nDGpW4lOA9CA8XcQIuPMcEUCSG+tPvlfQyT/99V8qldoHNTNpBBxXwBMrAkjS5L+uT/+OG9TstLS0bJoejN8V8QSP7W4VASRp8n+5jw9paysPQv0pwP4FPcn1CPjR2XPd0CTZm8m/p7Wok3/89f9RM///8sb0gNwuAkiyuf3xd+cVevJP/WGc80z7f/mngGp1SnpgnhMBJGnyL6jPxbnOjP/Kfwo4ssAnvh4Bd5ztnQCSbMLJPz76P9xM/2pMmvSm9CDdVOQLYMxoEUCSL5/845LqRR7749wW5zgT/bqfAoyMb0iKAJIsvnEztSaY/J+Ic5sZfv0iYNu4P7IIIEmTf879czqnbWdm782WwZXKvxT8onghAs4SASSbzzj29YxqLfrkH+JcZkbvPa8rl8tnFf3iGNVVC7ecMceAQLJpvP2suU0x+ZeT5Jw4l5nON4ChQ4e+PT2Id4kAkjT55+yN/yvb29vfaibf2KWCk+SOZoiAm0UASZN/EX753zhkyJB3mMH7gE033bSlGZ4EdI9sDWtOEwEki+ea02aH0ekPncJP/pXKnemv/yFmbk8Ceu3wjmq45PiZBgyShfHi42aEjmHVZpj8f1yr1Spm7P57EnBn4f92lFTCYX8/Pjx5/VKDB8nc+vvrloRP7Tu+PqY1wy//OEeZqfs/An7UBBdTmDi2LXz9s1PC71YtNpiQzI2PrlwcTjlyi7DZmLZmmPijPzL5D9QaAaXS0CLvHvhyh7VXw4feMzp86ROTwgXHTq//LS0uInTPBfNJsqHGsWj1N2eH8786vT5GxbEqjlnNMj6n3j2kra1sZhYBJEmTPwYiAkqVym0uQpLkAHvX0KFDS2ZiEUCSNPljoGltbd0kPSE/cFGSJE3+zRkBN7k4SZL95A8t8iMCSJImf2SJ9vb2/yMCSJIm/2aNgCS50UVLktxIbzX5iwCSZJNN/kmSvMuMKgJIkiZ/5CoCyuU1LmaSpMlfBJAk+UreYvIvGJt0dPydCCBJmvybNAIqlcpqFzlJ8uWTf7VaHWymFAEkyebxZpO/CCBJmvzRBBFwg4ufJE3+EAEkyebwByZ/ESACSLKJjGN+HPvNgBg0ePDgd5YqlevdGCRp8kcTRkB6cVznBiHJYhp/6MWx3oyHv2LIkCHvEAEkWUivM/ljnbS0tLytXC5f5WYhSZM/mvNJwDVuGpLMvdfGMd3MhvVm6NChb08vnMvcPCSZU8vlNSZ/bBCdnZ1vKVUq57uRSDJ3b/tfEH/Imcmw4Uya9Kb0YjrdDUWSufG0OHabwNAXvC6tySPSi+rPbiySzKx/LlUq/xLHbNMW+pRyubxLeoH90U1GkpnzqfSH2s5mKvQbpVKpO73Q7nSzkWRm/EmSJOPNUBiQzwRLlcoZbjqSbLBJ8k0v+2HAqVQqO6UX4G/dhCQ54P66lCQ7mInQyD8JDPWVAEkO7Fv+SZK8ywyErITA7PSivNmNSZL95g/K5fIsMw6yyOsrlcqy9CK9341Kkn3mfaUk+VAcY00zyDaTJr0pvVj3SC/au924JLnB3lWf+C3qg5w+EXhPOUkuTi/k593MJPmaPl8uly9Kx87t/OJHIUiSpFqqVD7jqQBJvqJ3p7/2D4tjpRkDRY6BrjQGDi6/sOXwc258kk1oHPuuiWNhHBPNDGg6Wlpa3pZe/PMrlcrh6Y1wXnzZxcBAsoDeG8e4uFZ/HPPi2GcGAF5GfaXBUqmnVK1uVS6X90n9bOp/pTfQuakr4h7X6X/+qJwk95BkQ41j0Qtj0or6GJWOVekPmiPj2BXHsDiWxTHNyA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATcP/A/VYuD9l6UjwAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDI0LTA5LTA0VDIzOjExOjM1KzAwOjAw9BAQcQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyNC0wOS0wNFQyMzoxMTozNSswMDowMIVNqM0AAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAV3pUWHRSYXcgcHJvZmlsZSB0eXBlIGlwdGMAAHic4/IMCHFWKCjKT8vMSeVSAAMjCy5jCxMjE0uTFAMTIESANMNkAyOzVCDL2NTIxMzEHMQHy4BIoEouAOoXEXTyQjWVAAAAAElFTkSuQmCC\";\n","function releaseStub() {}\n\n/**\n * A simple mutual exclusion lock. It allows you to obtain and release a lock,\n * ensuring that only one task can access a critical section at a time.\n */\nexport class Mutex {\n private m_lastPromise: Promise<void> = Promise.resolve();\n\n /**\n * Acquire lock\n * @param [bypass=false] option to skip lock acquisition\n */\n public async obtain(bypass = false): Promise<() => void> {\n let release = releaseStub;\n if (bypass) return release;\n const lastPromise = this.m_lastPromise;\n this.m_lastPromise = new Promise<void>((resolve) => (release = resolve));\n await lastPromise;\n return release;\n }\n}\n","import { AsyncMethodReturns } from \"@cartridge/penpal\";\n\nimport ControllerAccount from \"./account\";\nimport { KeychainIFrame, ProfileIFrame } from \"./iframe\";\nimport { NotReadyToConnect } from \"./errors\";\nimport {\n Keychain,\n ResponseCodes,\n ConnectReply,\n ProbeReply,\n ControllerOptions,\n ConnectError,\n Profile,\n IFrames,\n ProfileContextTypeVariant,\n Chain,\n} from \"./types\";\nimport BaseProvider from \"./provider\";\nimport { WalletAccount } from \"starknet\";\nimport { Policy } from \"@cartridge/presets\";\nimport { AddStarknetChainParameters, ChainId } from \"@starknet-io/types-js\";\nimport { parseChainId } from \"./utils\";\n\nexport default class ControllerProvider extends BaseProvider {\n private keychain?: AsyncMethodReturns<Keychain>;\n private profile?: AsyncMethodReturns<Profile>;\n private options: ControllerOptions;\n private iframes: IFrames;\n private selectedChain: ChainId;\n private chains: Map<ChainId, Chain>;\n\n constructor(options: ControllerOptions) {\n super();\n\n const chains = new Map<ChainId, Chain>();\n\n for (const chain of options.chains) {\n const url = new URL(chain.rpcUrl);\n const chainId = parseChainId(url);\n chains.set(chainId, chain);\n }\n\n if (\n options.policies?.messages?.length &&\n options.policies.messages.length !== chains.size\n ) {\n console.warn(\n \"Each message policy is associated with a specific chain. \" +\n \"The number of message policies does not match the number of chains specified - \" +\n \"session message signing may not work on some chains.\",\n );\n }\n\n this.chains = chains;\n this.selectedChain = options.defaultChainId;\n\n if (!this.chains.has(this.selectedChain)) {\n throw new Error(\n `Chain ${this.selectedChain} not found in configured chains`,\n );\n }\n\n this.iframes = {\n keychain: new KeychainIFrame({\n ...options,\n onClose: this.keychain?.reset,\n onConnect: (keychain) => {\n this.keychain = keychain;\n },\n }),\n };\n\n this.options = options;\n\n if (typeof window !== \"undefined\") {\n (window as any).starknet_controller = this;\n }\n }\n\n async probe(): Promise<WalletAccount | undefined> {\n try {\n await this.waitForKeychain();\n\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n const response = (await this.keychain.probe(this.rpcUrl())) as ProbeReply;\n\n this.account = new ControllerAccount(\n this,\n this.rpcUrl(),\n response.address,\n this.keychain,\n this.options,\n this.iframes.keychain,\n );\n } catch (e) {\n console.error(e);\n return;\n }\n\n if (!this.iframes.profile) {\n const username = await this.keychain.username();\n\n this.iframes.profile = new ProfileIFrame({\n ...this.options,\n onConnect: (profile) => {\n this.profile = profile;\n },\n methods: {\n openSettings: () => this.openSettings.bind(this),\n openPurchaseCredits: () => this.openPurchaseCredits.bind(this),\n openExecute: () => this.openExecute.bind(this),\n },\n rpcUrl: this.rpcUrl(),\n username,\n version: this.version,\n });\n }\n\n return this.account;\n }\n\n async connect(): Promise<WalletAccount | undefined> {\n if (this.account) {\n return this.account;\n }\n\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n if (!!document.hasStorageAccess) {\n const ok = await document.hasStorageAccess();\n if (!ok) {\n await document.requestStorageAccess();\n }\n }\n\n this.iframes.keychain.open();\n\n try {\n let response = await this.keychain.connect(\n this.options.policies || {},\n this.rpcUrl(),\n );\n if (response.code !== ResponseCodes.SUCCESS) {\n throw new Error(response.message);\n }\n\n response = response as ConnectReply;\n this.account = new ControllerAccount(\n this,\n this.rpcUrl(),\n response.address,\n this.keychain,\n this.options,\n this.iframes.keychain,\n );\n\n return this.account;\n } catch (e) {\n console.log(e);\n } finally {\n this.iframes.keychain.close();\n }\n }\n\n async switchStarknetChain(chainId: string): Promise<boolean> {\n try {\n this.selectedChain = chainId;\n this.account = await this.probe();\n if (!this.account) {\n this.account = await this.connect();\n }\n } catch (e) {\n console.error(e);\n return false;\n }\n\n this.emitNetworkChanged(chainId);\n return true;\n }\n\n addStarknetChain(_chain: AddStarknetChainParameters): Promise<boolean> {\n return Promise.resolve(true);\n }\n\n async disconnect() {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n if (!!document.hasStorageAccess) {\n const ok = await document.hasStorageAccess();\n if (!ok) {\n await document.requestStorageAccess();\n }\n }\n\n this.account = undefined;\n return this.keychain.disconnect();\n }\n\n async openProfile(tab: ProfileContextTypeVariant = \"inventory\") {\n if (!this.profile || !this.iframes.profile?.url) {\n console.error(\"Profile is not ready\");\n return;\n }\n if (!this.account) {\n console.error(\"Account is not ready\");\n return;\n }\n\n this.profile.navigate(`${this.iframes.profile.url?.pathname}/${tab}`);\n this.iframes.profile.open();\n }\n\n async openSettings() {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return null;\n }\n if (this.iframes.profile?.sendBackward) {\n this.iframes.profile?.sendBackward();\n } else {\n this.iframes.profile?.close();\n }\n this.iframes.keychain.open();\n const res = await this.keychain.openSettings();\n this.iframes.keychain.close();\n this.iframes.profile?.sendForward?.();\n if (res && (res as ConnectError).code === ResponseCodes.NOT_CONNECTED) {\n return false;\n }\n return true;\n }\n\n revoke(origin: string, _policy: Policy[]) {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return null;\n }\n\n return this.keychain.revoke(origin);\n }\n\n rpcUrl(): string {\n return this.chains.get(this.selectedChain)!.rpcUrl;\n }\n\n username() {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n return this.keychain.username();\n }\n\n fetchControllers(\n contractAddresses: string[],\n ): Promise<Record<string, string>> {\n if (!this.keychain) {\n throw new NotReadyToConnect().message;\n }\n\n return this.keychain.fetchControllers(contractAddresses);\n }\n\n openPurchaseCredits() {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n if (!this.iframes.profile) {\n console.error(\"Profile is not ready\");\n return;\n }\n this.iframes.profile.close();\n this.iframes.keychain.open();\n this.keychain.openPurchaseCredits();\n }\n\n async openExecute(calls: any, chainId?: string) {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n if (!this.iframes.profile) {\n console.error(\"Profile is not ready\");\n return;\n }\n // Switch to the chain if provided\n let currentChainId = this.selectedChain;\n if (chainId) {\n this.switchStarknetChain(chainId);\n }\n // Switch iframes\n this.iframes.profile?.sendBackward();\n this.iframes.keychain.open();\n this.iframes.profile?.close();\n // Invoke execute\n const res = await this.keychain.execute(calls, undefined, undefined, true);\n // Switch back iframes\n this.iframes.profile?.open();\n this.iframes.keychain.close();\n this.iframes.profile?.sendForward();\n // Switch back to the original chain\n if (chainId) {\n this.switchStarknetChain(currentChainId);\n }\n return !(\n res &&\n ((res as ConnectError).code === ResponseCodes.NOT_CONNECTED ||\n (res as ConnectError).code === ResponseCodes.CANCELED)\n );\n }\n\n async delegateAccount() {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return null;\n }\n\n return await this.keychain.delegateAccount();\n }\n\n private waitForKeychain({\n timeout = 5000,\n interval = 100,\n }:\n | {\n timeout?: number;\n interval?: number;\n }\n | undefined = {}) {\n return new Promise<void>((resolve, reject) => {\n const startTime = Date.now();\n const id = setInterval(() => {\n if (Date.now() - startTime > timeout) {\n clearInterval(id);\n reject(new Error(\"Timeout waiting for keychain\"));\n return;\n }\n\n if (!this.keychain) return;\n\n clearInterval(id);\n resolve();\n }, interval);\n });\n }\n}\n","import { LookupRequest, LookupResponse } from \"./types\";\nimport { num } from \"starknet\";\nimport { API_URL } from \"./constants\";\n\nconst cache = new Map<string, string>();\n\nasync function lookup(request: LookupRequest): Promise<LookupResponse> {\n if (!request.addresses?.length && !request.usernames?.length) {\n return { results: [] };\n }\n\n const response = await fetch(`${API_URL}/lookup`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(request),\n });\n\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n\n return response.json();\n}\n\nexport async function lookupUsernames(\n usernames: string[],\n): Promise<Map<string, string>> {\n const uncachedUsernames = usernames.filter((name) => !cache.has(name));\n\n if (uncachedUsernames.length > 0) {\n const response = await lookup({ usernames: uncachedUsernames });\n\n response.results.forEach((result) => {\n cache.set(result.username, result.addresses[0]); // TODO: handle multiple controller addresses\n });\n }\n\n return new Map(\n usernames\n .map((name) => [name, cache.get(name)] as [string, string])\n .filter((entry): entry is [string, string] => entry[1] !== undefined),\n );\n}\n\nexport async function lookupAddresses(\n addresses: string[],\n): Promise<Map<string, string>> {\n addresses = addresses.map(num.toHex);\n const uncachedAddresses = addresses.filter((addr) => !cache.has(addr));\n\n if (uncachedAddresses.length > 0) {\n const response = await lookup({\n addresses: uncachedAddresses,\n });\n\n response.results.forEach((result) => {\n cache.set(result.addresses[0], result.username); // TODO: handle multiple controller addresses\n });\n }\n\n return new Map(\n addresses\n .map((addr) => [addr, cache.get(addr)] as [string, string])\n .filter((entry): entry is [string, string] => entry[1] !== undefined),\n );\n}\n","// This file is auto-generated. DO NOT EDIT IT MANUALLY.\nimport { ControllerConfigs } from \"../\";\n\nexport const configs: ControllerConfigs = {\n \"blob-arena\": {\n origin: \"blobarena.xyz\",\n theme: {\n colors: {\n primary: \"#980f06\",\n },\n cover: \"https://static.cartridge.gg/presets/blob-arena/cover.png\",\n icon: \"https://static.cartridge.gg/presets/blob-arena/icon.png\",\n name: \"Blob Arena\",\n },\n },\n cartridge: {\n origin: \"*\",\n theme: {\n name: \"Cartridge\",\n icon: \"https://static.cartridge.gg/presets/cartridge/icon.svg\",\n cover: {\n light: \"https://static.cartridge.gg/presets/cartridge/cover-light.png\",\n dark: \"https://static.cartridge.gg/presets/cartridge/cover-dark.png\",\n },\n },\n },\n \"dark-shuffle\": {\n origin: \"darkshuffle.dev\",\n theme: {\n colors: {\n primary: \"#F59100\",\n },\n cover: \"https://static.cartridge.gg/presets/dark-shuffle/cover.png\",\n icon: \"https://static.cartridge.gg/presets/dark-shuffle/icon.svg\",\n name: \"Dark Shuffle\",\n },\n },\n \"dope-wars\": {\n origin: \"dopewars.game\",\n policies: {\n contracts: {\n \"0x051Fea4450Da9D6aeE758BDEbA88B2f665bCbf549D2C61421AA724E9AC0Ced8F\": {\n name: \"VRF Provider\",\n description: \"Provides verifiable random functions\",\n methods: [\n {\n name: \"Request Random\",\n description: \"Request a random number\",\n entrypoint: \"request_random\",\n },\n ],\n },\n \"0x0410466536b5ae074f7fea81e5533b8134a9fa08b3dd077dd9db08f64997d113\": {\n name: \"Paper Token\",\n description: \"Manages paper approvals\",\n methods: [\n {\n name: \"Approve\",\n description: \"Approve paper usage\",\n entrypoint: \"approve\",\n },\n ],\n },\n \"0x044a23BbfE03FFe90D3C23Fb6e5A8AD0341036C039363DfA6F3513278Aa51fCA\": {\n name: \"Game Contract\",\n description: \"Core game mechanics\",\n methods: [\n {\n name: \"Create Game\",\n description: \"Start a new game\",\n entrypoint: \"create_game\",\n },\n {\n name: \"Travel\",\n description: \"Travel to a new location\",\n entrypoint: \"travel\",\n },\n {\n name: \"Decide\",\n description: \"Make a game decision\",\n entrypoint: \"decide\",\n },\n {\n name: \"End Game\",\n description: \"End the current game\",\n entrypoint: \"end_game\",\n },\n ],\n },\n \"0x0412445e644070C69fEa16b964cC81Cd6dEBF6A4DBf683E2E9686a45ad088de8\": {\n name: \"Laundromat Contract\",\n description: \"Manages game scoring and laundering\",\n methods: [\n {\n name: \"Register Score\",\n description: \"Register a game score\",\n entrypoint: \"register_score\",\n },\n {\n name: \"Claim\",\n description: \"Claim rewards\",\n entrypoint: \"claim\",\n },\n {\n name: \"Launder\",\n description: \"Launder resources\",\n entrypoint: \"launder\",\n },\n ],\n },\n },\n },\n theme: {\n colors: {\n primary: \"#11ED83\",\n },\n cover: \"https://static.cartridge.gg/presets/dope-wars/cover.png\",\n icon: \"https://static.cartridge.gg/presets/dope-wars/icon.png\",\n name: \"Dope Wars\",\n },\n },\n dragark: {\n origin: \"dragark.net\",\n theme: {\n colors: {\n primary: \"#71EB34\",\n },\n cover: \"https://static.cartridge.gg/presets/dragark/cover.png\",\n icon: \"https://static.cartridge.gg/presets/dragark/icon.png\",\n name: \"Dragark\",\n },\n },\n eternum: {\n origin: [\"eternum.realms.world\", \"empire.realms.world\"],\n policies: {\n contracts: {\n \"0x4ed3a7c5f53c6e96186eaf1b670bd2e2a3699c08e070aedf4e5fc6ac246ddc1\": {\n name: \"Pillage\",\n description: \"Allows you to raid a structure and pillage resources\",\n methods: [\n {\n name: \"Battle Pillage\",\n description: \"Pillage a structure\",\n entrypoint: \"battle_pillage\",\n },\n ],\n },\n \"0x2620f65aa2fd72d705306ada1ee7410023a3df03da9291f1ccb744fabfebc0\": {\n name: \"Battle contract\",\n description: \"Required to engage in battles\",\n methods: [\n {\n name: \"Battle Start\",\n description: \"Start a battle\",\n entrypoint: \"battle_start\",\n },\n {\n name: \"Battle Force Start\",\n description: \"Force start a battle\",\n entrypoint: \"battle_force_start\",\n },\n {\n name: \"Battle Join\",\n description: \"Join a battle\",\n entrypoint: \"battle_join\",\n },\n {\n name: \"Battle Leave\",\n description: \"Leave a battle\",\n entrypoint: \"battle_leave\",\n },\n {\n name: \"Battle Claim\",\n description: \"Claim a structure after a battle\",\n entrypoint: \"battle_claim\",\n },\n {\n name: \"Battle Resolve\",\n description: \"Reopens the bank after battle\",\n entrypoint: \"battle_resolve\",\n },\n ],\n },\n \"0x6bf57710571fd159e71b1ed155bb0759027e416c88a06556f321c94c214e768\": {\n name: \"Leave battle contract\",\n description: \"Allows armies to leave a battle\",\n methods: [\n {\n name: \"Leave Battle\",\n description: \"Leave a battle\",\n entrypoint: \"leave_battle\",\n },\n {\n name: \"Leave Battle If Ended\",\n description: \"Leave a battle if its ended\",\n entrypoint: \"leave_battle_if_ended\",\n },\n ],\n },\n \"0x4b6a35c0c541467674ebb9640113a6d79c6f5a468796e9299b8e484a770032a\": {\n name: \"Building contract\",\n description: \"Allows to manage buildings\",\n methods: [\n {\n name: \"Create\",\n description: \"Create a building\",\n entrypoint: \"create\",\n },\n {\n name: \"Pause Production\",\n description: \"Pause the production of a building\",\n entrypoint: \"pause_production\",\n },\n {\n name: \"Resume Production\",\n description: \"Resume production of a building\",\n entrypoint: \"resume_production\",\n },\n {\n name: \"Destroy a building\",\n description: \"Destroy a building\",\n entrypoint: \"destroy\",\n },\n ],\n },\n \"0x57d514154bb4dc319539d4e338312a41c248fb6a5122f82b2f2e11ddd3e67e4\": {\n name: \"Guild contract\",\n description: \"Allows guild utilities\",\n methods: [\n {\n name: \"Create Guild\",\n description: \"Creates a new guild\",\n entrypoint: \"create_guild\",\n },\n {\n name: \"Join Guild\",\n description: \"Join an existing guild\",\n entrypoint: \"join_guild\",\n },\n {\n name: \"Whitelist Player\",\n description: \"Add a player to the guild's whitelist\",\n entrypoint: \"whitelist_player\",\n },\n {\n name: \"Transfer Guild Ownership\",\n description: \"Transfer ownership of the guild to another player\",\n entrypoint: \"transfer_guild_ownership\",\n },\n {\n name: \"Remove Guild Member\",\n description: \"Remove a member from the guild\",\n entrypoint: \"remove_guild_member\",\n },\n {\n name: \"Remove Player From Whitelist\",\n description: \"Remove a player from the guild's whitelist\",\n entrypoint: \"remove_player_from_whitelist\",\n },\n ],\n },\n \"0x2fcc3c1691387321c2f4d6310eda7a14365bd274c1a37ed3948d2e93a56f821\": {\n name: \"Hyperstructure contract\",\n description: \"Handles the creation and management of hyperstructures\",\n methods: [\n {\n name: \"Get Points\",\n description: \"Gets your total number of points\",\n entrypoint: \"get_points\",\n },\n {\n name: \"Create\",\n description: \"Create a new hyperstructure\",\n entrypoint: \"create\",\n },\n {\n name: \"Contribute To Construction\",\n description:\n \"Contribute resources to hyperstructure construction\",\n entrypoint: \"contribute_to_construction\",\n },\n {\n name: \"Set Co Owners\",\n description: \"Set additional owners for the hyperstructure\",\n entrypoint: \"set_co_owners\",\n },\n {\n name: \"End Game\",\n description:\n \"Terminates the current game season once you've reached enough points\",\n entrypoint: \"end_game\",\n },\n {\n name: \"Set Access\",\n description:\n \"Configure access permissions for contributions to the hyperstructure\",\n entrypoint: \"set_access\",\n },\n ],\n },\n \"0xa052c5ca082356bcc8457f0f805eaf18f97d0fdddde3f90f5b238923859ed4\": {\n name: \"AMM liquidity contract\",\n description: \"Manages liquidity for the Automated Market Maker\",\n methods: [\n {\n name: \"Add\",\n description: \"Add liquidity to the pool\",\n entrypoint: \"add\",\n },\n {\n name: \"Remove\",\n description: \"Remove liquidity from the pool\",\n entrypoint: \"remove\",\n },\n ],\n },\n \"0x4a212c52c4035bc9bd170125216604f406dcd75b41be11d3b4d89047366d84d\": {\n name: \"Exploration contract\",\n description: \"Allows you to move to unexplored hexes on the map\",\n methods: [\n {\n name: \"Explore\",\n description: \"Explore an uncharted hex on the game map\",\n entrypoint: \"explore\",\n },\n ],\n },\n \"0x7e3bae0e253a0131063b63ee4d7b27b50329c617ae88b82d529a70f1a11c63\": {\n name: \"Naming contract\",\n description: \"Manages entity naming in the game\",\n methods: [\n {\n name: \"Set Entity Name\",\n description: \"Assign a custom name to a game entity\",\n entrypoint: \"set_entity_name\",\n },\n {\n name: \"Set Address Name\",\n description: \"Assign a custom name to a user's address\",\n entrypoint: \"set_address_name\",\n },\n ],\n },\n \"0x1b480f620ea35431ab43dba634795b14f547ef3e77370db6f0a31f2fdc21d86\": {\n name: \"Realms contract\",\n description: \"Manages realm-related actions\",\n methods: [\n {\n name: \"Create a realm\",\n description: \"Create a new realm\",\n entrypoint: \"create\",\n },\n {\n name: \"Upgrade Level\",\n description: \"Upgrade the level of a realm\",\n entrypoint: \"upgrade_level\",\n },\n {\n name: \"Quest Claim\",\n description: \"Claim rewards from completed quests\",\n entrypoint: \"quest_claim\",\n },\n ],\n },\n \"0x691a60b709ca5c1c5ff86824831f84deb26f0f5d07d70c0f807eab48110d2f6\": {\n name: \"Resource bridge contract\",\n description: \"Manages bridge transfers between L2 and Eternum\",\n methods: [\n {\n name: \"Deposit Initial\",\n description: \"Initial deposit of resources for bridge transfer\",\n entrypoint: \"deposit_initial\",\n },\n {\n name: \"Deposit\",\n description: \"Deposit additional resources for bridge transfer\",\n entrypoint: \"deposit\",\n },\n {\n name: \"Start Withdraw\",\n description: \"Initiate a withdrawal process\",\n entrypoint: \"start_withdraw\",\n },\n {\n name: \"Finish Withdraw\",\n description: \"Finalize a withdrawal process\",\n entrypoint: \"finish_withdraw\",\n },\n ],\n },\n \"0x42c0303a2119a9e20daa60e83c48221cdf1bb2a4c009bab031d1cd3555a127e\": {\n name: \"Resource contract\",\n description: \"In-game resource management\",\n methods: [\n {\n name: \"Approve\",\n description: \"Approve resource transfer\",\n entrypoint: \"approve\",\n },\n {\n name: \"Send\",\n description: \"Send resources to another entity\",\n entrypoint: \"send\",\n },\n {\n name: \"Pickup\",\n description: \"Collect available resources after approval\",\n entrypoint: \"pickup\",\n },\n ],\n },\n \"0x4f92a1d00d3aec8cece60fc2d0fc236fe1d95c54ff0ceb2f393fbc7e0863d8e\": {\n name: \"AMM swap contract\",\n description: \"Handles token swaps in the Automated Market Maker\",\n methods: [\n {\n name: \"Buy\",\n description: \"Purchase tokens from the liquidity pool\",\n entrypoint: \"buy\",\n },\n {\n name: \"Sell\",\n description: \"Sell tokens to the liquidity pool\",\n entrypoint: \"sell\",\n },\n ],\n },\n \"0x7e2b1334398fafbe640f34bacae99b649d633417960ee397b6a8fb117fec819\": {\n name: \"Market contract\",\n description: \"Manages trading orders in the in-game market\",\n methods: [\n {\n name: \"Create Order\",\n description: \"Create a new trading order\",\n entrypoint: \"create_order\",\n },\n {\n name: \"Accept Order\",\n description: \"Accept a trading order\",\n entrypoint: \"accept_order\",\n },\n {\n name: \"Accept Partial Order\",\n description: \"Accept a partial trading order\",\n entrypoint: \"accept_partial_order\",\n },\n {\n name: \"Cancel Order\",\n description: \"Cancel a trading order\",\n entrypoint: \"cancel_order\",\n },\n ],\n },\n \"0x4069c2be57f08fef9f31afc85a5b4c03c208ebdb278b9d853606caa7a9cbee6\": {\n name: \"Map travel contract\",\n description: \"Manages player movement across the game map\",\n methods: [\n {\n name: \"Travel Hex\",\n description: \"Move to a specific hex on the map\",\n entrypoint: \"travel_hex\",\n },\n ],\n },\n \"0x26be0ed574aa9ee6f73b53b12f0a199ddbf4ac697470316cdb3d9d1f5680cab\": {\n name: \"Army contract\",\n description: \"Manages army-related actions\",\n methods: [\n {\n name: \"Army Create\",\n description: \"Create a new army\",\n entrypoint: \"army_create\",\n },\n {\n name: \"Army Delete\",\n description: \"Delete an existing army\",\n entrypoint: \"army_delete\",\n },\n {\n name: \"Army Buy Troops\",\n description: \"Buy troops for an army\",\n entrypoint: \"army_buy_troops\",\n },\n {\n name: \"Army Merge Troops\",\n description: \"Merge troops from multiple armies\",\n entrypoint: \"army_merge_troops\",\n },\n ],\n },\n \"0x051fea4450da9d6aee758bdeba88b2f665bcbf549d2c61421aa724e9ac0ced8f\": {\n name: \"VRF Provider\",\n description:\n \"Verifiable Random Function contract, allows randomness in the game\",\n methods: [\n {\n name: \"Request Random\",\n description:\n \"Allows requesting random numbers from the VRF provider\",\n entrypoint: \"request_random\",\n },\n ],\n },\n \"0x057675b9c0bd62b096a2e15502a37b290fa766ead21c33eda42993e48a714b80\": {\n name: \"Season pass ERC20 contract\",\n description: \"Manages the season passes\",\n methods: [\n {\n name: \"Approve for all\",\n description: \"Approves transfer of season pass\",\n entrypoint: \"set_approval_for_all\",\n },\n ],\n },\n \"0x4b5e65a9617c7ba3c7ea64324ff4338a400adb1a3cfe903b3f8b647cbb59fb7\": {\n name: \"Season Systems\",\n description: \"Register and claim\",\n methods: [\n {\n name: \"Register\",\n description: \"Registers to leaderboard\",\n entrypoint: \"register_to_leaderboard\",\n },\n {\n name: \"Claim\",\n description: \"Claim\",\n entrypoint: \"claim_leaderboard_rewards\",\n },\n ],\n },\n },\n messages: [\n {\n types: {\n StarknetDomain: [\n {\n name: \"name\",\n type: \"shortstring\",\n },\n {\n name: \"version\",\n type: \"shortstring\",\n },\n {\n name: \"chainId\",\n type: \"shortstring\",\n },\n {\n name: \"revision\",\n type: \"shortstring\",\n },\n ],\n \"s0_eternum-Message\": [\n {\n name: \"identity\",\n type: \"ContractAddress\",\n },\n {\n name: \"channel\",\n type: \"shortstring\",\n },\n {\n name: \"content\",\n type: \"string\",\n },\n {\n name: \"timestamp\",\n type: \"felt\",\n },\n {\n name: \"salt\",\n type: \"felt\",\n },\n ],\n },\n primaryType: \"s0_eternum-Message\",\n domain: {\n name: \"Eternum\",\n version: \"1\",\n chainId: \"SN_MAIN\",\n revision: \"1\",\n },\n },\n ],\n },\n theme: {\n name: \"Eternum\",\n icon: \"https://static.cartridge.gg/presets/eternum/icon.svg\",\n cover: \"https://static.cartridge.gg/presets/eternum/cover.png\",\n colors: {\n primary: \"#dc8b07\",\n },\n },\n },\n flippyflop: {\n origin: \"flippyflop.gg\",\n theme: {\n colors: {\n primary: \"#F38332\",\n },\n cover: \"https://static.cartridge.gg/presets/flippyflop/cover.png\",\n icon: \"https://static.cartridge.gg/presets/flippyflop/icon.png\",\n name: \"FlippyFlop\",\n },\n },\n \"force-prime\": {\n origin: \"forceprime.io\",\n theme: {\n colors: {\n primary: \"#E1CC89\",\n },\n cover: \"https://static.cartridge.gg/presets/force-prime/cover.png\",\n icon: \"https://static.cartridge.gg/presets/force-prime/icon.png\",\n name: \"Force Prime\",\n },\n },\n \"jokers-of-neon\": {\n origin: \"jokersofneon.com\",\n theme: {\n colors: {\n primary: \"#A144B2\",\n },\n cover: \"https://static.cartridge.gg/presets/jokers-of-neon/cover.png\",\n icon: \"https://static.cartridge.gg/presets/jokers-of-neon/icon.png\",\n name: \"Jokers of Neon\",\n },\n },\n \"loot-survivor\": {\n origin: \"lootsurvivor.io\",\n policies: {\n contracts: {\n \"0x0124aeb495b947201f5fac96fd1138e326ad86195b98df6dec9009158a533b49\": {\n methods: [\n {\n entrypoint: \"approve\",\n },\n {\n entrypoint: \"mint_lords\",\n },\n ],\n },\n \"0x0305f26ad19e0a10715d9f3137573d3a543de7b707967cd85d11234d6ec0fb7e\": {\n methods: [\n {\n entrypoint: \"attack\",\n },\n {\n entrypoint: \"drop\",\n },\n {\n entrypoint: \"equip\",\n },\n {\n entrypoint: \"explore\",\n },\n {\n entrypoint: \"flee\",\n },\n {\n entrypoint: \"new_game\",\n },\n {\n entrypoint: \"transfer_from\",\n },\n {\n entrypoint: \"upgrade\",\n },\n ],\n },\n \"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7\": {\n methods: [\n {\n entrypoint: \"approve\",\n },\n ],\n },\n },\n },\n theme: {\n colors: {\n primary: \"#33FF33\",\n },\n cover: \"https://static.cartridge.gg/presets/loot-survivor/cover.png\",\n icon: \"https://static.cartridge.gg/presets/loot-survivor/icon.png\",\n name: \"Loot Survivor\",\n },\n },\n paved: {\n origin: \"paved.gg\",\n theme: {\n colors: {\n primary: \"#B0CAF8\",\n },\n cover: \"https://static.cartridge.gg/presets/paved/cover.png\",\n icon: \"https://static.cartridge.gg/presets/paved/icon.svg\",\n name: \"Paved\",\n },\n },\n pistols: {\n origin: \"pistols.underware.gg\",\n theme: {\n colors: {\n primary: \"#EF9758\",\n },\n cover: \"https://static.cartridge.gg/presets/pistols/cover.png\",\n icon: \"https://static.cartridge.gg/presets/pistols/icon.png\",\n name: \"Pistols at Ten Blocks\",\n },\n },\n pixelaw: {\n origin: \"dojo.pixelaw.xyz\",\n theme: {\n colors: {\n primary: \"#7C00B1\",\n primaryForeground: \"white\",\n },\n cover: \"https://static.cartridge.gg/presets/pixelaw/cover.png\",\n icon: \"https://static.cartridge.gg/presets/pixelaw/icon.svg\",\n name: \"Pixelaw\",\n },\n },\n \"realm-of-ra\": {\n origin: \"mancala.realmofra.com\",\n theme: {\n colors: {\n primary: \"#de9534\",\n },\n cover: \"https://static.cartridge.gg/presets/realm-of-ra/cover.png\",\n icon: \"https://static.cartridge.gg/presets/realm-of-ra/icon.png\",\n name: \"Realm of Ra\",\n },\n },\n \"savage-summit\": {\n origin: \"savagesummit.io\",\n theme: {\n colors: {\n primary: \"#fbf7da\",\n },\n cover: \"https://static.cartridge.gg/presets/savage-summit/cover.png\",\n icon: \"https://static.cartridge.gg/presets/savage-summit/icon.png\",\n name: \"Savage Summit\",\n },\n },\n \"tale-weaver\": {\n origin: \"\",\n theme: {\n colors: {\n primary: \"#fce377\",\n },\n cover: \"https://static.cartridge.gg/presets/tale-weaver/cover.png\",\n icon: \"https://static.cartridge.gg/presets/tale-weaver/icon.png\",\n name: \"Tale Weaver\",\n },\n },\n zkastle: {\n origin: \"zkastle.vercel.app\",\n theme: {\n colors: {\n primary: \"#E50D2C\",\n },\n cover: \"https://static.cartridge.gg/presets/zkastle/cover.png\",\n icon: \"https://static.cartridge.gg/presets/zkastle/icon.svg\",\n name: \"zKastle\",\n },\n },\n zktt: {\n origin: \"zktable.top\",\n theme: {\n colors: {\n primary: \"#FFFFFF\",\n },\n cover: \"https://static.cartridge.gg/presets/zktt/cover.png\",\n icon: \"https://static.cartridge.gg/presets/zktt/icon.png\",\n name: \"zKTT\",\n },\n },\n zkube: {\n origin: \"app.zkube.xyz\",\n theme: {\n colors: {\n primary: \"#5bc3e6\",\n },\n cover: \"https://static.cartridge.gg/presets/zkube/cover.png\",\n icon: \"https://static.cartridge.gg/presets/zkube/icon.png\",\n name: \"zKube\",\n },\n },\n};\n","// This file is auto-generated. DO NOT EDIT IT MANUALLY.\nimport { EkuboERC20Metadata } from \"../\";\n\nexport const metadata: EkuboERC20Metadata[] = [\n {\n name: \"Wrapped BTC\",\n symbol: \"WBTC\",\n decimals: 8,\n l2_token_address:\n \"0x03fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac\",\n sort_order: 0,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/7dcb2db2-a7a7-44af-660b-8262e057a100/logo\",\n },\n {\n name: \"USD Coin\",\n symbol: \"USDC\",\n decimals: 6,\n l2_token_address:\n \"0x053c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8\",\n sort_order: 5,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/e5aaa970-a998-47e8-bd43-4a3b56b87200/logo\",\n },\n {\n name: \"LUSD Stablecoin\",\n symbol: \"LUSD\",\n decimals: 18,\n l2_token_address:\n \"0x070a76fd48ca0ef910631754d77dd822147fe98a569b826ec85e3c33fde586ac\",\n sort_order: 3,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/dc0ae733-5498-4afa-f475-48dba677aa00/logo\",\n },\n {\n name: \"Tether USD\",\n symbol: \"USDT\",\n decimals: 6,\n l2_token_address:\n \"0x068f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8\",\n sort_order: 4,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c8a721d1-07c3-46e4-ab4e-523977c30b00/logo\",\n },\n {\n name: \"Ether\",\n symbol: \"ETH\",\n decimals: 18,\n l2_token_address:\n \"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7\",\n sort_order: 3,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/e07829b7-0382-4e03-7ecd-a478c5aa9f00/logo\",\n },\n {\n name: \"Dai Stablecoin\",\n symbol: \"DAIv0\",\n decimals: 18,\n l2_token_address:\n \"0x00da114221cb83fa859dbdb4c44beeaa0bb37c7537ad5ae66fe5e0efd20e6eb3\",\n sort_order: 4,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/919e761b-56f7-4f53-32aa-5e066f7f6200/logo\",\n },\n {\n name: \"Dai Stablecoin\",\n symbol: \"DAI\",\n decimals: 18,\n l2_token_address:\n \"0x05574eb6b8789a91466f902c380d978e472db68170ff82a5b650b95a58ddf4ad\",\n sort_order: 4,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/919e761b-56f7-4f53-32aa-5e066f7f6200/logo\",\n },\n {\n name: \"Wrapped liquid staked Ether 2.0\",\n symbol: \"wstETH\",\n decimals: 18,\n l2_token_address:\n \"0x042b8f0484674ca266ac5d08e4ac6a3fe65bd3129795def2dca5c34ecc5f96d2\",\n sort_order: 1,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/dbbcbdea-1a92-437d-3701-4a5ee129d000/logo\",\n },\n {\n name: \"Rocket Pool ETH\",\n symbol: \"rETH\",\n decimals: 18,\n l2_token_address:\n \"0x0319111a5037cbec2b3e638cc34a3474e2d2608299f3e62866e9cc683208c610\",\n sort_order: 1,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c9f2d6fe-fbc6-4384-0990-923dfcb7a200/logo\",\n },\n {\n name: \"LORDS\",\n symbol: \"LORDS\",\n decimals: 18,\n l2_token_address:\n \"0x0124aeb495b947201f5fac96fd1138e326ad86195b98df6dec9009158a533b49\",\n sort_order: 1,\n total_supply: 50900000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/a3bfe959-50c4-4f89-0aef-b19207d82a00/logo\",\n },\n {\n name: \"R Stablecoin\",\n symbol: \"R\",\n decimals: 18,\n l2_token_address:\n \"0x01fa2fb85f624600112040e1f3a848f53a37ed5a7385810063d5fe6887280333\",\n sort_order: 3,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/77612e4e-f7ee-4dba-2066-af321843ef00/logo\",\n },\n {\n name: \"Frax\",\n symbol: \"FRAX\",\n decimals: 18,\n l2_token_address:\n \"0x009c6b4fb13dfaa025c1383ed6190af8ed8cbb09d9588a3bb020feb152442406\",\n sort_order: 1,\n total_supply: 649462235,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/eeaf0779-e492-474c-ef19-b27843525600/logo\",\n },\n {\n name: \"Frax Share\",\n symbol: \"FXS\",\n decimals: 18,\n l2_token_address:\n \"0x0058efd0e73c33a848ffaa88738d128ebf0af98ea78cf3c14dc757bb02d39ffb\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/98bea621-1e4f-4d63-9689-bdaef0d56500/logo\",\n },\n {\n name: \"Staked Frax Ether\",\n symbol: \"sfrxETH\",\n decimals: 18,\n l2_token_address:\n \"0x04578fffc279e61b5cb0267a5f8e24b6089d40f93158fbbad2cb23b8622c9233\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/cd6fe18a-25db-4de9-758a-daf3b364ea00/logo\",\n },\n {\n name: \"Anubis\",\n symbol: \"ANB\",\n decimals: 18,\n l2_token_address:\n \"0x070dd1f88cc973de315c10b2da4e196554c20e925d630474e257a0a4d9d363dc\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/ef8a0a50-7c12-4b9b-e937-1bea5bdd3500/logo\",\n },\n {\n name: \"Uniswap\",\n symbol: \"UNI\",\n decimals: 18,\n l2_token_address:\n \"0x049210ffc442172463f3177147c1aeaa36c51d152c1b0630f2364c300d4f48ee\",\n sort_order: 1,\n total_supply: 1000000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/361b018e-bd53-4019-27c8-7cf8d9031b00/logo\",\n },\n {\n name: \"OWL\",\n symbol: \"OWL\",\n decimals: 18,\n l2_token_address:\n \"0x039877a272619050ab8b0e3e0a19b58d076fc2ce84da1dc73b699590e629f2b8\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/30622111-3d69-4d47-37fd-2beac1c53400/logo\",\n },\n {\n name: \"Paper\",\n symbol: \"PAPER\",\n decimals: 18,\n l2_token_address:\n \"0x0410466536b5ae074f7fea81e5533b8134a9fa08b3dd077dd9db08f64997d113\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/811f019a-0461-4cff-6c1e-442102863f00/logo\",\n },\n {\n name: \"STRAK-meme\",\n symbol: \"STRAK-meme\",\n decimals: 18,\n l2_token_address:\n \"0x055c3868c743e92c470701799388cb3fb1d922dcec271150d10462c6948e3cf4\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"StarkPepe\",\n symbol: \"xSPEPE\",\n decimals: 18,\n l2_token_address:\n \"0x06f15ec4b6ff0b7f7a216c4b2ccdefc96cbf114d6242292ca82971592f62273b\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n disabled: true,\n },\n {\n name: \"Gary Gensler\",\n symbol: \"xGARY\",\n decimals: 18,\n l2_token_address:\n \"0xd3d60f69d76b6639fc51ae1447480ecdf0ba1ea3f6162e3230be0a40ef2a6b\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n disabled: true,\n },\n {\n name: \"StarkBanana\",\n symbol: \"xSBANANA\",\n decimals: 18,\n l2_token_address:\n \"0x03650d77855a4f05b9dd0acff3936cfffd693624754a96d90e4d5876e06c231d\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n disabled: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/516c435e-f89a-4a88-aff0-fdcc6e218900/logo\",\n },\n {\n name: \"Starknet\",\n symbol: \"STRK\",\n decimals: 18,\n l2_token_address:\n \"0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n sort_order: 2,\n total_supply: 10000000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/1b126320-367c-48ed-cf5a-ba7580e49600/logo\",\n },\n {\n name: \"zkLend\",\n symbol: \"ZEND\",\n decimals: 18,\n l2_token_address:\n \"0x00585c32b625999e6e5e78645ff8df7a9001cf5cf3eb6b80ccdd16cb64bd3a34\",\n sort_order: 1,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/95515b0e-1230-4158-10f1-56888f613c00/logo\",\n },\n {\n name: \"Also Ekubo Protocol\",\n symbol: \"MOCHI\",\n decimals: 18,\n l2_token_address:\n \"0x075afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/e623fa00-5b58-4b38-1d08-67983128b600/logo\",\n },\n {\n name: \"Ekubo Protocol\",\n symbol: \"EKUBO\",\n decimals: 18,\n l2_token_address:\n \"0x075afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87\",\n sort_order: 1,\n total_supply: 10000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/634d9c36-2f0b-4781-93e6-72d701b5af00/logo\",\n },\n {\n name: \"SOCKS\",\n symbol: \"SOCKS\",\n decimals: 18,\n l2_token_address:\n \"0x023ed2ba4fb5709302c5dfd739fa7613359042f143286c115b6c7f7dc2601015\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/2db5a2a6-c98e-4b80-35e0-31b489132100/logo\",\n },\n {\n name: \"Nostra\",\n symbol: \"NSTR\",\n decimals: 18,\n l2_token_address:\n \"0x00c530f2c0aa4c16a0806365b0898499fba372e5df7a7172dc6fe9ba777e8007\",\n sort_order: 1,\n total_supply: 100000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/a45c2224-17a7-4269-ea7e-3924e9755800/logo\",\n },\n {\n name: \"Standard Weighted Adalian Yield\",\n symbol: \"SWAY\",\n decimals: 6,\n l2_token_address:\n \"0x004878d1148318a31829523ee9c6a5ee563af6cd87f90a30809e5b0d27db8a9b\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/dd43c15d-80bf-4298-7620-abc12d474f00/logo\",\n },\n {\n name: \"ZKX\",\n symbol: \"ZKX\",\n decimals: 18,\n l2_token_address:\n \"0x256c74b33f5734c68402cd9433dfa77856f62c6940f54591874527cf898a924\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/bfc2ef55-3dd4-43ef-66a7-9a0e228b5900/logo\",\n },\n {\n name: \"Carmine\",\n symbol: \"CRM\",\n decimals: 18,\n l2_token_address:\n \"0x51c4b1fe3bf6774b87ad0b15ef5d1472759076e42944fff9b9f641ff13e5bbe\",\n sort_order: 1,\n total_supply: 100000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/6ab817f1-8075-4a94-6e14-f112f1f89d00/logo\",\n },\n {\n name: \"Nimbora sDAI\",\n symbol: \"nsDAI\",\n decimals: 18,\n l2_token_address:\n \"0x004380de5819e2e989b5e8b978ea2811fd36fdbc5c12fcfb3a2b444098888665\",\n sort_order: 2,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/a016d9ab-a7b5-4f31-3656-f41fa27cc300/logo\",\n },\n {\n name: \"Nimbora Pendle EtherFi ETH\",\n symbol: \"npeETH\",\n decimals: 18,\n l2_token_address:\n \"0x316ec509f7ad89b7e6e03d15a436df634454f95e815536d616af03edc850fa3\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/f1f900d0-da29-49f6-271b-d1a3754aa200/logo\",\n },\n {\n name: \"Nimbora Pendle Puffer ETH\",\n symbol: \"nppETH\",\n decimals: 18,\n l2_token_address:\n \"0x00357cba05d61beb5fe378429d25013dc5fe0f67878b541747b0675c5ebecee1\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/d37fbc14-daa9-45e8-d523-c656704e7d00/logo\",\n },\n {\n name: \"Nimbora Pendle Flux USDC\",\n symbol: \"npfUSDC\",\n decimals: 6,\n l2_token_address:\n \"0x52bdb85297e6b0c87d8ec98c5195a4324ff731676d64d9bee2e9e8710e8ea52\",\n sort_order: 3,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/af942cb7-aae8-41dc-5cc9-4aedc5c06000/logo\",\n },\n {\n name: \"Nimbora Pendle Aave USDT\",\n symbol: \"npaUSDT\",\n decimals: 6,\n l2_token_address:\n \"0x040daf98c49c6104002428958456208455a03825198fa7646bd793a321f4fc82\",\n sort_order: 3,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/f376f6d9-bcf3-41b0-c0d3-6ef2f606d200/logo\",\n },\n {\n name: \"Cash\",\n symbol: \"CASH\",\n decimals: 18,\n l2_token_address:\n \"0x498edfaf50ca5855666a700c25dd629d577eb9afccdf3b5977aec79aee55ada\",\n sort_order: 3,\n total_supply: null,\n hidden: false,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/6bd6d156-f509-4b51-5dfc-3ee566143600/logo\",\n },\n {\n name: \"Flip\",\n symbol: \"FLIP\",\n decimals: 18,\n l2_token_address:\n \"0x01bfe97d729138fc7c2d93c77d6d1d8a24708d5060608017d9b384adf38f04c7\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/275f0fa8-a691-471c-ace6-0eb0315dde00/logo\",\n },\n {\n name: \"Alf the Alpha\",\n symbol: \"ALF\",\n decimals: 18,\n l2_token_address:\n \"0x078d7dfcddb44667153513bd837ff534ef395484f4b6cf28faa25b2c46e063d9\",\n sort_order: 1,\n total_supply: 10065076070,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/5864e60d-8432-42d3-1ad4-fced31d43a00/logo\",\n },\n {\n name: \"Endur xSTRK\",\n symbol: \"xSTRK\",\n decimals: 18,\n l2_token_address:\n \"0x028d709c875c0ceac3dce7065bec5328186dc89fe254527084d1689910954b0a\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c1f44170-c1b0-4531-3d3b-5f0bacfe1300/logo\",\n },\n {\n name: \"Staked Starknet\",\n symbol: \"sSTRK\",\n decimals: 18,\n l2_token_address:\n \"0x0356f304b154d29d2a8fe22f1cb9107a9b564a733cf6b4cc47fd121ac1af90c9\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/e28697ac-a8ba-462f-0d40-ad33b285c200/logo\",\n },\n {\n name: \"zkLend Staked STRK\",\n symbol: \"kSTRK\",\n decimals: 18,\n l2_token_address:\n \"0x45cd05ee2caaac3459b87e5e2480099d201be2f62243f839f00e10dde7f500c\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/585854e8-3656-4bfc-412b-9cd8b8ae2900/logo\",\n },\n {\n name: \"JOHNNY\",\n symbol: \"JOHNNY\",\n decimals: 18,\n l2_token_address:\n \"0x46bad8dc5d58a853905fb7b0c2231917a1ae77cb14a8219e480808a81dafa86\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"pipa\",\n symbol: \"pipa\",\n decimals: 18,\n l2_token_address:\n \"0x47d9865ffbabc16c05f5bfe5dfcd7a28eaf7be9343e7500dfab00c81493e62\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"MyMeme\",\n symbol: \"MM\",\n decimals: 18,\n l2_token_address:\n \"0x1444606f60841573a010e820f9dd9ea203fc47f4f37fe7796d39b18caa93498\",\n sort_order: 1,\n total_supply: 5000000,\n hidden: true,\n },\n {\n name: \"Justin hammer\",\n symbol: \"Hammer\",\n decimals: 18,\n l2_token_address:\n \"0x6fec9b7831f5becf31328dac95bf0e8aee6b25adb5390e62e96f0175843a087\",\n sort_order: 1,\n total_supply: 21000000000,\n hidden: true,\n },\n {\n name: \"Habiba\",\n symbol: \"HBB\",\n decimals: 18,\n l2_token_address:\n \"0x5938d6a20fc9ff91f33fde7beb38bf53794a4416c6b4314a6a879a489da1df3\",\n sort_order: 1,\n total_supply: 5555551111,\n hidden: true,\n },\n {\n name: \"Starkspliff\",\n symbol: \"SPF\",\n decimals: 18,\n l2_token_address:\n \"0x72e1c6ea9a22669331add104d37eeaf97670a9c7a8727e967f290bdbd35ae43\",\n sort_order: 1,\n total_supply: 420,\n hidden: true,\n },\n {\n name: \"the 8\",\n symbol: \"eight\",\n decimals: 18,\n l2_token_address:\n \"0x394071d2dbd65437cfbb5dab8fd72efe579c0daa5cfde60993a80965edc7d\",\n sort_order: 1,\n total_supply: 8,\n hidden: true,\n },\n {\n name: \"Duckwifhat\",\n symbol: \"DWIF\",\n decimals: 18,\n l2_token_address:\n \"0x78f27c61243b81af94a108a9e3fe3124e2175b6a5721be8d8b7b2720b3cc215\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"YuvalMebulbal\",\n symbol: \"YMBLBL\",\n decimals: 18,\n l2_token_address:\n \"0x3432a5b0137cb59c33fc198f841658fa585b826afd45390d2116f2d805699b1\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"StarkCat\",\n symbol: \"SCAT\",\n decimals: 18,\n l2_token_address:\n \"0x6c2fd1bcc03e54e4e23b3ffd5f6a4c65a9397996b718e633283d6d4e77a5257\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"ZG\",\n symbol: \"ZGZEG\",\n decimals: 18,\n l2_token_address:\n \"0x400cab3b1c5c296e125b71fedd8002a87c1971c277bcafad227b99413b26c6c\",\n sort_order: 1,\n total_supply: 8888888888888,\n hidden: true,\n },\n {\n name: \"Stark Killer\",\n symbol: \"SKER\",\n decimals: 18,\n l2_token_address:\n \"0x4e86d441c1156f86a51375b4b8189ef8893274a131f0ba6d2a2635d38b5c65\",\n sort_order: 1,\n total_supply: 6666699999,\n hidden: true,\n },\n {\n name: \"SNAIL STARK\",\n symbol: \"SNAIL\",\n decimals: 18,\n l2_token_address:\n \"0x3f889d6e008c5790b744177ab1a48d4735862c1c29235390cb06307bea0d193\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"URBANIST\",\n symbol: \"URB\",\n decimals: 18,\n l2_token_address:\n \"0x10bba2c3a69bf5c5ba456fcdfd4e06387a6d22aaeeb5d15424110c7fa6d4154\",\n sort_order: 1,\n total_supply: 50000000,\n hidden: true,\n },\n {\n name: \"RUGGED\",\n symbol: \"RUG\",\n decimals: 18,\n l2_token_address:\n \"0x5d19ed3bb1ba640a5448fae3d5caa8d857f0834ba8c75e9278151496cc1fbdb\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/33a39ba6-670f-47c1-4f49-7ac1db409400/logo\",\n },\n {\n name: \"Niggolas Cage\",\n symbol: \"Nigg\",\n decimals: 18,\n l2_token_address:\n \"0x550664762709d3d34684f6d985e8f9b2c3366e8ce3e712461f996f8ed816c13\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"more tps daddy\",\n symbol: \"MORE\",\n decimals: 18,\n l2_token_address:\n \"0x113cf9c90c2e545bbfb270e4713c390a56eb87902f8d1cc2c83660ff9ed8bd\",\n sort_order: 1,\n total_supply: 28777700000,\n hidden: true,\n },\n {\n name: \"Dog Wif Hat\",\n symbol: \"WIF\",\n decimals: 18,\n l2_token_address:\n \"0xb862c8de208aa6ae7cb2005dd48b3e3052aa290dcab28907c8db461f83fdbd\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Powni\",\n symbol: \"POWNI\",\n decimals: 18,\n l2_token_address:\n \"0x79337c58d486aec3f2c5648271345d7c54657a158d88a1e3bd3521129c7cc94\",\n sort_order: 1,\n total_supply: 42000000000,\n hidden: true,\n },\n {\n name: \"hello\",\n symbol: \"hello\",\n decimals: 18,\n l2_token_address:\n \"0x10a96500c674697c1d94d1264d56c7faffee5bec1d8657619e54e55014c7461\",\n sort_order: 1,\n total_supply: 1329227995784916000,\n hidden: true,\n },\n {\n name: \"Baby Starknet\",\n symbol: \"BSTRK\",\n decimals: 18,\n l2_token_address:\n \"0x704bdb2a36bb773b39ea41873d30dbfee7111fbd9cd6336a40629fafca742f3\",\n sort_order: 1,\n total_supply: 50000000,\n hidden: true,\n },\n {\n name: \"moshon-is-the-best\",\n symbol: \"gggg\",\n decimals: 18,\n l2_token_address:\n \"0xb519d76299e617361be6d221a5ce3cb7b2ef66b40292c65b3e0bcfaa3ebcd1\",\n sort_order: 1,\n total_supply: 2000000000,\n hidden: true,\n },\n {\n name: \"Gameplays y Bugs\",\n symbol: \"GYB\",\n decimals: 18,\n l2_token_address:\n \"0x78d8aabd655edc2ea405774a5114d647b998967df14aaa0ed7f23fe770f4b8c\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"BackDoor\",\n symbol: \"BD\",\n decimals: 18,\n l2_token_address:\n \"0x7c5782c9c96e142d1222f0838aaa9c3e10226bb9e6949554499ff429858f394\",\n sort_order: 1,\n total_supply: 806,\n hidden: true,\n },\n {\n name: \"toby\",\n symbol: \"toby\",\n decimals: 18,\n l2_token_address:\n \"0x286933fe21dd7a9251dd3d6aa1da8d36741c30104aeec2f8bda9f8fcceb48fb\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"TIME\",\n symbol: \"TIME\",\n decimals: 18,\n l2_token_address:\n \"0xda2a16582da2e4da0fb303a0ad3b4197c10e222378a24531ab519182868033\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Sink It\",\n symbol: \"Sink\",\n decimals: 18,\n l2_token_address:\n \"0x29b44b2349dc6973b2b570b6215575695602927fd4ecd32409071c930ce69e6\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Slinky\",\n symbol: \"SLINK\",\n decimals: 18,\n l2_token_address:\n \"0x13ff4e86fa3e7286cc5c64b62f4099cf41e7918d727d22a5109ecfd00274d19\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/12b8ebd8-f4bf-4642-92e5-5ad8e7dafc00/logo\",\n },\n {\n name: \"TEST\",\n symbol: \"TST\",\n decimals: 18,\n l2_token_address:\n \"0x1a0d2af97dc31725bce7729533283b6f3e88b86d3bbcfe2d127df021f709326\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Mulcion\",\n symbol: \"MCO\",\n decimals: 18,\n l2_token_address:\n \"0x712439d74c9a005d57c8313f6601c41f2c5b5782967c7fdb7aaa784802ab36\",\n sort_order: 1,\n total_supply: 88888,\n hidden: true,\n },\n {\n name: \"PAL Is The First\",\n symbol: \"1 = PAL\",\n decimals: 18,\n l2_token_address:\n \"0x73f9943e9f96c89e71669a09ee882c828db222fe2e3d862c808916dd6f06aa4\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"RoniCarrington\",\n symbol: \"RCG\",\n decimals: 18,\n l2_token_address:\n \"0x167946fe551396c38bce8f8c468b9c4fcdb0e6ebfc6d083227c77fc67ff4cd4\",\n sort_order: 1,\n total_supply: 4433322222,\n hidden: true,\n },\n {\n name: \"Nimbora Staked Usda\",\n symbol: \"nstUSD\",\n decimals: 6,\n l2_token_address:\n \"0x405b7b5fb7353ec745d9ef7cf1634e54fd25c5e24d62241c177114a18c45910\",\n sort_order: 1,\n total_supply: 66,\n hidden: true,\n },\n {\n name: \"Pedro Pedro Pedro\",\n symbol: \"PEDRO\",\n decimals: 18,\n l2_token_address:\n \"0x202212de0c23798ac24b3d10b3d310c16783f15629ab6ae03c2706e61412005\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Never Trust a Dijonnais\",\n symbol: \"DIJON\",\n decimals: 18,\n l2_token_address:\n \"0x2f6f9b17426365725c0a9fe92b843d0cb6d7f9830dc60593d87f2601ab4c1ce\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"StarkBubble\",\n symbol: \"SBB\",\n decimals: 18,\n l2_token_address:\n \"0xd7dad148b7b66dd2e3710f11b0916d56283560a650559df0962e3c6974dc00\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"WE ONLY LIVE ONCE\",\n symbol: \"WOLO\",\n decimals: 18,\n l2_token_address:\n \"0x3ffd8fdc56155b1b80c69852a19d017ef202df1e728d606b16f415451a4c29f\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Star\",\n symbol: \"star\",\n decimals: 18,\n l2_token_address:\n \"0x7fc8207f6ed789b46fe3ea7159064027b41e8a874df82b63a9a9148e733abb1\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"StarkCROC\",\n symbol: \"SCROC\",\n decimals: 18,\n l2_token_address:\n \"0x510e91b8afba2b17870b9d441cffdb64f36bfbb3c2bfad1a61e873045d95627\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"ONLY 10 TRANSACTIONS\",\n symbol: \"10TX\",\n decimals: 18,\n l2_token_address:\n \"0x3dc4c899ab90ef679d4006972a4155b8b4b5090c27ca1a0b94412736fed3c2c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Kuzhakou\",\n symbol: \"KZQ\",\n decimals: 18,\n l2_token_address:\n \"0x240233d0d186f64a59c8704b11f638bff3499110ba7312b6f21e19d470a41dd\",\n sort_order: 1,\n total_supply: 58564672902400,\n hidden: true,\n },\n {\n name: \"e-beggar\",\n symbol: \"EBGR\",\n decimals: 18,\n l2_token_address:\n \"0x13db4966643bf4182d49475ec905f354e386e048b375d2cd6e3822bd228d8f1\",\n sort_order: 1,\n total_supply: 20000000000,\n hidden: true,\n },\n {\n name: \"zero point four\",\n symbol: \"ZPF\",\n decimals: 18,\n l2_token_address:\n \"0x12442a0c5b35b8f3d72385c8dbfe832701cd2db7bc547a5429d1c03b5530774\",\n sort_order: 1,\n total_supply: 500000,\n hidden: true,\n },\n {\n name: \"Tremp\",\n symbol: \"TREMP\",\n decimals: 18,\n l2_token_address:\n \"0x15335f3f46b83b7cc0f6c8485807642fc4b6c8c098401105f482780afbb8422\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BitStark\",\n symbol: \"BIT\",\n decimals: 18,\n l2_token_address:\n \"0x67c86a9f49b91fcf1450972dfcdee4f8ff7c2b975ff0886a1bafc862d73ae46\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"King Tobby Kitty\",\n symbol: \"TOBBY\",\n decimals: 18,\n l2_token_address:\n \"0x64626a935ee96e532673e0c638a6f3da937d0f57a74d8d2ec2150f09639b757\",\n sort_order: 1,\n total_supply: 64000000,\n hidden: true,\n },\n {\n name: \"kesonwin\",\n symbol: \"KWN\",\n decimals: 18,\n l2_token_address:\n \"0x1f6df140969dd82b4c1141d1bf532198fd6fb1495cd20a3f527fd456c8e98ba\",\n sort_order: 1,\n total_supply: 7329077678798,\n hidden: true,\n },\n {\n name: \"Hey Jude official\",\n symbol: \"JUDE\",\n decimals: 18,\n l2_token_address:\n \"0x24847297fd75569be279bf1d44405272b7da6588528c5b7d5736b93d8862806\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Brioche Pur Beurre\",\n symbol: \"BPB\",\n decimals: 18,\n l2_token_address:\n \"0x32c5c3511cea179e4d5885cc174a90fe0f8f9f4f65b5457312ce55842b7e9e5\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"nomorealons\",\n symbol: \"nalon\",\n decimals: 18,\n l2_token_address:\n \"0x2faf7745cfa74ac80f84d0933b304fd0f3ae66ed1eb637db3f5db6301272521\",\n sort_order: 1,\n total_supply: 7,\n hidden: true,\n },\n {\n name: \"Unruggable\",\n symbol: \"UNRUG\",\n decimals: 18,\n l2_token_address:\n \"0x613db0f731d6c8ab55ea3a9ea796a72734c89d11555c734dfb3afd5b0722da2\",\n sort_order: 1,\n total_supply: 5,\n hidden: true,\n },\n {\n name: \"GaiaPapaya\",\n symbol: \"GAPA\",\n decimals: 18,\n l2_token_address:\n \"0x12ab6afe9fed41ff8f722927a8b2a4f6a3689c8ede8111eb8e0091ec85fdf61\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Debiet Herry\",\n symbol: \"DHY\",\n decimals: 18,\n l2_token_address:\n \"0x5f7158c3baa4188d7c9ad325c35a0cb928710b2b7357375f1a5668e9a073453\",\n sort_order: 1,\n total_supply: 572662852187,\n hidden: true,\n },\n {\n name: \"jiutongjun\",\n symbol: \"JTJ\",\n decimals: 18,\n l2_token_address:\n \"0x21921f3de40112fddd339beb985fa8f652d795747eedcd6a990619777a0800c\",\n sort_order: 1,\n total_supply: 444444444444,\n hidden: true,\n },\n {\n name: \"Eli\",\n symbol: \"ELI\",\n decimals: 18,\n l2_token_address:\n \"0x22efee3a59b1d25cd6e2a6c5609cc8d7810ecdfff0be41796c1841125a6bd86\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Baby Laika\",\n symbol: \"BABYLAIKA\",\n decimals: 18,\n l2_token_address:\n \"0x6ea04cd7e40bfef07c3625e2b3472839093d966bf601568128436466f962fcf\",\n sort_order: 1,\n total_supply: 1957000000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/82e0e163-6ad9-4f3c-1629-c66fcc4f0500/logo\",\n },\n {\n name: \"Putin\",\n symbol: \"PUTIN\",\n decimals: 18,\n l2_token_address:\n \"0x3cf12143058752c132f272c153826cd5737202628df099564b96358767f807c\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"Dubai Xander\",\n symbol: \"DXD\",\n decimals: 18,\n l2_token_address:\n \"0x2e7cebfb9f9d1977a8efc83f4cc5bd82837e75291838cea5617f7205daaf304\",\n sort_order: 1,\n total_supply: 499875336,\n hidden: true,\n },\n {\n name: \"Unrug\",\n symbol: \"UNG\",\n decimals: 18,\n l2_token_address:\n \"0x5d5f59113d87ee0834455fde4dde6bb58172e9f4acd390a607520cb3d7dfac\",\n sort_order: 1,\n total_supply: 7106454744,\n hidden: true,\n },\n {\n name: 'SATOSHI \"NAKAMOTO',\n symbol: \"SATOSHI\",\n decimals: 18,\n l2_token_address:\n \"0x639e101d00db15bdcaa84b51d74547b5b2696673b8143952647f803e984a6e0\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"JULIAN ASSANGE\",\n symbol: \"WIKILEAKS\",\n decimals: 18,\n l2_token_address:\n \"0x5929094be3d7baf1cd3fc7752d9859294ad15ca9cee1442d12eda20d27f5e4a\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Reduction du Temps de Travail\",\n symbol: \"RTT\",\n decimals: 18,\n l2_token_address:\n \"0x400dfa348d7f4d6944abd83dba474df7b2e2bf80b63f312ada25ef20f2b253\",\n sort_order: 1,\n total_supply: 35000000,\n hidden: true,\n },\n {\n name: \"StarkDog\",\n symbol: \"sDOG\",\n decimals: 18,\n l2_token_address:\n \"0x905bb70b5326fb2a575ae24e7f05b0c01f61e18cd5ebcb00ef573060c877e7\",\n sort_order: 1,\n total_supply: 420000000069,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/cad88778-78ec-4bf3-18c3-13eef2196100/logo\",\n },\n {\n name: \"nemek\",\n symbol: \"NMK\",\n decimals: 18,\n l2_token_address:\n \"0x3798fe4fde2ce18bfe04a57e0d96bc579cbb6114667cb274a9a6df2f9ebebea\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Oxana@STARK\",\n symbol: \"Ox\",\n decimals: 18,\n l2_token_address:\n \"0x43f3dc6be8637ff89c9c517961f2b7d341ca72f83194e1ea63463da8ee90430\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ARTPEACE\",\n symbol: \"ART\",\n decimals: 18,\n l2_token_address:\n \"0x787fcd81c60916886275a9c2ae54202db1f3c0dfd94a6d2eca9a9517f1269fc\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Odin fam\",\n symbol: \"Odin\",\n decimals: 18,\n l2_token_address:\n \"0x269e1c082de181565a4571899791bb69fc5792d7c362f0aa0cbea25d8525627\",\n sort_order: 1,\n total_supply: 123456789,\n hidden: true,\n },\n {\n name: \"Uncarpetable\",\n symbol: \"UCPT\",\n decimals: 18,\n l2_token_address:\n \"0x1ab6c43fb203a39f8bbd1aa4aab17c44a3909548891c75203ba7c5c467f673d\",\n sort_order: 1,\n total_supply: 250000,\n hidden: true,\n },\n {\n name: \"Onbodem\",\n symbol: \"OBD\",\n decimals: 18,\n l2_token_address:\n \"0x24611abd0e7203158d1ca2b7a04c2333341bb15c0f8b25a2582582228908a3e\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/57267f37-8030-45bb-78df-55fee8bb0a00/logo\",\n },\n {\n name: \"Bonzo\",\n symbol: \"BonZo\",\n decimals: 18,\n l2_token_address:\n \"0xd2afb52d33ae8e8690bc6f52c590fdfe8f1ae51c5be78519dc4f25dffcffb9\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Stark Inu\",\n symbol: \"STARKINU\",\n decimals: 18,\n l2_token_address:\n \"0x6cead2351c6fc93ccf3a43d4ddb645d0c851c1827b0332e3ac0c5c89d6560db\",\n sort_order: 1,\n total_supply: 8888888888888,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/83fe0fc0-0c64-4823-8647-53c87f03a900/logo\",\n },\n {\n name: \"molly\",\n symbol: \"molly\",\n decimals: 18,\n l2_token_address:\n \"0x2097a5dd1f45c6efa913d05f6cb4e0870cb890aaac02e83c4b0f16e91650703\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"1 of the 8 users\",\n symbol: \"1N8\",\n decimals: 18,\n l2_token_address:\n \"0x5e602506935bf389d98a0cd72e3a0ec2a8c28075854d12bec8c0f14f7cde399\",\n sort_order: 1,\n total_supply: 3000000,\n hidden: true,\n },\n {\n name: \"TT\",\n symbol: \"TT\",\n decimals: 18,\n l2_token_address:\n \"0x11e1744158e25c07c278e584527f6ee3f551f3a8042351ae7a83dc5c4ff675a\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"HellyManSeason\",\n symbol: \"FAKELI\",\n decimals: 18,\n l2_token_address:\n \"0x1769a3046e379ab74ef21ecc858eb80ac784265eaa89a54593c7b341123025c\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"gidi\",\n symbol: \"gidi\",\n decimals: 18,\n l2_token_address:\n \"0x70ed1af5fc1196b510a8480c766d6b697daf802bd32a59234e79c04a86f894e\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"UNO\",\n symbol: \"UNO\",\n decimals: 18,\n l2_token_address:\n \"0x719b5092403233201aa822ce928bd4b551d0cdb071a724edd7dc5e5f57b7f34\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/32899821-e4aa-4131-00f9-7bd3a5728500/logo\",\n },\n {\n name: \"Drowzy\",\n symbol: \"ZZZ\",\n decimals: 18,\n l2_token_address:\n \"0x1597c6265320a24c8adb2054a117f8be35c5e3e12aab80bbeccf3cfbcdeeb5a\",\n sort_order: 1,\n total_supply: 1500000000,\n hidden: true,\n },\n {\n name: \"Shiba Inu\",\n symbol: \"SHIB\",\n decimals: 18,\n l2_token_address:\n \"0x24550d2debf464e95eb22639db0a9a46bcf2dda78a39a6bfbc7311a8297718\",\n sort_order: 1,\n total_supply: 999982362230839,\n hidden: true,\n },\n {\n name: \"Lamiya\",\n symbol: \"LAM\",\n decimals: 18,\n l2_token_address:\n \"0x5a1f532547c374e513e9c78d4030b11e07fdb3b0fc19c9c8ae83952bade5ff3\",\n sort_order: 1,\n total_supply: 444444444,\n hidden: true,\n },\n {\n name: \"deneme\",\n symbol: \"dnm\",\n decimals: 18,\n l2_token_address:\n \"0x596bc6ee3c8185bf5023fe6ffb1ec2373bcc7de2b5b8bc5bc1003ac43ff4730\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Perro de Presa Canario\",\n symbol: \"PRESA\",\n decimals: 18,\n l2_token_address:\n \"0x498217d66d866ee436014b6b04f969c59f3aea9f1e3a14d3899aae3337759dc\",\n sort_order: 1,\n total_supply: 210000012,\n hidden: true,\n },\n {\n name: \"Brussels\",\n symbol: \"BXL\",\n decimals: 18,\n l2_token_address:\n \"0x70f6a4cdc26f44426784e41550a3989e9e6afeb7a028c9861f354fa8e7a0436\",\n sort_order: 1,\n total_supply: 11000000,\n hidden: true,\n },\n {\n name: \"Zariha Choah\",\n symbol: \"zcv\",\n decimals: 18,\n l2_token_address:\n \"0x15dec8882ab81b286fb942cff78b6b418dcead46691549e2e3578c9814626c0\",\n sort_order: 1,\n total_supply: 2777193195480,\n hidden: true,\n },\n {\n name: \"BBL Drizzy\",\n symbol: \"$BBL\",\n decimals: 18,\n l2_token_address:\n \"0xb85c4ff45167c89033105b797bd75ff1d605f13ecb6ee95b52fcbe596f354d\",\n sort_order: 1,\n total_supply: 6666666666,\n hidden: true,\n },\n {\n name: \"OmniDog\",\n symbol: \"OMNI\",\n decimals: 18,\n l2_token_address:\n \"0x12137d3fc8a67d3d9ba6ab3c7ffa1780866d5670c6f39bb366c54ae006bff5b\",\n sort_order: 1,\n total_supply: 420000000000000,\n hidden: true,\n },\n {\n name: \"Book of Memes on Stark\",\n symbol: \"BOMES\",\n decimals: 18,\n l2_token_address:\n \"0x5b75079c424974f8350337d1fda4614e954a3e82e58352a328644e9a744e93c\",\n sort_order: 1,\n total_supply: 69696969696,\n hidden: true,\n },\n {\n name: \"CAIHONGM\",\n symbol: \"CHM\",\n decimals: 18,\n l2_token_address:\n \"0x3c2f1e4d662e127c351097bc9c7e8af572d5bfed9ec71b826d6a405fc39ca6c\",\n sort_order: 1,\n total_supply: 2222222333,\n hidden: true,\n },\n {\n name: \"London Ssidon\",\n symbol: \"LSD\",\n decimals: 18,\n l2_token_address:\n \"0x20db47afdf7ffabf54f17b40998725d00a81ee3a94db3350ca14c5112435061\",\n sort_order: 1,\n total_supply: 496992509,\n hidden: true,\n },\n {\n name: \"Dos Kolpas\",\n symbol: \"DKS\",\n decimals: 18,\n l2_token_address:\n \"0x3cf761dbeefa30e922164d3e52d586af79e4e6dda356bec268f11ba2751e9fc\",\n sort_order: 1,\n total_supply: 46379764527,\n hidden: true,\n },\n {\n name: \"Bolt Cat\",\n symbol: \"BOLTCAT\",\n decimals: 18,\n l2_token_address:\n \"0x16c56204f8943c372375febfdcedc92088fc7b87a6280a91e3ce02211877f2e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"GOGOAD\",\n symbol: \"GOD\",\n decimals: 18,\n l2_token_address:\n \"0x733b20baffaee151fce761f69a88eede360986df5222ff79b1ceee5d702504e\",\n sort_order: 1,\n total_supply: 5685949653,\n hidden: true,\n },\n {\n name: \"This Place Sucks\",\n symbol: \"TPS\",\n decimals: 18,\n l2_token_address:\n \"0x72ad4195b783b56a41b428f864d96f727cce59127874fbb4b2bce1d70b28aad\",\n sort_order: 1,\n total_supply: 5,\n hidden: true,\n },\n {\n name: \"UnruggableSDK\",\n symbol: \"SDK\",\n decimals: 18,\n l2_token_address:\n \"0x5f7995ea458142135c6d8731a73aa75f46ebba9fc3af4160adc41a0422f8958\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Shimi\",\n symbol: \"SHIMI\",\n decimals: 18,\n l2_token_address:\n \"0x4dc9aaa0064c3a562d8e7eabcde97bfbce77b518b709d46015b22161f49d17\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"MariyaNiha1\",\n symbol: \"MN1\",\n decimals: 18,\n l2_token_address:\n \"0xd71403844aac40e44fcb077010a3d17973290e33d83e3f230d50f61f630ea8\",\n sort_order: 1,\n total_supply: 133422837,\n hidden: true,\n },\n {\n name: \"ZKS\",\n symbol: \"ZKS\",\n decimals: 18,\n l2_token_address:\n \"0x7f2b6b2d22232cb6fdd4cf137b660150e514534d80707e19bcf0d28ca65ee59\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"TestSpeed\",\n symbol: \"Speed\",\n decimals: 18,\n l2_token_address:\n \"0x488d3ddac913ec42f3e32a43bed2e0b51e7629fd5f2bc3b36c62184161bff00\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"teamshimi\",\n symbol: \"$wednsday\",\n decimals: 18,\n l2_token_address:\n \"0x546b5d69c8a7f45d18e2220e90c9850be0dfc89111586cc269cc3c1aec4a302\",\n sort_order: 1,\n total_supply: 10,\n hidden: true,\n },\n {\n name: \"Shrink\",\n symbol: \"SHR\",\n decimals: 18,\n l2_token_address:\n \"0x43689cfc66944909f249f0ea1cf9ff683dbd5ef40918085e8c88a9a31e3b0ff\",\n sort_order: 1,\n total_supply: 24,\n hidden: true,\n },\n {\n name: \"BabyCario\",\n symbol: \"cro\",\n decimals: 18,\n l2_token_address:\n \"0x4ee423b1f89f1ac011d6f2f05c1eb35d61594b801122771cce7747718aa416f\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/0c87afdd-fbae-4eb4-43ce-83857ef0c500/logo\",\n },\n {\n name: \"STARKNET DAUNI\",\n symbol: \"DDDD\",\n decimals: 18,\n l2_token_address:\n \"0x571e167d97d8870865d16f8b41f8603d60027ab2bc3c5ab4b09ee1d2c7ba65c\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"DegenMaxi\",\n symbol: \"DMAX\",\n decimals: 18,\n l2_token_address:\n \"0x373947e49332c0414928d75246383ec13fbe4b085cf8e1d34c40092d644d931\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"STONED TOE TONY\",\n symbol: \"STOENY\",\n decimals: 18,\n l2_token_address:\n \"0x6e2c03e31f6cda18484ed035c02a25d6075393e11da24c898337f736716acae\",\n sort_order: 1,\n total_supply: 420000000000,\n hidden: true,\n },\n {\n name: \"I didn't meme it\",\n symbol: \"IDMI\",\n decimals: 18,\n l2_token_address:\n \"0x51cdfae7c5bfe0a70d8af0972b76d4f5e93a38ffc16e670dc1a7697d21362eb\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Nostra Staked STRK\",\n symbol: \"nstSTRK\",\n decimals: 18,\n l2_token_address:\n \"0x4619e9ce4109590219c5263787050726be63382148538f3f936c22aa87d2fc2\",\n sort_order: 1,\n total_supply: 8847115,\n hidden: true,\n },\n {\n name: \"LayerzeroSwap\",\n symbol: \"ZROSWAP\",\n decimals: 18,\n l2_token_address:\n \"0x1762cbb83f4f152b70f1c6da2d045b6b8e92472101e132cda8d161bc0228897\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"Hossain\",\n symbol: \"HSS\",\n decimals: 18,\n l2_token_address:\n \"0x739c3f9a20ab2b412ae174048eff38a5ab50a497c35a14330c639e4c183dd72\",\n sort_order: 1,\n total_supply: 7777777771,\n hidden: true,\n },\n {\n name: \"Baby Slinky\",\n symbol: \"BABYSLINK\",\n decimals: 18,\n l2_token_address:\n \"0x231ca6f1f570fb5ee8356faa4545e6cd16096a8c88f7aa77e38defe11f21540\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"XIEDIDISS\",\n symbol: \"DISS\",\n decimals: 18,\n l2_token_address:\n \"0x55daa2cd64401710f214c197d965eb006f7036a5df3512143032a4bf5a4e2d4\",\n sort_order: 1,\n total_supply: 21298986823,\n hidden: true,\n },\n {\n name: \"Sasson's\",\n symbol: \"KRAR\",\n decimals: 18,\n l2_token_address:\n \"0x6494762974ac0dd62ba76d582c546f25e9b2eb9220cbce9d68fb6b21f9e131e\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"Inconceivable\",\n symbol: \"INCON\",\n decimals: 18,\n l2_token_address:\n \"0x1bed2f279616a500dccab1ae7a2f7455851b531924ef393aa0d033b88bd722\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Obuke Protomeme\",\n symbol: \"OBUKE\",\n decimals: 18,\n l2_token_address:\n \"0x2f273aa4c28a417ca4119b1f8c71286a5bb764962964d7df3f9e665d78c37d1\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Caklvo Naya\",\n symbol: \"CNA\",\n decimals: 18,\n l2_token_address:\n \"0x18883ff16964cc9da17905165aaa07f5e72b8a58487e6bec8ace0ac9de2d728\",\n sort_order: 1,\n total_supply: 321992943444,\n hidden: true,\n },\n {\n name: \"WARS\",\n symbol: \"WARS\",\n decimals: 18,\n l2_token_address:\n \"0x15905d4ce047ed501b498964e74d82750c22826db5a38449080e9bf4e4796ca\",\n sort_order: 1,\n total_supply: 2999999999,\n hidden: true,\n },\n {\n name: \"avail\",\n symbol: \"avail\",\n decimals: 18,\n l2_token_address:\n \"0x2ca70e2afa39bbd71c803313cd3b82f108cef1de491c2050f01cc5a1dfa7836\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"Nasren Jan\",\n symbol: \"NAJ\",\n decimals: 18,\n l2_token_address:\n \"0x6ac3faa57fc37b2d23e66211ae1642acc1117fa8c34259d89c80b1b27205c37\",\n sort_order: 1,\n total_supply: 999999999,\n hidden: true,\n },\n {\n name: \"Zombie Kangaroo\",\n symbol: \"ZK\",\n decimals: 18,\n l2_token_address:\n \"0x10fe5732595c2ada53d8da8dca4593bfcc76f0cfe7460471d04edf952f7b05c\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Hawk Tuah\",\n symbol: \"SPIT\",\n decimals: 18,\n l2_token_address:\n \"0x6fac96191781af71c51fef6f3486c3f7bb2ab8bbc53cf7411b476f16697bf18\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"SababaShekels\",\n symbol: \"SABABA\",\n decimals: 18,\n l2_token_address:\n \"0x1bb3930086685eea9268054a23afc2657ffcb59ddc57820e3a591dad02f8a81\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Dogo Argentino\",\n symbol: \"DOGO\",\n decimals: 18,\n l2_token_address:\n \"0xab2b39c0a2e21a7998241f3042cb27aec189556fdc54459de3cb5fa2a7184e\",\n sort_order: 1,\n total_supply: 19201956,\n hidden: true,\n },\n {\n name: \"Starky\",\n symbol: \"STARKY\",\n decimals: 18,\n l2_token_address:\n \"0x1505c5f80c4123b2a02e27cf4afae9463d4c3235170048bf89179b61152ae7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"STRUMP\",\n symbol: \"ST\",\n decimals: 18,\n l2_token_address:\n \"0x401fe1faa5f79a2b8491577adbae81656398efb488f0fb464c2d827e91ce07a\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Nasam\",\n symbol: \"NAM\",\n decimals: 18,\n l2_token_address:\n \"0x3e9af2c6bdd701b43649796fea3a1f0b93f0999c1a81566b76ee36d5e28fb3f\",\n sort_order: 1,\n total_supply: 6000000,\n hidden: true,\n },\n {\n name: \"secret society\",\n symbol: \"SCC\",\n decimals: 18,\n l2_token_address:\n \"0x440f07bd76b39f2ff2820e80c0927e7b6dd6393cbcbd1747c4f43870b666b67\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Gold(berg)Coin\",\n symbol: \"Gold\",\n decimals: 18,\n l2_token_address:\n \"0x65681ca1adc06cad4f0f45fee28a037c628ccc773c46f41628d47f999c0a911\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Unruggable3\",\n symbol: \"MEME3\",\n decimals: 18,\n l2_token_address:\n \"0x6633f31e9f82e876b207d398fff3e24946609195dfa06b1f5afebfff9f84153\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Nooice\",\n symbol: \"NOCE\",\n decimals: 18,\n l2_token_address:\n \"0xe3d0960041bab289a3d4982d7b0e23b25a19c8db8f721b0e69c079206829c9\",\n sort_order: 1,\n total_supply: 30000000,\n hidden: true,\n },\n {\n name: \"Ali Bin-Salman\",\n symbol: \"ALI\",\n decimals: 18,\n l2_token_address:\n \"0x404db4439034e1da8b2856133cee71ae98f71a2fb849f9171656175b5b61061\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"NATCOIN\",\n symbol: \"NAT\",\n decimals: 18,\n l2_token_address:\n \"0x6a35bf4456d4f302d81266faf0b794d3292a6d2dec4841c3c134b9341f974e0\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Friend\",\n symbol: \"FED\",\n decimals: 18,\n l2_token_address:\n \"0x1ad0835fcd4f6e3ae4e4825b21038647bb00c406c9f0b3df8e7f27ed02a0ec6\",\n sort_order: 1,\n total_supply: 683048124553,\n hidden: true,\n },\n {\n name: \"Capybara\",\n symbol: \"Capy\",\n decimals: 18,\n l2_token_address:\n \"0x782ed91f33041f35df55feca2f09b23ff9eafd41f05706ffb4901af37476828\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"BITCOIN TO THA MOOON\",\n symbol: \"BTTM\",\n decimals: 18,\n l2_token_address:\n \"0x8d3c594752646a4e0c0256a52960b371dde5c32928b2c8a1eb76335d05de27\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"GO FISH\",\n symbol: \"FISH\",\n decimals: 18,\n l2_token_address:\n \"0x270b2be1022e901827cee0d2213cf34ae23b7724f8b41aebd1cb8cb315fbd8c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ShibAnubis\",\n symbol: \"SHIBANU\",\n decimals: 18,\n l2_token_address:\n \"0x74d22f7c0cfe8180a27ec7db6aab9cbac658313f739a8bf29896597f6b7daed\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Working_From_Office\",\n symbol: \"WFO\",\n decimals: 18,\n l2_token_address:\n \"0x29009b14dc1cb10ead13e5a733727946e3be0782ef8dfc15f4987343030541f\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Putero de Epoca\",\n symbol: \"PE\",\n decimals: 18,\n l2_token_address:\n \"0x3728f11c5ae0ef08bf5460c78c810582a4bcf07c15f885410ff51446c0c7be5\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"Unruggable\",\n symbol: \"UR\",\n decimals: 18,\n l2_token_address:\n \"0x28fb5103c03172c4d45d83412d512641e34561bc7ba6b29e819d0a673860a10\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"RICHMAN\",\n symbol: \"RICH\",\n decimals: 18,\n l2_token_address:\n \"0x9b54c41ee003edcbc5507c98316ec2e5430c6fcb3139529e92683862ddbd40\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/51a18975-4c02-4137-626e-34b355e0ff00/logo\",\n },\n {\n name: \"Momo\",\n symbol: \"MOMO\",\n decimals: 18,\n l2_token_address:\n \"0x2f9877ac5eef6798194f585749dc09939b7db5b4bfc8c98d0584fefbe391b01\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"PabloCoin\",\n symbol: \"PAB\",\n decimals: 18,\n l2_token_address:\n \"0x4a86a4fce448fba44616e05b45ffe0c0e3ba08969b1eeb2eec40ca890e18da8\",\n sort_order: 1,\n total_supply: 30000000000,\n hidden: true,\n },\n {\n name: \"DumpCoin\",\n symbol: \"DUMP\",\n decimals: 18,\n l2_token_address:\n \"0x4807b28cab0f43f6c81f1b0500c016a4a98830401728133b590fdf95205b7cc\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"Struknet\",\n symbol: \"STRUK\",\n decimals: 18,\n l2_token_address:\n \"0x2ad9abb73d998d92405b6c3fef6097cfff2667d22b8c8111d0037de88d72af1\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Wojak\",\n symbol: \"Wojak\",\n decimals: 18,\n l2_token_address:\n \"0x22c873c3cc5bd288c0006929fe27ebd04085a1b90cd7e188b2cb0ca069781f7\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"UwU\",\n symbol: \"UWU\",\n decimals: 18,\n l2_token_address:\n \"0x64e16e284c3be3496468f55a83a20ba5a5c85024da3d823370c2d1b18031fb6\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"wope\",\n symbol: \"WOPE\",\n decimals: 18,\n l2_token_address:\n \"0x4eb7c6f24af9500de02536d1c15b80d839f36ac72eda95697b98be35d987384\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Nerd\",\n symbol: \"Nerd\",\n decimals: 18,\n l2_token_address:\n \"0x6ffd08d8eb0c52deb4ecf484c06120c99fd2de8e240c99762708360f8c929d7\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"scamnet\",\n symbol: \"scamnet\",\n decimals: 18,\n l2_token_address:\n \"0x3a9cbc27296ee7750bdb3fd315fef271cab01ef8bcf332268f84bf557d96ec\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"PEPE\",\n symbol: \"PEPE\",\n decimals: 18,\n l2_token_address:\n \"0x9015e5f8410d049095c93ac215038966bc7b1960166be684c63ed6a062a81a\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"SCRUFFY\",\n symbol: \"SCRF\",\n decimals: 18,\n l2_token_address:\n \"0x4d7e6dbf1a6c08538cb31a938ba3c94155ce940f23d6c9a04f8dce75342f417\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"CorinaHayner\",\n symbol: \"CHR\",\n decimals: 18,\n l2_token_address:\n \"0x7dfad59e2ce897482fa2913f196e9af94bb75c3cc62559f6d47dd87711b2895\",\n sort_order: 1,\n total_supply: 438613347312,\n hidden: true,\n },\n {\n name: \"Jasamn\",\n symbol: \"JMN\",\n decimals: 18,\n l2_token_address:\n \"0x66ee08cf04ced395e6fa324a8109ab8f4e79010e8a5a56a379bcb4e949c1140\",\n sort_order: 1,\n total_supply: 48265937259,\n hidden: true,\n },\n {\n name: \"gm\",\n symbol: \"gm\",\n decimals: 18,\n l2_token_address:\n \"0x5957aea62cd302cd736d2decd578cdf5095bcac294353b0ab3dc521fced4f32\",\n sort_order: 1,\n total_supply: 10000000000000000,\n hidden: true,\n },\n {\n name: \"Punk\",\n symbol: \"PUNK\",\n decimals: 18,\n l2_token_address:\n \"0x26e0852e1de834db3858b644270c52c4e0cab5be1da710751711c11b74eefed\",\n sort_order: 1,\n total_supply: 139999999999999,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/5e8bfd68-f84a-450a-cced-771171bff800/logo\",\n },\n {\n name: \"DRAGON BALL\",\n symbol: \"DRAB\",\n decimals: 18,\n l2_token_address:\n \"0x2a3c4db12911f4acc6480f45928c2858e6517ec77d15a9709bc727af5f26e1b\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"rhger\",\n symbol: \"trhzeg\",\n decimals: 18,\n l2_token_address:\n \"0x12959acb518ec8ed045f4277d687828ca6e1b2bac310bec19b2a42e351bfdeb\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SON GOKU\",\n symbol: \"GOKU\",\n decimals: 18,\n l2_token_address:\n \"0x5908a959cb0de5f2bce33e60e998742a17ebe663fd39ddf7377cb37d8925fa\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"The Roman War Dog\",\n symbol: \"CANE\",\n decimals: 18,\n l2_token_address:\n \"0xf5f982426849acf919d257b535635330b2d6b8dac9f822656fcab47a9671fa\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"UNRUGGBLESTARKDOGGYINU\",\n symbol: \"USDI\",\n decimals: 18,\n l2_token_address:\n \"0x5848244e6ef91a9599d21bdb9d60a6e8b8fd71289794f48965b376e8f3acb6a\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Tony\",\n symbol: \"Tony\",\n decimals: 18,\n l2_token_address:\n \"0x6e93bee3b8fe29713292a0d137af8d1ba0f0751573a6663f84c4c620ee5c66c\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"ONLY EIGHT USERS ON SCROLL\",\n symbol: \"8SCROLL\",\n decimals: 18,\n l2_token_address:\n \"0x43a7d8dd51051f9e9db84543fd529db6feab974713b41338da9326b663ee57c\",\n sort_order: 1,\n total_supply: 88888888,\n hidden: true,\n },\n {\n name: \"krats\",\n symbol: \"krats\",\n decimals: 18,\n l2_token_address:\n \"0x6d593420479471d5b8853e527af756be258eaf88bd52b53b35351c2b519b8b5\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Unruggable\",\n symbol: \"MEME\",\n decimals: 18,\n l2_token_address:\n \"0x70fc9a142adea087abe3761ffceb4885c36223c12d80bc2235e01a60fd1285b\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"DOGINUAI\",\n symbol: \"BITCOIN\",\n decimals: 18,\n l2_token_address:\n \"0x53b198a26392efb8ee0c4b75a90739478beec0b84ca9bfde090e506efb12935\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"STARKBULL\",\n symbol: \"STBULL\",\n decimals: 18,\n l2_token_address:\n \"0x6a541d142645c5b3c092377deff902bb35f1c6217164cdd2eb71ed7c75889a8\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/3c64e210-206e-4a05-fae4-519f0800fb00/logo\",\n },\n {\n name: \"Stark Bitcoin\",\n symbol: \"SBTC\",\n decimals: 18,\n l2_token_address:\n \"0xa0f5e30bd4749dbbf51bf6d7bcfddd28c9c770defedd7612cfb3fa849e050e\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"TRUMP\",\n symbol: \"TRUMP\",\n decimals: 18,\n l2_token_address:\n \"0x3c5ad50167f21a51e07d26db7353cfbd8eae77754542e7c8a306b010fe82ffa\",\n sort_order: 1,\n total_supply: 5000000000,\n hidden: true,\n },\n {\n name: \"ZETA\",\n symbol: \"ZETA\",\n decimals: 18,\n l2_token_address:\n \"0x718917d4e79c50f886fea3738ae5c48b1f16c36a03b2c683e314c22e5418fb7\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"STA[V]RK\",\n symbol: \"AAA\",\n decimals: 18,\n l2_token_address:\n \"0x4a11affba2c65a201b63049e208629c31ec0320bf1b5f6657efc228fadf361c\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"Banana\",\n symbol: \"BANANA\",\n decimals: 18,\n l2_token_address:\n \"0x67bd8f64ddf28f55f42c568c415c1e137d9da8c60e007e417487cf005cdf411\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c76e1128-0938-420d-baaa-2fb9da454000/logo\",\n },\n {\n name: \"doge\",\n symbol: \"doge\",\n decimals: 18,\n l2_token_address:\n \"0x1d566afa6e05e41368f6befcdda6cf03c6be95b3a79439ae834ab1c740729aa\",\n sort_order: 1,\n total_supply: 100000000000000000000,\n hidden: true,\n },\n {\n name: \"Starkshib\",\n symbol: \"Sshib\",\n decimals: 18,\n l2_token_address:\n \"0x4818c7552614091b41eef33c909d6cf38a0d31368c90bc60ebbc401682d21ea\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"RugMe\",\n symbol: \"RugMe\",\n decimals: 18,\n l2_token_address:\n \"0x2e16de4e546c6a5db7752d4d37333397e878af1b991ebcac18c12f645b1faa8\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"ANGRY\",\n symbol: \"ANGRY\",\n decimals: 18,\n l2_token_address:\n \"0x7eca25abb06cabebb1cb1ca3d7bd89d10903d3bee2e1290cbfc9e4177e50b50\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"StarkDoge\",\n symbol: \"SDOGE\",\n decimals: 18,\n l2_token_address:\n \"0x4f812d4c2284675fdb8fbe95c1b8c3aca2c4b8254597f7eba642c18ca845f0e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Starknet Bolt\",\n symbol: \"BOLT\",\n decimals: 18,\n l2_token_address:\n \"0x4a6859b26d63e169531558e278cc8ebdf3ca3939c5a096094713b024f658e57\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/22f8f2cf-aea8-4fe7-ee9e-0d802a05af00/logo\",\n },\n {\n name: \"Frieza\",\n symbol: \"FRZ\",\n decimals: 18,\n l2_token_address:\n \"0x7afaade86227ae5cae4fe4ee906f8c2f31aa22bfec7adda23990a4a567fa706\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"Dafna\",\n symbol: \"*-:\",\n decimals: 18,\n l2_token_address:\n \"0x27a85047f5ce29f16cf99543a028ec0b88b0e9c9924bf3238e8a496792634c7\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"Only 8 Coin\",\n symbol: \"8COIN\",\n decimals: 18,\n l2_token_address:\n \"0xf2bf1759106be30cf33b350bac9a4026ef7d327bb72f64c9264021c96d7823\",\n sort_order: 1,\n total_supply: 8,\n hidden: true,\n },\n {\n name: \"Masuma\",\n symbol: \"MMA\",\n decimals: 18,\n l2_token_address:\n \"0x46d670ae98dcb6371a490addf3b4cecb4e3fcbaaef02f1be4e034a4918125a5\",\n sort_order: 1,\n total_supply: 66666678,\n hidden: true,\n },\n {\n name: \"DAILY TEN TX\",\n symbol: \"TEN\",\n decimals: 18,\n l2_token_address:\n \"0x7a79bb5ed85e9b1534610adf427a1e98e89e95a25fefb6c18f0ecd2bcf1b13b\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"UEA\",\n symbol: \"UEA\",\n decimals: 18,\n l2_token_address:\n \"0x1ec829a0492c18f1ca371ce14bbc903c98e46d8123802e229f7daf736847d59\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"AnimCoin\",\n symbol: \"ANiM\",\n decimals: 18,\n l2_token_address:\n \"0x7da402120e527fa3080872f5d3808bd2414e0b7d6eb151174f18b1a3b6e7a09\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"dwpxkcfveqy\",\n symbol: \"DWP\",\n decimals: 18,\n l2_token_address:\n \"0x152f52f701d7042045d8fccb45aaafddc8338e6fdcea62be8fc3c466596a310\",\n sort_order: 1,\n total_supply: 1376974542,\n hidden: true,\n },\n {\n name: \"gemstrak\",\n symbol: \"gems\",\n decimals: 18,\n l2_token_address:\n \"0x4c221e49d608102708af232fbb9645cc9228fa47b3ee2fb043fb21205ae84db\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"STROK\",\n symbol: \"STROKNET\",\n decimals: 18,\n l2_token_address:\n \"0x2b7e3e439f09a08b37ac8f444e53d7d2a777ea80be520ae4a798e9ec8ecd180\",\n sort_order: 1,\n total_supply: 69000000,\n hidden: true,\n },\n {\n name: \"2nd try\",\n symbol: \"Woooooo\",\n decimals: 18,\n l2_token_address:\n \"0x20035820d1cc59cb937803f7b59780d4c9e1dac9354db3437abb4a804b32d0\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"4 cats\",\n symbol: \"4cats\",\n decimals: 18,\n l2_token_address:\n \"0x393e53d93f598d4cd78a8180a724b4546c531209aec354b965b83e06a80d0bb\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Wolf Dog\",\n symbol: \"WOLFDOG\",\n decimals: 18,\n l2_token_address:\n \"0xafe31370a1e8c3a1e63d044a37637940c1514734419f9d8b3cbda3e9173bf6\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Wengou\",\n symbol: \"Weng\",\n decimals: 18,\n l2_token_address:\n \"0x1d14bc74d00fa8e807be2c5066b04c9eaedacedc4063bc7f3a9208e68ab11e5\",\n sort_order: 1,\n total_supply: 6666666,\n hidden: true,\n },\n {\n name: \"wubnet\",\n symbol: \"wubnet\",\n decimals: 18,\n l2_token_address:\n \"0x60f167513dd4288f53fac18ec344bafbd11d4bb5ca77eb31f00b9ba77951581\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"StrkDropV2\",\n symbol: \"V2\",\n decimals: 18,\n l2_token_address:\n \"0x3acb2889b69e0f43bd17405c867f0659e412af147bbb401b4c747005c3fa129\",\n sort_order: 1,\n total_supply: 400000000,\n hidden: true,\n },\n {\n name: \"Wolf Wif Cat\",\n symbol: \"WWC\",\n decimals: 18,\n l2_token_address:\n \"0x52f835dd0bf81651b51fc7e31bd672dbf8c5e78fc72dc11c43f1061c1445fca\",\n sort_order: 1,\n total_supply: 10,\n hidden: true,\n },\n {\n name: \"0.005 Etherum\",\n symbol: \"0.005\",\n decimals: 18,\n l2_token_address:\n \"0x6283b46bd32dbe3397ae55381b86c65e405fbeb12e7f3b4ea2433b8a0f7589f\",\n sort_order: 1,\n total_supply: 420000000,\n hidden: true,\n },\n {\n name: \"SithSwap\",\n symbol: \"SITH\",\n decimals: 18,\n l2_token_address:\n \"0x6fedc8e5246e38e06c08c2e784e6a46eb2ae69433be04fe911f5726cb96b67e\",\n sort_order: 1,\n total_supply: 36611101,\n hidden: true,\n },\n {\n name: \"Flexium\",\n symbol: \"FLX\",\n decimals: 18,\n l2_token_address:\n \"0x13bcdb9dc28e32acaa2461d44210952aa2693fc7c323ac4d543f865bac6a3bc\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Ington\",\n symbol: \"IGN\",\n decimals: 18,\n l2_token_address:\n \"0x187553145dbbdad0832ecb1d461660a80edfb77730b4fe322bc689b29af5881\",\n sort_order: 1,\n total_supply: 539368443,\n hidden: true,\n },\n {\n name: \"Xerantia Forest\",\n symbol: \"TREES\",\n decimals: 18,\n l2_token_address:\n \"0x39101e5e1ceea589d7bad59730fada70ba5be980dc35178a91bcde31337b9c9\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Stark Neiro\",\n symbol: \"NEIRO\",\n decimals: 18,\n l2_token_address:\n \"0x4b2a69d4ab1f71eaa11f0efcaf6c4c6ac35f7348ad6698b6390e76adf691167\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"NasamHabiba\",\n symbol: \"NHB\",\n decimals: 18,\n l2_token_address:\n \"0x48cb30c7b51912bd1b8560cfc580fef6620e3fd9685a8c5b563e4b2ca6481\",\n sort_order: 1,\n total_supply: 2000000,\n hidden: true,\n },\n {\n name: \"Ramsey Abed Ramsey\",\n symbol: \"BOSGA\",\n decimals: 18,\n l2_token_address:\n \"0x39b5fb2d6e622fed00c007038a171a0614af4cf654d1e967e0e2792f2d4518\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Beggar\",\n symbol: \"Begg\",\n decimals: 18,\n l2_token_address:\n \"0x50ed99be7815234c8e00ef67bf32040dbd9f95b100b85a6ed4e7505c611d6c9\",\n sort_order: 1,\n total_supply: 420699669969,\n hidden: true,\n },\n {\n name: \"toomanyalons\",\n symbol: \"toomany\",\n decimals: 18,\n l2_token_address:\n \"0x54ed1c70164eb130f23e293f953ba76cc60323efa9611e0eec40e28202d74ae\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"E Z R A\",\n symbol: \"EZRA\",\n decimals: 18,\n l2_token_address:\n \"0x1ae0573be817a18f137cde12bf141b2c4393bff8c69fdaca9f5e1566369cd64\",\n sort_order: 1,\n total_supply: 211211211211,\n hidden: true,\n },\n {\n name: \"Nipa Akter\",\n symbol: \"NPA\",\n decimals: 18,\n l2_token_address:\n \"0x2172e7855b0ef1c63e51fca915ad1691a259c0cd47e381893d0ca7cbb42a1fe\",\n sort_order: 1,\n total_supply: 33333333332,\n hidden: true,\n },\n {\n name: \"Unrugme\",\n symbol: \"URUG\",\n decimals: 18,\n l2_token_address:\n \"0x61af9cad67a30745083f18c92432f3fbf21a676925b39310b4d34b6f6053639\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ehrth\",\n symbol: \"rtjrtj\",\n decimals: 18,\n l2_token_address:\n \"0x54815ca58000e9a931197ab325a0aa8970e73efcf9accd5282ee36b7e624fec\",\n sort_order: 1,\n total_supply: 6999999999999,\n hidden: true,\n },\n {\n name: \"shitnow\",\n symbol: \"SHIT\",\n decimals: 18,\n l2_token_address:\n \"0x7a526c605428dc48f12b8d47e4ceb203f9f858338c15206cb64bab00ab56a8a\",\n sort_order: 1,\n total_supply: 192591560855157500,\n hidden: true,\n },\n {\n name: \"starkcat\",\n symbol: \"stcat\",\n decimals: 18,\n l2_token_address:\n \"0x2f6ff8d280da4176d4acbf994da0a53e4f125f7494ac9a8dc78cdba7277f191\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"Dollie\",\n symbol: \"DLL\",\n decimals: 18,\n l2_token_address:\n \"0x7cd39417f0a23f22478529bf1be103fd2ccb80a213161e9aefa6b6174687170\",\n sort_order: 1,\n total_supply: 5555555555,\n hidden: true,\n },\n {\n name: \"Black\",\n symbol: \"BLACK\",\n decimals: 18,\n l2_token_address:\n \"0x3a6ec0b0ea7a1903329d5dec4bb574ecb4d6fdc206664e1c61eeded8158ab40\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/02e6783d-52b2-48e5-3774-3fe64f72db00/logo\",\n },\n {\n name: \"PACCAN Cash\",\n symbol: \"PACCAN\",\n decimals: 18,\n l2_token_address:\n \"0x6e141a7f86d9ce6cb5f4dd05cd05cae712ee0354425b84bbe6523b9f1b53093\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Kodrat\",\n symbol: \"KDT\",\n decimals: 18,\n l2_token_address:\n \"0x41ef37cf4ee113e835c0265384af2813525d55d7fcb5c60e0c8c6fce49eca15\",\n sort_order: 1,\n total_supply: 1862486662,\n hidden: true,\n },\n {\n name: \"Best Currency Ever\",\n symbol: \"BCE\",\n decimals: 18,\n l2_token_address:\n \"0x2852491f4e347ef05b393d2238423e9dc10d70ae30410e3358ccf7addaf164\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Margarete\",\n symbol: \"MAG\",\n decimals: 18,\n l2_token_address:\n \"0x2cd9c6cda32408b7647057a0001ceba78c6636cc8c9f541b54b3edee9b20f30\",\n sort_order: 1,\n total_supply: 4916053394,\n hidden: true,\n },\n {\n name: \"Unruggable IBS\",\n symbol: \"UIBS\",\n decimals: 18,\n l2_token_address:\n \"0x16ee5f7c7ee9deb5705fdea318381f1cdde8e86c1d5782b9c5520cbc2f034ed\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"AllCopsAreBastardsCoin\",\n symbol: \"ACAB\",\n decimals: 18,\n l2_token_address:\n \"0x4f8f4b0f92b63ba5ebf12467c52460f167c8aa1e202dcbe4c34dd7bde08ae57\",\n sort_order: 1,\n total_supply: 1312,\n hidden: true,\n },\n {\n name: \"TEST2\",\n symbol: \"TEST2\",\n decimals: 18,\n l2_token_address:\n \"0x6105a515cd9b51b1477040217a001e5acc130261e990a13f70c386d1bd51d39\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"HUA\",\n symbol: \"HUA\",\n decimals: 18,\n l2_token_address:\n \"0x798f5f0bc123fe148f6da97d5083562834bdd92ed1824357dcfed140746915\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Chakal\",\n symbol: \"CHKL\",\n decimals: 18,\n l2_token_address:\n \"0x4febfe208ca7ee6a821ff2c1be63e3628ba194a56b2f6c0ef2805908ef83239\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"SCOKS\",\n symbol: \"SCOKS\",\n decimals: 18,\n l2_token_address:\n \"0x53819ba7623a2bd419ad06b54068d53f0ca2878442b59824b36ccba28dc1f5a\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Pilpel\",\n symbol: \"PL\",\n decimals: 18,\n l2_token_address:\n \"0x4ae68704c1d62342b9a737cc94262724326052bfeff6dcff0a71c03921f582\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Starknet Cat\",\n symbol: \"$CAT\",\n decimals: 18,\n l2_token_address:\n \"0x7483422af9154c1ce509a205ccfe49f4054f915712338242e56793d76ceb414\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"UNALIGNED\",\n symbol: \"UNALIGNED\",\n decimals: 18,\n l2_token_address:\n \"0x365bdac54c4ce3a7f4a74822e3bd41991e90a2702967293ef49616448c8db55\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Come Back\",\n symbol: \"CB\",\n decimals: 18,\n l2_token_address:\n \"0x3f9ad91ea09e63b4d8f2464fc503e4a9df4d7e12aeeaa23090d139de696efdd\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"There is no meme\",\n symbol: \"NOMEME\",\n decimals: 18,\n l2_token_address:\n \"0x26576be92c8fd5d9e3de71c3e0212c9fea35efb8c1c77486593b6ca03c62e6e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"StarkBucks\",\n symbol: \"STB\",\n decimals: 18,\n l2_token_address:\n \"0x7b0505e4998ed8467acc24543076426efaa35e5e490672b5d4bfb2e31f1a91e\",\n sort_order: 1,\n total_supply: 2000000,\n hidden: true,\n },\n {\n name: \"vega finance\",\n symbol: \"VEGA\",\n decimals: 18,\n l2_token_address:\n \"0x180e5372efc0f6dbafc014a58b087a3e637443b4a41cfb8d29668610e7968c0\",\n sort_order: 1,\n total_supply: 100,\n hidden: true,\n },\n {\n name: \"Oompa Loompa\",\n symbol: \"OOMP\",\n decimals: 18,\n l2_token_address:\n \"0x7a13b1dc646f44e3759a91373873fd232410ac66308c49970c7f82f7f3b1ee3\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Molosser\",\n symbol: \"MOL\",\n decimals: 18,\n l2_token_address:\n \"0x6a717c94ad61e4cc41df5a5cc0d2492e48d8911a8268dda17a183097894b3bc\",\n sort_order: 1,\n total_supply: 800000,\n hidden: true,\n },\n {\n name: \"TaroCoin\",\n symbol: \"TARO\",\n decimals: 18,\n l2_token_address:\n \"0x46e35c4d7bdd27c9be8250d98886591aa0a2ed4f683629407ef56c27ae4be55\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"The Answer To Life\",\n symbol: \"FORTYTWO\",\n decimals: 18,\n l2_token_address:\n \"0x54d12fcf5d1a7b8afcbf06cf6b75e6c3d5aadd2cd19b706507d73e884b26c8b\",\n sort_order: 1,\n total_supply: 42000,\n hidden: true,\n },\n {\n name: \"TESTNEW\",\n symbol: \"TESTNEW\",\n decimals: 18,\n l2_token_address:\n \"0x695967645cafcd68a22b720ad3a3fd4da39c94d988fbdc3c7de81824c543e4d\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Caitlyn Jenner\",\n symbol: \"$JENNER\",\n decimals: 18,\n l2_token_address:\n \"0x481eb4d535ef8c4066cfaab40201296798146cfde0c93eff89c5e06c677b313\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"UPTOBER\",\n symbol: \"UPTOBER\",\n decimals: 18,\n l2_token_address:\n \"0x29d5775a713e6480fab0650859bd0cc529557503eab0639c799c8b6fd98a83e\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Bonk\",\n symbol: \"BONK\",\n decimals: 18,\n l2_token_address:\n \"0x781bddf077f25a53411d567093f63f9a839ec9e6bc4d99d9240cf742b98b0e8\",\n sort_order: 1,\n total_supply: 93526183276778,\n hidden: true,\n },\n {\n name: \"DEEZNUTS\",\n symbol: \"DN\",\n decimals: 18,\n l2_token_address:\n \"0x57e350c93a51b7bfb3b80670ecbff2dc1f673eb1ecc82771f44470b4616123\",\n sort_order: 1,\n total_supply: 1500000000,\n hidden: true,\n },\n {\n name: \"Starkouille\",\n symbol: \"STK\",\n decimals: 18,\n l2_token_address:\n \"0x3c8896cd73370d5e7121f449047761f093e93125b50d6b86fb171d65b319a5\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"MEDOEDONELOVE\",\n symbol: \"BBT\",\n decimals: 18,\n l2_token_address:\n \"0x36e0f53b460706f7b68adff273bc4c0e307520dd7bbfd64c029749f0e8701c3\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Starknet Voting\",\n symbol: \"vSTRK\",\n decimals: 18,\n l2_token_address:\n \"0x782f0ddca11d9950bc3220e35ac82cf868778edb67a5e58b39838544bc4cd0f\",\n sort_order: 1,\n total_supply: 1680532,\n hidden: true,\n },\n {\n name: \"Nimbora Pendle Staked Eth\",\n symbol: \"npstETH\",\n decimals: 18,\n l2_token_address:\n \"0x2f66b5ae3425bec510c8a29b4f6af92923d916acf1e1aebd82cbc4ead6c057f\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"Book of Memes\",\n symbol: \"BOME\",\n decimals: 18,\n l2_token_address:\n \"0x23c57ed8dde5d9ec502365284dfa785643e6a619aaec296cdfa2327cb50177d\",\n sort_order: 1,\n total_supply: 69696969696,\n hidden: true,\n },\n {\n name: \"Swiss Cheese\",\n symbol: \"SWIC\",\n decimals: 18,\n l2_token_address:\n \"0x71a3b7cfe9c587ec486c4a5283af43ea7c8e9bad0cd0e350dee6843236294d5\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"CAT-019\",\n symbol: \"01999J\",\n decimals: 18,\n l2_token_address:\n \"0x310880eb405b53c67a25596fe337f7e33f6d55a18b3c38d01f4f380bf5a0198\",\n sort_order: 1,\n total_supply: 229260690964994,\n hidden: true,\n },\n {\n name: \"Stark Corgi\",\n symbol: \"CORGI\",\n decimals: 18,\n l2_token_address:\n \"0x844d2cf792180590334b4ca0ce8bfc3df6fcc780f8b803aef5df37548d2b2\",\n sort_order: 1,\n total_supply: 2000000000,\n hidden: true,\n },\n {\n name: \"Runestone\",\n symbol: \"RUNE\",\n decimals: 18,\n l2_token_address:\n \"0x2d52edb66e7ac27c5a8a659b2f575649cbac6c2c9b81b1c395149af6749f732\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"its time\",\n symbol: \"IT\",\n decimals: 18,\n l2_token_address:\n \"0x45e4243185c1cf6a252a3056e8376f2f968b8e3bab0155ea40f5777dac68368\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Aakhi Ash\",\n symbol: \"AAH\",\n decimals: 18,\n l2_token_address:\n \"0x734ef73b9726409224ea2c7bb5aaf639bde19770ff34077a16e9a85ed2d02e2\",\n sort_order: 1,\n total_supply: 888888777,\n hidden: true,\n },\n {\n name: \"SkyrimForNords\",\n symbol: \"SFN\",\n decimals: 18,\n l2_token_address:\n \"0x37c8e7d63fe9e1d08c62b33f86d49df320cf7c666d77403a93f64839216a4e9\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Lorik Endri\",\n symbol: \"LEI\",\n decimals: 18,\n l2_token_address:\n \"0xd65449dc25fe38d9f57f9a853cc6f28f487146d12ee0c2373506c058be388\",\n sort_order: 1,\n total_supply: 123456789000,\n hidden: true,\n },\n {\n name: \"PonziSchemeCoin\",\n symbol: \"PONZI\",\n decimals: 18,\n l2_token_address:\n \"0x25363f24530607bcf94f81d5512c67070fc2b3f21b6490468a093c5cb596aa0\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Shoko\",\n symbol: \"\\\\_/\",\n decimals: 18,\n l2_token_address:\n \"0x7ad9d6af4932c1f75f2a275cbd58db98a6541a132b422d430f8302412ea96b4\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Stark Toes\",\n symbol: \"STOE\",\n decimals: 18,\n l2_token_address:\n \"0x1a6d63e9fc51019c2820cc7bdc4e3c66cf9adaf37898eb8d797b180dee78ed5\",\n sort_order: 1,\n total_supply: 80000000000,\n hidden: true,\n },\n {\n name: \"Frogi\",\n symbol: \"Frogi\",\n decimals: 18,\n l2_token_address:\n \"0x76c0d4e6e267a3556416310015cda468b724baa447bcab18d0b72df970eca31\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Gamatatsu\",\n symbol: \"GAMA\",\n decimals: 18,\n l2_token_address:\n \"0x3b347281792501989f255fd5a6bf21b69da173ea5d7dfea171b13dd4ef1df50\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"worthless\",\n symbol: \"ESHR\",\n decimals: 18,\n l2_token_address:\n \"0x6346e2d3f57209c88b7eaec764cc6de1a96220835b25a4dc569249c7ef8a731\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Bitcoin Halving\",\n symbol: \"HALVING\",\n decimals: 18,\n l2_token_address:\n \"0x521037960b6b2e0cf11f2aa04d47e5bb7872cb4deefdd00f46611d29f18ff9c\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"el-retardos\",\n symbol: \"RETARD\",\n decimals: 18,\n l2_token_address:\n \"0x4d57c83ddbbd82e86852d9c1ab35b3142e889e1c08804f2a546c674648cba6c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"American Pitbull Terrier\",\n symbol: \"APBT\",\n decimals: 18,\n l2_token_address:\n \"0x1983526deed43c6da8a5da25d42da3752874e31b311bd78efecbceef72d01f1\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Lane\",\n symbol: \"LEE\",\n decimals: 18,\n l2_token_address:\n \"0x3bb54ad86d8b668b363398fab1ec06f51fd5286a1799d0cc0baea5d30a5ae0a\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Avu\",\n symbol: \"AVU\",\n decimals: 18,\n l2_token_address:\n \"0x2aaa5e8bf3577d8bee2802c2d81309cef88b45d6181b3cd9b106dc3e1267a1f\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"GalS\",\n symbol: \"GLS\",\n decimals: 18,\n l2_token_address:\n \"0x7e7b834589f714c42e2098a6ff2d679e2cc413d5e5d01ed81d0f9dc20c6c394\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Runes\",\n symbol: \"RUNES\",\n decimals: 18,\n l2_token_address:\n \"0x6f8b528a3e95978be34d508d5340c07169a010a0e7b162d44f350fa4a02f555\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"lets fucking test\",\n symbol: \"LFT\",\n decimals: 18,\n l2_token_address:\n \"0x1e70cfaf6b569d647d6f6d274d198eba4d29f2105f43ebc7688bab1957f6888\",\n sort_order: 1,\n total_supply: 10,\n hidden: true,\n },\n {\n name: \"Mother Slerf\",\n symbol: \"FCK\",\n decimals: 18,\n l2_token_address:\n \"0x65eca8b72f9ceca3252d52c353adb1576fa23506066f7fd023e23a50938eb65\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"iykyk\",\n symbol: \"iykyk\",\n decimals: 18,\n l2_token_address:\n \"0x7b9cce609a2399ccc55881fc81d0290be4cde41a8726e96acc1b05a6daff2e7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Stark Rocket\",\n symbol: \"STRKR\",\n decimals: 18,\n l2_token_address:\n \"0x30c42f4c0a094ea1eda7e3086056a225a464c43dd7da48bd2083fc3114a4db\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"soso\",\n symbol: \"soso\",\n decimals: 18,\n l2_token_address:\n \"0x34ceb4231e644bd38b1039bb7b6605210a92e8a8da8a18f6ba46cb4d1aa377c\",\n sort_order: 1,\n total_supply: 100000000000000000,\n hidden: true,\n },\n {\n name: \"Gotta Go Fast\",\n symbol: \"GGF\",\n decimals: 18,\n l2_token_address:\n \"0x4b15629904a0fa1efaa83ee0035436b53675faef96a1bbb0a951209b6868363\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"zerghre\",\n symbol: \"zrhet\",\n decimals: 18,\n l2_token_address:\n \"0x6558f62f610be5bb7bd0ef195607e4a745b0feea0730dd4fdd0e2f6830f72cf\",\n sort_order: 1,\n total_supply: 267890456781,\n hidden: true,\n },\n {\n name: \"TrumpWifCat\",\n symbol: \"TWC\",\n decimals: 18,\n l2_token_address:\n \"0x768aef7aea42030cb701e1a97984b8f91b8f306a34bd0d461c466012d720b4b\",\n sort_order: 1,\n total_supply: 78000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/9458c907-f15f-4d92-29a1-c54296d5e300/logo\",\n },\n {\n name: \"BULLTOBER\",\n symbol: \"BULLTOBER\",\n decimals: 18,\n l2_token_address:\n \"0xeb0eb2b60b38041c6ffc913e7f56974eb616bd2e244db99d296c3faedb1304\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"STARKi\",\n symbol: \"STARKi\",\n decimals: 18,\n l2_token_address:\n \"0x60c31afc25bbacaa607c6b420c5667011cb529beb89c4d2b1a0a545ffc2c54c\",\n sort_order: 1,\n total_supply: 123456789,\n hidden: true,\n },\n {\n name: \"Polaam Kasam\",\n symbol: \"PKM\",\n decimals: 18,\n l2_token_address:\n \"0x288e33230c9e169220a029e34e1495880b96bb5655450a7d25472c5e8a17d60\",\n sort_order: 1,\n total_supply: 622682297,\n hidden: true,\n },\n {\n name: \"Test 2\",\n symbol: \"TTTEST\",\n decimals: 18,\n l2_token_address:\n \"0x3a862d5d6fb8df1ee983840fd44007277c8c068d43563306c6d2a46493ee6d6\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"Escargot\",\n symbol: \"Escargot\",\n decimals: 18,\n l2_token_address:\n \"0x77779fbdcae5c2b4c321d336f2ccf80c2dd0ada63215901508f63e0b261df60\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"bra\",\n symbol: \"bra\",\n decimals: 18,\n l2_token_address:\n \"0x4461e6fe97d7f7c25c9a98feb2f1ef7f506334958d6a92857034e768fe8dfb\",\n sort_order: 1,\n total_supply: 134343423424,\n hidden: true,\n },\n {\n name: \"xiangjiao\",\n symbol: \"xjj\",\n decimals: 18,\n l2_token_address:\n \"0x5416712ee8c3cb4f501495fa932fb61ae0d658723fd0b4db933398d103a6375\",\n sort_order: 1,\n total_supply: 222222222222,\n hidden: true,\n },\n {\n name: \".oO\",\n symbol: \".oO\",\n decimals: 18,\n l2_token_address:\n \"0x6217cc4bdcc6487b6a6dff19a92f740c14694ec8429a224835dbb1d785032fc\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"ZANJI\",\n symbol: \"ZNJ\",\n decimals: 18,\n l2_token_address:\n \"0x5b9ae1b4bef0f8456cb101fdf6a283e3ff25f748c3f59aa68df1dc11f7b2e4c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"KERO\",\n symbol: \"KERO\",\n decimals: 18,\n l2_token_address:\n \"0x2eaf48d850f05be53c74e90ae9e8c35e76e961a5eec7e07b5cc8b52900db276\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Dogfood\",\n symbol: \"DGFD\",\n decimals: 18,\n l2_token_address:\n \"0xf1c28eea181dbce878a4029de09f493b8ea3b74ff8f58e0264fb835d159346\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"MageName\",\n symbol: \"MGNM\",\n decimals: 18,\n l2_token_address:\n \"0x5a459e01603c9872a848db2009d019109e91552d8378bdcdbd32cf4b489ac24\",\n sort_order: 1,\n total_supply: 500000000,\n hidden: true,\n },\n {\n name: \"Jy Bangladesh\",\n symbol: \"JBGAY\",\n decimals: 18,\n l2_token_address:\n \"0x65c94c7d0fd338dd90f66a23a034b547a98e21df6bb02cd6043ad97f0eb35bb\",\n sort_order: 1,\n total_supply: 66203412084295010,\n hidden: true,\n },\n {\n name: \"Spirit Stone\",\n symbol: \"SPIST\",\n decimals: 18,\n l2_token_address:\n \"0x6182278e63816ff4080ed07d668f991df6773fd13db0ea10971096033411b11\",\n sort_order: 1,\n total_supply: 3341150000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/dc78ea62-c15a-4d90-1464-c5077fca3e00/logo\",\n },\n {\n name: \"Poor\",\n symbol: \"POOR\",\n decimals: 18,\n l2_token_address:\n \"0x69823f8677ebcc3cc4eb14ff93ccadc4873ec83fbf6afa643ee813f929638bc\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"RatLife\",\n symbol: \"RAT\",\n decimals: 18,\n l2_token_address:\n \"0x2d8ac4be2e1b0456c813669ddec6bb890130bdab958d032635b8524c7842762\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Superman Amedi\",\n symbol: \"YMT\",\n decimals: 18,\n l2_token_address:\n \"0x1d2bd3ca536696760b17fdab42aeb04e8e481f5dd00bc5de21f96ccda0b723f\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Masuma Habiba\",\n symbol: \"MSM\",\n decimals: 18,\n l2_token_address:\n \"0x64c36febc60bb5b68155e7236517ea92e369374c8c084ac6a0bd84ff272afc6\",\n sort_order: 1,\n total_supply: 185989492656635,\n hidden: true,\n },\n {\n name: \"HAHA\",\n symbol: \"HAHA\",\n decimals: 18,\n l2_token_address:\n \"0x18fdd0a21f76332b4bb63d8d69ca1b2a2b7aa226e50c65867e9cc9ec5b5dbb4\",\n sort_order: 1,\n total_supply: 696969696969,\n hidden: true,\n },\n {\n name: \"Paris\",\n symbol: \"LuvR\",\n decimals: 18,\n l2_token_address:\n \"0x5c6cc8fdd226bbd505b5b1ea99ed00ce8bb8aea15dc752e59c7af0e0815a07d\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Klea Kodrat\",\n symbol: \"KKA\",\n decimals: 18,\n l2_token_address:\n \"0x21d0fdf1e4b9f70c59d7dc8b5546c28fd1840b556588f4ac5bbbaadcb8ab38\",\n sort_order: 1,\n total_supply: 999999999999999,\n hidden: true,\n },\n {\n name: \"GAME STOP\",\n symbol: \"GAMESTOP\",\n decimals: 18,\n l2_token_address:\n \"0x1a14666d319aa89138dfe25b815bc16c537e00b3b85eb670ec1c4dd753963df\",\n sort_order: 1,\n total_supply: 1234567890,\n hidden: true,\n },\n {\n name: \"zkLend Interest-Bearing ZEND\",\n symbol: \"zZEND\",\n decimals: 18,\n l2_token_address:\n \"0x2a28036ec5007c05c5611281a7d740c71a26d0305f7e9a4fa2f751d252a9f0d\",\n sort_order: 1,\n total_supply: 305445,\n hidden: true,\n },\n {\n name: \"TEST3\",\n symbol: \"TEST3\",\n decimals: 18,\n l2_token_address:\n \"0x6f977313b95b14c194193a5f979149122cc3d0882a155b73caef99edc83aa1b\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"BaraCUDA\",\n symbol: \"CUDA\",\n decimals: 18,\n l2_token_address:\n \"0x63db091bccda857a94a801a6bb36f79f541a4420447f5ba83e1a85ed25e83ec\",\n sort_order: 1,\n total_supply: 75000000000,\n hidden: true,\n },\n {\n name: \"QQ\",\n symbol: \"QQ\",\n decimals: 18,\n l2_token_address:\n \"0x3e1d5552ef8c4ed018b20f492d3d22c8397413c4e3b21d9a525e9e3d0be45ee\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"KENI\",\n symbol: \"KENI\",\n decimals: 18,\n l2_token_address:\n \"0xc6453f8473098a095922faa88699a70dcfc7ca7515f3c551c98aeeea171d54\",\n sort_order: 1,\n total_supply: 4206969696969697000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c47a23be-37a4-4479-5577-3ffdcfdfa300/logo\",\n },\n {\n name: \"Gloves\",\n symbol: \"GLOVES\",\n decimals: 18,\n l2_token_address:\n \"0x17787cbeb746a0a13a2d5fa9e4acbd72a9f724ffd0840a2ff7c0d429d9d5d38\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"s\",\n symbol: \"JOf\",\n decimals: 18,\n l2_token_address:\n \"0x5e0f09be11eef003691d147982a92e5b41186488bf1c902bee5728f835b106c\",\n sort_order: 1,\n total_supply: 111111111111,\n hidden: true,\n },\n {\n name: \"Empire\",\n symbol: \"EMPR\",\n decimals: 18,\n l2_token_address:\n \"0x18b75009c5471c3e942da6bc163af7647fc0c67566814a13d62db077b0b89f2\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Assump' is mom of F ups\",\n symbol: \"AMFU\",\n decimals: 18,\n l2_token_address:\n \"0x5dd7a2d7452c3d0f838ef219cb06c446279bcc6b2300357b7e0865b856e7e98\",\n sort_order: 1,\n total_supply: 666,\n hidden: true,\n },\n {\n name: \"SkippyCoin\",\n symbol: \"SKPY\",\n decimals: 18,\n l2_token_address:\n \"0x52e6b9e785ba04d63d4c82128bd37e6b8569403ccafd4ccbb0ce3503d3b1ca9\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"WAFFY\",\n symbol: \"WFY\",\n decimals: 18,\n l2_token_address:\n \"0x4ebc30d86b242eda5f6a834b61d6432cee475c047196736ef86505d5fccbfc8\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"JARVIS\",\n symbol: \"JAR\",\n decimals: 18,\n l2_token_address:\n \"0x130ad3f440b9110b256b4149595540805b2e583799f421e48a470d4146c4fa2\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Rektober\",\n symbol: \"REKT\",\n decimals: 18,\n l2_token_address:\n \"0x19c969c5e8a0d8d590ac2a1ce6274c4545fc3ba8f20e664e659fae1acf93d95\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Cibus\",\n symbol: \"Cbs\",\n decimals: 18,\n l2_token_address:\n \"0x1ca21e68c60bc63c9ec0726f1384d1bbe0e85d829f25e5bdd63825b5ab8c88a\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"Dencun\",\n symbol: \"DCN\",\n decimals: 18,\n l2_token_address:\n \"0xe311bc4877f1c1ed98ffd21da2d721154ce5cd2740f001f13a437395784f3c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ZENDYED\",\n symbol: \"ZDZ\",\n decimals: 18,\n l2_token_address:\n \"0x79f6e2bdbabd983a094a37176ebe071cfa654276e9889ad0698c2d473eaadae\",\n sort_order: 1,\n total_supply: 666666666666,\n hidden: true,\n },\n {\n name: \"Test au raisins\",\n symbol: \"TAR\",\n decimals: 18,\n l2_token_address:\n \"0x3921b9008871829928ac6f4974a9ece1d311e42b0cfa37fd8e2dc309ba013e4\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Tasnea\",\n symbol: \"TAA\",\n decimals: 18,\n l2_token_address:\n \"0x707d0e3bf5fb7273106704dbc07074df8e950a17603d58e73808d225e50c967\",\n sort_order: 1,\n total_supply: 2222111111,\n hidden: true,\n },\n {\n name: \"autonomousworlds\",\n symbol: \"AW\",\n decimals: 18,\n l2_token_address:\n \"0x15e84de2ff05e7c1bee396cf6b8c5744a525b1904b2d00e237380b9bed0c3a2\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Starknet Village\",\n symbol: \"Village\",\n decimals: 18,\n l2_token_address:\n \"0x44b195a7f7819bbd9f7d77708be33825c3e7894fa42945a388caeeb1213d241\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"carol ebeling\",\n symbol: \"CEG\",\n decimals: 18,\n l2_token_address:\n \"0x4b46f0d3899f8403eb16c7b5e304d7de817f00fbca84260455c117e0eda1020\",\n sort_order: 1,\n total_supply: 3321111112,\n hidden: true,\n },\n {\n name: \"SonicBoomTigerUppercut9000Inu\",\n symbol: \"STARKNET\",\n decimals: 18,\n l2_token_address:\n \"0x783f872e2cfe24b50b2c46f4f3a28bb7135696760953315fc372d1b2eb885a1\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ChatGPTCoin\",\n symbol: \"GPT\",\n decimals: 18,\n l2_token_address:\n \"0x14cbafac1b8cdc0ddaef182012bc71eef78247f22f726efe763cd2b8b788b1d\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Test au lait\",\n symbol: \"TAL\",\n decimals: 18,\n l2_token_address:\n \"0x21c83bfb451c6acf058a872a924f71139dfd3d25af0979528af3810019c8452\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"ArtPeaceCoin\",\n symbol: \"APC\",\n decimals: 18,\n l2_token_address:\n \"0x2e1a92e32f81a47cbb3f252135f1bb8e7c73159cd94d3e1c00318b15d6b4935\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Hicuc\",\n symbol: \"HCC\",\n decimals: 18,\n l2_token_address:\n \"0x633890b0c91ae8838d95e042e81705b258d813f2ff98d45750a29c9ae57bbe8\",\n sort_order: 1,\n total_supply: 98217455682,\n hidden: true,\n },\n {\n name: \"Cool Meme\",\n symbol: \"CMT\",\n decimals: 18,\n l2_token_address:\n \"0x48b961eb771f7dbbc7479ad72e2b05648c1abf37a0724a6cca5fce14dc933c4\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"STRONK\",\n symbol: \"STRONK\",\n decimals: 18,\n l2_token_address:\n \"0x2b2ba5da3a25d7e0d45487649a9c4535f29711b57b9054099737e7c9f7dc10a\",\n sort_order: 1,\n total_supply: 1690120636399962,\n hidden: true,\n },\n {\n name: \"Akamaru\",\n symbol: \"AKU\",\n decimals: 18,\n l2_token_address:\n \"0x137dfca7d96cdd526d13a63176454f35c691f55837497448fad352643cfe4d4\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/3a9e7657-41fa-41b4-bb5c-6cb9ce092a00/logo\",\n },\n {\n name: \"Blye\",\n symbol: \"BLU\",\n decimals: 18,\n l2_token_address:\n \"0x28ff87b5ff61780af76a5f8a1ae0abddbdc4fa79d5a7eb1f754ae1069275daa\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"defispring\",\n symbol: \"DEFI\",\n decimals: 18,\n l2_token_address:\n \"0xab741710120ddc7e2553dc528a30b4d9e59c0b6e728a6be39212449d633411\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Unruggable5\",\n symbol: \"MEME5\",\n decimals: 18,\n l2_token_address:\n \"0x4b215d8d0d444657ac93a446b5d6b38c98d69a994a65579624b0449fa89c41b\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Mahakala\",\n symbol: \"MHKL\",\n decimals: 18,\n l2_token_address:\n \"0x511c07f3a99ca1d6c6055c2a9beeaceebd4b2d6914659080077678e2d53d63\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"PUTEEN\",\n symbol: \"PUT\",\n decimals: 18,\n l2_token_address:\n \"0x3181975c218f3f511c208bb210f79eafc7eb42371d273c95c4f6599210e0625\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"test en vif\",\n symbol: \"TEV\",\n decimals: 18,\n l2_token_address:\n \"0x3c8ca7fe3835b9ccab47ad7fde8a087a12360be5ef839b04522c9db9357fce4\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"CAIRO\",\n symbol: \"CAIRO\",\n decimals: 18,\n l2_token_address:\n \"0x1c5f64a91da5426e7b84e2fbb4ab724781c71cf8312a87d57f2c07c2f0ea021\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"4thepixels\",\n symbol: \"pixel\",\n decimals: 18,\n l2_token_address:\n \"0x52cc6f4c32665aa7071cef8dc198b1d1d796549e0ad2ca28e63cddc814f195e\",\n sort_order: 1,\n total_supply: 100,\n hidden: true,\n },\n {\n name: \"TEST\",\n symbol: \"TESTT\",\n decimals: 18,\n l2_token_address:\n \"0x480674213c15a2c65d52d37390f2c3c26e1c94395f984ba532d28eca8dac3ed\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Elecoin\",\n symbol: \"ELE\",\n decimals: 18,\n l2_token_address:\n \"0x51b6c50edbcb046c7177d17930b16a699182297eeb8be26b4ef17f8106def39\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"people\",\n symbol: \"people\",\n decimals: 18,\n l2_token_address:\n \"0x536bf4c9616a8c7102ff7bdd73d26c15893b6ef78ebcafffd2dc353943422a9\",\n sort_order: 1,\n total_supply: 100000000000000000,\n hidden: true,\n },\n {\n name: \"Mithila Mim\",\n symbol: \"MMM\",\n decimals: 18,\n l2_token_address:\n \"0x7ab663c1bd42f6920e7184d061706339a1a96019a76e11d804caa14669edc62\",\n sort_order: 1,\n total_supply: 7777777777,\n hidden: true,\n },\n {\n name: \"Money Printer Go Brrr\",\n symbol: \"$BRRR\",\n decimals: 18,\n l2_token_address:\n \"0x67737cbee9be3e3042ca86ef41598af7cc36fa6e109193c165b854de07d1df7\",\n sort_order: 1,\n total_supply: 426900000000,\n hidden: true,\n },\n {\n name: \"pompom\",\n symbol: \"POM\",\n decimals: 18,\n l2_token_address:\n \"0x7403c26f5d5072ef89f31e3c942a9a8de50bb11a704af0d7ddb41d88960e96a\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Feet Enjoyer\",\n symbol: \"FEET\",\n decimals: 18,\n l2_token_address:\n \"0x6e409732749fd6e621039675e3126e66dd2552bc62103e229d75b6d9efca5e7\",\n sort_order: 1,\n total_supply: 15000000,\n hidden: true,\n },\n {\n name: \"WOLF\",\n symbol: \"WOLF\",\n decimals: 18,\n l2_token_address:\n \"0x6906a5273e81b470c3c1b9e4792c32136a210600d5b3a477bf5596cd1c09c30\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"LOL\",\n symbol: \"LOL\",\n decimals: 18,\n l2_token_address:\n \"0x7906ea3706a4a29197ccb8bec1ad593f46eeb5dd86560804b82b342d2001998\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"BONZO\",\n symbol: \"BNZ\",\n decimals: 18,\n l2_token_address:\n \"0x1336ad09b46d1cbf3a63c2115428f9812cb06642bdecca0d2c6c938be29d1c2\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"YOLO\",\n symbol: \"YOLO\",\n decimals: 18,\n l2_token_address:\n \"0x62b5b2de4624a3633182ea9b9f1a3acf7116554316e9e671789db9e8280bf71\",\n sort_order: 1,\n total_supply: 999999999,\n hidden: true,\n },\n {\n name: \"Teeny the Dog on Starknet\",\n symbol: \"TEENY\",\n decimals: 18,\n l2_token_address:\n \"0x47d356c975b1bce1320a25045470c5ad603d48289132f73e923b54d055b98ca\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Jon Daslor\",\n symbol: \"JDR\",\n decimals: 18,\n l2_token_address:\n \"0x2f724caf173f48897018579562924d2ce1f2f15ddf49f5595020155f0be5142\",\n sort_order: 1,\n total_supply: 70244863952,\n hidden: true,\n },\n {\n name: \"Rim Tim Tagi Dim\",\n symbol: \"RTTD\",\n decimals: 18,\n l2_token_address:\n \"0x4593e1e96dea0502827ee66a7611221ad7da3b1eee65bc06efa1007675db442\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"CorinaHayner l\",\n symbol: \"LLL\",\n decimals: 18,\n l2_token_address:\n \"0xcc19a3a0c49b7f9c81fd118c175f92f2fc39a13ce4fc8cd9664c711187768c\",\n sort_order: 1,\n total_supply: 455389545198,\n hidden: true,\n },\n {\n name: \"BU gaga\",\n symbol: \"BGG\",\n decimals: 18,\n l2_token_address:\n \"0x7de796f47e37cfdeecbbdfa3e73c36bff701e0f155b11bfafc80c8e0e198284\",\n sort_order: 1,\n total_supply: 83374683208,\n hidden: true,\n },\n {\n name: \"Froggy coin\",\n symbol: \"FROGGY\",\n decimals: 18,\n l2_token_address:\n \"0x7cd909e49d89a39410ce92ecc74a866c4ec57e2d59d1b98a93e02d9293807c4\",\n sort_order: 1,\n total_supply: 30000000000,\n hidden: true,\n },\n {\n name: \"Lonely user\",\n symbol: \"USRS\",\n decimals: 18,\n l2_token_address:\n \"0x40cb300a7e5f7dc37aceee3fd58fc4b7db7816a85ff79e0c2e1c4a8095b3da\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Starknet Bunny\",\n symbol: \"BUNNY\",\n decimals: 18,\n l2_token_address:\n \"0x21a9fbe8bc117c608f36a95573948002cad3dc5017355c54803f7278ad445e8\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Pxls Papyrus\",\n symbol: \"DRAW\",\n decimals: 18,\n l2_token_address:\n \"0x72c1ed39bffe5b1585a24b73190b1de195ae3f3decbf5470d93e06bbb816017\",\n sort_order: 1,\n total_supply: 400000000000,\n hidden: true,\n },\n {\n name: \"Random stupid name\",\n symbol: \"RSN\",\n decimals: 18,\n l2_token_address:\n \"0x263a5bf0686b730a4cbfd009f4d0a9c016c06ae936068dbd8bdd7ee528f2e89\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"Sekandl\",\n symbol: \"SKD\",\n decimals: 18,\n l2_token_address:\n \"0x484e1cfd772e892c616433c6ebceed7e06e283c94e70a588ddadf33cd05364f\",\n sort_order: 1,\n total_supply: 675464771,\n hidden: true,\n },\n {\n name: \"Pain au lait\",\n symbol: \"PAL\",\n decimals: 18,\n l2_token_address:\n \"0x49201f03a0f0a9e70e28dcd74cbf44931174dbe3cc4b2ff488898339959e559\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/480c644e-de70-44ea-6c07-bc370512dd00/logo\",\n },\n {\n name: \"Talstark\",\n symbol: \"talstark\",\n decimals: 18,\n l2_token_address:\n \"0x290e06c5b4ee30491c246b15e0169afceda36fb8d19789922f7cbf738379455\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"Starkned\",\n symbol: \"STARKNED\",\n decimals: 18,\n l2_token_address:\n \"0x523fae386f3319957bbf94f66e981b58c5cb6fcdc9d1750ecb97d11c5081dfb\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/db38871d-88e5-48f7-2c38-4253dea03800/logo\",\n },\n {\n name: \"Kasam Kauxmnk\",\n symbol: \"KKK\",\n decimals: 18,\n l2_token_address:\n \"0x1049137d5691ce8de1119e5eaef8035c93ccf1f1d65dfb5ff410d548dae86bb\",\n sort_order: 1,\n total_supply: 75872149604305810000,\n hidden: true,\n },\n {\n name: \"Bullish\",\n symbol: \"BULLISH\",\n decimals: 18,\n l2_token_address:\n \"0x3f68f890cec8e77dc0d34e7e69ae86301cf9b0e11db232690005e2a93d052c3\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"STARK CAT\",\n symbol: \"CATS\",\n decimals: 18,\n l2_token_address:\n \"0x2ba82d441a2804e3963eb05cdb81337d1b0086fec16dd751e41a175e7d6652c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Operation Cat\",\n symbol: \"OPCAT\",\n decimals: 18,\n l2_token_address:\n \"0x793ac946d0bdd79d47af5ecf50c528bf53c642d3912a6baf433b5cc09ec6171\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Japanese Tosa Inu\",\n symbol: \"TOSA\",\n decimals: 18,\n l2_token_address:\n \"0x1d2b5fe0be222026165a12e5b81a77b395c10a4a54af482d0430cb24c0a3163\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"Donkey\",\n symbol: \"DONKEY\",\n decimals: 18,\n l2_token_address:\n \"0x3db6034c76bf1898ebac71a00651f7243d7c147578f157ad96717add61edaf9\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"Chucky\",\n symbol: \"CHKY\",\n decimals: 18,\n l2_token_address:\n \"0x2884aa94c04939430e192181b0878250db66c6798f5d435476d2394e95303e4\",\n sort_order: 1,\n total_supply: 21000000000,\n hidden: true,\n },\n {\n name: \"Man Hicutt\",\n symbol: \"MTT\",\n decimals: 18,\n l2_token_address:\n \"0x1bb46490ef56add1fb17c9c5a5fe8e407fbf839ff42eb4a1f269b1afea2418\",\n sort_order: 1,\n total_supply: 99555555,\n hidden: true,\n },\n {\n name: \"UnruggableMEME\",\n symbol: \"UMEME\",\n decimals: 18,\n l2_token_address:\n \"0x2128ae664f0e86d37d8a099c0433bde8110fd33cacbad2d3afc88ee86d776e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"HEIGOUGE\",\n symbol: \"HGG\",\n decimals: 18,\n l2_token_address:\n \"0x63abca8b87278cf0315ac0dcc3ca44e3c6788b9790d9f923b536b04352ecf69\",\n sort_order: 1,\n total_supply: 1111111111111,\n hidden: true,\n },\n {\n name: \"Subiha Has\",\n symbol: \"SBH\",\n decimals: 18,\n l2_token_address:\n \"0x26a987da9e4263d49839db5a6ee098f76b48e1c334c29e1108da56fad43e455\",\n sort_order: 1,\n total_supply: 2539331060,\n hidden: true,\n },\n {\n name: \"TEST\",\n symbol: \"TEST\",\n decimals: 18,\n l2_token_address:\n \"0x38481266e8f5f86e3d073e50f8a7267a65a3e02bdbaf656936c7587c933dd44\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Krts\",\n symbol: \"KRTS\",\n decimals: 18,\n l2_token_address:\n \"0x39f4c929e4b92a901db8b99f137dc11e49a095b4fef60e1c21b1609db4b158e\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"LMFAO\",\n symbol: \"LMFAO\",\n decimals: 18,\n l2_token_address:\n \"0x51b0704740af57987ea0852ebb4e743ceee0fb93b4b78bdfaa0749cce729e\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"STD\",\n symbol: \"STD\",\n decimals: 18,\n l2_token_address:\n \"0x3f1ffb9ee93ba788be4acae4dbfe1618c1bd917e7c05aea2763ff3e01ce2960\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"CumCoin\",\n symbol: \"CUM\",\n decimals: 18,\n l2_token_address:\n \"0x89f2401c598f69e67971373fd74d09900a33c2b592aca665c4dcc6dee5da39\",\n sort_order: 1,\n total_supply: 69,\n hidden: true,\n },\n {\n name: \"DEMEME\",\n symbol: \"DEM\",\n decimals: 18,\n l2_token_address:\n \"0xd3592ed95b75c63b7d9e7def05432096e1a0ee169d88c448a5a6e663ed78d0\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"Baby Donkey\",\n symbol: \"BDONKEY\",\n decimals: 18,\n l2_token_address:\n \"0x5094b5715bc7556d5ce63f2c5d5721d8ad61e9f6038b6a56272c41cb77d2255\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SOOOON\",\n symbol: \"LTIME\",\n decimals: 18,\n l2_token_address:\n \"0x421deb2c7dbb27f0fd93297b190816070023706c1f8ddc6cafa0ecb040d8ab5\",\n sort_order: 1,\n total_supply: 430882874,\n hidden: true,\n },\n {\n name: \"Roaring Kitty\",\n symbol: \"KITTY\",\n decimals: 18,\n l2_token_address:\n \"0x8ea9d8cc0a3eef2cabc401021f344e339ff59f922d3e9ba078dec07c19f846\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Don't Bully My Breed\",\n symbol: \"BULLY\",\n decimals: 18,\n l2_token_address:\n \"0x3253d71bcbd6959bfe3c36017bc30bd0ca5c2b8914ed0d128eab2e9de2cee42\",\n sort_order: 1,\n total_supply: 31122023,\n hidden: true,\n },\n {\n name: \"COPAlink\",\n symbol: \"CLINK\",\n decimals: 18,\n l2_token_address:\n \"0x615d69d72b596aabb24efb19ba3adcb3b1dc5c80b913a3abbb422006caf5a5e\",\n sort_order: 1,\n total_supply: 6855222222,\n hidden: true,\n },\n {\n name: \"Blob\",\n symbol: \"Blob\",\n decimals: 18,\n l2_token_address:\n \"0x5c8b33bb7a95edd35dc5214771bc542eee39895d83e04231f1d52270ac1798e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Unruggable2\",\n symbol: \"MEME2\",\n decimals: 18,\n l2_token_address:\n \"0x3c067916ac3c273dda6af7b0f2b861d9df7292cbeef1dc5df4a5a81e51df5fa\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"LANNISTER\",\n symbol: \"LAN\",\n decimals: 18,\n l2_token_address:\n \"0x694dabaced5685f17b65ee1ac9d24849e1a25702e6706ef8691d4e9cd478cd3\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"CHOCOLATE\",\n symbol: \"CHOCO\",\n decimals: 18,\n l2_token_address:\n \"0x462d03e562198b651765adba81f1a0ff27eff2d6c274f59aa1273f3b6373a98\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Starky Shark\",\n symbol: \"shrk\",\n decimals: 18,\n l2_token_address:\n \"0x56c2e5dca6d2f70b0b24493efda75f3d99059efcb14dcb2194e7055739823a6\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"SBF coin\",\n symbol: \"SBF\",\n decimals: 18,\n l2_token_address:\n \"0x134cab6affabfd0bac082179adaeee9a7b5c7c385746502ccd5aad1450c0bb9\",\n sort_order: 1,\n total_supply: 9001,\n hidden: true,\n },\n {\n name: \"AVNimni\",\n symbol: \"AVNimni\",\n decimals: 18,\n l2_token_address:\n \"0x56a902659567004e0d20d47ef8bd9ab51f8dcbf233089350355d34f8aaac67e\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"Weed\",\n symbol: \"WEED\",\n decimals: 18,\n l2_token_address:\n \"0x5c39376ceafe96423792e928426b7df2db7e2d2bf6217cc1ad33e0737c01ed3\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"ZeroLend\",\n symbol: \"ZEN\",\n decimals: 18,\n l2_token_address:\n \"0x1cc634159f30a5cc590c12869d0ad3d4e0f5992626a106113b08948ed45a28a\",\n sort_order: 1,\n total_supply: 2774483165,\n hidden: true,\n },\n {\n name: \"FLOKI\",\n symbol: \"FLOKI\",\n decimals: 18,\n l2_token_address:\n \"0x67ad287d8158f5a1117ed389f742c6eaae34e9d364dc323766ce80122e39e14\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"Ruggable\",\n symbol: \"RT\",\n decimals: 18,\n l2_token_address:\n \"0x7836e92b4dc27baeecb9ec36c3e995be866bbfa714da18fd020d4e4a59249b2\",\n sort_order: 1,\n total_supply: 1000,\n hidden: true,\n },\n {\n name: \"GOMU GOMU NO MI\",\n symbol: \"GOM\",\n decimals: 18,\n l2_token_address:\n \"0x69e5d8f696a5b6d13c7378687c5ccebeb66f4a9e600f16c724ad05c030f31e3\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"Monopoly Money\",\n symbol: \"MNP\",\n decimals: 18,\n l2_token_address:\n \"0x32d999e8dae0b38dfa15bcf9c2887933321643f7d6843c2b0d319422195a417\",\n sort_order: 1,\n total_supply: 20580,\n hidden: true,\n },\n {\n name: \"Grails ERC404\",\n symbol: \"GRAILS\",\n decimals: 18,\n l2_token_address:\n \"0x2a819b93cc69b45ee5d1a1bfc16954c16f6d35c3873a06c97b95c009bfe502b\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/da59396d-943f-4525-6ed2-43eceb692f00/logo\",\n },\n {\n name: \"StarkPepe\",\n symbol: \"SPEPE\",\n decimals: 18,\n l2_token_address:\n \"0x1e0eee22c684fdf32babdd65e6bcca62a8ce2c23c8d5e68f3989595d26e1b4a\",\n sort_order: 1,\n total_supply: 41999999999,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/0df4c5ec-66cf-4067-cc92-5a679630f800/logo\",\n },\n {\n name: \"JEET\",\n symbol: \"JEET\",\n decimals: 18,\n l2_token_address:\n \"0x7003b7e0a1bffd81d602bf10cd7ca2a9ed8bb5b0837110f9a70b8fc5f181ccf\",\n sort_order: 1,\n total_supply: 4200000000,\n hidden: true,\n },\n {\n name: \"STONK\",\n symbol: \"STONK\",\n decimals: 18,\n l2_token_address:\n \"0x4da6fb0db214c815d5937a71c8c962a5369e3b243d8f80211bd5ffe76a75ff6\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Ninja\",\n symbol: \"NJA\",\n decimals: 18,\n l2_token_address:\n \"0x1247685634c2db5c0a3ebfc0152200af8f5987a49fe2b28a18cd95e23afe88c\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Riya Moni Akter\",\n symbol: \"RMA\",\n decimals: 18,\n l2_token_address:\n \"0x161857ba865b5f9b9f049f7aba0e63160132fba499d38dc693bf7c8fa98b035\",\n sort_order: 1,\n total_supply: 62684740458,\n hidden: true,\n },\n {\n name: \"KAMALA\",\n symbol: \"KAMALA\",\n decimals: 18,\n l2_token_address:\n \"0x58a00a3253fce72d661fb9d08ab587c783250d0cea78333699a1ba026809fdf\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"FastAndFurious\",\n symbol: \"FAP\",\n decimals: 18,\n l2_token_address:\n \"0x2b797b77a7ba426e73720dcf00101b07de913277ea41c407cdd14e7ca51b78c\",\n sort_order: 1,\n total_supply: 696969696969,\n hidden: true,\n },\n {\n name: \"wow\",\n symbol: \"%7\",\n decimals: 18,\n l2_token_address:\n \"0x4af9d52064027fd8caf3a4a91e710becfe723abe1d7b10e087640a7f5cfe0a2\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"AAPKF\",\n symbol: \"XDGEE\",\n decimals: 18,\n l2_token_address:\n \"0x7cde5e662b122773d49f383362ff8fccb365480375982577258774fbc3ca67b\",\n sort_order: 1,\n total_supply: 7777777777777,\n hidden: true,\n },\n {\n name: \"shrryna\",\n symbol: \"szy\",\n decimals: 18,\n l2_token_address:\n \"0x5ac89ca2fff78735f8fc5d7128109d5f4e981716e8b39589766c87f0bebdca0\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Meme from TG Bot\",\n symbol: \"TGBot\",\n decimals: 18,\n l2_token_address:\n \"0xb44ca0a070565dc42dd555f6be3c6404b2e9f0a18ba5a166bba5d1cf5659a\",\n sort_order: 1,\n total_supply: 10000,\n hidden: true,\n },\n {\n name: \"Yohoo\",\n symbol: \"YOO\",\n decimals: 18,\n l2_token_address:\n \"0x4ea9e7f239ed3fe08441325501e8bc5e70daf45a6d42cb459bffc8ab237f906\",\n sort_order: 1,\n total_supply: 381826511905568,\n hidden: true,\n },\n {\n name: \"Bahhhhhhhh\",\n symbol: \"SHEEP\",\n decimals: 18,\n l2_token_address:\n \"0x77204ab303a20a08ed0c6d9dd86b6fce47949055e80cb06c87f84bbc702c435\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Jesthis\",\n symbol: \"JEST\",\n decimals: 18,\n l2_token_address:\n \"0x73e7f70052de305bf7a36ac4931ea0232656087b0fadab5252b6ecf31fc622e\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Jarvis\",\n symbol: \"JARVIS\",\n decimals: 18,\n l2_token_address:\n \"0x383273eb0897414b0e4f87cb322ac4fe0d86fb77a108af28e1d1dcfecb10ce9\",\n sort_order: 1,\n total_supply: 42000000000,\n hidden: true,\n },\n {\n name: \"NeverChain\",\n symbol: \"NeCa\",\n decimals: 18,\n l2_token_address:\n \"0x2f6f268c1c26d8bed325cffed479c0522174074562eefa9adc44db6081bbb09\",\n sort_order: 1,\n total_supply: 100,\n hidden: true,\n },\n {\n name: \"Make Starknet Great Again\",\n symbol: \"MSGA\",\n decimals: 18,\n l2_token_address:\n \"0xe234451e15427f8fdf966588e04087cbda5b04caf53d807889d46854dd036\",\n sort_order: 1,\n total_supply: 137,\n hidden: true,\n },\n {\n name: \"ROZ\",\n symbol: \"ROZ\",\n decimals: 18,\n l2_token_address:\n \"0x788929eb80e2209a5fe5f06c02cb8d3e3f19ca7b13fc2337663eecd060f2831\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"WOLF\",\n symbol: \"WLF\",\n decimals: 18,\n l2_token_address:\n \"0x5a3f62edb1a09555859b85f70b46afc8694ad2e0da4feb0a6cf18f71870196\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Baby Slinky\",\n symbol: \"BSLINK\",\n decimals: 18,\n l2_token_address:\n \"0x450092907f11b0a5d366213c4130f810eef6006ce18a982cfd849a1be74f739\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"BATPEPE\",\n symbol: \"BATPEPE\",\n decimals: 18,\n l2_token_address:\n \"0x285fead30d25e4f74cff307ca1caa8c5eb6af0730b12842e3910b13e32ba8f3\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"pepe\",\n symbol: \"pep\",\n decimals: 18,\n l2_token_address:\n \"0x567608eb3eca8a692619a9e402447c955479d003cc8cef18b27041813e69435\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"MAYONNAISE\",\n symbol: \"MAYO\",\n decimals: 18,\n l2_token_address:\n \"0x542fa3910dbf009b1c6178357f4c62f92307d15aeff5cd82168cb293604fea8\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"pip install Starknet_py\",\n symbol: \"PIP\",\n decimals: 18,\n l2_token_address:\n \"0x43562d74d9432a0d01c0e38076be3eec0db0fa0db13fafeea676995fc74501f\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"ligma ballz\",\n symbol: \"ligma\",\n decimals: 18,\n l2_token_address:\n \"0x78a255990afa97068d64330bb97a682f6adc97031ae5d3544f95683318ab39a\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Truth Terminal On Stark\",\n symbol: \"Truth\",\n decimals: 18,\n l2_token_address:\n \"0x278a5d28996c3f084f8fd47b72188cf818a1ea3c50425fc4de15124d9c0fcad\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Memes AI\",\n symbol: \"MemesAI\",\n decimals: 18,\n l2_token_address:\n \"0x10a9c629b2444267bfd69fb8b042dd3b5dfb16714337775689dcc07b268062e\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Project69\",\n symbol: \"Project69\",\n decimals: 18,\n l2_token_address:\n \"0x3b61d1f6f95e5c3db013a9e01d2d7f5466806045fcd71530e531850ec5b866c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"fdfgd\",\n symbol: \"dffg\",\n decimals: 18,\n l2_token_address:\n \"0x684ae7052e64157bfe082d99a41bed487c4e778c26147b5e954ecaa8f618e2d\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Act I : The AI Prophecy\",\n symbol: \"ACT\",\n decimals: 18,\n l2_token_address:\n \"0x73e803a1617a738941a1748de2dd3f4ec2c211687e30399c0e8dcb576bcdb87\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Aiwithdaddyissues\",\n symbol: \"SHEGEN\",\n decimals: 18,\n l2_token_address:\n \"0x5f574e59902348f644d5f2ba68ff6cf4941ff027b7a9b0da7e9d8335a487dfd\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"TACO\",\n symbol: \"TACO\",\n decimals: 18,\n l2_token_address:\n \"0x6b9fa1b769794393c7b8387592471b23958c318f5dd7462e233fb7f004439b2\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BOOK OF APES\",\n symbol: \"BAPES\",\n decimals: 18,\n l2_token_address:\n \"0x7575788a0464c4ac0c7255ef8d83e3365ddc83ecea82d06674e62fd34d11804\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"flippyflop\",\n symbol: \"FLIPPY\",\n decimals: 18,\n l2_token_address:\n \"0x6fa03681cc8851a4493fac65f75fa988c4bb9a7b20cec81d2b393b1ab8039e6\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ekbt\",\n symbol: \"ekbs\",\n decimals: 18,\n l2_token_address:\n \"0x2c3263958b6c91a1a06e678ae8816c66badd87a3b67e19d8b0b3d6abb440421\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"DUMMY TEST\",\n symbol: \"DUMMY\",\n decimals: 18,\n l2_token_address:\n \"0x158c1f2d4e3b9c56ca512a9bebf34fc92b6098ca88fc93d29b1d52a5750322\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"TESTING\",\n symbol: \"TESTING\",\n decimals: 18,\n l2_token_address:\n \"0xb1a738afab71dc957c4b9728c134e374cd17c1a156a88964f38dcccba7f961\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"IS THIS WORKING?\",\n symbol: \"ITW\",\n decimals: 18,\n l2_token_address:\n \"0x55aa5be4788105b8d53770bebe099bd0f27114bd3cec68ab5e3a2082c575f96\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Leo\",\n symbol: \"Leo\",\n decimals: 18,\n l2_token_address:\n \"0x191b244f129e62370cf16c8bf33d05029f2c1ee653261c3bc98bb937df652f4\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ELONG\",\n symbol: \"ELONG\",\n decimals: 18,\n l2_token_address:\n \"0x364459e29cb0b7ac5e55b0321d89110c346cda5a3a6beabf5a9f21e32330dc6\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"MUSK\",\n symbol: \"MUSK\",\n decimals: 18,\n l2_token_address:\n \"0x1c231e25e7a97d1d942aaf1dedfa0c9de208508e9eebbc0edd4c09daeac1b5c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ECatStark\",\n symbol: \"CAT\",\n decimals: 18,\n l2_token_address:\n \"0x3bc357d45a1fc19bb517b3032c932ad975e4cdb2c047eea25b474354725ff50\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"StarkMoon\",\n symbol: \"StarkMoon\",\n decimals: 18,\n l2_token_address:\n \"0x5e2fc8e13ded3d080e70ed21495c11689aa2b401d85b4c82e7dff196abdb0e7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"PACO\",\n symbol: \"PACO\",\n decimals: 18,\n l2_token_address:\n \"0x599a83c8b885157a0526a22ba3924a25f42d1880f1e0900c786371bf33d04dd\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"SKWOLF\",\n symbol: \"SKWOF\",\n decimals: 18,\n l2_token_address:\n \"0x5d91dc546550c65a96b6ccc1f5dea9b304e588b2725a66beababf333e823e52\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"test\",\n symbol: \"ttttt\",\n decimals: 18,\n l2_token_address:\n \"0x741b7bd82c63705e6a6f22bb49a1ff9926c30af24e9f97983a294eff8be3bf1\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"STARKNET BROTHER\",\n symbol: \"BROTHER\",\n decimals: 18,\n l2_token_address:\n \"0x3b405a98c9e795d427fe82cdeeeed803f221b52471e3a757574a2b4180793ee\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/282efd02-eecd-467c-545a-c53a895eff00/logo\",\n },\n {\n name: \"Starknet Sister\",\n symbol: \"SISTER\",\n decimals: 18,\n l2_token_address:\n \"0x4c96dff94fb68c0c44810f0ab7190edd01f5c2c61110b4f5c8684bd172bbe6f\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Starknet > Solanan\",\n symbol: \"STARK>SOL\",\n decimals: 18,\n l2_token_address:\n \"0x6d4f1fe51a5a10875b13c80e915781569b43058324202718052ac2ad3df88ac\",\n sort_order: 1,\n total_supply: 330000,\n hidden: true,\n },\n {\n name: \"The Peak of Starknet\",\n symbol: \"TPS857\",\n decimals: 18,\n l2_token_address:\n \"0x19f3cc6d57399c8845666db5f373aff5ee83e127e7820ae7c122aa87838bcdb\",\n sort_order: 1,\n total_supply: 857857857857857,\n hidden: true,\n },\n {\n name: \"SISTER\",\n symbol: \"SSTR\",\n decimals: 18,\n l2_token_address:\n \"0x102d5e124c51b936ee87302e0f938165aec96fb6c2027ae7f3a5ed46c77573b\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/83900dfc-207d-447a-c003-a304fa249000/logo\",\n },\n {\n name: \"Starknet Wolves\",\n symbol: \"WOLVES\",\n decimals: 18,\n l2_token_address:\n \"0x192e0f538049ea7280931e15c1ccf565ef87dd247fee76980e7c89f4002bece\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"STARKNET FATHER\",\n symbol: \"FATHER\",\n decimals: 18,\n l2_token_address:\n \"0x44d0842c479da95c81cb762b0bb8866cc7a8027902d5480ba840653f88424da\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"Mother\",\n symbol: \"MTHR\",\n decimals: 18,\n l2_token_address:\n \"0x38952841eddb0fcf66abeabf4127c442e62e20e42ee860f423395884aa58912\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"UNCLE\",\n symbol: \"UNCLE\",\n decimals: 18,\n l2_token_address:\n \"0x53374f1ca7e820735d48376d36cfaaabf713134fa6f123fb5c1ed84e4987a10\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"DAUGHTER\",\n symbol: \"DGHTR\",\n decimals: 18,\n l2_token_address:\n \"0x3d4427b3b9de163cf011b57affc9ddfc44d4889b862a131eed45168566fd819\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SABAN SON OF SABAN\",\n symbol: \"SSOS\",\n decimals: 18,\n l2_token_address:\n \"0x2830336f5086075be054e61e50b2b410d940ed404f80c9237366bc2365a3c5b\",\n sort_order: 1,\n total_supply: 69696969696,\n hidden: true,\n },\n {\n name: \"MAIA\",\n symbol: \"MAIA\",\n decimals: 18,\n l2_token_address:\n \"0x50226e1be395d070dca16de2ae366bd69aee4d68a2ec399c425af2b38c50752\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"stepsisters\",\n symbol: \"ssstr\",\n decimals: 18,\n l2_token_address:\n \"0xe60fe8f137a48760c8e6c31f2509f9ee95fe8106b56902a46ea850ccc5ea91\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"AKKAAKKA\",\n symbol: \"AKA\",\n decimals: 18,\n l2_token_address:\n \"0x6ba5c85b2db709cb77a0936720daed116499c447ae551baed2cd8d7fd1d860f\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"COSMO\",\n symbol: \"COSMO\",\n decimals: 18,\n l2_token_address:\n \"0x7a4cd0a39cd2b907492a217029abfff381bc0811d9a62db437c505f4d079ef3\",\n sort_order: 1,\n total_supply: 69000000000,\n hidden: true,\n },\n {\n name: \"Baby Brother\",\n symbol: \"BABYBRO\",\n decimals: 18,\n l2_token_address:\n \"0x36e9c455310f5a84695baadedfe4e71722544ae9cb65228267efc261071a837\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"STARKNET SOLDIER\",\n symbol: \"SOLDIER\",\n decimals: 18,\n l2_token_address:\n \"0x7ad5d7176d7f30ddd34507b487c7213afcd3713089c2407a2c5dccdbfc2eac7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"STARKNET STEPBRO\",\n symbol: \"STEPBRO\",\n decimals: 18,\n l2_token_address:\n \"0x708c0375dc93e3a0612d7693b03e7967cef42ab84ef2353cff1e2e823c3f2a1\",\n sort_order: 1,\n total_supply: 69420000000000,\n hidden: true,\n },\n {\n name: \"STARKNET MOTHER\",\n symbol: \"MOTHER\",\n decimals: 18,\n l2_token_address:\n \"0x20ab647d3893009ac333a4b80c6b5f0a7cc713e38df0b2494fd8028eb75e558\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"tnt\",\n symbol: \"tnt\",\n decimals: 18,\n l2_token_address:\n \"0x3d47624c7d102929a4cd655085363ab4b634063ae9644a19a31348c2fe6948e\",\n sort_order: 1,\n total_supply: 99999999999,\n hidden: true,\n },\n {\n name: \"blobert\",\n symbol: \"BLOBERT\",\n decimals: 18,\n l2_token_address:\n \"0x642febacfaf539bc691779959b9341458f789c4b209af3ba00a0862c0186f44\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"DEGENZ\",\n symbol: \"DEG\",\n decimals: 18,\n l2_token_address:\n \"0x4aac09c8f9c395b31979129408656d3d8dcc1f3daa174b5a63a0afd419a6bb0\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"STAYLUS\",\n symbol: \"STYL\",\n decimals: 18,\n l2_token_address:\n \"0x8b0f7d90819ccfbf3235dcc1b7bf60972c7ca04ddfd84a1b7a8bf4d5495606\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"CASINO\",\n symbol: \"CASINO\",\n decimals: 18,\n l2_token_address:\n \"0x10c6f6c6f960242877f8a5d4d0ff5966023791060074d475b0560ec8481987f\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"STARK PUMP\",\n symbol: \"PUMP\",\n decimals: 18,\n l2_token_address:\n \"0x32ee0aa960934b5e694520bfbf8487e6e9890c855da2201c3dcdf8e7935c17f\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Big Pump\",\n symbol: \"BIGPUMP\",\n decimals: 18,\n l2_token_address:\n \"0x3d398c7301fa483f4ea8476f0acc6c88310543b9f942bd1afa735e2461f0d92\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Starknet Pnut\",\n symbol: \"PNUT\",\n decimals: 18,\n l2_token_address:\n \"0x2c3f8939cbebd7fe02c4cf2148128afa9ce04a600edb6aca42e33c3da2f31f2\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"OASIS MINECRAFT\",\n symbol: \"OASIS\",\n decimals: 18,\n l2_token_address:\n \"0x1cd7a44dde5dcd78304bd7c030921de03d12b55d4e6cf74e1a1df8e36a50e3e\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"LITTLE BROTHER\",\n symbol: \"LILBRO\",\n decimals: 18,\n l2_token_address:\n \"0x41c12401ea0be1629c87968499a10f5b33eee106efdaa67702eedfa79415daa\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"ALF THE ALPHA OFFICIAL\",\n symbol: \"ALP\",\n decimals: 18,\n l2_token_address:\n \"0x4c8022a4f63260e0de1db8b50325bc2c9c0dd310bfb8f4c220ca0aa5a5f036b\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Baby Alf\",\n symbol: \"BABYALF\",\n decimals: 18,\n l2_token_address:\n \"0x3f3ba193f40d85b72c218a7510514120e83dacc431b743b40affee5cc7b65a7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Starknet Terminal\",\n symbol: \"TERMINAL\",\n decimals: 18,\n l2_token_address:\n \"0xe0599722cc4559fa82f0b1c74d62f57db772cf3173617bf9fb52e18c547d1e\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Donald Trump\",\n symbol: \"PRESIDENT\",\n decimals: 18,\n l2_token_address:\n \"0x24f4718ffcfc96abe8ed51818620d577fcb3480044db11a20800e101c40c4f0\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"DICK\",\n symbol: \"DICK\",\n decimals: 18,\n l2_token_address:\n \"0x388588584bd8c651151f6baf241a85827e7ff0574101f2a8194a3df68a7e2fe\",\n sort_order: 1,\n total_supply: 69420,\n hidden: true,\n },\n {\n name: \"ElonMuskIsraelTrump69BROTHER\",\n symbol: \"SOLANA\",\n decimals: 18,\n l2_token_address:\n \"0x69f52dab53b63baa7abee0ac5d2baeeafd15026db2c59ed5c603c0e5703e16c\",\n sort_order: 1,\n total_supply: 420690000,\n hidden: true,\n },\n {\n name: \"DARK MAGA\",\n symbol: \"DMAGA\",\n decimals: 18,\n l2_token_address:\n \"0x7f4f7e71414cf5891ef9abb913d8140d91630991fd67489dc01ee7647e0aa8e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"CAVIAR\",\n symbol: \"KAV\",\n decimals: 18,\n l2_token_address:\n \"0x66e306a45d49fc668b2fd002088581deba600e09088cca60898f233e0b4160b\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Stark Panther\",\n symbol: \"SPANTHER\",\n decimals: 18,\n l2_token_address:\n \"0xe163ef7bacef72f2a09d086b9f5bf334789a35cf0135166518c8e660c1e19c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Mani\",\n symbol: \"ANI\",\n decimals: 18,\n l2_token_address:\n \"0x344d0bebad5d7cf5ca6ea83bd945ed6fe0c291c4cbd813aaf87c1e49511b62d\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Animi\",\n symbol: \"ANM\",\n decimals: 18,\n l2_token_address:\n \"0x34c53bdc0ebc88161abe62ef827b832fedb084ceac5109958b560dfce39e243\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BANGKOK\",\n symbol: \"BKK\",\n decimals: 18,\n l2_token_address:\n \"0x47234af8a7abd1fe718d548fc956d7dfb15ea5f1225638bb8f82ebff1cfd12f\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"President of the United States\",\n symbol: \"POTUS\",\n decimals: 18,\n l2_token_address:\n \"0x2e78351f8bdc12276ce128e7e4f1844f2932782b32ce3c0e4e635c2dff8ed3c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"StarkRoll\",\n symbol: \"STRL\",\n decimals: 18,\n l2_token_address:\n \"0x50d580514b5dc87d25df98b7d9aca12a8050f3d1b8763284f34d047d56922b7\",\n sort_order: 1,\n total_supply: 9999999999999,\n hidden: true,\n },\n {\n name: \"Greatest Of All Time\",\n symbol: \"GOAT\",\n decimals: 18,\n l2_token_address:\n \"0x5ba65c8cbcfd2e6a5a67e88fb9dc2ed1811ed5b4d7463b0e3d88711a03824ed\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Don't buy\",\n symbol: \"NOBUY\",\n decimals: 18,\n l2_token_address:\n \"0x662c6cb1c18882ab24fec5f7abfd8a08b5fe6ab9a39cc4857f50650e6aeb916\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"StarkPunks\",\n symbol: \"PUNKS\",\n decimals: 18,\n l2_token_address:\n \"0xed399ad3cb9393be1798312d587316261497fa661ad6780fdc381079ea67c7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"wizardwifhat\",\n symbol: \"WIZ\",\n decimals: 18,\n l2_token_address:\n \"0x6e987f1e703c549991e1c13b8f1b8e1e6f8bba068a0715b9aacb51dba2800f\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/4d060c49-3d94-43d8-5f98-085357fe0800/logo\",\n },\n {\n name: \"pythia\",\n symbol: \"PYTH\",\n decimals: 18,\n l2_token_address:\n \"0x729bbe6cb2935936aa73dc1fc506811ef992f956f6b9255b1513fb81d747dab\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"PULSAR\",\n symbol: \"PULSAR\",\n decimals: 18,\n l2_token_address:\n \"0x1234f3f6b2149d55e1dfedfb6d09f98fbc632725e63ba9c5aefc800091d660a\",\n sort_order: 1,\n total_supply: 420420420420,\n hidden: true,\n },\n {\n name: \"Starknet BULL\",\n symbol: \"SBULL\",\n decimals: 18,\n l2_token_address:\n \"0x6d4bef2082c4290f68f001ea29109801ede3d718a5c81db836df7fdfc842d2\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"eBeggars\",\n symbol: \"eba\",\n decimals: 18,\n l2_token_address:\n \"0x6a44ffed4c5cc60dfc9cbead0614c985614f7ad03ddf49c81c9c31b49eca1f1\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Sigmoid\",\n symbol: \"SIG\",\n decimals: 18,\n l2_token_address:\n \"0x7f688d155147196b81348e0be66472b9013043450cd0dddad3d6f9a12778558\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"ZKPepe\",\n symbol: \"ZKP\",\n decimals: 18,\n l2_token_address:\n \"0xb3bb04c6aefd8750ccb3b78a913afff4cb61c588d1bbf7ece626d0791333dc\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"zkWorld\",\n symbol: \"ZKW\",\n decimals: 18,\n l2_token_address:\n \"0x3fa44ec49c11ec9099f2deb3c2c186d8bf9d5394d051231e78b2b5fe5bc0c6b\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"\\u0001\",\n symbol: \"one\",\n decimals: 18,\n l2_token_address:\n \"0x159c536cfaa28d4ed0845a5fda8a58a8abaa8c9c09ccdcbd96121d97443e25c\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Starkraft\",\n symbol: \"STKF\",\n decimals: 18,\n l2_token_address:\n \"0x7d7275c1ed80ecb8d830b9f7f4d711df3401bc05815c9c71e4034cdd522c45\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"TONY STARK\",\n symbol: \"IRONMAN\",\n decimals: 18,\n l2_token_address:\n \"0x1ab9308ba9012665f136e00c2fe197e9137ac384b4bfe828eef3b1712bb40e2\",\n sort_order: 1,\n total_supply: 196219631968,\n hidden: true,\n },\n {\n name: \"Game Of Thrones\",\n symbol: \"GOT\",\n decimals: 18,\n l2_token_address:\n \"0x464a7b709331642046503687d3852b78a68d73574c1de016310f52b99bed371\",\n sort_order: 1,\n total_supply: 1337228,\n hidden: true,\n },\n {\n name: \"Ape Before Doing Logic\",\n symbol: \"APEDEL\",\n decimals: 18,\n l2_token_address:\n \"0x85313bccdb2642c9439ebf606c7d426ef5824a8660351f680ff16080fe73e8\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Even Dead Im The Hero\",\n symbol: \"EDITH\",\n decimals: 18,\n l2_token_address:\n \"0x56ad444d9cd09f957037618dbc10048c653ba7083484478810ac70d4806ff81\",\n sort_order: 1,\n total_supply: 694200000,\n hidden: true,\n },\n {\n name: \"Baby Brother\",\n symbol: \"BBROTHER\",\n decimals: 18,\n l2_token_address:\n \"0x5b90c278d5f7f019759765d1ec7184082c55933f837724fa3c6febdadd8e6da\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"EL-Y BIG BRAIN\",\n symbol: \"EL-Y\",\n decimals: 18,\n l2_token_address:\n \"0x9003851457aef586efecfff71c7e926bbe97b7a28e2ca8e70bfd5c86af6fd0\",\n sort_order: 1,\n total_supply: 8888888888,\n hidden: true,\n },\n {\n name: \"Nevermore\",\n symbol: \"Never\",\n decimals: 18,\n l2_token_address:\n \"0x34f64964ffce40811bedc3a3078e2476b283af85e7317453c7ce7f30aae21c3\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"One For All\",\n symbol: \"ALMIGHTY\",\n decimals: 18,\n l2_token_address:\n \"0x77f6b7ad041fc848c9dced0fd844b933aad046b7302d6e2898cbe376da8ef1d\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"Durex\",\n symbol: \"DUREX\",\n decimals: 18,\n l2_token_address:\n \"0x98f752e4b4ca2f84c55772703db7baf09265a781d2b27f6fd601514bd66dad\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"Flash\",\n symbol: \"FLASH\",\n decimals: 18,\n l2_token_address:\n \"0x82ffda1940a21f43fc8209b6a8a2e86f95a40a6b808b7e9757726a82c9df01\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Starknet Bee\",\n symbol: \"BEE\",\n decimals: 18,\n l2_token_address:\n \"0x799e9deb361ea5e7bccc3e4940a759252564603d6bc7c7688007c4fb22a5f69\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"StarKnight\",\n symbol: \"KNIGHT\",\n decimals: 18,\n l2_token_address:\n \"0x2520cde28e83faae665a34cb18caa285937bb30a028fd894978664f4454f96\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"sister\",\n symbol: \"sis\",\n decimals: 18,\n l2_token_address:\n \"0xae996ce312c9fcf2ad9be61b7907f47d053c28d24e5c8198a0d71c2f02d9a7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"FATHER\",\n symbol: \"FAT\",\n decimals: 18,\n l2_token_address:\n \"0x13b40688ff77903ea10db94628653ac715011dbbaa7323a6cf60bbf6691c794\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"ELONCOPTER\",\n symbol: \"TSLA\",\n decimals: 18,\n l2_token_address:\n \"0x1491e45f45f5381cac7100607812bd9fc069bcb3c7824f1cc4eb96ea4c160c3\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Keria Lover\",\n symbol: \"KERIA\",\n decimals: 18,\n l2_token_address:\n \"0x26c1d12ead8d53ac117c925a96f71ab693ba618b031ea660326773f646e0086\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Contex\",\n symbol: \"CONTEX\",\n decimals: 18,\n l2_token_address:\n \"0x66ec0506c52be379be9ddc68122e38022e890832cc911f782aa8b93ea3d6257\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"TEU\",\n symbol: \"TEU\",\n decimals: 18,\n l2_token_address:\n \"0x1d7aa9823a24b3603e0f7202ea3464ea791a14b9621ffc43346797eb28cd8b7\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"PumpPotion\",\n symbol: \"STARKIUM\",\n decimals: 18,\n l2_token_address:\n \"0x1f19e1602e41ea7a918cf26ac6b8fbbfcebec5132ef9cdfbdab27eee67350a5\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Starknet AI\",\n symbol: \"AI\",\n decimals: 18,\n l2_token_address:\n \"0x1121a01f412e98899d2128b62638be62ec70a5a75dc40cd95ea23de68a2e74b\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"STRK Up\",\n symbol: \"UP\",\n decimals: 18,\n l2_token_address:\n \"0x55a088d8a34fab8b56dbc48bc79f48c25777f48122a98eba4a7b3a919028b26\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Dt Forget 2 B Awesome\",\n symbol: \"DFTBA\",\n decimals: 18,\n l2_token_address:\n \"0x57467c5e0fb02196bed941b6f049857cfb9b70e308b814bd167488759652789\",\n sort_order: 1,\n total_supply: 196219631968,\n hidden: true,\n },\n {\n name: \"PIKA\",\n symbol: \"Pikachu\",\n decimals: 18,\n l2_token_address:\n \"0x4cf4057b2e6aee461d7e9b98195aaa80eb4b36f81435ccda730728581591d09\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"IRON STARKNET\",\n symbol: \"IRON\",\n decimals: 18,\n l2_token_address:\n \"0x286385985403269eb90bf9122e9bce69eef96aeb1b12e3a15acaf492779df16\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"CantRug\",\n symbol: \"CRUG\",\n decimals: 18,\n l2_token_address:\n \"0x311c13bba85a46ecf887e2ad3442540f5395efee6c5ee09b5e1e604c1ff9782\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"TRINK\",\n symbol: \"TRINK\",\n decimals: 18,\n l2_token_address:\n \"0x46452400f416fecb57832a923a7532caf963c3f75e03f900b972f3af1012430\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"AVNU\",\n symbol: \"AVN\",\n decimals: 18,\n l2_token_address:\n \"0x5d7854e879a96f851a11ae454844827849c2c1fd9d4c768075c76db466f2813\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SWAGGY the Wolfdog\",\n symbol: \"SWAGGY\",\n decimals: 18,\n l2_token_address:\n \"0x56f216a2f3e3da47e6ccb58f2c75c453107053c9e668d3eb03fe731c0e48fe6\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"TOGA\",\n symbol: \"TOGA\",\n decimals: 18,\n l2_token_address:\n \"0x53cfe3fe6d449e0d1a7db55aea82b685b0dca4d90b7ab3f3cf84a3066fede06\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"BUY\",\n symbol: \"DONT\",\n decimals: 18,\n l2_token_address:\n \"0x74031e465c0aa9d4202bb225898a2d9ef276d27fcf1cfa70a76219021fcab6d\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Scooby-Doo\",\n symbol: \"Scooby\",\n decimals: 18,\n l2_token_address:\n \"0x671e59def5bbaf8a401102651a16e1c7a2891a0896bfa3514ec5b472802a0c8\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"BENDER_RODRIGEZ\",\n symbol: \"BNDR\",\n decimals: 18,\n l2_token_address:\n \"0x6dd544a5fd6067b9c511c5e89b1e1e7c497211ce2c9c160159fb432d318516\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"SpongeBob\",\n symbol: \"SBOB\",\n decimals: 18,\n l2_token_address:\n \"0x307d998d8e39c6b8a2d81739a6fb45a91624a2cbdb6c4ae33002e418ade808f\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Sonic The Hedgehog\",\n symbol: \"Sonic\",\n decimals: 18,\n l2_token_address:\n \"0x2dfc17ff0fd63b8e7cf00174ec0a1d60e993cc25e7daa8422395f5847686644\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Happy Birthday le V\",\n symbol: \"HBV\",\n decimals: 18,\n l2_token_address:\n \"0x31d17547c976100d20a649a7850703de67832183ac7237497a3c696a706d653\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"F.C.F.S.\",\n symbol: \"GAME\",\n decimals: 18,\n l2_token_address:\n \"0x3a548ce667111ad7b9b1ae2908752b292ea9748c9a21bf321d3ad39eb87118e\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Stark Space\",\n symbol: \"S2\",\n decimals: 18,\n l2_token_address:\n \"0x44fdda35777f54901b14773c32b606356e76cad7817a841f54388617d42dd1c\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Poelifinario\",\n symbol: \"TOON\",\n decimals: 18,\n l2_token_address:\n \"0xeab5f45791fa99afd75e5f4ad09c545a22b80c2fb30e99684baaa0fcfafb6b\",\n sort_order: 1,\n total_supply: 3141592653,\n hidden: true,\n },\n {\n name: \"Cult of Brother\",\n symbol: \"COBRO\",\n decimals: 18,\n l2_token_address:\n \"0xc2e3b37f2f88f3129f5fcd792f064a68cafe9037e2522e9efc8ca257bb0f38\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Sikh Coin\",\n symbol: \"SKH\",\n decimals: 18,\n l2_token_address:\n \"0x38ca2e84312eea83f0e1bf08d4a650e174f7fa092b23b51b9ca3ec7b66662f7\",\n sort_order: 1,\n total_supply: 26000000,\n hidden: true,\n },\n {\n name: \"ai stark\",\n symbol: \"AISTK\",\n decimals: 18,\n l2_token_address:\n \"0x488c8977febc8c65803cc18877a73e268c90e5c71dd069d4397bb05bd6fdf0d\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"DOGE COIN\",\n symbol: \"DOGE COIN\",\n decimals: 18,\n l2_token_address:\n \"0x2f840852ab23007fe7341fc81aa51195ec27ec5bd0f9e1abcf1ddcd8a59395d\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"StarkSeason\",\n symbol: \"SSS\",\n decimals: 18,\n l2_token_address:\n \"0x9810e024509e0e1fa08a9a7e4c5e09a063b5289f74a9688f48166cb6f60062\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"StarkWukong\",\n symbol: \"SWK\",\n decimals: 18,\n l2_token_address:\n \"0x72b245cc5bafe3fa6b2aa94aa47601f348498fddea9d2f903994804315d006b\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Starknet Gangz\",\n symbol: \"SGANGZ\",\n decimals: 18,\n l2_token_address:\n \"0x49181f4f268429107fa1701e6f1118f4d52c7d24842e5fff88365f645a418f0\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Odin's Dog\",\n symbol: \"ODOG\",\n decimals: 18,\n l2_token_address:\n \"0x461712519c576c061483590e097282a500529f9fd7844946fc8a0efc29edaa2\",\n sort_order: 1,\n total_supply: 69420000000,\n hidden: true,\n },\n {\n name: \"SUGAR DADDY\",\n symbol: \"DADDY\",\n decimals: 18,\n l2_token_address:\n \"0x6b2014363e31c6f925bc7a215fbc13791c52d443aaf8192bf48f68880cefab\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"DGSV\",\n symbol: \"DGSV\",\n decimals: 18,\n l2_token_address:\n \"0x26a9be916b7af7caff4e6972935931bb8322b92ac331f4a4e205b2aebcd433f\",\n sort_order: 1,\n total_supply: 20000000000,\n hidden: true,\n },\n {\n name: \"stark panda\",\n symbol: \"panda\",\n decimals: 18,\n l2_token_address:\n \"0xb01087b73607661014e7c343cf5303f22afa781579c3d2f7b407db4ccb1f13\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Where is Bob?\",\n symbol: \"ALICE\",\n decimals: 18,\n l2_token_address:\n \"0x39c8748b52517d1e0a716a773791301440b14fac7432486f8ed1e3ac9d0c89e\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"FOR EVERYBODY\",\n symbol: \"PARTY\",\n decimals: 18,\n l2_token_address:\n \"0x7ea98820329b39970fb54242d4fce993e20bfc3745ffb3f029b8e5eeacff764\",\n sort_order: 1,\n total_supply: 666666666666,\n hidden: true,\n },\n {\n name: \"Tehran\",\n symbol: \"TEHRAN\",\n decimals: 18,\n l2_token_address:\n \"0x1214df013be9559a32d9e30bcdff3e370f88c72668e5910fb4f6eece2e6f9df\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Senator Thune\",\n symbol: \"THUNE\",\n decimals: 18,\n l2_token_address:\n \"0x4a0662c3a6a8538d382480e8785daf435e2b6e1a6a6dcb1329bac041dec4fe\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Grok AI MEME\",\n symbol: \"GROK\",\n decimals: 18,\n l2_token_address:\n \"0x6f4e00fdf84918effc29280b56c564af179dfb9383942cafd4fb7f8e3104e5a\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Lifeless Layer\",\n symbol: \"DEAD\",\n decimals: 18,\n l2_token_address:\n \"0x9d1cba7a4ae6f44c0b7a859c412bcf462b872c99acdca63626dafa1d6013b3\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BullStark\",\n symbol: \"BULLSTARK\",\n decimals: 18,\n l2_token_address:\n \"0x712077a6c0264fed5e749ed2b69496c031be748e7d4efd9a0b2bf776696a72f\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SPACE\",\n symbol: \"SPACE\",\n decimals: 18,\n l2_token_address:\n \"0x5227522b86b06062c7f44cf60baee100bd788e9ca6bb9fc75b29599cae1a3f9\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"STARKNET APE\",\n symbol: \"APE\",\n decimals: 18,\n l2_token_address:\n \"0x5c29ba892ca4518cfcfa0fcb66aee8ac45a897b7fe70b2b97c95a007bccd501\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Stark Man\",\n symbol: \"STARKMAN\",\n decimals: 18,\n l2_token_address:\n \"0x2703152631bb82dbaff042f988dc5bf0642ee30adbd4f9791d25936d498a6d\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Stark AI\",\n symbol: \"SAI\",\n decimals: 18,\n l2_token_address:\n \"0x35b78e175e64ad557096e31e461b35751198bb3402cd2044eca1a6b1d38a064\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Drink Water\",\n symbol: \"LIQUID\",\n decimals: 18,\n l2_token_address:\n \"0x584c49ad3fd294dd13121f60cc6faed03ac0b06141bb1b1ab512120e9b36caa\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Stark World\",\n symbol: \"WORLD\",\n decimals: 18,\n l2_token_address:\n \"0x1e23d4119876ff57159990e8563886335003000bed67947da4cd32f84430dbb\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Always Bullish\",\n symbol: \"BTC90K\",\n decimals: 18,\n l2_token_address:\n \"0x73ddc4533c88d9083d859b7f16617258a2d17fccda33ede60035a41c02694e7\",\n sort_order: 1,\n total_supply: 21000000,\n hidden: true,\n },\n {\n name: \"Not APTOS but APT Dance\",\n symbol: \"APT\",\n decimals: 18,\n l2_token_address:\n \"0x69638c0f05012e2bc3f1e4d5d1a370271408c8acf2fc0ccdafe49c0bb2b0dc8\",\n sort_order: 1,\n total_supply: 23000000,\n hidden: true,\n },\n {\n name: \"Brother Wif Hat\",\n symbol: \"BROWIF\",\n decimals: 18,\n l2_token_address:\n \"0x3b47996c89430938ba1ae11b911ddf460cced9eb629f0716b03c7492762190e\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Super Mario\",\n symbol: \"MARIO\",\n decimals: 18,\n l2_token_address:\n \"0x22b0066e043a55e8ef6d1f90d8903d435b16694dac5d8f80992d699dd27c29f\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Stark War\",\n symbol: \"WAR\",\n decimals: 18,\n l2_token_address:\n \"0x7cb336d104a58f9a3a9086ebe0d68af8e4ea5b02165022827b3c0069828ea90\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Peace\",\n symbol: \"PEACE\",\n decimals: 18,\n l2_token_address:\n \"0x24b5866447745760ad4001ab6161525c8d9567353e3d57756be36149ac582bd\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"2 WEEKS\",\n symbol: \"2WEEKS\",\n decimals: 18,\n l2_token_address:\n \"0x66becf0274df0ae48b6cbcf669c23a1c29dd9bcb4ba7c7d11eb0a1500771839\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Eclip\",\n symbol: \"Eclip\",\n decimals: 18,\n l2_token_address:\n \"0x5e84a7c084fd91673443e6e6c48f2cbb975911567fb3960b436df76f1234ed7\",\n sort_order: 1,\n total_supply: 5000000000,\n hidden: true,\n },\n {\n name: \"Dept of Gov Efficiency STARK\",\n symbol: \"DOGES\",\n decimals: 18,\n l2_token_address:\n \"0x5c2f536e0d8fc935a2d8e38baea3897d977a329b7d74012250b3dd07ea1c0c3\",\n sort_order: 1,\n total_supply: 6942069420,\n hidden: true,\n },\n {\n name: \"Dwarf Community\",\n symbol: \"DWARF\",\n decimals: 18,\n l2_token_address:\n \"0xbaa00ab61c32278d180469dad7cdcaf170259f47136b2c66ab4dc825d9102c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Community\",\n symbol: \"SRAK\",\n decimals: 18,\n l2_token_address:\n \"0x61ab993667cd50aafc08ecf33d58ef673736eaee918302973898c0ba961900b\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"OBOT\",\n symbol: \"OBOT\",\n decimals: 18,\n l2_token_address:\n \"0x27908cd756da1e5faf5d47a5d648a64be728ee6c255d87bd15aaecf80e41f81\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"memetark\",\n symbol: \"MTRK\",\n decimals: 18,\n l2_token_address:\n \"0x3b8baaa09d41d71d5898a5fd27acdbed0970c2faa43f6a3070d5b8fb48a5912\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Starknet SISTA\",\n symbol: \"SISTA\",\n decimals: 18,\n l2_token_address:\n \"0x1e32cf9df3fc03f3e4a6c2afece2340e2920ef536f3e5e7cd6893f8d8fc4882\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"CULT OF BROTHER\",\n symbol: \"COB\",\n decimals: 18,\n l2_token_address:\n \"0x1f8e315b79077d246299768f464596cce8532261495268eccf445cac66d3f5c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Yahoo\",\n symbol: \"YAHOO\",\n decimals: 18,\n l2_token_address:\n \"0x209c3b621a25a7febf3543609f7acd5d28753f1396abc384d6e0b7eb71a1a29\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"ChatGPT\",\n symbol: \"CHATTY\",\n decimals: 18,\n l2_token_address:\n \"0x4421ef4eff4012063ad53eac7eaa5a6ce6b5a7de30f0488efc2f82499affec3\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"stop COIN\",\n symbol: \"stop\",\n decimals: 18,\n l2_token_address:\n \"0x4d57ed39f52254319e3febb0fb959302dc18c5a2f13226b0d4a46932c2c87c5\",\n sort_order: 1,\n total_supply: 5000000000,\n hidden: true,\n },\n {\n name: \"TYSON ON STARK\",\n symbol: \"TYSON\",\n decimals: 18,\n l2_token_address:\n \"0x1beacf9d3be04ef66c5b0376c13900cfaead763a4cf82926a8043aaa1f68c33\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"DOCTI\",\n symbol: \"DOCTI\",\n decimals: 18,\n l2_token_address:\n \"0x59db411db129b9181361a620a8b55ae57a3f98a4b7ff18fddcc0edf29b89eff\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"@Starknetmascot\",\n symbol: \"1. SMC\",\n decimals: 18,\n l2_token_address:\n \"0x79a1dde4d8a7f77708db2fcc927669e05de19182d412293489b06d694455dd2\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Aurum\",\n symbol: \"AUR\",\n decimals: 18,\n l2_token_address:\n \"0x8f7435acc75e6117c4c56e66b3c5ecb926d1b2554a9f8f139ebf9ab9f31ce5\",\n sort_order: 1,\n total_supply: 999999999,\n hidden: true,\n },\n {\n name: \"BLOBERT COIN\",\n symbol: \"BLOBE\",\n decimals: 18,\n l2_token_address:\n \"0x157bde3c332c36e2f84786c4b46fc98e6e1502771e38b8e59873aaddd03a1bb\",\n sort_order: 1,\n total_supply: 45000000000,\n hidden: true,\n },\n {\n name: \"brat\",\n symbol: \"brat\",\n decimals: 18,\n l2_token_address:\n \"0x46dd17b05fbc1bb0525765208ff838f23c0623cbf050f065a66c6d5977710c7\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Vitalik Buterin\",\n symbol: \"VITALIK\",\n decimals: 18,\n l2_token_address:\n \"0x436282665f885508c5da1e54fc36f81f0d3c9d54c07902b40cc5377d30dc024\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Blob Capacity\",\n symbol: \"BLOBS\",\n decimals: 18,\n l2_token_address:\n \"0xbe82f838c25b853aa1dff8b5f7c3eacd2be75294164332007cfbe9c2706e37\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"from solana to starknet\",\n symbol: \"FSTS\",\n decimals: 18,\n l2_token_address:\n \"0x1f439c84e163c84bc57a7b7c6daafcb8ee74d5bab3cade85a3b1c864f867b86\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"DOG/GO/TO/THE/MOON\",\n symbol: \"DOG\",\n decimals: 18,\n l2_token_address:\n \"0x1fa604e9fb5f710a7da1707b5da4dd53503300b4fd04f9f170347e053043efe\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"HoneyPot\",\n symbol: \"HP\",\n decimals: 18,\n l2_token_address:\n \"0x783c576328db42cae79a4498db25c8684a0e45d596dc90c730b3e93c3dd331e\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"HoneyPotV2\",\n symbol: \"HP2\",\n decimals: 18,\n l2_token_address:\n \"0x33d2fd2743e1ece4d81fdaaa58e29e97ca5bf050a49db23c541210d185601a6\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"DNA\",\n symbol: \"DNA\",\n decimals: 18,\n l2_token_address:\n \"0x4303b4dcb2c7d222de22e7051aa70239fb2adacdadbfbc900182fdb6bb49454\",\n sort_order: 1,\n total_supply: 600000000,\n hidden: true,\n },\n {\n name: \"Eliza\",\n symbol: \"ELIZA\",\n decimals: 18,\n l2_token_address:\n \"0x588591ac59a2682611c89b4c1dfd9236ecc8b15007205b18b39e347ece5acee\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Eliza Ai\",\n symbol: \"AIELIZA\",\n decimals: 18,\n l2_token_address:\n \"0x44cd20548365827af7f309fa4da95f7ebb0f71f4d63b8e5ea057cdd0bd157e1\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"DESCI ERECTUSDAO\",\n symbol: \"ERECTDAO\",\n decimals: 18,\n l2_token_address:\n \"0x6b0789c52bde629ab8784d21cf545df9f61f774067d28af86e16e09ec07a254\",\n sort_order: 1,\n total_supply: 6969696969,\n hidden: true,\n },\n {\n name: \"AZT\",\n symbol: \"AZT\",\n decimals: 18,\n l2_token_address:\n \"0x7a1198e28b3111014f6270fbd0814556462a46e32bb8a27a91b3f06a3ed5100\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"R4MI\",\n symbol: \"R4MI\",\n decimals: 18,\n l2_token_address:\n \"0x39b8b68e20da56137782b6a92b44f416494d2d238b4c691b3866d5ca38566a\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"R5MI\",\n symbol: \"R5MI\",\n decimals: 18,\n l2_token_address:\n \"0x721f3b35a5f0c6057a937387ce709776074cd83d3580923a8e9859dc37bb32e\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"Starknet Mascot\",\n symbol: \"STARKMASK\",\n decimals: 18,\n l2_token_address:\n \"0x1b7c2cd6c4fe74883100e5214c412f5f901e4de0a84f4188d5170d76bb46fc\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Make Starknet Great\",\n symbol: \"MSG\",\n decimals: 18,\n l2_token_address:\n \"0x1328028215e1f329a3f8581bcd423427369a86500a1402f5e09e85765c9b83b\",\n sort_order: 1,\n total_supply: 420696969,\n hidden: true,\n },\n {\n name: \"RODBUZ\",\n symbol: \"BUZ\",\n decimals: 18,\n l2_token_address:\n \"0x60222a76d706b3dd901ac211add7c383792956f52d4bccbefcc13368a862128\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Chacloa\",\n symbol: \"Cloa\",\n decimals: 18,\n l2_token_address:\n \"0x171c13871f84f2cc152f4621f228c95453575755d46bff19723a52bfe69581e\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Balan\",\n symbol: \"BAL\",\n decimals: 18,\n l2_token_address:\n \"0x4f4550d641858babd13ccd7fcd8ce2678e3700c3a625d7c629d2f4bdeef7d2c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Rede\",\n symbol: \"Rede\",\n decimals: 18,\n l2_token_address:\n \"0x74822ec91d4fbfd9e8190236762a30e9bfcaa59b5e630429595e5ae48c92fa1\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Gen Z Quant\",\n symbol: \"Quant\",\n decimals: 18,\n l2_token_address:\n \"0x5fa014e8120473d2bb24850ff45c3ce29d6666590f7e40e1ba561f5abd006a1\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"downtime\",\n symbol: \"down\",\n decimals: 18,\n l2_token_address:\n \"0x3309775c485b720014e29b555b5acd8d6efca992c9729c0cb333935700aba42\",\n sort_order: 1,\n total_supply: 80000000,\n hidden: true,\n },\n {\n name: \"Union\",\n symbol: \"UNION\",\n decimals: 18,\n l2_token_address:\n \"0x6fffd3a715da895d01739373a548d05becc979083b6fbd92ab615dc75cc5471\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"AverageFrenchMen\",\n symbol: \"AFM\",\n decimals: 18,\n l2_token_address:\n \"0x6c7634564e7f15e96e7fa062f55dcc2b65077e914c7693912eb1c884abd60e6\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Manlets\",\n symbol: \"MNLTS\",\n decimals: 18,\n l2_token_address:\n \"0x4bd541b08b7e5e2e34b49ac0c1f81dd3997bd66a5a0f5c75abcfbf57b331987\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Move To Starknet\",\n symbol: \"Move\",\n decimals: 18,\n l2_token_address:\n \"0x4c98e58b7327858d78e40beaf6186f6a0df234213aa8a030655f9679baa6f7b\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BROTHER VITALIK\",\n symbol: \"VITABRO\",\n decimals: 18,\n l2_token_address:\n \"0x416f8657e8db6ff5b26493a230e510b3d268e4ba1dac8126be3b8954aaf3af7\",\n sort_order: 1,\n total_supply: 69420000,\n hidden: true,\n },\n {\n name: \"Average French Men\",\n symbol: \"FRENCH\",\n decimals: 18,\n l2_token_address:\n \"0x53104209be3a8795d424b4370d4d111db55ce3a8896cfb1f1973680a7ec44cb\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"REAL\",\n symbol: \"REAL\",\n decimals: 18,\n l2_token_address:\n \"0x5458de22a774c15d094f3b55966c354522e4a78d8dd533ff6eefc04a8fc39a6\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Sad ETH\",\n symbol: \"SAD\",\n decimals: 18,\n l2_token_address:\n \"0x6879b16073f66341f7c853e1bc7706d3a64cccd79815da3f0b303a58adcac9e\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"Starknet Pump\",\n symbol: \"STARKPUMP\",\n decimals: 18,\n l2_token_address:\n \"0x430fd26f25235293d7c55a42cb285489f0706f67b2d891d36b671fbe1a36276\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Cult of the Pump\",\n symbol: \"CULT\",\n decimals: 18,\n l2_token_address:\n \"0x506cd82db64a84fc805a36ee12bd87957f1701d7b7cf2ab06e0068ab7b1a5fd\",\n sort_order: 1,\n total_supply: 666666666666,\n hidden: true,\n },\n {\n name: \"ELI BEN-SHITCOIN\",\n symbol: \"ELIG\",\n decimals: 18,\n l2_token_address:\n \"0x51cf0e830329f9f93fb094f5fe7c28bd5671d0c1633a4c200c8857ed5ebdcae\",\n sort_order: 1,\n total_supply: 420000000000,\n hidden: true,\n },\n {\n name: \"ELI BEN-SHITCOIN\",\n symbol: \"BEN\",\n decimals: 18,\n l2_token_address:\n \"0x55ae94eabf88d5c5c8f1ed83083a251e8ece9c58f9aa71c947a205dd11336bd\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Other (Not Brother)\",\n symbol: \"OTHER\",\n decimals: 18,\n l2_token_address:\n \"0x64b852ad8247f7c774fd07700d4021138a1a422d247c5fd442a664dc22fb4aa\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Name a cuter dog\",\n symbol: \"CHIHUAHUA\",\n decimals: 18,\n l2_token_address:\n \"0x4d2c6c7b9659cb8e4c636101110f75a365b4b530d80862db5cb833777d70281\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"StarKCats\",\n symbol: \"SKC\",\n decimals: 18,\n l2_token_address:\n \"0x3da6062808aabf5d90bcda697f55e87fca507fa9cfed5381ac62f1f4cb5690c\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"just a chill guy\",\n symbol: \"CHILL\",\n decimals: 18,\n l2_token_address:\n \"0xfe6602ac6e931b6620e8255a994e58f1998d4687eb8f7d599534da521c3a01\",\n sort_order: 1,\n total_supply: 420000000000,\n hidden: true,\n },\n {\n name: \"PIPOCA\",\n symbol: \"POKA\",\n decimals: 18,\n l2_token_address:\n \"0x8adb05296d4489faecb5e2e29e25c5c6115b58c9c0b99a1fff4d23d34aff11\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"BTC100K\",\n symbol: \"BTC100K\",\n decimals: 18,\n l2_token_address:\n \"0x2c78ec0858c20556d897cf0da3a22d60554987cf0a407c6c885913c18e82bd0\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"TeT\",\n symbol: \"TET\",\n decimals: 18,\n l2_token_address:\n \"0xd1fe1eb2ea8665717c3430bfc30d040815e1647f5305f03f0f6b0c5520b3ba\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Elizabert\",\n symbol: \"LIBERT\",\n decimals: 18,\n l2_token_address:\n \"0x7488e8941f6d9c3fd1cd2d04e147360dc5d85f159f03a16e85b8449089af43d\",\n sort_order: 1,\n total_supply: 48440000000,\n hidden: true,\n },\n {\n name: \"RallyOnStark\",\n symbol: \"RALLY\",\n decimals: 18,\n l2_token_address:\n \"0x56bab524eac8dd789f6bbcf2967ccbdba1b55e055c925a236d9331c95a0d4fe\",\n sort_order: 1,\n total_supply: 88888888888,\n hidden: true,\n },\n {\n name: \"StarkCaTs\",\n symbol: \"SCT\",\n decimals: 18,\n l2_token_address:\n \"0x521324b728612c1465038c2efee6f485ab64b769b82100ac4d8b52ea5d1bfe7\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"GoingDeep\",\n symbol: \"GGG\",\n decimals: 18,\n l2_token_address:\n \"0x3213a184917c0acfa637e725a58c4b53467caafba29e6ee9cdac6ccc5555b24\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Twony Stark\",\n symbol: \"2NY\",\n decimals: 18,\n l2_token_address:\n \"0x71d6df8de9fc2c115cc007559bc4fe72a9925a38e688fddb1903b626702282\",\n sort_order: 1,\n total_supply: 100000000000000000,\n hidden: true,\n },\n {\n name: \"BUU\",\n symbol: \"BUU\",\n decimals: 18,\n l2_token_address:\n \"0x65d8fbc83914209e3e563bef83418a669903dbd81f892ff0cc6ece384733c71\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Snoop Starke\",\n symbol: \"STARKD\",\n decimals: 18,\n l2_token_address:\n \"0x4164f16bf7939438b08054ca0dffecef4420ba91f9e682b265af1a5af89b6a6\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"KRILLIN\",\n symbol: \"KIRL\",\n decimals: 18,\n l2_token_address:\n \"0x671538d43a370dc39e76ec3645a7e549111fbc7c1d0cddb8e3414dc48b5c176\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Starknet Eye\",\n symbol: \"EYE\",\n decimals: 18,\n l2_token_address:\n \"0x519d14c0a99a3b50577ce7d047e15343a5be6d0d91c709bb8009cda7adbef90\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Vitalik Vibez\",\n symbol: \"VIBE\",\n decimals: 18,\n l2_token_address:\n \"0x65606549b64dd50763be728f4411714183116fa4900f343dd415345465b263e\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"McDuck\",\n symbol: \"DUCK\",\n decimals: 18,\n l2_token_address:\n \"0x32bfb2adc4896c09932b04595563516bbcce0e0f85c6b478f820c176989a018\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"UMAN\",\n symbol: \"UM\",\n decimals: 18,\n l2_token_address:\n \"0xdb739db9337345cce6e830d0b4932da6764a858711adceea4944c4b39e8549\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"RACA\",\n symbol: \"RACA\",\n decimals: 18,\n l2_token_address:\n \"0x30c00bbc964dcbd54d36ca95814b57e031c47528aad0c10813b7c42a13a7110\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"GoingDee\",\n symbol: \"GDG\",\n decimals: 18,\n l2_token_address:\n \"0x219a9f8dc4078f16046ee96fa8b4cbc85f415d291fdf551c451a2d1b72503ea\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Hair\",\n symbol: \"HAIR\",\n decimals: 18,\n l2_token_address:\n \"0x1fb4ad131c0a4678a3385076b48489edda3191f7ac2eb068f3fef9a0fe4e920\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"MOON\",\n symbol: \"MOON\",\n decimals: 18,\n l2_token_address:\n \"0x787436bf242e8230183d1e042f4d0f5e5b57ac7d25d07c0e5a1852a66c2edc1\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"ANONai\",\n symbol: \"ANON\",\n decimals: 18,\n l2_token_address:\n \"0x579c8f756e59d9a39b19bf4d1f918a72247bf74af67f8fc99d921528c10510f\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Cheap\",\n symbol: \"Cheap\",\n decimals: 18,\n l2_token_address:\n \"0x4785923665019ba36161aaf9f842edac8eb17e475ab91d948fdc6affe48047f\",\n sort_order: 1,\n total_supply: 1,\n hidden: true,\n },\n {\n name: \"notREAL\",\n symbol: \"notreal.\",\n decimals: 18,\n l2_token_address:\n \"0x3444005b8871bb7d3ac2a87df978724bd5de52284e88e0ddbdb86738ba34f82\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"GoingLee\",\n symbol: \"GLG\",\n decimals: 18,\n l2_token_address:\n \"0x7eb377670445d4d1f0ecc69049708acbd60e3d422a3f22214d221f9e6c0b2f0\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"KEK (ansem tweet)\",\n symbol: \"kek\",\n decimals: 18,\n l2_token_address:\n \"0x67290e9329229b701128daa29c7d8463ae5dba867ef67e17199f5d840596e8\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"MUSTARD ON STARK\",\n symbol: \"MUSTARD\",\n decimals: 18,\n l2_token_address:\n \"0x69c9114d57851438f5dc526c29343eff0ce1ff989bdbe01729358e64a4aae6d\",\n sort_order: 1,\n total_supply: 6969696969,\n hidden: true,\n },\n {\n name: \"Starkware Tech is Legit\",\n symbol: \"SLGT\",\n decimals: 18,\n l2_token_address:\n \"0x7190ce3525b277c395cb4b34e0eccee1673617725c0146235d9addfbc6d8ce1\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"LEAP\",\n symbol: \"LEAP\",\n decimals: 18,\n l2_token_address:\n \"0x65e8eb7aeefc58a704e36b3da917a67a7330b9ea847b06d1a9461beb9ebe9b9\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"GoingWee\",\n symbol: \"GWG\",\n decimals: 18,\n l2_token_address:\n \"0x1cf48a34e87396512077980a0e0f393c9dc31a4bed6b947273b46d6e0004b7a\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"HI BESTIE\",\n symbol: \"BESTIE\",\n decimals: 18,\n l2_token_address:\n \"0x6c9a144ac2d8d0749bd4fff28f51d5de512b0d6b81c94e8522c2a8884ded164\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"StarkBot\",\n symbol: \"STARKBOT\",\n decimals: 18,\n l2_token_address:\n \"0x322383b3f9d1af55e660b4e9ad82d16f92f4fc92b0553371dac3e36b7f6b9aa\",\n sort_order: 1,\n total_supply: 5000000000,\n hidden: true,\n },\n {\n name: \"HODL Meme\",\n symbol: \"HODL\",\n decimals: 18,\n l2_token_address:\n \"0x1e751081f3585b9c5970b8088102ddb62ff60909d0cdffa5c5c4b65e8ccd4d3\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Starkware Tech Legit\",\n symbol: \"STL\",\n decimals: 18,\n l2_token_address:\n \"0x42fd2d1521ceaf8b365d43c49c10b17768c70e914bd378852b802724947eb8\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Sing\",\n symbol: \"SING\",\n decimals: 18,\n l2_token_address:\n \"0x33b19fb927f466e7b6c5983d04cfbafd9a4ec5c61d7f722a56b9585d232a7f8\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Starknet Steak\",\n symbol: \"STEAK\",\n decimals: 18,\n l2_token_address:\n \"0x1dd1462a7e09f9f1951af96eba8fd66f96ecba65bff55019c5f3d53962b3704\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"MascotAI\",\n symbol: \"MAI\",\n decimals: 18,\n l2_token_address:\n \"0x42266eeccb435e7a8c1792d66f8e78169bd232f8d60c079e6187b0bf5b743e6\",\n sort_order: 1,\n total_supply: 98989899898,\n hidden: true,\n },\n {\n name: \"X Numero Uno\",\n symbol: \"XNU\",\n decimals: 18,\n l2_token_address:\n \"0x1fb9de3b04dc648cf5ad1e0289f96e1fee799d6347ca34526f6f6b1f6499003\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"harihari on Starknet\",\n symbol: \"HAST\",\n decimals: 18,\n l2_token_address:\n \"0x38aee488d72c66c799a39fc3b6521376fd34ae6b79e7eeb9ee590233861b2f0\",\n sort_order: 1,\n total_supply: 28000000,\n hidden: true,\n },\n {\n name: \"snake stark\",\n symbol: \"snake\",\n decimals: 18,\n l2_token_address:\n \"0x6700b484810397e8900c06d775f213714f6ddb9befedf98995fec23331ca994\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Game Bot\",\n symbol: \"GB\",\n decimals: 18,\n l2_token_address:\n \"0x23b8cd79850b8286fafca8df0a30d1648bb16d74a4e179d184a050184f6c128\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"BlueFalcon\",\n symbol: \"FALCON\",\n decimals: 18,\n l2_token_address:\n \"0x67a02a34e87de765d471b245ec8ae5806429a59d1f897b7c7c5f31859c7dddc\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Billion\",\n symbol: \"BILLION\",\n decimals: 18,\n l2_token_address:\n \"0xaddebf5f0d8b7e81e38d7f181b281b10f820036718a55360fff2a51ec1614a\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SuuuCoin\",\n symbol: \"SUUU\",\n decimals: 18,\n l2_token_address:\n \"0x2cc3a6fc3f7ac78b19a18dcf73605cbeef19433af6456c0ad97544282ac4265\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"Kraven The Hunter\",\n symbol: \"KRAVEN\",\n decimals: 18,\n l2_token_address:\n \"0x3ddc51ad5ce946ea031e1b39804db03764a824cc8b3952f783a14395c4bf1fa\",\n sort_order: 1,\n total_supply: 999999999,\n hidden: true,\n },\n {\n name: \"StakNinja on Staknet\",\n symbol: \"StakNinja\",\n decimals: 18,\n l2_token_address:\n \"0x50f366c3b99272c86c10bafa18ae142c8eae83851733d9abcac6673c177f7d2\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Waky Waky\",\n symbol: \"WAKY\",\n decimals: 18,\n l2_token_address:\n \"0x8ed052f30d7eb3af3b2a5723b8f312bf55025c363e8691583a02860286c88b\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"asdf\",\n symbol: \"ASDF\",\n decimals: 18,\n l2_token_address:\n \"0xccbe0eaac7de9f271d02ccbd6627d833f552a7440d7774ff29450228b93f61\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Nikagold\",\n symbol: \"Nika\",\n decimals: 18,\n l2_token_address:\n \"0x5f5f19ce4bc77523d3ed048d199b462a4c7591689e53c7d039d02ade39a2d7c\",\n sort_order: 1,\n total_supply: 10000000000000000,\n hidden: true,\n },\n {\n name: \"Fuck Pump.Fun\",\n symbol: \"FKSOL\",\n decimals: 18,\n l2_token_address:\n \"0x15019b595a70f864a998c1384afc2bacb55fcd68e60ea1ff87b25c9bc4b03d0\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BALLS\",\n symbol: \"BALLZ\",\n decimals: 18,\n l2_token_address:\n \"0x3012e3dd536df963385b87f2aad923f79ea5fc28a7803a09680e247a67df905\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Eustass Kid\",\n symbol: \"KID\",\n decimals: 18,\n l2_token_address:\n \"0x5d8d223a4c5dc2849c12e5a38c389e11291c3dca019c352cd68454be9139c6c\",\n sort_order: 1,\n total_supply: 3000000000,\n hidden: true,\n },\n {\n name: \"TetaFans\",\n symbol: \"TEDA\",\n decimals: 18,\n l2_token_address:\n \"0x38d8ddc79f78dfff010b1c3952ed48d4cb505d98be727084b6d8068ef84574a\",\n sort_order: 1,\n total_supply: 101011111011,\n hidden: true,\n },\n {\n name: \"Starknet Chicken\",\n symbol: \"CHICKEN\",\n decimals: 18,\n l2_token_address:\n \"0x6a24725b18efdfbd1b1bb04cb441d7983938cb260baf5e023275d37f03a7a89\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Death\",\n symbol: \"DEATH\",\n decimals: 18,\n l2_token_address:\n \"0x2ad4886ff4121581ab786eba9d596790052b7fdeacda9a9df3048982f14d565\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Eliben Hub\",\n symbol: \"ELIHUB\",\n decimals: 18,\n l2_token_address:\n \"0x3c53966872f58a47435d6556ae1734beed6bbb980fe70a716bf117408637f2c\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"Saboby Protocol\",\n symbol: \"SABODY\",\n decimals: 18,\n l2_token_address:\n \"0xcb83ccd8e01a89be436f87c0500bcd9a842de8d556d8c84703c96ddaf923f8\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Smithii Tool\",\n symbol: \"SMIT\",\n decimals: 18,\n l2_token_address:\n \"0xb8467a2ec3122965822510e7f070b8a21c16b06167870d75df06b71f5a2b10\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"WinterWags\",\n symbol: \"WAGS\",\n decimals: 18,\n l2_token_address:\n \"0x2a2dd66469098df42d460927e05db6aabbd87f623f6f0e8f0f3072cca63bc8c\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"JavierMilei\",\n symbol: \"AFUERA\",\n decimals: 18,\n l2_token_address:\n \"0x33b2414991ded7f43605b0913d05ca821acdddb44cf224b85e57e4366e6cfa0\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"right\",\n symbol: \"rght\",\n decimals: 18,\n l2_token_address:\n \"0x1b5e910d548ede86a63ee16c826a69509669d2f27ebabd60aff1561b6b52a1a\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"Monkey Fighter\",\n symbol: \"MONFI\",\n decimals: 18,\n l2_token_address:\n \"0x71e5c6461a1da65d3c5b436214223283a7203eb0ae54225e4bbf48358cbdffb\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Chubby Hamster\",\n symbol: \"CHUBBY\",\n decimals: 18,\n l2_token_address:\n \"0x5fe2077a9d3fe663fd50be8a3ae0840ac2f5f8899d0cb07ea34425c91c5a2d3\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"We're All Gonna Make It\",\n symbol: \"WAGMI\",\n decimals: 18,\n l2_token_address:\n \"0x661772bdfdcfe809d803c16c1d210eab8758e76233878339589057ae5eaa377\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Woofy\",\n symbol: \"WOOF\",\n decimals: 18,\n l2_token_address:\n \"0x55e3d75ddeb3d1c77e9439335a77a21be83e2d46ac999f26a3551997502c215\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"TurtlEx\",\n symbol: \"SHELL\",\n decimals: 18,\n l2_token_address:\n \"0x3b24bcfea377aa8d794ca61221b14df1fc25325bea2767e865c582d988d8156\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Realms World Coin\",\n symbol: \"RWC\",\n decimals: 18,\n l2_token_address:\n \"0x2407e0efdd5ebd03f380f792e1aeceb38427975459a2ab04bef9d7d39c95207\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Fack You Meme Coin\",\n symbol: \"FYMC\",\n decimals: 18,\n l2_token_address:\n \"0x547fc4876be116d6fdb8000883a55e8b110a563f65d59b6672f12824313f01b\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Siri Bot\",\n symbol: \"SIRI\",\n decimals: 18,\n l2_token_address:\n \"0x7792863af2b9f6d15ff09ddd4c5e808c056e43e5ca7a7ae1e82776544ec6962\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"MadDog\",\n symbol: \"MDOG\",\n decimals: 18,\n l2_token_address:\n \"0x7d0b535f01f27b79ec68eba2268698e5671226b7dbc425b42caa46254eea078\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"WhaleFUD\",\n symbol: \"WHALE\",\n decimals: 18,\n l2_token_address:\n \"0x34fc3c18e5efb96115136d721c8a9e320a3a0a93be890c09cd7bde4ca8781f0\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"ReStark\",\n symbol: \"RES\",\n decimals: 18,\n l2_token_address:\n \"0x29cc3205aaf563656b9d4e5455ebc7c6e62f85da518e6d250b456a6b4424d3e\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Snake Wif Hat\",\n symbol: \"SKWH\",\n decimals: 18,\n l2_token_address:\n \"0x13bab8ae6702e7e0b50615a8e157216b7660e4036238485c54958262addd255\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"THE\",\n symbol: \"THE\",\n decimals: 18,\n l2_token_address:\n \"0x63f813f6e243ba4b1f3cf24f0d2a3ef5f65e96fa8074d801a7244c53e4d5708\",\n sort_order: 1,\n total_supply: 100000,\n hidden: true,\n },\n {\n name: \"Stark Cooking\",\n symbol: \"COOK\",\n decimals: 18,\n l2_token_address:\n \"0x5e602efc13d8bb720286681e1e3673e54b53767b900c5db46e68d271d441e5a\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Silo\",\n symbol: \"SILO\",\n decimals: 18,\n l2_token_address:\n \"0x16954c95dac6b49686785b5e2aa56ff9d8f3eb3aac9f534deeb8e75588457a2\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"CatNado\",\n symbol: \"CATO\",\n decimals: 18,\n l2_token_address:\n \"0x176553942cbbe4d6e44e651a4412cb4608996a4b00725f7ba1a219d770bd563\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Astro Hamster\",\n symbol: \"ASTRO\",\n decimals: 18,\n l2_token_address:\n \"0x341467a6af4a7e80eabc0102af3d551060ed0b5a88b75b93c28c6b9dc277bd5\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Moon Pug\",\n symbol: \"PUG\",\n decimals: 18,\n l2_token_address:\n \"0x41da24b3a7db2389b1cb4000584f0a220648e60849bd61e0d326c2098bd733e\",\n sort_order: 1,\n total_supply: 222222222,\n hidden: true,\n },\n {\n name: \"BROTHERCYCLE\",\n symbol: \"BROCY\",\n decimals: 18,\n l2_token_address:\n \"0x1a4dabff3ec45f830fb766d4a82a6e0b54c1dd917f2e77d463e22a03e88d815\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Shrek Coin\",\n symbol: \"OGRE\",\n decimals: 18,\n l2_token_address:\n \"0x3e38d0b68e3938a781c66b8b8a90a2bd125bc73d591c439f3b10e405367f14a\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"TOAD\",\n symbol: \"TOAD\",\n decimals: 18,\n l2_token_address:\n \"0x638119baac8cb130fc0ef8b61ccb81c57f7eb9691c53b7e5f191d0c91217445\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SHILL\",\n symbol: \"SHILL\",\n decimals: 18,\n l2_token_address:\n \"0x34ce77b5280566db16dc9daf176372b6307f1045b4bc8c8ceb65a3d81be22f2\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Neuro Block\",\n symbol: \"NEURO\",\n decimals: 18,\n l2_token_address:\n \"0x3f518ea83183f549d6f96bbe16241070276860afe74672a71df49e579d61c5e\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"AI Link\",\n symbol: \"AIL\",\n decimals: 18,\n l2_token_address:\n \"0x646e9346b27afbd49ddb4966dd3b59c8d280b40e423032248299e176906c128\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"MOAR\",\n symbol: \"MOAR\",\n decimals: 18,\n l2_token_address:\n \"0x6cc51293c2d31f23b19cc1611fb5d6b1fb1d815a1009df1e63d16af6e99758a\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Crypto Mind\",\n symbol: \"MIND\",\n decimals: 18,\n l2_token_address:\n \"0x1c1ae51f9b2d52afb7ace0fae66a42c9ffb9c638bd78735ed7ab421c3b170cd\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"StarkGreen\",\n symbol: \"SGREEN\",\n decimals: 18,\n l2_token_address:\n \"0x5b414934170dd7b58737d8e78d7220d42acb6e34601fae71c39dff029d7df75\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"VERDANT\",\n symbol: \"VERD\",\n decimals: 18,\n l2_token_address:\n \"0x72cc48322fc00be317e06caea000df2ec36680198de480b8c3d199579b1ed1d\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Everai\",\n symbol: \"EVERAI\",\n decimals: 18,\n l2_token_address:\n \"0x71d037fc93e0681af6608fcc93d5acad9dd7c06f13ac965221e178fa6ab2754\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BIO NETWORK\",\n symbol: \"BIO\",\n decimals: 18,\n l2_token_address:\n \"0x73221cbd54c8308a7d62288e47d17280739e08f32a2e1d573892e1124541050\",\n sort_order: 1,\n total_supply: 3000000000,\n hidden: true,\n },\n {\n name: \"Sustain\",\n symbol: \"SUST\",\n decimals: 18,\n l2_token_address:\n \"0x648f84bd12e6145ef9895c446d51438fdf665f50ef301df3016e4737753fb04\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Earth Core Team\",\n symbol: \"CORE\",\n decimals: 18,\n l2_token_address:\n \"0x73b9b84e755b459383513e665398ce280b8a7cc5872d70e1690c2365f609fc9\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Grateful Coin\",\n symbol: \"GRATEFUL\",\n decimals: 18,\n l2_token_address:\n \"0x742aad0cb8ef0f7f9f7b1eb93e063512cbcf8aaf93f3db2ed3418927cb9da5d\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"TableFi\",\n symbol: \"TABLE\",\n decimals: 18,\n l2_token_address:\n \"0x2457e45ff72514784fe56b3d91167f6549657b3aa53f28940963da876f1b887\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Tiny Paws\",\n symbol: \"PAWS\",\n decimals: 18,\n l2_token_address:\n \"0x14f05c874baed361ce5fe4957cc3cc4c7a2c2c065b907c57c9b2c5d7e3f2da4\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Zero Energy\",\n symbol: \"ZERO\",\n decimals: 18,\n l2_token_address:\n \"0x59e9d6b43dd95bb6eb3e7e71096aa29ef4c7b97acdcbf07ed067251e5348ef8\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"BRANCHES\",\n symbol: \"BRANCH\",\n decimals: 18,\n l2_token_address:\n \"0x7fc82de071c5c5c7ffff230e36a9e21fdedcdf91fa68572f709449d6b59161\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Baby Sister\",\n symbol: \"SBSTR\",\n decimals: 18,\n l2_token_address:\n \"0x4f11c885ea54130367018c0ef9b94f94c1bb94f397d8e6bfb09f60adb72d0d7\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Quack Quack Quack\",\n symbol: \"QUACK\",\n decimals: 18,\n l2_token_address:\n \"0x5eb8073f2e2d128e89ebdf30e00b229df8931372690423115a2ec7fac918f13\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Eureka!\",\n symbol: \"EKA\",\n decimals: 18,\n l2_token_address:\n \"0x2a6da4abce1f8c75f2d3d861e0979675d534b8f2e8d6fd1f105411568073ffe\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Unity\",\n symbol: \"UNITY\",\n decimals: 18,\n l2_token_address:\n \"0x4b65e31d6a61e04252d2c90d77133c7d9576027cd9a37204734b958a7052a13\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"CycleX\",\n symbol: \"CYCLEX\",\n decimals: 18,\n l2_token_address:\n \"0x20daef0fb6a11d13935162e8cc40fc526ea4f0f91f2e9ae071a628d776ac2d4\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Stark dot com\",\n symbol: \"STARK\",\n decimals: 18,\n l2_token_address:\n \"0x51e9b26e8c6ac0e1e199d140b0fd107a9a9a6ec82ff03cbdee045b34328d093\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Hold My Beer\",\n symbol: \"BEER\",\n decimals: 18,\n l2_token_address:\n \"0xa6fb19553321d8c34a46d641002dc17b287242946728f54f68704baa263258\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Vault Storage\",\n symbol: \"VAULT\",\n decimals: 18,\n l2_token_address:\n \"0x1428d80df927b5adcc9c7b84d145f579120699e634c4b19c965f2cd76a7553a\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Starknet Mommy\",\n symbol: \"SMOM\",\n decimals: 18,\n l2_token_address:\n \"0x31bcb2f62f9339dcf181ca54f9c85601a0b411af02cc58c19c96f16e5ab35ad\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Battle of The Wolves\",\n symbol: \"BTWS\",\n decimals: 18,\n l2_token_address:\n \"0x4f09ad3b23ce9c536eafa9341ecfd91669f0f4db9eabcbd5b8e21e872464b28\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Kinship\",\n symbol: \"KIN\",\n decimals: 18,\n l2_token_address:\n \"0x285546d1c3cbc245ae1754cbdf9a103235aac7767dd7d9dc34f01a35baa5a09\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"MEOW\",\n symbol: \"MEOW\",\n decimals: 18,\n l2_token_address:\n \"0x770ff8aee37a26a1c00d35c5536aaf562fa649143a4ee51a392cb963a4423f8\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Serenity\",\n symbol: \"SERENE\",\n decimals: 18,\n l2_token_address:\n \"0x51205192dc9f982561a7a77f3ad01572ecfc09f3c3441ce3211149ab580a689\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"mtnToken\",\n symbol: \"MTN\",\n decimals: 18,\n l2_token_address:\n \"0x2a9caa0ec2d02a9621bffb12ae90f65f120c74149e4a71e2601b8a39976c8e2\",\n sort_order: 1,\n total_supply: 100,\n hidden: true,\n },\n {\n name: \"zkSynk Brother\",\n symbol: \"ZKBROTHER\",\n decimals: 18,\n l2_token_address:\n \"0x2835f7999c1375d1ddd4186f1152adcbb26db9c0367577e72a0e49257fb12ff\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Evergreen\",\n symbol: \"EVER\",\n decimals: 18,\n l2_token_address:\n \"0x5f0b6e7c0cf8ea59331395280ba0cad75eb4b01b46932e4aae0b8fad55c177b\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"DEGENBER\",\n symbol: \"DEGENBER\",\n decimals: 18,\n l2_token_address:\n \"0x5f29d3f2ab0282cbf644aee72cfd4731e1dab197fd376cda2abfbd9efb5d5d7\",\n sort_order: 1,\n total_supply: 100000000000000,\n hidden: true,\n },\n {\n name: \"Cambodia\",\n symbol: \"CAM\",\n decimals: 18,\n l2_token_address:\n \"0x64029c82efd22f583bdf23b75dcea77673dd16458cec045d7a549ee245a420f\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"SOLACE\",\n symbol: \"SOLACE\",\n decimals: 18,\n l2_token_address:\n \"0x33441dcab91e4426c27f1ee2b36b1a103eec15cae88c6bbd1602c2866f0b69b\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Brother Man\",\n symbol: \"BROMAN\",\n decimals: 18,\n l2_token_address:\n \"0x74dcf958ea37311e4d5f029374fddf549078c70c6cbdcd62a449fde849254b\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"API Bara\",\n symbol: \"BARA\",\n decimals: 18,\n l2_token_address:\n \"0x143fd5508e81493afa078b23f01a2197f016a4dff9a9a5782a974cbf7348861\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"The Integrity Web\",\n symbol: \"IW\",\n decimals: 18,\n l2_token_address:\n \"0x56ef2ae8dd94ac3fe027481a67981a1ff1e0968f53ac24a646ad80fb8fcf5a9\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Starknet India\",\n symbol: \"INDIA\",\n decimals: 18,\n l2_token_address:\n \"0x257f428afdaf9ce19ebb7628e0d8fbd08c103d4b52893d6976c0937a0fa92d5\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Bitcoin ZK Starknet\",\n symbol: \"BZKS\",\n decimals: 18,\n l2_token_address:\n \"0x7fdf93c350553d4947f42472d6877b3fd8b2bf33718128778f3971743da749b\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"BROTHER FRIDAY\",\n symbol: \"BFRIDAY\",\n decimals: 18,\n l2_token_address:\n \"0x1778e966092db793be393c279789e68df760c1f6e1deb8da0e724e751286ccd\",\n sort_order: 1,\n total_supply: 880000000000,\n hidden: true,\n },\n {\n name: \"Nova Land\",\n symbol: \"NOVA\",\n decimals: 18,\n l2_token_address:\n \"0x5e0987a59232cd7afed8b55408d8fe5894d2fe6bc0c595f9d5668bfa9f10c3a\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Odyssey\",\n symbol: \"ODYSSEY\",\n decimals: 18,\n l2_token_address:\n \"0xc3b849e153534372187ff1a566c6df976a475d5bffa53a6c50e2bb4f56443\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Happy Thanksgiving\",\n symbol: \"HTG\",\n decimals: 18,\n l2_token_address:\n \"0x4fd140bddce24e73469c9781d628bc7391087fbb13dab6302ef3ba7f9a9dbd8\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"Qoo\",\n symbol: \"QOO\",\n decimals: 18,\n l2_token_address:\n \"0x7e9ae809318482d43e07e2761b48abde2c389407dbc7a5fcd5945b36bd9bc86\",\n sort_order: 1,\n total_supply: 99999999999,\n hidden: true,\n },\n {\n name: \"Zenith\",\n symbol: \"ZENITH\",\n decimals: 18,\n l2_token_address:\n \"0x369439b0a871e4721fbdcb908315cd17b2d0746d38f3b393e64b3891d6a0859\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"SPOOKY\",\n symbol: \"SPOOKY\",\n decimals: 18,\n l2_token_address:\n \"0x1a587dc6d1c231ee4e83f5e67c314781f496e29015be6e6ac55ca03fc122ae9\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"TESTTEST\",\n symbol: \"TESTTEST\",\n decimals: 18,\n l2_token_address:\n \"0x4a9cf09bf7512dbcc92f9a8a9d3f673715b9fef221306f1ab094c0641cb2915\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"StarkShine\",\n symbol: \"SHINE\",\n decimals: 18,\n l2_token_address:\n \"0x1fd4b9ea3ebbdb9608dcc3a6b8c912195d05dd1b79dc7a52a7a5af3b0a924e5\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"Switch Protocol\",\n symbol: \"SWITCH\",\n decimals: 18,\n l2_token_address:\n \"0xa2be5a310e9b8606361f60632abce100e5c70a6902bb321d5382449089980f\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"PawCoin\",\n symbol: \"PAW\",\n decimals: 18,\n l2_token_address:\n \"0x181235ed5ef4c3f08ceefc24f7342fdde523ea7808f24e3e24b3a8f900aa16c\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Goldie Meme\",\n symbol: \"GOLDIE\",\n decimals: 18,\n l2_token_address:\n \"0x641653d6706493a9cb792d3de0cb781799dfff15e33ec91edd9d424ca65ab37\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Moo Deng\",\n symbol: \"MOODENG\",\n decimals: 18,\n l2_token_address:\n \"0x72162ffc3a25bcea4ef58a4389a1581cdb8549cd30ff8e43af5f2209b402ff2\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Pussy\",\n symbol: \"PSY\",\n decimals: 18,\n l2_token_address:\n \"0xb776458ae7de143d7ff0dd814a4f07fa8c00abc13f71e3b5a9417e680e8f17\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"MERRY PAWS\",\n symbol: \"MERRY\",\n decimals: 18,\n l2_token_address:\n \"0x280bba409dad0889d7fcf0605f5b6aa5a295b7d55216aae49b8d2f9ded890ae\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"CHILL SANTA\",\n symbol: \"CHILLSNT\",\n decimals: 18,\n l2_token_address:\n \"0x49bc2b34d0e0e484c041ec9dddd47657de66cc840b53bed8e09a62a617127d5\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Pips\",\n symbol: \"PIPS\",\n decimals: 18,\n l2_token_address:\n \"0x1479e68dd7d98028fb72fb4fd221ccd6426050c21edd116822570aba497c2a2\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"Stellar Gate\",\n symbol: \"STELLAR\",\n decimals: 18,\n l2_token_address:\n \"0x7cca4e03cc2c96a533f58ef1c42888571073008eb18c91bfa130567ff9fab30\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Pupsik\",\n symbol: \"PSP\",\n decimals: 18,\n l2_token_address:\n \"0x11f574e821fbf0c1e0c42cae9637808436659c3584f90f9316c029c51d5deef\",\n sort_order: 1,\n total_supply: 77000000000000,\n hidden: true,\n },\n {\n name: \"Omakase\",\n symbol: \"OMAKASE\",\n decimals: 18,\n l2_token_address:\n \"0x50351d7f87862689065eaf066e738bad3e66267784e1d18fc0989df0185f074\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Zen Wealth\",\n symbol: \"ZWH\",\n decimals: 18,\n l2_token_address:\n \"0x48592a1297b7c6ae2fb29268240cbb3c6adb3f93df824e2d4fd42600df7299c\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"KARROT\",\n symbol: \"KARROT\",\n decimals: 18,\n l2_token_address:\n \"0x1651e61ed6448725d0313e56900baa8642a13aa5634b6007d6b6849947f38de\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"BROMANCE\",\n symbol: \"BROMANCE\",\n decimals: 18,\n l2_token_address:\n \"0x7e21157a75766dc34e1318291f400ddaeca20f81d973feaa06ef0d90716fe95\",\n sort_order: 1,\n total_supply: 100000000000,\n hidden: true,\n },\n {\n name: \"Art Peace\",\n symbol: \"ARTP\",\n decimals: 18,\n l2_token_address:\n \"0x4192fd8ac6fd58fa32ad4f9999bb08c1c8d7c3c49baef8dbcd2fcb190d0563e\",\n sort_order: 1,\n total_supply: 1000000000000000,\n hidden: true,\n },\n {\n name: \"StarkGrow\",\n symbol: \"SGR\",\n decimals: 18,\n l2_token_address:\n \"0x5020cf36c859edff865831303272cea117009b2e4af26f01180d5b25dbea1e9\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"AquaWave\",\n symbol: \"AWAVE\",\n decimals: 18,\n l2_token_address:\n \"0x47068d9b4a7b4f42dad88c999d4f6e9b01fa3ef5bc342b59f711f50a719ab94\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"StarkGrow\",\n symbol: \"STG\",\n decimals: 18,\n l2_token_address:\n \"0x31f6b39d7ad6d699d5dfaa352ba9ca33819cbad6a0b244892cde259aaa63f77\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"NITRO STARK\",\n symbol: \"NITRO\",\n decimals: 18,\n l2_token_address:\n \"0x5fc5cba0be9f48be5bc75887d587b8c354f10618db251dbff84576093bfd6ac\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"SS\",\n symbol: \"SS\",\n decimals: 18,\n l2_token_address:\n \"0x321d84867236278113021597783b5b6827d8b9d049453efd87ca9dbf2b501ef\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Gremlins\",\n symbol: \"GREM\",\n decimals: 18,\n l2_token_address:\n \"0x39cb78b822286a528fe2a22747605ebab151be7c6e1351d54fdd3577baf17fd\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"BITCOIN\",\n symbol: \"BTC\",\n decimals: 18,\n l2_token_address:\n \"0x3f819b95a46a0dbe9ce8e4bdd57148cad87c40250fa3ccd4c259959d54db687\",\n sort_order: 1,\n total_supply: 21000000000,\n hidden: true,\n },\n {\n name: \"JameSayla\",\n symbol: \"JAMES\",\n decimals: 18,\n l2_token_address:\n \"0x2d811ff2c10f6a2202c27614ae156e33fc4c3da17463f0cd91d064275a28fe1\",\n sort_order: 1,\n total_supply: 100000000,\n hidden: true,\n },\n {\n name: \"JingleBell\",\n symbol: \"JINGLE\",\n decimals: 18,\n l2_token_address:\n \"0x485b3079584f327ef6db44432eaecdfd8e03d3f3550784b5c0eabc0d75b37a4\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Rudolph\",\n symbol: \"RUDOLPH\",\n decimals: 18,\n l2_token_address:\n \"0x7f6c9f91928609fa3ce3833e47cd183cba4bca398b0001fae0ba5502d37993b\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Chatbot AI Degen\",\n symbol: \"CAID\",\n decimals: 18,\n l2_token_address:\n \"0x76c55f7845e7e80bbb52c37c6f16045319e940d8969bceafef7e7b15d5bd7eb\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"BROTHER INU\",\n symbol: \"BROINU\",\n decimals: 18,\n l2_token_address:\n \"0x3114e502deddde2b258bafe00775af95ba25734e0eff06f17109da128b5003a\",\n sort_order: 1,\n total_supply: 1000000000000,\n hidden: true,\n },\n {\n name: \"Hey Starknet\",\n symbol: \"Soon\",\n decimals: 18,\n l2_token_address:\n \"0xf93f5264e5a88f3f019ff4397db2f7ce03de78e83950de46ac284c401d2852\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"You Own Your Life\",\n symbol: \"YOYL\",\n decimals: 18,\n l2_token_address:\n \"0x7abcb26245ecc5a0cfe039b9f8df8a45ae160123f1ce67249fb6f193d2a777f\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Starknet AI Companion\",\n symbol: \"$STA\",\n decimals: 18,\n l2_token_address:\n \"0x20407bfaa1b21ec14901b1e763e7187fcb290595269c0a62fcb45f575bfa25d\",\n sort_order: 1,\n total_supply: 10000000000000,\n hidden: true,\n },\n {\n name: \"TESTO\",\n symbol: \"TESTO\",\n decimals: 18,\n l2_token_address:\n \"0x117761602b4e7c34a0aaef99b8acfb07be9ce4f1044633148ef27078c17a1ef\",\n sort_order: 1,\n total_supply: 10000000000,\n hidden: true,\n },\n {\n name: \"Brother and Sister\",\n symbol: \"BROSIS\",\n decimals: 18,\n l2_token_address:\n \"0xd9bd20bcface330d5d1914c222a2f4173e3efc9da5cecfe080384a8c4bee14\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"TPTEST\",\n symbol: \"TPTEST\",\n decimals: 18,\n l2_token_address:\n \"0x3dde581763eae9fd2f2680c578bf1c9768a6b75b4d4d8ce2235f9ae011d2a24\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"TPTEST2\",\n symbol: \"TPTEST2\",\n decimals: 18,\n l2_token_address:\n \"0x1ba5d163c90528fb8ac268f5d2992fb7b1e5ebed5855e4e5eef2c1fe99aa35e\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"TPTEST3\",\n symbol: \"TPTEST3\",\n decimals: 18,\n l2_token_address:\n \"0x5c484251f16d8902217401e11a2329d4bdfe6e6c9ee89bfc1de915412a29b1a\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"GG\",\n symbol: \"GG\",\n decimals: 18,\n l2_token_address:\n \"0x3cb4518bfda6c05147c6d356c16a6b2de12bebe03733a7981201c19c0314a62\",\n sort_order: 1,\n total_supply: 1000000,\n hidden: true,\n },\n {\n name: \"President Yoon\",\n symbol: \"YOON\",\n decimals: 18,\n l2_token_address:\n \"0x7fc77776c3a36bd8424a06775ecec53c546182136dc075f6afe03972e4d0dac\",\n sort_order: 1,\n total_supply: 10000000,\n hidden: true,\n },\n {\n name: \"Brother Eli\",\n symbol: \"SLAY\",\n decimals: 18,\n l2_token_address:\n \"0x2ab526354a39e7f5d272f327fa94e757df3688188d4a92c6dc3623ab79894e2\",\n sort_order: 1,\n total_supply: 88888888,\n hidden: true,\n },\n {\n name: \"Sister and Brother\",\n symbol: \"SISBRO\",\n decimals: 18,\n l2_token_address:\n \"0x2f5c2233c3704815bed135ea5e8410c6ce5113050196b7fefefc6f3a4930c85\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"FOMO\",\n symbol: \"FOMO\",\n decimals: 18,\n l2_token_address:\n \"0x58de27d29f7a831a221abbe47944c0f2c440f5b629b089cad96898c9a44f49\",\n sort_order: 1,\n total_supply: 666666666666,\n hidden: true,\n },\n {\n name: \"BELLA\",\n symbol: \"BELLA\",\n decimals: 18,\n l2_token_address:\n \"0x768e2662a2ad079bd16dc86492bc70fa081e891708deef1d4ca5dee57b25a5a\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Stark Guy\",\n symbol: \"SGUY\",\n decimals: 18,\n l2_token_address:\n \"0x7159847725765f61b23a78b4ca0a42005cac115178c6ac35b3ae8508ca3fc\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"Wen4?\",\n symbol: \"W4\",\n decimals: 18,\n l2_token_address:\n \"0x2a4926924b58de26a337cddebd00e4f40a3e8eaced3cab046ea8700a71bc8fd\",\n sort_order: 1,\n total_supply: 1000000000,\n hidden: true,\n },\n {\n name: \"DUCK SANTA\",\n symbol: \"DUCKS\",\n decimals: 18,\n l2_token_address:\n \"0x567efb3fb3521e56f203e5829d62fa289cc235964eb29868698d0d23f6e0327\",\n sort_order: 1,\n total_supply: 1500000000,\n hidden: true,\n },\n {\n name: \"Lords\",\n symbol: \"LORDS\",\n decimals: 18,\n l2_token_address:\n \"0x0124aeb495b947201f5fac96fd1138e326ad86195b98df6dec9009158a533b49\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/coin.png\",\n },\n {\n name: \"Ancien Fragments\",\n symbol: \"ANCIENT_FRAGMENT\",\n decimals: 18,\n l2_token_address:\n \"0x0695b08ecdfdd828c2e6267da62f59e6d7543e690ef56a484df25c8566b332a5\",\n sort_order: 2,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/29.png\",\n },\n {\n name: \"Knight\",\n symbol: \"KNIGHT\",\n decimals: 18,\n l2_token_address:\n \"0x00ac965f9e67164723c16735a9da8dbc9eb8e43b1bd0323591e87c056badf606\",\n sort_order: 3,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/icons/250.png\",\n },\n {\n name: \"Crossbowman\",\n symbol: \"CROSSBOWMAN\",\n decimals: 18,\n l2_token_address:\n \"0x067e4ac00a241be06ba6afc11fa2715ec7da0c42c05a67ef6ecfcfeda725aaa8\",\n sort_order: 4,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/icons/251.png\",\n },\n {\n name: \"Paladin\",\n symbol: \"PALADIN\",\n decimals: 18,\n l2_token_address:\n \"0x03bc86299bee061c7c8d7546ccb62b9daf9bffc653b1508facb722c6593874bc\",\n sort_order: 5,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/icons/252.png\",\n },\n {\n name: \"Donkey\",\n symbol: \"DONKEY\",\n decimals: 18,\n l2_token_address:\n \"0x0264be95a4a2ace20add68cb321acdccd2f9f8440ee1c7abd85da44ddab01085\",\n sort_order: 6,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/buildings/thumb/trade.png\",\n },\n {\n name: \"Wheat\",\n symbol: \"WHEAT\",\n decimals: 18,\n l2_token_address:\n \"0x057a3f1ee475e072ce3be41785c0e889b7295d7a0dcc22b992c5b9408dbeb280\",\n sort_order: 7,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/254.png\",\n },\n {\n name: \"Fish\",\n symbol: \"FISH\",\n decimals: 18,\n l2_token_address:\n \"0x027719173cfe10f1aa38d2aaed0a075b6077290f1e817aa3485d2b828394f4d9\",\n sort_order: 8,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/255.png\",\n },\n {\n name: \"Wood\",\n symbol: \"WOOD\",\n decimals: 18,\n l2_token_address:\n \"0x040d8907cec0f7ae9c364dfb12485a1314d84c129bf1898d2f3d4b7fcc7d44f4\",\n sort_order: 9,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/1.png\",\n },\n {\n name: \"Stone\",\n symbol: \"STONE\",\n decimals: 18,\n l2_token_address:\n \"0x0439a1c010e3e1bb2d43d43411000893c0042bd88f6c701611a0ea914d426da4\",\n sort_order: 10,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/2.png\",\n },\n {\n name: \"Coal\",\n symbol: \"COAL\",\n decimals: 18,\n l2_token_address:\n \"0x00ce635e3f241b0ae78c46a929d84a9101910188f9c4024eaa7559556503c31a\",\n sort_order: 11,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/3.png\",\n },\n {\n name: \"Copper\",\n symbol: \"COPPER\",\n decimals: 18,\n l2_token_address:\n \"0x066ed5c928ee027a9419ace1cbea8389885161db5572a7c5c4fef2310e9bf494\",\n sort_order: 12,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/4.png\",\n },\n {\n name: \"Obsidian\",\n symbol: \"OBSIDIAN\",\n decimals: 18,\n l2_token_address:\n \"0x03b6448d09dcd023507376402686261f5d6739455fa02f804907b066e488da66\",\n sort_order: 13,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/5.png\",\n },\n {\n name: \"Silver\",\n symbol: \"SILVER\",\n decimals: 18,\n l2_token_address:\n \"0x06fe21d2d4a8a05bdb70f09c9250af9870020d5dcc35f410b4a39d6605c3e353\",\n sort_order: 14,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/6.png\",\n },\n {\n name: \"Ironwood\",\n symbol: \"IRONWOOD\",\n decimals: 18,\n l2_token_address:\n \"0x01720cf6318bff45e62acc588680ae3cd4d5f8465b1d52cb710533c9299b031a\",\n sort_order: 15,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/7.png\",\n },\n {\n name: \"Cold Iron\",\n symbol: \"COLDIRON\",\n decimals: 18,\n l2_token_address:\n \"0x0555d713e59d4ff96b7960447e9bc9e79bfdeab5b0eea74e3df81bce61cfbc77\",\n sort_order: 16,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/8.png\",\n },\n {\n name: \"Gold\",\n symbol: \"GOLD\",\n decimals: 18,\n l2_token_address:\n \"0x000dff9dca192609c4e86ab3be22c7ec1e968876c992d21986f3c542be97fa2f\",\n sort_order: 17,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/9.png\",\n },\n {\n name: \"Hartwood\",\n symbol: \"HARTWOOD\",\n decimals: 18,\n l2_token_address:\n \"0x05620aa7170cd66dbcbc37d03087bfe4633ffef91d3e4d97b501de906004f79b\",\n sort_order: 18,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/10.png\",\n },\n {\n name: \"Diamonds\",\n symbol: \"DIAMONDS\",\n decimals: 18,\n l2_token_address:\n \"0x00e03ea8ae385f64754820af5c01c36abf1b8130dd6797d3fd9d430e4114e876\",\n sort_order: 19,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/11.png\",\n },\n {\n name: \"Sapphire\",\n symbol: \"SAPPHIRE\",\n decimals: 18,\n l2_token_address:\n \"0x02f8dd022568af8f9f718aa37707a9b858529db56910633a160456838b6cbcbc\",\n sort_order: 20,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/12.png\",\n },\n {\n name: \"Ruby\",\n symbol: \"RUBY\",\n decimals: 18,\n l2_token_address:\n \"0x03d9b66720959d0e7687b898292c10e62e78626f2dba5e1909961a2ce3f86612\",\n sort_order: 21,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/13.png\",\n },\n {\n name: \"Deep Crystal\",\n symbol: \"DEEPCRYSTAL\",\n decimals: 18,\n l2_token_address:\n \"0x01d655ac834d38df7921074fc1588411e202b1af83307cbd996983aff52db3a8\",\n sort_order: 22,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/14.png\",\n },\n {\n name: \"Ignium\",\n symbol: \"IGNIUM\",\n decimals: 18,\n l2_token_address:\n \"0x0625c1f789b03ebebc7a9322366f38ebad1f693b84b2abd8cb8f5b2748b0cdd5\",\n sort_order: 23,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/15.png\",\n },\n {\n name: \"Ethereal Silica\",\n symbol: \"ETHEREALSILICA\",\n decimals: 18,\n l2_token_address:\n \"0x068b6e23cbbd58a644700f55e96c83580921e9f521b6e5175396b53ba7910e7d\",\n sort_order: 24,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/16.png\",\n },\n {\n name: \"True Ice\",\n symbol: \"TRUEICE\",\n decimals: 18,\n l2_token_address:\n \"0x04485f5a6e16562e1c761cd348e63256d00389e3ddf4f5d98afe7ab44c57c481\",\n sort_order: 25,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/17.png\",\n },\n {\n name: \"Twilight Quartz\",\n symbol: \"TWILIGHTQUARTZ\",\n decimals: 18,\n l2_token_address:\n \"0x035e24c02409c3cfe8d5646399a62c4d102bb782938d5f5180e92c9c62d3faf7\",\n sort_order: 26,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/18.png\",\n },\n {\n name: \"Alchemical Silver\",\n symbol: \"ALCHEMICALSILVER\",\n decimals: 18,\n l2_token_address:\n \"0x03956a5301e99522038a2e7dcb9c2a89bf087ffa79310ee0a508b5538efd8ddd\",\n sort_order: 27,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/19.png\",\n },\n {\n name: \"Adamantine\",\n symbol: \"ADAMANTINE\",\n decimals: 18,\n l2_token_address:\n \"0x0367f838f85a2f5e1580d6f011e4476f581083314cff8721ba3dda9706076eed\",\n sort_order: 28,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/20.png\",\n },\n {\n name: \"Mithral\",\n symbol: \"MITHRAL\",\n decimals: 18,\n l2_token_address:\n \"0x0067ba235c569c23877064b2ac6ebd4d79f32d3c00f5fab8e28a3b5700b957f6\",\n sort_order: 29,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/21.png\",\n },\n {\n name: \"Dragon Hide\",\n symbol: \"DRAGONHIDE\",\n decimals: 18,\n l2_token_address:\n \"0x03bf856515bece3c93f5061b7941b8645f817a0acab93c758b8c7b4bc0afa3c6\",\n sort_order: 30,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/22.png\",\n },\n {\n name: \"Demon Hide\",\n symbol: \"DEMONHIDE\",\n decimals: 18,\n l2_token_address:\n \"0x03b847fbef9d344ba968edc945100e6ab0258a4b1b91f8665f85a3d814c3e4d4\",\n sort_order: 31,\n total_supply: null,\n hidden: true,\n logo_url: \"https://empire.realms.world/images/resources/22.png\",\n },\n];\n","import { configs } from \"./generated/controller-configs\";\nimport { TypedData } from \"@starknet-io/types-js\";\nimport { metadata } from \"./generated/erc20-metadata\";\n\nexport const controllerConfigs = configs;\nexport const erc20Metadata = metadata;\nexport const defaultTheme = configs[\"cartridge\"].theme!;\n\nexport type EkuboERC20Metadata = {\n name: string;\n symbol: string;\n decimals: number;\n l2_token_address: string;\n sort_order: number;\n total_supply: number | null;\n logo_url?: string;\n hidden?: boolean;\n disabled?: boolean;\n};\n\nexport type Policy = CallPolicy | TypedDataPolicy;\n\nexport type CallPolicy = {\n target: string;\n method: string;\n description?: string;\n};\n\nexport type TypedDataPolicy = Omit<TypedData, \"message\">;\n\nexport type Policies = Policy[] | SessionPolicies;\n\nexport type SessionPolicies = {\n /** The key must be the contract address */\n contracts?: ContractPolicies;\n messages?: SignMessagePolicy[];\n};\n\nexport type ContractPolicies = Record<string, ContractPolicy>;\n\nexport type ContractPolicy = {\n name?: string;\n description?: string;\n methods: Method[];\n};\n\nexport type Method = {\n name?: string;\n description?: string;\n entrypoint: string;\n};\n\nexport type SignMessagePolicy = TypedDataPolicy & {\n name?: string;\n description?: string;\n};\n\nexport type ControllerConfig = {\n origin: string | string[];\n policies?: SessionPolicies;\n theme?: ControllerTheme;\n};\n\nexport type ControllerConfigs = Record<string, ControllerConfig>;\n\nexport type ColorMode = \"light\" | \"dark\";\n\nexport type ControllerTheme = {\n name: string;\n icon: string;\n cover: ThemeValue<string>;\n colors?: ControllerColors;\n};\n\nexport type ControllerColors = {\n primary?: ControllerColor;\n primaryForeground?: ControllerColor;\n};\n\nexport type ControllerColor = ThemeValue<string>;\n\nexport type ThemeValue<T> = T | { dark: T; light: T };\n"],"mappings":"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;UACF;QACF;QACA,sEAAsE;UACpE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;MACF;IACF;IACA,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,SAAS;IACP,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,SAAS;IACP,QAAQ,CAAC,wBAAwB,qBAAqB;IACtD,UAAU;MACR,WAAW;QACT,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,oEAAoE;UAClE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aACE;cACF,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aACE;cACF,YAAY;YACd;YACA;cACE,MAAM;cACN,aACE;cACF,YAAY;YACd;UACF;QACF;QACA,oEAAoE;UAClE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,oEAAoE;UAClE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,sEAAsE;UACpE,MAAM;UACN,aACE;UACF,SAAS;YACP;cACE,MAAM;cACN,aACE;cACF,YAAY;YACd;UACF;QACF;QACA,sEAAsE;UACpE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;QACA,qEAAqE;UACnE,MAAM;UACN,aAAa;UACb,SAAS;YACP;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;YACA;cACE,MAAM;cACN,aAAa;cACb,YAAY;YACd;UACF;QACF;MACF;MACA,UAAU;QACR;UACE,OAAO;YACL,gBAAgB;cACd;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;YACF;YACA,sBAAsB;cACpB;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;cACA;gBACE,MAAM;gBACN,MAAM;cACR;YACF;UACF;UACA,aAAa;UACb,QAAQ;YACN,MAAM;YACN,SAAS;YACT,SAAS;YACT,UAAU;UACZ;QACF;MACF;IACF;IACA,OAAO;MACL,MAAM;MACN,MAAM;MACN,OAAO;MACP,QAAQ;QACN,SAAS;MACX;IACF;EACF;EACA,YAAY;IACV,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,eAAe;IACb,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,kBAAkB;IAChB,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,iBAAiB;IACf,QAAQ;IACR,UAAU;MACR,WAAW;QACT,sEAAsE;UACpE,SAAS;YACP;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;UACF;QACF;QACA,sEAAsE;UACpE,SAAS;YACP;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;YACA;cACE,YAAY;YACd;UACF;QACF;QACA,sEAAsE;UACpE,SAAS;YACP;cACE,YAAY;YACd;UACF;QACF;MACF;IACF;IACA,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,OAAO;IACL,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,SAAS;IACP,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,SAAS;IACP,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;QACT,mBAAmB;MACrB;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,eAAe;IACb,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,iBAAiB;IACf,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,eAAe;IACb,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,SAAS;IACP,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,MAAM;IACJ,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;EACA,OAAO;IACL,QAAQ;IACR,OAAO;MACL,QAAQ;QACN,SAAS;MACX;MACA,OAAO;MACP,MAAM;MACN,MAAM;IACR;EACF;AACF;AChxBO,IAAM,WAAiC;EAC5C;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,cAAc;IACd,UACE;EACJ;EACA;IACE,MAAM;IACN,QAAQ;IACR,UAAU;IACV,kBACE;IACF,YAAY;IACZ,c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","names":["ResponseCodes","typedData","existingController","params","call"]}
1
+ {"version":3,"sources":["../src/types.ts","../src/utils.ts","../src/account.ts","../src/iframe/base.ts","../src/constants.ts","../src/iframe/keychain.ts","../src/iframe/profile.ts","../src/errors.ts","../package.json","../src/icon.ts","../src/mutex.ts","../src/provider.ts","../src/controller.ts","../src/lookup.ts","../../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+aa3a218/node_modules/@cartridge/presets/src/generated/controller-configs.ts","../../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+aa3a218/node_modules/@cartridge/presets/src/generated/erc20-metadata.ts","../../../node_modules/.pnpm/@cartridge+presets@https+++codeload.github.com+cartridge-gg+presets+tar.gz+aa3a218/node_modules/@cartridge/presets/src/index.ts"],"names":["ResponseCodes","typedData","existingController","params","call"],"mappings":"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","file":"index.js","sourcesContent":["import {\n constants,\n BigNumberish,\n Call,\n Abi,\n InvocationsDetails,\n} from \"starknet\";\nimport {\n AddInvokeTransactionResult,\n ChainId,\n Signature,\n TypedData,\n} from \"@starknet-io/types-js\";\nimport { KeychainIFrame, ProfileIFrame } from \"./iframe\";\nimport { Policy, SessionPolicies } from \"@cartridge/presets\";\n\nexport type Session = {\n chainId: constants.StarknetChainId;\n policies: Policy[];\n maxFee: BigNumberish;\n expiresAt: bigint;\n credentials: {\n authorization: string[];\n privateKey: string;\n };\n};\n\nexport enum ResponseCodes {\n SUCCESS = \"SUCCESS\",\n NOT_CONNECTED = \"NOT_CONNECTED\",\n ERROR = \"ERROR\",\n CANCELED = \"CANCELED\",\n USER_INTERACTION_REQUIRED = \"USER_INTERACTION_REQUIRED\",\n}\n\nexport type ConnectError = {\n code: ResponseCodes;\n message: string;\n error?: ControllerError;\n};\n\nexport type ControllerError = {\n code: Number;\n message: string;\n data?: any;\n};\n\nexport type ConnectReply = {\n code: ResponseCodes.SUCCESS;\n address: string;\n policies?: SessionPolicies;\n};\n\nexport type ExecuteReply =\n | (AddInvokeTransactionResult & {\n code: ResponseCodes.SUCCESS;\n })\n | {\n code: ResponseCodes.USER_INTERACTION_REQUIRED;\n };\n\nexport type ProbeReply = {\n code: ResponseCodes.SUCCESS;\n address: string;\n rpcUrl?: string;\n};\n\nexport type DeployReply = {\n code: ResponseCodes.SUCCESS;\n transaction_hash: string;\n};\n\nexport type IFrames = {\n keychain: KeychainIFrame;\n profile?: ProfileIFrame;\n version?: number;\n};\n\nexport interface LookupRequest {\n usernames?: string[];\n addresses?: string[];\n}\n\nexport interface LookupResult {\n username: string;\n addresses: string[];\n}\n\nexport interface LookupResponse {\n results: LookupResult[];\n}\n\ntype ContractAddress = string;\ntype CartridgeID = string;\nexport type ControllerAccounts = Record<ContractAddress, CartridgeID>;\n\nexport interface Keychain {\n probe(rpcUrl: string): Promise<ProbeReply | ConnectError>;\n connect(\n policies: SessionPolicies,\n rpcUrl: string,\n ): Promise<ConnectReply | ConnectError>;\n disconnect(): void;\n\n reset(): void;\n revoke(origin: string): void;\n\n deploy(): Promise<DeployReply | ConnectError>;\n execute(\n calls: Call | Call[],\n abis?: Abi[],\n transactionsDetail?: InvocationsDetails,\n sync?: boolean,\n paymaster?: any,\n error?: ControllerError,\n ): Promise<ExecuteReply | ConnectError>;\n signMessage(\n typedData: TypedData,\n account: string,\n async?: boolean,\n ): Promise<Signature | ConnectError>;\n logout(): Promise<void>;\n openSettings(): Promise<void | ConnectError>;\n session(): Promise<Session>;\n sessions(): Promise<{\n [key: string]: Session;\n }>;\n delegateAccount(): string;\n username(): string;\n openPurchaseCredits(): void;\n openExecute(calls: Call[]): Promise<void>;\n switchChain(rpcUrl: string): Promise<void>;\n}\n\nexport interface Profile {\n navigate(path: string): void;\n}\n\nexport interface Modal {\n open: () => void;\n close: () => void;\n}\n\n/**\n * Options for configuring the controller\n */\nexport type ControllerOptions = ProviderOptions &\n KeychainOptions &\n ProfileOptions;\n\nexport type IFrameOptions = {\n /** The ID of the starter pack to use */\n starterPackId?: string;\n /** The preset to use */\n preset?: string;\n};\n\nexport type Chain = {\n rpcUrl: string;\n};\n\nexport type ProviderOptions = {\n defaultChainId: ChainId;\n chains: Chain[];\n};\n\nexport type KeychainOptions = IFrameOptions & {\n policies?: SessionPolicies;\n /** The URL of keychain */\n url?: string;\n /** The origin of keychain */\n origin?: string;\n /** Propagate transaction errors back to caller instead of showing modal */\n propagateSessionErrors?: boolean;\n};\n\nexport type ProfileOptions = IFrameOptions & {\n /** The URL of profile. Mainly for internal development purpose */\n profileUrl?: string;\n /** The project name of Slot instance. */\n slot?: string;\n /** The namespace to use to fetch trophies data from indexer. Will be mandatory once profile page is in production */\n namespace?: string;\n /** The tokens to be listed on Inventory modal */\n tokens?: Tokens;\n};\n\nexport type ProfileContextTypeVariant =\n | \"inventory\"\n | \"trophies\"\n | \"achievements\"\n | \"activity\";\n\nexport type Tokens = {\n erc20?: string[];\n};\n","import {\n addAddressPadding,\n Call,\n CallData,\n constants,\n getChecksumAddress,\n hash,\n shortString,\n typedData,\n TypedDataRevision,\n} from \"starknet\";\nimport wasm from \"@cartridge/account-wasm/controller\";\nimport { Policies, SessionPolicies } from \"@cartridge/presets\";\nimport { ChainId } from \"@starknet-io/types-js\";\nimport { ParsedSessionPolicies } from \"./policies\";\n\n// Whitelist of allowed property names to prevent prototype pollution\nconst ALLOWED_PROPERTIES = new Set([\n \"contracts\",\n \"messages\",\n \"target\",\n \"method\",\n \"name\",\n \"description\",\n \"types\",\n \"domain\",\n \"primaryType\",\n]);\n\nfunction validatePropertyName(prop: string): void {\n if (!ALLOWED_PROPERTIES.has(prop)) {\n throw new Error(`Invalid property name: ${prop}`);\n }\n}\n\nfunction safeObjectAccess<T>(obj: any, prop: string): T {\n validatePropertyName(prop);\n return obj[prop];\n}\n\nexport function normalizeCalls(calls: Call | Call[]) {\n return toArray(calls).map((call) => {\n return {\n entrypoint: call.entrypoint,\n contractAddress: addAddressPadding(call.contractAddress),\n calldata: CallData.toHex(call.calldata),\n };\n });\n}\n\nexport function toSessionPolicies(policies: Policies): SessionPolicies {\n return Array.isArray(policies)\n ? policies.reduce<SessionPolicies>(\n (prev, p) => {\n if (safeObjectAccess<string>(p, \"target\")) {\n const target = getChecksumAddress(\n safeObjectAccess<string>(p, \"target\"),\n );\n const entrypoint = safeObjectAccess<string>(p, \"method\");\n const contracts = safeObjectAccess<Record<string, any>>(\n prev,\n \"contracts\",\n );\n const item = {\n name: humanizeString(entrypoint),\n entrypoint: entrypoint,\n description: safeObjectAccess<string>(p, \"description\"),\n };\n\n if (target in contracts) {\n const methods = toArray(contracts[target].methods);\n contracts[target] = {\n methods: [...methods, item],\n };\n } else {\n contracts[target] = {\n methods: [item],\n };\n }\n } else {\n const messages = safeObjectAccess<any[]>(prev, \"messages\");\n messages.push(p);\n }\n\n return prev;\n },\n { contracts: {}, messages: [] },\n )\n : policies;\n}\n\nexport function toWasmPolicies(policies: ParsedSessionPolicies): wasm.Policy[] {\n return [\n ...Object.entries(policies.contracts ?? {}).flatMap(\n ([target, { methods }]) =>\n toArray(methods).map((m) => ({\n target,\n method: m.entrypoint,\n authorized: m.authorized,\n })),\n ),\n ...(policies.messages ?? []).map((p) => {\n const domainHash = typedData.getStructHash(\n p.types,\n \"StarknetDomain\",\n p.domain,\n TypedDataRevision.ACTIVE,\n );\n const typeHash = typedData.getTypeHash(\n p.types,\n p.primaryType,\n TypedDataRevision.ACTIVE,\n );\n\n return {\n scope_hash: hash.computePoseidonHash(domainHash, typeHash),\n authorized: p.authorized,\n };\n }),\n ];\n}\n\nexport function toArray<T>(val: T | T[]): T[] {\n return Array.isArray(val) ? val : [val];\n}\n\nexport function humanizeString(str: string): string {\n return (\n str\n // Convert from camelCase or snake_case\n .replace(/([a-z])([A-Z])/g, \"$1 $2\") // camelCase to spaces\n .replace(/_/g, \" \") // snake_case to spaces\n .toLowerCase()\n // Capitalize first letter\n .replace(/^\\w/, (c) => c.toUpperCase())\n );\n}\n\nexport function parseChainId(url: URL): ChainId {\n const parts = url.pathname.split(\"/\");\n\n if (parts.includes(\"starknet\")) {\n if (parts.includes(\"mainnet\")) {\n return constants.StarknetChainId.SN_MAIN;\n } else if (parts.includes(\"sepolia\")) {\n return constants.StarknetChainId.SN_SEPOLIA;\n }\n } else if (parts.length >= 3) {\n const projectName = parts[2];\n if (parts.includes(\"katana\")) {\n return shortString.encodeShortString(\n `WP_${projectName.toUpperCase().replace(/-/g, \"_\")}`,\n ) as ChainId;\n } else if (parts.includes(\"mainnet\")) {\n return shortString.encodeShortString(\n `GG_${projectName.toUpperCase().replace(/-/g, \"_\")}`,\n ) as ChainId;\n }\n }\n\n throw new Error(`Chain ${url.toString()} not supported`);\n}\n","import {\n InvokeFunctionResponse,\n TypedData,\n WalletAccount,\n Call,\n AllowArray,\n} from \"starknet\";\n\nimport { SPEC } from \"@starknet-io/types-js\";\n\nimport {\n ConnectError,\n Keychain,\n KeychainOptions,\n Modal,\n ResponseCodes,\n} from \"./types\";\nimport { AsyncMethodReturns } from \"@cartridge/penpal\";\nimport BaseProvider from \"./provider\";\nimport { toArray } from \"./utils\";\n\nclass ControllerAccount extends WalletAccount {\n address: string;\n private keychain: AsyncMethodReturns<Keychain>;\n private modal: Modal;\n private options?: KeychainOptions;\n\n constructor(\n provider: BaseProvider,\n rpcUrl: string,\n address: string,\n keychain: AsyncMethodReturns<Keychain>,\n options: KeychainOptions,\n modal: Modal,\n ) {\n super({ nodeUrl: rpcUrl }, provider);\n\n this.address = address;\n this.keychain = keychain;\n this.options = options;\n this.modal = modal;\n }\n\n /**\n * Invoke execute function in account contract\n *\n * @param calls the invocation object or an array of them, containing:\n * - contractAddress - the address of the contract\n * - entrypoint - the entrypoint of the contract\n * - calldata - (defaults to []) the calldata\n * - signature - (defaults to []) the signature\n * @param abis (optional) the abi of the contract for better displaying\n *\n * @returns response from addTransaction\n */\n async execute(calls: AllowArray<Call>): Promise<InvokeFunctionResponse> {\n calls = toArray(calls);\n\n return new Promise(async (resolve, reject) => {\n const sessionExecute = await this.keychain.execute(\n calls,\n undefined,\n undefined,\n false,\n );\n\n // Session call succeeded\n if (sessionExecute.code === ResponseCodes.SUCCESS) {\n resolve(sessionExecute as InvokeFunctionResponse);\n return;\n }\n\n // Propagates session txn error back to caller\n if (this.options?.propagateSessionErrors) {\n reject((sessionExecute as ConnectError).error);\n return;\n }\n\n // Session call or Paymaster flow failed.\n // Session not avaialble, manual flow fallback\n this.modal.open();\n const manualExecute = await this.keychain.execute(\n calls,\n undefined,\n undefined,\n true,\n (sessionExecute as ConnectError).error,\n );\n\n // Manual call succeeded\n if (manualExecute.code === ResponseCodes.SUCCESS) {\n resolve(manualExecute as InvokeFunctionResponse);\n this.modal.close();\n return;\n }\n\n reject((manualExecute as ConnectError).error);\n return;\n });\n }\n\n /**\n * Sign an JSON object for off-chain usage with the starknet private key and return the signature\n * This adds a message prefix so it cant be interchanged with transactions\n *\n * @param json - JSON object to be signed\n * @returns the signature of the JSON object\n * @throws {Error} if the JSON object is not a valid JSON\n */\n async signMessage(typedData: TypedData): Promise<SPEC.SIGNATURE> {\n return new Promise(async (resolve, reject) => {\n const sessionSign = await this.keychain.signMessage(typedData, \"\", true);\n\n // Session sign succeeded\n if (!(\"code\" in sessionSign)) {\n resolve(sessionSign as SPEC.SIGNATURE);\n return;\n }\n\n // Session not avaialble, manual flow fallback\n this.modal.open();\n const manualSign = await this.keychain.signMessage(typedData, \"\", false);\n\n if (!(\"code\" in manualSign)) {\n resolve(manualSign as SPEC.SIGNATURE);\n } else {\n reject((manualSign as ConnectError).error);\n }\n this.modal.close();\n });\n }\n}\n\nexport default ControllerAccount;\n","import { AsyncMethodReturns, connectToChild } from \"@cartridge/penpal\";\nimport { ControllerOptions, Modal } from \"../types\";\n\nexport type IFrameOptions<CallSender> = Omit<\n ConstructorParameters<typeof IFrame>[0],\n \"id\" | \"url\" | \"onConnect\"\n> & {\n url?: string;\n onConnect: (child: AsyncMethodReturns<CallSender>) => void;\n};\n\nexport class IFrame<CallSender extends {}> implements Modal {\n url?: URL;\n private iframe?: HTMLIFrameElement;\n private container?: HTMLDivElement;\n private onClose?: () => void;\n\n constructor({\n id,\n url,\n preset,\n onClose,\n onConnect,\n methods = {},\n }: Pick<ControllerOptions, \"preset\"> & {\n id: string;\n url: URL;\n onClose?: () => void;\n onConnect: (child: AsyncMethodReturns<CallSender>) => void;\n methods?: { [key: string]: (...args: any[]) => void };\n }) {\n if (typeof document === \"undefined\") {\n return;\n }\n\n if (preset) {\n url.searchParams.set(\"preset\", preset);\n }\n\n this.url = url;\n\n const iframe = document.createElement(\"iframe\");\n iframe.src = url.toString();\n iframe.id = id;\n iframe.style.border = \"none\";\n iframe.sandbox.add(\"allow-forms\");\n iframe.sandbox.add(\"allow-popups\");\n iframe.sandbox.add(\"allow-scripts\");\n iframe.sandbox.add(\"allow-same-origin\");\n iframe.allow =\n \"publickey-credentials-create *; publickey-credentials-get *; clipboard-write\";\n if (!!document.hasStorageAccess) {\n iframe.sandbox.add(\"allow-storage-access-by-user-activation\");\n }\n\n const container = document.createElement(\"div\");\n container.id = \"controller\";\n container.style.position = \"fixed\";\n container.style.height = \"100%\";\n container.style.width = \"100%\";\n container.style.top = \"0\";\n container.style.left = \"0\";\n container.style.zIndex = \"10000\";\n container.style.backgroundColor = \"rgba(0,0,0,0.6)\";\n container.style.display = \"flex\";\n container.style.alignItems = \"center\";\n container.style.justifyContent = \"center\";\n container.style.visibility = \"hidden\";\n container.style.opacity = \"0\";\n container.style.transition = \"opacity 0.2s ease\";\n container.appendChild(iframe);\n\n this.iframe = iframe;\n this.container = container;\n\n connectToChild<CallSender>({\n iframe: this.iframe,\n methods: { close: () => this.close(), ...methods },\n }).promise.then(onConnect);\n\n this.resize();\n window.addEventListener(\"resize\", () => this.resize());\n\n const observer = new MutationObserver(() => {\n const existingController = document.getElementById(\"controller\");\n if (document.body) {\n if (\n (id === \"controller-keychain\" && !existingController) ||\n id === \"controller-profile\"\n ) {\n document.body.appendChild(container);\n observer.disconnect();\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true,\n });\n\n const existingController = document.getElementById(\"controller\");\n if (document.body) {\n if (\n (id === \"controller-keychain\" && !existingController) ||\n id === \"controller-profile\"\n ) {\n document.body.appendChild(container);\n }\n }\n\n this.onClose = onClose;\n }\n\n open() {\n if (!this.container) return;\n document.body.style.overflow = \"hidden\";\n\n this.container.style.visibility = \"visible\";\n this.container.style.opacity = \"1\";\n }\n\n close() {\n if (!this.container) return;\n this.onClose?.();\n\n document.body.style.overflow = \"auto\";\n\n this.container.style.visibility = \"hidden\";\n this.container.style.opacity = \"0\";\n }\n\n sendBackward() {\n if (!this.container) return;\n this.container.style.zIndex = \"9999\";\n }\n\n sendForward() {\n if (!this.container) return;\n this.container.style.zIndex = \"10000\";\n }\n\n private resize() {\n if (!this.iframe) return;\n\n this.iframe.style.userSelect = \"none\";\n\n if (window.innerWidth < 768) {\n this.iframe.style.height = \"100%\";\n this.iframe.style.width = \"100%\";\n this.iframe.style.borderRadius = \"0\";\n return;\n }\n\n this.iframe.style.height = \"600px\";\n this.iframe.style.width = \"432px\";\n this.iframe.style.borderRadius = \"8px\";\n }\n}\n","export const KEYCHAIN_URL = \"https://x.cartridge.gg\";\nexport const PROFILE_URL = \"https://profile.cartridge.gg\";\nexport const API_URL = \"https://api.cartridge.gg\";\n","import { KEYCHAIN_URL } from \"../constants\";\nimport { Keychain, KeychainOptions } from \"../types\";\nimport { IFrame, IFrameOptions } from \"./base\";\n\ntype KeychainIframeOptions = IFrameOptions<Keychain> & KeychainOptions;\n\nexport class KeychainIFrame extends IFrame<Keychain> {\n constructor({ url, policies, ...iframeOptions }: KeychainIframeOptions) {\n const _url = new URL(url ?? KEYCHAIN_URL);\n\n if (policies) {\n _url.searchParams.set(\n \"policies\",\n encodeURIComponent(JSON.stringify(policies)),\n );\n }\n\n super({\n ...iframeOptions,\n id: \"controller-keychain\",\n url: _url,\n });\n }\n}\n","import { PROFILE_URL } from \"../constants\";\nimport { Profile, ProfileOptions } from \"../types\";\nimport { IFrame, IFrameOptions } from \"./base\";\n\nexport type ProfileIFrameOptions = IFrameOptions<Profile> &\n ProfileOptions & {\n rpcUrl: string;\n version?: string;\n username: string;\n slot?: string;\n namespace?: string;\n };\n\nexport class ProfileIFrame extends IFrame<Profile> {\n constructor({\n profileUrl,\n rpcUrl,\n version,\n username,\n slot,\n namespace,\n tokens,\n ...iframeOptions\n }: ProfileIFrameOptions) {\n const _profileUrl = (profileUrl || PROFILE_URL).replace(/\\/$/, \"\");\n let _url = new URL(\n slot\n ? namespace\n ? `${_profileUrl}/account/${username}/slot/${slot}?ps=${encodeURIComponent(\n slot,\n )}&ns=${encodeURIComponent(namespace)}`\n : `${_profileUrl}/account/${username}/slot/${slot}?ps=${encodeURIComponent(\n slot,\n )}`\n : `${_profileUrl}/account/${username}`,\n );\n\n if (version) {\n _url.searchParams.set(\"v\", encodeURIComponent(version));\n }\n\n _url.searchParams.set(\"rpcUrl\", encodeURIComponent(rpcUrl));\n\n if (tokens?.erc20) {\n _url.searchParams.set(\n \"erc20\",\n encodeURIComponent(tokens.erc20.toString()),\n );\n }\n\n super({\n ...iframeOptions,\n id: \"controller-profile\",\n url: _url,\n });\n }\n}\n","export class NotReadyToConnect extends Error {\n constructor() {\n super(\"Not ready to connect\");\n\n Object.setPrototypeOf(this, NotReadyToConnect.prototype);\n }\n}\n","{\n \"name\": \"@cartridge/controller\",\n \"version\": \"0.7.0\",\n \"description\": \"Cartridge Controller\",\n \"module\": \"dist/index.js\",\n \"types\": \"dist/index.d.ts\",\n \"type\": \"module\",\n \"scripts\": {\n \"build:deps\": \"tsup\",\n \"build\": \"pnpm build:deps\",\n \"format\": \"prettier --write \\\"src/**/*.ts\\\"\",\n \"format:check\": \"prettier --check \\\"src/**/*.ts\\\"\",\n \"test\": \"jest\",\n \"version\": \"pnpm pkg get version\"\n },\n \"exports\": {\n \".\": {\n \"types\": \"./dist/index.d.ts\",\n \"import\": \"./dist/index.js\",\n \"require\": \"./dist/index.cjs\"\n },\n \"./session\": {\n \"types\": \"./dist/session/index.d.ts\",\n \"import\": \"./dist/session/index.js\",\n \"require\": \"./dist/session/index.cjs\"\n },\n \"./session/node\": {\n \"types\": \"./dist/node/index.d.ts\",\n \"import\": \"./dist/node/index.js\",\n \"require\": \"./dist/node/index.cjs\"\n },\n \"./provider\": {\n \"types\": \"./dist/provider/index.d.ts\",\n \"import\": \"./dist/provider/index.js\"\n },\n \"./types\": {\n \"types\": \"./dist/types/index.d.ts\",\n \"import\": \"./dist/types/index.js\"\n }\n },\n \"tsup\": {\n \"entry\": [\n \"src/index.ts\",\n \"src/controller.ts\",\n \"src/lookup.ts\",\n \"src/session/index.ts\",\n \"src/node/index.ts\"\n ],\n \"format\": [\n \"esm\",\n \"cjs\"\n ],\n \"splitting\": false,\n \"sourcemap\": true,\n \"clean\": true,\n \"dts\": true,\n \"treeshake\": {\n \"preset\": \"recommended\"\n },\n \"exports\": \"named\"\n },\n \"peerDependencies\": {\n \"starknet\": \"catalog:\",\n \"open\": \"^10.1.0\"\n },\n \"dependencies\": {\n \"@cartridge/account-wasm\": \"workspace:*\",\n \"@cartridge/penpal\": \"catalog:\",\n \"@starknet-io/types-js\": \"catalog:\",\n \"@telegram-apps/sdk\": \"^2.4.0\",\n \"base64url\": \"catalog:\",\n \"cbor-x\": \"^1.5.0\",\n \"fast-deep-equal\": \"catalog:\"\n },\n \"devDependencies\": {\n \"@cartridge/tsconfig\": \"workspace:*\",\n \"@types/jest\": \"^29.5.14\",\n \"@types/node\": \"catalog:\",\n \"jest\": \"^29.7.0\",\n \"prettier\": \"catalog:\",\n \"ts-jest\": \"^29.2.5\",\n \"tsup\": \"catalog:\",\n \"typescript\": \"catalog:\"\n }\n}\n","export const icon =\n \"data:image/png;base64,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\";\n","function releaseStub() {}\n\n/**\n * A simple mutual exclusion lock. It allows you to obtain and release a lock,\n * ensuring that only one task can access a critical section at a time.\n */\nexport class Mutex {\n private m_lastPromise: Promise<void> = Promise.resolve();\n\n /**\n * Acquire lock\n * @param [bypass=false] option to skip lock acquisition\n */\n public async obtain(bypass = false): Promise<() => void> {\n let release = releaseStub;\n if (bypass) return release;\n const lastPromise = this.m_lastPromise;\n this.m_lastPromise = new Promise<void>((resolve) => (release = resolve));\n await lastPromise;\n return release;\n }\n}\n","import { WalletAccount } from \"starknet\";\nimport {\n AddInvokeTransactionParameters,\n AddStarknetChainParameters,\n Errors,\n Permission,\n RequestAccountsParameters,\n RequestFn,\n StarknetWindowObject,\n SwitchStarknetChainParameters,\n TypedData,\n WalletEventHandlers,\n WalletEventListener,\n WalletEvents,\n} from \"@starknet-io/types-js\";\nimport manifest from \"../package.json\";\n\nimport { icon } from \"./icon\";\nimport { Mutex } from \"./mutex\";\n\nconst mutex = new Mutex();\n\nexport default abstract class BaseProvider implements StarknetWindowObject {\n public id = \"controller\";\n public name = \"Controller\";\n public version = manifest.version;\n public icon = icon;\n\n public account?: WalletAccount;\n public subscriptions: WalletEvents[] = [];\n\n private _probePromise: Promise<WalletAccount | undefined> | null = null;\n\n protected async safeProbe(): Promise<WalletAccount | undefined> {\n // If we already have an account, return it\n if (this.account) {\n return this.account;\n }\n\n // If we're already probing, wait for the existing probe\n if (this._probePromise) {\n return this._probePromise;\n }\n\n const release = await mutex.obtain();\n return await new Promise<WalletAccount | undefined>(async (resolve) => {\n try {\n this._probePromise = this.probe();\n const result = await this._probePromise;\n resolve(result);\n } finally {\n this._probePromise = null;\n }\n }).finally(() => {\n release();\n });\n }\n\n request: RequestFn = async (call) => {\n switch (call.type) {\n case \"wallet_getPermissions\":\n await this.safeProbe();\n\n if (this.account) {\n return [Permission.ACCOUNTS];\n }\n\n return [];\n\n case \"wallet_requestAccounts\": {\n if (this.account) {\n return [this.account.address];\n }\n\n const silentMode =\n call.params && (call.params as RequestAccountsParameters).silent_mode;\n\n this.account = await this.safeProbe();\n\n if (!this.account && !silentMode) {\n this.account = await this.connect();\n }\n\n if (this.account) {\n return [this.account.address];\n }\n\n return [];\n }\n\n case \"wallet_watchAsset\":\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"wallet_watchAsset not implemented\",\n } as Errors.UNEXPECTED_ERROR;\n\n case \"wallet_addStarknetChain\": {\n let params = call.params as AddStarknetChainParameters;\n return this.addStarknetChain(params);\n }\n\n case \"wallet_switchStarknetChain\": {\n let params = call.params as SwitchStarknetChainParameters;\n return this.switchStarknetChain(params.chainId);\n }\n\n case \"wallet_requestChainId\":\n if (!this.account) {\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"Account not initialized\",\n } as Errors.UNEXPECTED_ERROR;\n }\n\n return await this.account.getChainId();\n\n case \"wallet_deploymentData\":\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"wallet_deploymentData not implemented\",\n } as Errors.UNEXPECTED_ERROR;\n\n case \"wallet_addInvokeTransaction\":\n if (!this.account) {\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"Account not initialized\",\n } as Errors.UNEXPECTED_ERROR;\n }\n\n let params = call.params as AddInvokeTransactionParameters;\n return await this.account.execute(\n params.calls.map((call) => ({\n contractAddress: call.contract_address,\n entrypoint: call.entry_point,\n calldata: call.calldata,\n })),\n );\n\n case \"wallet_addDeclareTransaction\":\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"wallet_addDeclareTransaction not implemented\",\n } as Errors.UNEXPECTED_ERROR;\n\n case \"wallet_signTypedData\": {\n if (!this.account) {\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: \"Account not initialized\",\n } as Errors.UNEXPECTED_ERROR;\n }\n\n return await this.account.signMessage(call.params as TypedData);\n }\n\n case \"wallet_supportedSpecs\":\n return [];\n case \"wallet_supportedWalletApi\":\n return [];\n default:\n throw {\n code: 63,\n message: \"An unexpected error occurred\",\n data: `Unknown RPC call type: ${call.type}`,\n } as Errors.UNEXPECTED_ERROR;\n }\n };\n\n on: WalletEventListener = <E extends keyof WalletEventHandlers>(\n event: E,\n handler: WalletEventHandlers[E],\n ): void => {\n if (event !== \"accountsChanged\" && event !== \"networkChanged\") {\n throw new Error(`Unknown event: ${event}`);\n }\n this.subscriptions.push({ type: event, handler } as WalletEvents);\n };\n\n off: WalletEventListener = <E extends keyof WalletEventHandlers>(\n event: E,\n handler: WalletEventHandlers[E],\n ): void => {\n if (event !== \"accountsChanged\" && event !== \"networkChanged\") {\n throw new Error(`Unknown event: ${event}`);\n }\n const idx = this.subscriptions.findIndex(\n (sub) => sub.type === event && sub.handler === handler,\n );\n if (idx >= 0) {\n this.subscriptions.splice(idx, 1);\n }\n };\n\n protected emitNetworkChanged(chainId: string) {\n this.subscriptions\n .filter((sub) => sub.type === \"networkChanged\")\n .forEach((sub) => {\n (sub.handler as WalletEventHandlers[\"networkChanged\"])(chainId);\n });\n }\n\n protected emitAccountsChanged(accounts: string[]) {\n this.subscriptions\n .filter((sub) => sub.type === \"accountsChanged\")\n .forEach((sub) => {\n (sub.handler as WalletEventHandlers[\"accountsChanged\"])(accounts);\n });\n }\n\n abstract probe(): Promise<WalletAccount | undefined>;\n abstract connect(): Promise<WalletAccount | undefined>;\n abstract switchStarknetChain(chainId: string): Promise<boolean>;\n abstract addStarknetChain(\n chain: AddStarknetChainParameters,\n ): Promise<boolean>;\n}\n","import { AsyncMethodReturns } from \"@cartridge/penpal\";\n\nimport ControllerAccount from \"./account\";\nimport { KeychainIFrame, ProfileIFrame } from \"./iframe\";\nimport { NotReadyToConnect } from \"./errors\";\nimport {\n Keychain,\n ResponseCodes,\n ConnectReply,\n ProbeReply,\n ControllerOptions,\n ConnectError,\n Profile,\n IFrames,\n ProfileContextTypeVariant,\n Chain,\n} from \"./types\";\nimport BaseProvider from \"./provider\";\nimport { WalletAccount } from \"starknet\";\nimport { Policy } from \"@cartridge/presets\";\nimport { AddStarknetChainParameters, ChainId } from \"@starknet-io/types-js\";\nimport { parseChainId } from \"./utils\";\n\nexport default class ControllerProvider extends BaseProvider {\n private keychain?: AsyncMethodReturns<Keychain>;\n private profile?: AsyncMethodReturns<Profile>;\n private options: ControllerOptions;\n private iframes: IFrames;\n private selectedChain: ChainId;\n private chains: Map<ChainId, Chain>;\n\n constructor(options: ControllerOptions) {\n super();\n\n const chains = new Map<ChainId, Chain>();\n\n for (const chain of options.chains) {\n const url = new URL(chain.rpcUrl);\n const chainId = parseChainId(url);\n chains.set(chainId, chain);\n }\n\n if (\n options.policies?.messages?.length &&\n options.policies.messages.length !== chains.size\n ) {\n console.warn(\n \"Each message policy is associated with a specific chain. \" +\n \"The number of message policies does not match the number of chains specified - \" +\n \"session message signing may not work on some chains.\",\n );\n }\n\n this.chains = chains;\n this.selectedChain = options.defaultChainId;\n\n if (!this.chains.has(this.selectedChain)) {\n throw new Error(\n `Chain ${this.selectedChain} not found in configured chains`,\n );\n }\n\n this.iframes = {\n keychain: new KeychainIFrame({\n ...options,\n onClose: this.keychain?.reset,\n onConnect: (keychain) => {\n this.keychain = keychain;\n },\n }),\n };\n\n this.options = options;\n\n if (typeof window !== \"undefined\") {\n (window as any).starknet_controller = this;\n }\n }\n\n async probe(): Promise<WalletAccount | undefined> {\n try {\n await this.waitForKeychain();\n\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n const response = (await this.keychain.probe(this.rpcUrl())) as ProbeReply;\n\n // For backwards compat with controller <=0.6.0\n let rpcUrl = response?.rpcUrl || this.rpcUrl();\n this.account = new ControllerAccount(\n this,\n rpcUrl,\n response.address,\n this.keychain,\n this.options,\n this.iframes.keychain,\n );\n } catch (e) {\n console.error(e);\n return;\n }\n\n if (!this.iframes.profile) {\n const username = await this.keychain.username();\n\n this.iframes.profile = new ProfileIFrame({\n ...this.options,\n onConnect: (profile) => {\n this.profile = profile;\n },\n methods: {\n openSettings: () => this.openSettings.bind(this),\n openPurchaseCredits: () => this.openPurchaseCredits.bind(this),\n openExecute: () => this.openExecute.bind(this),\n },\n rpcUrl: this.rpcUrl(),\n username,\n version: this.version,\n });\n }\n\n return this.account;\n }\n\n async connect(): Promise<WalletAccount | undefined> {\n if (this.account) {\n return this.account;\n }\n\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n if (!!document.hasStorageAccess) {\n const ok = await document.hasStorageAccess();\n if (!ok) {\n await document.requestStorageAccess();\n }\n }\n\n this.iframes.keychain.open();\n\n try {\n let response = await this.keychain.connect(\n this.options.policies || {},\n this.rpcUrl(),\n );\n if (response.code !== ResponseCodes.SUCCESS) {\n throw new Error(response.message);\n }\n\n response = response as ConnectReply;\n this.account = new ControllerAccount(\n this,\n this.rpcUrl(),\n response.address,\n this.keychain,\n this.options,\n this.iframes.keychain,\n );\n\n return this.account;\n } catch (e) {\n console.log(e);\n } finally {\n this.iframes.keychain.close();\n }\n }\n\n async switchStarknetChain(chainId: string): Promise<boolean> {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return false;\n }\n\n try {\n this.selectedChain = chainId;\n const response = (await this.keychain.probe(this.rpcUrl())) as ProbeReply;\n\n if (response.rpcUrl === this.rpcUrl()) {\n return true;\n }\n\n await this.keychain.switchChain(this.rpcUrl());\n } catch (e) {\n console.error(e);\n return false;\n }\n\n this.emitNetworkChanged(chainId);\n return true;\n }\n\n addStarknetChain(_chain: AddStarknetChainParameters): Promise<boolean> {\n return Promise.resolve(true);\n }\n\n async disconnect() {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n if (!!document.hasStorageAccess) {\n const ok = await document.hasStorageAccess();\n if (!ok) {\n await document.requestStorageAccess();\n }\n }\n\n this.account = undefined;\n return this.keychain.disconnect();\n }\n\n async openProfile(tab: ProfileContextTypeVariant = \"inventory\") {\n if (!this.profile || !this.iframes.profile?.url) {\n console.error(\"Profile is not ready\");\n return;\n }\n if (!this.account) {\n console.error(\"Account is not ready\");\n return;\n }\n\n this.profile.navigate(`${this.iframes.profile.url?.pathname}/${tab}`);\n this.iframes.profile.open();\n }\n\n async openProfileTo(to: string) {\n if (!this.profile || !this.iframes.profile?.url) {\n console.error(\"Profile is not ready\");\n return;\n }\n if (!this.account) {\n console.error(\"Account is not ready\");\n return;\n }\n\n this.profile.navigate(`${this.iframes.profile.url?.pathname}/${to}`);\n this.iframes.profile.open();\n }\n\n async openProfileAt(at: string) {\n if (!this.profile || !this.iframes.profile?.url) {\n console.error(\"Profile is not ready\");\n return;\n }\n if (!this.account) {\n console.error(\"Account is not ready\");\n return;\n }\n\n this.profile.navigate(at);\n this.iframes.profile.open();\n }\n\n async openSettings() {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return null;\n }\n if (this.iframes.profile?.sendBackward) {\n this.iframes.profile?.sendBackward();\n } else {\n this.iframes.profile?.close();\n }\n this.iframes.keychain.open();\n const res = await this.keychain.openSettings();\n this.iframes.keychain.close();\n this.iframes.profile?.sendForward?.();\n if (res && (res as ConnectError).code === ResponseCodes.NOT_CONNECTED) {\n return false;\n }\n return true;\n }\n\n revoke(origin: string, _policy: Policy[]) {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return null;\n }\n\n return this.keychain.revoke(origin);\n }\n\n rpcUrl(): string {\n return this.chains.get(this.selectedChain)!.rpcUrl;\n }\n\n username() {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n\n return this.keychain.username();\n }\n\n openPurchaseCredits() {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n if (!this.iframes.profile) {\n console.error(\"Profile is not ready\");\n return;\n }\n this.iframes.profile.close();\n this.iframes.keychain.open();\n this.keychain.openPurchaseCredits();\n }\n\n async openExecute(calls: any, chainId?: string) {\n if (!this.keychain || !this.iframes.keychain) {\n console.error(new NotReadyToConnect().message);\n return;\n }\n if (!this.iframes.profile) {\n console.error(\"Profile is not ready\");\n return;\n }\n // Switch to the chain if provided\n let currentChainId = this.selectedChain;\n if (chainId) {\n this.switchStarknetChain(chainId);\n }\n // Switch iframes\n this.iframes.profile?.sendBackward();\n this.iframes.keychain.open();\n this.iframes.profile?.close();\n // Invoke execute\n const res = await this.keychain.execute(calls, undefined, undefined, true);\n // Switch back iframes\n this.iframes.profile?.open();\n this.iframes.keychain.close();\n this.iframes.profile?.sendForward();\n // Switch back to the original chain\n if (chainId) {\n this.switchStarknetChain(currentChainId);\n }\n return !(\n res &&\n ((res as ConnectError).code === ResponseCodes.NOT_CONNECTED ||\n (res as ConnectError).code === ResponseCodes.CANCELED)\n );\n }\n\n async delegateAccount() {\n if (!this.keychain) {\n console.error(new NotReadyToConnect().message);\n return null;\n }\n\n return await this.keychain.delegateAccount();\n }\n\n private waitForKeychain({\n timeout = 50000,\n interval = 100,\n }:\n | {\n timeout?: number;\n interval?: number;\n }\n | undefined = {}) {\n return new Promise<void>((resolve, reject) => {\n const startTime = Date.now();\n const id = setInterval(() => {\n if (Date.now() - startTime > timeout) {\n clearInterval(id);\n reject(new Error(\"Timeout waiting for keychain\"));\n return;\n }\n\n if (!this.keychain) return;\n\n clearInterval(id);\n resolve();\n }, interval);\n });\n }\n}\n","import { LookupRequest, LookupResponse } from \"./types\";\nimport { num } from \"starknet\";\nimport { API_URL } from \"./constants\";\n\nconst cache = new Map<string, string>();\n\nasync function lookup(request: LookupRequest): Promise<LookupResponse> {\n if (!request.addresses?.length && !request.usernames?.length) {\n return { results: [] };\n }\n\n const response = await fetch(`${API_URL}/lookup`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(request),\n });\n\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n\n return response.json();\n}\n\nexport async function lookupUsernames(\n usernames: string[],\n): Promise<Map<string, string>> {\n const uncachedUsernames = usernames.filter((name) => !cache.has(name));\n\n if (uncachedUsernames.length > 0) {\n const response = await lookup({ usernames: uncachedUsernames });\n\n response.results.forEach((result) => {\n cache.set(result.username, result.addresses[0]); // TODO: handle multiple controller addresses\n });\n }\n\n return new Map(\n usernames\n .map((name) => [name, cache.get(name)] as [string, string])\n .filter((entry): entry is [string, string] => entry[1] !== undefined),\n );\n}\n\nexport async function lookupAddresses(\n addresses: string[],\n): Promise<Map<string, string>> {\n addresses = addresses.map(num.toHex);\n const uncachedAddresses = addresses.filter((addr) => !cache.has(addr));\n\n if (uncachedAddresses.length > 0) {\n const response = await lookup({\n addresses: uncachedAddresses,\n });\n\n response.results.forEach((result) => {\n cache.set(result.addresses[0], result.username); // TODO: handle multiple controller addresses\n });\n }\n\n return new Map(\n addresses\n .map((addr) => [addr, cache.get(addr)] as [string, string])\n .filter((entry): entry is [string, string] => entry[1] !== undefined),\n );\n}\n","// This file is auto-generated. DO NOT EDIT IT MANUALLY.\nimport { ControllerConfigs } from \"../\";\n\nexport const configs: ControllerConfigs = {\n \"blob-arena\": {\n origin: \"blobarena.xyz\",\n theme: {\n colors: {\n primary: \"#980f06\",\n },\n cover: \"https://static.cartridge.gg/presets/blob-arena/cover.png\",\n icon: \"https://static.cartridge.gg/presets/blob-arena/icon.png\",\n name: \"Blob Arena\",\n },\n },\n cartridge: {\n origin: \"*\",\n theme: {\n name: \"Cartridge\",\n icon: \"https://static.cartridge.gg/presets/cartridge/icon.svg\",\n cover: {\n light: \"https://static.cartridge.gg/presets/cartridge/cover-light.png\",\n dark: \"https://static.cartridge.gg/presets/cartridge/cover-dark.png\",\n },\n },\n },\n \"dark-shuffle\": {\n origin: \"darkshuffle.io\",\n theme: {\n colors: {\n primary: \"#F59100\",\n },\n cover: \"https://static.cartridge.gg/presets/dark-shuffle/cover.png\",\n icon: \"https://static.cartridge.gg/presets/dark-shuffle/icon.svg\",\n name: \"Dark Shuffle\",\n },\n },\n \"dope-wars\": {\n origin: \"dopewars.game\",\n policies: {\n contracts: {\n \"0x051Fea4450Da9D6aeE758BDEbA88B2f665bCbf549D2C61421AA724E9AC0Ced8F\": {\n name: \"VRF Provider\",\n description: \"Provides verifiable random functions\",\n methods: [\n {\n name: \"Request Random\",\n description: \"Request a random number\",\n entrypoint: \"request_random\",\n },\n ],\n },\n \"0x0410466536b5ae074f7fea81e5533b8134a9fa08b3dd077dd9db08f64997d113\": {\n name: \"Paper Token\",\n description: \"Manages paper approvals\",\n methods: [\n {\n name: \"Approve\",\n description: \"Approve paper usage\",\n entrypoint: \"approve\",\n },\n ],\n },\n \"0x044a23BbfE03FFe90D3C23Fb6e5A8AD0341036C039363DfA6F3513278Aa51fCA\": {\n name: \"Game Contract\",\n description: \"Core game mechanics\",\n methods: [\n {\n name: \"Create Game\",\n description: \"Start a new game\",\n entrypoint: \"create_game\",\n },\n {\n name: \"Travel\",\n description: \"Travel to a new location\",\n entrypoint: \"travel\",\n },\n {\n name: \"Decide\",\n description: \"Make a game decision\",\n entrypoint: \"decide\",\n },\n {\n name: \"End Game\",\n description: \"End the current game\",\n entrypoint: \"end_game\",\n },\n ],\n },\n \"0x0412445e644070C69fEa16b964cC81Cd6dEBF6A4DBf683E2E9686a45ad088de8\": {\n name: \"Laundromat Contract\",\n description: \"Manages game scoring and laundering\",\n methods: [\n {\n name: \"Register Score\",\n description: \"Register a game score\",\n entrypoint: \"register_score\",\n },\n {\n name: \"Claim\",\n description: \"Claim rewards\",\n entrypoint: \"claim\",\n },\n {\n name: \"Launder\",\n description: \"Launder resources\",\n entrypoint: \"launder\",\n },\n ],\n },\n },\n },\n theme: {\n colors: {\n primary: \"#11ED83\",\n },\n cover: \"https://static.cartridge.gg/presets/dope-wars/cover.png\",\n icon: \"https://static.cartridge.gg/presets/dope-wars/icon.png\",\n name: \"Dope Wars\",\n },\n },\n dragark: {\n origin: \"dragark.net\",\n theme: {\n colors: {\n primary: \"#71EB34\",\n },\n cover: \"https://static.cartridge.gg/presets/dragark/cover.png\",\n icon: \"https://static.cartridge.gg/presets/dragark/icon.png\",\n name: \"Dragark\",\n },\n },\n eternum: {\n origin: [\"eternum.realms.world\", \"empire.realms.world\"],\n policies: {\n contracts: {\n \"0x4ed3a7c5f53c6e96186eaf1b670bd2e2a3699c08e070aedf4e5fc6ac246ddc1\": {\n name: \"Pillage\",\n description: \"Allows you to raid a structure and pillage resources\",\n methods: [\n {\n name: \"Battle Pillage\",\n description: \"Pillage a structure\",\n entrypoint: \"battle_pillage\",\n },\n ],\n },\n \"0x2620f65aa2fd72d705306ada1ee7410023a3df03da9291f1ccb744fabfebc0\": {\n name: \"Battle contract\",\n description: \"Required to engage in battles\",\n methods: [\n {\n name: \"Battle Start\",\n description: \"Start a battle\",\n entrypoint: \"battle_start\",\n },\n {\n name: \"Battle Force Start\",\n description: \"Force start a battle\",\n entrypoint: \"battle_force_start\",\n },\n {\n name: \"Battle Join\",\n description: \"Join a battle\",\n entrypoint: \"battle_join\",\n },\n {\n name: \"Battle Leave\",\n description: \"Leave a battle\",\n entrypoint: \"battle_leave\",\n },\n {\n name: \"Battle Claim\",\n description: \"Claim a structure after a battle\",\n entrypoint: \"battle_claim\",\n },\n {\n name: \"Battle Resolve\",\n description: \"Reopens the bank after battle\",\n entrypoint: \"battle_resolve\",\n },\n ],\n },\n \"0x6bf57710571fd159e71b1ed155bb0759027e416c88a06556f321c94c214e768\": {\n name: \"Leave battle contract\",\n description: \"Allows armies to leave a battle\",\n methods: [\n {\n name: \"Leave Battle\",\n description: \"Leave a battle\",\n entrypoint: \"leave_battle\",\n },\n {\n name: \"Leave Battle If Ended\",\n description: \"Leave a battle if its ended\",\n entrypoint: \"leave_battle_if_ended\",\n },\n ],\n },\n \"0x4b6a35c0c541467674ebb9640113a6d79c6f5a468796e9299b8e484a770032a\": {\n name: \"Building contract\",\n description: \"Allows to manage buildings\",\n methods: [\n {\n name: \"Create\",\n description: \"Create a building\",\n entrypoint: \"create\",\n },\n {\n name: \"Pause Production\",\n description: \"Pause the production of a building\",\n entrypoint: \"pause_production\",\n },\n {\n name: \"Resume Production\",\n description: \"Resume production of a building\",\n entrypoint: \"resume_production\",\n },\n {\n name: \"Destroy a building\",\n description: \"Destroy a building\",\n entrypoint: \"destroy\",\n },\n ],\n },\n \"0x57d514154bb4dc319539d4e338312a41c248fb6a5122f82b2f2e11ddd3e67e4\": {\n name: \"Guild contract\",\n description: \"Allows guild utilities\",\n methods: [\n {\n name: \"Create Guild\",\n description: \"Creates a new guild\",\n entrypoint: \"create_guild\",\n },\n {\n name: \"Join Guild\",\n description: \"Join an existing guild\",\n entrypoint: \"join_guild\",\n },\n {\n name: \"Whitelist Player\",\n description: \"Add a player to the guild's whitelist\",\n entrypoint: \"whitelist_player\",\n },\n {\n name: \"Transfer Guild Ownership\",\n description: \"Transfer ownership of the guild to another player\",\n entrypoint: \"transfer_guild_ownership\",\n },\n {\n name: \"Remove Guild Member\",\n description: \"Remove a member from the guild\",\n entrypoint: \"remove_guild_member\",\n },\n {\n name: \"Remove Player From Whitelist\",\n description: \"Remove a player from the guild's whitelist\",\n entrypoint: \"remove_player_from_whitelist\",\n },\n ],\n },\n \"0x2fcc3c1691387321c2f4d6310eda7a14365bd274c1a37ed3948d2e93a56f821\": {\n name: \"Hyperstructure contract\",\n description: \"Handles the creation and management of hyperstructures\",\n methods: [\n {\n name: \"Get Points\",\n description: \"Gets your total number of points\",\n entrypoint: \"get_points\",\n },\n {\n name: \"Create\",\n description: \"Create a new hyperstructure\",\n entrypoint: \"create\",\n },\n {\n name: \"Contribute To Construction\",\n description:\n \"Contribute resources to hyperstructure construction\",\n entrypoint: \"contribute_to_construction\",\n },\n {\n name: \"Set Co Owners\",\n description: \"Set additional owners for the hyperstructure\",\n entrypoint: \"set_co_owners\",\n },\n {\n name: \"End Game\",\n description:\n \"Terminates the current game season once you've reached enough points\",\n entrypoint: \"end_game\",\n },\n {\n name: \"Set Access\",\n description:\n \"Configure access permissions for contributions to the hyperstructure\",\n entrypoint: \"set_access\",\n },\n ],\n },\n \"0xa052c5ca082356bcc8457f0f805eaf18f97d0fdddde3f90f5b238923859ed4\": {\n name: \"AMM liquidity contract\",\n description: \"Manages liquidity for the Automated Market Maker\",\n methods: [\n {\n name: \"Add\",\n description: \"Add liquidity to the pool\",\n entrypoint: \"add\",\n },\n {\n name: \"Remove\",\n description: \"Remove liquidity from the pool\",\n entrypoint: \"remove\",\n },\n ],\n },\n \"0x4a212c52c4035bc9bd170125216604f406dcd75b41be11d3b4d89047366d84d\": {\n name: \"Exploration contract\",\n description: \"Allows you to move to unexplored hexes on the map\",\n methods: [\n {\n name: \"Explore\",\n description: \"Explore an uncharted hex on the game map\",\n entrypoint: \"explore\",\n },\n ],\n },\n \"0x7e3bae0e253a0131063b63ee4d7b27b50329c617ae88b82d529a70f1a11c63\": {\n name: \"Naming contract\",\n description: \"Manages entity naming in the game\",\n methods: [\n {\n name: \"Set Entity Name\",\n description: \"Assign a custom name to a game entity\",\n entrypoint: \"set_entity_name\",\n },\n {\n name: \"Set Address Name\",\n description: \"Assign a custom name to a user's address\",\n entrypoint: \"set_address_name\",\n },\n ],\n },\n \"0x1b480f620ea35431ab43dba634795b14f547ef3e77370db6f0a31f2fdc21d86\": {\n name: \"Realms contract\",\n description: \"Manages realm-related actions\",\n methods: [\n {\n name: \"Create a realm\",\n description: \"Create a new realm\",\n entrypoint: \"create\",\n },\n {\n name: \"Upgrade Level\",\n description: \"Upgrade the level of a realm\",\n entrypoint: \"upgrade_level\",\n },\n {\n name: \"Quest Claim\",\n description: \"Claim rewards from completed quests\",\n entrypoint: \"quest_claim\",\n },\n ],\n },\n \"0x691a60b709ca5c1c5ff86824831f84deb26f0f5d07d70c0f807eab48110d2f6\": {\n name: \"Resource bridge contract\",\n description: \"Manages bridge transfers between L2 and Eternum\",\n methods: [\n {\n name: \"Deposit Initial\",\n description: \"Initial deposit of resources for bridge transfer\",\n entrypoint: \"deposit_initial\",\n },\n {\n name: \"Deposit\",\n description: \"Deposit additional resources for bridge transfer\",\n entrypoint: \"deposit\",\n },\n {\n name: \"Start Withdraw\",\n description: \"Initiate a withdrawal process\",\n entrypoint: \"start_withdraw\",\n },\n {\n name: \"Finish Withdraw\",\n description: \"Finalize a withdrawal process\",\n entrypoint: \"finish_withdraw\",\n },\n ],\n },\n \"0x42c0303a2119a9e20daa60e83c48221cdf1bb2a4c009bab031d1cd3555a127e\": {\n name: \"Resource contract\",\n description: \"In-game resource management\",\n methods: [\n {\n name: \"Approve\",\n description: \"Approve resource transfer\",\n entrypoint: \"approve\",\n },\n {\n name: \"Send\",\n description: \"Send resources to another entity\",\n entrypoint: \"send\",\n },\n {\n name: \"Pickup\",\n description: \"Collect available resources after approval\",\n entrypoint: \"pickup\",\n },\n ],\n },\n \"0x4f92a1d00d3aec8cece60fc2d0fc236fe1d95c54ff0ceb2f393fbc7e0863d8e\": {\n name: \"AMM swap contract\",\n description: \"Handles token swaps in the Automated Market Maker\",\n methods: [\n {\n name: \"Buy\",\n description: \"Purchase tokens from the liquidity pool\",\n entrypoint: \"buy\",\n },\n {\n name: \"Sell\",\n description: \"Sell tokens to the liquidity pool\",\n entrypoint: \"sell\",\n },\n ],\n },\n \"0x7e2b1334398fafbe640f34bacae99b649d633417960ee397b6a8fb117fec819\": {\n name: \"Market contract\",\n description: \"Manages trading orders in the in-game market\",\n methods: [\n {\n name: \"Create Order\",\n description: \"Create a new trading order\",\n entrypoint: \"create_order\",\n },\n {\n name: \"Accept Order\",\n description: \"Accept a trading order\",\n entrypoint: \"accept_order\",\n },\n {\n name: \"Accept Partial Order\",\n description: \"Accept a partial trading order\",\n entrypoint: \"accept_partial_order\",\n },\n {\n name: \"Cancel Order\",\n description: \"Cancel a trading order\",\n entrypoint: \"cancel_order\",\n },\n ],\n },\n \"0x4069c2be57f08fef9f31afc85a5b4c03c208ebdb278b9d853606caa7a9cbee6\": {\n name: \"Map travel contract\",\n description: \"Manages player movement across the game map\",\n methods: [\n {\n name: \"Travel Hex\",\n description: \"Move to a specific hex on the map\",\n entrypoint: \"travel_hex\",\n },\n ],\n },\n \"0x26be0ed574aa9ee6f73b53b12f0a199ddbf4ac697470316cdb3d9d1f5680cab\": {\n name: \"Army contract\",\n description: \"Manages army-related actions\",\n methods: [\n {\n name: \"Army Create\",\n description: \"Create a new army\",\n entrypoint: \"army_create\",\n },\n {\n name: \"Army Delete\",\n description: \"Delete an existing army\",\n entrypoint: \"army_delete\",\n },\n {\n name: \"Army Buy Troops\",\n description: \"Buy troops for an army\",\n entrypoint: \"army_buy_troops\",\n },\n {\n name: \"Army Merge Troops\",\n description: \"Merge troops from multiple armies\",\n entrypoint: \"army_merge_troops\",\n },\n ],\n },\n \"0x051fea4450da9d6aee758bdeba88b2f665bcbf549d2c61421aa724e9ac0ced8f\": {\n name: \"VRF Provider\",\n description:\n \"Verifiable Random Function contract, allows randomness in the game\",\n methods: [\n {\n name: \"Request Random\",\n description:\n \"Allows requesting random numbers from the VRF provider\",\n entrypoint: \"request_random\",\n },\n ],\n },\n \"0x057675b9c0bd62b096a2e15502a37b290fa766ead21c33eda42993e48a714b80\": {\n name: \"Season pass ERC20 contract\",\n description: \"Manages the season passes\",\n methods: [\n {\n name: \"Approve for all\",\n description: \"Approves transfer of season pass\",\n entrypoint: \"set_approval_for_all\",\n },\n ],\n },\n \"0x4b5e65a9617c7ba3c7ea64324ff4338a400adb1a3cfe903b3f8b647cbb59fb7\": {\n name: \"Season Systems\",\n description: \"Register and claim\",\n methods: [\n {\n name: \"Register\",\n description: \"Registers to leaderboard\",\n entrypoint: \"register_to_leaderboard\",\n },\n {\n name: \"Claim\",\n description: \"Claim\",\n entrypoint: \"claim_leaderboard_rewards\",\n },\n ],\n },\n },\n messages: [\n {\n types: {\n StarknetDomain: [\n {\n name: \"name\",\n type: \"shortstring\",\n },\n {\n name: \"version\",\n type: \"shortstring\",\n },\n {\n name: \"chainId\",\n type: \"shortstring\",\n },\n {\n name: \"revision\",\n type: \"shortstring\",\n },\n ],\n \"s0_eternum-Message\": [\n {\n name: \"identity\",\n type: \"ContractAddress\",\n },\n {\n name: \"channel\",\n type: \"shortstring\",\n },\n {\n name: \"content\",\n type: \"string\",\n },\n {\n name: \"timestamp\",\n type: \"felt\",\n },\n {\n name: \"salt\",\n type: \"felt\",\n },\n ],\n },\n primaryType: \"s0_eternum-Message\",\n domain: {\n name: \"Eternum\",\n version: \"1\",\n chainId: \"SN_MAIN\",\n revision: \"1\",\n },\n },\n ],\n },\n theme: {\n name: \"Eternum\",\n icon: \"https://static.cartridge.gg/presets/eternum/icon.svg\",\n cover: \"https://static.cartridge.gg/presets/eternum/cover.png\",\n colors: {\n primary: \"#dc8b07\",\n },\n },\n },\n flippyflop: {\n origin: \"flippyflop.gg\",\n theme: {\n colors: {\n primary: \"#F38332\",\n },\n cover: \"https://static.cartridge.gg/presets/flippyflop/cover.png\",\n icon: \"https://static.cartridge.gg/presets/flippyflop/icon.png\",\n name: \"FlippyFlop\",\n },\n },\n \"force-prime\": {\n origin: \"forceprime.io\",\n theme: {\n colors: {\n primary: \"#E1CC89\",\n },\n cover: \"https://static.cartridge.gg/presets/force-prime/cover.png\",\n icon: \"https://static.cartridge.gg/presets/force-prime/icon.png\",\n name: \"Force Prime\",\n },\n },\n \"jokers-of-neon\": {\n origin: \"jokersofneon.com\",\n theme: {\n colors: {\n primary: \"#A144B2\",\n },\n cover: \"https://static.cartridge.gg/presets/jokers-of-neon/cover.png\",\n icon: \"https://static.cartridge.gg/presets/jokers-of-neon/icon.png\",\n name: \"Jokers of Neon\",\n },\n },\n \"loot-survivor\": {\n origin: \"lootsurvivor.io\",\n policies: {\n contracts: {\n \"0x0305f26ad19e0a10715d9f3137573d3a543de7b707967cd85d11234d6ec0fb7e\": {\n methods: [\n {\n entrypoint: \"attack\",\n },\n {\n entrypoint: \"drop\",\n },\n {\n entrypoint: \"equip\",\n },\n {\n entrypoint: \"explore\",\n },\n {\n entrypoint: \"flee\",\n },\n {\n entrypoint: \"new_game\",\n },\n {\n entrypoint: \"transfer_from\",\n },\n {\n entrypoint: \"upgrade\",\n },\n ],\n },\n \"0x3347382d530ff6acb9283ac1d78471187aae8a4690e9316bb4e3c3365ff7a86\": {\n methods: [\n {\n entrypoint: \"enter_tournament\",\n },\n {\n entrypoint: \"start_tournament\",\n },\n ],\n },\n },\n },\n theme: {\n colors: {\n primary: \"#33FF33\",\n },\n cover: \"https://static.cartridge.gg/presets/loot-survivor/cover.png\",\n icon: \"https://static.cartridge.gg/presets/loot-survivor/icon.png\",\n name: \"Loot Survivor\",\n },\n },\n paved: {\n origin: \"paved.gg\",\n theme: {\n colors: {\n primary: \"#B0CAF8\",\n },\n cover: \"https://static.cartridge.gg/presets/paved/cover.png\",\n icon: \"https://static.cartridge.gg/presets/paved/icon.svg\",\n name: \"Paved\",\n },\n },\n pistols: {\n origin: \"pistols.underware.gg\",\n theme: {\n colors: {\n primary: \"#EF9758\",\n },\n cover: \"https://static.cartridge.gg/presets/pistols/cover.png\",\n icon: \"https://static.cartridge.gg/presets/pistols/icon.png\",\n name: \"Pistols at Ten Blocks\",\n },\n },\n pixelaw: {\n origin: \"dojo.pixelaw.xyz\",\n theme: {\n colors: {\n primary: \"#7C00B1\",\n primaryForeground: \"white\",\n },\n cover: \"https://static.cartridge.gg/presets/pixelaw/cover.png\",\n icon: \"https://static.cartridge.gg/presets/pixelaw/icon.svg\",\n name: \"Pixelaw\",\n },\n },\n \"realm-of-ra\": {\n origin: \"mancala.realmofra.com\",\n theme: {\n colors: {\n primary: \"#de9534\",\n },\n cover: \"https://static.cartridge.gg/presets/realm-of-ra/cover.png\",\n icon: \"https://static.cartridge.gg/presets/realm-of-ra/icon.png\",\n name: \"Realm of Ra\",\n },\n },\n \"savage-summit\": {\n origin: \"savagesummit.io\",\n theme: {\n colors: {\n primary: \"#fbf7da\",\n },\n cover: \"https://static.cartridge.gg/presets/savage-summit/cover.png\",\n icon: \"https://static.cartridge.gg/presets/savage-summit/icon.png\",\n name: \"Savage Summit\",\n },\n },\n \"tale-weaver\": {\n origin: \"\",\n theme: {\n colors: {\n primary: \"#fce377\",\n },\n cover: \"https://static.cartridge.gg/presets/tale-weaver/cover.png\",\n icon: \"https://static.cartridge.gg/presets/tale-weaver/icon.png\",\n name: \"Tale Weaver\",\n },\n },\n zkastle: {\n origin: \"zkastle.vercel.app\",\n theme: {\n colors: {\n primary: \"#E50D2C\",\n },\n cover: \"https://static.cartridge.gg/presets/zkastle/cover.png\",\n icon: \"https://static.cartridge.gg/presets/zkastle/icon.svg\",\n name: \"zKastle\",\n },\n },\n zktt: {\n origin: \"zktable.top\",\n theme: {\n colors: {\n primary: \"#FFFFFF\",\n },\n cover: \"https://static.cartridge.gg/presets/zktt/cover.png\",\n icon: \"https://static.cartridge.gg/presets/zktt/icon.png\",\n name: \"zKTT\",\n },\n },\n zkube: {\n origin: \"app.zkube.xyz\",\n theme: {\n colors: {\n primary: \"#5bc3e6\",\n },\n cover: \"https://static.cartridge.gg/presets/zkube/cover.png\",\n icon: \"https://static.cartridge.gg/presets/zkube/icon.png\",\n name: \"zKube\",\n },\n },\n};\n","// This file is auto-generated. DO NOT EDIT IT MANUALLY.\nimport { EkuboERC20Metadata } from \"../\";\n\nexport const metadata: EkuboERC20Metadata[] = [\n {\n name: \"Wrapped BTC\",\n symbol: \"WBTC\",\n decimals: 8,\n l2_token_address:\n \"0x03fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac\",\n sort_order: 0,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/7dcb2db2-a7a7-44af-660b-8262e057a100/logo\",\n },\n {\n name: \"USD Coin\",\n symbol: \"USDC\",\n decimals: 6,\n l2_token_address:\n \"0x053c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8\",\n sort_order: 5,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/e5aaa970-a998-47e8-bd43-4a3b56b87200/logo\",\n },\n {\n name: \"Tether USD\",\n symbol: \"USDT\",\n decimals: 6,\n l2_token_address:\n \"0x068f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8\",\n sort_order: 4,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c8a721d1-07c3-46e4-ab4e-523977c30b00/logo\",\n },\n {\n name: \"Ether\",\n symbol: \"ETH\",\n decimals: 18,\n l2_token_address:\n \"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7\",\n sort_order: 3,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/e07829b7-0382-4e03-7ecd-a478c5aa9f00/logo\",\n },\n {\n name: \"Dai Stablecoin\",\n symbol: \"DAI\",\n decimals: 18,\n l2_token_address:\n \"0x05574eb6b8789a91466f902c380d978e472db68170ff82a5b650b95a58ddf4ad\",\n sort_order: 4,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/919e761b-56f7-4f53-32aa-5e066f7f6200/logo\",\n },\n {\n name: \"Wrapped liquid staked Ether 2.0\",\n symbol: \"wstETH\",\n decimals: 18,\n l2_token_address:\n \"0x042b8f0484674ca266ac5d08e4ac6a3fe65bd3129795def2dca5c34ecc5f96d2\",\n sort_order: 1,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/dbbcbdea-1a92-437d-3701-4a5ee129d000/logo\",\n },\n {\n name: \"Rocket Pool ETH\",\n symbol: \"rETH\",\n decimals: 18,\n l2_token_address:\n \"0x0319111a5037cbec2b3e638cc34a3474e2d2608299f3e62866e9cc683208c610\",\n sort_order: 1,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/c9f2d6fe-fbc6-4384-0990-923dfcb7a200/logo\",\n },\n {\n name: \"Paper\",\n symbol: \"PAPER\",\n decimals: 18,\n l2_token_address:\n \"0x0410466536b5ae074f7fea81e5533b8134a9fa08b3dd077dd9db08f64997d113\",\n sort_order: 1,\n total_supply: null,\n hidden: true,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/811f019a-0461-4cff-6c1e-442102863f00/logo\",\n },\n {\n name: \"Uniswap\",\n symbol: \"UNI\",\n decimals: 18,\n l2_token_address:\n \"0x049210ffc442172463f3177147c1aeaa36c51d152c1b0630f2364c300d4f48ee\",\n sort_order: 1,\n total_supply: 1000000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/361b018e-bd53-4019-27c8-7cf8d9031b00/logo\",\n },\n {\n name: \"Starknet\",\n symbol: \"STRK\",\n decimals: 18,\n l2_token_address:\n \"0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d\",\n sort_order: 2,\n total_supply: 10000000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/1b126320-367c-48ed-cf5a-ba7580e49600/logo\",\n },\n {\n name: \"Ekubo Protocol\",\n symbol: \"EKUBO\",\n decimals: 18,\n l2_token_address:\n \"0x075afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87\",\n sort_order: 1,\n total_supply: 10000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/634d9c36-2f0b-4781-93e6-72d701b5af00/logo\",\n },\n {\n name: \"Nostra\",\n symbol: \"NSTR\",\n decimals: 18,\n l2_token_address:\n \"0x00c530f2c0aa4c16a0806365b0898499fba372e5df7a7172dc6fe9ba777e8007\",\n sort_order: 1,\n total_supply: 100000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/a45c2224-17a7-4269-ea7e-3924e9755800/logo\",\n },\n {\n name: \"Carmine\",\n symbol: \"CRM\",\n decimals: 18,\n l2_token_address:\n \"0x51c4b1fe3bf6774b87ad0b15ef5d1472759076e42944fff9b9f641ff13e5bbe\",\n sort_order: 1,\n total_supply: 100000000,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/6ab817f1-8075-4a94-6e14-f112f1f89d00/logo\",\n },\n {\n name: \"Cash\",\n symbol: \"CASH\",\n decimals: 18,\n l2_token_address:\n \"0x498edfaf50ca5855666a700c25dd629d577eb9afccdf3b5977aec79aee55ada\",\n sort_order: 3,\n total_supply: null,\n logo_url:\n \"https://imagedelivery.net/0xPAQaDtnQhBs8IzYRIlNg/6bd6d156-f509-4b51-5dfc-3ee566143600/logo\",\n },\n {\n name: \"Lords\",\n symbol: \"LORDS\",\n decimals: 18,\n l2_token_address:\n \"0x0124aeb495b947201f5fac96fd1138e326ad86195b98df6dec9009158a533b49\",\n sort_order: 1,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/coin.png\",\n },\n {\n name: \"Ancien Fragments\",\n symbol: \"ANCIENT_FRAGMENT\",\n decimals: 18,\n l2_token_address:\n \"0x0695b08ecdfdd828c2e6267da62f59e6d7543e690ef56a484df25c8566b332a5\",\n sort_order: 2,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/29.png\",\n },\n {\n name: \"Knight\",\n symbol: \"KNIGHT\",\n decimals: 18,\n l2_token_address:\n \"0x00ac965f9e67164723c16735a9da8dbc9eb8e43b1bd0323591e87c056badf606\",\n sort_order: 3,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/icons/250.png\",\n },\n {\n name: \"Crossbowman\",\n symbol: \"CROSSBOWMAN\",\n decimals: 18,\n l2_token_address:\n \"0x067e4ac00a241be06ba6afc11fa2715ec7da0c42c05a67ef6ecfcfeda725aaa8\",\n sort_order: 4,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/icons/251.png\",\n },\n {\n name: \"Paladin\",\n symbol: \"PALADIN\",\n decimals: 18,\n l2_token_address:\n \"0x03bc86299bee061c7c8d7546ccb62b9daf9bffc653b1508facb722c6593874bc\",\n sort_order: 5,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/icons/252.png\",\n },\n {\n name: \"Donkey\",\n symbol: \"DONKEY\",\n decimals: 18,\n l2_token_address:\n \"0x0264be95a4a2ace20add68cb321acdccd2f9f8440ee1c7abd85da44ddab01085\",\n sort_order: 6,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/buildings/thumb/trade.png\",\n },\n {\n name: \"Wheat\",\n symbol: \"WHEAT\",\n decimals: 18,\n l2_token_address:\n \"0x057a3f1ee475e072ce3be41785c0e889b7295d7a0dcc22b992c5b9408dbeb280\",\n sort_order: 7,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/254.png\",\n },\n {\n name: \"Fish\",\n symbol: \"FISH\",\n decimals: 18,\n l2_token_address:\n \"0x027719173cfe10f1aa38d2aaed0a075b6077290f1e817aa3485d2b828394f4d9\",\n sort_order: 8,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/255.png\",\n },\n {\n name: \"Wood\",\n symbol: \"WOOD\",\n decimals: 18,\n l2_token_address:\n \"0x040d8907cec0f7ae9c364dfb12485a1314d84c129bf1898d2f3d4b7fcc7d44f4\",\n sort_order: 9,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/1.png\",\n },\n {\n name: \"Stone\",\n symbol: \"STONE\",\n decimals: 18,\n l2_token_address:\n \"0x0439a1c010e3e1bb2d43d43411000893c0042bd88f6c701611a0ea914d426da4\",\n sort_order: 10,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/2.png\",\n },\n {\n name: \"Coal\",\n symbol: \"COAL\",\n decimals: 18,\n l2_token_address:\n \"0x00ce635e3f241b0ae78c46a929d84a9101910188f9c4024eaa7559556503c31a\",\n sort_order: 11,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/3.png\",\n },\n {\n name: \"Copper\",\n symbol: \"COPPER\",\n decimals: 18,\n l2_token_address:\n \"0x066ed5c928ee027a9419ace1cbea8389885161db5572a7c5c4fef2310e9bf494\",\n sort_order: 12,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/4.png\",\n },\n {\n name: \"Obsidian\",\n symbol: \"OBSIDIAN\",\n decimals: 18,\n l2_token_address:\n \"0x03b6448d09dcd023507376402686261f5d6739455fa02f804907b066e488da66\",\n sort_order: 13,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/5.png\",\n },\n {\n name: \"Silver\",\n symbol: \"SILVER\",\n decimals: 18,\n l2_token_address:\n \"0x06fe21d2d4a8a05bdb70f09c9250af9870020d5dcc35f410b4a39d6605c3e353\",\n sort_order: 14,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/6.png\",\n },\n {\n name: \"Ironwood\",\n symbol: \"IRONWOOD\",\n decimals: 18,\n l2_token_address:\n \"0x01720cf6318bff45e62acc588680ae3cd4d5f8465b1d52cb710533c9299b031a\",\n sort_order: 15,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/7.png\",\n },\n {\n name: \"Cold Iron\",\n symbol: \"COLDIRON\",\n decimals: 18,\n l2_token_address:\n \"0x0555d713e59d4ff96b7960447e9bc9e79bfdeab5b0eea74e3df81bce61cfbc77\",\n sort_order: 16,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/8.png\",\n },\n {\n name: \"Gold\",\n symbol: \"GOLD\",\n decimals: 18,\n l2_token_address:\n \"0x000dff9dca192609c4e86ab3be22c7ec1e968876c992d21986f3c542be97fa2f\",\n sort_order: 17,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/9.png\",\n },\n {\n name: \"Hartwood\",\n symbol: \"HARTWOOD\",\n decimals: 18,\n l2_token_address:\n \"0x05620aa7170cd66dbcbc37d03087bfe4633ffef91d3e4d97b501de906004f79b\",\n sort_order: 18,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/10.png\",\n },\n {\n name: \"Diamonds\",\n symbol: \"DIAMONDS\",\n decimals: 18,\n l2_token_address:\n \"0x00e03ea8ae385f64754820af5c01c36abf1b8130dd6797d3fd9d430e4114e876\",\n sort_order: 19,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/11.png\",\n },\n {\n name: \"Sapphire\",\n symbol: \"SAPPHIRE\",\n decimals: 18,\n l2_token_address:\n \"0x02f8dd022568af8f9f718aa37707a9b858529db56910633a160456838b6cbcbc\",\n sort_order: 20,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/12.png\",\n },\n {\n name: \"Ruby\",\n symbol: \"RUBY\",\n decimals: 18,\n l2_token_address:\n \"0x03d9b66720959d0e7687b898292c10e62e78626f2dba5e1909961a2ce3f86612\",\n sort_order: 21,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/13.png\",\n },\n {\n name: \"Deep Crystal\",\n symbol: \"DEEPCRYSTAL\",\n decimals: 18,\n l2_token_address:\n \"0x01d655ac834d38df7921074fc1588411e202b1af83307cbd996983aff52db3a8\",\n sort_order: 22,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/14.png\",\n },\n {\n name: \"Ignium\",\n symbol: \"IGNIUM\",\n decimals: 18,\n l2_token_address:\n \"0x0625c1f789b03ebebc7a9322366f38ebad1f693b84b2abd8cb8f5b2748b0cdd5\",\n sort_order: 23,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/15.png\",\n },\n {\n name: \"Ethereal Silica\",\n symbol: \"ETHEREALSILICA\",\n decimals: 18,\n l2_token_address:\n \"0x068b6e23cbbd58a644700f55e96c83580921e9f521b6e5175396b53ba7910e7d\",\n sort_order: 24,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/16.png\",\n },\n {\n name: \"True Ice\",\n symbol: \"TRUEICE\",\n decimals: 18,\n l2_token_address:\n \"0x04485f5a6e16562e1c761cd348e63256d00389e3ddf4f5d98afe7ab44c57c481\",\n sort_order: 25,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/17.png\",\n },\n {\n name: \"Twilight Quartz\",\n symbol: \"TWILIGHTQUARTZ\",\n decimals: 18,\n l2_token_address:\n \"0x035e24c02409c3cfe8d5646399a62c4d102bb782938d5f5180e92c9c62d3faf7\",\n sort_order: 26,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/18.png\",\n },\n {\n name: \"Alchemical Silver\",\n symbol: \"ALCHEMICALSILVER\",\n decimals: 18,\n l2_token_address:\n \"0x03956a5301e99522038a2e7dcb9c2a89bf087ffa79310ee0a508b5538efd8ddd\",\n sort_order: 27,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/19.png\",\n },\n {\n name: \"Adamantine\",\n symbol: \"ADAMANTINE\",\n decimals: 18,\n l2_token_address:\n \"0x0367f838f85a2f5e1580d6f011e4476f581083314cff8721ba3dda9706076eed\",\n sort_order: 28,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/20.png\",\n },\n {\n name: \"Mithral\",\n symbol: \"MITHRAL\",\n decimals: 18,\n l2_token_address:\n \"0x0067ba235c569c23877064b2ac6ebd4d79f32d3c00f5fab8e28a3b5700b957f6\",\n sort_order: 29,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/21.png\",\n },\n {\n name: \"Dragon Hide\",\n symbol: \"DRAGONHIDE\",\n decimals: 18,\n l2_token_address:\n \"0x03bf856515bece3c93f5061b7941b8645f817a0acab93c758b8c7b4bc0afa3c6\",\n sort_order: 30,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/22.png\",\n },\n {\n name: \"Demon Hide\",\n symbol: \"DEMONHIDE\",\n decimals: 18,\n l2_token_address:\n \"0x03b847fbef9d344ba968edc945100e6ab0258a4b1b91f8665f85a3d814c3e4d4\",\n sort_order: 31,\n total_supply: null,\n logo_url: \"https://empire.realms.world/images/resources/22.png\",\n },\n];\n","import { configs } from \"./generated/controller-configs\";\nimport { TypedData } from \"@starknet-io/types-js\";\nimport { metadata } from \"./generated/erc20-metadata\";\n\nexport const controllerConfigs = configs;\nexport const erc20Metadata = metadata;\nexport const defaultTheme = configs[\"cartridge\"].theme!;\n\nexport type EkuboERC20Metadata = {\n name: string;\n symbol: string;\n decimals: number;\n l2_token_address: string;\n sort_order: number;\n total_supply: number | null;\n logo_url?: string;\n hidden?: boolean;\n disabled?: boolean;\n};\n\nexport type Policy = CallPolicy | TypedDataPolicy;\n\nexport type CallPolicy = {\n target: string;\n method: string;\n description?: string;\n};\n\nexport type TypedDataPolicy = Omit<TypedData, \"message\">;\n\nexport type Policies = Policy[] | SessionPolicies;\n\nexport type SessionPolicies = {\n /** The key must be the contract address */\n contracts?: ContractPolicies;\n messages?: SignMessagePolicy[];\n};\n\nexport type ContractPolicies = Record<string, ContractPolicy>;\n\nexport type ContractPolicy = {\n name?: string;\n description?: string;\n methods: Method[];\n};\n\nexport type Method = {\n name?: string;\n description?: string;\n entrypoint: string;\n};\n\nexport type SignMessagePolicy = TypedDataPolicy & {\n name?: string;\n description?: string;\n};\n\nexport type ControllerConfig = {\n origin: string | string[];\n policies?: SessionPolicies;\n theme?: ControllerTheme;\n};\n\nexport type ControllerConfigs = Record<string, ControllerConfig>;\n\nexport type ColorMode = \"light\" | \"dark\";\n\nexport type ControllerTheme = {\n name: string;\n icon: string;\n cover: ThemeValue<string>;\n colors?: ControllerColors;\n};\n\nexport type ControllerColors = {\n primary?: ControllerColor;\n primaryForeground?: ControllerColor;\n};\n\nexport type ControllerColor = ThemeValue<string>;\n\nexport type ThemeValue<T> = T | { dark: T; light: T };\n"]}