From dcd2ccae1bdc9eff61c712f2a9c5999f47b6870b Mon Sep 17 00:00:00 2001 From: Austin Chen Date: Mon, 18 Jul 2022 23:29:32 -0700 Subject: [PATCH 001/113] Allow environments to override the referral bonus --- common/envs/prod.ts | 1 + common/user.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/common/envs/prod.ts b/common/envs/prod.ts index f8aaf4cc..5bd12095 100644 --- a/common/envs/prod.ts +++ b/common/envs/prod.ts @@ -22,6 +22,7 @@ export type EnvConfig = { // Currency controls fixedAnte?: number startingBalance?: number + referralBonus?: number } type FirebaseConfig = { diff --git a/common/user.ts b/common/user.ts index 1995ce34..0dac5a19 100644 --- a/common/user.ts +++ b/common/user.ts @@ -45,7 +45,7 @@ export type User = { export const STARTING_BALANCE = ENV_CONFIG.startingBalance ?? 1000 // for sus users, i.e. multiple sign ups for same person export const SUS_STARTING_BALANCE = ENV_CONFIG.startingBalance ?? 10 -export const REFERRAL_AMOUNT = 500 +export const REFERRAL_AMOUNT = ENV_CONFIG.referralBonus ?? 500 export type PrivateUser = { id: string // same as User.id username: string // denormalized from User From b501776e3327abfe39468cb06b487569bd1a211d Mon Sep 17 00:00:00 2001 From: Austin Chen Date: Tue, 19 Jul 2022 00:20:18 -0700 Subject: [PATCH 002/113] Remove quadratic matching from /charity --- web/components/charity/charity-card.tsx | 13 +++++----- web/pages/charity/index.tsx | 32 +++++++++++++++++-------- 2 files changed, 28 insertions(+), 17 deletions(-) diff --git a/web/components/charity/charity-card.tsx b/web/components/charity/charity-card.tsx index 31995284..fc327b9f 100644 --- a/web/components/charity/charity-card.tsx +++ b/web/components/charity/charity-card.tsx @@ -6,10 +6,9 @@ import { Charity } from 'common/charity' import { useCharityTxns } from 'web/hooks/use-charity-txns' import { manaToUSD } from '../../../common/util/format' import { Row } from '../layout/row' -import { Col } from '../layout/col' export function CharityCard(props: { charity: Charity; match?: number }) { - const { charity, match } = props + const { charity } = props const { slug, photo, preview, id, tags } = charity const txns = useCharityTxns(id) @@ -36,18 +35,18 @@ export function CharityCard(props: { charity: Charity; match?: number }) { {raised > 0 && ( <> - + {formatUsd(raised)} - raised - - {match && ( + raised + + {/* {match && ( +{formatUsd(match)} match - )} + )} */} )} diff --git a/web/pages/charity/index.tsx b/web/pages/charity/index.tsx index 92e6b69f..f5295c59 100644 --- a/web/pages/charity/index.tsx +++ b/web/pages/charity/index.tsx @@ -13,7 +13,6 @@ import { CharityCard } from 'web/components/charity/charity-card' import { Col } from 'web/components/layout/col' import { Spacer } from 'web/components/layout/spacer' import { Page } from 'web/components/page' -import { SiteLink } from 'web/components/site-link' import { Title } from 'web/components/title' import { getAllCharityTxns } from 'web/lib/firebase/txns' import { manaToUSD } from 'common/util/format' @@ -21,6 +20,9 @@ import { quadraticMatches } from 'common/quadratic-funding' import { Txn } from 'common/txn' import { useTracking } from 'web/hooks/use-tracking' import { searchInAny } from 'common/util/parse' +import { getUser } from 'web/lib/firebase/users' +import { User } from 'common/lib/user' +import { SiteLink } from 'web/components/site-link' export async function getStaticProps() { const txns = await getAllCharityTxns() @@ -34,6 +36,7 @@ export async function getStaticProps() { ]) const matches = quadraticMatches(txns, totalRaised) const numDonors = uniqBy(txns, (txn) => txn.fromId).length + const mostRecentDonor = await getUser(txns[txns.length - 1].fromId) return { props: { @@ -42,6 +45,7 @@ export async function getStaticProps() { matches, txns, numDonors, + mostRecentDonor, }, revalidate: 60, } @@ -50,22 +54,28 @@ export async function getStaticProps() { type Stat = { name: string stat: string + url?: string } function DonatedStats(props: { stats: Stat[] }) { const { stats } = props return (
- {stats.map((item) => ( + {stats.map((stat) => (
- {item.name} + {stat.name}
+
- {item.stat} + {stat.url ? ( + {stat.stat} + ) : ( + {stat.stat} + )}
))} @@ -79,8 +89,9 @@ export default function Charity(props: { matches: { [charityId: string]: number } txns: Txn[] numDonors: number + mostRecentDonor: User }) { - const { totalRaised, charities, matches, numDonors } = props + const { totalRaised, charities, matches, numDonors, mostRecentDonor } = props const [query, setQuery] = useState('') const debouncedQuery = debounce(setQuery, 50) @@ -106,7 +117,7 @@ export default function Charity(props: { - <span className="text-gray-600"> + {/* <span className="text-gray-600"> Through July 15, up to $25k of donations will be matched via{' '} <SiteLink href="https://wtfisqf.com/" className="font-bold"> quadratic funding @@ -116,7 +127,7 @@ export default function Charity(props: { the FTX Future Fund </SiteLink> ! - </span> + </span> */} <DonatedStats stats={[ { @@ -128,8 +139,9 @@ export default function Charity(props: { stat: `${numDonors}`, }, { - name: 'Matched via quadratic funding', - stat: manaToUSD(sum(Object.values(matches))), + name: 'Most recent donor', + stat: mostRecentDonor.name ?? 'Nobody', + url: `/${mostRecentDonor.username}`, }, ]} /> From d1ad0716c8ce7724b6e612cfc83e41ec453d9fc2 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Tue, 19 Jul 2022 00:34:53 -0700 Subject: [PATCH 003/113] Fix import --- web/pages/charity/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/pages/charity/index.tsx b/web/pages/charity/index.tsx index f5295c59..b1cfc353 100644 --- a/web/pages/charity/index.tsx +++ b/web/pages/charity/index.tsx @@ -21,8 +21,8 @@ import { Txn } from 'common/txn' import { useTracking } from 'web/hooks/use-tracking' import { searchInAny } from 'common/util/parse' import { getUser } from 'web/lib/firebase/users' -import { User } from 'common/lib/user' import { SiteLink } from 'web/components/site-link' +import { User } from 'common/user' export async function getStaticProps() { const txns = await getAllCharityTxns() From a103a2ee2cccb9b34c19fd9d5e613dae23b7058d Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 00:50:11 -0700 Subject: [PATCH 004/113] Initial draft of Vercel Firebase auth (#593) * Set a cookie with an up-to-date Firebase ID token * Implement server-side authentication cookie reading logic * Change index page to redirect for authed users * No branch necessary for logged in users on index page * Add helpers for creating server-side redirects * Add some common sense redirects --- web/lib/firebase/auth.ts | 54 +++++++++++++++++++++ web/lib/firebase/server-auth.ts | 86 +++++++++++++++++++++++++++++++++ web/lib/firebase/users.ts | 10 ++-- web/lib/util/cookie.ts | 26 ++++++++++ web/pages/add-funds.tsx | 3 ++ web/pages/admin.tsx | 3 ++ web/pages/create.tsx | 11 ++--- web/pages/home.tsx | 12 ++--- web/pages/index.tsx | 25 ++-------- web/pages/links.tsx | 3 ++ web/pages/profile.tsx | 7 +-- web/pages/trades.tsx | 13 ++--- 12 files changed, 202 insertions(+), 51 deletions(-) create mode 100644 web/lib/firebase/auth.ts create mode 100644 web/lib/firebase/server-auth.ts create mode 100644 web/lib/util/cookie.ts diff --git a/web/lib/firebase/auth.ts b/web/lib/firebase/auth.ts new file mode 100644 index 00000000..d1c440ec --- /dev/null +++ b/web/lib/firebase/auth.ts @@ -0,0 +1,54 @@ +import { PROJECT_ID } from 'common/envs/constants' +import { setCookie, getCookies } from '../util/cookie' +import { IncomingMessage, ServerResponse } from 'http' + +const TOKEN_KINDS = ['refresh', 'id'] as const +type TokenKind = typeof TOKEN_KINDS[number] + +const getAuthCookieName = (kind: TokenKind) => { + const suffix = `${PROJECT_ID}_${kind}`.toUpperCase().replaceAll('-', '_') + return `FIREBASE_TOKEN_${suffix}` +} + +const ID_COOKIE_NAME = getAuthCookieName('id') +const REFRESH_COOKIE_NAME = getAuthCookieName('refresh') + +export const getAuthCookies = (request?: IncomingMessage) => { + const data = request != null ? request.headers.cookie ?? '' : document.cookie + const cookies = getCookies(data) + return { + idToken: cookies[ID_COOKIE_NAME] as string | undefined, + refreshToken: cookies[REFRESH_COOKIE_NAME] as string | undefined, + } +} + +export const setAuthCookies = ( + idToken?: string, + refreshToken?: string, + response?: ServerResponse +) => { + // these tokens last an hour + const idMaxAge = idToken != null ? 60 * 60 : 0 + const idCookie = setCookie(ID_COOKIE_NAME, idToken ?? '', [ + ['path', '/'], + ['max-age', idMaxAge.toString()], + ['samesite', 'lax'], + ['secure'], + ]) + // these tokens don't expire + const refreshMaxAge = refreshToken != null ? 60 * 60 * 24 * 365 * 10 : 0 + const refreshCookie = setCookie(REFRESH_COOKIE_NAME, refreshToken ?? '', [ + ['path', '/'], + ['max-age', refreshMaxAge.toString()], + ['samesite', 'lax'], + ['secure'], + ]) + if (response != null) { + response.setHeader('Set-Cookie', [idCookie, refreshCookie]) + } else { + document.cookie = idCookie + document.cookie = refreshCookie + } +} + +export const deleteAuthCookies = () => setAuthCookies() diff --git a/web/lib/firebase/server-auth.ts b/web/lib/firebase/server-auth.ts new file mode 100644 index 00000000..5f828683 --- /dev/null +++ b/web/lib/firebase/server-auth.ts @@ -0,0 +1,86 @@ +import * as admin from 'firebase-admin' +import fetch from 'node-fetch' +import { IncomingMessage, ServerResponse } from 'http' +import { FIREBASE_CONFIG, PROJECT_ID } from 'common/envs/constants' +import { getAuthCookies, setAuthCookies } from './auth' +import { GetServerSideProps, GetServerSidePropsContext } from 'next' + +const ensureApp = async () => { + // Note: firebase-admin can only be imported from a server context, + // because it relies on Node standard library dependencies. + if (admin.apps.length === 0) { + // never initialize twice + return admin.initializeApp({ projectId: PROJECT_ID }) + } + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + return admin.apps[0]! +} + +const requestFirebaseIdToken = async (refreshToken: string) => { + // See https://firebase.google.com/docs/reference/rest/auth/#section-refresh-token + const refreshUrl = new URL('https://securetoken.googleapis.com/v1/token') + refreshUrl.searchParams.append('key', FIREBASE_CONFIG.apiKey) + const result = await fetch(refreshUrl.toString(), { + method: 'POST', + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + body: new URLSearchParams({ + grant_type: 'refresh_token', + refresh_token: refreshToken, + }), + }) + if (!result.ok) { + throw new Error(`Could not refresh ID token: ${await result.text()}`) + } + return (await result.json()) as any +} + +type RequestContext = { + req: IncomingMessage + res: ServerResponse +} + +export const getServerAuthenticatedUid = async (ctx: RequestContext) => { + const app = await ensureApp() + const auth = app.auth() + const { idToken, refreshToken } = getAuthCookies(ctx.req) + + // If we have a valid ID token, verify the user immediately with no network trips. + // If the ID token doesn't verify, we'll have to refresh it to see who they are. + // If they don't have any tokens, then we have no idea who they are. + if (idToken != null) { + try { + return (await auth.verifyIdToken(idToken))?.uid + } catch (e) { + if (refreshToken != null) { + const resp = await requestFirebaseIdToken(refreshToken) + setAuthCookies(resp.id_token, resp.refresh_token, ctx.res) + return (await auth.verifyIdToken(resp.id_token))?.uid + } + } + } + return undefined +} + +export const redirectIfLoggedIn = (dest: string, fn?: GetServerSideProps) => { + return async (ctx: GetServerSidePropsContext) => { + const uid = await getServerAuthenticatedUid(ctx) + if (uid == null) { + return fn != null ? await fn(ctx) : { props: {} } + } else { + return { redirect: { destination: dest, permanent: false } } + } + } +} + +export const redirectIfLoggedOut = (dest: string, fn?: GetServerSideProps) => { + return async (ctx: GetServerSidePropsContext) => { + const uid = await getServerAuthenticatedUid(ctx) + if (uid == null) { + return { redirect: { destination: dest, permanent: false } } + } else { + return fn != null ? await fn(ctx) : { props: {} } + } + } +} diff --git a/web/lib/firebase/users.ts b/web/lib/firebase/users.ts index f3242a7e..77c5c48d 100644 --- a/web/lib/firebase/users.ts +++ b/web/lib/firebase/users.ts @@ -16,7 +16,7 @@ import { import { getAuth } from 'firebase/auth' import { ref, getStorage, uploadBytes, getDownloadURL } from 'firebase/storage' import { - onAuthStateChanged, + onIdTokenChanged, GoogleAuthProvider, signInWithPopup, } from 'firebase/auth' @@ -43,6 +43,7 @@ import utc from 'dayjs/plugin/utc' dayjs.extend(utc) import { track } from '@amplitude/analytics-browser' +import { deleteAuthCookies, setAuthCookies } from './auth' export const users = coll<User>('users') export const privateUsers = coll<PrivateUser>('private-users') @@ -188,10 +189,9 @@ export function listenForLogin(onUser: (user: User | null) => void) { const cachedUser = local?.getItem(CACHED_USER_KEY) onUser(cachedUser && JSON.parse(cachedUser)) - return onAuthStateChanged(auth, async (fbUser) => { + return onIdTokenChanged(auth, async (fbUser) => { if (fbUser) { let user: User | null = await getUser(fbUser.uid) - if (!user) { if (createUserPromise == null) { const local = safeLocalStorage() @@ -204,17 +204,19 @@ export function listenForLogin(onUser: (user: User | null) => void) { } user = await createUserPromise } - onUser(user) // Persist to local storage, to reduce login blink next time. // Note: Cap on localStorage size is ~5mb local?.setItem(CACHED_USER_KEY, JSON.stringify(user)) setCachedReferralInfoForUser(user) + setAuthCookies(await fbUser.getIdToken(), fbUser.refreshToken) } else { // User logged out; reset to null onUser(null) + createUserPromise = undefined local?.removeItem(CACHED_USER_KEY) + deleteAuthCookies() } }) } diff --git a/web/lib/util/cookie.ts b/web/lib/util/cookie.ts new file mode 100644 index 00000000..c0326cfc --- /dev/null +++ b/web/lib/util/cookie.ts @@ -0,0 +1,26 @@ +type CookieOptions = string[][] + +const encodeCookie = (name: string, val: string) => { + return `${name}=${encodeURIComponent(val)}` +} + +const decodeCookie = (cookie: string) => { + const parts = cookie.trim().split('=') + if (parts.length != 2) { + throw new Error(`Invalid cookie contents: ${cookie}`) + } + return [parts[0], decodeURIComponent(parts[1])] as const +} + +export const setCookie = (name: string, val: string, opts?: CookieOptions) => { + const parts = [encodeCookie(name, val)] + if (opts != null) { + parts.push(...opts.map((opt) => opt.join('='))) + } + return parts.join('; ') +} + +// Note that this intentionally ignores the case where multiple cookies have +// the same name but different paths. Hopefully we never need to think about it. +export const getCookies = (cookies: string) => + Object.fromEntries(cookies.split(';').map(decodeCookie)) diff --git a/web/pages/add-funds.tsx b/web/pages/add-funds.tsx index f680d47b..ed25a21a 100644 --- a/web/pages/add-funds.tsx +++ b/web/pages/add-funds.tsx @@ -8,6 +8,9 @@ import { checkoutURL } from 'web/lib/service/stripe' import { Page } from 'web/components/page' import { useTracking } from 'web/hooks/use-tracking' import { trackCallback } from 'web/lib/service/analytics' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' + +export const getServerSideProps = redirectIfLoggedOut('/') export default function AddFundsPage() { const user = useUser() diff --git a/web/pages/admin.tsx b/web/pages/admin.tsx index e709e875..81f23ba9 100644 --- a/web/pages/admin.tsx +++ b/web/pages/admin.tsx @@ -9,6 +9,9 @@ import { useContracts } from 'web/hooks/use-contracts' import { mapKeys } from 'lodash' import { useAdmin } from 'web/hooks/use-admin' import { contractPath } from 'web/lib/firebase/contracts' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' + +export const getServerSideProps = redirectIfLoggedOut('/') function avatarHtml(avatarUrl: string) { return `<img diff --git a/web/pages/create.tsx b/web/pages/create.tsx index a3801223..4294770e 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -28,6 +28,9 @@ import { GroupSelector } from 'web/components/groups/group-selector' import { User } from 'common/user' import { TextEditor, useTextEditor } from 'web/components/editor' import { Checkbox } from 'web/components/checkbox' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' + +export const getServerSideProps = redirectIfLoggedOut('/') type NewQuestionParams = { groupId?: string @@ -55,11 +58,7 @@ export default function Create() { }, [params.q]) const creator = useUser() - useEffect(() => { - if (creator === null) router.push('/') - }, [creator, router]) - - if (!router.isReady || !creator) return <div /> + if (!router.isReady || creator) return <div /> return ( <Page> @@ -93,7 +92,7 @@ export default function Create() { // Allow user to create a new contract export function NewContract(props: { - creator: User + creator?: User | null question: string params?: NewQuestionParams }) { diff --git a/web/pages/home.tsx b/web/pages/home.tsx index 98d5036e..6aa99a07 100644 --- a/web/pages/home.tsx +++ b/web/pages/home.tsx @@ -1,10 +1,9 @@ import React, { useEffect, useState } from 'react' -import Router, { useRouter } from 'next/router' +import { useRouter } from 'next/router' import { PlusSmIcon } from '@heroicons/react/solid' import { Page } from 'web/components/page' import { Col } from 'web/components/layout/col' -import { useUser } from 'web/hooks/use-user' import { getSavedSort } from 'web/hooks/use-sort-and-query-params' import { ContractSearch } from 'web/components/contract-search' import { Contract } from 'common/contract' @@ -12,19 +11,16 @@ import { ContractPageContent } from './[username]/[contractSlug]' import { getContractFromSlug } from 'web/lib/firebase/contracts' import { useTracking } from 'web/hooks/use-tracking' import { track } from 'web/lib/service/analytics' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' + +export const getServerSideProps = redirectIfLoggedOut('/') const Home = () => { - const user = useUser() const [contract, setContract] = useContractPage() const router = useRouter() useTracking('view home') - if (user === null) { - Router.replace('/') - return <></> - } - return ( <> <Page suspend={!!contract}> diff --git a/web/pages/index.tsx b/web/pages/index.tsx index 904fc014..44683a4f 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -1,14 +1,13 @@ import React from 'react' -import Router from 'next/router' import { Contract, getContractsBySlugs } from 'web/lib/firebase/contracts' import { Page } from 'web/components/page' import { LandingPagePanel } from 'web/components/landing-page-panel' import { Col } from 'web/components/layout/col' -import { useUser } from 'web/hooks/use-user' import { ManifoldLogo } from 'web/components/nav/manifold-logo' +import { redirectIfLoggedIn } from 'web/lib/firebase/server-auth' -export async function getStaticProps() { +export const getServerSideProps = redirectIfLoggedIn('/home', async (_) => { // These hardcoded markets will be shown in the frontpage for signed-out users: const hotContracts = await getContractsBySlugs([ 'will-max-go-to-prom-with-a-girl', @@ -22,23 +21,11 @@ export async function getStaticProps() { 'will-congress-hold-any-hearings-abo-e21f987033b3', 'will-at-least-10-world-cities-have', ]) + return { props: { hotContracts } } +}) - return { - props: { hotContracts }, - revalidate: 60, // regenerate after a minute - } -} - -const Home = (props: { hotContracts: Contract[] }) => { +export default function Home(props: { hotContracts: Contract[] }) { const { hotContracts } = props - - const user = useUser() - - if (user) { - Router.replace('/home') - return <></> - } - return ( <Page> <div className="px-4 pt-2 md:mt-0 lg:hidden"> @@ -58,5 +45,3 @@ const Home = (props: { hotContracts: Contract[] }) => { </Page> ) } - -export default Home diff --git a/web/pages/links.tsx b/web/pages/links.tsx index 76c62978..490f1878 100644 --- a/web/pages/links.tsx +++ b/web/pages/links.tsx @@ -18,11 +18,14 @@ import { Avatar } from 'web/components/avatar' import { RelativeTimestamp } from 'web/components/relative-timestamp' import { UserLink } from 'web/components/user-page' import { CreateLinksButton } from 'web/components/manalinks/create-links-button' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' import dayjs from 'dayjs' import customParseFormat from 'dayjs/plugin/customParseFormat' dayjs.extend(customParseFormat) +export const getServerSideProps = redirectIfLoggedOut('/') + export function getManalinkUrl(slug: string) { return `${location.protocol}//${location.host}/link/${slug}` } diff --git a/web/pages/profile.tsx b/web/pages/profile.tsx index b80698ae..541f5de9 100644 --- a/web/pages/profile.tsx +++ b/web/pages/profile.tsx @@ -1,6 +1,5 @@ import React, { useEffect, useState } from 'react' import { RefreshIcon } from '@heroicons/react/outline' -import Router from 'next/router' import { AddFundsButton } from 'web/components/add-funds-button' import { Page } from 'web/components/page' @@ -18,6 +17,9 @@ import { updateUser, updatePrivateUser } from 'web/lib/firebase/users' import { defaultBannerUrl } from 'web/components/user-page' import { SiteLink } from 'web/components/site-link' import Textarea from 'react-expanding-textarea' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' + +export const getServerSideProps = redirectIfLoggedOut('/') function EditUserField(props: { user: User @@ -134,8 +136,7 @@ export default function ProfilePage() { }) } - if (user === null) { - Router.replace('/') + if (user == null) { return <></> } diff --git a/web/pages/trades.tsx b/web/pages/trades.tsx index 55a08bc6..a29fb7f0 100644 --- a/web/pages/trades.tsx +++ b/web/pages/trades.tsx @@ -1,17 +1,10 @@ import Router from 'next/router' -import { useEffect } from 'react' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' -import { useUser } from 'web/hooks/use-user' +export const getServerSideProps = redirectIfLoggedOut('/') // Deprecated: redirects to /portfolio. // Eventually, this will be removed. export default function TradesPage() { - const user = useUser() - - useEffect(() => { - if (user === null) Router.replace('/') - else Router.replace('/portfolio') - }) - - return <></> + Router.replace('/portfolio') } From f6d2c56e430f1fffb89636667430a736c3c6a8e6 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Tue, 19 Jul 2022 01:23:36 -0700 Subject: [PATCH 005/113] Fix /create --- web/pages/create.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/pages/create.tsx b/web/pages/create.tsx index 4294770e..45eb120f 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -58,7 +58,7 @@ export default function Create() { }, [params.q]) const creator = useUser() - if (!router.isReady || creator) return <div /> + if (!router.isReady || !creator) return <div /> return ( <Page> From c256e9c0cc8c64b143c5144d2f5cd6d87765bd71 Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 01:32:38 -0700 Subject: [PATCH 006/113] Attempt to fix up overly sensitive cookie parsing --- web/lib/util/cookie.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/web/lib/util/cookie.ts b/web/lib/util/cookie.ts index c0326cfc..4ffee21e 100644 --- a/web/lib/util/cookie.ts +++ b/web/lib/util/cookie.ts @@ -6,10 +6,11 @@ const encodeCookie = (name: string, val: string) => { const decodeCookie = (cookie: string) => { const parts = cookie.trim().split('=') - if (parts.length != 2) { + if (parts.length < 2) { throw new Error(`Invalid cookie contents: ${cookie}`) } - return [parts[0], decodeURIComponent(parts[1])] as const + const rest = parts.slice(1).join('') // there may be more = in the value + return [parts[0], decodeURIComponent(rest)] as const } export const setCookie = (name: string, val: string, opts?: CookieOptions) => { From 55775d9d37872fc133650d7d26104af87bce79b9 Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 01:35:34 -0700 Subject: [PATCH 007/113] Also handle case where there are no cookies yet --- web/lib/util/cookie.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/web/lib/util/cookie.ts b/web/lib/util/cookie.ts index 4ffee21e..14999fd4 100644 --- a/web/lib/util/cookie.ts +++ b/web/lib/util/cookie.ts @@ -23,5 +23,11 @@ export const setCookie = (name: string, val: string, opts?: CookieOptions) => { // Note that this intentionally ignores the case where multiple cookies have // the same name but different paths. Hopefully we never need to think about it. -export const getCookies = (cookies: string) => - Object.fromEntries(cookies.split(';').map(decodeCookie)) +export const getCookies = (cookies: string) => { + const data = cookies.trim() + if (!data) { + return {} + } else { + return Object.fromEntries(data.split(';').map(decodeCookie)) + } +} From 2bae7dc200d9160ac8ba33ceb7454b0670f37351 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Tue, 19 Jul 2022 02:54:05 -0700 Subject: [PATCH 008/113] Fix error on no portfolio history --- .../portfolio/portfolio-value-section.tsx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/web/components/portfolio/portfolio-value-section.tsx b/web/components/portfolio/portfolio-value-section.tsx index 1fabbd06..fa50365b 100644 --- a/web/components/portfolio/portfolio-value-section.tsx +++ b/web/components/portfolio/portfolio-value-section.tsx @@ -15,17 +15,17 @@ export const PortfolioValueSection = memo( const lastPortfolioMetrics = last(portfolioHistory) const [portfolioPeriod, setPortfolioPeriod] = useState<Period>('allTime') - // PATCH: If portfolio history started on June 1st, then we label it as "Since June" - // instead of "All time" - const allTimeLabel = - portfolioHistory[0].timestamp < Date.parse('2022-06-20T00:00:00.000Z') - ? 'Since June' - : 'All time' - if (portfolioHistory.length === 0 || !lastPortfolioMetrics) { return <></> } + // PATCH: If portfolio history started on June 1st, then we label it as "Since June" + // instead of "All time" + const allTimeLabel = + lastPortfolioMetrics.timestamp < Date.parse('2022-06-20T00:00:00.000Z') + ? 'Since June' + : 'All time' + return ( <div> <Row className="gap-8"> From c236eb15b167fd6bdf8b409f65662301afe0b874 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 09:04:47 -0600 Subject: [PATCH 009/113] Cache notifs in local, gives instant load of old notifs (#662) * Cache notifs in local, gives instant load of old notifs * Small refactor, add ss auth * unused vars * Add back in replaceAll * Save all notifs * Memoize paginated notifs * Replace all => replace with regexp --- web/hooks/use-notifications.ts | 52 ++++++------- web/lib/firebase/auth.ts | 2 +- web/pages/notifications.tsx | 132 ++++++++++++++++++++++++--------- 3 files changed, 123 insertions(+), 63 deletions(-) diff --git a/web/hooks/use-notifications.ts b/web/hooks/use-notifications.ts index f5502b85..b9bef469 100644 --- a/web/hooks/use-notifications.ts +++ b/web/hooks/use-notifications.ts @@ -1,4 +1,4 @@ -import { useEffect, useState } from 'react' +import { useEffect, useMemo, useState } from 'react' import { notification_subscribe_types, PrivateUser } from 'common/user' import { Notification } from 'common/notification' import { @@ -6,7 +6,7 @@ import { listenForNotifications, } from 'web/lib/firebase/notifications' import { groupBy, map } from 'lodash' -import { useFirestoreQuery } from '@react-query-firebase/firestore' +import { useFirestoreQueryData } from '@react-query-firebase/firestore' import { NOTIFICATIONS_PER_PAGE } from 'web/pages/notifications' export type NotificationGroup = { @@ -19,36 +19,38 @@ export type NotificationGroup = { // For some reason react-query subscriptions don't actually listen for notifications // Use useUnseenPreferredNotificationGroups to listen for new notifications -export function usePreferredGroupedNotifications(privateUser: PrivateUser) { - const [notificationGroups, setNotificationGroups] = useState< - NotificationGroup[] | undefined - >(undefined) - const [notifications, setNotifications] = useState<Notification[]>([]) - const key = `notifications-${privateUser.id}-all` - - const result = useFirestoreQuery([key], getNotificationsQuery(privateUser.id)) - useEffect(() => { - if (result.isLoading) return - if (!result.data) return setNotifications([]) - const notifications = result.data.docs.map( - (doc) => doc.data() as Notification - ) +export function usePreferredGroupedNotifications( + privateUser: PrivateUser, + cachedNotifications?: Notification[] +) { + const result = useFirestoreQueryData( + ['notifications-all', privateUser.id], + getNotificationsQuery(privateUser.id) + ) + const notifications = useMemo(() => { + if (result.isLoading) return cachedNotifications ?? [] + if (!result.data) return cachedNotifications ?? [] + const notifications = result.data as Notification[] const notificationsToShow = getAppropriateNotifications( notifications, privateUser.notificationPreferences ).filter((n) => !n.isSeenOnHref) - setNotifications(notificationsToShow) - }, [privateUser.notificationPreferences, result.data, result.isLoading]) + const cachedIds = cachedNotifications?.map((n) => n.id) + if (notificationsToShow.some((n) => !cachedIds?.includes(n.id))) { + return notificationsToShow + } + return cachedNotifications + }, [ + cachedNotifications, + privateUser.notificationPreferences, + result.data, + result.isLoading, + ]) - useEffect(() => { - if (!notifications) return - - const groupedNotifications = groupNotifications(notifications) - setNotificationGroups(groupedNotifications) + return useMemo(() => { + if (notifications) return groupNotifications(notifications) }, [notifications]) - - return notificationGroups } export function useUnseenPreferredNotificationGroups(privateUser: PrivateUser) { diff --git a/web/lib/firebase/auth.ts b/web/lib/firebase/auth.ts index d1c440ec..b6daea6e 100644 --- a/web/lib/firebase/auth.ts +++ b/web/lib/firebase/auth.ts @@ -6,7 +6,7 @@ const TOKEN_KINDS = ['refresh', 'id'] as const type TokenKind = typeof TOKEN_KINDS[number] const getAuthCookieName = (kind: TokenKind) => { - const suffix = `${PROJECT_ID}_${kind}`.toUpperCase().replaceAll('-', '_') + const suffix = `${PROJECT_ID}_${kind}`.toUpperCase().replace(/-/g, '_') return `FIREBASE_TOKEN_${suffix}` } diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index 9166109f..7500c2a8 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -1,6 +1,6 @@ import { Tabs } from 'web/components/layout/tabs' import { usePrivateUser, useUser } from 'web/hooks/use-user' -import React, { useEffect, useState } from 'react' +import React, { useEffect, useMemo, useState } from 'react' import { Notification, notification_source_types } from 'common/notification' import { Avatar, EmptyAvatar } from 'web/components/avatar' import { Row } from 'web/components/layout/row' @@ -14,9 +14,14 @@ import { MANIFOLD_USERNAME, notification_subscribe_types, PrivateUser, + User, } from 'common/user' import { ChoicesToggleGroup } from 'web/components/choices-toggle-group' -import { listenForPrivateUser, updatePrivateUser } from 'web/lib/firebase/users' +import { + getUser, + listenForPrivateUser, + updatePrivateUser, +} from 'web/lib/firebase/users' import { LoadingIndicator } from 'web/components/loading-indicator' import clsx from 'clsx' import { RelativeTimestamp } from 'web/components/relative-timestamp' @@ -43,14 +48,38 @@ import { track } from '@amplitude/analytics-browser' import { Pagination } from 'web/components/pagination' import { useWindowSize } from 'web/hooks/use-window-size' import Router from 'next/router' +import { safeLocalStorage } from 'web/lib/util/local' +import { + getServerAuthenticatedUid, + redirectIfLoggedOut, +} from 'web/lib/firebase/server-auth' export const NOTIFICATIONS_PER_PAGE = 30 const MULTIPLE_USERS_KEY = 'multipleUsers' const HIGHLIGHT_CLASS = 'bg-indigo-50' -export default function Notifications() { - const user = useUser() +export const getServerSideProps = redirectIfLoggedOut('/', async (ctx) => { + const uid = await getServerAuthenticatedUid(ctx) + if (!uid) { + return { props: { user: null } } + } + const user = await getUser(uid) + return { props: { user } } +}) + +export default function Notifications(props: { user: User }) { + const { user } = props const privateUser = usePrivateUser(user?.id) + const local = safeLocalStorage() + let localNotifications = [] as Notification[] + const localSavedNotificationGroups = local?.getItem('notification-groups') + let localNotificationGroups = [] as NotificationGroup[] + if (localSavedNotificationGroups) { + localNotificationGroups = JSON.parse(localSavedNotificationGroups) + localNotifications = localNotificationGroups + .map((g) => g.notifications) + .flat() + } if (!user) return <Custom404 /> return ( @@ -67,7 +96,16 @@ export default function Notifications() { { title: 'Notifications', content: privateUser ? ( - <NotificationsList privateUser={privateUser} /> + <NotificationsList + privateUser={privateUser} + cachedNotifications={localNotifications} + /> + ) : localNotifications && localNotifications.length > 0 ? ( + <div className={'min-h-[100vh]'}> + <RenderNotificationGroups + notificationGroups={localNotificationGroups} + /> + </div> ) : ( <LoadingIndicator /> ), @@ -88,39 +126,13 @@ export default function Notifications() { ) } -function NotificationsList(props: { privateUser: PrivateUser }) { - const { privateUser } = props - const [page, setPage] = useState(0) - const allGroupedNotifications = usePreferredGroupedNotifications(privateUser) - const [paginatedGroupedNotifications, setPaginatedGroupedNotifications] = - useState<NotificationGroup[] | undefined>(undefined) - - useEffect(() => { - if (!allGroupedNotifications) return - const start = page * NOTIFICATIONS_PER_PAGE - const end = start + NOTIFICATIONS_PER_PAGE - const maxNotificationsToShow = allGroupedNotifications.slice(start, end) - const remainingNotification = allGroupedNotifications.slice(end) - for (const notification of remainingNotification) { - if (notification.isSeen) break - else setNotificationsAsSeen(notification.notifications) - } - setPaginatedGroupedNotifications(maxNotificationsToShow) - }, [allGroupedNotifications, page]) - - if (!paginatedGroupedNotifications || !allGroupedNotifications) - return <LoadingIndicator /> - +function RenderNotificationGroups(props: { + notificationGroups: NotificationGroup[] +}) { + const { notificationGroups } = props return ( - <div className={'min-h-[100vh]'}> - {paginatedGroupedNotifications.length === 0 && ( - <div className={'mt-2'}> - You don't have any notifications. Try changing your settings to see - more. - </div> - )} - - {paginatedGroupedNotifications.map((notification) => + <> + {notificationGroups.map((notification) => notification.type === 'income' ? ( <IncomeNotificationGroupItem notificationGroup={notification} @@ -138,6 +150,52 @@ function NotificationsList(props: { privateUser: PrivateUser }) { /> ) )} + </> + ) +} + +function NotificationsList(props: { + privateUser: PrivateUser + cachedNotifications: Notification[] +}) { + const { privateUser, cachedNotifications } = props + const [page, setPage] = useState(0) + const allGroupedNotifications = usePreferredGroupedNotifications( + privateUser, + cachedNotifications + ) + const paginatedGroupedNotifications = useMemo(() => { + if (!allGroupedNotifications) return + const start = page * NOTIFICATIONS_PER_PAGE + const end = start + NOTIFICATIONS_PER_PAGE + const maxNotificationsToShow = allGroupedNotifications.slice(start, end) + const remainingNotification = allGroupedNotifications.slice(end) + for (const notification of remainingNotification) { + if (notification.isSeen) break + else setNotificationsAsSeen(notification.notifications) + } + const local = safeLocalStorage() + local?.setItem( + 'notification-groups', + JSON.stringify(maxNotificationsToShow) + ) + return maxNotificationsToShow + }, [allGroupedNotifications, page]) + + if (!paginatedGroupedNotifications || !allGroupedNotifications) return <div /> + + return ( + <div className={'min-h-[100vh]'}> + {paginatedGroupedNotifications.length === 0 && ( + <div className={'mt-2'}> + You don't have any notifications. Try changing your settings to see + more. + </div> + )} + + <RenderNotificationGroups + notificationGroups={paginatedGroupedNotifications} + /> {paginatedGroupedNotifications.length > 0 && allGroupedNotifications.length > NOTIFICATIONS_PER_PAGE && ( <Pagination From a203f43142532c8ed99edce011e0a26d3f493144 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 09:29:12 -0600 Subject: [PATCH 010/113] Cache all notifs --- web/pages/notifications.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index 7500c2a8..084b143c 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -177,7 +177,7 @@ function NotificationsList(props: { const local = safeLocalStorage() local?.setItem( 'notification-groups', - JSON.stringify(maxNotificationsToShow) + JSON.stringify(allGroupedNotifications) ) return maxNotificationsToShow }, [allGroupedNotifications, page]) From 0d282a962c4ecfe929e6db9b1572e3bf46040d19 Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 08:35:43 -0700 Subject: [PATCH 011/113] Don't `setQuery` on group selector component during initial render (#660) --- web/components/groups/group-selector.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/web/components/groups/group-selector.tsx b/web/components/groups/group-selector.tsx index 2417403a..c7b4cb39 100644 --- a/web/components/groups/group-selector.tsx +++ b/web/components/groups/group-selector.tsx @@ -53,9 +53,8 @@ export function GroupSelector(props: { nullable={true} className={'text-sm'} > - {({ open }) => ( + {() => ( <> - {!open && setQuery('')} <Combobox.Label className="label justify-start gap-2 text-base"> Add to Group <InfoTooltip text="Question will be displayed alongside the other questions in the group." /> From 4b3370e374a97c454562626be59903bedd120094 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Tue, 19 Jul 2022 12:30:13 -0500 Subject: [PATCH 012/113] fix formatting --- common/util/format.ts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/common/util/format.ts b/common/util/format.ts index 7dc1a341..4f123535 100644 --- a/common/util/format.ts +++ b/common/util/format.ts @@ -33,20 +33,24 @@ export function formatPercent(zeroToOne: number) { return (zeroToOne * 100).toFixed(decimalPlaces) + '%' } +const showPrecision = (x: number, sigfigs: number) => + // convert back to number for weird formatting reason + `${Number(x.toPrecision(sigfigs))}` + // Eg 1234567.89 => 1.23M; 5678 => 5.68K export function formatLargeNumber(num: number, sigfigs = 2): string { const absNum = Math.abs(num) - if (absNum < 1) return num.toPrecision(sigfigs) + if (absNum < 1) return showPrecision(num, sigfigs) - if (absNum < 100) return num.toPrecision(2) - if (absNum < 1000) return num.toPrecision(3) - if (absNum < 10000) return num.toPrecision(4) + if (absNum < 100) return showPrecision(num, 2) + if (absNum < 1000) return showPrecision(num, 3) + if (absNum < 10000) return showPrecision(num, 4) const suffix = ['', 'K', 'M', 'B', 'T', 'Q'] const i = Math.floor(Math.log10(absNum) / 3) - const numStr = (num / Math.pow(10, 3 * i)).toPrecision(sigfigs) - return `${numStr}${suffix[i]}` + const numStr = showPrecision(num / Math.pow(10, 3 * i), sigfigs) + return `${numStr}${suffix[i] ?? ''}` } export function toCamelCase(words: string) { From 12567074cc4430ac15295f9dca61ed5487dd36d2 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Tue, 19 Jul 2022 12:31:11 -0500 Subject: [PATCH 013/113] fix log scale graph --- common/pseudo-numeric.ts | 6 ++--- .../contract/contract-prob-graph.tsx | 25 ++++++++++++------- web/pages/create.tsx | 18 ++++++------- 3 files changed, 27 insertions(+), 22 deletions(-) diff --git a/common/pseudo-numeric.ts b/common/pseudo-numeric.ts index c99e670f..73f9fd01 100644 --- a/common/pseudo-numeric.ts +++ b/common/pseudo-numeric.ts @@ -16,8 +16,8 @@ export const getMappedValue = const { min, max, isLogScale } = contract if (isLogScale) { - const logValue = p * Math.log10(max - min) - return 10 ** logValue + min + const logValue = p * Math.log10(max - min + 1) + return 10 ** logValue + min - 1 } return p * (max - min) + min @@ -38,7 +38,7 @@ export const getPseudoProbability = ( isLogScale = false ) => { if (isLogScale) { - return Math.log10(value - min) / Math.log10(max - min) + return Math.log10(value - min + 1) / Math.log10(max - min + 1) } return (value - min) / (max - min) diff --git a/web/components/contract/contract-prob-graph.tsx b/web/components/contract/contract-prob-graph.tsx index a9d26e2e..c6e17cd6 100644 --- a/web/components/contract/contract-prob-graph.tsx +++ b/web/components/contract/contract-prob-graph.tsx @@ -7,7 +7,6 @@ import { Bet } from 'common/bet' import { getInitialProbability } from 'common/calculate' import { BinaryContract, PseudoNumericContract } from 'common/contract' import { useWindowSize } from 'web/hooks/use-window-size' -import { getMappedValue } from 'common/pseudo-numeric' import { formatLargeNumber } from 'common/util/format' export const ContractProbGraph = memo(function ContractProbGraph(props: { @@ -29,7 +28,11 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { ...bets.map((bet) => bet.createdTime), ].map((time) => new Date(time)) - const f = getMappedValue(contract) + const f: (p: number) => number = isBinary + ? (p) => p + : isLogScale + ? (p) => p * Math.log10(contract.max - contract.min + 1) + : (p) => p * (contract.max - contract.min) + contract.min const probs = [startProb, ...bets.map((bet) => bet.probAfter)].map(f) @@ -69,10 +72,9 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { const points: { x: Date; y: number }[] = [] const s = isBinary ? 100 : 1 - const c = isLogScale && contract.min === 0 ? 1 : 0 for (let i = 0; i < times.length - 1; i++) { - points[points.length] = { x: times[i], y: s * probs[i] + c } + points[points.length] = { x: times[i], y: s * probs[i] } const numPoints: number = Math.floor( dayjs(times[i + 1]).diff(dayjs(times[i]), 'ms') / timeStep ) @@ -84,7 +86,7 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { x: dayjs(times[i]) .add(thisTimeStep * n, 'ms') .toDate(), - y: s * probs[i] + c, + y: s * probs[i], } } } @@ -99,6 +101,9 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { const formatter = isBinary ? formatPercent + : isLogScale + ? (x: DatumValue) => + formatLargeNumber(10 ** +x.valueOf() + contract.min - 1) : (x: DatumValue) => formatLargeNumber(+x.valueOf()) return ( @@ -111,11 +116,13 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { yScale={ isBinary ? { min: 0, max: 100, type: 'linear' } - : { - min: contract.min + c, - max: contract.max + c, - type: contract.isLogScale ? 'log' : 'linear', + : isLogScale + ? { + min: 0, + max: Math.log10(contract.max - contract.min + 1), + type: 'linear', } + : { min: contract.min, max: contract.max, type: 'linear' } } yFormat={formatter} gridYValues={yTickValues} diff --git a/web/pages/create.tsx b/web/pages/create.tsx index 45eb120f..78ad8d19 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -206,7 +206,7 @@ export function NewContract(props: { min, max, initialValue, - isLogScale: (min ?? 0) < 0 ? false : isLogScale, + isLogScale, groupId: selectedGroup?.id, }) ) @@ -293,15 +293,13 @@ export function NewContract(props: { /> </Row> - {!(min !== undefined && min < 0) && ( - <Checkbox - className="my-2 text-sm" - label="Log scale" - checked={isLogScale} - toggle={() => setIsLogScale(!isLogScale)} - disabled={isSubmitting} - /> - )} + <Checkbox + className="my-2 text-sm" + label="Log scale" + checked={isLogScale} + toggle={() => setIsLogScale(!isLogScale)} + disabled={isSubmitting} + /> {min !== undefined && max !== undefined && min >= max && ( <div className="mt-2 mb-2 text-sm text-red-500"> From 61cbb07bd50978bd15badc12c341fd90e2e52e94 Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 12:33:53 -0700 Subject: [PATCH 014/113] Fix some broken stuff on the homepage contract search routing (#664) * Use Next router more appropriately * Replace instead of push when modifying search query params --- web/hooks/use-sort-and-query-params.tsx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/web/hooks/use-sort-and-query-params.tsx b/web/hooks/use-sort-and-query-params.tsx index a2248c2e..5c9a247f 100644 --- a/web/hooks/use-sort-and-query-params.tsx +++ b/web/hooks/use-sort-and-query-params.tsx @@ -53,9 +53,12 @@ export function useInitialQueryAndSort(options?: { console.log('ready loading from storage ', sort ?? defaultSort) const localSort = getSavedSort() if (localSort) { - router.query.s = localSort // Use replace to not break navigating back. - router.replace(router, undefined, { shallow: true }) + router.replace( + { query: { ...router.query, s: localSort } }, + undefined, + { shallow: true } + ) } setInitialSort(localSort ?? defaultSort) } else { @@ -79,7 +82,9 @@ export function useUpdateQueryAndSort(props: { const setSort = (sort: Sort | undefined) => { if (sort !== router.query.s) { router.query.s = sort - router.push(router, undefined, { shallow: true }) + router.replace({ query: { ...router.query, s: sort } }, undefined, { + shallow: true, + }) if (shouldLoadFromStorage) { localStorage.setItem(MARKETS_SORT, sort || '') } @@ -97,7 +102,9 @@ export function useUpdateQueryAndSort(props: { } else { delete router.query.q } - router.push(router, undefined, { shallow: true }) + router.replace({ query: router.query }, undefined, { + shallow: true, + }) track('search', { query }) }, 500), [router] From 74760b1062f72fa7e08394374872be569b8a3df6 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 14:53:33 -0500 Subject: [PATCH 015/113] Reorder orderbook columns --- web/components/limit-bets.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/components/limit-bets.tsx b/web/components/limit-bets.tsx index 7e32db25..7aaa0601 100644 --- a/web/components/limit-bets.tsx +++ b/web/components/limit-bets.tsx @@ -78,8 +78,8 @@ export function LimitOrderTable(props: { <thead> {!isYou && <th></th>} <th>Outcome</th> - <th>Amount</th> <th>{isPseudoNumeric ? 'Value' : 'Prob'}</th> + <th>Amount</th> {isYou && <th></th>} </thead> <tbody> @@ -129,12 +129,12 @@ function LimitBet(props: { )} </div> </td> - <td>{formatMoney(orderAmount - amount)}</td> <td> {isPseudoNumeric ? getFormattedMappedValue(contract)(limitProb) : formatPercent(limitProb)} </td> + <td>{formatMoney(orderAmount - amount)}</td> {isYou && ( <td> {isCancelling ? ( From 93b9ace47715618c16c98b9052897a674c4a0b41 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 14:54:42 -0500 Subject: [PATCH 016/113] Comment email: Subject no longer varies between questions so emails are threaded in gmail --- functions/src/emails.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/src/emails.ts b/functions/src/emails.ts index 60534679..a29f982c 100644 --- a/functions/src/emails.ts +++ b/functions/src/emails.ts @@ -302,7 +302,7 @@ export const sendNewCommentEmail = async ( )}` } - const subject = `Comment from ${commentorName} on ${question}` + const subject = `Comment on ${question}` const from = `${commentorName} on Manifold <no-reply@manifold.markets>` if (contract.outcomeType === 'FREE_RESPONSE' && answerId && answerText) { From a1e03c3a25f1003c64e8d02982d9323f1994b3bf Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 13:58:51 -0600 Subject: [PATCH 017/113] Allow opening notifs in new tabs, return newest notifs --- web/hooks/use-notifications.ts | 7 +--- web/pages/notifications.tsx | 61 ++++++++++++++++++---------------- 2 files changed, 33 insertions(+), 35 deletions(-) diff --git a/web/hooks/use-notifications.ts b/web/hooks/use-notifications.ts index b9bef469..a3ddeb29 100644 --- a/web/hooks/use-notifications.ts +++ b/web/hooks/use-notifications.ts @@ -32,15 +32,10 @@ export function usePreferredGroupedNotifications( if (!result.data) return cachedNotifications ?? [] const notifications = result.data as Notification[] - const notificationsToShow = getAppropriateNotifications( + return getAppropriateNotifications( notifications, privateUser.notificationPreferences ).filter((n) => !n.isSeenOnHref) - const cachedIds = cachedNotifications?.map((n) => n.id) - if (notificationsToShow.some((n) => !cachedIds?.includes(n.id))) { - return notificationsToShow - } - return cachedNotifications }, [ cachedNotifications, privateUser.notificationPreferences, diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index 084b143c..a45bf030 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -47,12 +47,12 @@ import Custom404 from 'web/pages/404' import { track } from '@amplitude/analytics-browser' import { Pagination } from 'web/components/pagination' import { useWindowSize } from 'web/hooks/use-window-size' -import Router from 'next/router' import { safeLocalStorage } from 'web/lib/util/local' import { getServerAuthenticatedUid, redirectIfLoggedOut, } from 'web/lib/firebase/server-auth' +import { SiteLink } from 'web/components/site-link' export const NOTIFICATIONS_PER_PAGE = 30 const MULTIPLE_USERS_KEY = 'multipleUsers' @@ -100,7 +100,8 @@ export default function Notifications(props: { user: User }) { privateUser={privateUser} cachedNotifications={localNotifications} /> - ) : localNotifications && localNotifications.length > 0 ? ( + ) : localNotificationGroups && + localNotificationGroups.length > 0 ? ( <div className={'min-h-[100vh]'}> <RenderNotificationGroups notificationGroups={localNotificationGroups} @@ -440,7 +441,11 @@ function IncomeNotificationItem(props: { highlighted && HIGHLIGHT_CLASS )} > - <a href={getSourceUrl(notification)}> + <div className={'relative'}> + <SiteLink + href={getSourceUrl(notification) ?? ''} + className={'absolute left-0 right-0 top-0 bottom-0 z-0'} + /> <Row className={'items-center text-gray-500 sm:justify-start'}> <div className={'line-clamp-2 flex max-w-xl shrink '}> <div className={'inline'}> @@ -466,7 +471,7 @@ function IncomeNotificationItem(props: { </div> </Row> <div className={'mt-4 border-b border-gray-300'} /> - </a> + </div> </div> ) } @@ -655,24 +660,24 @@ function NotificationItem(props: { highlighted && HIGHLIGHT_CLASS )} > - <div - className={'cursor-pointer'} - onClick={(event) => { - event.stopPropagation() - Router.push(getSourceUrl(notification) ?? '') - track('Notification Clicked', { - type: 'notification item', - sourceType, - sourceUserName, - sourceUserAvatarUrl, - sourceUpdateType, - reasonText, - reason, - sourceUserUsername, - sourceText, - }) - }} - > + <div className={'relative cursor-pointer'}> + <SiteLink + href={getSourceUrl(notification) ?? ''} + className={'absolute left-0 right-0 top-0 bottom-0 z-0'} + onClick={() => + track('Notification Clicked', { + type: 'notification item', + sourceType, + sourceUserName, + sourceUserAvatarUrl, + sourceUpdateType, + reasonText, + reason, + sourceUserUsername, + sourceText, + }) + } + /> <Row className={'items-center text-gray-500 sm:justify-start'}> <Avatar avatarUrl={ @@ -681,7 +686,7 @@ function NotificationItem(props: { : sourceUserAvatarUrl } size={'sm'} - className={'mr-2'} + className={'z-10 mr-2'} username={ questionNeedsResolution ? MANIFOLD_USERNAME : sourceUserUsername } @@ -697,7 +702,7 @@ function NotificationItem(props: { <UserLink name={sourceUserName || ''} username={sourceUserUsername || ''} - className={'mr-1 flex-shrink-0'} + className={'relative mr-1 flex-shrink-0'} justFirstName={true} /> )} @@ -764,10 +769,8 @@ function QuestionOrGroupLink(props: { </span> ) return ( - <a - className={ - 'ml-1 font-bold hover:underline hover:decoration-indigo-400 hover:decoration-2 ' - } + <SiteLink + className={'relative ml-1 font-bold'} href={ sourceContractCreatorUsername ? `/${sourceContractCreatorUsername}/${sourceContractSlug}` @@ -792,7 +795,7 @@ function QuestionOrGroupLink(props: { } > {sourceContractTitle || sourceTitle} - </a> + </SiteLink> ) } From b6c8390a460febbcf92a81cdb0e1d23809383409 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 15:01:13 -0500 Subject: [PATCH 018/113] Show order book button even on Quick bet --- web/components/bet-panel.tsx | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 351b012e..0cbee7b5 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -50,14 +50,10 @@ export function BetPanel(props: { const user = useUser() const userBets = useUserContractBets(user?.id, contract.id) const unfilledBets = useUnfilledBets(contract.id) ?? [] - const yourUnfilledBets = unfilledBets.filter((bet) => bet.userId === user?.id) const { sharesOutcome } = useSaveBinaryShares(contract, userBets) const [isLimitOrder, setIsLimitOrder] = useState(false) - const showLimitOrders = - (isLimitOrder && unfilledBets.length > 0) || yourUnfilledBets.length > 0 - return ( <Col className={className}> <SellRow @@ -85,7 +81,7 @@ export function BetPanel(props: { <SignUpPrompt /> </Col> - {showLimitOrders && ( + {unfilledBets.length > 0 && ( <LimitBets className="mt-4" contract={contract} bets={unfilledBets} /> )} </Col> @@ -105,9 +101,6 @@ export function SimpleBetPanel(props: { const [isLimitOrder, setIsLimitOrder] = useState(false) const unfilledBets = useUnfilledBets(contract.id) ?? [] - const yourUnfilledBets = unfilledBets.filter((bet) => bet.userId === user?.id) - const showLimitOrders = - (isLimitOrder && unfilledBets.length > 0) || yourUnfilledBets.length > 0 return ( <Col className={className}> @@ -138,7 +131,7 @@ export function SimpleBetPanel(props: { <SignUpPrompt /> </Col> - {showLimitOrders && ( + {unfilledBets.length > 0 && ( <LimitBets className="mt-4" contract={contract} bets={unfilledBets} /> )} </Col> From 6dcad6225b797e4c536097a7e7d6d8456f91a258 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 14:16:20 -0600 Subject: [PATCH 019/113] Next/Previous => Older/Newer --- web/components/pagination.tsx | 30 +++++++++++++++++++++--------- web/pages/notifications.tsx | 2 ++ 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/web/components/pagination.tsx b/web/components/pagination.tsx index a585985d..069ebda7 100644 --- a/web/components/pagination.tsx +++ b/web/components/pagination.tsx @@ -4,8 +4,18 @@ export function Pagination(props: { totalItems: number setPage: (page: number) => void scrollToTop?: boolean + nextTitle?: string + prevTitle?: string }) { - const { page, itemsPerPage, totalItems, setPage, scrollToTop } = props + const { + page, + itemsPerPage, + totalItems, + setPage, + scrollToTop, + nextTitle, + prevTitle, + } = props const maxPage = Math.ceil(totalItems / itemsPerPage) - 1 @@ -25,19 +35,21 @@ export function Pagination(props: { </p> </div> <div className="flex flex-1 justify-between sm:justify-end"> - <a - href={scrollToTop ? '#' : undefined} - className="relative inline-flex cursor-pointer select-none items-center rounded-md border border-gray-300 bg-white px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50" - onClick={() => page > 0 && setPage(page - 1)} - > - Previous - </a> + {page > 0 && ( + <a + href={scrollToTop ? '#' : undefined} + className="relative inline-flex cursor-pointer select-none items-center rounded-md border border-gray-300 bg-white px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50" + onClick={() => page > 0 && setPage(page - 1)} + > + {prevTitle ?? 'Previous'} + </a> + )} <a href={scrollToTop ? '#' : undefined} className="relative ml-3 inline-flex cursor-pointer select-none items-center rounded-md border border-gray-300 bg-white px-4 py-2 text-sm font-medium text-gray-700 hover:bg-gray-50" onClick={() => page < maxPage && setPage(page + 1)} > - Next + {nextTitle ?? 'Next'} </a> </div> </nav> diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index a45bf030..7867e197 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -205,6 +205,8 @@ function NotificationsList(props: { totalItems={allGroupedNotifications.length} setPage={setPage} scrollToTop + nextTitle={'Older'} + prevTitle={'Newer'} /> )} </div> From b5ef7490c3cb9b6713ed9214365448c2a394355b Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 14:24:36 -0600 Subject: [PATCH 020/113] NotificationSettings to its own file --- web/components/NotificationSettings.tsx | 210 +++++++++++++++++++++++ web/pages/notifications.tsx | 214 +----------------------- 2 files changed, 214 insertions(+), 210 deletions(-) create mode 100644 web/components/NotificationSettings.tsx diff --git a/web/components/NotificationSettings.tsx b/web/components/NotificationSettings.tsx new file mode 100644 index 00000000..2c657857 --- /dev/null +++ b/web/components/NotificationSettings.tsx @@ -0,0 +1,210 @@ +import { useUser } from 'web/hooks/use-user' +import React, { useEffect, useState } from 'react' +import { notification_subscribe_types, PrivateUser } from 'common/lib/user' +import { listenForPrivateUser, updatePrivateUser } from 'web/lib/firebase/users' +import toast from 'react-hot-toast' +import { track } from '@amplitude/analytics-browser' +import { LoadingIndicator } from 'web/components/loading-indicator' +import { Row } from 'web/components/layout/row' +import clsx from 'clsx' +import { CheckIcon, XIcon } from '@heroicons/react/outline' +import { ChoicesToggleGroup } from 'web/components/choices-toggle-group' + +export function NotificationSettings() { + const user = useUser() + const [notificationSettings, setNotificationSettings] = + useState<notification_subscribe_types>('all') + const [emailNotificationSettings, setEmailNotificationSettings] = + useState<notification_subscribe_types>('all') + const [privateUser, setPrivateUser] = useState<PrivateUser | null>(null) + + useEffect(() => { + if (user) listenForPrivateUser(user.id, setPrivateUser) + }, [user]) + + useEffect(() => { + if (!privateUser) return + if (privateUser.notificationPreferences) { + setNotificationSettings(privateUser.notificationPreferences) + } + if ( + privateUser.unsubscribedFromResolutionEmails && + privateUser.unsubscribedFromCommentEmails && + privateUser.unsubscribedFromAnswerEmails + ) { + setEmailNotificationSettings('none') + } else if ( + !privateUser.unsubscribedFromResolutionEmails && + !privateUser.unsubscribedFromCommentEmails && + !privateUser.unsubscribedFromAnswerEmails + ) { + setEmailNotificationSettings('all') + } else { + setEmailNotificationSettings('less') + } + }, [privateUser]) + + const loading = 'Changing Notifications Settings' + const success = 'Notification Settings Changed!' + function changeEmailNotifications(newValue: notification_subscribe_types) { + if (!privateUser) return + if (newValue === 'all') { + toast.promise( + updatePrivateUser(privateUser.id, { + unsubscribedFromResolutionEmails: false, + unsubscribedFromCommentEmails: false, + unsubscribedFromAnswerEmails: false, + }), + { + loading, + success, + error: (err) => `${err.message}`, + } + ) + } else if (newValue === 'less') { + toast.promise( + updatePrivateUser(privateUser.id, { + unsubscribedFromResolutionEmails: false, + unsubscribedFromCommentEmails: true, + unsubscribedFromAnswerEmails: true, + }), + { + loading, + success, + error: (err) => `${err.message}`, + } + ) + } else if (newValue === 'none') { + toast.promise( + updatePrivateUser(privateUser.id, { + unsubscribedFromResolutionEmails: true, + unsubscribedFromCommentEmails: true, + unsubscribedFromAnswerEmails: true, + }), + { + loading, + success, + error: (err) => `${err.message}`, + } + ) + } + } + + function changeInAppNotificationSettings( + newValue: notification_subscribe_types + ) { + if (!privateUser) return + track('In-App Notification Preferences Changed', { + newPreference: newValue, + oldPreference: privateUser.notificationPreferences, + }) + toast.promise( + updatePrivateUser(privateUser.id, { + notificationPreferences: newValue, + }), + { + loading, + success, + error: (err) => `${err.message}`, + } + ) + } + + useEffect(() => { + if (privateUser && privateUser.notificationPreferences) + setNotificationSettings(privateUser.notificationPreferences) + else setNotificationSettings('all') + }, [privateUser]) + + if (!privateUser) { + return <LoadingIndicator spinnerClassName={'border-gray-500 h-4 w-4'} /> + } + + function NotificationSettingLine(props: { + label: string + highlight: boolean + }) { + const { label, highlight } = props + return ( + <Row className={clsx('my-1 text-gray-300', highlight && '!text-black')}> + {highlight ? <CheckIcon height={20} /> : <XIcon height={20} />} + {label} + </Row> + ) + } + + return ( + <div className={'p-2'}> + <div>In App Notifications</div> + <ChoicesToggleGroup + currentChoice={notificationSettings} + choicesMap={{ All: 'all', Less: 'less', None: 'none' }} + setChoice={(choice) => + changeInAppNotificationSettings( + choice as notification_subscribe_types + ) + } + className={'col-span-4 p-2'} + toggleClassName={'w-24'} + /> + <div className={'mt-4 text-sm'}> + <div> + <div className={''}> + You will receive notifications for: + <NotificationSettingLine + label={"Resolution of questions you've interacted with"} + highlight={notificationSettings !== 'none'} + /> + <NotificationSettingLine + highlight={notificationSettings !== 'none'} + label={'Activity on your own questions, comments, & answers'} + /> + <NotificationSettingLine + highlight={notificationSettings !== 'none'} + label={"Activity on questions you're betting on"} + /> + <NotificationSettingLine + highlight={notificationSettings !== 'none'} + label={"Income & referral bonuses you've received"} + /> + <NotificationSettingLine + label={"Activity on questions you've ever bet or commented on"} + highlight={notificationSettings === 'all'} + /> + </div> + </div> + </div> + <div className={'mt-4'}>Email Notifications</div> + <ChoicesToggleGroup + currentChoice={emailNotificationSettings} + choicesMap={{ All: 'all', Less: 'less', None: 'none' }} + setChoice={(choice) => + changeEmailNotifications(choice as notification_subscribe_types) + } + className={'col-span-4 p-2'} + toggleClassName={'w-24'} + /> + <div className={'mt-4 text-sm'}> + <div> + You will receive emails for: + <NotificationSettingLine + label={"Resolution of questions you're betting on"} + highlight={emailNotificationSettings !== 'none'} + /> + <NotificationSettingLine + label={'Closure of your questions'} + highlight={emailNotificationSettings !== 'none'} + /> + <NotificationSettingLine + label={'Activity on your questions'} + highlight={emailNotificationSettings === 'all'} + /> + <NotificationSettingLine + label={"Activity on questions you've answered or commented on"} + highlight={emailNotificationSettings === 'all'} + /> + </div> + </div> + </div> + ) +} diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index 7867e197..0d5ecdb9 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -1,5 +1,5 @@ import { Tabs } from 'web/components/layout/tabs' -import { usePrivateUser, useUser } from 'web/hooks/use-user' +import { usePrivateUser } from 'web/hooks/use-user' import React, { useEffect, useMemo, useState } from 'react' import { Notification, notification_source_types } from 'common/notification' import { Avatar, EmptyAvatar } from 'web/components/avatar' @@ -12,16 +12,10 @@ import { UserLink } from 'web/components/user-page' import { MANIFOLD_AVATAR_URL, MANIFOLD_USERNAME, - notification_subscribe_types, PrivateUser, User, } from 'common/user' -import { ChoicesToggleGroup } from 'web/components/choices-toggle-group' -import { - getUser, - listenForPrivateUser, - updatePrivateUser, -} from 'web/lib/firebase/users' +import { getUser } from 'web/lib/firebase/users' import { LoadingIndicator } from 'web/components/loading-indicator' import clsx from 'clsx' import { RelativeTimestamp } from 'web/components/relative-timestamp' @@ -37,8 +31,7 @@ import { NotificationGroup, usePreferredGroupedNotifications, } from 'web/hooks/use-notifications' -import { CheckIcon, TrendingUpIcon, XIcon } from '@heroicons/react/outline' -import toast from 'react-hot-toast' +import { TrendingUpIcon } from '@heroicons/react/outline' import { formatMoney } from 'common/util/format' import { groupPath } from 'web/lib/firebase/groups' import { UNIQUE_BETTOR_BONUS_AMOUNT } from 'common/numeric-constants' @@ -53,6 +46,7 @@ import { redirectIfLoggedOut, } from 'web/lib/firebase/server-auth' import { SiteLink } from 'web/components/site-link' +import { NotificationSettings } from 'web/components/NotificationSettings' export const NOTIFICATIONS_PER_PAGE = 30 const MULTIPLE_USERS_KEY = 'multipleUsers' @@ -986,203 +980,3 @@ function getReasonForShowingNotification( } return reasonText } - -// TODO: where should we put referral bonus notifications? -function NotificationSettings() { - const user = useUser() - const [notificationSettings, setNotificationSettings] = - useState<notification_subscribe_types>('all') - const [emailNotificationSettings, setEmailNotificationSettings] = - useState<notification_subscribe_types>('all') - const [privateUser, setPrivateUser] = useState<PrivateUser | null>(null) - - useEffect(() => { - if (user) listenForPrivateUser(user.id, setPrivateUser) - }, [user]) - - useEffect(() => { - if (!privateUser) return - if (privateUser.notificationPreferences) { - setNotificationSettings(privateUser.notificationPreferences) - } - if ( - privateUser.unsubscribedFromResolutionEmails && - privateUser.unsubscribedFromCommentEmails && - privateUser.unsubscribedFromAnswerEmails - ) { - setEmailNotificationSettings('none') - } else if ( - !privateUser.unsubscribedFromResolutionEmails && - !privateUser.unsubscribedFromCommentEmails && - !privateUser.unsubscribedFromAnswerEmails - ) { - setEmailNotificationSettings('all') - } else { - setEmailNotificationSettings('less') - } - }, [privateUser]) - - const loading = 'Changing Notifications Settings' - const success = 'Notification Settings Changed!' - function changeEmailNotifications(newValue: notification_subscribe_types) { - if (!privateUser) return - if (newValue === 'all') { - toast.promise( - updatePrivateUser(privateUser.id, { - unsubscribedFromResolutionEmails: false, - unsubscribedFromCommentEmails: false, - unsubscribedFromAnswerEmails: false, - }), - { - loading, - success, - error: (err) => `${err.message}`, - } - ) - } else if (newValue === 'less') { - toast.promise( - updatePrivateUser(privateUser.id, { - unsubscribedFromResolutionEmails: false, - unsubscribedFromCommentEmails: true, - unsubscribedFromAnswerEmails: true, - }), - { - loading, - success, - error: (err) => `${err.message}`, - } - ) - } else if (newValue === 'none') { - toast.promise( - updatePrivateUser(privateUser.id, { - unsubscribedFromResolutionEmails: true, - unsubscribedFromCommentEmails: true, - unsubscribedFromAnswerEmails: true, - }), - { - loading, - success, - error: (err) => `${err.message}`, - } - ) - } - } - - function changeInAppNotificationSettings( - newValue: notification_subscribe_types - ) { - if (!privateUser) return - track('In-App Notification Preferences Changed', { - newPreference: newValue, - oldPreference: privateUser.notificationPreferences, - }) - toast.promise( - updatePrivateUser(privateUser.id, { - notificationPreferences: newValue, - }), - { - loading, - success, - error: (err) => `${err.message}`, - } - ) - } - - useEffect(() => { - if (privateUser && privateUser.notificationPreferences) - setNotificationSettings(privateUser.notificationPreferences) - else setNotificationSettings('all') - }, [privateUser]) - - if (!privateUser) { - return <LoadingIndicator spinnerClassName={'border-gray-500 h-4 w-4'} /> - } - - function NotificationSettingLine(props: { - label: string - highlight: boolean - }) { - const { label, highlight } = props - return ( - <Row className={clsx('my-1 text-gray-300', highlight && '!text-black')}> - {highlight ? <CheckIcon height={20} /> : <XIcon height={20} />} - {label} - </Row> - ) - } - - return ( - <div className={'p-2'}> - <div>In App Notifications</div> - <ChoicesToggleGroup - currentChoice={notificationSettings} - choicesMap={{ All: 'all', Less: 'less', None: 'none' }} - setChoice={(choice) => - changeInAppNotificationSettings( - choice as notification_subscribe_types - ) - } - className={'col-span-4 p-2'} - toggleClassName={'w-24'} - /> - <div className={'mt-4 text-sm'}> - <div> - <div className={''}> - You will receive notifications for: - <NotificationSettingLine - label={"Resolution of questions you've interacted with"} - highlight={notificationSettings !== 'none'} - /> - <NotificationSettingLine - highlight={notificationSettings !== 'none'} - label={'Activity on your own questions, comments, & answers'} - /> - <NotificationSettingLine - highlight={notificationSettings !== 'none'} - label={"Activity on questions you're betting on"} - /> - <NotificationSettingLine - highlight={notificationSettings !== 'none'} - label={"Income & referral bonuses you've received"} - /> - <NotificationSettingLine - label={"Activity on questions you've ever bet or commented on"} - highlight={notificationSettings === 'all'} - /> - </div> - </div> - </div> - <div className={'mt-4'}>Email Notifications</div> - <ChoicesToggleGroup - currentChoice={emailNotificationSettings} - choicesMap={{ All: 'all', Less: 'less', None: 'none' }} - setChoice={(choice) => - changeEmailNotifications(choice as notification_subscribe_types) - } - className={'col-span-4 p-2'} - toggleClassName={'w-24'} - /> - <div className={'mt-4 text-sm'}> - <div> - You will receive emails for: - <NotificationSettingLine - label={"Resolution of questions you're betting on"} - highlight={emailNotificationSettings !== 'none'} - /> - <NotificationSettingLine - label={'Closure of your questions'} - highlight={emailNotificationSettings !== 'none'} - /> - <NotificationSettingLine - label={'Activity on your questions'} - highlight={emailNotificationSettings === 'all'} - /> - <NotificationSettingLine - label={"Activity on questions you've answered or commented on"} - highlight={emailNotificationSettings === 'all'} - /> - </div> - </div> - </div> - ) -} From 6c070464dd5ffaebaa70e90c2f89f0cf19515f10 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 15:39:15 -0500 Subject: [PATCH 021/113] Use static props to load leaderboard fast --- web/lib/firebase/users.ts | 4 +- web/pages/leaderboards.tsx | 152 ++++++++++++++++++------------------- 2 files changed, 76 insertions(+), 80 deletions(-) diff --git a/web/lib/firebase/users.ts b/web/lib/firebase/users.ts index 77c5c48d..884dde04 100644 --- a/web/lib/firebase/users.ts +++ b/web/lib/firebase/users.ts @@ -275,7 +275,7 @@ export function getTopTraders(period: Period) { limit(20) ) - return getValues(topTraders) + return getValues<User>(topTraders) } export function getTopCreators(period: Period) { @@ -284,7 +284,7 @@ export function getTopCreators(period: Period) { orderBy('creatorVolumeCached.' + period, 'desc'), limit(20) ) - return getValues(topCreators) + return getValues<User>(topCreators) } export async function getTopFollowed() { diff --git a/web/pages/leaderboards.tsx b/web/pages/leaderboards.tsx index 061f3a19..6f15e13e 100644 --- a/web/pages/leaderboards.tsx +++ b/web/pages/leaderboards.tsx @@ -9,97 +9,96 @@ import { User, } from 'web/lib/firebase/users' import { formatMoney } from 'common/util/format' -import { fromPropz, usePropz } from 'web/hooks/use-propz' import { useEffect, useState } from 'react' -import { LoadingIndicator } from 'web/components/loading-indicator' import { Title } from 'web/components/title' import { Tabs } from 'web/components/layout/tabs' import { useTracking } from 'web/hooks/use-tracking' -export const getStaticProps = fromPropz(getStaticPropz) -export async function getStaticPropz() { - return queryLeaderboardUsers('allTime') -} -const queryLeaderboardUsers = async (period: Period) => { - const [topTraders, topCreators, topFollowed] = await Promise.all([ - getTopTraders(period).catch(() => {}), - getTopCreators(period).catch(() => {}), - getTopFollowed().catch(() => {}), - ]) +export async function getStaticProps() { + const props = await fetchProps() + return { - props: { - topTraders, - topCreators, - topFollowed, - }, + props, revalidate: 60, // regenerate after a minute } } -export default function Leaderboards(props: { +const fetchProps = async () => { + const [allTime, monthly, weekly, daily] = await Promise.all([ + queryLeaderboardUsers('allTime'), + queryLeaderboardUsers('monthly'), + queryLeaderboardUsers('weekly'), + queryLeaderboardUsers('daily'), + ]) + const topFollowed = await getTopFollowed() + + return { + allTime, + monthly, + weekly, + daily, + topFollowed, + } +} + +const queryLeaderboardUsers = async (period: Period) => { + const [topTraders, topCreators] = await Promise.all([ + getTopTraders(period), + getTopCreators(period), + ]) + return { + topTraders, + topCreators, + } +} + +type leaderboard = { topTraders: User[] topCreators: User[] +} + +export default function Leaderboards(_props: { + allTime: leaderboard + monthly: leaderboard + weekly: leaderboard + daily: leaderboard topFollowed: User[] }) { - props = usePropz(props, getStaticPropz) ?? { - topTraders: [], - topCreators: [], - topFollowed: [], - } - const { topFollowed } = props - const [topTradersState, setTopTraders] = useState(props.topTraders) - const [topCreatorsState, setTopCreators] = useState(props.topCreators) - const [isLoading, setLoading] = useState(false) - const [period, setPeriod] = useState<Period>('allTime') - + const [props, setProps] = useState<Parameters<typeof Leaderboards>[0]>(_props) useEffect(() => { - setLoading(true) - queryLeaderboardUsers(period).then((res) => { - setTopTraders(res.props.topTraders as User[]) - setTopCreators(res.props.topCreators as User[]) - setLoading(false) - }) - }, [period]) + fetchProps().then((props) => setProps(props)) + }, []) + + const { topFollowed } = props const LeaderboardWithPeriod = (period: Period) => { + const { topTraders, topCreators } = props[period] + return ( <> <Col className="mx-4 items-center gap-10 lg:flex-row"> - {!isLoading ? ( - <> - {period === 'allTime' || - period == 'weekly' || - period === 'daily' ? ( //TODO: show other periods once they're available - <Leaderboard - title="🏅 Top bettors" - users={topTradersState} - columns={[ - { - header: 'Total profit', - renderCell: (user) => - formatMoney(user.profitCached[period]), - }, - ]} - /> - ) : ( - <></> - )} + <Leaderboard + title="🏅 Top bettors" + users={topTraders} + columns={[ + { + header: 'Total profit', + renderCell: (user) => formatMoney(user.profitCached[period]), + }, + ]} + /> - <Leaderboard - title="🏅 Top creators" - users={topCreatorsState} - columns={[ - { - header: 'Total bet', - renderCell: (user) => - formatMoney(user.creatorVolumeCached[period]), - }, - ]} - /> - </> - ) : ( - <LoadingIndicator spinnerClassName={'border-gray-500'} /> - )} + <Leaderboard + title="🏅 Top creators" + users={topCreators} + columns={[ + { + header: 'Total bet', + renderCell: (user) => + formatMoney(user.creatorVolumeCached[period]), + }, + ]} + /> </Col> {period === 'allTime' ? ( <Col className="mx-4 my-10 items-center gap-10 lg:mx-0 lg:w-1/2 lg:flex-row"> @@ -128,19 +127,16 @@ export default function Leaderboards(props: { <Tabs currentPageForAnalytics={'leaderboards'} defaultIndex={0} - onClick={(title, index) => { - const period = ['allTime', 'monthly', 'weekly', 'daily'][index] - setPeriod(period as Period) - }} tabs={[ { title: 'All Time', content: LeaderboardWithPeriod('allTime'), }, - { - title: 'Monthly', - content: LeaderboardWithPeriod('monthly'), - }, + // TODO: Enable this near the end of July! + // { + // title: 'Monthly', + // content: LeaderboardWithPeriod('monthly'), + // }, { title: 'Weekly', content: LeaderboardWithPeriod('weekly'), From 2684c8bcca3bd5659b0ba92fed35959a789e1379 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 15:39:40 -0500 Subject: [PATCH 022/113] Default to weekly leaderboard --- web/pages/leaderboards.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/pages/leaderboards.tsx b/web/pages/leaderboards.tsx index 6f15e13e..7ee13172 100644 --- a/web/pages/leaderboards.tsx +++ b/web/pages/leaderboards.tsx @@ -126,7 +126,7 @@ export default function Leaderboards(_props: { <Title text={'Leaderboards'} className={'hidden md:block'} /> <Tabs currentPageForAnalytics={'leaderboards'} - defaultIndex={0} + defaultIndex={1} tabs={[ { title: 'All Time', From e9ad30cc74440ad53e6bcd664a4b8f4500a4fadc Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 15:43:37 -0500 Subject: [PATCH 023/113] Increase number of contracts shown in bets list --- web/components/bets-list.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/components/bets-list.tsx b/web/components/bets-list.tsx index db6b0d05..2114ec2b 100644 --- a/web/components/bets-list.tsx +++ b/web/components/bets-list.tsx @@ -50,7 +50,7 @@ import { LimitOrderTable } from './limit-bets' type BetSort = 'newest' | 'profit' | 'closeTime' | 'value' type BetFilter = 'open' | 'limit_bet' | 'sold' | 'closed' | 'resolved' | 'all' -const CONTRACTS_PER_PAGE = 20 +const CONTRACTS_PER_PAGE = 50 export function BetsList(props: { user: User From fc9e26160108ca8025e16c6112a13e7920d3db67 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 15:45:47 -0500 Subject: [PATCH 024/113] Fix build --- web/components/NotificationSettings.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/components/NotificationSettings.tsx b/web/components/NotificationSettings.tsx index 2c657857..7a839a7a 100644 --- a/web/components/NotificationSettings.tsx +++ b/web/components/NotificationSettings.tsx @@ -1,6 +1,6 @@ import { useUser } from 'web/hooks/use-user' import React, { useEffect, useState } from 'react' -import { notification_subscribe_types, PrivateUser } from 'common/lib/user' +import { notification_subscribe_types, PrivateUser } from 'common/user' import { listenForPrivateUser, updatePrivateUser } from 'web/lib/firebase/users' import toast from 'react-hot-toast' import { track } from '@amplitude/analytics-browser' From f9aab390399f62e7bf9f1dbe98387222c48e3b31 Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 13:57:32 -0700 Subject: [PATCH 025/113] Clean up font loading and see if it fixes our problem (#667) --- web/pages/_document.tsx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/web/pages/_document.tsx b/web/pages/_document.tsx index 2ff0b494..b8cb657c 100644 --- a/web/pages/_document.tsx +++ b/web/pages/_document.tsx @@ -6,16 +6,15 @@ export default function Document() { <Html data-theme="mantic" className="min-h-screen"> <Head> <link rel="icon" href={ENV_CONFIG.faviconPath} /> - - <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" - crossOrigin="true" + crossOrigin="anonymous" /> <link href="https://fonts.googleapis.com/css2?family=Major+Mono+Display&family=Readex+Pro:wght@300;400;600;700&display=swap" rel="stylesheet" + crossOrigin="anonymous" /> <link rel="stylesheet" @@ -24,7 +23,6 @@ export default function Document() { crossOrigin="anonymous" /> </Head> - <body className="font-readex-pro bg-base-200 min-h-screen"> <Main /> <NextScript /> From af6552958fd669b6ac7573faa149173d0bddce65 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 16:05:49 -0500 Subject: [PATCH 026/113] Show all-time profit on UserPage --- web/components/user-page.tsx | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/web/components/user-page.tsx b/web/components/user-page.tsx index 38efe345..09c28920 100644 --- a/web/components/user-page.tsx +++ b/web/components/user-page.tsx @@ -39,6 +39,7 @@ import { PortfolioValueSection } from './portfolio/portfolio-value-section' import { filterDefined } from 'common/util/array' import { useUserBets } from 'web/hooks/use-user-bets' import { ReferralsButton } from 'web/components/referrals-button' +import { formatMoney } from 'common/util/format' export function UserLink(props: { name: string @@ -123,6 +124,7 @@ export function UserPage(props: { const yourFollows = useFollows(currentUser?.id) const isFollowing = yourFollows?.includes(user.id) + const profit = user.profitCached.allTime const onFollow = () => { if (!currentUser) return @@ -187,6 +189,17 @@ export function UserPage(props: { <Col className="mx-4 -mt-6"> <span className="text-2xl font-bold">{user.name}</span> <span className="text-gray-500">@{user.username}</span> + <span className="text-gray-500"> + <span + className={clsx( + 'text-md', + profit >= 0 ? 'text-green-600' : 'text-red-400' + )} + > + {formatMoney(profit)} + </span>{' '} + profit + </span> <Spacer h={4} /> From 6d3490cd689f14248718537b9757b6ac760d4f8b Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 14:20:23 -0700 Subject: [PATCH 027/113] Turn off Next.js font inlining (#668) --- web/next.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/web/next.config.js b/web/next.config.js index 56f643d3..37758952 100644 --- a/web/next.config.js +++ b/web/next.config.js @@ -4,6 +4,7 @@ const API_DOCS_URL = 'https://docs.manifold.markets/api' module.exports = { staticPageGenerationTimeout: 600, // e.g. stats page reactStrictMode: true, + optimizeFonts: false, experimental: { externalDir: true, optimizeCss: true, From 6124ea01f694df4cd7eeeb4314b1565d79e502b0 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 16:57:32 -0500 Subject: [PATCH 028/113] Fix a DOM error in console --- web/components/limit-bets.tsx | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/web/components/limit-bets.tsx b/web/components/limit-bets.tsx index 7aaa0601..8c9f4e6b 100644 --- a/web/components/limit-bets.tsx +++ b/web/components/limit-bets.tsx @@ -76,11 +76,13 @@ export function LimitOrderTable(props: { return ( <table className="table-compact table w-full rounded text-gray-500"> <thead> - {!isYou && <th></th>} - <th>Outcome</th> - <th>{isPseudoNumeric ? 'Value' : 'Prob'}</th> - <th>Amount</th> - {isYou && <th></th>} + <tr> + {!isYou && <th></th>} + <th>Outcome</th> + <th>{isPseudoNumeric ? 'Value' : 'Prob'}</th> + <th>Amount</th> + {isYou && <th></th>} + </tr> </thead> <tbody> {limitBets.map((bet) => ( From 58d62863615992ea33818cd9fc0f86b395cd49f5 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 17:22:58 -0500 Subject: [PATCH 029/113] Fix chart area extending into labels below --- web/components/contract/contract-prob-graph.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/web/components/contract/contract-prob-graph.tsx b/web/components/contract/contract-prob-graph.tsx index c6e17cd6..c829c646 100644 --- a/web/components/contract/contract-prob-graph.tsx +++ b/web/components/contract/contract-prob-graph.tsx @@ -150,7 +150,8 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { enableSlices="x" enableGridX={!!width && width >= 800} enableArea - margin={{ top: 20, right: 20, bottom: 25, left: 40 }} + areaBaselineValue={isBinary ? 0 : contract.min} + margin={{ top: 20, right: 20, bottom: 65, left: 40 }} animate={false} sliceTooltip={SliceTooltip} /> From 2152e5286af54ef1e8f3dc0a000b294f211b0df3 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 16:29:41 -0600 Subject: [PATCH 030/113] Score & sort by unique bettors in last 3 days --- common/contract.ts | 1 + functions/src/index.ts | 1 + functions/src/score-contracts.ts | 41 +++++++++++++++++++++++++ web/components/contract-search.tsx | 5 +-- web/hooks/use-sort-and-query-params.tsx | 5 +-- web/pages/contract-search-firestore.tsx | 8 ++--- web/pages/home.tsx | 4 +-- 7 files changed, 54 insertions(+), 11 deletions(-) create mode 100644 functions/src/score-contracts.ts diff --git a/common/contract.ts b/common/contract.ts index 5ddcf0b8..b1242ab9 100644 --- a/common/contract.ts +++ b/common/contract.ts @@ -48,6 +48,7 @@ export type Contract<T extends AnyContractType = AnyContractType> = { groupSlugs?: string[] uniqueBettorIds?: string[] uniqueBettorCount?: number + popularityScore?: number } & T export type BinaryContract = Contract & Binary diff --git a/functions/src/index.ts b/functions/src/index.ts index 3055f8dc..df311886 100644 --- a/functions/src/index.ts +++ b/functions/src/index.ts @@ -22,6 +22,7 @@ export * from './on-update-user' export * from './on-create-comment-on-group' export * from './on-create-txn' export * from './on-delete-group' +export * from './score-contracts' // v2 export * from './health' diff --git a/functions/src/score-contracts.ts b/functions/src/score-contracts.ts new file mode 100644 index 00000000..ab6512d0 --- /dev/null +++ b/functions/src/score-contracts.ts @@ -0,0 +1,41 @@ +import * as functions from 'firebase-functions' +import * as admin from 'firebase-admin' +import { Bet } from 'common/bet' +import { uniq } from 'lodash' +import { Contract } from 'common/contract' + +export const scoreContracts = functions.pubsub + .schedule('every 1 hours') + .onRun(async () => { + await scoreContractsInternal() + }) +const firestore = admin.firestore() + +async function scoreContractsInternal() { + const now = Date.now() + const lastHour = now - 3600000 + const last3Days = now - 2592000000 + + const contracts = await firestore + .collection('contracts') + .where('lastUpdatedTime', '>', lastHour) + .get() + + for (const contractSnap of contracts.docs) { + const contract = contractSnap.data() as Contract + const contractId = contractSnap.id + const bets = await firestore + .collection(`contracts/${contractId}/bets`) + .where('createdTime', '>', last3Days) + .get() + const bettors = bets.docs + .map((doc) => doc.data() as Bet) + .map((bet) => bet.userId) + const score = uniq(bettors).length + if (contract.popularityScore !== score) + await firestore + .collection('contracts') + .doc(contractId) + .update({ popularityScore: score }) + } +} diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 013208d8..dc97f482 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -39,13 +39,14 @@ const indexPrefix = ENV === 'DEV' ? 'dev-' : '' const sortIndexes = [ { label: 'Newest', value: indexPrefix + 'contracts-newest' }, { label: 'Oldest', value: indexPrefix + 'contracts-oldest' }, - { label: 'Most popular', value: indexPrefix + 'contracts-most-popular' }, + { label: 'Most popular', value: indexPrefix + 'contracts-score' }, { label: 'Most traded', value: indexPrefix + 'contracts-most-traded' }, { label: '24h volume', value: indexPrefix + 'contracts-24-hour-vol' }, { label: 'Last updated', value: indexPrefix + 'contracts-last-updated' }, { label: 'Close date', value: indexPrefix + 'contracts-close-date' }, { label: 'Resolve date', value: indexPrefix + 'contracts-resolve-date' }, ] +export const DEFAULT_SORT = 'score' type filter = 'personal' | 'open' | 'closed' | 'resolved' | 'all' const filterOptions: { [label: string]: filter } = { @@ -95,7 +96,7 @@ export function ContractSearch(props: { .map(({ value }) => value) .includes(`${indexPrefix}contracts-${initialSort ?? ''}`) ? initialSort - : querySortOptions?.defaultSort ?? 'most-popular' + : querySortOptions?.defaultSort ?? DEFAULT_SORT const [filter, setFilter] = useState<filter>( querySortOptions?.defaultFilter ?? 'open' diff --git a/web/hooks/use-sort-and-query-params.tsx b/web/hooks/use-sort-and-query-params.tsx index 5c9a247f..9023dc1a 100644 --- a/web/hooks/use-sort-and-query-params.tsx +++ b/web/hooks/use-sort-and-query-params.tsx @@ -3,6 +3,7 @@ import { useRouter } from 'next/router' import { useEffect, useMemo, useState } from 'react' import { useSearchBox } from 'react-instantsearch-hooks-web' import { track } from 'web/lib/service/analytics' +import { DEFAULT_SORT } from 'web/components/contract-search' const MARKETS_SORT = 'markets_sort' @@ -10,11 +11,11 @@ export type Sort = | 'newest' | 'oldest' | 'most-traded' - | 'most-popular' | '24-hour-vol' | 'close-date' | 'resolve-date' | 'last-updated' + | 'score' export function getSavedSort() { // TODO: this obviously doesn't work with SSR, common sense would suggest @@ -31,7 +32,7 @@ export function useInitialQueryAndSort(options?: { shouldLoadFromStorage?: boolean }) { const { defaultSort, shouldLoadFromStorage } = defaults(options, { - defaultSort: 'most-popular', + defaultSort: DEFAULT_SORT, shouldLoadFromStorage: true, }) const router = useRouter() diff --git a/web/pages/contract-search-firestore.tsx b/web/pages/contract-search-firestore.tsx index 0ef8cdfe..2d45e831 100644 --- a/web/pages/contract-search-firestore.tsx +++ b/web/pages/contract-search-firestore.tsx @@ -54,10 +54,8 @@ export default function ContractSearchFirestore(props: { ) } else if (sort === 'most-traded') { matches.sort((a, b) => b.volume - a.volume) - } else if (sort === 'most-popular') { - matches.sort( - (a, b) => (b.uniqueBettorCount ?? 0) - (a.uniqueBettorCount ?? 0) - ) + } else if (sort === 'score') { + matches.sort((a, b) => (b.popularityScore ?? 0) - (a.popularityScore ?? 0)) } else if (sort === '24-hour-vol') { // Use lodash for stable sort, so previous sort breaks all ties. matches = sortBy(matches, ({ volume7Days }) => -1 * volume7Days) @@ -104,7 +102,7 @@ export default function ContractSearchFirestore(props: { > <option value="newest">Newest</option> <option value="oldest">Oldest</option> - <option value="most-popular">Most popular</option> + <option value="score">Most popular</option> <option value="most-traded">Most traded</option> <option value="24-hour-vol">24h volume</option> <option value="close-date">Closing soon</option> diff --git a/web/pages/home.tsx b/web/pages/home.tsx index 6aa99a07..53bb6ec9 100644 --- a/web/pages/home.tsx +++ b/web/pages/home.tsx @@ -5,7 +5,7 @@ import { PlusSmIcon } from '@heroicons/react/solid' import { Page } from 'web/components/page' import { Col } from 'web/components/layout/col' import { getSavedSort } from 'web/hooks/use-sort-and-query-params' -import { ContractSearch } from 'web/components/contract-search' +import { ContractSearch, DEFAULT_SORT } from 'web/components/contract-search' import { Contract } from 'common/contract' import { ContractPageContent } from './[username]/[contractSlug]' import { getContractFromSlug } from 'web/lib/firebase/contracts' @@ -28,7 +28,7 @@ const Home = () => { <ContractSearch querySortOptions={{ shouldLoadFromStorage: true, - defaultSort: getSavedSort() ?? 'most-popular', + defaultSort: getSavedSort() ?? DEFAULT_SORT, }} onContractClick={(c) => { // Show contract without navigating to contract page. From 4aface583d921773eb7f158f63d0bee55624f4f3 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 16:41:11 -0600 Subject: [PATCH 031/113] Remove pesky loading spinner --- web/pages/notifications.tsx | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index 0d5ecdb9..d011e757 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -94,15 +94,12 @@ export default function Notifications(props: { user: User }) { privateUser={privateUser} cachedNotifications={localNotifications} /> - ) : localNotificationGroups && - localNotificationGroups.length > 0 ? ( + ) : ( <div className={'min-h-[100vh]'}> <RenderNotificationGroups notificationGroups={localNotificationGroups} /> </div> - ) : ( - <LoadingIndicator /> ), }, { From 1f0983a145c2d82f679e6e174887eb2a4f26eff4 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 17:08:51 -0600 Subject: [PATCH 032/113] Find old contracts to decrement score on --- functions/src/score-contracts.ts | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/functions/src/score-contracts.ts b/functions/src/score-contracts.ts index ab6512d0..733f1397 100644 --- a/functions/src/score-contracts.ts +++ b/functions/src/score-contracts.ts @@ -3,6 +3,7 @@ import * as admin from 'firebase-admin' import { Bet } from 'common/bet' import { uniq } from 'lodash' import { Contract } from 'common/contract' +import { log } from './utils' export const scoreContracts = functions.pubsub .schedule('every 1 hours') @@ -15,17 +16,29 @@ async function scoreContractsInternal() { const now = Date.now() const lastHour = now - 3600000 const last3Days = now - 2592000000 - - const contracts = await firestore + const activeContractsSnap = await firestore .collection('contracts') .where('lastUpdatedTime', '>', lastHour) .get() + const activeContracts = activeContractsSnap.docs.map( + (doc) => doc.data() as Contract + ) + // We have to downgrade previously active contracts to allow the new ones to bubble up + const previouslyActiveContractsSnap = await firestore + .collection('contracts') + .where('popularityScore', '>', 0) + .get() + const activeContractIds = activeContracts.map((c) => c.id) + const previouslyActiveContracts = previouslyActiveContractsSnap.docs + .map((doc) => doc.data() as Contract) + .filter((c) => !activeContractIds.includes(c.id)) - for (const contractSnap of contracts.docs) { - const contract = contractSnap.data() as Contract - const contractId = contractSnap.id + const contracts = activeContracts.concat(previouslyActiveContracts) + log(`Found ${contracts.length} contracts to score`) + + for (const contract of contracts) { const bets = await firestore - .collection(`contracts/${contractId}/bets`) + .collection(`contracts/${contract.id}/bets`) .where('createdTime', '>', last3Days) .get() const bettors = bets.docs @@ -35,7 +48,7 @@ async function scoreContractsInternal() { if (contract.popularityScore !== score) await firestore .collection('contracts') - .doc(contractId) + .doc(contract.id) .update({ popularityScore: score }) } } From bab828412ba913686794e0a99e5e9da85929f07e Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Tue, 19 Jul 2022 18:15:55 -0500 Subject: [PATCH 033/113] group: add question button --- web/components/create-question-button.tsx | 1 + web/pages/group/[...slugs]/index.tsx | 90 +++++++++-------------- 2 files changed, 35 insertions(+), 56 deletions(-) diff --git a/web/components/create-question-button.tsx b/web/components/create-question-button.tsx index a9161ac6..f2371d11 100644 --- a/web/components/create-question-button.tsx +++ b/web/components/create-question-button.tsx @@ -5,6 +5,7 @@ import React from 'react' export const createButtonStyle = 'border-w-0 mx-auto mt-4 -ml-1 w-full rounded-md bg-gradient-to-r py-2.5 text-base font-semibold text-white shadow-sm lg:-ml-0 h-11' + export const CreateQuestionButton = (props: { user: User | null | undefined overrideText?: string diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index 4039fe17..7cce843e 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -1,4 +1,5 @@ import { take, sortBy, debounce } from 'lodash' +import PlusSmIcon from '@heroicons/react/solid/PlusSmIcon' import { Group, GROUP_CHAT_SLUG } from 'common/group' import { Page } from 'web/components/page' @@ -32,10 +33,7 @@ import { SEO } from 'web/components/SEO' import { Linkify } from 'web/components/linkify' import { fromPropz, usePropz } from 'web/hooks/use-propz' import { Tabs } from 'web/components/layout/tabs' -import { - createButtonStyle, - CreateQuestionButton, -} from 'web/components/create-question-button' +import { CreateQuestionButton } from 'web/components/create-question-button' import React, { useEffect, useState } from 'react' import { GroupChat } from 'web/components/groups/group-chat' import { LoadingIndicator } from 'web/components/loading-indicator' @@ -265,9 +263,7 @@ export default function GroupPage(props: { <Row className={'items-center justify-between gap-4'}> <div className={'sm:mb-1'}> <div - className={ - 'line-clamp-1 my-1 text-lg text-indigo-700 sm:my-3 sm:text-2xl' - } + className={'line-clamp-1 my-2 text-2xl text-indigo-700 sm:my-3'} > {group.name} </div> @@ -275,7 +271,7 @@ export default function GroupPage(props: { <Linkify text={group.about} /> </div> </div> - <div className="hidden sm:block xl:hidden"> + <div className="mt-2"> <JoinOrAddQuestionsButtons group={group} user={user} @@ -283,13 +279,6 @@ export default function GroupPage(props: { /> </div> </Row> - <div className="block sm:hidden"> - <JoinOrAddQuestionsButtons - group={group} - user={user} - isMember={!!isMember} - /> - </div> </Col> <Tabs currentPageForAnalytics={groupPath(group.slug)} @@ -308,21 +297,7 @@ function JoinOrAddQuestionsButtons(props: { }) { const { group, user, isMember } = props return user && isMember ? ( - <Row - className={'-mt-2 justify-between sm:mt-0 sm:flex-col sm:justify-center'} - > - <CreateQuestionButton - user={user} - overrideText={'Add a new question'} - className={'hidden w-48 flex-shrink-0 sm:block'} - query={`?groupId=${group.id}`} - /> - <CreateQuestionButton - user={user} - overrideText={'New question'} - className={'block w-40 flex-shrink-0 sm:hidden'} - query={`?groupId=${group.id}`} - /> + <Row className={'mt-0 justify-end'}> <AddContractButton group={group} user={user} /> </Row> ) : group.anyoneCanJoin ? ( @@ -559,7 +534,7 @@ function GroupLeaderboards(props: { } function AddContractButton(props: { group: Group; user: User }) { - const { group } = props + const { group, user } = props const [open, setOpen] = useState(false) async function addContractToCurrentGroup(contract: Contract) { @@ -569,16 +544,39 @@ function AddContractButton(props: { group: Group; user: User }) { return ( <> + <div className={'flex justify-center'}> + <button + className={clsx('btn btn-sm btn-outline')} + onClick={() => setOpen(true)} + > + <PlusSmIcon className="h-6 w-6" aria-hidden="true" /> question + </button> + </div> + <Modal open={open} setOpen={setOpen} className={'sm:p-0'}> <Col className={ - 'max-h-[60vh] min-h-[60vh] w-full gap-4 rounded-md bg-white p-8' + 'max-h-[60vh] min-h-[60vh] w-full gap-4 rounded-md bg-white' } > - <div className={'text-lg text-indigo-700'}> - Add a question to your group - </div> - <div className={'overflow-y-scroll p-1'}> + <Col className="p-8 pb-0"> + <div className={'text-xl text-indigo-700'}> + Add a question to your group + </div> + + <Col className="items-center"> + <CreateQuestionButton + user={user} + overrideText={'New question'} + className={'w-48 flex-shrink-0 '} + query={`?groupId=${group.id}`} + /> + + <div className={'mt-2 text-lg text-indigo-700'}>or</div> + </Col> + </Col> + + <div className={'overflow-y-scroll sm:px-8'}> <ContractSearch hideOrderSelector={true} onContractClick={addContractToCurrentGroup} @@ -590,26 +588,6 @@ function AddContractButton(props: { group: Group; user: User }) { </div> </Col> </Modal> - <div className={'flex justify-center'}> - <button - className={clsx( - createButtonStyle, - 'hidden w-48 whitespace-nowrap border border-black text-black hover:bg-black hover:text-white sm:block' - )} - onClick={() => setOpen(true)} - > - Add an old question - </button> - <button - className={clsx( - createButtonStyle, - 'block w-40 whitespace-nowrap border border-black text-black hover:bg-black hover:text-white sm:hidden' - )} - onClick={() => setOpen(true)} - > - Old question - </button> - </div> </> ) } From b48e910f703f11401986d62ee798bcd4af633bfe Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Tue, 19 Jul 2022 18:20:03 -0500 Subject: [PATCH 034/113] fix areaBaselineValue --- web/components/contract/contract-prob-graph.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/components/contract/contract-prob-graph.tsx b/web/components/contract/contract-prob-graph.tsx index c829c646..bafb84fe 100644 --- a/web/components/contract/contract-prob-graph.tsx +++ b/web/components/contract/contract-prob-graph.tsx @@ -150,7 +150,7 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { enableSlices="x" enableGridX={!!width && width >= 800} enableArea - areaBaselineValue={isBinary ? 0 : contract.min} + areaBaselineValue={isBinary || isLogScale ? 0 : contract.min} margin={{ top: 20, right: 20, bottom: 65, left: 40 }} animate={false} sliceTooltip={SliceTooltip} From 921ac4b2a9f1b1b6264facb3c9a9fd530460adf7 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Tue, 19 Jul 2022 17:22:23 -0600 Subject: [PATCH 035/113] Fix last 3 days number --- functions/src/score-contracts.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/functions/src/score-contracts.ts b/functions/src/score-contracts.ts index 733f1397..57976ff2 100644 --- a/functions/src/score-contracts.ts +++ b/functions/src/score-contracts.ts @@ -14,8 +14,8 @@ const firestore = admin.firestore() async function scoreContractsInternal() { const now = Date.now() - const lastHour = now - 3600000 - const last3Days = now - 2592000000 + const lastHour = now - 60 * 60 * 1000 + const last3Days = now - 1000 * 60 * 60 * 24 * 3 const activeContractsSnap = await firestore .collection('contracts') .where('lastUpdatedTime', '>', lastHour) From b2c89d36cf4aeb03fb8d9a6c89e2397c2b2bb73c Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Tue, 19 Jul 2022 18:22:55 -0500 Subject: [PATCH 036/113] Home: Show pills that are groups (in addition to All, For you) --- web/components/buttons/pill-button.tsx | 2 +- web/components/contract-search.tsx | 101 ++++++++++++++++--------- web/tailwind.config.js | 17 +++++ 3 files changed, 84 insertions(+), 36 deletions(-) diff --git a/web/components/buttons/pill-button.tsx b/web/components/buttons/pill-button.tsx index 796036d1..5b4962b7 100644 --- a/web/components/buttons/pill-button.tsx +++ b/web/components/buttons/pill-button.tsx @@ -13,7 +13,7 @@ export function PillButton(props: { return ( <button className={clsx( - 'cursor-pointer select-none rounded-full', + 'cursor-pointer select-none whitespace-nowrap rounded-full', selected ? ['text-white', color ?? 'bg-gray-700'] : 'bg-gray-100 hover:bg-gray-200', diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index dc97f482..fbbb9fe9 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -27,7 +27,7 @@ import ContractSearchFirestore from 'web/pages/contract-search-firestore' import { useMemberGroups } from 'web/hooks/use-group' import { NEW_USER_GROUP_SLUGS } from 'common/group' import { PillButton } from './buttons/pill-button' -import { toPairs } from 'lodash' +import { sortBy } from 'lodash' const searchClient = algoliasearch( 'GJQPAYENIF', @@ -49,13 +49,6 @@ const sortIndexes = [ export const DEFAULT_SORT = 'score' type filter = 'personal' | 'open' | 'closed' | 'resolved' | 'all' -const filterOptions: { [label: string]: filter } = { - All: 'all', - Open: 'open', - Closed: 'closed', - Resolved: 'resolved', - 'For you': 'personal', -} export function ContractSearch(props: { querySortOptions?: { @@ -86,9 +79,14 @@ export function ContractSearch(props: { } = props const user = useUser() - const memberGroupSlugs = useMemberGroups(user?.id) - ?.map((g) => g.slug) - .filter((s) => !NEW_USER_GROUP_SLUGS.includes(s)) + const memberGroups = (useMemberGroups(user?.id) ?? []).filter( + (group) => !NEW_USER_GROUP_SLUGS.includes(group.slug) + ) + const memberGroupSlugs = memberGroups.map((g) => g.slug) + const pillGroups = sortBy( + memberGroups.filter((group) => group.contractIds.length > 0), + (group) => group.contractIds.length + ).reverse() const follows = useFollows(user?.id) const { initialSort } = useInitialQueryAndSort(querySortOptions) @@ -101,15 +99,27 @@ export function ContractSearch(props: { const [filter, setFilter] = useState<filter>( querySortOptions?.defaultFilter ?? 'open' ) + const [pillFilter, setPillFilter] = useState<string | undefined>() const { filters, numericFilters } = useMemo(() => { let filters = [ filter === 'open' ? 'isResolved:false' : '', filter === 'closed' ? 'isResolved:false' : '', filter === 'resolved' ? 'isResolved:true' : '', - filter === 'personal' + additionalFilter?.creatorId + ? `creatorId:${additionalFilter.creatorId}` + : '', + additionalFilter?.tag ? `lowercaseTags:${additionalFilter.tag}` : '', + additionalFilter?.groupSlug + ? `groupSlugs:${additionalFilter.groupSlug}` + : '', + pillFilter && pillFilter !== 'personal' + ? `groupSlugs:${pillFilter}` + : '', + pillFilter === 'personal' ? // Show contracts in groups that the user is a member of - (memberGroupSlugs?.map((slug) => `groupSlugs:${slug}`) ?? []) + memberGroupSlugs + .map((slug) => `groupSlugs:${slug}`) // Show contracts created by users the user follows .concat(follows?.map((followId) => `creatorId:${followId}`) ?? []) // Show contracts bet on by users the user follows @@ -119,13 +129,6 @@ export function ContractSearch(props: { ) .concat(user ? `uniqueBettorIds:${user.id}` : []) : '', - additionalFilter?.creatorId - ? `creatorId:${additionalFilter.creatorId}` - : '', - additionalFilter?.tag ? `lowercaseTags:${additionalFilter.tag}` : '', - additionalFilter?.groupSlug - ? `groupSlugs:${additionalFilter.groupSlug}` - : '', ].filter((f) => f) // Hack to make Algolia work. filters = ['', ...filters] @@ -139,8 +142,9 @@ export function ContractSearch(props: { }, [ filter, Object.values(additionalFilter ?? {}).join(','), - (memberGroupSlugs ?? []).join(','), + memberGroupSlugs.join(','), (follows ?? []).join(','), + pillFilter, ]) const indexName = `${indexPrefix}contracts-${sort}` @@ -167,6 +171,17 @@ export function ContractSearch(props: { }} /> {/*// TODO track WHICH filter users are using*/} + <select + className="!select !select-bordered" + value={filter} + onChange={(e) => setFilter(e.target.value as filter)} + onBlur={trackCallback('select search filter')} + > + <option value="open">Open</option> + <option value="closed">Closed</option> + <option value="resolved">Resolved</option> + <option value="all">All</option> + </select> {!hideOrderSelector && ( <SortBy items={sortIndexes} @@ -186,25 +201,41 @@ export function ContractSearch(props: { <Spacer h={3} /> - <Row className="gap-2"> - {toPairs<filter>(filterOptions).map(([label, f]) => { - return ( - <PillButton - key={f} - selected={filter === f} - onSelect={() => setFilter(f)} - > - {label} - </PillButton> - ) - })} - </Row> + {!additionalFilter?.creatorId && !additionalFilter?.groupSlug && ( + <Row className="scrollbar-hide items-start gap-2 overflow-x-auto"> + <PillButton + key={'all'} + selected={pillFilter === undefined} + onSelect={() => setPillFilter(undefined)} + > + All + </PillButton> + <PillButton + key={'personal'} + selected={pillFilter === 'personal'} + onSelect={() => setPillFilter('personal')} + > + For you + </PillButton> + {pillGroups.map(({ name, slug }) => { + return ( + <PillButton + key={slug} + selected={pillFilter === slug} + onSelect={() => setPillFilter(slug)} + > + {name} + </PillButton> + ) + })} + </Row> + )} <Spacer h={3} /> {filter === 'personal' && (follows ?? []).length === 0 && - (memberGroupSlugs ?? []).length === 0 ? ( + memberGroupSlugs.length === 0 ? ( <>You're not following anyone, nor in any of your own groups yet.</> ) : ( <ContractSearchInner diff --git a/web/tailwind.config.js b/web/tailwind.config.js index 0a1616b6..3457b7a6 100644 --- a/web/tailwind.config.js +++ b/web/tailwind.config.js @@ -1,4 +1,5 @@ const defaultTheme = require('tailwindcss/defaultTheme') +const plugin = require('tailwindcss/plugin') module.exports = { content: [ @@ -32,6 +33,22 @@ module.exports = { require('@tailwindcss/typography'), require('@tailwindcss/line-clamp'), require('daisyui'), + plugin(function ({ addUtilities }) { + addUtilities({ + '.scrollbar-hide': { + /* IE and Edge */ + '-ms-overflow-style': 'none', + + /* Firefox */ + 'scrollbar-width': 'none', + + /* Safari and Chrome */ + '&::-webkit-scrollbar': { + display: 'none', + }, + }, + }) + }), ], daisyui: { themes: [ From 61094ea17df5210c2002b495aa72d305aa2b933a Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 20:08:33 -0700 Subject: [PATCH 037/113] Properly handle expired ID token cookie, be robust to errors (#671) --- web/lib/firebase/server-auth.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/web/lib/firebase/server-auth.ts b/web/lib/firebase/server-auth.ts index 5f828683..47eadb45 100644 --- a/web/lib/firebase/server-auth.ts +++ b/web/lib/firebase/server-auth.ts @@ -52,12 +52,19 @@ export const getServerAuthenticatedUid = async (ctx: RequestContext) => { if (idToken != null) { try { return (await auth.verifyIdToken(idToken))?.uid + } catch { + // plausibly expired; try the refresh token, if it's present + } + } + if (refreshToken != null) { + try { + const resp = await requestFirebaseIdToken(refreshToken) + setAuthCookies(resp.id_token, resp.refresh_token, ctx.res) + return (await auth.verifyIdToken(resp.id_token))?.uid } catch (e) { - if (refreshToken != null) { - const resp = await requestFirebaseIdToken(refreshToken) - setAuthCookies(resp.id_token, resp.refresh_token, ctx.res) - return (await auth.verifyIdToken(resp.id_token))?.uid - } + // this is a big unexpected problem -- either their cookies are corrupt + // or the refresh token API is down. functionally, they are not logged in + console.error(e) } } return undefined From bacd546e5d27863e460348c6ca3a504a1f6fef6d Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Tue, 19 Jul 2022 20:10:54 -0700 Subject: [PATCH 038/113] Fix unused import from Ian's code --- web/pages/notifications.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index d011e757..3db345ef 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -16,7 +16,6 @@ import { User, } from 'common/user' import { getUser } from 'web/lib/firebase/users' -import { LoadingIndicator } from 'web/components/loading-indicator' import clsx from 'clsx' import { RelativeTimestamp } from 'web/components/relative-timestamp' import { Linkify } from 'web/components/linkify' From 83e9408d6958a957ee29508b359f69775b4f437d Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Tue, 19 Jul 2022 23:48:09 -0500 Subject: [PATCH 039/113] remove tags from info panel --- web/components/contract/contract-info-dialog.tsx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/web/components/contract/contract-info-dialog.tsx b/web/components/contract/contract-info-dialog.tsx index b5ecea15..81ef59c4 100644 --- a/web/components/contract/contract-info-dialog.tsx +++ b/web/components/contract/contract-info-dialog.tsx @@ -141,9 +141,10 @@ export function ContractInfoDialog(props: { contract: Contract; bets: Bet[] }) { </tbody> </table> - <div>Tags</div> + {/* <div>Tags</div> <TagsInput contract={contract} /> - <div /> + <div /> */} + {contract.mechanism === 'cpmm-1' && !contract.resolution && ( <LiquidityPanel contract={contract} /> )} From 0013f76873e958ea01a7b5beb657553f8ecc5d2f Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 00:03:03 -0500 Subject: [PATCH 040/113] search defaults to 'for you'; hide pills for additional filters --- web/components/contract-search.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index fbbb9fe9..95075986 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -99,7 +99,7 @@ export function ContractSearch(props: { const [filter, setFilter] = useState<filter>( querySortOptions?.defaultFilter ?? 'open' ) - const [pillFilter, setPillFilter] = useState<string | undefined>() + const [pillFilter, setPillFilter] = useState<string | undefined>('personal') const { filters, numericFilters } = useMemo(() => { let filters = [ @@ -201,7 +201,7 @@ export function ContractSearch(props: { <Spacer h={3} /> - {!additionalFilter?.creatorId && !additionalFilter?.groupSlug && ( + {!additionalFilter && ( <Row className="scrollbar-hide items-start gap-2 overflow-x-auto"> <PillButton key={'all'} From 2b13085dff4a112b048716fbc833cc81fb83bba3 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 00:23:00 -0500 Subject: [PATCH 041/113] search: use default categories for non-authed users --- common/categories.ts | 6 ++++++ web/components/contract-search.tsx | 22 ++++++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/common/categories.ts b/common/categories.ts index 232aa526..672f3200 100644 --- a/common/categories.ts +++ b/common/categories.ts @@ -1,6 +1,7 @@ import { difference } from 'lodash' export const CATEGORIES_GROUP_SLUG_POSTFIX = '-default' + export const CATEGORIES = { politics: 'Politics', technology: 'Technology', @@ -37,3 +38,8 @@ export const EXCLUDED_CATEGORIES: category[] = [ ] export const DEFAULT_CATEGORIES = difference(CATEGORY_LIST, EXCLUDED_CATEGORIES) + +export const DEFAULT_CATEGORY_GROUPS = DEFAULT_CATEGORIES.map((c) => ({ + slug: c.toLowerCase() + CATEGORIES_GROUP_SLUG_POSTFIX, + name: CATEGORIES[c as category], +})) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 95075986..65c09608 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -25,9 +25,10 @@ import { useFollows } from 'web/hooks/use-follows' import { trackCallback } from 'web/lib/service/analytics' import ContractSearchFirestore from 'web/pages/contract-search-firestore' import { useMemberGroups } from 'web/hooks/use-group' -import { NEW_USER_GROUP_SLUGS } from 'common/group' +import { Group, NEW_USER_GROUP_SLUGS } from 'common/group' import { PillButton } from './buttons/pill-button' import { sortBy } from 'lodash' +import { DEFAULT_CATEGORY_GROUPS } from 'common/categories' const searchClient = algoliasearch( 'GJQPAYENIF', @@ -82,11 +83,21 @@ export function ContractSearch(props: { const memberGroups = (useMemberGroups(user?.id) ?? []).filter( (group) => !NEW_USER_GROUP_SLUGS.includes(group.slug) ) - const memberGroupSlugs = memberGroups.map((g) => g.slug) - const pillGroups = sortBy( + const memberGroupSlugs = + memberGroups.length > 0 + ? memberGroups.map((g) => g.slug) + : DEFAULT_CATEGORY_GROUPS.map((g) => g.slug) + + const memberPillGroups = sortBy( memberGroups.filter((group) => group.contractIds.length > 0), (group) => group.contractIds.length ).reverse() + + const defaultPillGroups = DEFAULT_CATEGORY_GROUPS as Group[] + + const pillGroups = + memberPillGroups.length > 0 ? memberPillGroups : defaultPillGroups + const follows = useFollows(user?.id) const { initialSort } = useInitialQueryAndSort(querySortOptions) @@ -113,9 +124,7 @@ export function ContractSearch(props: { additionalFilter?.groupSlug ? `groupSlugs:${additionalFilter.groupSlug}` : '', - pillFilter && pillFilter !== 'personal' - ? `groupSlugs:${pillFilter}` - : '', + pillFilter && pillFilter !== 'personal' ? `groupSlugs:${pillFilter}` : '', pillFilter === 'personal' ? // Show contracts in groups that the user is a member of memberGroupSlugs @@ -217,6 +226,7 @@ export function ContractSearch(props: { > For you </PillButton> + {pillGroups.map(({ name, slug }) => { return ( <PillButton From b517f7cfa744f9660308f35aaecdd3ec65926451 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 00:35:27 -0500 Subject: [PATCH 042/113] eslint; remove unused tags import --- web/components/contract/contract-info-dialog.tsx | 5 ----- 1 file changed, 5 deletions(-) diff --git a/web/components/contract/contract-info-dialog.tsx b/web/components/contract/contract-info-dialog.tsx index 81ef59c4..a0c7fcc9 100644 --- a/web/components/contract/contract-info-dialog.tsx +++ b/web/components/contract/contract-info-dialog.tsx @@ -16,7 +16,6 @@ import { ShareEmbedButton } from '../share-embed-button' import { Title } from '../title' import { TweetButton } from '../tweet-button' import { InfoTooltip } from '../info-tooltip' -import { TagsInput } from 'web/components/tags-input' import { DuplicateContractButton } from '../copy-contract-button' export const contractDetailsButtonClassName = @@ -141,10 +140,6 @@ export function ContractInfoDialog(props: { contract: Contract; bets: Bet[] }) { </tbody> </table> - {/* <div>Tags</div> - <TagsInput contract={contract} /> - <div /> */} - {contract.mechanism === 'cpmm-1' && !contract.resolution && ( <LiquidityPanel contract={contract} /> )} From c8361f1748d73bdc0633c2762ab478706fb2e25d Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Wed, 20 Jul 2022 01:59:14 -0700 Subject: [PATCH 043/113] Make it so that if you sign in on / you get redirected to /home (#672) --- web/pages/index.tsx | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/web/pages/index.tsx b/web/pages/index.tsx index 44683a4f..d9ff7f51 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -1,5 +1,6 @@ -import React from 'react' - +import React, { useEffect } from 'react' +import { useRouter } from 'next/router' +import { useUser } from 'web/hooks/use-user' import { Contract, getContractsBySlugs } from 'web/lib/firebase/contracts' import { Page } from 'web/components/page' import { LandingPagePanel } from 'web/components/landing-page-panel' @@ -26,6 +27,17 @@ export const getServerSideProps = redirectIfLoggedIn('/home', async (_) => { export default function Home(props: { hotContracts: Contract[] }) { const { hotContracts } = props + + // for now this redirect in the component is how we handle the case where they are + // on this page and they log in -- in the future we will make some cleaner way + const user = useUser() + const router = useRouter() + useEffect(() => { + if (user != null) { + router.replace('/home') + } + }, [router, user]) + return ( <Page> <div className="px-4 pt-2 md:mt-0 lg:hidden"> From b60892fada294e42481e1372a3f0474ee419fa64 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 11:15:55 -0500 Subject: [PATCH 044/113] group 'rankings' => 'leaderboards' (friendlier, more consistent terminology) --- web/lib/firebase/groups.ts | 2 +- web/pages/group/[...slugs]/index.tsx | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/web/lib/firebase/groups.ts b/web/lib/firebase/groups.ts index 8adb5606..0122e2ee 100644 --- a/web/lib/firebase/groups.ts +++ b/web/lib/firebase/groups.ts @@ -22,7 +22,7 @@ export const groups = coll<Group>('groups') export function groupPath( groupSlug: string, - subpath?: 'edit' | 'questions' | 'about' | typeof GROUP_CHAT_SLUG | 'rankings' + subpath?: 'edit' | 'questions' | 'about' | typeof GROUP_CHAT_SLUG | 'leaderboards' ) { return `/group/${groupSlug}${subpath ? `/${subpath}` : ''}` } diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index 7cce843e..c6485a0e 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -113,7 +113,7 @@ const groupSubpages = [ undefined, GROUP_CHAT_SLUG, 'questions', - 'rankings', + 'leaderboards', 'about', ] as const @@ -236,9 +236,9 @@ export default function GroupPage(props: { href: groupPath(group.slug, 'questions'), }, { - title: 'Rankings', + title: 'Leaderboards', content: leaderboard, - href: groupPath(group.slug, 'rankings'), + href: groupPath(group.slug, 'leaderboards'), }, { title: 'About', @@ -487,14 +487,14 @@ function GroupLeaderboards(props: { <SortedLeaderboard users={members} scoreFunction={(user) => traderScores[user.id] ?? 0} - title="🏅 Bettor rankings" + title="🏅 Top bettors" header="Profit" maxToShow={maxToShow} /> <SortedLeaderboard users={members} scoreFunction={(user) => creatorScores[user.id] ?? 0} - title="🏅 Creator rankings" + title="🏅 Top creators" header="Market volume" maxToShow={maxToShow} /> From 45b883477dae977cda488616db5736fe369fadab Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 11:42:49 -0500 Subject: [PATCH 045/113] generic copy link button --- web/components/copy-link-button.tsx | 87 +++++++++++++++-------------- web/components/share-market.tsx | 16 +++--- 2 files changed, 54 insertions(+), 49 deletions(-) diff --git a/web/components/copy-link-button.tsx b/web/components/copy-link-button.tsx index ab6dd66f..4ce4140d 100644 --- a/web/components/copy-link-button.tsx +++ b/web/components/copy-link-button.tsx @@ -3,58 +3,63 @@ import { LinkIcon } from '@heroicons/react/outline' import { Menu, Transition } from '@headlessui/react' import clsx from 'clsx' -import { Contract } from 'common/contract' import { copyToClipboard } from 'web/lib/util/copy' -import { contractPath } from 'web/lib/firebase/contracts' -import { ENV_CONFIG } from 'common/envs/constants' import { ToastClipboard } from 'web/components/toast-clipboard' import { track } from 'web/lib/service/analytics' - -function copyContractUrl(contract: Contract) { - copyToClipboard(`https://${ENV_CONFIG.domain}${contractPath(contract)}`) -} +import { Row } from './layout/row' export function CopyLinkButton(props: { - contract: Contract + url: string + displayUrl?: string + tracking?: string buttonClassName?: string toastClassName?: string }) { - const { contract, buttonClassName, toastClassName } = props + const { url, displayUrl, tracking, buttonClassName, toastClassName } = props return ( - <Menu - as="div" - className="relative z-10 flex-shrink-0" - onMouseUp={() => { - copyContractUrl(contract) - track('copy share link') - }} - > - <Menu.Button - className={clsx( - 'btn btn-xs border-2 border-green-600 bg-white normal-case text-green-600 hover:border-green-600 hover:bg-white', - buttonClassName - )} - > - <LinkIcon className="mr-1.5 h-4 w-4" aria-hidden="true" /> - Copy link - </Menu.Button> + <Row className="w-full"> + <input + className="input input-bordered flex-1 rounded-r-none text-gray-500" + readOnly + type="text" + value={displayUrl ?? url} + /> - <Transition - as={Fragment} - enter="transition ease-out duration-100" - enterFrom="transform opacity-0 scale-95" - enterTo="transform opacity-100 scale-100" - leave="transition ease-in duration-75" - leaveFrom="transform opacity-100 scale-100" - leaveTo="transform opacity-0 scale-95" + <Menu + as="div" + className="relative z-10 flex-shrink-0" + onMouseUp={() => { + copyToClipboard(url) + track(tracking ?? 'copy share link') + }} > - <Menu.Items> - <Menu.Item> - <ToastClipboard className={toastClassName} /> - </Menu.Item> - </Menu.Items> - </Transition> - </Menu> + <Menu.Button + className={clsx( + 'btn btn-xs border-2 border-green-600 bg-white normal-case text-green-600 hover:border-green-600 hover:bg-white', + buttonClassName + )} + > + <LinkIcon className="mr-1.5 h-4 w-4" aria-hidden="true" /> + Copy link + </Menu.Button> + + <Transition + as={Fragment} + enter="transition ease-out duration-100" + enterFrom="transform opacity-0 scale-95" + enterTo="transform opacity-100 scale-100" + leave="transition ease-in duration-75" + leaveFrom="transform opacity-100 scale-100" + leaveTo="transform opacity-0 scale-95" + > + <Menu.Items> + <Menu.Item> + <ToastClipboard className={toastClassName} /> + </Menu.Item> + </Menu.Items> + </Transition> + </Menu> + </Row> ) } diff --git a/web/components/share-market.tsx b/web/components/share-market.tsx index a5da585f..be943a34 100644 --- a/web/components/share-market.tsx +++ b/web/components/share-market.tsx @@ -1,5 +1,8 @@ import clsx from 'clsx' -import { Contract, contractUrl } from 'web/lib/firebase/contracts' + +import { ENV_CONFIG } from 'common/envs/constants' + +import { Contract, contractPath, contractUrl } from 'web/lib/firebase/contracts' import { CopyLinkButton } from './copy-link-button' import { Col } from './layout/col' import { Row } from './layout/row' @@ -7,18 +10,15 @@ import { Row } from './layout/row' export function ShareMarket(props: { contract: Contract; className?: string }) { const { contract, className } = props + const url = `https://${ENV_CONFIG.domain}${contractPath(contract)}` + return ( <Col className={clsx(className, 'gap-3')}> <div>Share your market</div> <Row className="mb-6 items-center"> - <input - className="input input-bordered flex-1 rounded-r-none text-gray-500" - readOnly - type="text" - value={contractUrl(contract)} - /> <CopyLinkButton - contract={contract} + url={url} + displayUrl={contractUrl(contract)} buttonClassName="btn-md rounded-l-none" toastClassName={'-left-28 mt-1'} /> From d65a60984d4dc08cb95652790890e35dc6530d9b Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 11:45:53 -0500 Subject: [PATCH 046/113] make group invite link more prominent --- web/pages/group/[...slugs]/index.tsx | 36 ++++++++++++++++++---------- 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index c6485a0e..f95cf399 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -52,6 +52,8 @@ import { useTipTxns } from 'web/hooks/use-tip-txns' import { JoinOrLeaveGroupButton } from 'web/components/groups/groups-button' import { searchInAny } from 'common/util/parse' import { useWindowSize } from 'web/hooks/use-window-size' +import { CopyLinkButton } from 'web/components/copy-link-button' +import { ENV_CONFIG } from 'common/envs/constants' export const getStaticProps = fromPropz(getStaticPropz) export async function getStaticPropz(props: { params: { slugs: string[] } }) { @@ -328,6 +330,11 @@ function GroupOverview(props: { }) } + const postFix = user ? '?referrer=' + user.username : '' + const shareUrl = `https://${ENV_CONFIG.domain}${groupPath( + group.slug + )}${postFix}` + return ( <> <Col className="gap-2 rounded-b bg-white p-2"> @@ -372,21 +379,26 @@ function GroupOverview(props: { </span> )} </Row> + {anyoneCanJoin && user && ( - <Row className={'flex-wrap items-center gap-1'}> - <span className={'text-gray-500'}>Share</span> - <ShareIconButton - group={group} - username={user.username} - buttonClassName={'hover:bg-gray-300 mt-1 !text-gray-700'} - > - <span className={'mx-2'}> - Invite a friend and get M${REFERRAL_AMOUNT} if they sign up! - </span> - </ShareIconButton> - </Row> + <Col className="my-4 px-2"> + <div className="text-lg">Invite</div> + <div className={'mb-2 text-gray-500'}> + Invite a friend to this group and get M${REFERRAL_AMOUNT} if they + sign up! + </div> + + <CopyLinkButton + url={shareUrl} + tracking="copy group share link" + buttonClassName="btn-md rounded-l-none" + toastClassName={'-left-28 mt-1'} + /> + </Col> )} + <Col className={'mt-2'}> + <div className="mb-2 text-lg">Members</div> <GroupMemberSearch members={members} group={group} /> </Col> </Col> From 202132868f0054a975c6a6adec7619da6544104e Mon Sep 17 00:00:00 2001 From: Sinclair Chen <abc.sinclair@gmail.com> Date: Wed, 20 Jul 2022 12:35:04 -0700 Subject: [PATCH 047/113] lint and prettier --- web/lib/firebase/groups.ts | 7 ++++++- web/pages/group/[...slugs]/index.tsx | 1 - 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/web/lib/firebase/groups.ts b/web/lib/firebase/groups.ts index 0122e2ee..fc028642 100644 --- a/web/lib/firebase/groups.ts +++ b/web/lib/firebase/groups.ts @@ -22,7 +22,12 @@ export const groups = coll<Group>('groups') export function groupPath( groupSlug: string, - subpath?: 'edit' | 'questions' | 'about' | typeof GROUP_CHAT_SLUG | 'leaderboards' + subpath?: + | 'edit' + | 'questions' + | 'about' + | typeof GROUP_CHAT_SLUG + | 'leaderboards' ) { return `/group/${groupSlug}${subpath ? `/${subpath}` : ''}` } diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index f95cf399..8f1b6593 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -42,7 +42,6 @@ import { getSavedSort } from 'web/hooks/use-sort-and-query-params' import { ChoicesToggleGroup } from 'web/components/choices-toggle-group' import { toast } from 'react-hot-toast' import { useCommentsOnGroup } from 'web/hooks/use-comments' -import { ShareIconButton } from 'web/components/share-icon-button' import { REFERRAL_AMOUNT } from 'common/user' import { ContractSearch } from 'web/components/contract-search' import clsx from 'clsx' From 0870397fea13df257903a53ef0de60c885c69cf4 Mon Sep 17 00:00:00 2001 From: Sinclair Chen <abc.sinclair@gmail.com> Date: Wed, 20 Jul 2022 12:36:23 -0700 Subject: [PATCH 048/113] Show line in menu on mobile --- web/components/nav/sidebar.tsx | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/web/components/nav/sidebar.tsx b/web/components/nav/sidebar.tsx index 77af99e0..ff740540 100644 --- a/web/components/nav/sidebar.tsx +++ b/web/components/nav/sidebar.tsx @@ -235,7 +235,10 @@ export default function Sidebar(props: { className?: string }) { buttonContent={<MoreButton />} /> )} - + {/* Spacer if there are any groups */} + {memberItems.length > 0 && ( + <hr className="!my-4 mr-2 border-gray-300" /> + )} {privateUser && ( <GroupsList currentPage={router.asPath} @@ -256,11 +259,7 @@ export default function Sidebar(props: { className?: string }) { /> {/* Spacer if there are any groups */} - {memberItems.length > 0 && ( - <div className="py-3"> - <div className="h-[1px] bg-gray-300" /> - </div> - )} + {memberItems.length > 0 && <hr className="!my-4 border-gray-300" />} {privateUser && ( <GroupsList currentPage={router.asPath} From e45d81513c0a592e43906cdecf8eb88f8fa851a5 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 14:49:14 -0500 Subject: [PATCH 049/113] Don't filter by personal unless pills enabled --- web/components/contract-search.tsx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 65c09608..b0fab34b 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -110,7 +110,10 @@ export function ContractSearch(props: { const [filter, setFilter] = useState<filter>( querySortOptions?.defaultFilter ?? 'open' ) - const [pillFilter, setPillFilter] = useState<string | undefined>('personal') + const pillsEnabled = !additionalFilter + const [pillFilter, setPillFilter] = useState<string | undefined>( + pillsEnabled ? 'personal' : undefined + ) const { filters, numericFilters } = useMemo(() => { let filters = [ @@ -210,7 +213,7 @@ export function ContractSearch(props: { <Spacer h={3} /> - {!additionalFilter && ( + {pillsEnabled && ( <Row className="scrollbar-hide items-start gap-2 overflow-x-auto"> <PillButton key={'all'} From 44afa92b58664faf9cd6dbcc96483aa66552d0c4 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 15:05:48 -0500 Subject: [PATCH 050/113] Turn off for you by default --- web/components/contract-search.tsx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index b0fab34b..01a65610 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -111,9 +111,7 @@ export function ContractSearch(props: { querySortOptions?.defaultFilter ?? 'open' ) const pillsEnabled = !additionalFilter - const [pillFilter, setPillFilter] = useState<string | undefined>( - pillsEnabled ? 'personal' : undefined - ) + const [pillFilter, setPillFilter] = useState<string | undefined>(undefined) const { filters, numericFilters } = useMemo(() => { let filters = [ From c35d0a8bc6aeaa709018719a913f8c7abc25ec53 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 15:30:07 -0500 Subject: [PATCH 051/113] Split out "Your bets" from "For you" --- web/components/contract-search.tsx | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 01a65610..730b113f 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -125,7 +125,9 @@ export function ContractSearch(props: { additionalFilter?.groupSlug ? `groupSlugs:${additionalFilter.groupSlug}` : '', - pillFilter && pillFilter !== 'personal' ? `groupSlugs:${pillFilter}` : '', + pillFilter && pillFilter !== 'personal' && pillFilter !== 'your-bets' + ? `groupSlugs:${pillFilter}` + : '', pillFilter === 'personal' ? // Show contracts in groups that the user is a member of memberGroupSlugs @@ -135,9 +137,13 @@ export function ContractSearch(props: { // Show contracts bet on by users the user follows .concat( follows?.map((followId) => `uniqueBettorIds:${followId}`) ?? [] - // Show contracts bet on by the user ) - .concat(user ? `uniqueBettorIds:${user.id}` : []) + : '', + // Subtract contracts you bet on from For you. + pillFilter === 'personal' && user ? `uniqueBettorIds:-${user.id}` : '', + pillFilter === 'your-bets' && user + ? // Show contracts bet on by the user + `uniqueBettorIds:${user.id}` : '', ].filter((f) => f) // Hack to make Algolia work. @@ -228,6 +234,14 @@ export function ContractSearch(props: { For you </PillButton> + <PillButton + key={'your-bets'} + selected={pillFilter === 'your-bets'} + onSelect={() => setPillFilter('your-bets')} + > + Your bets + </PillButton> + {pillGroups.map(({ name, slug }) => { return ( <PillButton From 302a6355425fe98675c44b33cceb31e28e86d1c7 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 16:06:24 -0500 Subject: [PATCH 052/113] group page max width --- web/pages/group/[...slugs]/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index 8f1b6593..0d38580c 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -253,7 +253,7 @@ export default function GroupPage(props: { <Page rightSidebar={showChatSidebar ? chatTab : undefined} rightSidebarClassName={showChatSidebar ? '!top-0' : ''} - className={showChatSidebar ? '!max-w-none !pb-0' : ''} + className={showChatSidebar ? '!max-w-7xl !pb-0' : ''} > <SEO title={group.name} From 75a1d606cb25590a38b16e14a8395bce326fce91 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 16:28:25 -0500 Subject: [PATCH 053/113] feed bets: show change in prob --- web/components/feed/feed-bets.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/web/components/feed/feed-bets.tsx b/web/components/feed/feed-bets.tsx index 1520e57c..ea73fe7b 100644 --- a/web/components/feed/feed-bets.tsx +++ b/web/components/feed/feed-bets.tsx @@ -113,8 +113,16 @@ export function BetStatusText(props: { truncate="short" />{' '} {isPseudoNumeric - ? ' than ' + formatNumericProbability(bet.probAfter, contract) - : ' at ' + + ? ' from ' + formatNumericProbability(bet.probBefore, contract) + : ' from ' + + formatPercent( + hadPoolMatch || isFreeResponse + ? bet.probBefore + : bet.limitProb ?? bet.probBefore + )} + {isPseudoNumeric + ? ' to ' + formatNumericProbability(bet.probAfter, contract) + : ' to ' + formatPercent( hadPoolMatch || isFreeResponse ? bet.probAfter From 49dcd97d7061b1007744307d29c060cd705a0cef Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Wed, 20 Jul 2022 17:04:11 -0500 Subject: [PATCH 054/113] feed bets: better prob display --- web/components/feed/feed-bets.tsx | 37 ++++++++++++++++++------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/web/components/feed/feed-bets.tsx b/web/components/feed/feed-bets.tsx index ea73fe7b..408404ba 100644 --- a/web/components/feed/feed-bets.tsx +++ b/web/components/feed/feed-bets.tsx @@ -93,6 +93,24 @@ export function BetStatusText(props: { bet.fills?.some((fill) => fill.matchedBetId === null)) ?? false + const fromProb = + hadPoolMatch || isFreeResponse + ? isPseudoNumeric + ? formatNumericProbability(bet.probBefore, contract) + : formatPercent(bet.probBefore) + : isPseudoNumeric + ? formatNumericProbability(bet.limitProb ?? bet.probBefore, contract) + : formatPercent(bet.limitProb ?? bet.probBefore) + + const toProb = + hadPoolMatch || isFreeResponse + ? isPseudoNumeric + ? formatNumericProbability(bet.probAfter, contract) + : formatPercent(bet.probAfter) + : isPseudoNumeric + ? formatNumericProbability(bet.limitProb ?? bet.probAfter, contract) + : formatPercent(bet.limitProb ?? bet.probAfter) + return ( <div className="text-sm text-gray-500"> {bettor ? ( @@ -112,22 +130,9 @@ export function BetStatusText(props: { contract={contract} truncate="short" />{' '} - {isPseudoNumeric - ? ' from ' + formatNumericProbability(bet.probBefore, contract) - : ' from ' + - formatPercent( - hadPoolMatch || isFreeResponse - ? bet.probBefore - : bet.limitProb ?? bet.probBefore - )} - {isPseudoNumeric - ? ' to ' + formatNumericProbability(bet.probAfter, contract) - : ' to ' + - formatPercent( - hadPoolMatch || isFreeResponse - ? bet.probAfter - : bet.limitProb ?? bet.probAfter - )} + {fromProb === toProb + ? `at ${fromProb}` + : `from ${fromProb} to ${toProb}`} </> )} <RelativeTimestamp time={createdTime} /> From ace39ef73d5e0d3bf318b7c22a44d921398e346b Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Wed, 20 Jul 2022 15:42:31 -0700 Subject: [PATCH 055/113] Update Next.js 12.1.2 -> 12.2.0 (#669) * Update Next.js 12.1.2 -> 12.2.0 * Further bump Next to 12.2.2 --- web/package.json | 2 +- yarn.lock | 178 +++++++++++++++++++++++++---------------------- 2 files changed, 96 insertions(+), 84 deletions(-) diff --git a/web/package.json b/web/package.json index f8e1881b..d09ccaf0 100644 --- a/web/package.json +++ b/web/package.json @@ -40,7 +40,7 @@ "gridjs-react": "5.0.2", "lodash": "4.17.21", "nanoid": "^3.3.4", - "next": "12.1.2", + "next": "12.2.2", "node-fetch": "3.2.4", "react": "17.0.2", "react-confetti": "6.0.1", diff --git a/yarn.lock b/yarn.lock index 6fcdf53a..ffa8e6f0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2385,10 +2385,10 @@ resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== -"@next/env@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/env/-/env-12.1.2.tgz#4b0f5fd448ac60b821d2486d2987948e3a099f03" - integrity sha512-A/P4ysmFScBFyu1ZV0Mr1Y89snyQhqGwsCrkEpK+itMF+y+pMqBoPVIyakUf4LXqGWJGiGFuIerihvSG70Ad8Q== +"@next/env@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/env/-/env-12.2.2.tgz#cc1a0a445bd254499e30f632968c03192455f4cc" + integrity sha512-BqDwE4gDl1F608TpnNxZqrCn6g48MBjvmWFEmeX5wEXDXh3IkAOw6ASKUgjT8H4OUePYFqghDFUss5ZhnbOUjw== "@next/eslint-plugin-next@12.1.6": version "12.1.6" @@ -2397,65 +2397,70 @@ dependencies: glob "7.1.7" -"@next/swc-android-arm-eabi@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.2.tgz#675e952d9032ac7bec02f3f413c17d33bbd90857" - integrity sha512-iwalfLBhYmCIlj09czFbovj1SmTycf0AGR8CB357wgmEN8xIuznIwSsCH87AhwQ9apfNtdeDhxvuKmhS9T3FqQ== +"@next/swc-android-arm-eabi@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.2.2.tgz#f6c4111e6371f73af6bf80c9accb3d96850a92cd" + integrity sha512-VHjuCHeq9qCprUZbsRxxM/VqSW8MmsUtqB5nEpGEgUNnQi/BTm/2aK8tl7R4D0twGKRh6g1AAeFuWtXzk9Z/vQ== -"@next/swc-android-arm64@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.1.2.tgz#d9710c50853235f258726b19a649df9c29a49682" - integrity sha512-ZoR0Vx7czJhTgRAcFbzTKQc2n2ChC036/uc6PbgYiI/LreEnfmsV/CiREP0pUVs5ndntOX8kBA3BSbh4zCO5tQ== +"@next/swc-android-arm64@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.2.2.tgz#b69de59c51e631a7600439e7a8993d6e82f3369e" + integrity sha512-v5EYzXUOSv0r9mO/2PX6mOcF53k8ndlu9yeFHVAWW1Dhw2jaJcvTRcCAwYYN8Q3tDg0nH3NbEltJDLKmcJOuVA== -"@next/swc-darwin-arm64@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.2.tgz#aadd21b711c82b3efa9b4ecf7665841259e1fa7e" - integrity sha512-VXv7lpqFjHwkK65CZHkjvBxlSBTG+l3O0Zl2zHniHj0xHzxJZvR8VFjV2zIMZCYSfVqeQ5yt2rjwuQ9zbpGtXQ== +"@next/swc-darwin-arm64@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.2.2.tgz#80157c91668eff95b72d052428c353eab0fc4c50" + integrity sha512-JCoGySHKGt+YBk7xRTFGx1QjrnCcwYxIo3yGepcOq64MoiocTM3yllQWeOAJU2/k9MH0+B5E9WUSme4rOCBbpA== -"@next/swc-darwin-x64@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.2.tgz#3b1a389828f5c88ecb828a6394692fdeaf175081" - integrity sha512-evXxJQnXEnU+heWyun7d0UV6bhBcmoiyFGR3O3v9qdhGbeXh+SXYVxRO69juuh6V7RWRdlb1KQ0rGUNa1k0XSw== +"@next/swc-darwin-x64@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.2.2.tgz#12be2f58e676fccff3d48a62921b9927ed295133" + integrity sha512-dztDtvfkhUqiqpXvrWVccfGhLe44yQ5tQ7B4tBfnsOR6vxzI9DNPHTlEOgRN9qDqTAcFyPxvg86mn4l8bB9Jcw== -"@next/swc-linux-arm-gnueabihf@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.2.tgz#db4371ca716bf94c94d4f6b001ac3c9d08d97d79" - integrity sha512-LJV/wo6R0Ot7Y/20bZs00aBG4J333RT6H/5Q2AROE4Hnx7cenSktSnfU6WCnJgzYLSIHdbLs549LcZMULuVquw== +"@next/swc-freebsd-x64@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.2.2.tgz#de1363431a49059f1efb8c0f86ce6a79c53b3a95" + integrity sha512-JUnXB+2xfxqsAvhFLPJpU1NeyDsvJrKoOjpV7g3Dxbno2Riu4tDKn3kKF886yleAuD/1qNTUCpqubTvbbT2VoA== -"@next/swc-linux-arm64-gnu@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.2.tgz#0e71db03b8b12ed315c8be7d15392ecefe562b7c" - integrity sha512-fjlYU1Y8kVjjRKyuyQBYLHPxjGOS2ox7U8TqAvtgKvd2PxqdsgW4sP+VDovRVPrZlGXNllKoJiqMO1OoR9fB6w== +"@next/swc-linux-arm-gnueabihf@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.2.2.tgz#d5b8e0d1bb55bbd9db4d2fec018217471dc8b9e6" + integrity sha512-XeYC/qqPLz58R4pjkb+x8sUUxuGLnx9QruC7/IGkK68yW4G17PHwKI/1njFYVfXTXUukpWjcfBuauWwxp9ke7Q== -"@next/swc-linux-arm64-musl@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.2.tgz#f1b055793da1c12167ed3b6e32aef8289721a1fb" - integrity sha512-Y1JRDMHqSjLObjyrD1hf6ePrJcOF/mkw+LbAzoNgrHL1dSuIAqcz3jYunJt8T7Yw48xSJy6LPSL9BclAHwEwOA== +"@next/swc-linux-arm64-gnu@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.2.2.tgz#3bc75984e1d5ec8f59eb53702cc382d8e1be2061" + integrity sha512-d6jT8xgfKYFkzR7J0OHo2D+kFvY/6W8qEo6/hmdrTt6AKAqxs//rbbcdoyn3YQq1x6FVUUd39zzpezZntg9Naw== -"@next/swc-linux-x64-gnu@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.2.tgz#69764ffaacb3b9b373897fff15d7dd871455efe2" - integrity sha512-5N4QSRT60ikQqCU8iHfYZzlhg6MFTLsKhMTARmhn8wLtZfN9VVyTFwZrJQWjV64dZc4JFeXDANGao8fm55y6bw== +"@next/swc-linux-arm64-musl@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.2.2.tgz#270db73e07a18d999f61e79a917943fa5bc1ef56" + integrity sha512-rIZRFxI9N/502auJT1i7coas0HTHUM+HaXMyJiCpnY8Rimbo0495ir24tzzHo3nQqJwcflcPTwEh/DV17sdv9A== -"@next/swc-linux-x64-musl@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.2.tgz#0ddaedb5ec578c01771f83be2046dafb2f70df91" - integrity sha512-b32F/xAgdYG4Pt0foFzhF+2uhvNxnEj7aJNp1R4EhZotdej2PzvFWcP/dGkc7MJl205pBz5oC3gHyILIIlW6XA== +"@next/swc-linux-x64-gnu@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.2.2.tgz#e6c72fa20478552e898c434f4d4c0c5e89d2ea78" + integrity sha512-ir1vNadlUDj7eQk15AvfhG5BjVizuCHks9uZwBfUgT5jyeDCeRvaDCo1+Q6+0CLOAnYDR/nqSCvBgzG2UdFh9A== -"@next/swc-win32-arm64-msvc@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.2.tgz#9e17ed56d5621f8c6961193da3a0b155cea511c9" - integrity sha512-hVOcGmWDeVwO00Aclopsj6MoYhfJl5zA4vjAai9KjgclQTFZa/DC0vQjgKAHHKGT5oMHgjiq/G7L6P1/UfwYnw== +"@next/swc-linux-x64-musl@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.2.2.tgz#b9ef9efe2c401839cdefa5e70402386aafdce15a" + integrity sha512-bte5n2GzLN3O8JdSFYWZzMgEgDHZmRz5wiispiiDssj4ik3l8E7wq/czNi8RmIF+ioj2sYVokUNa/ekLzrESWw== -"@next/swc-win32-ia32-msvc@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.2.tgz#ddd260cbe8bc4002fb54415b80baccf37f8db783" - integrity sha512-wnVDGIVz2pR3vIkyN6IE+1NvMSBrBj1jba11iR16m8TAPzZH/PrNsxr0a9N5VavEXXLcQpoUVvT+N7nflbRAHg== +"@next/swc-win32-arm64-msvc@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.2.2.tgz#18fa7ec7248da3a7926a0601d9ececc53ac83157" + integrity sha512-ZUGCmcDmdPVSAlwJ/aD+1F9lYW8vttseiv4n2+VCDv5JloxiX9aY32kYZaJJO7hmTLNrprvXkb4OvNuHdN22Jg== -"@next/swc-win32-x64-msvc@12.1.2": - version "12.1.2" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.2.tgz#37412a314bcf4c6006a74e1ef9764048344f3848" - integrity sha512-MLNcurEpQp0+7OU9261f7PkN52xTGkfrt4IYTIXau7DO/aHj927oK6piIJdl9EOHdX/KN5W6qlyErj170PSHtw== +"@next/swc-win32-ia32-msvc@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.2.2.tgz#54936e84f4a219441d051940354da7cd3eafbb4f" + integrity sha512-v7ykeEDbr9eXiblGSZiEYYkWoig6sRhAbLKHUHQtk8vEWWVEqeXFcxmw6LRrKu5rCN1DY357UlYWToCGPQPCRA== + +"@next/swc-win32-x64-msvc@12.2.2": + version "12.2.2" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.2.2.tgz#7460be700a60d75816f01109400b51fe929d7e89" + integrity sha512-2D2iinWUL6xx8D9LYVZ5qi7FP6uLAoWymt8m8aaG2Ld/Ka8/k723fJfiklfuAcwOxfufPJI+nRbT5VcgHGzHAQ== "@nivo/annotations@0.74.0": version "0.74.0" @@ -2837,6 +2842,13 @@ "@svgr/plugin-jsx" "^6.2.1" "@svgr/plugin-svgo" "^6.2.0" +"@swc/helpers@0.4.2": + version "0.4.2" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.2.tgz#ed1f6997ffbc22396665d9ba74e2a5c0a2d782f8" + integrity sha512-556Az0VX7WR6UdoTn4htt/l3zPQ7bsQWK+HqdG4swV7beUCxo/BqmvbOpUkTIm/9ih86LIf1qsUnywNL3obGHw== + dependencies: + tslib "^2.4.0" + "@szmarczak/http-timer@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" @@ -4290,7 +4302,7 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001335: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001344.tgz#8a1e7fdc4db9c2ec79a05e9fd68eb93a761888bb" integrity sha512-0ZFjnlCaXNOAYcV7i+TtdKBp0L/3XEU2MF/x6Du1lrh+SRX4IfzIVL4HNJg5pB2PmFb8rszIGyOvsZnqqRoc2g== -caniuse-lite@^1.0.30001230, caniuse-lite@^1.0.30001283, caniuse-lite@^1.0.30001332: +caniuse-lite@^1.0.30001230, caniuse-lite@^1.0.30001332: version "1.0.30001341" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001341.tgz#59590c8ffa8b5939cf4161f00827b8873ad72498" integrity sha512-2SodVrFFtvGENGCv0ChVJIDQ0KPaS1cg7/qtfMaICgeMolDdo/Z2OD32F0Aq9yl6F4YFwGPBS5AaPqNYiW4PoA== @@ -8320,29 +8332,31 @@ next-sitemap@^2.5.14: "@corex/deepmerge" "^2.6.148" minimist "^1.2.6" -next@12.1.2: - version "12.1.2" - resolved "https://registry.yarnpkg.com/next/-/next-12.1.2.tgz#c5376a8ae17d3e404a2b691c01f94c8943306f29" - integrity sha512-JHPCsnFTBO0Z4SQxSYc611UA1WA+r/3y3Neg66AH5/gSO/oksfRnFw/zGX/FZ9+oOUHS9y3wJFawNpVYR2gJSQ== +next@12.2.2: + version "12.2.2" + resolved "https://registry.yarnpkg.com/next/-/next-12.2.2.tgz#029bf5e4a18a891ca5d05b189b7cd983fd22c072" + integrity sha512-zAYFY45aBry/PlKONqtlloRFqU/We3zWYdn2NoGvDZkoYUYQSJC8WMcalS5C19MxbCZLUVCX7D7a6gTGgl2yLg== dependencies: - "@next/env" "12.1.2" - caniuse-lite "^1.0.30001283" + "@next/env" "12.2.2" + "@swc/helpers" "0.4.2" + caniuse-lite "^1.0.30001332" postcss "8.4.5" - styled-jsx "5.0.1" - use-subscription "1.5.1" + styled-jsx "5.0.2" + use-sync-external-store "1.1.0" optionalDependencies: - "@next/swc-android-arm-eabi" "12.1.2" - "@next/swc-android-arm64" "12.1.2" - "@next/swc-darwin-arm64" "12.1.2" - "@next/swc-darwin-x64" "12.1.2" - "@next/swc-linux-arm-gnueabihf" "12.1.2" - "@next/swc-linux-arm64-gnu" "12.1.2" - "@next/swc-linux-arm64-musl" "12.1.2" - "@next/swc-linux-x64-gnu" "12.1.2" - "@next/swc-linux-x64-musl" "12.1.2" - "@next/swc-win32-arm64-msvc" "12.1.2" - "@next/swc-win32-ia32-msvc" "12.1.2" - "@next/swc-win32-x64-msvc" "12.1.2" + "@next/swc-android-arm-eabi" "12.2.2" + "@next/swc-android-arm64" "12.2.2" + "@next/swc-darwin-arm64" "12.2.2" + "@next/swc-darwin-x64" "12.2.2" + "@next/swc-freebsd-x64" "12.2.2" + "@next/swc-linux-arm-gnueabihf" "12.2.2" + "@next/swc-linux-arm64-gnu" "12.2.2" + "@next/swc-linux-arm64-musl" "12.2.2" + "@next/swc-linux-x64-gnu" "12.2.2" + "@next/swc-linux-x64-musl" "12.2.2" + "@next/swc-win32-arm64-msvc" "12.2.2" + "@next/swc-win32-ia32-msvc" "12.2.2" + "@next/swc-win32-x64-msvc" "12.2.2" no-case@^3.0.4: version "3.0.4" @@ -10892,10 +10906,10 @@ style-to-object@0.3.0, style-to-object@^0.3.0: dependencies: inline-style-parser "0.1.1" -styled-jsx@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.1.tgz#78fecbbad2bf95ce6cd981a08918ce4696f5fc80" - integrity sha512-+PIZ/6Uk40mphiQJJI1202b+/dYeTVd9ZnMPR80pgiWbjIwvN2zIp4r9et0BgqBuShh48I0gttPlAXA7WVvBxw== +styled-jsx@5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.2.tgz#ff230fd593b737e9e68b630a694d460425478729" + integrity sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ== stylehacks@^5.1.0: version "5.1.0" @@ -11437,12 +11451,10 @@ use-latest@^1.2.1: dependencies: use-isomorphic-layout-effect "^1.1.1" -use-subscription@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/use-subscription/-/use-subscription-1.5.1.tgz#73501107f02fad84c6dd57965beb0b75c68c42d1" - integrity sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA== - dependencies: - object-assign "^4.1.1" +use-sync-external-store@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.1.0.tgz#3343c3fe7f7e404db70f8c687adf5c1652d34e82" + integrity sha512-SEnieB2FPKEVne66NpXPd1Np4R1lTNKfjuy3XdIoPQKYBAFdzbzSZlSn1KJZUiihQLQC5Znot4SBz1EOTBwQAQ== util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" From aa554ca9f6bf8ffb403bbd7939406191348e83d0 Mon Sep 17 00:00:00 2001 From: Sinclair Chen <abc.sinclair@gmail.com> Date: Wed, 20 Jul 2022 16:31:18 -0700 Subject: [PATCH 056/113] migrate useUsers hook to react-query (#674) --- web/hooks/use-users.ts | 32 ++++++++++++++------------------ web/lib/firebase/users.ts | 10 ---------- 2 files changed, 14 insertions(+), 28 deletions(-) diff --git a/web/hooks/use-users.ts b/web/hooks/use-users.ts index 1312444e..659395b8 100644 --- a/web/hooks/use-users.ts +++ b/web/hooks/use-users.ts @@ -1,32 +1,28 @@ import { useState, useEffect } from 'react' import { PrivateUser, User } from 'common/user' -import { - listenForAllUsers, - listenForPrivateUsers, -} from 'web/lib/firebase/users' import { groupBy, sortBy, difference } from 'lodash' import { getContractsOfUserBets } from 'web/lib/firebase/bets' import { useFollows } from './use-follows' import { useUser } from './use-user' +import { useFirestoreQueryData } from '@react-query-firebase/firestore' +import { DocumentData } from 'firebase/firestore' +import { users, privateUsers } from 'web/lib/firebase/users' export const useUsers = () => { - const [users, setUsers] = useState<User[]>([]) - - useEffect(() => { - listenForAllUsers(setUsers) - }, []) - - return users + const result = useFirestoreQueryData<DocumentData, User[]>(['users'], users, { + subscribe: true, + includeMetadataChanges: true, + }) + return result.data ?? [] } export const usePrivateUsers = () => { - const [users, setUsers] = useState<PrivateUser[]>([]) - - useEffect(() => { - listenForPrivateUsers(setUsers) - }, []) - - return users + const result = useFirestoreQueryData<DocumentData, PrivateUser[]>( + ['private users'], + privateUsers, + { subscribe: true, includeMetadataChanges: true } + ) + return result.data || [] } export const useDiscoverUsers = (userId: string | null | undefined) => { diff --git a/web/lib/firebase/users.ts b/web/lib/firebase/users.ts index 884dde04..89852851 100644 --- a/web/lib/firebase/users.ts +++ b/web/lib/firebase/users.ts @@ -258,16 +258,6 @@ export async function listAllUsers() { return docs.map((doc) => doc.data()) } -export function listenForAllUsers(setUsers: (users: User[]) => void) { - listenForValues(users, setUsers) -} - -export function listenForPrivateUsers( - setUsers: (users: PrivateUser[]) => void -) { - listenForValues(privateUsers, setUsers) -} - export function getTopTraders(period: Period) { const topTraders = query( users, From 5ddf496dae0f05831beaa7b766f33af37495a6fb Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 18:34:15 -0500 Subject: [PATCH 057/113] Remove bet button from free response comments --- .../feed/feed-answer-comment-group.tsx | 29 +------------------ 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/web/components/feed/feed-answer-comment-group.tsx b/web/components/feed/feed-answer-comment-group.tsx index 5c3be539..e1a17370 100644 --- a/web/components/feed/feed-answer-comment-group.tsx +++ b/web/components/feed/feed-answer-comment-group.tsx @@ -1,7 +1,6 @@ import { Answer } from 'common/answer' import { Bet } from 'common/bet' import { Comment } from 'common/comment' -import { formatPercent } from 'common/util/format' import React, { useEffect, useState } from 'react' import { Col } from 'web/components/layout/col' import { Modal } from 'web/components/layout/modal' @@ -11,8 +10,6 @@ import { Avatar } from 'web/components/avatar' import { UserLink } from 'web/components/user-page' import { Linkify } from 'web/components/linkify' import clsx from 'clsx' -import { tradingAllowed } from 'web/lib/firebase/contracts' -import { BuyButton } from 'web/components/yes-no-selector' import { CommentInput, CommentRepliesList, @@ -23,7 +20,6 @@ import { useRouter } from 'next/router' import { groupBy } from 'lodash' import { User } from 'common/user' import { useEvent } from 'web/hooks/use-event' -import { getDpmOutcomeProbability } from 'common/calculate-dpm' import { CommentTipMap } from 'web/hooks/use-tip-txns' export function FeedAnswerCommentGroup(props: { @@ -50,11 +46,6 @@ export function FeedAnswerCommentGroup(props: { const commentsList = comments.filter( (comment) => comment.answerOutcome === answer.number.toString() ) - const thisAnswerProb = getDpmOutcomeProbability( - contract.totalShares, - answer.id - ) - const probPercent = formatPercent(thisAnswerProb) const betsByCurrentUser = (user && betsByUserId[user.id]) ?? [] const commentsByCurrentUser = (user && commentsByUserId[user.id]) ?? [] const isFreeResponseContractPage = !!commentsByCurrentUser @@ -125,7 +116,7 @@ export function FeedAnswerCommentGroup(props: { <Row className={clsx( - 'my-4 flex gap-3 space-x-3 transition-all duration-1000', + 'mt-4 flex gap-3 space-x-3 transition-all duration-1000', highlighted ? `-m-2 my-3 rounded bg-indigo-500/[0.2] p-2` : '' )} id={answerElementId} @@ -162,24 +153,6 @@ export function FeedAnswerCommentGroup(props: { </button> </div> )} - - <div className={'align-items flex w-full justify-end gap-4 '}> - <span - className={clsx( - 'text-2xl', - tradingAllowed(contract) ? 'text-primary' : 'text-gray-500' - )} - > - {probPercent} - </span> - <BuyButton - className={clsx( - 'btn-sm flex-initial !px-6 sm:flex', - tradingAllowed(contract) ? '' : '!hidden' - )} - onClick={() => setOpen(true)} - /> - </div> </Row> </Col> {isFreeResponseContractPage && ( From 528dd2b28a1366685162256c7d0fd3ebf28d06ff Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 18:35:07 -0500 Subject: [PATCH 058/113] Make answer replies more closely spaced together --- web/components/feed/feed-answer-comment-group.tsx | 2 +- web/components/feed/feed-comments.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/web/components/feed/feed-answer-comment-group.tsx b/web/components/feed/feed-answer-comment-group.tsx index e1a17370..a48a7e9c 100644 --- a/web/components/feed/feed-answer-comment-group.tsx +++ b/web/components/feed/feed-answer-comment-group.tsx @@ -103,7 +103,7 @@ export function FeedAnswerCommentGroup(props: { }, [answerElementId, router.asPath]) return ( - <Col className={'relative flex-1 gap-2'} key={answer.id + 'comment'}> + <Col className={'relative flex-1 gap-3'} key={answer.id + 'comment'}> <Modal open={open} setOpen={setOpen}> <AnswerBetPanel answer={answer} diff --git a/web/components/feed/feed-comments.tsx b/web/components/feed/feed-comments.tsx index 195c5343..d5accef0 100644 --- a/web/components/feed/feed-comments.tsx +++ b/web/components/feed/feed-comments.tsx @@ -142,7 +142,7 @@ export function CommentRepliesList(props: { id={comment.id} className={clsx( 'relative', - !treatFirstIndexEqually && commentIdx === 0 ? '' : 'mt-3 ml-6' + !treatFirstIndexEqually && commentIdx === 0 ? '' : 'ml-6' )} > {/*draw a gray line from the comment to the left:*/} From a3f150b1d984b3e4bdd3ecd9622695004b8865ec Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Wed, 20 Jul 2022 16:57:51 -0700 Subject: [PATCH 059/113] Host Ida and Alex's MTG Guesser game (#656) * Copy over code from Mtg Guesser * Run Prettier * CSS Tweaks: Hover feedback, button positioning * Hide all but counterspell & burn, for now * Move to /mtg directory * Fix prettierignore * smaller jsons (#673) limited burn to only red cards and also added limited json files to only have fields needed to play * Add Ida's tweak to card position Co-authored-by: marsteralex <bob.masteralex@gmail.com> --- web/.prettierignore | 3 +- web/public/mtg/app.js | 362 ++++++++++++++++ web/public/mtg/choose.html | 225 ++++++++++ web/public/mtg/importCards.py | 92 ++++ web/public/mtg/index.html | 554 ++++++++++++++++++++++++ web/public/mtg/jsons/beast1.json | 1 + web/public/mtg/jsons/beast2.json | 1 + web/public/mtg/jsons/beast3.json | 1 + web/public/mtg/jsons/burn1.json | 1 + web/public/mtg/jsons/burn2.json | 1 + web/public/mtg/jsons/burn3.json | 1 + web/public/mtg/jsons/counterspell1.json | 1 + web/public/mtg/jsons/counterspell2.json | 1 + web/public/mtg/jsons/counterspell3.json | 1 + web/public/mtg/jsons/terror1.json | 1 + web/public/mtg/jsons/terror2.json | 1 + web/public/mtg/jsons/terror3.json | 1 + web/public/mtg/jsons/wrath1.json | 1 + web/public/mtg/jsons/wrath2.json | 1 + web/public/mtg/jsons/wrath3.json | 1 + 20 files changed, 1250 insertions(+), 1 deletion(-) create mode 100644 web/public/mtg/app.js create mode 100644 web/public/mtg/choose.html create mode 100644 web/public/mtg/importCards.py create mode 100644 web/public/mtg/index.html create mode 100644 web/public/mtg/jsons/beast1.json create mode 100644 web/public/mtg/jsons/beast2.json create mode 100644 web/public/mtg/jsons/beast3.json create mode 100644 web/public/mtg/jsons/burn1.json create mode 100644 web/public/mtg/jsons/burn2.json create mode 100644 web/public/mtg/jsons/burn3.json create mode 100644 web/public/mtg/jsons/counterspell1.json create mode 100644 web/public/mtg/jsons/counterspell2.json create mode 100644 web/public/mtg/jsons/counterspell3.json create mode 100644 web/public/mtg/jsons/terror1.json create mode 100644 web/public/mtg/jsons/terror2.json create mode 100644 web/public/mtg/jsons/terror3.json create mode 100644 web/public/mtg/jsons/wrath1.json create mode 100644 web/public/mtg/jsons/wrath2.json create mode 100644 web/public/mtg/jsons/wrath3.json diff --git a/web/.prettierignore b/web/.prettierignore index b79c5513..6cc1e5c7 100644 --- a/web/.prettierignore +++ b/web/.prettierignore @@ -1,3 +1,4 @@ # Ignore Next artifacts .next/ -out/ \ No newline at end of file +out/ +public/**/*.json \ No newline at end of file diff --git a/web/public/mtg/app.js b/web/public/mtg/app.js new file mode 100644 index 00000000..983b8651 --- /dev/null +++ b/web/public/mtg/app.js @@ -0,0 +1,362 @@ +mode = 'PLAY' +allData = {} +total = 0 +unseenTotal = 0 +probList = [] +nameList = [] +k = 12 +extra = 3 +artDict = {} +totalCorrect = 0 +totalSeen = 0 +wordsLeft = k + extra +imagesLeft = k +maxRounds = 20 +whichGuesser = 'counterspell' +un = false +online = false +firstPrint = false +flag = true +page = 1 + +document.location.search.split('&').forEach((pair) => { + let v = pair.split('=') + if (v[0] === '?whichguesser') { + whichGuesser = v[1] + } else if (v[0] === 'un') { + un = v[1] + } else if (v[0] === 'digital') { + online = v[1] + } else if (v[0] === 'original') { + firstPrint = v[1] + } +}) + +let firstFetch = fetch('jsons/' + whichGuesser + page + '.json') +fetchToResponse(firstFetch) + +function putIntoMapAndFetch(data) { + putIntoMap(data.data) + if (data.has_more) { + page += 1 + window.setTimeout(() => + fetchToResponse(fetch('jsons/' + whichGuesser + page + '.json')) + ) + } else { + for (const [key, value] of Object.entries(allData)) { + nameList.push(key) + probList.push( + value.length + + (probList.length === 0 ? 0 : probList[probList.length - 1]) + ) + unseenTotal = total + } + window.console.log(allData) + window.console.log(total) + window.console.log(probList) + window.console.log(nameList) + if (whichGuesser === 'counterspell') { + document.getElementById('guess-type').innerText = 'Counterspell Guesser' + } else if (whichGuesser === 'beast') { + document.getElementById('guess-type').innerText = + 'Finding Fantastic Beasts' + } else if (whichGuesser === 'terror') { + document.getElementById('guess-type').innerText = + "I'm a Terror-able Guesser" + } else if (whichGuesser === 'wrath') { + document.getElementById('guess-type').innerText = "I'll Clean Sweep" + } else if (whichGuesser === 'burn') { + document.getElementById('guess-type').innerText = 'Match With Hot Singles' + } + setUpNewGame() + } +} + +function getKSamples() { + let usedCounters = new Set() + let currentTotal = unseenTotal + let samples = {} + let i = 0 + while (i < k) { + let rand = Math.floor(Math.random() * currentTotal) + let count = 0 + for (const [key, value] of Object.entries(allData)) { + if (usedCounters.has(key)) { + continue + } else if (count >= rand) { + usedCounters.add(key) + currentTotal -= value.length + unseenTotal-- + let randIndex = Math.floor(Math.random() * value.length) + let arts = allData[key].splice(randIndex, 1) + samples[arts[0].artImg] = [key, arts[0].normalImg] + i++ + break + } else { + count += value.length + } + } + } + for (const key of usedCounters) { + if (allData[key].length === 0) { + delete allData[key] + } + } + let count = 0 + while (count < extra) { + let rand = Math.floor(Math.random() * total) + for (let j = 0; j < nameList.length; j++) { + if (j >= rand) { + if (usedCounters.has(nameList[j])) { + break + } + usedCounters.add(nameList[j]) + count += 1 + break + } + } + } + return [samples, usedCounters] +} + +function fetchToResponse(fetch) { + return fetch + .then((response) => response.json()) + .then((json) => { + putIntoMapAndFetch(json) + }) +} + +function determineIfSkip(card) { + if (!un) { + if (card.set_type === 'funny') { + return true + } + } + if (!online) { + if (card.digital) { + return true + } + } + if (firstPrint) { + if ( + card.reprint === true || + (card.frame_effects && card.frame_effects.includes('showcase')) + ) { + return true + } + } + // reskinned card names show in art crop + if (card.flavor_name) { + return true + } + // don't include racist cards + return card.content_warning +} + +function putIntoMap(data) { + for (let i = 0; i < data.length; i++) { + let card = data[i] + if (determineIfSkip(card)) { + continue + } + let name = card.name + // remove slashes from adventure cards + if (card.card_faces) { + name = card.card_faces[0].name + } + let normalImg = '' + if (card.image_uris.normal) { + normalImg = card.image_uris.normal + } else if (card.image_uris.large) { + normalImg = card.image_uris.large + } else if (card.image_uris.small) { + normalImg = card.image_uris.small + } else { + continue + } + let artImg = '' + if (card.image_uris.art_crop) { + artImg = card.image_uris.art_crop + } else { + continue + } + total += 1 + if (!allData[name]) { + allData[name] = [{ artImg: artImg, normalImg: normalImg }] + } else { + allData[name].push({ artImg: artImg, normalImg: normalImg }) + } + } +} + +function shuffleArray(array) { + for (let i = array.length - 1; i > 0; i--) { + let j = Math.floor(Math.random() * (i + 1)) + let temp = array[i] + array[i] = array[j] + array[j] = temp + } +} + +function setUpNewGame() { + wordsLeft = k + extra + imagesLeft = k + let currentRound = totalSeen / k + if (currentRound + 1 === maxRounds) { + document.getElementById('round-number').innerText = 'Final Round' + } else { + document.getElementById('round-number').innerText = + 'Round ' + (1 + currentRound) + } + + setWordsLeft() + // select new cards + let sampledData = getKSamples() + artDict = sampledData[0] + let randomImages = Object.keys(artDict) + shuffleArray(randomImages) + let namesList = Array.from(sampledData[1]).sort() + // fill in the new cards and names + for (let cardIndex = 1; cardIndex <= k; cardIndex++) { + let currCard = document.getElementById('card-' + cardIndex) + currCard.classList.remove('incorrect') + currCard.dataset.name = '' + currCard.dataset.url = randomImages[cardIndex - 1] + currCard.style.backgroundImage = "url('" + currCard.dataset.url + "')" + } + const nameBank = document.querySelector('.names-bank') + for (nameIndex = 1; nameIndex <= k + extra; nameIndex++) { + currName = document.getElementById('name-' + nameIndex) + // window.console.log(currName) + currName.innerText = namesList[nameIndex - 1] + nameBank.appendChild(currName) + } +} + +function checkAnswers() { + let score = k + // show the correct full cards + for (cardIndex = 1; cardIndex <= k; cardIndex++) { + currCard = document.getElementById('card-' + cardIndex) + let incorrect = true + if (currCard.dataset.name) { + let guess = document.getElementById(currCard.dataset.name).innerText + // window.console.log(artDict[currCard.dataset.url][0], guess); + incorrect = artDict[currCard.dataset.url][0] !== guess + // decide if their guess was correct + } + if (incorrect) currCard.classList.add('incorrect') + // tally some kind of score + if (incorrect) score-- + // show the correct card + currCard.style.backgroundImage = + "url('" + artDict[currCard.dataset.url][1] + "')" + } + totalSeen += k + totalCorrect += score + document.getElementById('score-amount').innerText = score + '/' + k + document.getElementById('score-percent').innerText = Math.round( + (totalCorrect * 100) / totalSeen + ) + document.getElementById('score-amount-total').innerText = + totalCorrect + '/' + totalSeen +} + +function toggleMode() { + event.preventDefault() + if (mode === 'PLAY') { + mode = 'ANSWER' + document.querySelector('.play-page').classList.add('answer-page') + window.console.log(totalSeen) + if (totalSeen / k === maxRounds - 1) { + document.getElementById('submit').style.display = 'none' + } else { + document.getElementById('submit').value = 'Next Round' + } + checkAnswers() + } else { + mode = 'PLAY' + document.querySelector('.play-page').classList.remove('answer-page') + document.getElementById('submit').value = 'Submit' + setUpNewGame() + } +} + +function allowDrop(ev, id) { + ev.preventDefault() +} + +function drag(ev) { + ev.dataTransfer.setData('text', ev.target.id) + let nameEl = document.querySelector('.selected') + if (nameEl) nameEl.classList.remove('selected') +} + +function drop(ev, id) { + ev.preventDefault() + var data = ev.dataTransfer.getData('text') + dropOnCard(id, data) +} + +function returnDrop(ev) { + ev.preventDefault() + var data = ev.dataTransfer.getData('text') + returnToNameBank(data) +} + +function returnToNameBank(name) { + document + .querySelector('.names-bank') + .appendChild(document.getElementById(name)) + let prevContainer = document.querySelector('[data-name=' + name + ']') + if (prevContainer) { + prevContainer.dataset.name = '' + wordsLeft += 1 + imagesLeft += 1 + setWordsLeft() + } +} + +function selectName(ev) { + if (ev.target.parentNode.classList.contains('names-bank')) { + let nameEl = document.querySelector('.selected') + if (nameEl) nameEl.classList.remove('selected') + ev.target.classList.add('selected') + } else { + returnToNameBank(ev.target.id) + } +} + +function dropSelected(ev, id) { + ev.preventDefault() + let nameEl = document.querySelector('.selected') + window.console.log('drop selected', nameEl) + if (!nameEl) return + nameEl.classList.remove('selected') + dropOnCard(id, nameEl.id) +} + +function dropOnCard(id, data) { + let target = document.getElementById('card-' + id) + target.appendChild(document.getElementById(data)) + // if this already has a name, remove that name + if (target.dataset.name) { + returnToNameBank(target.dataset.name) + } + // remove name data from a previous card if there is one + let prevContainer = document.querySelector('[data-name=' + data + ']') + if (prevContainer) { + prevContainer.dataset.name = '' + } else { + wordsLeft -= 1 + imagesLeft -= 1 + setWordsLeft() + } + target.dataset.name = data +} + +function setWordsLeft() { + document.getElementById('words-left').innerText = + 'Unused Card Names: ' + wordsLeft + '/Images: ' + imagesLeft +} diff --git a/web/public/mtg/choose.html b/web/public/mtg/choose.html new file mode 100644 index 00000000..cb84ced5 --- /dev/null +++ b/web/public/mtg/choose.html @@ -0,0 +1,225 @@ +<!DOCTYPE html> +<html> + <head> + <!-- Google Tag Manager --> + <script> + ;(function (w, d, s, l, i) { + w[l] = w[l] || [] + w[l].push({ + 'gtm.start': new Date().getTime(), + event: 'gtm.js', + }) + var f = d.getElementsByTagName(s)[0], + j = d.createElement(s), + dl = l !== 'dataLayer' ? '&l=' + l : '' + j.async = true + j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl + f.parentNode.insertBefore(j, f) + })(window, document, 'script', 'dataLayer', 'GTM-M3MBVGG') + </script> + <!-- End Google Tag Manager --> + <meta charset="UTF-8" /> + <style type="text/css"> + body { + position: relative; + } + + .play-page { + display: flex; + flex-direction: row-reverse; + font-family: Georgia, 'Times New Roman', Times, serif; + min-height: 200px; + } + + h1, + h3 { + font-family: Verdana, Geneva, Tahoma, sans-serif; + text-align: center; + } + + #submit { + margin-top: 10px; + padding: 8px 20px; + background-color: cadetblue; + border: none; + border-radius: 3px; + font-size: 1.1em; + color: white; + cursor: pointer; + } + + #submit:hover { + background-color: rgb(0, 146, 156); + } + + [type='radio'] { + display: none; + } + + [type='radio'] + label.radio-label { + background: lightgrey; + display: block; + padding: 10px; + border-radius: 4px; + cursor: pointer; + } + + label.radio-label:hover { + background: darkgrey; + } + + [type='radio']:checked + label.radio-label { + background: lightcoral; + } + + .radio-label h3 { + margin: 0; + display: inline-block; + vertical-align: middle; + width: 220px; + } + + .thumbnail { + display: inline-block; + vertical-align: middle; + width: 67px; + height: 48px; + margin-right: 4px; + } + + body { + padding: 70px 0 30px; + } + + #addl-options { + position: absolute; + top: 30px; + right: 30px; + background-color: white; + padding: 10px; + cursor: pointer; + width: 200px; + } + + #addl-options > summary { + list-style: none; + text-align: right; + } + </style> + </head> + <body> + <!-- Google Tag Manager (noscript) --> + <noscript> + <iframe + src="https://www.googletagmanager.com/ns.html?id=GTM-M3MBVGG" + height="0" + width="0" + style="display: none; visibility: hidden" + ></iframe> + </noscript> + <!-- End Google Tag Manager (noscript) --> + <h1>Magic the Guessering</h1> + <div class="play-page" style="justify-content: center"> + <form + method="get" + action="index.html" + style="display: flex; flex-direction: column; align-items: center" + > + <!-- <input type="radio" id="wrath" name="whichguesser" value="wrath" /> + <label class="radio-label" for="wrath"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0619d670-7b53-4185-a25d-2fab5db1aab5.jpg?1562896185" + /> + <h3>I'll Clean Sweep</h3></label + ><br /> --> + + <input + type="radio" + id="counterspell" + name="whichguesser" + value="counterspell" + checked + /> + <label class="radio-label" for="counterspell"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/71cfcba5-1571-48b8-a3db-55dca135506e.jpg?1562843855" + /> + <h3>Counterspell Guesser</h3></label + ><br /> + + <!-- <input type="radio" id="terror" name="whichguesser" value="terror" /> + <label class="radio-label" for="terror"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dd5d601-aff7-4b7a-ab6c-b89f403af076.jpg?1562905752" + /> + <h3>I'm a Terror-able Guesser</h3></label + ><br /> --> + + <input type="radio" id="burn" name="whichguesser" value="burn" /> + <label class="radio-label" for="burn"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60b2fae1-242b-45e0-a757-b1adc02c06f3.jpg?1562760596" + /> + <h3>Match With Hot Singles</h3></label + ><br /> + + <!-- <input type="radio" id="beast" name="whichguesser" value="beast" /> + <label class="radio-label" for="beast"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33f7e788-8fc7-49f3-804b-2d7f96852d4b.jpg?1562905469" + /> + <h3>Finding Fantastic Beasts</h3></label + > + <br /> --> + + <details id="addl-options"> + <summary> + <img + src="http://mythicspoiler.com/images/buttons/ustset.png" + style="width: 32px; vertical-align: top" + /> + Options + </summary> + <input type="checkbox" name="digital" id="digital" checked /> + <label for="digital">include digital cards</label> + <br /> + <input type="checkbox" name="un" id="un" checked /> + <label for="un">include un-cards</label> + <br /> + <input type="checkbox" name="original" id="original" /> + <label for="original">restrict to only original printing</label> + </details> + <input type="submit" id="submit" value="Play" /> + </form> + </div> + + <div style="margin: -40px 0 0; height: 60px"> + <a href="https://paypal.me/idamayer">Donate, buy us a boba 🧋</a> + </div> + + <div + style=" + font-size: 0.9em; + position: absolute; + bottom: 0; + left: 0; + right: 0; + color: grey; + font-style: italic; + " + > + made by + <a + style="color: rgb(0, 146, 156); font-style: italic" + href="https://idamayer.com" + >Ida Mayer</a + > + & Alex Lien 2022 + </div> + </body> +</html> diff --git a/web/public/mtg/importCards.py b/web/public/mtg/importCards.py new file mode 100644 index 00000000..343cba1a --- /dev/null +++ b/web/public/mtg/importCards.py @@ -0,0 +1,92 @@ +import time +import requests +import json + +# add category name here +allCategories = ['counterspell', 'beast', 'terror', 'wrath', 'burn'] + + +def generate_initial_query(category): + string_query = 'https://api.scryfall.com/cards/search?q=' + if category == 'counterspell': + string_query += 'otag%3Acounterspell+t%3Ainstant+not%3Aadventure' + elif category == 'beast': + string_query += '-type%3Alegendary+type%3Abeast+-type%3Atoken' + elif category == 'terror': + string_query += 'otag%3Acreature-removal+o%3A%2Fdestroy+target.%2A+%28creature%7Cpermanent%29%2F+%28t' \ + '%3Ainstant+or+t%3Asorcery%29+o%3Atarget+not%3Aadventure' + elif category == 'wrath': + string_query += 'otag%3Asweeper-creature+%28t%3Ainstant+or+t%3Asorcery%29+not%3Aadventure' + elif category == 'burn': + string_query += '%28c>%3Dr+or+mana>%3Dr%29+%28o%3A%2Fdamage+to+them%2F+or+%28o%3Adeals+o%3Adamage+o%3A' \ + '%2Fcontroller%28%5C.%7C+%29%2F%29+or+o%3A%2F~+deals+%28.%7C..%29+damage+to+%28any+target%7C' \ + '.*player%28%5C.%7C+or+planeswalker%29%7C.*opponent%28%5C.%7C+or+planeswalker%29%29%2F%29' \ + '+%28type%3Ainstant+or+type%3Asorcery%29+not%3Aadventure' + # add category string query here + string_query += '+-%28set%3Asld+%28%28cn>%3D231+cn<%3D233%29+or+%28cn>%3D321+cn<%3D324%29+or+%28cn>%3D185+cn' \ + '<%3D189%29+or+%28cn>%3D138+cn<%3D142%29+or+%28cn>%3D364+cn<%3D368%29+or+cn%3A669+or+cn%3A670%29' \ + '%29+-name%3A%2F%5EA-%2F+not%3Adfc+not%3Asplit+-set%3Acmb2+-set%3Acmb1+-set%3Aplist+-set%3Adbl' \ + '+-frame%3Aextendedart+language%3Aenglish&unique=art&page=' + print(string_query) + return string_query + + +def fetch_and_write_all(category, query): + count = 1 + will_repeat = True + while will_repeat: + will_repeat = fetch_and_write(category, query, count) + count += 1 + + +def fetch_and_write(category, query, count): + query += str(count) + response = requests.get(f"{query}").json() + time.sleep(0.1) + with open('jsons/' + category + str(count) + '.json', 'w') as f: + json.dump(to_compact_write_form(response), f) + return response['has_more'] + + +def to_compact_write_form(response): + fieldsToUse = ['has_more'] + fieldsInCard = ['name', 'image_uris', 'content_warning', 'flavor_name', 'reprint', 'frame_effects', 'digital', + 'set_type'] + smallJson = dict() + data = [] + # write all fields needed in response + for field in fieldsToUse: + smallJson[field] = response[field] + # write all fields needed in card + for card in response['data']: + write_card = dict() + for field in fieldsInCard: + if field == 'name' and 'card_faces' in card: + write_card['name'] = card['card_faces'][0]['name'] + elif field == 'image_uris': + write_card['image_uris'] = write_image_uris(card['image_uris']) + elif field in card: + write_card[field] = card[field] + data.append(write_card) + smallJson['data'] = data + return smallJson + + +# only write images needed +def write_image_uris(card_image_uris): + image_uris = dict() + if 'normal' in card_image_uris: + image_uris['normal'] = card_image_uris['normal'] + elif 'large' in card_image_uris: + image_uris['normal'] = card_image_uris['large'] + elif 'small' in card_image_uris: + image_uris['normal'] = card_image_uris['small'] + if card_image_uris: + image_uris['art_crop'] = card_image_uris['art_crop'] + return image_uris + + +if __name__ == "__main__": + for category in allCategories: + print(category) + fetch_and_write_all(category, generate_initial_query(category)) diff --git a/web/public/mtg/index.html b/web/public/mtg/index.html new file mode 100644 index 00000000..8ca9264c --- /dev/null +++ b/web/public/mtg/index.html @@ -0,0 +1,554 @@ +<!DOCTYPE html> +<html> + <head> + <!-- Google Tag Manager --> + <script> + ;(function (w, d, s, l, i) { + w[l] = w[l] || [] + w[l].push({ + 'gtm.start': new Date().getTime(), + event: 'gtm.js', + }) + var f = d.getElementsByTagName(s)[0], + j = d.createElement(s), + dl = l !== 'dataLayer' ? '&l=' + l : '' + j.async = true + j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl + f.parentNode.insertBefore(j, f) + })(window, document, 'script', 'dataLayer', 'GTM-M3MBVGG') + </script> + <!-- End Google Tag Manager --> + <meta charset="UTF-8" /> + <script type="text/javascript" src="app.js"></script> + <style type="text/css"> + body { + position: relative; + } + + .play-page { + display: flex; + flex-direction: row-reverse; + font-family: Georgia, 'Times New Roman', Times, serif; + } + + h1 { + font-family: Verdana, Geneva, Tahoma, sans-serif; + text-align: center; + } + + form { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + margin-right: 240px; + } + + .cards-container { + display: flex; + flex-wrap: wrap; + flex-direction: row; + justify-content: center; + } + + .card { + width: 230px; + height: 208px; + border: 5px solid lightgrey; + margin: 5px; + align-items: flex-end; + box-sizing: border-box; + border-radius: 11px; + position: relative; + display: flex; + justify-content: center; + /*background-size: contain;*/ + background-size: 220px; + background-repeat: no-repeat; + transition: height 1s, background-image 1s, border 0.4s 0.6s; + background-position-y: calc(50% - 20px); + } + + .card:not([data-name^='name'])::after { + content: ''; + height: 34px; + background: white; + width: 100%; + } + + .answer-page .card { + height: 350px; + /*padding-top: 310px;*/ + /*background-size: cover;*/ + overflow: hidden; + border-color: rgb(0, 146, 156); + } + + .answer-page .card.incorrect { + border-color: rgb(216, 27, 96); + } + + .names-bank { + position: fixed; + padding: 10px 10px 40px; + } + + .names-bank .name { + margin: 6px 0; + } + + .answer-page .names-bank .name { + display: none; + } + + .answer-page .names-bank .word-count { + display: none; + } + + .word-count { + text-align: center; + font-style: italic; + color: #444; + } + + .score { + width: 100%; + text-align: center; + background-color: rgb(255, 193, 7); + width: 200px; + font-family: Verdana, Geneva, Tahoma, sans-serif; + opacity: 0; + } + + .names-bank .score { + overflow: hidden; + height: 0; + } + + .answer-page .names-bank .score { + height: auto; + display: block; + opacity: 1; + transition: opacity 1.2s 0.2s; + padding: 20px; + } + + .name { + width: 230px; + min-height: 36px; + border-radius: 2px; + background-color: lightgrey; + padding: 8px 12px 2px; + box-sizing: border-box; + } + + .card .name { + border-radius: 0 0 5px 5px; + } + + #submit { + margin-top: 10px; + padding: 8px 20px; + background-color: cadetblue; + border: none; + border-radius: 3px; + font-size: 1.1em; + color: white; + cursor: pointer; + } + + #submit:hover { + background-color: rgb(0, 146, 156); + } + + #newGame { + padding: 8px 20px; + background-color: lightpink; + border: none; + position: absolute; + top: 5px; + left: 20px; + border-radius: 3px; + font-size: 0.7em; + cursor: pointer; + } + + #newGame:hover { + background-color: coral; + } + + .selected { + background-color: orange; + } + + @media screen and (orientation: landscape) and (max-height: 680px) { + /* CSS applied when the device is in landscape mode*/ + .names-bank { + padding: 0; + top: 0; + max-height: 100vh; + overflow: scroll; + } + + body { + font-size: 20px; + } + + .word-count { + font-size: 14px; + } + + h1 { + margin-right: 240px; + } + } + + @media screen and (orientation: portrait) and (max-width: 1100px) { + body { + font-size: 1.8em; + } + + .play-page { + flex-direction: column; + } + + .names-bank { + flex-direction: row; + display: flex; + flex-wrap: wrap; + /* position: fixed; */ + padding: 10px 10px 40px; + position: sticky; + top: 0; + z-index: 100; + background: white; + } + + .answer-page .names-bank { + min-width: 100%; + justify-content: center; + } + + form { + margin: 0; + } + + .names-bank .name { + margin: 6px; + } + + .names-bank .score { + width: 0; + } + + .answer-page .names-bank .score { + width: auto; + } + + .word-count { + position: absolute; + margin-top: -20px; + } + + .name { + width: 300px; + } + + .card { + width: 300px; + background-size: 300px; + height: 266px; + } + + .answer-page .card { + height: 454px; + } + } + </style> + </head> + <body> + <!-- Google Tag Manager (noscript) --> + <noscript> + <iframe + src="https://www.googletagmanager.com/ns.html?id=GTM-M3MBVGG" + height="0" + width="0" + style="display: none; visibility: hidden" + ></iframe> + </noscript> + <!-- End Google Tag Manager (noscript) --> + + <h1><span id="guess-type"></span>: <span id="round-number"></span></h1> + + <div class="play-page"> + <div + class="names-bank" + ondrop="returnDrop(event)" + ondragover="event.preventDefault()" + > + <div class="score"> + YOUR SCORE + <div>Correct Answers This Round: <span id="score-amount"></span></div> + <div> + Correct Answers In Total: <span id="score-amount-total"></span> + </div> + <div>Overall Percent: <span id="score-percent"></span>%</div> + </div> + <div class="word-count"><span id="words-left"></span></div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-1" + > + Name 1 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-2" + > + Name 2 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-3" + > + Name 3 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-4" + > + Name 4 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-5" + > + Name 5 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-6" + > + Name 6 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-7" + > + Name 7 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-8" + > + Name 8 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-9" + > + Name 9 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-10" + > + Name 10 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-11" + > + Name 11 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-12" + > + Name 12 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-13" + > + Name 13 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-14" + > + Name 14 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-15" + > + Name 15 + </div> + </div> + <form onsubmit="toggleMode(event)"> + <div class="cards-container"> + <div + class="card" + ondrop="drop(event,1)" + ondragover="allowDrop(event,1)" + onclick="dropSelected(event, 1)" + id="card-1" + ></div> + <div + class="card" + ondrop="drop(event,2)" + ondragover="allowDrop(event,2)" + onclick="dropSelected(event, 2)" + id="card-2" + ></div> + <div + class="card" + ondrop="drop(event,3)" + ondragover="allowDrop(event,3)" + onclick="dropSelected(event, 3)" + id="card-3" + ></div> + <div + class="card" + ondrop="drop(event,4)" + ondragover="allowDrop(event,4)" + onclick="dropSelected(event, 4)" + id="card-4" + ></div> + <div + class="card" + ondrop="drop(event,5)" + ondragover="allowDrop(event,5)" + onclick="dropSelected(event, 5)" + id="card-5" + ></div> + <div + class="card" + ondrop="drop(event, 6)" + ondragover="allowDrop(event,6)" + onclick="dropSelected(event,6)" + id="card-6" + ></div> + <div + class="card" + ondrop="drop(event,7)" + ondragover="allowDrop(event,7)" + onclick="dropSelected(event, 7)" + id="card-7" + ></div> + <div + class="card" + ondrop="drop(event,8)" + ondragover="allowDrop(event,8)" + onclick="dropSelected(event, 8)" + id="card-8" + ></div> + <div + class="card" + ondrop="drop(event,9)" + ondragover="allowDrop(event,9)" + onclick="dropSelected(event, 9)" + id="card-9" + ></div> + <div + class="card" + ondrop="drop(event,10)" + ondragover="allowDrop(event,10)" + onclick="dropSelected(event, 10)" + id="card-10" + ></div> + <div + class="card" + ondrop="drop(event,11)" + ondragover="allowDrop(event,11)" + onclick="dropSelected(event, 11)" + id="card-11" + ></div> + <div + class="card" + ondrop="drop(event,12)" + ondragover="allowDrop(event,12)" + onclick="dropSelected(event, 12)" + id="card-12" + ></div> + </div> + <input type="submit" id="submit" value="Submit" /> + </form> + </div> + + <div style="position: absolute; top: 0; left: 0; right: 0; color: grey"> + <form method="get" action="choose.html"> + <input type="submit" id="newGame" value="New Game" /> + </form> + </div> + <div style="margin: -40px 0 0; height: 60px"> + <a href="https://paypal.me/idamayer">Donate, buy us a boba 🧋</a> + </div> + + <div + style=" + font-size: 0.9em; + position: absolute; + bottom: 0; + left: 0; + right: 0; + color: grey; + font-style: italic; + " + > + made by + <a + style="color: rgb(0, 146, 156); font-style: italic" + href="https://idamayer.com" + >Ida Mayer</a + > + & Alex Lien 2022 + </div> + </body> +</html> diff --git a/web/public/mtg/jsons/beast1.json b/web/public/mtg/jsons/beast1.json new file mode 100644 index 00000000..6a5b26c0 --- /dev/null +++ b/web/public/mtg/jsons/beast1.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Adaptive Snapjaw", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d3c0c43-2d6d-49b8-a112-07611a23ae69.jpg?1561815740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d3c0c43-2d6d-49b8-a112-07611a23ae69.jpg?1561815740"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aeromoeba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a304f7e-0b9e-4ef6-9ad8-34350839f7d9.jpg?1626094228", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a304f7e-0b9e-4ef6-9ad8-34350839f7d9.jpg?1626094228"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Affectionate Indrik", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4c8ddc1-d95c-499f-b1d1-f608f8f07b02.jpg?1572893293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4c8ddc1-d95c-499f-b1d1-f608f8f07b02.jpg?1572893293"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Alms Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce441759-cd4c-4bcc-925e-08e8b60853c0.jpg?1561846666", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce441759-cd4c-4bcc-925e-08e8b60853c0.jpg?1561846666"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Alpha Tyrranax", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a2e5279-f28c-4a78-9f8a-16c9f72f8d38.jpg?1562817224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a2e5279-f28c-4a78-9f8a-16c9f72f8d38.jpg?1562817224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Barkripper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33255dfd-f8a9-4a15-aac5-c53dc0257859.jpg?1562629272", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33255dfd-f8a9-4a15-aac5-c53dc0257859.jpg?1562629272"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Brushhopper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b09204c7-3e3d-484a-a4f7-da1b818e3884.jpg?1562631503", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b09204c7-3e3d-484a-a4f7-da1b818e3884.jpg?1562631503"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Murkdiver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e43d62c-488a-4c8d-b193-bacbf8037761.jpg?1562932427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e43d62c-488a-4c8d-b193-bacbf8037761.jpg?1562932427"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Scavenger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21a21190-3c05-40fe-9310-493ed0f9e42e.jpg?1562628898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21a21190-3c05-40fe-9310-493ed0f9e42e.jpg?1562628898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Swarmsnapper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/3636a9f8-d1d7-4452-8a53-788b514fdb97.jpg?1562629337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/3636a9f8-d1d7-4452-8a53-788b514fdb97.jpg?1562629337"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aquamoeba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1243552a-ca57-42ce-817e-d6268fc673e0.jpg?1562628647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1243552a-ca57-42ce-817e-d6268fc673e0.jpg?1562628647"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aquus Steed", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af643949-7a9b-4195-8ab8-d43b1928b85a.jpg?1562791584", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af643949-7a9b-4195-8ab8-d43b1928b85a.jpg?1562791584"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arashin War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66aed11a-0831-4619-931f-7dfded999c66.jpg?1562826029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66aed11a-0831-4619-931f-7dfded999c66.jpg?1562826029"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arashin War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70fd6e2c-201d-436b-ad54-c9403295ec85.jpg?1562634168", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70fd6e2c-201d-436b-ad54-c9403295ec85.jpg?1562634168"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Arborback Stomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/788b9d55-6679-4fcc-a3af-11d31e477421.jpg?1576382341", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/788b9d55-6679-4fcc-a3af-11d31e477421.jpg?1576382341"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arboreal Grazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c4a5f86f-44a8-4735-909a-770586d33a15.jpg?1586962989", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c4a5f86f-44a8-4735-909a-770586d33a15.jpg?1586962989"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Hybrid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2f33f9d-dffd-4742-92c6-be7fe6463dca.jpg?1562638550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2f33f9d-dffd-4742-92c6-be7fe6463dca.jpg?1562638550"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Lancer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7ff3241b-49ba-4243-b8fc-fef600836c8c.jpg?1562637774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7ff3241b-49ba-4243-b8fc-fef600836c8c.jpg?1562637774"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0c33a92-5621-40b4-a3a2-b67893edbc01.jpg?1561968545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0c33a92-5621-40b4-a3a2-b67893edbc01.jpg?1561968545"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/72c1a731-7854-42b1-8719-ac3c2a269c1f.jpg?1562637545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/72c1a731-7854-42b1-8719-ac3c2a269c1f.jpg?1562637545"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a898fbf-5c73-4a50-8bf5-126051747659.jpg?1599332547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a898fbf-5c73-4a50-8bf5-126051747659.jpg?1599332547"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/211b1279-0f37-47a9-8eb5-db91159d0cf2.jpg?1562636700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/211b1279-0f37-47a9-8eb5-db91159d0cf2.jpg?1562636700"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/eda7bda4-51cf-4648-8489-352d28d591fb.jpg?1562945052", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/eda7bda4-51cf-4648-8489-352d28d591fb.jpg?1562945052"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Arc-Slogger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3dd67e0-72b4-4c55-b49b-c69950feccb1.jpg?1562158892", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3dd67e0-72b4-4c55-b49b-c69950feccb1.jpg?1562158892"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Armguard Familiar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/7497f147-146d-4a76-b670-bd84e07352b3.jpg?1654566610", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/7497f147-146d-4a76-b670-bd84e07352b3.jpg?1654566610"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ashen Firebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/ebaef0bd-8288-49ba-a889-d897a4aae64c.jpg?1562939159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/ebaef0bd-8288-49ba-a889-d897a4aae64c.jpg?1562939159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assault Zeppelid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12bf6443-c941-418a-a766-05bba088a117.jpg?1593273548", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12bf6443-c941-418a-a766-05bba088a117.jpg?1593273548"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aura Gnarlid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f8dbb4f-4b01-4666-b62f-a2323dac7a19.jpg?1562706262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f8dbb4f-4b01-4666-b62f-a2323dac7a19.jpg?1562706262"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Auspicious Starrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a39ae1e4-d4dd-4691-af5a-5fa25ace4ebe.jpg?1591227516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a39ae1e4-d4dd-4691-af5a-5fa25ace4ebe.jpg?1591227516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Auspicious Starrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7b41cfa-b22e-4d34-bfe9-68c9d8740704.jpg?1604781846", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7b41cfa-b22e-4d34-bfe9-68c9d8740704.jpg?1604781846"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Avarax", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae76705f-ec95-48b0-9e26-84ce40c9514b.jpg?1562936224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae76705f-ec95-48b0-9e26-84ce40c9514b.jpg?1562936224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Axebane Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2f420b35-1f73-41c8-a15f-1aee4af0999c.jpg?1584831084", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2f420b35-1f73-41c8-a15f-1aee4af0999c.jpg?1584831084"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Gorger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/504090bb-d183-4833-aea5-d4193b5c57a1.jpg?1562735490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/504090bb-d183-4833-aea5-d4193b5c57a1.jpg?1562735490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Null", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/8811d210-23e2-4318-9730-7ee3b2021c68.jpg?1562922516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/8811d210-23e2-4318-9730-7ee3b2021c68.jpg?1562922516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Packhunter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61b22c5d-3b29-47c1-8a04-13586461a143.jpg?1597684060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61b22c5d-3b29-47c1-8a04-13586461a143.jpg?1597684060"}, "reprint": false, "digital": true, "set_type": "starter"}, {"name": "Baloth Pup", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f9c87f4-4fa5-4c97-9654-c4acd250f850.jpg?1562907761", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f9c87f4-4fa5-4c97-9654-c4acd250f850.jpg?1562907761"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Woodcrasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/8223dc6a-2bee-4be9-86d5-f0a17a24c33e.jpg?1562613874", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/8223dc6a-2bee-4be9-86d5-f0a17a24c33e.jpg?1562613874"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bannerhide Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1271251b-7d79-4cb4-80bb-98574aa63249.jpg?1626097186", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1271251b-7d79-4cb4-80bb-98574aa63249.jpg?1626097186"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Barbarian Outcast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9d67b5c-ab20-456e-8ff5-7521be8273b2.jpg?1562631722", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9d67b5c-ab20-456e-8ff5-7521be8273b2.jpg?1562631722"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Barkhide Mauler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9196ce7-3ff4-4dda-a628-559ada11c9ba.jpg?1562938641", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9196ce7-3ff4-4dda-a628-559ada11c9ba.jpg?1562938641"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Batterhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a7b40f74-893f-4bfc-87b2-7f8df4c912d8.jpg?1562791147", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a7b40f74-893f-4bfc-87b2-7f8df4c912d8.jpg?1562791147"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Battering Craghorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9ef71f42-87e5-4b1d-aac1-3752b81cee7c.jpg?1562932547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9ef71f42-87e5-4b1d-aac1-3752b81cee7c.jpg?1562932547"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Battering Krasis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d9aa740-9adf-412a-b6ec-0b9bb1b4618b.jpg?1587306439", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d9aa740-9adf-412a-b6ec-0b9bb1b4618b.jpg?1587306439"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Battlefront Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3b425cd-c5a5-48e9-b697-3860dfa6d5d3.jpg?1562830855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3b425cd-c5a5-48e9-b697-3860dfa6d5d3.jpg?1562830855"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bazaar Krovod", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b07bb2fe-3a9b-47d0-864b-99a662d9544b.jpg?1562791650", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b07bb2fe-3a9b-47d0-864b-99a662d9544b.jpg?1562791650"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beacon Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0cc42e33-7489-4a32-bb30-adc80ec13521.jpg?1562799353", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0cc42e33-7489-4a32-bb30-adc80ec13521.jpg?1562799353"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35ed069c-410f-4b30-afd1-8d04742068e7.jpg?1562906387", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35ed069c-410f-4b30-afd1-8d04742068e7.jpg?1562906387"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/7693877c-958f-4c67-93d5-7db8f2dd87e7.jpg?1562919934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/7693877c-958f-4c67-93d5-7db8f2dd87e7.jpg?1562919934"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c90b6269-7406-40c9-8d4c-3448698a1fdd.jpg?1562937465", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c90b6269-7406-40c9-8d4c-3448698a1fdd.jpg?1562937465"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f7191d7-2c2c-470e-a2b6-eeb8f3031cc2.jpg?1562928685", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f7191d7-2c2c-470e-a2b6-eeb8f3031cc2.jpg?1562928685"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beasts of Bogardan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f885d776-2953-4ed4-b63f-91dc2b42783b.jpg?1562861851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f885d776-2953-4ed4-b63f-91dc2b42783b.jpg?1562861851"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beast Walkers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99b42f6c-5c7e-4ba8-b0fb-ac8564aaf825.jpg?1562587770", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99b42f6c-5c7e-4ba8-b0fb-ac8564aaf825.jpg?1562587770"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Berserk Murlodont", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/499c4674-dd9f-4848-8447-721f842a0213.jpg?1562909903", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/499c4674-dd9f-4848-8447-721f842a0213.jpg?1562909903"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blastoderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/1354ca60-7183-47ae-ba7b-0871311cba66.jpg?1562089277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/1354ca60-7183-47ae-ba7b-0871311cba66.jpg?1562089277"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Blastoderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9db5d6c2-b11f-442a-b172-c0c99c9bec07.jpg?1562631252", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9db5d6c2-b11f-442a-b172-c0c99c9bec07.jpg?1562631252"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blight-Breath Catoblepas", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/7865c079-1d91-48d4-852d-d104b6e0c157.jpg?1616399490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/7865c079-1d91-48d4-852d-d104b6e0c157.jpg?1616399490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blind Creeper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86d5440a-7460-4b4f-a167-a6c4fb2d855e.jpg?1562878236", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86d5440a-7460-4b4f-a167-a6c4fb2d855e.jpg?1562878236"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bloodstoke Howler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/743779d4-fee8-4b8d-a5ac-27f355e006e5.jpg?1562918274", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/743779d4-fee8-4b8d-a5ac-27f355e006e5.jpg?1562918274"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blossoming Bogbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/332153ab-1b8e-40a8-b0b4-01f94866d368.jpg?1625192204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/332153ab-1b8e-40a8-b0b4-01f94866d368.jpg?1625192204"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Bog Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f230831-023c-41aa-832e-16ac81e68588.jpg?1562909815", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f230831-023c-41aa-832e-16ac81e68588.jpg?1562909815"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bogstomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05145a8d-0bfb-4f07-87cf-65875310bdb4.jpg?1562300265", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05145a8d-0bfb-4f07-87cf-65875310bdb4.jpg?1562300265"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Bonethorn Valesk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/297d7326-ad03-464d-97e2-443042d48f92.jpg?1562526649", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/297d7326-ad03-464d-97e2-443042d48f92.jpg?1562526649"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boneyard Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/37e4df5b-ec53-4f8a-8c26-272b3177c0a6.jpg?1591227954", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/37e4df5b-ec53-4f8a-8c26-272b3177c0a6.jpg?1591227954"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boneyard Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e0232c0-0867-4217-8e5d-b3454c0c8dab.jpg?1604781908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e0232c0-0867-4217-8e5d-b3454c0c8dab.jpg?1604781908"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Book Devourer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01dfe640-5bd2-4d0b-8977-887b2ed4c2dd.jpg?1572893108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01dfe640-5bd2-4d0b-8977-887b2ed4c2dd.jpg?1572893108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boot Nipper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cff5a5b8-f823-4429-acd8-c4f34a676cb4.jpg?1591226621", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cff5a5b8-f823-4429-acd8-c4f34a676cb4.jpg?1591226621"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brackish Trudge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90ba37ee-159f-421f-8d37-a7b5f1b562f0.jpg?1624590775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90ba37ee-159f-421f-8d37-a7b5f1b562f0.jpg?1624590775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Branchsnap Lorian", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52118ff1-ad76-4b97-9fdc-6adfe80140f8.jpg?1562911651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52118ff1-ad76-4b97-9fdc-6adfe80140f8.jpg?1562911651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brontotherium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a171f5e2-ed3d-4675-a4fc-953ebb907aa0.jpg?1562927638", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a171f5e2-ed3d-4675-a4fc-953ebb907aa0.jpg?1562927638"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Broodstar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07a194cb-53c9-4690-ba63-79beecaebe0e.jpg?1562134726", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07a194cb-53c9-4690-ba63-79beecaebe0e.jpg?1562134726"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brushstrider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59bd1534-52d1-4946-b430-d26f039a9067.jpg?1562786763", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59bd1534-52d1-4946-b430-d26f039a9067.jpg?1562786763"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bulette", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/206a9e7b-45c1-4213-8fc4-27d90e2ab0e9.jpg?1627707159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/206a9e7b-45c1-4213-8fc4-27d90e2ab0e9.jpg?1627707159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bulette", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a76c993-7cc5-428f-bfbc-7747c6a566d0.jpg?1627711855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a76c993-7cc5-428f-bfbc-7747c6a566d0.jpg?1627711855"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Bull Cerodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bbae0fe2-5d52-434c-8ad1-4a5e42f4b7c4.jpg?1562708388", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bbae0fe2-5d52-434c-8ad1-4a5e42f4b7c4.jpg?1562708388"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bumbling Pangolin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/4930b9d5-939f-4463-9f9a-235aa3a4f8c4.jpg?1562910270", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/4930b9d5-939f-4463-9f9a-235aa3a4f8c4.jpg?1562910270"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Calciderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/1585bb24-41de-48a7-820e-d99ee76aec01.jpg?1580013629", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/1585bb24-41de-48a7-820e-d99ee76aec01.jpg?1580013629"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Calciderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/387adc65-5d18-4291-85b1-f49f556781c7.jpg?1561756925", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/387adc65-5d18-4291-85b1-f49f556781c7.jpg?1561756925"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Caller of the Pack", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1286208b-896b-4f41-a837-1c8a2b199a0f.jpg?1562701494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1286208b-896b-4f41-a837-1c8a2b199a0f.jpg?1562701494"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Canopy Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b04160c-89a7-4dcd-b05d-5dc846824d64.jpg?1604198638", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b04160c-89a7-4dcd-b05d-5dc846824d64.jpg?1604198638"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Canopy Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d52e90d3-d356-4b23-8f5c-a4004b20394c.jpg?1604202724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d52e90d3-d356-4b23-8f5c-a4004b20394c.jpg?1604202724"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Canopy Crawler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0ccdc9d7-71b5-4304-8d19-a63952e17a6b.jpg?1562897615", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0ccdc9d7-71b5-4304-8d19-a63952e17a6b.jpg?1562897615"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Carnassid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae10e7fe-ee51-4c39-86ec-503324d19f6c.jpg?1562597351", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae10e7fe-ee51-4c39-86ec-503324d19f6c.jpg?1562597351"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Carnivorous Moss-Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd814ce3-9555-4e9d-a212-e40717f4e546.jpg?1562793539", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd814ce3-9555-4e9d-a212-e40717f4e546.jpg?1562793539"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cavern Harpy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/d/adfb0804-50d6-4bca-8733-72e01030a543.jpg?1562931741", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/d/adfb0804-50d6-4bca-8733-72e01030a543.jpg?1562931741"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cavern Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34748acb-7045-42b6-a93f-a3f11a1bc839.jpg?1562702691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34748acb-7045-42b6-a93f-a3f11a1bc839.jpg?1562702691"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cerodon Yearling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f6a85165-5aed-4e26-a314-1370d4638deb.jpg?1562645142", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f6a85165-5aed-4e26-a314-1370d4638deb.jpg?1562645142"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chainflinger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/670a5bba-a10f-41f6-88cd-cef1dfe4bfa9.jpg?1562914041", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/670a5bba-a10f-41f6-88cd-cef1dfe4bfa9.jpg?1562914041"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chambered Nautilus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/860c613d-d031-4c2a-922b-39f4eec04e18.jpg?1562381838", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/860c613d-d031-4c2a-922b-39f4eec04e18.jpg?1562381838"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chancellor of the Tangle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d129aa8-b637-451e-8123-5221e08cc2cc.jpg?1562878494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d129aa8-b637-451e-8123-5221e08cc2cc.jpg?1562878494"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Charging Binox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68222ab7-7b9c-43e5-b80e-db643d80a6d9.jpg?1562915983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68222ab7-7b9c-43e5-b80e-db643d80a6d9.jpg?1562915983"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Charging Slateback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2cfff37-655f-4107-abf3-e6f63d0e4de2.jpg?1562945225", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2cfff37-655f-4107-abf3-e6f63d0e4de2.jpg?1562945225"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chartooth Cougar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b0960bdb-baa7-4b9a-a377-d350eb9c1d3b.jpg?1581708552", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b0960bdb-baa7-4b9a-a377-d350eb9c1d3b.jpg?1581708552"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Chartooth Cougar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b2c9c07-c3db-46ca-a204-b710c3a34ae9.jpg?1562530181", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b2c9c07-c3db-46ca-a204-b710c3a34ae9.jpg?1562530181"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chromeshell Crab", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91cf95f-5007-409c-b891-00e10a3477e0.jpg?1568003959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91cf95f-5007-409c-b891-00e10a3477e0.jpg?1568003959"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Chromeshell Crab", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e02a40a4-fa61-4595-810a-3796e0d71507.jpg?1562940039", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e02a40a4-fa61-4595-810a-3796e0d71507.jpg?1562940039"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cliffrunner Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/764c1a14-143f-4601-92c5-ebeabf3e375d.jpg?1562801821", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/764c1a14-143f-4601-92c5-ebeabf3e375d.jpg?1562801821"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Clockwork Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27f916a2-0ace-44b5-99dc-72979af34db9.jpg?1559591318", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27f916a2-0ace-44b5-99dc-72979af34db9.jpg?1559591318"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Clockwork Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5e5ae63-4963-485e-b40c-3450ee46674b.jpg?1562940262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5e5ae63-4963-485e-b40c-3450ee46674b.jpg?1562940262"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Clockwork Vorrac", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/e/7e876938-1b8e-44cf-ade2-a42f8acdf24c.jpg?1562148654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/e/7e876938-1b8e-44cf-ade2-a42f8acdf24c.jpg?1562148654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Coalhauler Swine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc001cef-3afd-4128-989f-ac99dc76b243.jpg?1598915417", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc001cef-3afd-4128-989f-ac99dc76b243.jpg?1598915417"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Colossodon Yearling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2c60e63-0b86-4100-a932-bb9e9b197610.jpg?1562795540", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2c60e63-0b86-4100-a932-bb9e9b197610.jpg?1562795540"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Colos Yearling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d68eb62-9f86-4c85-8696-46a248c744ff.jpg?1562443334", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d68eb62-9f86-4c85-8696-46a248c744ff.jpg?1562443334"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Copperhoof Vorrac", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/81fff4cc-b2ab-4a41-bede-0d807552ba46.jpg?1562149121", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/81fff4cc-b2ab-4a41-bede-0d807552ba46.jpg?1562149121"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cosmic Larva", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/deaa0b9b-258e-4daf-8fec-ce64864d6bbf.jpg?1562880234", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/deaa0b9b-258e-4daf-8fec-ce64864d6bbf.jpg?1562880234"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cragplate Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/ab62382d-2dc9-4a60-b031-c845ebad0357.jpg?1604198667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/ab62382d-2dc9-4a60-b031-c845ebad0357.jpg?1604198667"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crater Hellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/2382e525-1750-484a-bf95-dbb42bbb30ae.jpg?1562902530", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/2382e525-1750-484a-bf95-dbb42bbb30ae.jpg?1562902530"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Craterhoof Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a249be17-73ed-4108-89c0-f7e87939beb8.jpg?1592709311", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a249be17-73ed-4108-89c0-f7e87939beb8.jpg?1592709311"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Craterhoof Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/2750bee4-7dfa-4128-989c-5f81af1b322a.jpg?1645561147", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/2750bee4-7dfa-4128-989c-5f81af1b322a.jpg?1645561147"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Craterhoof Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/640be32d-dcc8-408a-b8a6-077472f1e70b.jpg?1645561142", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/640be32d-dcc8-408a-b8a6-077472f1e70b.jpg?1645561142"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Creature Guy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/13ac8bde-7a3e-4d14-91f4-f4325c93f6a8.jpg?1562487893", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/13ac8bde-7a3e-4d14-91f4-f4325c93f6a8.jpg?1562487893"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Crested Craghorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aadb40c8-3d54-4705-82dc-54e8d6e315d5.jpg?1562929450", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aadb40c8-3d54-4705-82dc-54e8d6e315d5.jpg?1562929450"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cryptic Annelid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a51026a-ae3c-4fa1-ac1e-96d44ae55b82.jpg?1562916366", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a51026a-ae3c-4fa1-ac1e-96d44ae55b82.jpg?1562916366"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cultivator Colossus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62dffe04-c431-440d-a8da-33c74b4bb683.jpg?1643592511", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62dffe04-c431-440d-a8da-33c74b4bb683.jpg?1643592511"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cystbearer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6c10302-f0b3-4076-ae5c-a8c8c09a7d41.jpg?1562822162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6c10302-f0b3-4076-ae5c-a8c8c09a7d41.jpg?1562822162"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Darba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d82636dc-4b3e-44a8-bc72-dab1275dfb6d.jpg?1562935433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d82636dc-4b3e-44a8-bc72-dab1275dfb6d.jpg?1562935433"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathbringer Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f09f166f-dd3c-4cf5-b5f9-3989f46f050c.jpg?1562645019", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f09f166f-dd3c-4cf5-b5f9-3989f46f050c.jpg?1562645019"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathmist Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74c40df1-3f63-49e7-a869-1ce14f94a753.jpg?1562788391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74c40df1-3f63-49e7-a869-1ce14f94a753.jpg?1562788391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deepwood Tantiv", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfa2028e-4e73-4ff2-a9e2-9ac347d67893.jpg?1562382576", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfa2028e-4e73-4ff2-a9e2-9ac347d67893.jpg?1562382576"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Desert Cerodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2047c2e5-8b3b-4c6b-91cf-3484f21e52f0.jpg?1543675549", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2047c2e5-8b3b-4c6b-91cf-3484f21e52f0.jpg?1543675549"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Displacer Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95d5c36c-bcc8-459c-9f4b-b265ccdb1f06.jpg?1627703119", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95d5c36c-bcc8-459c-9f4b-b265ccdb1f06.jpg?1627703119"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Displacer Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/8646ae5c-e757-4d16-bf2a-d48770d620fa.jpg?1627711276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/8646ae5c-e757-4d16-bf2a-d48770d620fa.jpg?1627711276"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Displacer Kitten", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/7/c7a401b8-29fb-46ef-a663-427f66724d5c.jpg?1653329945", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/7/c7a401b8-29fb-46ef-a663-427f66724d5c.jpg?1653329945"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Domri's Nodorog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1abe58d8-67d1-4719-8e84-27747dea3506.jpg?1584832471", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1abe58d8-67d1-4719-8e84-27747dea3506.jpg?1584832471"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dreg Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e7771eba-bc2d-40f2-bab4-5e9cc4fe8f34.jpg?1562710204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e7771eba-bc2d-40f2-bab4-5e9cc4fe8f34.jpg?1562710204"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drekavac", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/459d8cb7-cbb8-4e73-9571-44277f1d1be2.jpg?1593272880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/459d8cb7-cbb8-4e73-9571-44277f1d1be2.jpg?1593272880"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dromad Purebred", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0106caf1-2201-4661-96a5-56af02963fa6.jpg?1598913635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0106caf1-2201-4661-96a5-56af02963fa6.jpg?1598913635"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drooling Groodion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de33c222-0d74-4eb5-8794-39f3601eb8f4.jpg?1598916987", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de33c222-0d74-4eb5-8794-39f3601eb8f4.jpg?1598916987"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Durkwood Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/670521c3-df02-487d-a299-49419e41889f.jpg?1562916541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/670521c3-df02-487d-a299-49419e41889f.jpg?1562916541"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Earthshaking Si", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/418df457-4aab-486c-b691-41f03ec8a6df.jpg?1562131512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/418df457-4aab-486c-b691-41f03ec8a6df.jpg?1562131512"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Elder Gargaroth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d51269cf-a333-4a64-94cd-245798d840d2.jpg?1594736944", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d51269cf-a333-4a64-94cd-245798d840d2.jpg?1594736944"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Electryte", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85c3d04f-4010-4db3-9e4e-afa8116b263d.jpg?1562923240", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85c3d04f-4010-4db3-9e4e-afa8116b263d.jpg?1562923240"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ember Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8a6d9cab-b07b-456b-9562-7ea7f6bec7f3.jpg?1561835467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8a6d9cab-b07b-456b-9562-7ea7f6bec7f3.jpg?1561835467"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Ember Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25080720-612f-40c0-8894-cda8e3e8afb8.jpg?1562901920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25080720-612f-40c0-8894-cda8e3e8afb8.jpg?1562901920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Enormous Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/cebfb5a6-9052-47be-b931-834b5064df31.jpg?1562936577", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/cebfb5a6-9052-47be-b931-834b5064df31.jpg?1562936577"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Erithizon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec4ea4e2-2102-4b99-bea5-6fc4203f2b26.jpg?1562383536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec4ea4e2-2102-4b99-bea5-6fc4203f2b26.jpg?1562383536"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Symbiote", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d09ddf0-91f0-4e76-809f-c39ca7418ed5.jpg?1591227575", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d09ddf0-91f0-4e76-809f-c39ca7418ed5.jpg?1591227575"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ettercap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f5228dc-ec9d-456f-a89c-1bc592a1bbab.jpg?1653970287", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f5228dc-ec9d-456f-a89c-1bc592a1bbab.jpg?1653970287"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Excavating Anurid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d353d315-5790-417d-adf5-270df1ff34b0.jpg?1562202067", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d353d315-5790-417d-adf5-270df1ff34b0.jpg?1562202067"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Fangren Firstborn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97d5fc3c-7f6b-42a5-a482-d789a2a421c7.jpg?1562638300", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97d5fc3c-7f6b-42a5-a482-d789a2a421c7.jpg?1562638300"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fangren Hunter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2dbc8eef-f032-490a-b487-da1af71b7ff2.jpg?1562139685", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dbc8eef-f032-490a-b487-da1af71b7ff2.jpg?1562139685"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fangren Marauder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5cf62a2-d03a-495d-924a-bf79524175fa.jpg?1562615957", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5cf62a2-d03a-495d-924a-bf79524175fa.jpg?1562615957"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fangren Pathcutter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59679bcf-4436-48f8-bc6a-d7e0ec6b04c9.jpg?1562877169", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59679bcf-4436-48f8-bc6a-d7e0ec6b04c9.jpg?1562877169"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Felidar Cub", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea76a183-e15c-4968-b29d-91c074aa8681.jpg?1562950859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea76a183-e15c-4968-b29d-91c074aa8681.jpg?1562950859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Felidar Guardian", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44bdbed8-5d21-4bf5-8a32-9623b1139c85.jpg?1576381396", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44bdbed8-5d21-4bf5-8a32-9623b1139c85.jpg?1576381396"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Felidar Sovereign", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/78769295-e1e3-4bd7-9ece-b60e124efbba.jpg?1562920314", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/78769295-e1e3-4bd7-9ece-b60e124efbba.jpg?1562920314"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Feral Hydra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46f76986-e9fb-4c51-b946-880b501775b0.jpg?1562703397", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46f76986-e9fb-4c51-b946-880b501775b0.jpg?1562703397"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feral Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/5041996b-c265-4c4f-a52c-dfe29b2e282d.jpg?1562825098", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/5041996b-c265-4c4f-a52c-dfe29b2e282d.jpg?1562825098"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feral Throwback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/5111a9a3-a92d-4677-8974-20800256dd4f.jpg?1606849574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/5111a9a3-a92d-4677-8974-20800256dd4f.jpg?1606849574"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Ferocious Zheng", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a6d1184-15e0-4b41-ba2d-4f68e91c61d4.jpg?1562131565", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a6d1184-15e0-4b41-ba2d-4f68e91c61d4.jpg?1562131565"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Ferrovore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8dcc7170-38d9-4b9e-a5f9-73ac1208c439.jpg?1636491206", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8dcc7170-38d9-4b9e-a5f9-73ac1208c439.jpg?1636491206"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fledgling Mawcor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c464923e-ae6e-4c1d-9315-0ddb86c07b40.jpg?1562936522", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c464923e-ae6e-4c1d-9315-0ddb86c07b40.jpg?1562936522"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Charger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c57abdab-d99c-418c-818d-b06a8722d733.jpg?1562941643", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c57abdab-d99c-418c-818d-b06a8722d733.jpg?1562941643"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Crusher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c93f0066-1ff0-4e52-9959-9eb0def60957.jpg?1562631986", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c93f0066-1ff0-4e52-9959-9eb0def60957.jpg?1562631986"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Hellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/680ccbc7-aa97-4f01-9d26-0df184af3c3e.jpg?1562596853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/680ccbc7-aa97-4f01-9d26-0df184af3c3e.jpg?1562596853"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Mauler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a3165251-6ac6-4294-8bca-595c362f4ceb.jpg?1562597338", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a3165251-6ac6-4294-8bca-595c362f4ceb.jpg?1562597338"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Overseer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3e644ab8-3cc3-413d-a918-44fc636087ae.jpg?1562629522", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3e644ab8-3cc3-413d-a918-44fc636087ae.jpg?1562629522"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6f2b70a5-db13-4c3f-829d-d4b9e0a16245.jpg?1562596859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6f2b70a5-db13-4c3f-829d-d4b9e0a16245.jpg?1562596859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frenetic Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f6bc3c0-2d6e-4a09-84c4-b26a352186bb.jpg?1562923949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f6bc3c0-2d6e-4a09-84c4-b26a352186bb.jpg?1562923949"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frenzied Arynx", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bce2eef7-03a4-415f-8bb7-a29d50ce1b0f.jpg?1584831519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bce2eef7-03a4-415f-8bb7-a29d50ce1b0f.jpg?1584831519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frondland Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/ab220695-e1a9-45ec-a1b1-5a82c9c90a03.jpg?1591605277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/ab220695-e1a9-45ec-a1b1-5a82c9c90a03.jpg?1591605277"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fungal Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b65f96b-019b-40a9-9b4d-acd4abf4a0f9.jpg?1562901457", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b65f96b-019b-40a9-9b4d-acd4abf4a0f9.jpg?1562901457"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Furnace Scamp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97538294-058c-47d4-b7a8-4db3753a6628.jpg?1562879991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97538294-058c-47d4-b7a8-4db3753a6628.jpg?1562879991"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fylamarid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8dd4f686-79e3-4067-81f9-7fae0c25dc8f.jpg?1562055416", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8dd4f686-79e3-4067-81f9-7fae0c25dc8f.jpg?1562055416"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Galvanoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc1a696b-642a-419f-bd43-09af39a9401b.jpg?1562616123", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc1a696b-642a-419f-bd43-09af39a9401b.jpg?1562616123"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gang of Elk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd0a61c9-8b14-4255-8453-4b74d90fe0a3.jpg?1562248146", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd0a61c9-8b14-4255-8453-4b74d90fe0a3.jpg?1562248146"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Gang of Elk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a84177f-43a3-4d14-9a4c-2ca931cfe092.jpg?1562863261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a84177f-43a3-4d14-9a4c-2ca931cfe092.jpg?1562863261"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b672c59-7376-455d-961e-ce94d47a5ca4.jpg?1626096673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b672c59-7376-455d-961e-ce94d47a5ca4.jpg?1626096673"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88167b74-c25f-4a9b-a4f5-33a51e01d498.jpg?1626101678", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88167b74-c25f-4a9b-a4f5-33a51e01d498.jpg?1626101678"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "draft_innovation"}, {"name": "Garruk's Companion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/863c9a10-d83f-415b-adf2-2d0f870410b2.jpg?1562466784", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/863c9a10-d83f-415b-adf2-2d0f870410b2.jpg?1562466784"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Gorehorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/3928bbce-87b7-4b28-9af4-20362935c909.jpg?1594736993", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/3928bbce-87b7-4b28-9af4-20362935c909.jpg?1594736993"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Harbinger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e0fa0b6-5f3f-4669-84e8-2c38c9593d88.jpg?1595022082", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e0fa0b6-5f3f-4669-84e8-2c38c9593d88.jpg?1595022082"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Horde", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/563c6959-9131-40a6-97ec-12baf6fb7ca0.jpg?1562643185", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/563c6959-9131-40a6-97ec-12baf6fb7ca0.jpg?1562643185"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Horde", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/3313f4ea-1275-4835-b4ff-73d3601c04e1.jpg?1605361688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/3313f4ea-1275-4835-b4ff-73d3601c04e1.jpg?1605361688"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Garruk's Packleader", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfaef299-7879-4f52-8ee4-701ed150b930.jpg?1562478545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfaef299-7879-4f52-8ee4-701ed150b930.jpg?1562478545"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Gemrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/0095245c-a30e-4e2a-88c9-632c678e9f03.jpg?1591227650", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/0095245c-a30e-4e2a-88c9-632c678e9f03.jpg?1591227650"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/beast2.json b/web/public/mtg/jsons/beast2.json new file mode 100644 index 00000000..de0f2279 --- /dev/null +++ b/web/public/mtg/jsons/beast2.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Gemrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d75546a5-81fd-41c1-a081-d8980f6bd60a.jpg?1604781861", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d75546a5-81fd-41c1-a081-d8980f6bd60a.jpg?1604781861"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Gemrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c811c0d4-e2fc-45eb-8a76-b89c38a95536.jpg?1604783022", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c811c0d4-e2fc-45eb-8a76-b89c38a95536.jpg?1604783022"}, "flavor_name": "Anguirus, Armored Killer", "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Geyser Glider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b8aec169-4c62-4d53-a19c-68baa20c8e59.jpg?1562615855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b8aec169-4c62-4d53-a19c-68baa20c8e59.jpg?1562615855"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghor-Clan Rampager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/382048ec-0bf5-49a5-90d5-f80fbda08962.jpg?1561822913", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/382048ec-0bf5-49a5-90d5-f80fbda08962.jpg?1561822913"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghor-Clan Rampager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5dacb6f8-20f7-4ed4-aa9f-8c1d55f09357.jpg?1562497081", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5dacb6f8-20f7-4ed4-aa9f-8c1d55f09357.jpg?1562497081"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Giant Warthog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c402ef0e-51e7-4da6-a434-b99c5d435698.jpg?1562631879", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c402ef0e-51e7-4da6-a434-b99c5d435698.jpg?1562631879"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gilded Cerodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f68c8fbd-9223-447d-a85c-fa6222c75277.jpg?1562820187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f68c8fbd-9223-447d-a85c-fa6222c75277.jpg?1562820187"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glade Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee38eeae-918b-4d19-b37a-175ac5db37a4.jpg?1562951582", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee38eeae-918b-4d19-b37a-175ac5db37a4.jpg?1562951582"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glademuse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/89a40dc1-3bd8-4c7e-9446-5abc8c1f6995.jpg?1591319670", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/89a40dc1-3bd8-4c7e-9446-5abc8c1f6995.jpg?1591319670"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Gloomshrieker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2b50751-7f65-4321-86da-eef735bf8b67.jpg?1654568435", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2b50751-7f65-4321-86da-eef735bf8b67.jpg?1654568435"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glowering Rogon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/974b0881-bd26-4074-93dd-a1e3600347c4.jpg?1562925487", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/974b0881-bd26-4074-93dd-a1e3600347c4.jpg?1562925487"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glowing Anemone", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/708593e6-787b-4f76-a86c-1d52857493ea.jpg?1562381361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/708593e6-787b-4f76-a86c-1d52857493ea.jpg?1562381361"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gluetius Maximus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aa7626ff-814f-4d9f-9595-ac7fa5334d4b.jpg?1562489356", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aa7626ff-814f-4d9f-9595-ac7fa5334d4b.jpg?1562489356"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Gnarlid Colony", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/7327289d-eed8-44b1-8495-7172e2b49d5f.jpg?1604198764", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/7327289d-eed8-44b1-8495-7172e2b49d5f.jpg?1604198764"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gnarlid Pack", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68716387-c5ec-4967-be5f-723783722c64.jpg?1562288938", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68716387-c5ec-4967-be5f-723783722c64.jpg?1562288938"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Godsire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2539ff7-2b7d-47e3-bd77-3138a6c42d2b.jpg?1562710016", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2539ff7-2b7d-47e3-bd77-3138a6c42d2b.jpg?1562710016"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Goretusk Firebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9919d2dd-d6a1-4d45-b6aa-227ed05d7051.jpg?1562631090", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9919d2dd-d6a1-4d45-b6aa-227ed05d7051.jpg?1562631090"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Graf Mole", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25a40334-65d8-46d2-9c56-389e9b32107c.jpg?1576385088", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25a40334-65d8-46d2-9c56-389e9b32107c.jpg?1576385088"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grave Sifter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/598fe7f1-bcc2-4909-9933-06bf02372adc.jpg?1561943333", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/598fe7f1-bcc2-4909-9933-06bf02372adc.jpg?1561943333"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Graxiplon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c16e565-0b7f-46b1-a091-64c47c923a9f.jpg?1562897735", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c16e565-0b7f-46b1-a091-64c47c923a9f.jpg?1562897735"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grazing Kelpie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68ccef2d-9a1f-4011-89e1-911bcc109b9d.jpg?1562916942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68ccef2d-9a1f-4011-89e1-911bcc109b9d.jpg?1562916942"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Greater Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/653ddfa0-2088-4503-a3ab-b0f1d55d8351.jpg?1562916161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/653ddfa0-2088-4503-a3ab-b0f1d55d8351.jpg?1562916161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Great-Horn Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/122e08cb-407b-4b3d-8af0-077ff96bf160.jpg?1562822577", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/122e08cb-407b-4b3d-8af0-077ff96bf160.jpg?1562822577"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gristleback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b82f763a-c960-4b59-8c77-f3bea7bd8c8b.jpg?1593272456", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b82f763a-c960-4b59-8c77-f3bea7bd8c8b.jpg?1593272456"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Groffskithur", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75e84098-c15c-40f4-9d8a-3fa5da26a268.jpg?1562148057", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75e84098-c15c-40f4-9d8a-3fa5da26a268.jpg?1562148057"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grollub", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/47f6301a-d581-4aaf-9993-3013323074aa.jpg?1562087828", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/47f6301a-d581-4aaf-9993-3013323074aa.jpg?1562087828"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gruul Nodorog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/9855ce83-ae26-4b1d-ab7f-637cde09d679.jpg?1593272463", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/9855ce83-ae26-4b1d-ab7f-637cde09d679.jpg?1593272463"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gruul Ragebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/080ef367-7904-4e5c-a8b4-1fb62f951f3e.jpg?1561814762", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/080ef367-7904-4e5c-a8b4-1fb62f951f3e.jpg?1561814762"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guardian Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9941f83b-2903-4eab-ac6d-5313e3978fa3.jpg?1562923479", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9941f83b-2903-4eab-ac6d-5313e3978fa3.jpg?1562923479"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gulf Squid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf424982-a0ab-4db9-8889-f3cef10966c6.jpg?1562930718", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf424982-a0ab-4db9-8889-f3cef10966c6.jpg?1562930718"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gurzigost", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f4e672c6-6ddc-4dd2-b4c7-5083d7566e87.jpg?1562632734", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f4e672c6-6ddc-4dd2-b4c7-5083d7566e87.jpg?1562632734"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Helium Squirter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/764e3d28-1876-46da-b927-b98089d62776.jpg?1593272686", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/764e3d28-1876-46da-b927-b98089d62776.jpg?1593272686"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Herald of the Forgotten", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c3dba1c4-ee9a-4ea6-bf66-f639d38711cd.jpg?1591319371", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c3dba1c4-ee9a-4ea6-bf66-f639d38711cd.jpg?1591319371"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Herd Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1e9cef5-c55f-47d9-9d2f-300dab8fcb0b.jpg?1626097560", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1e9cef5-c55f-47d9-9d2f-300dab8fcb0b.jpg?1626097560"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Herd Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9cf4fd75-34b1-4afa-b8cd-777dfc9e6376.jpg?1562928115", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9cf4fd75-34b1-4afa-b8cd-777dfc9e6376.jpg?1562928115"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Highcliff Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ecbeac44-9392-4522-8ff5-87079386bd0a.jpg?1576267130", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ecbeac44-9392-4522-8ff5-87079386bd0a.jpg?1576267130"}, "reprint": false, "digital": false, "set_type": "box"}, {"name": "Hollowhenge Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/052ab91f-ac01-43f4-9276-9af35dbfbf71.jpg?1562896231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/052ab91f-ac01-43f4-9276-9af35dbfbf71.jpg?1562896231"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hundroog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f525c356-88ca-4e2e-8f06-663be101e34f.jpg?1562944359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f525c356-88ca-4e2e-8f06-663be101e34f.jpg?1562944359"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hunted Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/edda2de4-22f6-4d33-b182-3ae5d105f1f6.jpg?1562942777", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/edda2de4-22f6-4d33-b182-3ae5d105f1f6.jpg?1562942777"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Hunted Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b21c8b2d-ef0f-4839-acfc-20fd248c62cf.jpg?1562382549", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b21c8b2d-ef0f-4839-acfc-20fd248c62cf.jpg?1562382549"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hunting Moa", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/926cefa1-3c5c-4bd6-859b-de620a3ee777.jpg?1555789722", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/926cefa1-3c5c-4bd6-859b-de620a3ee777.jpg?1555789722"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hydroid Krasis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/801dd9c6-b159-4e1c-af2c-214c1f573633.jpg?1584833616", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/801dd9c6-b159-4e1c-af2c-214c1f573633.jpg?1584833616"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hystrodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c964473-7c54-4c2d-a3eb-dba01c842103.jpg?1562901719", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c964473-7c54-4c2d-a3eb-dba01c842103.jpg?1562901719"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Indrik Stomphowler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fe57b3a2-0fd9-4f99-bb2b-828979dbcfc3.jpg?1593273398", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fe57b3a2-0fd9-4f99-bb2b-828979dbcfc3.jpg?1593273398"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Infernal Spawn of Evil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99711b5b-3cb2-4d57-ac9a-f43cc86a7ca9.jpg?1562799128", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99711b5b-3cb2-4d57-ac9a-f43cc86a7ca9.jpg?1562799128"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Infernius Spawnington III, Esq.", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5e3b1317-f024-4e34-89ad-538fc148cd5c.jpg?1584348881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5e3b1317-f024-4e34-89ad-538fc148cd5c.jpg?1584348881"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Insatiable Souleater", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/171d5213-5bb4-4f5b-9ddd-e2a7ac092ec6.jpg?1562875704", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/171d5213-5bb4-4f5b-9ddd-e2a7ac092ec6.jpg?1562875704"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Intrusive Packbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49266f3c-4b43-4175-8bac-16789ba6f4b9.jpg?1572892585", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49266f3c-4b43-4175-8bac-16789ba6f4b9.jpg?1572892585"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Iron-Barb Hellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0cb36352-2f16-4572-b1aa-dc28b11f4229.jpg?1562875415", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0cb36352-2f16-4572-b1aa-dc28b11f4229.jpg?1562875415"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ironclad Krovod", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/afb16895-6542-405e-9793-154ffc439f23.jpg?1569418805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/afb16895-6542-405e-9793-154ffc439f23.jpg?1569418805"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jackalope Herd", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb80105c-d2c0-4f8c-9302-5e6152a60f54.jpg?1562088801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb80105c-d2c0-4f8c-9302-5e6152a60f54.jpg?1562088801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kalonian Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77064471-d0c1-4988-8c47-f767bf9635f3.jpg?1561984952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77064471-d0c1-4988-8c47-f767bf9635f3.jpg?1561984952"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Kalonian Tusker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/135946fc-fe67-401f-821d-d7145c63f030.jpg?1562826250", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/135946fc-fe67-401f-821d-d7145c63f030.jpg?1562826250"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Karplusan Wolverine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/602610ce-8f42-4a1d-8f6e-92424d9d637c.jpg?1593275267", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/602610ce-8f42-4a1d-8f6e-92424d9d637c.jpg?1593275267"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Karstoderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/028c52f2-c45b-42da-89bd-cdd5cd7850f3.jpg?1562635162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/028c52f2-c45b-42da-89bd-cdd5cd7850f3.jpg?1562635162"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kazandu Stomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/afdfe5aa-8b15-4a89-a22a-03baf6afa4e7.jpg?1604199049", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/afdfe5aa-8b15-4a89-a22a-03baf6afa4e7.jpg?1604199049"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kelpie Guide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0112ebfb-55ad-401c-9dc5-ffd829f5b5bf.jpg?1624590206", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0112ebfb-55ad-401c-9dc5-ffd829f5b5bf.jpg?1624590206"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kezzerdrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/23b95d3a-bb19-474d-9939-8817038fe9fc.jpg?1562052813", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/23b95d3a-bb19-474d-9939-8817038fe9fc.jpg?1562052813"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kiln Fiend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c584268-67c3-411b-a26c-aee3adf23872.jpg?1562701033", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c584268-67c3-411b-a26c-aee3adf23872.jpg?1562701033"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kjeldoran Frostbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2fccb1d0-b324-4780-bb9e-4533240da06d.jpg?1562903801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2fccb1d0-b324-4780-bb9e-4533240da06d.jpg?1562903801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krakilin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a90442e8-9d22-4767-9e08-bd314169ea70.jpg?1562055913", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a90442e8-9d22-4767-9e08-bd314169ea70.jpg?1562055913"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kranioceros", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52aece74-cc1f-4f32-ad1f-00733eb79007.jpg?1562801006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52aece74-cc1f-4f32-ad1f-00733eb79007.jpg?1562801006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af822507-fd4c-454b-ab07-106c81c535bf.jpg?1562927648", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af822507-fd4c-454b-ab07-106c81c535bf.jpg?1562927648"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/47ea2f2d-14ca-4b57-b973-5ce7db35bebf.jpg?1615254642", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/47ea2f2d-14ca-4b57-b973-5ce7db35bebf.jpg?1615254642"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Krosan Cloudscraper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/51ef4cda-e55b-45a8-9c02-4e77e5b15a9e.jpg?1562911611", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/51ef4cda-e55b-45a8-9c02-4e77e5b15a9e.jpg?1562911611"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Colossus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a804f3c0-5ebf-43ca-b200-09f7c1bbe902.jpg?1562934820", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a804f3c0-5ebf-43ca-b200-09f7c1bbe902.jpg?1562934820"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Groundshaker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/82105090-5f71-4690-9ade-187354311ae3.jpg?1562925715", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/82105090-5f71-4690-9ade-187354311ae3.jpg?1562925715"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Tusker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b872f85-60c5-44c4-956d-a8aa8132908b.jpg?1562897602", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b872f85-60c5-44c4-956d-a8aa8132908b.jpg?1562897602"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Vorine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7d1c6c6-16b3-4a52-aeda-683b1aeb0e7f.jpg?1562931992", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7d1c6c6-16b3-4a52-aeda-683b1aeb0e7f.jpg?1562931992"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Warchief", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/435b700b-2072-47c0-9725-ad04414d2474.jpg?1562528085", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/435b700b-2072-47c0-9725-ad04414d2474.jpg?1562528085"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kurgadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52a1758c-849a-4de3-b674-857c3c9bf399.jpg?1562529070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52a1758c-849a-4de3-b674-857c3c9bf399.jpg?1562529070"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Grunt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f27fd65a-5631-491f-b158-45012832ccf1.jpg?1562632792", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f27fd65a-5631-491f-b158-45012832ccf1.jpg?1562632792"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Titan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e36bc466-0f74-46fd-add2-c1cf3b3fe46b.jpg?1562632509", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e36bc466-0f74-46fd-add2-c1cf3b3fe46b.jpg?1562632509"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Warrior", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a13b103f-482b-47d5-84a2-3621ba23bd20.jpg?1562631306", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a13b103f-482b-47d5-84a2-3621ba23bd20.jpg?1562631306"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Whelp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86eb5b9e-320f-40de-8668-ee0c08f63ec1.jpg?1562630877", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86eb5b9e-320f-40de-8668-ee0c08f63ec1.jpg?1562630877"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Landscaper Colos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f45a9e86-133e-4626-a239-73ef88d9ae12.jpg?1626093695", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f45a9e86-133e-4626-a239-73ef88d9ae12.jpg?1626093695"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Lazotep Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/594bbe43-a8aa-42aa-bc49-cb4f3bc05cad.jpg?1557576504", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/594bbe43-a8aa-42aa-bc49-cb4f3bc05cad.jpg?1557576504"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Leatherback Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55f97b4c-42c7-4986-a150-0b8de11f0537.jpg?1562287740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55f97b4c-42c7-4986-a150-0b8de11f0537.jpg?1562287740"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Leatherback Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2c621ad-7109-4e07-b0cf-49fc243bc175.jpg?1562448787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2c621ad-7109-4e07-b0cf-49fc243bc175.jpg?1562448787"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Leery Fogbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56125660-2307-4270-a947-f1f4ad63841c.jpg?1562915161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56125660-2307-4270-a947-f1f4ad63841c.jpg?1562915161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Leopard-Spotted Jiao", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/91df110f-85d2-41cb-96b6-6c79cebfada7.jpg?1562131600", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/91df110f-85d2-41cb-96b6-6c79cebfada7.jpg?1562131600"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Lesser Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63ed7aec-a513-418e-9cef-e0c51203055b.jpg?1562913496", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63ed7aec-a513-418e-9cef-e0c51203055b.jpg?1562913496"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lexivore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b39db7a3-028e-4c01-8ff9-64d2a1397379.jpg?1562799143", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b39db7a3-028e-4c01-8ff9-64d2a1397379.jpg?1562799143"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Leyline Prowler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c56b4e8f-d48e-4bb0-883d-29f978033f65.jpg?1557577175", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c56b4e8f-d48e-4bb0-883d-29f978033f65.jpg?1557577175"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/24a0860d-d3b9-4a00-a8cb-617bc317b93d.jpg?1562640145", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/24a0860d-d3b9-4a00-a8cb-617bc317b93d.jpg?1562640145"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Loathsome Catoblepas", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a8cff2f-ba52-4d22-83e8-13c56368f1df.jpg?1562817730", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a8cff2f-ba52-4d22-83e8-13c56368f1df.jpg?1562817730"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Longhorn Firebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf0dcf33-8d3f-429c-8ad8-a65d07d7c790.jpg?1562631821", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf0dcf33-8d3f-429c-8ad8-a65d07d7c790.jpg?1562631821"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lore Drakkis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83e035ca-eccd-4b63-817c-f2c676b9c98d.jpg?1591228108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83e035ca-eccd-4b63-817c-f2c676b9c98d.jpg?1591228108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lore Drakkis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e938fac3-544a-4f27-9726-a67153392031.jpg?1604781920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e938fac3-544a-4f27-9726-a67153392031.jpg?1604781920"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Lovestruck Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4ccdef9c-1e85-4358-8059-8972479f7556.jpg?1572490606", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4ccdef9c-1e85-4358-8059-8972479f7556.jpg?1572490606"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lovestruck Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/341110e5-577d-45ee-bf62-53373a331c87.jpg?1571399806", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/341110e5-577d-45ee-bf62-53373a331c87.jpg?1571399806"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Lullmage's Familiar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b31a81e8-df0e-4540-93c1-c30c31ea9be9.jpg?1604200204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b31a81e8-df0e-4540-93c1-c30c31ea9be9.jpg?1604200204"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lumbering Battlement", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/2469bc93-57ca-4077-bda2-160b4160adad.jpg?1584829942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/2469bc93-57ca-4077-bda2-160b4160adad.jpg?1584829942"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lumbering Satyr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d897088-0667-4864-91c3-5f0ac7f9b220.jpg?1562380887", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d897088-0667-4864-91c3-5f0ac7f9b220.jpg?1562380887"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurching Rotbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f06be97-71c8-46c8-a1c2-5da3af25e6de.jpg?1562808809", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f06be97-71c8-46c8-a1c2-5da3af25e6de.jpg?1562808809"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b39eb671-e17e-4c5a-8913-1e3be7faedfb.jpg?1587910787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b39eb671-e17e-4c5a-8913-1e3be7faedfb.jpg?1587910787"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurking Arynx", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7f59bc0b-88de-4580-bfc8-5af911d9ee99.jpg?1562788949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7f59bc0b-88de-4580-bfc8-5af911d9ee99.jpg?1562788949"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurking Chupacabra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/abdbaa34-1ee5-4a2a-bdb3-2f04809a5b42.jpg?1562561935", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/abdbaa34-1ee5-4a2a-bdb3-2f04809a5b42.jpg?1562561935"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Macetail Hystrodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/8451ab3f-5d61-4f35-ab70-5a5060caf53d.jpg?1562921768", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/8451ab3f-5d61-4f35-ab70-5a5060caf53d.jpg?1562921768"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Makindi Sliderunner", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e6da400-ee4e-44d1-887d-1e2fb59b9322.jpg?1562932470", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e6da400-ee4e-44d1-887d-1e2fb59b9322.jpg?1562932470"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Manglehorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0aa3a844-97e6-4f5d-a36f-56fea4e06932.jpg?1543675886", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0aa3a844-97e6-4f5d-a36f-56fea4e06932.jpg?1543675886"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Marauding Maulhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7d5e3dc-f307-4f91-a5ee-e7c5d03d8102.jpg?1562834221", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7d5e3dc-f307-4f91-a5ee-e7c5d03d8102.jpg?1562834221"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Marsh Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90c4b759-f53d-4977-8d97-a93762622e75.jpg?1562055419", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90c4b759-f53d-4977-8d97-a93762622e75.jpg?1562055419"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mawcor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48494f33-34b5-4c76-bb24-23a78b856e3c.jpg?1562237337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48494f33-34b5-4c76-bb24-23a78b856e3c.jpg?1562237337"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Mawcor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f50971e-2a18-4db7-8b5b-83dd5e85766e.jpg?1562055468", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f50971e-2a18-4db7-8b5b-83dd5e85766e.jpg?1562055468"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Megatherium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c58a1e43-a173-45d6-ac55-363664bf6e1b.jpg?1562383029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c58a1e43-a173-45d6-ac55-363664bf6e1b.jpg?1562383029"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Meglonoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b69e32b7-87d6-44a8-a544-5dabcd64c9f3.jpg?1562803314", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b69e32b7-87d6-44a8-a544-5dabcd64c9f3.jpg?1562803314"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Migratory Greathorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a2a287b-b83f-444f-84f7-e388beb616c2.jpg?1591227787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a2a287b-b83f-444f-84f7-e388beb616c2.jpg?1591227787"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Migratory Greathorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e31f56d-bf75-4e14-94de-5c77193abf3a.jpg?1604781892", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e31f56d-bf75-4e14-94de-5c77193abf3a.jpg?1604781892"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Mischievous Quanar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dc48c2db-f5b4-4c24-a5fa-00750b7ff56f.jpg?1562535674", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dc48c2db-f5b4-4c24-a5fa-00750b7ff56f.jpg?1562535674"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mockery of Nature", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/3118737f-2fd9-4fe5-bd0f-43c9ef2166e2.jpg?1576383753", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/3118737f-2fd9-4fe5-bd0f-43c9ef2166e2.jpg?1576383753"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molder Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d1340a63-f549-440b-aad3-14247113896a.jpg?1562823428", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d1340a63-f549-440b-aad3-14247113896a.jpg?1562823428"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molder Slug", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee355d1b-5d64-4328-94d6-7a58889b99bc.jpg?1562162474", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee355d1b-5d64-4328-94d6-7a58889b99bc.jpg?1562162474"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mold Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/903cb570-d769-4d7f-afbe-90ebad96657c.jpg?1562614361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/903cb570-d769-4d7f-afbe-90ebad96657c.jpg?1562614361"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mosscoat Goriak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c23139d4-0db5-4683-8d49-f4600fbe29e2.jpg?1591227812", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c23139d4-0db5-4683-8d49-f4600fbe29e2.jpg?1591227812"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Muck Drubb", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e5bda3fc-89e8-44c2-bcfb-d17064bbc391.jpg?1562584674", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e5bda3fc-89e8-44c2-bcfb-d17064bbc391.jpg?1562584674"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Murasa Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/480ddde1-81d3-4939-b232-cb1ced6cfc4d.jpg?1562202132", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/480ddde1-81d3-4939-b232-cb1ced6cfc4d.jpg?1562202132"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Murasa Rootgrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e70b3b78-9bdc-449b-82a9-c2fc3dd7f120.jpg?1604200243", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e70b3b78-9bdc-449b-82a9-c2fc3dd7f120.jpg?1604200243"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nalfeshnee", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7717617-706a-4338-a207-dd8c08feb1c3.jpg?1654036022", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7717617-706a-4338-a207-dd8c08feb1c3.jpg?1654036022"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Naya Soulbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0e4b468-096b-4f80-9e78-022fe24a7e45.jpg?1562945827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0e4b468-096b-4f80-9e78-022fe24a7e45.jpg?1562945827"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Needleshot Gourna", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f9b1628d-aacd-4e19-9ebb-bcd9b2842c91.jpg?1562945371", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f9b1628d-aacd-4e19-9ebb-bcd9b2842c91.jpg?1562945371"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nessian Demolok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee0683b2-8bc2-4c6a-964e-b909693b68c1.jpg?1593092523", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee0683b2-8bc2-4c6a-964e-b909693b68c1.jpg?1593092523"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nessian Game Warden", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/5099d18d-c8b5-4706-bc93-40d1bb12988d.jpg?1593096253", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/5099d18d-c8b5-4706-bc93-40d1bb12988d.jpg?1593096253"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Noxious Groodion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6cb3d78-1a60-4e9b-b387-afeb58677536.jpg?1584830637", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6cb3d78-1a60-4e9b-b387-afeb58677536.jpg?1584830637"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nucklavee", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/50f54b0a-b0e1-44f1-bb91-523cc9e1c298.jpg?1562911924", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/50f54b0a-b0e1-44f1-bb91-523cc9e1c298.jpg?1562911924"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nullhide Ferox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/24c30bb0-06ba-432b-a20c-6fa79b0dc68a.jpg?1572893406", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/24c30bb0-06ba-432b-a20c-6fa79b0dc68a.jpg?1572893406"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nulltread Gargantuan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a263f594-621e-46af-8561-f7eee565a19a.jpg?1562643297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a263f594-621e-46af-8561-f7eee565a19a.jpg?1562643297"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nylea's Forerunner", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2cf2b6be-80a8-4464-a909-8cc658196a14.jpg?1581480774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2cf2b6be-80a8-4464-a909-8cc658196a14.jpg?1581480774"}, "reprint": false, "frame_effects": ["nyxtouched"], "digital": false, "set_type": "expansion"}, {"name": "Obstinate Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/6694496c-45b9-4ddf-bfcd-b632441b8811.jpg?1562462698", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/6694496c-45b9-4ddf-bfcd-b632441b8811.jpg?1562462698"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Ondu Greathorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95d9668e-05dc-41c4-9326-ef4c0e15dd80.jpg?1562930312", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95d9668e-05dc-41c4-9326-ef4c0e15dd80.jpg?1562930312"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oraxid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c05609a-f32d-4454-af24-a24452997dcb.jpg?1562630387", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c05609a-f32d-4454-af24-a24452997dcb.jpg?1562630387"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oxidda Scrapmelter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c64fe85b-e471-489a-8c38-2357da1c7969.jpg?1562822847", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c64fe85b-e471-489a-8c38-2357da1c7969.jpg?1562822847"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Paleoloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b83ad801-44e7-48d0-9f34-0d10536bb4dc.jpg?1562803341", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b83ad801-44e7-48d0-9f34-0d10536bb4dc.jpg?1562803341"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pallimud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61adc314-cfb2-4fdd-925c-cc1dc4692992.jpg?1562054248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61adc314-cfb2-4fdd-925c-cc1dc4692992.jpg?1562054248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parcelbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/610bb98c-d66a-44cc-92e2-a80d700b59e4.jpg?1591228161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/610bb98c-d66a-44cc-92e2-a80d700b59e4.jpg?1591228161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parcelbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5ac98e5-a22c-41b5-94a9-b37b5aeb124f.jpg?1604781949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5ac98e5-a22c-41b5-94a9-b37b5aeb124f.jpg?1604781949"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Petradon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75ac6311-8516-4db2-8c1f-626f0db0d36f.jpg?1562630404", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75ac6311-8516-4db2-8c1f-626f0db0d36f.jpg?1562630404"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Petravark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ffc98d09-439e-426b-8403-4a3e12167336.jpg?1562632920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ffc98d09-439e-426b-8403-4a3e12167336.jpg?1562632920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Phantom Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/572df99b-af44-4128-8b2c-e40b1cea816b.jpg?1562460582", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/572df99b-af44-4128-8b2c-e40b1cea816b.jpg?1562460582"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Phantom Nishoba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56ebc372-aabd-4174-a943-c7bf59e5028d.jpg?1562629953", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56ebc372-aabd-4174-a943-c7bf59e5028d.jpg?1562629953"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Phyrexian Ingester", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/376e9829-23eb-4b43-9ec7-246cb3156e95.jpg?1562876645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/376e9829-23eb-4b43-9ec7-246cb3156e95.jpg?1562876645"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Phyrexian War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c7576e2-1a95-453f-aab5-b08e21f28ba4.jpg?1559592288", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c7576e2-1a95-453f-aab5-b08e21f28ba4.jpg?1559592288"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Phyrexian War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e7d651f6-50be-4df9-80f8-4c62bb860e71.jpg?1562770649", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e7d651f6-50be-4df9-80f8-4c62bb860e71.jpg?1562770649"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Belcher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/280ae211-f025-4971-83e6-118ca08a1911.jpg?1543675375", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/280ae211-f025-4971-83e6-118ca08a1911.jpg?1543675375"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plaguemaw Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52341830-8cea-421f-b901-9229004f2d45.jpg?1562611301", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52341830-8cea-421f-b901-9229004f2d45.jpg?1562611301"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/230b9bc8-29c8-49cb-b4f5-1aceeda8bf45.jpg?1608909892", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/230b9bc8-29c8-49cb-b4f5-1aceeda8bf45.jpg?1608909892"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Plated Crusher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd68e01c-4a09-450b-bfa0-8fbac8721764.jpg?1562943464", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd68e01c-4a09-450b-bfa0-8fbac8721764.jpg?1562943464"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plated Seastrider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97171611-c677-48a6-b081-98a27ecef979.jpg?1562820641", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97171611-c677-48a6-b081-98a27ecef979.jpg?1562820641"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plaxmanta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8ae3598d-4d76-45ac-ab96-00d27a8de6c8.jpg?1593272724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8ae3598d-4d76-45ac-ab96-00d27a8de6c8.jpg?1593272724"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Porcuparrot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/856892c8-ba47-46d0-aec2-0416b55b9e88.jpg?1591227333", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/856892c8-ba47-46d0-aec2-0416b55b9e88.jpg?1591227333"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Porcuparrot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6373fe1-c834-419e-8a0b-590fb5dc555e.jpg?1604781828", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6373fe1-c834-419e-8a0b-590fb5dc555e.jpg?1604781828"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Pouncing Shoreshark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c859b339-b55b-41fe-948c-27502e3b3ea8.jpg?1591226459", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c859b339-b55b-41fe-948c-27502e3b3ea8.jpg?1591226459"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pouncing Shoreshark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54428228-83a0-440f-afe9-573c9d8640cc.jpg?1604781667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54428228-83a0-440f-afe9-573c9d8640cc.jpg?1604781667"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Primal Huntbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb77f6a8-a9d6-4fdd-996e-70877199ebab.jpg?1562561489", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb77f6a8-a9d6-4fdd-996e-70877199ebab.jpg?1562561489"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Primoc Escapee", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6cb3e72-bb64-4b1e-a54b-1fe4fb4ad4c9.jpg?1562941357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6cb3e72-bb64-4b1e-a54b-1fe4fb4ad4c9.jpg?1562941357"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Protean Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d978332-95bf-4f86-9e67-06f10983c267.jpg?1593273433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d978332-95bf-4f86-9e67-06f10983c267.jpg?1593273433"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Protean Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88269739-8a38-4f75-a53e-4b4ce70f2aef.jpg?1658282664", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88269739-8a38-4f75-a53e-4b4ce70f2aef.jpg?1658282664"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Prowling Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9d1c11a-a32c-449c-95c6-450dce6c26d2.jpg?1604193011", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9d1c11a-a32c-449c-95c6-450dce6c26d2.jpg?1604193011"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Prowling Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e8df0aed-dd2b-4f1e-8dfe-aec07462b1e1.jpg?1604202426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e8df0aed-dd2b-4f1e-8dfe-aec07462b1e1.jpg?1604202426"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Prowling Pangolin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6bf8191-3154-48d7-a49b-4d07b5e35a15.jpg?1580014350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6bf8191-3154-48d7-a49b-4d07b5e35a15.jpg?1580014350"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Prowling Pangolin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f037e99-75fb-4a2a-b4c6-448ef21b16a3.jpg?1562898495", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f037e99-75fb-4a2a-b4c6-448ef21b16a3.jpg?1562898495"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Putrid Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/9127942b-d73d-42a9-9f97-6a39fa798a8b.jpg?1562532123", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/9127942b-d73d-42a9-9f97-6a39fa798a8b.jpg?1562532123"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quagnoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/335c3aa3-af89-44ce-955a-69e12d83175f.jpg?1562905350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/335c3aa3-af89-44ce-955a-69e12d83175f.jpg?1562905350"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quartzwood Crasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8e4c609-19c9-433b-a852-7999e375ee4f.jpg?1591605359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8e4c609-19c9-433b-a852-7999e375ee4f.jpg?1591605359"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quicksilver Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/645bfe2d-845b-4cf3-88b6-b2b62b8531e4.jpg?1562637248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/645bfe2d-845b-4cf3-88b6-b2b62b8531e4.jpg?1562637248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quillspike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/14cb4054-d5d6-4015-ae86-6f99280afe0a.jpg?1562899380", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/14cb4054-d5d6-4015-ae86-6f99280afe0a.jpg?1562899380"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Qumulox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54102e68-dded-440c-b9b1-28771c8033d4.jpg?1562877043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54102e68-dded-440c-b9b1-28771c8033d4.jpg?1562877043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Raging Kronch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae38aa2d-6c0e-409a-bfc7-ed4281457670.jpg?1557576793", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae38aa2d-6c0e-409a-bfc7-ed4281457670.jpg?1557576793"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rakeclaw Gargantuan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d1995ab8-7382-4c2a-b8c7-8b9272cab4fb.jpg?1562709274", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d1995ab8-7382-4c2a-b8c7-8b9272cab4fb.jpg?1562709274"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rampaging Baloths", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66ae703d-b133-4749-9d38-216abe6c6647.jpg?1562612913", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66ae703d-b133-4749-9d38-216abe6c6647.jpg?1562612913"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rampaging Baloths", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aac9448c-c802-476a-87ef-e1d745fd862a.jpg?1605370770", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aac9448c-c802-476a-87ef-e1d745fd862a.jpg?1605370770"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Rampaging Rendhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12c1b820-0f06-41f6-804f-5c98f60c1529.jpg?1584831217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12c1b820-0f06-41f6-804f-5c98f60c1529.jpg?1584831217"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ravenous Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c98182d6-5b25-4493-9286-f29633e1bec4.jpg?1592666556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c98182d6-5b25-4493-9286-f29633e1bec4.jpg?1592666556"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ravenous Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68c1142a-58c1-4a8e-808b-d47a45abb76b.jpg?1592666558", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68c1142a-58c1-4a8e-808b-d47a45abb76b.jpg?1592666558"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Ravenous Chupacabra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/02551196-ecea-472f-9547-3c9658d0489e.jpg?1555040291", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/02551196-ecea-472f-9547-3c9658d0489e.jpg?1555040291"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/beast3.json b/web/public/mtg/jsons/beast3.json new file mode 100644 index 00000000..3bf8f454 --- /dev/null +++ b/web/public/mtg/jsons/beast3.json @@ -0,0 +1 @@ +{"has_more": false, "data": [{"name": "Ravenous Chupacabra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e2af348-e768-44ca-b847-d541a0b0e6e0.jpg?1645141508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e2af348-e768-44ca-b847-d541a0b0e6e0.jpg?1645141508"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Ravenous Gigantotherium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca260253-40b8-4846-9e41-4e9cfc56d691.jpg?1591319695", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca260253-40b8-4846-9e41-4e9cfc56d691.jpg?1591319695"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Ravenous Leucrocota", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e91524b-4885-45fc-b22d-f9e5ee55845d.jpg?1593096288", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e91524b-4885-45fc-b22d-f9e5ee55845d.jpg?1593096288"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Razing Snidd", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2090b80-2ce2-4c9a-87fe-d221f3c677b4.jpg?1562939456", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2090b80-2ce2-4c9a-87fe-d221f3c677b4.jpg?1562939456"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Realm Razer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/da3ecfc6-1f9e-443e-a445-51df518025a5.jpg?1562709702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/da3ecfc6-1f9e-443e-a445-51df518025a5.jpg?1562709702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Relic Sloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1cb483f-c567-4cfd-9fe8-1503e7b40542.jpg?1624739702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1cb483f-c567-4cfd-9fe8-1503e7b40542.jpg?1624739702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Renegade Krasis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/23b68921-0c34-4d92-83c3-21542f62c7f6.jpg?1562901608", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/23b68921-0c34-4d92-83c3-21542f62c7f6.jpg?1562901608"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rhox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58388a29-b2a6-4d16-b872-f198563721d9.jpg?1562630034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58388a29-b2a6-4d16-b872-f198563721d9.jpg?1562630034"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rhox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d5f3f57-410f-4ee2-b93c-f5051a068828.jpg?1655270060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d5f3f57-410f-4ee2-b93c-f5051a068828.jpg?1655270060"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Ridgeline Rager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f663a4a-592a-4a3b-bbaf-e9c5c3049021.jpg?1562912585", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f663a4a-592a-4a3b-bbaf-e9c5c3049021.jpg?1562912585"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ridge Rannet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/4275a8dd-f777-4160-b773-9a868e743218.jpg?1562703177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/4275a8dd-f777-4160-b773-9a868e743218.jpg?1562703177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ridgescale Tusker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/84b689cc-35ef-4a23-bb1e-4d81b9fb8455.jpg?1579814138", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/84b689cc-35ef-4a23-bb1e-4d81b9fb8455.jpg?1579814138"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ridgetop Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/1013cbc4-09f4-484f-b328-9f7403225149.jpg?1562898258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/1013cbc4-09f4-484f-b328-9f7403225149.jpg?1562898258"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Riptide Mangler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/5314a802-85d6-4d7b-ae9a-ca64eec652cf.jpg?1562911887", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/5314a802-85d6-4d7b-ae9a-ca64eec652cf.jpg?1562911887"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "River Kelpie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/970adaaf-1534-4529-8da4-c4dcf7c08b7b.jpg?1562833446", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/970adaaf-1534-4529-8da4-c4dcf7c08b7b.jpg?1562833446"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Roaring Primadox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19529b2f-03f0-469d-92d4-e2a2a933d5dc.jpg?1562550917", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19529b2f-03f0-469d-92d4-e2a2a933d5dc.jpg?1562550917"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Rock Badger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dff05df8-76f5-48c6-ac96-7b4e6a7050f6.jpg?1562383505", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dff05df8-76f5-48c6-ac96-7b4e6a7050f6.jpg?1562383505"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ronom Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e5b4b14c-e6fa-4cd2-9be7-fa2a2df05de1.jpg?1593275458", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e5b4b14c-e6fa-4cd2-9be7-fa2a2df05de1.jpg?1593275458"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Root Greevil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/306e3429-b3b4-4186-935b-18cfc308d22c.jpg?1562905210", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/306e3429-b3b4-4186-935b-18cfc308d22c.jpg?1562905210"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rotted Hystrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7bcae97d-468a-4e16-bfed-d2946f64784c.jpg?1562879013", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7bcae97d-468a-4e16-bfed-d2946f64784c.jpg?1562879013"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rumbling Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d8610ff1-064b-4c75-a8df-d3b076370d1e.jpg?1562835728", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d8610ff1-064b-4c75-a8df-d3b076370d1e.jpg?1562835728"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Rust Monster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a7c6b2c-9ba0-4fc1-9922-0988acf2dfde.jpg?1627706779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a7c6b2c-9ba0-4fc1-9922-0988acf2dfde.jpg?1627706779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rust Monster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf004dae-c411-4b0e-b695-fd727f475948.jpg?1627711737", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf004dae-c411-4b0e-b695-fd727f475948.jpg?1627711737"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Sabertooth Nishoba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/8338c296-cf3f-41d7-b380-3fb4237cb41c.jpg?1562921586", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/8338c296-cf3f-41d7-b380-3fb4237cb41c.jpg?1562921586"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sagu Mauler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c64af58-963d-497b-ab95-104839d96b94.jpg?1562786271", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c64af58-963d-497b-ab95-104839d96b94.jpg?1562786271"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sanctuary Smasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cc634c10-42c5-4bdc-bc22-f862ae285492.jpg?1591227414", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cc634c10-42c5-4bdc-bc22-f862ae285492.jpg?1591227414"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sanctum Plowbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73887514-7644-4b2b-8c67-4b7e64150478.jpg?1562642111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73887514-7644-4b2b-8c67-4b7e64150478.jpg?1562642111"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sand Squid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4efd7ce9-b920-409d-a4d2-a07fff280712.jpg?1562380860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4efd7ce9-b920-409d-a4d2-a07fff280712.jpg?1562380860"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sandstorm Charger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/9757be26-4480-43b7-a38a-8e4bde4e2d50.jpg?1562790274", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/9757be26-4480-43b7-a38a-8e4bde4e2d50.jpg?1562790274"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sand Strangler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/dd7153be-ad6c-47ff-8f45-bc8df17973cb.jpg?1562817478", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/dd7153be-ad6c-47ff-8f45-bc8df17973cb.jpg?1562817478"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saprazzan Breaker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2de7bf0f-5ad5-467b-ad80-28517951bbe1.jpg?1562379910", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2de7bf0f-5ad5-467b-ad80-28517951bbe1.jpg?1562379910"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sawtusk Demolisher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/574d1a02-a403-4b6e-8ce0-a472325c9c2c.jpg?1591319710", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/574d1a02-a403-4b6e-8ce0-a472325c9c2c.jpg?1591319710"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Scalpelexis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29c3b7fa-78e7-4a0c-bcdc-4b829638e3f6.jpg?1562629108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29c3b7fa-78e7-4a0c-bcdc-4b829638e3f6.jpg?1562629108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scragnoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d80f7fa7-e7c4-4fc4-99bf-8a8502965fc8.jpg?1562056876", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d80f7fa7-e7c4-4fc4-99bf-8a8502965fc8.jpg?1562056876"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Screeching Harpy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10c02902-4e3a-445e-9dd9-116806ddc966.jpg?1562052779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10c02902-4e3a-445e-9dd9-116806ddc966.jpg?1562052779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sea Snidd", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca11015e-200b-488c-8bf5-662dcc03cd2d.jpg?1562937660", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca11015e-200b-488c-8bf5-662dcc03cd2d.jpg?1562937660"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shaleskin Bruiser", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc2de8a4-0d84-4f7c-bbe4-3a31172186ab.jpg?1562954767", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc2de8a4-0d84-4f7c-bbe4-3a31172186ab.jpg?1562954767"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shaleskin Plower", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42658b33-9a12-403b-bc7d-807fbe1f1a36.jpg?1562908348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42658b33-9a12-403b-bc7d-807fbe1f1a36.jpg?1562908348"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shivan Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/7958a1e5-b671-4ecb-95de-240ffaf5021e.jpg?1562574880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/7958a1e5-b671-4ecb-95de-240ffaf5021e.jpg?1562574880"}, "reprint": false, "frame_effects": ["colorshifted"], "digital": false, "set_type": "expansion"}, {"name": "Shore Snapper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/157e5763-4892-47e4-8fd5-f576844c0a0d.jpg?1562701373", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/157e5763-4892-47e4-8fd5-f576844c0a0d.jpg?1562701373"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Siege Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/918fb717-8ad3-4804-a62e-902baea58cfb.jpg?1561950184", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/918fb717-8ad3-4804-a62e-902baea58cfb.jpg?1561950184"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Sigiled Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0195ee6-c5d9-402e-8339-2caa50c4e46b.jpg?1562644651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0195ee6-c5d9-402e-8339-2caa50c4e46b.jpg?1562644651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Silt Crawler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f334e864-4e62-4bc3-9470-661be3d879e2.jpg?1562940692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f334e864-4e62-4bc3-9470-661be3d879e2.jpg?1562940692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Six-y Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/0379c99c-94b1-4c48-b62d-7accb594ef1a.jpg?1562487439", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/0379c99c-94b1-4c48-b62d-7accb594ef1a.jpg?1562487439"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Skarrg Goliath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b2dcafd-eb72-4f3a-9c1c-ba17fe30bf0f.jpg?1561820572", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b2dcafd-eb72-4f3a-9c1c-ba17fe30bf0f.jpg?1561820572"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skarrg Goliath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/0357e2ce-da68-46ff-a7e6-86df8a8ce91c.jpg?1605371304", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/0357e2ce-da68-46ff-a7e6-86df8a8ce91c.jpg?1605371304"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Skittish Valesk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4cc8a6e6-ed62-4784-ba9a-b1f703fc6119.jpg?1562912967", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4cc8a6e6-ed62-4784-ba9a-b1f703fc6119.jpg?1562912967"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c01d17e-45a2-4b6f-aaa5-2af9c8f26181.jpg?1562628866", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c01d17e-45a2-4b6f-aaa5-2af9c8f26181.jpg?1562628866"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud Cutter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a558c4f5-a716-4e46-9234-5f84f1bd57aa.jpg?1562631366", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a558c4f5-a716-4e46-9234-5f84f1bd57aa.jpg?1562631366"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud Ridgeback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/410896ab-d3dc-478c-bfd1-c0cad5b1180a.jpg?1562629551", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/410896ab-d3dc-478c-bfd1-c0cad5b1180a.jpg?1562629551"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19d809c1-e674-40b8-816d-c45d77c66722.jpg?1562087347", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19d809c1-e674-40b8-816d-c45d77c66722.jpg?1562087347"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughterhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb3fcc7a-ff5b-4695-aa86-9166f6cba565.jpg?1561853432", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb3fcc7a-ff5b-4695-aa86-9166f6cba565.jpg?1561853432"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slippery Bogle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c4e4bbea-7e3f-4de0-bb01-dfd67f21c254.jpg?1547518325", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c4e4bbea-7e3f-4de0-bb01-dfd67f21c254.jpg?1547518325"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Slippery Bogle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19714d6c-2bfa-4ee0-aa2f-5ccc196bc5d8.jpg?1562900327", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19714d6c-2bfa-4ee0-aa2f-5ccc196bc5d8.jpg?1562900327"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slipstream Eel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9d06a1f-00b7-440d-849d-efc466d73f29.jpg?1562950698", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9d06a1f-00b7-440d-849d-efc466d73f29.jpg?1562950698"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snapping Gnarlid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/834409e3-134e-4a34-89cb-53e2a039e980.jpg?1562925959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/834409e3-134e-4a34-89cb-53e2a039e980.jpg?1562925959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snapping Thragg", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8a47d41-b893-46b9-90c9-ccd8f9f78855.jpg?1562942401", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8a47d41-b893-46b9-90c9-ccd8f9f78855.jpg?1562942401"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snarling Undorak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05788d63-6210-44f2-9ae4-e55e9507a3a9.jpg?1562896264", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05788d63-6210-44f2-9ae4-e55e9507a3a9.jpg?1562896264"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snorting Gahr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e568503e-a886-4c8b-9d46-8520c2cdda48.jpg?1562383519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e568503e-a886-4c8b-9d46-8520c2cdda48.jpg?1562383519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soldevi Steam Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ead79d2c-170e-4106-962d-d69c4b5fead0.jpg?1562770654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ead79d2c-170e-4106-962d-d69c4b5fead0.jpg?1562770654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soldevi Steam Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9de5e730-1d5c-4326-b3fc-2f0f97edc07e.jpg?1575874846", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9de5e730-1d5c-4326-b3fc-2f0f97edc07e.jpg?1575874846"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spark Fiend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea73a7ef-e9da-4d5b-aa4d-a953cbacd6c2.jpg?1562799182", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea73a7ef-e9da-4d5b-aa4d-a953cbacd6c2.jpg?1562799182"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Spearbreaker Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/132367ee-22e9-48e2-82e0-62ad9aaa62f3.jpg?1562701266", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/132367ee-22e9-48e2-82e0-62ad9aaa62f3.jpg?1562701266"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Species Gorger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0087a98-55cf-4c8b-a180-fb0d9c336eb2.jpg?1562936816", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0087a98-55cf-4c8b-a180-fb0d9c336eb2.jpg?1562936816"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spellbreaker Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a197e3f2-e69f-4716-9979-a304a87506c3.jpg?1562643286", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a197e3f2-e69f-4716-9979-a304a87506c3.jpg?1562643286"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spiked Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/522777b1-a89f-4969-a962-0137018ec86c.jpg?1562553788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/522777b1-a89f-4969-a962-0137018ec86c.jpg?1562553788"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Spinal Villain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d6d5e36f-0049-4be8-bf85-8dc0186339a4.jpg?1562861348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d6d5e36f-0049-4be8-bf85-8dc0186339a4.jpg?1562861348"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spinebiter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cfc79ac6-ffc6-4506-9dea-e20176f960ea.jpg?1562881679", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cfc79ac6-ffc6-4506-9dea-e20176f960ea.jpg?1562881679"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spined Basher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d0d666a-8e31-466c-937f-54df910f664e.jpg?1562913024", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d0d666a-8e31-466c-937f-54df910f664e.jpg?1562913024"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spirespine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac71491f-3027-4257-a18f-ba4de6041feb.jpg?1593096345", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac71491f-3027-4257-a18f-ba4de6041feb.jpg?1593096345"}, "reprint": false, "frame_effects": ["nyxtouched"], "digital": false, "set_type": "expansion"}, {"name": "Spiritmonger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b96d6e67-f690-4f19-bb25-a7c2d2aaf42f.jpg?1562938690", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b96d6e67-f690-4f19-bb25-a7c2d2aaf42f.jpg?1562938690"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spiritmonger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce20919e-cdc7-465d-8653-4b912ff08997.jpg?1561929929", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce20919e-cdc7-465d-8653-4b912ff08997.jpg?1561929929"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Spitting Gourna", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/746b98bf-5398-4a00-b4fe-a990ea9cfd77.jpg?1562922510", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/746b98bf-5398-4a00-b4fe-a990ea9cfd77.jpg?1562922510"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sproutback Trudge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbf26e54-bdfe-4da8-acbb-4f1a98faba49.jpg?1625192442", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbf26e54-bdfe-4da8-acbb-4f1a98faba49.jpg?1625192442"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Spur Grappler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/50bf91a7-4d04-437c-a290-6adb52f25312.jpg?1562909787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/50bf91a7-4d04-437c-a290-6adb52f25312.jpg?1562909787"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spurred Wolverine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46d7aaea-226b-4820-8db2-89dcdcbcc557.jpg?1562911611", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46d7aaea-226b-4820-8db2-89dcdcbcc557.jpg?1562911611"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stampeding Serow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/47c63065-6051-4193-8457-713a8a800393.jpg?1562493496", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/47c63065-6051-4193-8457-713a8a800393.jpg?1562493496"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stampeding Wildebeests", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/ddb5f524-fad6-4a63-b20f-3348a844fefa.jpg?1562278656", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/ddb5f524-fad6-4a63-b20f-3348a844fefa.jpg?1562278656"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stomper Cub", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/89be64a8-dd78-48c3-bb47-4f2a5ad9ec10.jpg?1562706034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/89be64a8-dd78-48c3-bb47-4f2a5ad9ec10.jpg?1562706034"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stonework Packbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a29e17ba-d584-4296-9f43-17467edaa25f.jpg?1604201060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a29e17ba-d584-4296-9f43-17467edaa25f.jpg?1604201060"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stratadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/324bc757-9942-4862-b691-5af42e07f682.jpg?1562905516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/324bc757-9942-4862-b691-5af42e07f682.jpg?1562905516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stratozeppelid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7ccfc49d-2a07-4088-a288-ba7be4da7bc2.jpg?1593272091", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7ccfc49d-2a07-4088-a288-ba7be4da7bc2.jpg?1593272091"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swarm Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a7e4f99-ece4-473e-b712-40e4c53558e8.jpg?1604199508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a7e4f99-ece4-473e-b712-40e4c53558e8.jpg?1604199508"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sylvan Brushstrider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8bc288a3-ea56-450a-96fd-c2123121f663.jpg?1584831296", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8bc288a3-ea56-450a-96fd-c2123121f663.jpg?1584831296"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Symbiotic Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb61443d-e47a-4fe1-b777-67a3670a5a56.jpg?1562939214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb61443d-e47a-4fe1-b777-67a3670a5a56.jpg?1562939214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tangle Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8ed3c301-8d8e-45fe-902a-af03a79525be.jpg?1562612950", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8ed3c301-8d8e-45fe-902a-af03a79525be.jpg?1562612950"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tenement Crasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44af9170-bd99-4fde-b673-62d988312b2d.jpg?1562785527", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44af9170-bd99-4fde-b673-62d988312b2d.jpg?1562785527"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tephraderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/41b65eba-140b-4c1d-b796-8134b7c1ede8.jpg?1562910455", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/41b65eba-140b-4c1d-b796-8134b7c1ede8.jpg?1562910455"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terra Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/124dd668-ad84-45b9-9e04-1ea7cd2d7024.jpg?1562898786", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/124dd668-ad84-45b9-9e04-1ea7cd2d7024.jpg?1562898786"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Terra Stomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4ab062f4-e4b1-4129-9027-d0ca1a723273.jpg?1562611988", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4ab062f4-e4b1-4129-9027-d0ca1a723273.jpg?1562611988"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Territorial Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c3d4afc-5bb7-4159-9a11-f9c989dd9043.jpg?1562897795", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c3d4afc-5bb7-4159-9a11-f9c989dd9043.jpg?1562897795"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Territorial Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45033b8a-f3a8-4a23-b6b0-e011e3e7a4c1.jpg?1562611772", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45033b8a-f3a8-4a23-b6b0-e011e3e7a4c1.jpg?1562611772"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thoughtbound Primoc", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e89156b5-8bdb-41d1-a7aa-63f770a9b070.jpg?1562950377", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e89156b5-8bdb-41d1-a7aa-63f770a9b070.jpg?1562950377"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Devourer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba7a96ee-e2d1-4d76-a09e-d6868ddd9282.jpg?1562929803", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba7a96ee-e2d1-4d76-a09e-d6868ddd9282.jpg?1562929803"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Eater", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4e05f63c-f93d-44b9-98e9-c5e3e3aad6b9.jpg?1562909299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4e05f63c-f93d-44b9-98e9-c5e3e3aad6b9.jpg?1562909299"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Nibbler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7284a7fd-cda8-43ac-b119-ad47b33c2ec4.jpg?1562916262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7284a7fd-cda8-43ac-b119-ad47b33c2ec4.jpg?1562916262"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thragtusk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28667c8b-d02c-4e57-a050-1549207b65d1.jpg?1562551691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28667c8b-d02c-4e57-a050-1549207b65d1.jpg?1562551691"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Thragtusk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43e1e3f3-a9b8-4185-9be9-798fe3cddd5c.jpg?1640744362", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43e1e3f3-a9b8-4185-9be9-798fe3cddd5c.jpg?1640744362"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Thrashing Mudspawn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/da84de0e-a4cd-4dff-8ee3-87c9debf0969.jpg?1562947056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/da84de0e-a4cd-4dff-8ee3-87c9debf0969.jpg?1562947056"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thrashing Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86bc07c6-2ba7-41f8-90ab-f9bbac86dd08.jpg?1562381841", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86bc07c6-2ba7-41f8-90ab-f9bbac86dd08.jpg?1562381841"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thresher Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/57996732-c9e4-4271-9d5f-2a8c77f8d177.jpg?1562911143", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/57996732-c9e4-4271-9d5f-2a8c77f8d177.jpg?1562911143"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderfoot Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e376a953-2075-4595-a3ef-85d0f68aa8b2.jpg?1650426042", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e376a953-2075-4595-a3ef-85d0f68aa8b2.jpg?1650426042"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Thunderfoot Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/9730de49-efa9-42ec-8531-43313fb58a44.jpg?1561951126", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/9730de49-efa9-42ec-8531-43313fb58a44.jpg?1561951126"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Thundering Tanadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2fab443-0f4b-45ea-8a6d-435b93803409.jpg?1562882228", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2fab443-0f4b-45ea-8a6d-435b93803409.jpg?1562882228"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Timbermaw Larva", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d68fc3bc-eb3b-4504-93a3-8943d07b23f8.jpg?1562617126", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d68fc3bc-eb3b-4504-93a3-8943d07b23f8.jpg?1562617126"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Titanic Bulvox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f42c4d7-b555-449c-a539-119c1ae62232.jpg?1562528017", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f42c4d7-b555-449c-a539-119c1ae62232.jpg?1562528017"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Titanoth Rex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d02e1e8-b85b-4e26-8ab8-ca2f49d05b88.jpg?1591227898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d02e1e8-b85b-4e26-8ab8-ca2f49d05b88.jpg?1591227898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Titanoth Rex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4817b86-d55a-4334-82ee-603f8c4b3e93.jpg?1590879818", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4817b86-d55a-4334-82ee-603f8c4b3e93.jpg?1590879818"}, "flavor_name": "Godzilla, Primeval Champion", "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Towering Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a8cc948-28ff-4bbe-b8c9-71de37478023.jpg?1562905065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a8cc948-28ff-4bbe-b8c9-71de37478023.jpg?1562905065"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Towering Indrik", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c6049e92-6c52-44be-a3c7-aa8e8bf9c10a.jpg?1562792972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c6049e92-6c52-44be-a3c7-aa8e8bf9c10a.jpg?1562792972"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trapjaw Kelpie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62615f86-0431-4709-b41c-af43f7793fdb.jpg?1562915541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62615f86-0431-4709-b41c-af43f7793fdb.jpg?1562915541"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Treespring Lorian", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f525d7ce-37d3-4989-beb4-173447cb5294.jpg?1562953129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f525d7ce-37d3-4989-beb4-173447cb5294.jpg?1562953129"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trove Warden", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/3336593c-c83c-48e7-9173-2c2b74b94d3b.jpg?1604195307", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/3336593c-c83c-48e7-9173-2c2b74b94d3b.jpg?1604195307"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Trumpeting Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/063a95ee-3fda-436f-9ff8-de80cc874dde.jpg?1591228292", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/063a95ee-3fda-436f-9ff8-de80cc874dde.jpg?1591228292"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trumpeting Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2fe88a45-a420-4998-b242-b475c6b5b0bc.jpg?1604781989", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2fe88a45-a420-4998-b242-b475c6b5b0bc.jpg?1604781989"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Trusty Packbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/8320e35b-15b9-4f98-b9b8-9c951696408b.jpg?1562302921", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/8320e35b-15b9-4f98-b9b8-9c951696408b.jpg?1562302921"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Trygon Predator", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8b14a8b3-1a85-400b-b17c-a28ed145d720.jpg?1561967848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8b14a8b3-1a85-400b-b17c-a28ed145d720.jpg?1561967848"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Trygon Predator", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f31f54bf-7bf0-48f0-853d-1468713784eb.jpg?1593273791", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f31f54bf-7bf0-48f0-853d-1468713784eb.jpg?1593273791"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tusked Colossodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d511407-0c1e-4342-a578-ca557c6886fd.jpg?1562784330", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d511407-0c1e-4342-a578-ca557c6886fd.jpg?1562784330"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tyrranax", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/c/5cb0cc0e-f71f-456f-a6ec-6a70cf838c35.jpg?1562877248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/c/5cb0cc0e-f71f-456f-a6ec-6a70cf838c35.jpg?1562877248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Undying Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c95c752-3add-4830-8159-036b8689f40a.jpg?1562447348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c95c752-3add-4830-8159-036b8689f40a.jpg?1562447348"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Ursapine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba547810-c82a-498b-81eb-e81a8dcbbd42.jpg?1598916680", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba547810-c82a-498b-81eb-e81a8dcbbd42.jpg?1598916680"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vagrant Plowbeasts", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/546b0a74-ebef-4596-b730-2190e20b2e66.jpg?1562801037", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/546b0a74-ebef-4596-b730-2190e20b2e66.jpg?1562801037"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Valley Rannet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2027335a-224b-411d-a59f-f4ad39b38a69.jpg?1562640043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2027335a-224b-411d-a59f-f4ad39b38a69.jpg?1562640043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Venomspout Brackus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/0774771c-5373-4636-9174-d06e7d635183.jpg?1562896736", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/0774771c-5373-4636-9174-d06e7d635183.jpg?1562896736"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vigilant Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34ad8e5d-0c26-4588-8161-b22197715d63.jpg?1562301653", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34ad8e5d-0c26-4588-8161-b22197715d63.jpg?1562301653"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Vizzerdrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c2c681e3-fc54-4da1-80ff-13507688dbc3.jpg?1562247258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c2c681e3-fc54-4da1-80ff-13507688dbc3.jpg?1562247258"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Vizzerdrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25711022-7270-4335-a48b-9f2b8275ceeb.jpg?1562873595", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25711022-7270-4335-a48b-9f2b8275ceeb.jpg?1562873595"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Voracious Typhon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efa2bccb-0e01-4629-b9a8-5c0ea26239b3.jpg?1581480923", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efa2bccb-0e01-4629-b9a8-5c0ea26239b3.jpg?1581480923"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vulshok War Boar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb6b232a-834c-4c9a-bf36-821d125dc318.jpg?1562639233", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb6b232a-834c-4c9a-bf36-821d125dc318.jpg?1562639233"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "War Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/652109b9-d607-42b6-945d-0c0dd5bba89c.jpg?1562787724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/652109b9-d607-42b6-945d-0c0dd5bba89c.jpg?1562787724"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wayward Guide-Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/0/d00f8ab0-61cd-4721-b974-a2516da77d39.jpg?1604198443", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/0/d00f8ab0-61cd-4721-b974-a2516da77d39.jpg?1604198443"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Weaver of Lies", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12172d0e-0c73-4482-9f83-2c23ace9b7a0.jpg?1562898647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12172d0e-0c73-4482-9f83-2c23ace9b7a0.jpg?1562898647"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wild Colos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d39f746-7b82-476a-9774-3375debb47bd.jpg?1562443743", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d39f746-7b82-476a-9774-3375debb47bd.jpg?1562443743"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woodland Bellower", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a706d4bb-0b44-4e43-b340-7de799c086b8.jpg?1562034880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a706d4bb-0b44-4e43-b340-7de799c086b8.jpg?1562034880"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Woodripper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/5126b782-d74c-40ca-a9b2-a6c78f94d138.jpg?1562629900", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/5126b782-d74c-40ca-a9b2-a6c78f94d138.jpg?1562629900"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woolly Razorback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95ed6354-161e-496e-9ac7-74432f9b0818.jpg?1593274871", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95ed6354-161e-496e-9ac7-74432f9b0818.jpg?1593274871"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woolly Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d5907d5-ae5c-4c9d-a5df-61f1c94f979d.jpg?1562705775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d5907d5-ae5c-4c9d-a5df-61f1c94f979d.jpg?1562705775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woolly Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb3a2bb2-3ba7-4486-84c9-3aab85c368e1.jpg?1561758467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb3a2bb2-3ba7-4486-84c9-3aab85c368e1.jpg?1561758467"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Wormfang Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c7f29aa-c069-4adb-b313-6a56849905d4.jpg?1562628869", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c7f29aa-c069-4adb-b313-6a56849905d4.jpg?1562628869"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wormfang Manta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc9bf91d-6f7c-4fb5-bbc6-c012212e62e9.jpg?1562631728", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc9bf91d-6f7c-4fb5-bbc6-c012212e62e9.jpg?1562631728"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wormfang Newt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df8012c1-76ec-4c36-8b38-5bc41ce5e156.jpg?1562632319", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df8012c1-76ec-4c36-8b38-5bc41ce5e156.jpg?1562632319"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wormfang Turtle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48404362-7579-4896-a71a-8eb40e5ac416.jpg?1562629707", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48404362-7579-4896-a71a-8eb40e5ac416.jpg?1562629707"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wrecking Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74e6f7be-4493-4081-ac67-d782ab2b3723.jpg?1584831344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74e6f7be-4493-4081-ac67-d782ab2b3723.jpg?1584831344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wretched Anurid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aab525ad-1f62-4d9c-9b74-c7b0048da452.jpg?1562935315", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aab525ad-1f62-4d9c-9b74-c7b0048da452.jpg?1562935315"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Yoked Plowbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/ddbbc7dc-efdf-46e8-bf19-0daa4034f6ec.jpg?1562709823", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/ddbbc7dc-efdf-46e8-bf19-0daa4034f6ec.jpg?1562709823"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zhur-Taa Ancient", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2076308f-0f4e-4b31-9e75-c2965942e7d1.jpg?1562900996", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2076308f-0f4e-4b31-9e75-c2965942e7d1.jpg?1562900996"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/burn1.json b/web/public/mtg/jsons/burn1.json new file mode 100644 index 00000000..885fcb4e --- /dev/null +++ b/web/public/mtg/jsons/burn1.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Angrath's Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/708006ba-d494-4093-b108-8249b110831e.jpg?1555041214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/708006ba-d494-4093-b108-8249b110831e.jpg?1555041214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Annihilating Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae12fd10-c13e-4777-a233-96204ec75ac1.jpg?1562791532", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae12fd10-c13e-4777-a233-96204ec75ac1.jpg?1562791532"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arc Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d1c04fb-213f-4be1-9bba-94c737826bf8.jpg?1562910601", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d1c04fb-213f-4be1-9bba-94c737826bf8.jpg?1562910601"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arc Trail", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/445e3a0a-29a7-4dc0-80fe-569b9e751db3.jpg?1562816934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/445e3a0a-29a7-4dc0-80fe-569b9e751db3.jpg?1562816934"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arrow Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c57534fb-2591-4003-aeec-6452faa4a759.jpg?1562793262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c57534fb-2591-4003-aeec-6452faa4a759.jpg?1562793262"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Artillerize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/034522ae-f531-44d9-b186-ada046ce0abc.jpg?1562875185", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/034522ae-f531-44d9-b186-ada046ce0abc.jpg?1562875185"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Atarka's Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/903d78c9-c5b3-45c3-a6d0-7e92b4196ae3.jpg?1562789860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/903d78c9-c5b3-45c3-a6d0-7e92b4196ae3.jpg?1562789860"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Backlash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/dadf030d-5451-43fc-bf0c-c1629fdf88ec.jpg?1562938984", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/dadf030d-5451-43fc-bf0c-c1629fdf88ec.jpg?1562938984"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Banefire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/1/b188c68a-e9df-4803-a722-1993dd88f833.jpg?1562803150", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/1/b188c68a-e9df-4803-a722-1993dd88f833.jpg?1562803150"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Barbed Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2509482a-68d8-4e94-9d1e-5b069ebdc2e4.jpg?1562635839", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2509482a-68d8-4e94-9d1e-5b069ebdc2e4.jpg?1562635839"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beacon of Destruction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0fae532-7189-450e-aa7f-e639163278fc.jpg?1562879532", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0fae532-7189-450e-aa7f-e639163278fc.jpg?1562879532"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blast from the Past", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/c/5ca23782-80d3-4656-afba-f8440c813253.jpg?1562488402", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/c/5ca23782-80d3-4656-afba-f8440c813253.jpg?1562488402"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "funny"}, {"name": "Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/26f8c6ab-ae62-4e2e-a5ba-2ec5bbe22445.jpg?1562234516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/26f8c6ab-ae62-4e2e-a5ba-2ec5bbe22445.jpg?1562234516"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8b6cfd3-4fb1-40a7-a090-de6f8b283cb3.jpg?1562257515", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8b6cfd3-4fb1-40a7-a090-de6f8b283cb3.jpg?1562257515"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/3940d0ca-0ca2-4446-9330-a554c3e89824.jpg?1562908488", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/3940d0ca-0ca2-4446-9330-a554c3e89824.jpg?1562908488"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f175c959-3b5d-46a3-9194-fad2359bbff9.jpg?1546740055", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f175c959-3b5d-46a3-9194-fad2359bbff9.jpg?1546740055"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Blazing Salvo", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7d192ef-a174-4df5-b67f-22918c32cf71.jpg?1562941547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7d192ef-a174-4df5-b67f-22918c32cf71.jpg?1562941547"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68ba5a86-ef90-45fd-bc7a-e870e91a207c.jpg?1592714653", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68ba5a86-ef90-45fd-bc7a-e870e91a207c.jpg?1592714653"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Blightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c05e8a2-b7d0-4f24-b2ae-8e4db30e5842.jpg?1562702945", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c05e8a2-b7d0-4f24-b2ae-8e4db30e5842.jpg?1562702945"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a1b4c07-588a-444f-9677-3eb1493b5394.jpg?1561757438", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a1b4c07-588a-444f-9677-3eb1493b5394.jpg?1561757438"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Blur of Blades", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b53f5b9b-d24b-4e9a-bc90-7ed198cd1132.jpg?1562811539", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b53f5b9b-d24b-4e9a-bc90-7ed198cd1132.jpg?1562811539"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bolt of Keranos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4df70b14-5d67-4a92-aaba-72480c621d10.jpg?1593092169", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4df70b14-5d67-4a92-aaba-72480c621d10.jpg?1593092169"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bonfire of the Damned", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e60610fe-891d-46de-b556-d03b637dccec.jpg?1592709031", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e60610fe-891d-46de-b556-d03b637dccec.jpg?1592709031"}, "reprint": false, "frame_effects": ["miracle"], "digital": false, "set_type": "expansion"}, {"name": "Book Burning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bead678c-7b6a-4668-9919-623312e08a65.jpg?1562631756", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bead678c-7b6a-4668-9919-623312e08a65.jpg?1562631756"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boros Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4ddf9cc-40a7-4b4f-bb51-b08171453c9a.jpg?1561848093", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4ddf9cc-40a7-4b4f-bb51-b08171453c9a.jpg?1561848093"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boros Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac8cd7a1-3f79-405b-8930-2206f32c2035.jpg?1622938151", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac8cd7a1-3f79-405b-8930-2206f32c2035.jpg?1622938151"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Breaking Point", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/765ec2c9-8ffe-488a-bebe-e5dd63825a8c.jpg?1562630501", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/765ec2c9-8ffe-488a-bebe-e5dd63825a8c.jpg?1562630501"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath of Darigaaz", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/480bb7e3-df03-454d-ada0-592ef8a4a6f0.jpg?1562909692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/480bb7e3-df03-454d-ada0-592ef8a4a6f0.jpg?1562909692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath of Malfegor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a12e4d0-8471-46ac-85e4-a2ea5be8bf8f.jpg?1562642287", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a12e4d0-8471-46ac-85e4-a2ea5be8bf8f.jpg?1562642287"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath of Malfegor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5b3eb5c5-7ff8-4557-afe7-056ea5f09a49.jpg?1561757216", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5b3eb5c5-7ff8-4557-afe7-056ea5f09a49.jpg?1561757216"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Brimstone Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/6960f2da-6b84-4680-8ab2-f0567a5d1b0a.jpg?1562831550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/6960f2da-6b84-4680-8ab2-f0567a5d1b0a.jpg?1562831550"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Browbeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77c0eb52-8e09-471a-b00c-aaa1ae244afc.jpg?1592714628", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77c0eb52-8e09-471a-b00c-aaa1ae244afc.jpg?1592714628"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Browbeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74f20068-f225-4055-be7a-5c4a18e33b0b.jpg?1562630478", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74f20068-f225-4055-be7a-5c4a18e33b0b.jpg?1562630478"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Browbeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/1170ee2d-ab25-4c7f-a910-cc01471a2cab.jpg?1562639679", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/1170ee2d-ab25-4c7f-a910-cc01471a2cab.jpg?1562639679"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Burn from Within", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8bdc165-4c6f-47e6-8bda-877c0be3613b.jpg?1576384673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8bdc165-4c6f-47e6-8bda-877c0be3613b.jpg?1576384673"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burning Fields", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/dee12f01-581e-4a3c-a8b5-41bef2516781.jpg?1562257986", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/dee12f01-581e-4a3c-a8b5-41bef2516781.jpg?1562257986"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Burn the Accursed", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ff4d4e6b-564d-46da-8e32-09ed08c8ddc5.jpg?1634350484", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ff4d4e6b-564d-46da-8e32-09ed08c8ddc5.jpg?1634350484"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burn the Impure", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5641730-428d-4484-866e-ec1ac669537f.jpg?1562614054", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5641730-428d-4484-866e-ec1ac669537f.jpg?1562614054"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burn Trail", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7f01f9a0-f1d0-4241-a270-df4ed673d1fd.jpg?1562832261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7f01f9a0-f1d0-4241-a270-df4ed673d1fd.jpg?1562832261"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burst Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2dc16614-5cf8-444d-a5ae-cac25018af68.jpg?1562610949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dc16614-5cf8-444d-a5ae-cac25018af68.jpg?1562610949"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burst Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db539e3e-cefe-4f2c-bc8e-df049426895f.jpg?1561758208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db539e3e-cefe-4f2c-bc8e-df049426895f.jpg?1561758208"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Cackling Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a54a371e-fb82-41f1-892c-975f932b668e.jpg?1593273099", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a54a371e-fb82-41f1-892c-975f932b668e.jpg?1593273099"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Call In a Professional", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ead68c0a-eed1-4a9c-a790-56f8a79b444c.jpg?1649936108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ead68c0a-eed1-4a9c-a790-56f8a79b444c.jpg?1649936108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Carbonize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4b4767b-edd1-4e36-b363-52114a9afe5e.jpg?1580014480", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4b4767b-edd1-4e36-b363-52114a9afe5e.jpg?1580014480"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Carbonize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6f565fa1-a1a0-4dd0-b7f4-df65a807d156.jpg?1562530228", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6f565fa1-a1a0-4dd0-b7f4-df65a807d156.jpg?1562530228"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cave-In", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/440d9d26-f304-467d-af79-914cc65f082e.jpg?1562380418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/440d9d26-f304-467d-af79-914cc65f082e.jpg?1562380418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chain Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5883762-ca0a-4932-8d2a-41a45796a5f8.jpg?1562860651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5883762-ca0a-4932-8d2a-41a45796a5f8.jpg?1562860651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chain Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfb7fe8e-e348-4bf9-aa71-65f0675147e4.jpg?1636769610", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfb7fe8e-e348-4bf9-aa71-65f0675147e4.jpg?1636769610"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Chain Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/14bd3d19-033e-41a7-8710-02b73ba0b4e4.jpg?1562899148", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/14bd3d19-033e-41a7-8710-02b73ba0b4e4.jpg?1562899148"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Chain Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9ca05db2-ad92-4f4a-992d-b7f08f4f9c26.jpg?1562928035", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9ca05db2-ad92-4f4a-992d-b7f08f4f9c26.jpg?1562928035"}, "reprint": true, "digital": false, "set_type": "premium_deck"}, {"name": "Chain of Plasma", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f94aa774-9036-4016-8880-4bde2710cb90.jpg?1562954081", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f94aa774-9036-4016-8880-4bde2710cb90.jpg?1562954081"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chandra's Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e761acf6-6618-44cc-8f65-1d7ad7e520fe.jpg?1561758344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e761acf6-6618-44cc-8f65-1d7ad7e520fe.jpg?1561758344"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Chandra's Outburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f1e849c3-f357-4e81-a580-be5056bed51b.jpg?1562745440", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f1e849c3-f357-4e81-a580-be5056bed51b.jpg?1562745440"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chandra's Outrage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/3282db18-8564-418e-8c26-62e610b160f2.jpg?1562905547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/3282db18-8564-418e-8c26-62e610b160f2.jpg?1562905547"}, "reprint": false, "digital": false, "set_type": "archenemy"}, {"name": "Char", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ff3a24af-e995-4d05-ac2c-e9676048675d.jpg?1598915384", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ff3a24af-e995-4d05-ac2c-e9676048675d.jpg?1598915384"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Char", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3dc5f957-c1e4-452d-a78b-8d772ea0b940.jpg?1561756964", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3dc5f957-c1e4-452d-a78b-8d772ea0b940.jpg?1561756964"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Cinder Cloud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f044c470-50ce-4a6c-b8ab-665357c3c11e.jpg?1562722408", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f044c470-50ce-4a6c-b8ab-665357c3c11e.jpg?1562722408"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cinder Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e2d16c1-6226-438f-be1e-eaab3df687e1.jpg?1562875024", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e2d16c1-6226-438f-be1e-eaab3df687e1.jpg?1562875024"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Clan Defiance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efa05298-9c94-4179-b75a-49ee2ca92920.jpg?1561851654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efa05298-9c94-4179-b75a-49ee2ca92920.jpg?1561851654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cleansing Screech", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79928b26-fcac-4c3f-9edd-292769c2e56e.jpg?1562131561", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79928b26-fcac-4c3f-9edd-292769c2e56e.jpg?1562131561"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Collateral Damage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb738362-b0b4-4811-9fbf-5f45c852c822.jpg?1562831834", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb738362-b0b4-4811-9fbf-5f45c852c822.jpg?1562831834"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Collective Defiance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/8960883f-3813-412b-9a5b-f8cf8d566fac.jpg?1576384546", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/8960883f-3813-412b-9a5b-f8cf8d566fac.jpg?1576384546"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Concussive Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/41b68e85-a381-441d-aa18-491f9e202a10.jpg?1562610848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/41b68e85-a381-441d-aa18-491f9e202a10.jpg?1562610848"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cone of Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bec5e56a-5bab-4965-9035-128c3f1ae175.jpg?1562554444", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bec5e56a-5bab-4965-9035-128c3f1ae175.jpg?1562554444"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Cone of Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/5713f17a-9a57-41f8-b492-ced876e1a37f.jpg?1562800924", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/5713f17a-9a57-41f8-b492-ced876e1a37f.jpg?1562800924"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Consuming Sinkhole", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/82a42b28-3d1b-4432-b8c9-2d42e4d0e1c5.jpg?1562921426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/82a42b28-3d1b-4432-b8c9-2d42e4d0e1c5.jpg?1562921426"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Crackling Doom", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f83c7d53-2599-42a9-ae96-a2699c5164cb.jpg?1562796251", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f83c7d53-2599-42a9-ae96-a2699c5164cb.jpg?1562796251"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crater's Claws", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95dde66b-b4a1-4a1e-8c9e-0bec4790b1e5.jpg?1562790652", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95dde66b-b4a1-4a1e-8c9e-0bec4790b1e5.jpg?1562790652"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Creative Outburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eab58d87-bf01-45dc-8958-e2b3375f914b.jpg?1627428357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eab58d87-bf01-45dc-8958-e2b3375f914b.jpg?1627428357"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cryoclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a892711-a1a4-4402-957f-92077d00320d.jpg?1593275219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a892711-a1a4-4402-957f-92077d00320d.jpg?1593275219"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Culmination of Studies", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/2483060e-9d3f-48ae-80ea-0119bf6b4d67.jpg?1627428427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/2483060e-9d3f-48ae-80ea-0119bf6b4d67.jpg?1627428427"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cunning Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e4991f81-3190-4d33-bf09-9d5387cbec11.jpg?1562830894", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e4991f81-3190-4d33-bf09-9d5387cbec11.jpg?1562830894"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Darigaaz's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cf4c9d6a-86eb-45be-9405-473eb263b94c.jpg?1562938851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cf4c9d6a-86eb-45be-9405-473eb263b94c.jpg?1562938851"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deal Damage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de905517-983d-4996-a680-3a5cf91bfe11.jpg?1562489827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de905517-983d-4996-a680-3a5cf91bfe11.jpg?1562489827"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Death Spark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba841b44-475c-402c-ac11-763de0cf27d9.jpg?1562770162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba841b44-475c-402c-ac11-763de0cf27d9.jpg?1562770162"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deflecting Palm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/32374918-1bcb-4516-96af-f27da752517e.jpg?1562784565", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/32374918-1bcb-4516-96af-f27da752517e.jpg?1562784565"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Demonfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af2ad333-722e-4d7e-972a-903c24068931.jpg?1593273111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af2ad333-722e-4d7e-972a-903c24068931.jpg?1593273111"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Destructive Revelry", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc2eb53a-3d0f-4bb3-be36-f8024f2a1d4d.jpg?1592752246", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc2eb53a-3d0f-4bb3-be36-f8024f2a1d4d.jpg?1592752246"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Detonate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/237eedf5-8a8f-4668-a911-e2bf66f8221e.jpg?1562138293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/237eedf5-8a8f-4668-a911-e2bf66f8221e.jpg?1562138293"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Detonate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ffd7eb90-ae95-49df-898a-9510187bce1c.jpg?1562949167", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ffd7eb90-ae95-49df-898a-9510187bce1c.jpg?1562949167"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devastate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfe7c990-a34b-475e-a612-447c22f998d3.jpg?1562930849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfe7c990-a34b-475e-a612-447c22f998d3.jpg?1562930849"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devil's Play", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c80596a4-b464-4b9e-8186-94a1c44838eb.jpg?1562836883", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c80596a4-b464-4b9e-8186-94a1c44838eb.jpg?1562836883"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devil's Play", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6dd2f9e-16c2-4d25-98c4-0017ccd42228.jpg?1561758340", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6dd2f9e-16c2-4d25-98c4-0017ccd42228.jpg?1561758340"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Direct Current", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/166b0d75-824c-4c04-833b-7f7c69569a18.jpg?1572893128", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/166b0d75-824c-4c04-833b-7f7c69569a18.jpg?1572893128"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disintegrate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/8712c49e-f171-4669-bed9-87575a37af11.jpg?1559591574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/8712c49e-f171-4669-bed9-87575a37af11.jpg?1559591574"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Disintegrate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/93ca09e6-2f23-4457-80ab-c7806112888b.jpg?1562546639", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/93ca09e6-2f23-4457-80ab-c7806112888b.jpg?1562546639"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Double Deal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed8b3def-30ee-4dd2-9a25-ecf7d5663f96.jpg?1562799187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed8b3def-30ee-4dd2-9a25-ecf7d5663f96.jpg?1562799187"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Draconic Roar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6cf5591c-46e3-4904-8b4e-4f1f84d3118f.jpg?1562787954", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6cf5591c-46e3-4904-8b4e-4f1f84d3118f.jpg?1562787954"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dragon's Approach", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0cb504a0-1dfb-49d0-84c3-7bd318d55481.jpg?1624591696", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0cb504a0-1dfb-49d0-84c3-7bd318d55481.jpg?1624591696"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f04dc5c-2764-42d0-974e-6d902222c138.jpg?1562242701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f04dc5c-2764-42d0-974e-6d902222c138.jpg?1562242701"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05126438-e806-43e6-bd81-233b629b4a1b.jpg?1562896224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05126438-e806-43e6-bd81-233b629b4a1b.jpg?1562896224"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/272f65a3-3c0c-417d-b5b6-276a643d643e.jpg?1562446144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/272f65a3-3c0c-417d-b5b6-276a643d643e.jpg?1562446144"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01bde909-899d-4efc-aac5-57b69fa764db.jpg?1562588740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01bde909-899d-4efc-aac5-57b69fa764db.jpg?1562588740"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e68ac362-6cdc-48a6-bdd3-4f8ea32add64.jpg?1559591701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e68ac362-6cdc-48a6-bdd3-4f8ea32add64.jpg?1559591701"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Electrodominance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/c/5c63877b-cdab-4ce4-a1c0-c088eb62a57a.jpg?1584830858", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/c/5c63877b-cdab-4ce4-a1c0-c088eb62a57a.jpg?1584830858"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Electrostatic Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36ba1ac9-ebb9-449d-bd3b-716631b112fb.jpg?1645416206", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36ba1ac9-ebb9-449d-bd3b-716631b112fb.jpg?1645416206"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Ember Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a9eb72b-9ae2-4b64-bbb9-187446b5fd2f.jpg?1562630295", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a9eb72b-9ae2-4b64-bbb9-187446b5fd2f.jpg?1562630295"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Energy Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/1/711f4cff-0256-44b2-a2fe-1cae6e9edb2b.jpg?1562719783", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/711f4cff-0256-44b2-a2fe-1cae6e9edb2b.jpg?1562719783"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Backlash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a98609dc-ea90-4c7e-a191-5e5d0ba16847.jpg?1562791298", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a98609dc-ea90-4c7e-a191-5e5d0ba16847.jpg?1562791298"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eternal Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d646feea-3c20-4737-8d20-ffad42258ced.jpg?1562946085", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d646feea-3c20-4737-8d20-ffad42258ced.jpg?1562946085"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Exploding Borders", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f247aaaf-4d65-4dfc-bab2-3c1331762647.jpg?1562804623", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f247aaaf-4d65-4dfc-bab2-3c1331762647.jpg?1562804623"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Explosive Impact", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3a3e2b45-b086-4ffd-aa1a-1d03046e0d61.jpg?1562785002", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3a3e2b45-b086-4ffd-aa1a-1d03046e0d61.jpg?1562785002"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Explosive Singularity", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6cdd822-44a1-4d58-9de4-69fc56eae255.jpg?1654567601", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6cdd822-44a1-4d58-9de4-69fc56eae255.jpg?1654567601"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Explosive Singularity", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a1d47e98-daae-42f7-9581-1269d57bd16e.jpg?1654570003", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a1d47e98-daae-42f7-9581-1269d57bd16e.jpg?1654570003"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Explosive Welcome", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/122c01e6-38a6-456e-971e-9004df85ac1c.jpg?1624591777", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/122c01e6-38a6-456e-971e-9004df85ac1c.jpg?1624591777"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Exquisite Firecraft", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42eca98e-a164-4f70-a0b0-7a604863f30b.jpg?1562016890", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42eca98e-a164-4f70-a0b0-7a604863f30b.jpg?1562016890"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Exquisite Firecraft", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0be814f7-3c35-4b82-9fda-b8750a77cb9b.jpg?1562542837", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0be814f7-3c35-4b82-9fda-b8750a77cb9b.jpg?1562542837"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Face to Face", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64c93900-1af7-4c6b-a844-055bb7e27ddb.jpg?1562488406", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64c93900-1af7-4c6b-a844-055bb7e27ddb.jpg?1562488406"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Fanning the Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79075361-e6ee-4cc9-990b-88fef27bbb1c.jpg?1562596865", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79075361-e6ee-4cc9-990b-88fef27bbb1c.jpg?1562596865"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Farideh's Fireball", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/57a46987-f05a-4b83-af56-f18000874e65.jpg?1627706196", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/57a46987-f05a-4b83-af56-f18000874e65.jpg?1627706196"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fateful End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56455067-92c0-45b5-ac2e-525c35b41215.jpg?1581480134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56455067-92c0-45b5-ac2e-525c35b41215.jpg?1581480134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fault Line", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/cab4fd0e-9f84-4628-92a7-858ad8064531.jpg?1562937807", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/cab4fd0e-9f84-4628-92a7-858ad8064531.jpg?1562937807"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b61c9bc-16e8-417f-99e7-8bd83d4666c5.jpg?1562706203", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b61c9bc-16e8-417f-99e7-8bd83d4666c5.jpg?1562706203"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Fiery Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c454a20-8ec8-41d9-b9c3-acaa510d050b.jpg?1593559583", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c454a20-8ec8-41d9-b9c3-acaa510d050b.jpg?1593559583"}, "reprint": true, "digital": false, "set_type": "spellbook"}, {"name": "Fiery Gambit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a91376ed-5868-4887-8389-5ef5b9471786.jpg?1562153660", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a91376ed-5868-4887-8389-5ef5b9471786.jpg?1562153660"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Temper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61caf82d-e077-4931-a6ad-09fa7f04b36f.jpg?1576384730", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61caf82d-e077-4931-a6ad-09fa7f04b36f.jpg?1576384730"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Fiery Temper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/918e46b7-cbca-4acf-8e83-94b5fcadcc49.jpg?1562630935", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/918e46b7-cbca-4acf-8e83-94b5fcadcc49.jpg?1562630935"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Temper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73493d43-7952-4202-818d-a1a05788af6f.jpg?1562636814", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73493d43-7952-4202-818d-a1a05788af6f.jpg?1562636814"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Fiery Temper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d377a7b9-5c25-4017-84a8-ae368eceba50.jpg?1561758137", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d377a7b9-5c25-4017-84a8-ae368eceba50.jpg?1561758137"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Fire Ambush", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4dd8bdbd-99c9-4fa7-936a-acc7f4238507.jpg?1562256089", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4dd8bdbd-99c9-4fa7-936a-acc7f4238507.jpg?1562256089"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Fireblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44ab6601-409b-416f-a26c-b995e08fe6f3.jpg?1562908902", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44ab6601-409b-416f-a26c-b995e08fe6f3.jpg?1562908902"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Fireblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/1/b1eb5b2c-1f02-48a6-a287-88eb189d6780.jpg?1562278616", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/1/b1eb5b2c-1f02-48a6-a287-88eb189d6780.jpg?1562278616"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Firebolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90aae741-88af-4d21-a230-9a2592acdc87.jpg?1580014536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90aae741-88af-4d21-a230-9a2592acdc87.jpg?1580014536"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Firebolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5e45005-dd81-4d80-b043-02f719aca929.jpg?1562934963", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5e45005-dd81-4d80-b043-02f719aca929.jpg?1562934963"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Fires of Undeath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d94aaa4-c2fd-4714-9198-8415158b9c4d.jpg?1562920799", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d94aaa4-c2fd-4714-9198-8415158b9c4d.jpg?1562920799"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fire Tempest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92334ebe-3d7a-46de-8b91-931e5d56a5a5.jpg?1562447336", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92334ebe-3d7a-46de-8b91-931e5d56a5a5.jpg?1562447336"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "First Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d6e5e360-ed47-40c1-8ad7-57645c2854ca.jpg?1562880074", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d6e5e360-ed47-40c1-8ad7-57645c2854ca.jpg?1562880074"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flamebreak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e1f06f-7c87-4da8-b339-e571e391cab1.jpg?1562637920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e1f06f-7c87-4da8-b339-e571e391cab1.jpg?1562637920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Burst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64bbd438-7df2-4d7b-88ad-4531ebaf3931.jpg?1562913643", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64bbd438-7df2-4d7b-88ad-4531ebaf3931.jpg?1562913643"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Jab", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/06c2b6b2-485e-41e6-b106-4f6f402e0ec3.jpg?1562896430", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/06c2b6b2-485e-41e6-b106-4f6f402e0ec3.jpg?1562896430"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Javelin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a567b570-81e4-4068-929c-9ce406fe7474.jpg?1562834196", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a567b570-81e4-4068-929c-9ce406fe7474.jpg?1562834196"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Javelin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/407858c8-316d-47a7-8234-c490a0bc87a6.jpg?1561756991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/407858c8-316d-47a7-8234-c490a0bc87a6.jpg?1561756991"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Flame Jet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a511f9df-b53b-4fea-87cd-9f18f6833f92.jpg?1562444727", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a511f9df-b53b-4fea-87cd-9f18f6833f92.jpg?1562444727"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Lash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac44e3cb-cc69-4222-87bc-ffa54b7ab34a.jpg?1562741297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac44e3cb-cc69-4222-87bc-ffa54b7ab34a.jpg?1562741297"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Rift", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e63ed449-d249-4639-85d2-f8fe75496d5c.jpg?1626100460", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e63ed449-d249-4639-85d2-f8fe75496d5c.jpg?1626100460"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Flame Rift", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/7717eeb9-c457-4a65-93a0-e91c7f6a1970.jpg?1562630580", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/7717eeb9-c457-4a65-93a0-e91c7f6a1970.jpg?1562630580"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flames of the Blood Hand", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a79701b4-d220-4c3e-b96c-7a77a22ba899.jpg?1651124386", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a79701b4-d220-4c3e-b96c-7a77a22ba899.jpg?1651124386"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Spill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b3090004-d7dd-47bc-92e5-977be4fd9ae5.jpg?1591227197", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b3090004-d7dd-47bc-92e5-977be4fd9ae5.jpg?1591227197"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e069d90a-e7d9-4967-a872-0dd8a0a9934a.jpg?1562597824", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e069d90a-e7d9-4967-a872-0dd8a0a9934a.jpg?1562597824"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flaming Gambit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb7fd9b7-c394-4ab3-b945-b4aab694eb6a.jpg?1562632851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb7fd9b7-c394-4ab3-b945-b4aab694eb6a.jpg?1562632851"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Flare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/abc046c2-be9b-4f93-ac7d-e7dea6c4df9a.jpg?1562593271", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/abc046c2-be9b-4f93-ac7d-e7dea6c4df9a.jpg?1562593271"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Flare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1bd7755f-7ca5-4948-8baf-976823906891.jpg?1617148194", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1bd7755f-7ca5-4948-8baf-976823906891.jpg?1617148194"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Flare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5350236-7bd2-462d-9768-50087626c764.jpg?1562934818", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5350236-7bd2-462d-9768-50087626c764.jpg?1562934818"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Foundry Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c54b7c6-f94c-4349-8725-319c54240409.jpg?1626098329", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c54b7c6-f94c-4349-8725-319c54240409.jpg?1626098329"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Friendly Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac4272ca-bb15-415c-a589-a472953a0dd9.jpg?1562828722", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac4272ca-bb15-415c-a589-a472953a0dd9.jpg?1562828722"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Galvanic Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5881bbc-8600-464d-9dcd-5a7780918d1d.jpg?1562825173", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5881bbc-8600-464d-9dcd-5a7780918d1d.jpg?1562825173"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Geistblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19b1dfd9-b717-4c23-b8e5-a6ec835b278a.jpg?1576384765", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19b1dfd9-b717-4c23-b8e5-a6ec835b278a.jpg?1576384765"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Geistflame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b856f31-ac80-4338-95a5-3f8acda74cfe.jpg?1562826976", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b856f31-ac80-4338-95a5-3f8acda74cfe.jpg?1562826976"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghitu Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/78827acd-a526-411b-bd22-ab9b538c75dd.jpg?1562919168", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/78827acd-a526-411b-bd22-ab9b538c75dd.jpg?1562919168"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghostfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a60475e5-0d37-4af0-b717-da4c8dea45ac.jpg?1562928542", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a60475e5-0d37-4af0-b717-da4c8dea45ac.jpg?1562928542"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Giant's Ire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/046fa2db-4c73-401a-b9a4-b039554be625.jpg?1562336735", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/046fa2db-4c73-401a-b9a4-b039554be625.jpg?1562336735"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glacial Ray", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/04c713fd-df47-4b35-bd37-ab65d853bdc8.jpg?1562271537", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/04c713fd-df47-4b35-bd37-ab65d853bdc8.jpg?1562271537"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Goblin Barrage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/4849db5d-cd41-49f6-acd5-697cdc8263f6.jpg?1562735067", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/4849db5d-cd41-49f6-acd5-697cdc8263f6.jpg?1562735067"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Goblin Grenade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/394cc2aa-0318-4ccd-a550-99a7eac933c3.jpg?1562639104", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/394cc2aa-0318-4ccd-a550-99a7eac933c3.jpg?1562639104"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Goblin Grenade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/8837eaba-9602-4f63-9897-85583fcdcf51.jpg?1562920228", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/8837eaba-9602-4f63-9897-85583fcdcf51.jpg?1562920228"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Goblin Grenade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/dee262da-3002-4c08-8043-4e40e1b46822.jpg?1562936623", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/dee262da-3002-4c08-8043-4e40e1b46822.jpg?1562936623"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Goblin Grenade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1befdfc7-a1e3-4a2a-ad68-7d0fee170f3f.jpg?1562900237", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1befdfc7-a1e3-4a2a-ad68-7d0fee170f3f.jpg?1562900237"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grapeshot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8cd49f85-7dbd-4cb6-b916-2adee29bb745.jpg?1561967853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8cd49f85-7dbd-4cb6-b916-2adee29bb745.jpg?1561967853"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Grapeshot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4ee33cb6-768e-44a0-b6f4-b8638aa84330.jpg?1562911525", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4ee33cb6-768e-44a0-b6f4-b8638aa84330.jpg?1562911525"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grapeshot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b99b45df-9602-4037-a695-09decb5f21d7.jpg?1623890288", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b99b45df-9602-4037-a695-09decb5f21d7.jpg?1623890288"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Guerrilla Tactics", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9bf3bac0-6e63-4bd3-bbd6-547f46c2d126.jpg?1562552299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9bf3bac0-6e63-4bd3-bbd6-547f46c2d126.jpg?1562552299"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Guerrilla Tactics", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63535f0e-dc14-420e-bcb7-b5ef8fafb93f.jpg?1562915110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63535f0e-dc14-420e-bcb7-b5ef8fafb93f.jpg?1562915110"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Guerrilla Tactics", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/51811f2a-7002-4ba7-98d8-5b09d887975c.jpg?1562768705", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/51811f2a-7002-4ba7-98d8-5b09d887975c.jpg?1562768705"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guerrilla Tactics", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c005ca3-0508-4ac2-afec-3d4a27334c31.jpg?1562768254", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c005ca3-0508-4ac2-afec-3d4a27334c31.jpg?1562768254"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gut Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a54a2a30-b96a-49c7-9151-1f4b0d4a4413.jpg?1562880417", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a54a2a30-b96a-49c7-9151-1f4b0d4a4413.jpg?1562880417"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hammer of Bogardan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7285f52-5df0-4f90-9cf7-a57295d90fd4.jpg?1562722857", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7285f52-5df0-4f90-9cf7-a57295d90fd4.jpg?1562722857"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hanabi Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/881fecf4-8c14-4614-84bd-c1a3dcdbb5ff.jpg?1562762458", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/881fecf4-8c14-4614-84bd-c1a3dcdbb5ff.jpg?1562762458"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Heartfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7db219ea-2ed1-4a86-955c-d61ecedbc019.jpg?1557576716", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7db219ea-2ed1-4a86-955c-d61ecedbc019.jpg?1557576716"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hidetsugu's Second Rite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e48eb77-3bd7-444a-9262-799cc706c05a.jpg?1562493025", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e48eb77-3bd7-444a-9262-799cc706c05a.jpg?1562493025"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hungry Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4ca23676-f36f-4266-ba4f-5e9ebf3adb57.jpg?1592419490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4ca23676-f36f-4266-ba4f-5e9ebf3adb57.jpg?1592419490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Igneous Inspiration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/5781ad7b-dc1b-4cc1-9e72-6e714b9ba1de.jpg?1624591976", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/5781ad7b-dc1b-4cc1-9e72-6e714b9ba1de.jpg?1624591976"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Illuminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ceef2761-7301-42de-8f54-49b8cd1e457b.jpg?1562943833", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ceef2761-7301-42de-8f54-49b8cd1e457b.jpg?1562943833"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Improvised Weaponry", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29d5fd00-c616-4079-a91e-4da0bcaf9120.jpg?1627706453", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29d5fd00-c616-4079-a91e-4da0bcaf9120.jpg?1627706453"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incendiary Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/512367a2-f8f6-4c28-9eb3-8e04d2694e4b.jpg?1562348065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/512367a2-f8f6-4c28-9eb3-8e04d2694e4b.jpg?1562348065"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incendiary Flow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cf464f61-8a7f-493b-a80f-2f2b0ebd8bf6.jpg?1576384613", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cf464f61-8a7f-493b-a80f-2f2b0ebd8bf6.jpg?1576384613"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/burn2.json b/web/public/mtg/jsons/burn2.json new file mode 100644 index 00000000..c1116e11 --- /dev/null +++ b/web/public/mtg/jsons/burn2.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Incendiary Flow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae93a313-c265-435f-b745-7b7a7ed6208e.jpg?1562636873", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae93a313-c265-435f-b745-7b7a7ed6208e.jpg?1562636873"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Incinerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/8503210d-be78-4271-a050-53caa94f735d.jpg?1562844302", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/8503210d-be78-4271-a050-53caa94f735d.jpg?1562844302"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Incinerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/723fb62e-735a-4ca6-9d38-f1c3944fe69a.jpg?1562549678", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/723fb62e-735a-4ca6-9d38-f1c3944fe69a.jpg?1562549678"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Incinerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aa0f7e1f-bcb5-414f-a2e9-6a158fec2ff5.jpg?1562593262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aa0f7e1f-bcb5-414f-a2e9-6a158fec2ff5.jpg?1562593262"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Incinerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/409b2be8-5bb6-45e0-ab87-ca73b4e3a396.jpg?1562718795", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/409b2be8-5bb6-45e0-ab87-ca73b4e3a396.jpg?1562718795"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Incinerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c3f00af-010d-4485-b8b7-47400d99c496.jpg?1562924091", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c3f00af-010d-4485-b8b7-47400d99c496.jpg?1562924091"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incinerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28b0495d-0c3f-4491-8331-4cbabbd6eac5.jpg?1561756819", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28b0495d-0c3f-4491-8331-4cbabbd6eac5.jpg?1561756819"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Inescapable Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46651efd-0906-4350-a1b8-52e3f8aff45d.jpg?1572893201", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46651efd-0906-4350-a1b8-52e3f8aff45d.jpg?1572893201"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e411b7b5-ab91-410a-af6d-b3a21a8e3b70.jpg?1562249896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e411b7b5-ab91-410a-af6d-b3a21a8e3b70.jpg?1562249896"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68d04a75-647f-400f-b0dc-c4544f7db2d4.jpg?1562591355", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68d04a75-647f-400f-b0dc-c4544f7db2d4.jpg?1562591355"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6b61512-5b24-424c-966f-36b595781e14.jpg?1562934483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6b61512-5b24-424c-966f-36b595781e14.jpg?1562934483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3ac1649a-629b-4598-be09-74a57905753f.jpg?1562544107", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3ac1649a-629b-4598-be09-74a57905753f.jpg?1562544107"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Inferno Jet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c6a43fe-369d-4943-a825-570eb3cceba4.jpg?1562788752", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c6a43fe-369d-4943-a825-570eb3cceba4.jpg?1562788752"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inspired Ultimatum", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/dd64f064-8f05-41ef-b95b-1b723137f846.jpg?1591228071", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/dd64f064-8f05-41ef-b95b-1b723137f846.jpg?1591228071"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Invoke the Firemind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58d8e41a-5990-4ceb-9d41-76632faa7883.jpg?1593272700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58d8e41a-5990-4ceb-9d41-76632faa7883.jpg?1593272700"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ionize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f161f7d2-eaa1-4931-93f9-befa8b5df821.jpg?1572893679", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f161f7d2-eaa1-4931-93f9-befa8b5df821.jpg?1572893679"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Izzet Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61289196-a56b-4d24-b340-9cf067c77f45.jpg?1592713417", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61289196-a56b-4d24-b340-9cf067c77f45.jpg?1592713417"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Izzet Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e8e84a97-8e40-42fa-a114-df90e820ede6.jpg?1562497263", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e8e84a97-8e40-42fa-a114-df90e820ede6.jpg?1562497263"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Jeskai Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca268705-ef04-4bf1-8a5d-866bb3e5bb61.jpg?1562793488", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca268705-ef04-4bf1-8a5d-866bb3e5bb61.jpg?1562793488"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaervek's Purge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a42ef95-92ec-40fe-ab30-a476f012a525.jpg?1562720237", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a42ef95-92ec-40fe-ab30-a476f012a525.jpg?1562720237"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaervek's Torch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0a1624ab-e50e-48a3-acf7-457069914616.jpg?1562717831", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0a1624ab-e50e-48a3-acf7-457069914616.jpg?1562717831"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaleidoscorch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a5f07603-fd79-437a-9b12-495fc5a39b68.jpg?1626096801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a5f07603-fd79-437a-9b12-495fc5a39b68.jpg?1626096801"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Kamahl's Sledge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/38c55518-7bdf-4a42-ae30-cd6525557a59.jpg?1562629270", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/38c55518-7bdf-4a42-ae30-cd6525557a59.jpg?1562629270"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kami's Flare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bef5d58e-b490-4682-9a44-12cd61a94c0f.jpg?1654567705", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bef5d58e-b490-4682-9a44-12cd61a94c0f.jpg?1654567705"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kindle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/930745eb-b038-4b55-97f3-bf8d99b54d32.jpg?1562055431", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/930745eb-b038-4b55-97f3-bf8d99b54d32.jpg?1562055431"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kolaghan's Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c884e1e-fecb-4330-b3de-5fc2a60f7173.jpg?1562788780", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c884e1e-fecb-4330-b3de-5fc2a60f7173.jpg?1562788780"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kolaghan's Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e8bdd10-0bdc-4339-bd84-b540606438d6.jpg?1656000872", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e8bdd10-0bdc-4339-bd84-b540606438d6.jpg?1656000872"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Lash Out", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de2c0c8b-5442-44fb-9686-d3dff5742501.jpg?1562371092", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de2c0c8b-5442-44fb-9686-d3dff5742501.jpg?1562371092"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lava Axe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/807e5102-1fab-4ff4-aad8-94defbbb8a6b.jpg?1562241656", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/807e5102-1fab-4ff4-aad8-94defbbb8a6b.jpg?1562241656"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Lava Axe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e11ec278-46f5-4970-ad0b-f6718c73de6c.jpg?1562864233", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e11ec278-46f5-4970-ad0b-f6718c73de6c.jpg?1562864233"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Lava Axe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fe6cff90-ecec-4610-82ea-0f2a109959cf.jpg?1562955255", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fe6cff90-ecec-4610-82ea-0f2a109959cf.jpg?1562955255"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Lava Axe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2bebbad-76aa-4388-891a-583e8af9509d.jpg?1562448334", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2bebbad-76aa-4388-891a-583e8af9509d.jpg?1562448334"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Lava Blister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd0e9e53-2710-4c2a-a8e4-48f25375ebc7.jpg?1562933365", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd0e9e53-2710-4c2a-a8e4-48f25375ebc7.jpg?1562933365"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lava Burst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79dc0e20-5790-4927-8432-cf0e9b7381d4.jpg?1562917534", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79dc0e20-5790-4927-8432-cf0e9b7381d4.jpg?1562917534"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lava Dart", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/1/b16dd041-451d-4914-8c46-aa315a90d802.jpg?1562201890", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/1/b16dd041-451d-4914-8c46-aa315a90d802.jpg?1562201890"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Lava Dart", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/865bb1d3-5b7d-40e9-87cc-96be9524a105.jpg?1562630775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/865bb1d3-5b7d-40e9-87cc-96be9524a105.jpg?1562630775"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Lavalanche", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/749981d6-78e7-4f53-80a8-f211e61bd532.jpg?1562642149", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/749981d6-78e7-4f53-80a8-f211e61bd532.jpg?1562642149"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lava Spike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79c21c1f-eaa4-454d-a1c7-b41466d0a428.jpg?1547517298", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79c21c1f-eaa4-454d-a1c7-b41466d0a428.jpg?1547517298"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Lava Spike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/60b2fae1-242b-45e0-a757-b1adc02c06f3.jpg?1562760596", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60b2fae1-242b-45e0-a757-b1adc02c06f3.jpg?1562760596"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83e3c502-9e3c-41db-806c-538243dc0453.jpg?1562241728", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83e3c502-9e3c-41db-806c-538243dc0453.jpg?1562241728"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Lightning Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63fec3f9-d399-48e6-84b6-c8410c24c382.jpg?1562054251", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63fec3f9-d399-48e6-84b6-c8410c24c382.jpg?1562054251"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae5f9fb1-5a55-4db3-98a1-2628e3598c18.jpg?1648155765", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae5f9fb1-5a55-4db3-98a1-2628e3598c18.jpg?1648155765"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/435589bb-27c6-4a6d-9d63-394d5092b9d8.jpg?1561978182", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/435589bb-27c6-4a6d-9d63-394d5092b9d8.jpg?1561978182"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d573ef03-4730-45aa-93dd-e45ac1dbaf4a.jpg?1559591645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d573ef03-4730-45aa-93dd-e45ac1dbaf4a.jpg?1559591645"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8c8390f-4072-454f-8dc4-174919187a47.jpg?1655641560", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8c8390f-4072-454f-8dc4-174919187a47.jpg?1655641560"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c69f668b-cf28-495a-bbe1-24e9d0089fa1.jpg?1648155788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c69f668b-cf28-495a-bbe1-24e9d0089fa1.jpg?1648155788"}, "reprint": true, "frame_effects": ["showcase"], "digital": false, "set_type": "draft_innovation"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27740ea5-79c8-420f-bc49-6d5eac58dac5.jpg?1657119952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27740ea5-79c8-420f-bc49-6d5eac58dac5.jpg?1657119952"}, "flavor_name": "Hadoken", "reprint": true, "digital": false, "set_type": "box"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4eaac4fd-95f5-4f38-b593-0101e79a20f9.jpg?1623945607", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4eaac4fd-95f5-4f38-b593-0101e79a20f9.jpg?1623945607"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45184cd7-b037-4a85-a063-e622ca928d17.jpg?1599352446", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45184cd7-b037-4a85-a063-e622ca928d17.jpg?1599352446"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6fb94c1b-8002-4d79-add0-c4dfef9019ee.jpg?1599352358", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6fb94c1b-8002-4d79-add0-c4dfef9019ee.jpg?1599352358"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6ab06973-6440-4b12-8947-8c412500fa41.jpg?1599352361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6ab06973-6440-4b12-8947-8c412500fa41.jpg?1599352361"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c3eb3895-b64c-46ab-b704-3c46963920ba.jpg?1599352414", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c3eb3895-b64c-46ab-b704-3c46963920ba.jpg?1599352414"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ff204024-20a5-4bb9-82b6-f6b4337efd60.jpg?1552226335", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ff204024-20a5-4bb9-82b6-f6b4337efd60.jpg?1552226335"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Lightning Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28708c8c-4336-4d04-b43a-59a31471a9f6.jpg?1561756817", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28708c8c-4336-4d04-b43a-59a31471a9f6.jpg?1561756817"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Lightning Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/613789fe-fac1-4200-b0a1-c84d1fa27cff.jpg?1562917870", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/613789fe-fac1-4200-b0a1-c84d1fa27cff.jpg?1562917870"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Lightning Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b2ecf55-c1cc-4b28-b7ce-e1b25305155e.jpg?1598917140", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b2ecf55-c1cc-4b28-b7ce-e1b25305155e.jpg?1598917140"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/227ac87a-7196-40d0-ab00-98ebafcca09a.jpg?1624065725", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/227ac87a-7196-40d0-ab00-98ebafcca09a.jpg?1624065725"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Lightning Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4ec9e67b-1b4e-4e4e-9758-be697d308f16.jpg?1561757108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4ec9e67b-1b4e-4e4e-9758-be697d308f16.jpg?1561757108"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Lightning Javelin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1ccaeed-9670-4432-8a45-d5c06119fa9f.jpg?1562040115", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1ccaeed-9670-4432-8a45-d5c06119fa9f.jpg?1562040115"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Lightning Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c9c0388e-a04c-4757-a06d-8e8046f5a783.jpg?1593275279", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c9c0388e-a04c-4757-a06d-8e8046f5a783.jpg?1593275279"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0f55dee-7e39-4183-8e74-844d9c299bf5.jpg?1562566447", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0f55dee-7e39-4183-8e74-844d9c299bf5.jpg?1562566447"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Lightning Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bbb03f2e-2b92-4aa1-afae-301ed5d151d3.jpg?1562827848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bbb03f2e-2b92-4aa1-afae-301ed5d151d3.jpg?1562827848"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Surge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/0452d78d-eafc-4ccb-a478-d1f46bcefffe.jpg?1562628459", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/0452d78d-eafc-4ccb-a478-d1f46bcefffe.jpg?1562628459"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Light Up the Night", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7de68154-3b82-4a94-98a6-cfc49d359e4e.jpg?1636223152", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7de68154-3b82-4a94-98a6-cfc49d359e4e.jpg?1636223152"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lorehold Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e4f0885f-1049-4a19-853d-f4e6d4bec29e.jpg?1627429447", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e4f0885f-1049-4a19-853d-f4e6d4bec29e.jpg?1627429447"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lunge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9e43349-429c-43f7-b808-c4bf37370a9f.jpg?1562383530", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9e43349-429c-43f7-b808-c4bf37370a9f.jpg?1562383530"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Magma Burst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9752bc3-0bdf-4657-8750-73c8cbc8e83f.jpg?1562940942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9752bc3-0bdf-4657-8750-73c8cbc8e83f.jpg?1562940942"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Magma Jet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8af1c5b0-973d-467e-a797-51ca75c183c1.jpg?1593813497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8af1c5b0-973d-467e-a797-51ca75c183c1.jpg?1593813497"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Magma Jet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/51ea1728-08aa-4553-90b2-919c70712ed5.jpg?1562877009", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/51ea1728-08aa-4553-90b2-919c70712ed5.jpg?1562877009"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Magma Jet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/be7552ac-4546-492d-8d11-d6678a04b9c3.jpg?1562640021", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/be7552ac-4546-492d-8d11-d6678a04b9c3.jpg?1562640021"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Make Mischief", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2049072-5901-4edd-8305-ce55f256bca5.jpg?1576384624", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2049072-5901-4edd-8305-ce55f256bca5.jpg?1576384624"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Melt Terrain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d94a1d1-6d24-46e1-9568-42e1a810ad31.jpg?1562815251", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d94a1d1-6d24-46e1-9568-42e1a810ad31.jpg?1562815251"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mindblaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59418766-5567-4ec4-af1f-1cb2db2958d0.jpg?1562760146", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59418766-5567-4ec4-af1f-1cb2db2958d0.jpg?1562760146"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mindswipe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/557e8303-a021-4257-b41a-7d25f04618c8.jpg?1562786781", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/557e8303-a021-4257-b41a-7d25f04618c8.jpg?1562786781"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Misfortune", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/1/b14cc32a-eb4f-4690-aceb-160780743ebe.jpg?1562770145", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/1/b14cc32a-eb4f-4690-aceb-160780743ebe.jpg?1562770145"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molten Disaster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/31e0713c-dbf4-4403-ae69-58fd483e2481.jpg?1562905110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/31e0713c-dbf4-4403-ae69-58fd483e2481.jpg?1562905110"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molten Influence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c2b326b-d177-4a03-a0a3-fe2c2d4af272.jpg?1562908953", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c2b326b-d177-4a03-a0a3-fe2c2d4af272.jpg?1562908953"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molten Rain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ecdd414b-3d9d-4347-acce-289209d09fc4.jpg?1593813519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ecdd414b-3d9d-4347-acce-289209d09fc4.jpg?1593813519"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Molten Rain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f888b4d4-31f9-4322-8225-4d7e7a9f4dd5.jpg?1562163535", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f888b4d4-31f9-4322-8225-4d7e7a9f4dd5.jpg?1562163535"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Moonrager's Slash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb4f266b-c41c-4047-ae6f-b2226c7459e8.jpg?1636223196", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb4f266b-c41c-4047-ae6f-b2226c7459e8.jpg?1636223196"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Needle Drop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3f89bcf-46f8-4598-a949-7f10134606aa.jpg?1562369628", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3f89bcf-46f8-4598-a949-7f10134606aa.jpg?1562369628"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Neonate's Rush", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/dee17e12-e08f-4449-9f49-05f20e0d1670.jpg?1636223275", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/dee17e12-e08f-4449-9f49-05f20e0d1670.jpg?1636223275"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nerf War", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2eb08fc5-29a4-4911-ac94-dc5ff2fc2ace.jpg?1561756860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2eb08fc5-29a4-4911-ac94-dc5ff2fc2ace.jpg?1561756860"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Open Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/448f9fb5-ffb5-4325-9f81-ce8782e5f9e9.jpg?1562797508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/448f9fb5-ffb5-4325-9f81-ce8782e5f9e9.jpg?1562797508"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Orcish Cannonade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0afae574-aa96-4500-9882-a4b10337b6f5.jpg?1619397326", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0afae574-aa96-4500-9882-a4b10337b6f5.jpg?1619397326"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Orcish Cannonade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4e40f99c-9608-4463-8c6f-c6e142f0d716.jpg?1562911399", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4e40f99c-9608-4463-8c6f-c6e142f0d716.jpg?1562911399"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parallectric Feedback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/891f1d29-377a-4f71-917f-ff10e785caee.jpg?1593272344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/891f1d29-377a-4f71-917f-ff10e785caee.jpg?1593272344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3ab8065-cecc-4b19-be93-7cf791a93e62.jpg?1562864229", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3ab8065-cecc-4b19-be93-7cf791a93e62.jpg?1562864229"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pass the Torch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5dc05455-4ebd-46f8-94cf-14f0d5420037.jpg?1654043945", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5dc05455-4ebd-46f8-94cf-14f0d5420037.jpg?1654043945"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Peak Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed0a00f7-aee0-4ab2-bab6-bc0949176a7a.jpg?1562836713", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed0a00f7-aee0-4ab2-bab6-bc0949176a7a.jpg?1562836713"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pigment Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d285a7a1-bb7e-4a78-a49f-c2add62b829a.jpg?1624592111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d285a7a1-bb7e-4a78-a49f-c2add62b829a.jpg?1624592111"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pillar of Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c983e879-d9d2-47cc-9958-506711ca80cd.jpg?1592709165", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c983e879-d9d2-47cc-9958-506711ca80cd.jpg?1592709165"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pillar of Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c39677b8-9a43-4e62-a83a-4a9d6372310b.jpg?1562640029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c39677b8-9a43-4e62-a83a-4a9d6372310b.jpg?1562640029"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Play with Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42901bec-a8d0-46a3-a710-bfb7bd87f155.jpg?1640721639", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42901bec-a8d0-46a3-a710-bfb7bd87f155.jpg?1640721639"}, "reprint": false, "frame_effects": ["inverted"], "digital": false, "set_type": "expansion"}, {"name": "Poison the Well", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb86eeec-d50f-4823-86bd-35437926a6e4.jpg?1562835997", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb86eeec-d50f-4823-86bd-35437926a6e4.jpg?1562835997"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Precision Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a59b4e5b-e9e0-4507-b9e7-8fba7e3a54f9.jpg?1572894271", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a59b4e5b-e9e0-4507-b9e7-8fba7e3a54f9.jpg?1572894271"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Prismari Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/866b7fd4-86e3-4b42-b1ea-33bad0db1f9f.jpg?1627429955", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/866b7fd4-86e3-4b42-b1ea-33bad0db1f9f.jpg?1627429955"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Prophetic Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/101163c0-cd2f-4e1a-84b3-f64fc748807d.jpg?1592713462", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/101163c0-cd2f-4e1a-84b3-f64fc748807d.jpg?1592713462"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Prophetic Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79f74291-c452-4a60-bf5f-73efad6583d4.jpg?1562923762", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79f74291-c452-4a60-bf5f-73efad6583d4.jpg?1562923762"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Provoke the Trolls", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/2727b05a-0c86-4c59-b7b4-425bdd8e775d.jpg?1631049503", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/2727b05a-0c86-4c59-b7b4-425bdd8e775d.jpg?1631049503"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pulse of the Forge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea3ed9c8-b552-4a9a-b77a-8b148638b4f0.jpg?1562640294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea3ed9c8-b552-4a9a-b77a-8b148638b4f0.jpg?1562640294"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Puncture Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bf90b4d-98cf-4953-b6ae-c41d21ab559b.jpg?1562907480", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bf90b4d-98cf-4953-b6ae-c41d21ab559b.jpg?1562907480"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Punishing Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0da4409b-fe3f-4500-bf4b-890593f7d313.jpg?1562897775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0da4409b-fe3f-4500-bf4b-890593f7d313.jpg?1562897775"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Punishing Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56e76f1c-5a07-455a-a3df-4c45b5b25b82.jpg?1562612350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56e76f1c-5a07-455a-a3df-4c45b5b25b82.jpg?1562612350"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Punish the Enemy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/4179a72b-8482-46ec-9815-f5d6d94b5aa5.jpg?1562907014", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/4179a72b-8482-46ec-9815-f5d6d94b5aa5.jpg?1562907014"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyromatics", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c22c9dab-e8d5-48b3-8fd2-9f4138ee0c7c.jpg?1593272350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c22c9dab-e8d5-48b3-8fd2-9f4138ee0c7c.jpg?1593272350"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quenchable Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee1c0ded-2a80-4ed4-b9fc-3a18bf5c3239.jpg?1562804519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee1c0ded-2a80-4ed4-b9fc-3a18bf5c3239.jpg?1562804519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rain of Embers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d5391a9-6c30-4f9b-b746-a4427a3e63fc.jpg?1598915805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d5391a9-6c30-4f9b-b746-a4427a3e63fc.jpg?1598915805"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rakdos Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0fcd4394-d22d-4eec-ad73-ffaf10ad60de.jpg?1562782720", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0fcd4394-d22d-4eec-ad73-ffaf10ad60de.jpg?1562782720"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rakdos's Return", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d72981c0-1632-4d64-9341-2a76047d9b36.jpg?1562793869", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d72981c0-1632-4d64-9341-2a76047d9b36.jpg?1562793869"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ral's Outburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6be3dd3e-50d2-4729-9caa-b2cd984f4c97.jpg?1557577237", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6be3dd3e-50d2-4729-9caa-b2cd984f4c97.jpg?1557577237"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ravaging Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d9404b2-f0ea-4a31-bc7b-6748574c57d3.jpg?1562021972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d9404b2-f0ea-4a31-bc7b-6748574c57d3.jpg?1562021972"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Reality Hemorrhage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c044168d-cb08-493d-98c1-b66b6149fe5a.jpg?1562933647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c044168d-cb08-493d-98c1-b66b6149fe5a.jpg?1562933647"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Reckless Abandon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f335d43-cacb-40ad-93c1-9a861e9f66c7.jpg?1562444699", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f335d43-cacb-40ad-93c1-9a861e9f66c7.jpg?1562444699"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Red Sun's Zenith", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/373eb109-0e30-41c1-b2df-6bc78d968890.jpg?1562610602", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/373eb109-0e30-41c1-b2df-6bc78d968890.jpg?1562610602"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rekindled Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/131c6377-4ed4-4a76-a9cb-be7ad17d76fd.jpg?1562899037", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/131c6377-4ed4-4a76-a9cb-be7ad17d76fd.jpg?1562899037"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Release the Ants", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b6f1afb-2451-4611-ac3e-3513a4651719.jpg?1562877157", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b6f1afb-2451-4611-ac3e-3513a4651719.jpg?1562877157"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rending Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/51332c31-41df-4379-aa63-6a734a4df618.jpg?1643591905", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/51332c31-41df-4379-aa63-6a734a4df618.jpg?1643591905"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Repeating Barrage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba90a2d6-8292-4ff1-91d0-b30ae9775f12.jpg?1562562987", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba90a2d6-8292-4ff1-91d0-b30ae9775f12.jpg?1562562987"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Resounding Thunder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/680b7955-d939-4195-aba8-b46a8c925616.jpg?1562704894", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/680b7955-d939-4195-aba8-b46a8c925616.jpg?1562704894"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rhystic Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21ce365e-3002-42e9-aeb5-1b845408271e.jpg?1562901251", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21ce365e-3002-42e9-aeb5-1b845408271e.jpg?1562901251"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rift Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88dde96e-6824-4d26-9fb5-86b9f3c50959.jpg?1562923901", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88dde96e-6824-4d26-9fb5-86b9f3c50959.jpg?1562923901"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rift Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25176fe7-a5a0-44d2-9619-193063c55902.jpg?1561929531", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25176fe7-a5a0-44d2-9619-193063c55902.jpg?1561929531"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Risk Factor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4eda89d9-9bd1-4a55-ac02-f9a0625d8e5b.jpg?1572893240", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4eda89d9-9bd1-4a55-ac02-f9a0625d8e5b.jpg?1572893240"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Roil Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86572747-8faa-4242-b059-07d11e6be1cd.jpg?1604197631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86572747-8faa-4242-b059-07d11e6be1cd.jpg?1604197631"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Roiling Terrain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87d3a425-01d1-4001-92f9-8e297dd862b7.jpg?1562291349", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87d3a425-01d1-4001-92f9-8e297dd862b7.jpg?1562291349"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rolling Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c1bf210-ecdb-4b49-8504-51360c269e66.jpg?1562256070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c1bf210-ecdb-4b49-8504-51360c269e66.jpg?1562256070"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Sacred Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0b1dcd7-6dd9-4134-bc6c-9dc7754006a2.jpg?1636684880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0b1dcd7-6dd9-4134-bc6c-9dc7754006a2.jpg?1636684880"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sarkhan's Catharsis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2f4b6f26-c66b-4048-9503-af0a886ef14f.jpg?1557576811", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2f4b6f26-c66b-4048-9503-af0a886ef14f.jpg?1557576811"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sarkhan's Dragonfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b96a7320-089a-4a7e-813f-49ca1620df76.jpg?1562303870", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b96a7320-089a-4a7e-813f-49ca1620df76.jpg?1562303870"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Sarkhan's Rage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/4787924f-3186-4e18-b53c-dd67c5f42220.jpg?1562785591", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/4787924f-3186-4e18-b53c-dd67c5f42220.jpg?1562785591"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saut\u00e9", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85cbebbb-7ea4-4140-933f-186cad08697d.jpg?1562488867", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85cbebbb-7ea4-4140-933f-186cad08697d.jpg?1562488867"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Scent of Cinder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c030eca0-bc5f-403b-8600-1f295fc85fee.jpg?1562445189", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c030eca0-bc5f-403b-8600-1f295fc85fee.jpg?1562445189"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scent of Cinder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/0/d083fcdc-1e1f-4ad3-82d1-11f0b84dd74d.jpg?1562934001", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/0/d083fcdc-1e1f-4ad3-82d1-11f0b84dd74d.jpg?1562934001"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Scorching Lava", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a85437f-052e-494c-a9ee-265c4624a409.jpg?1562903659", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a85437f-052e-494c-a9ee-265c4624a409.jpg?1562903659"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scorching Missile", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/0672960b-4cb5-4ed6-ba3c-6b97290e0330.jpg?1562896294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0672960b-4cb5-4ed6-ba3c-6b97290e0330.jpg?1562896294"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Scorching Spear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e4817bd-68e8-4a85-983a-ee6dda2bbf33.jpg?1562447352", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e4817bd-68e8-4a85-983a-ee6dda2bbf33.jpg?1562447352"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Searing Barrage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2f11135-e9ce-4e4c-bea7-72a46d326e40.jpg?1572490453", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2f11135-e9ce-4e4c-bea7-72a46d326e40.jpg?1572490453"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/301f13dd-39b8-4a93-9c05-3dc4fa1f1c75.jpg?1562284687", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/301f13dd-39b8-4a93-9c05-3dc4fa1f1c75.jpg?1562284687"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/974c599b-170e-4948-b741-47f61c769b6e.jpg?1561757630", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/974c599b-170e-4948-b741-47f61c769b6e.jpg?1561757630"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Searing Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb43fd07-d281-447d-88bf-c53498c2cf20.jpg?1593092367", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb43fd07-d281-447d-88bf-c53498c2cf20.jpg?1593092367"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Flesh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d83db110-42e7-4823-a686-b83205faf503.jpg?1562946564", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d83db110-42e7-4823-a686-b83205faf503.jpg?1562946564"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Spear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/11a94b7c-0216-473c-87a6-71e5a64d7799.jpg?1562550529", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/11a94b7c-0216-473c-87a6-71e5a64d7799.jpg?1562550529"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Searing Spear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e574f1f8-ca61-43b4-8230-2636709a3855.jpg?1562497262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e574f1f8-ca61-43b4-8230-2636709a3855.jpg?1562497262"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Searing Touch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9091667-d5a8-4978-9023-032ff65f9642.jpg?1562057345", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9091667-d5a8-4978-9023-032ff65f9642.jpg?1562057345"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Wind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b761f97-3690-497a-b6ab-c71f61b8e841.jpg?1562917793", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b761f97-3690-497a-b6ab-c71f61b8e841.jpg?1562917793"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seismic Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e55b8ffb-c2e4-4676-9051-ff6c686cad0b.jpg?1654567822", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e55b8ffb-c2e4-4676-9051-ff6c686cad0b.jpg?1654567822"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shard Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43db4810-078e-487a-afef-57cbc1db0cc7.jpg?1562878159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43db4810-078e-487a-afef-57cbc1db0cc7.jpg?1562878159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/00365412-41db-427c-9109-8f69c17c326d.jpg?1576381909", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/00365412-41db-427c-9109-8f69c17c326d.jpg?1576381909"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/334ad39a-4088-4530-8f3c-d34e7cc99fae.jpg?1562545881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/334ad39a-4088-4530-8f3c-d34e7cc99fae.jpg?1562545881"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83c92b5d-103c-4719-a850-690a7010291a.jpg?1562926054", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83c92b5d-103c-4719-a850-690a7010291a.jpg?1562926054"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea653772-a5fe-4416-bef3-fd41133371db.jpg?1562250385", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea653772-a5fe-4416-bef3-fd41133371db.jpg?1562250385"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f9b2ff2a-6dfe-4635-8da2-22d525e82b94.jpg?1562597849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f9b2ff2a-6dfe-4635-8da2-22d525e82b94.jpg?1562597849"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/60eeb025-704c-4a82-90b2-f91202ae30d9.jpg?1623945691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60eeb025-704c-4a82-90b2-f91202ae30d9.jpg?1623945691"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Shower of Sparks", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54428999-a83d-40a5-9753-dfefdf705a9e.jpg?1562912591", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54428999-a83d-40a5-9753-dfefdf705a9e.jpg?1562912591"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shrapnel Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/056affab-4e2a-4b68-b864-d879becd3c45.jpg?1562134669", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/056affab-4e2a-4b68-b864-d879becd3c45.jpg?1562134669"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shrapnel Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8baa9d1-b45d-4947-9eb6-7f580c83a2c3.jpg?1562164853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8baa9d1-b45d-4947-9eb6-7f580c83a2c3.jpg?1562164853"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sizzle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfdfe2a9-1323-4f15-b2ce-d8dd404b914d.jpg?1587913602", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfdfe2a9-1323-4f15-b2ce-d8dd404b914d.jpg?1587913602"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Sizzle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f1ca1eee-d97d-48c6-84f1-7d1f972c3ca9.jpg?1562383987", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f1ca1eee-d97d-48c6-84f1-7d1f972c3ca9.jpg?1562383987"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skewer the Critics", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97295660-6bea-46ae-9a3b-0fc6abba407f.jpg?1584831035", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97295660-6bea-46ae-9a3b-0fc6abba407f.jpg?1584831035"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skullcrack", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/8068a146-f6fe-46f3-a42e-822fbc3502e6.jpg?1561833692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/8068a146-f6fe-46f3-a42e-822fbc3502e6.jpg?1561833692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skull Rend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c8efb23-bac0-41d2-b4ee-27a6b1fe3134.jpg?1562783397", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c8efb23-bac0-41d2-b4ee-27a6b1fe3134.jpg?1562783397"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skullscorch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88f1343c-77bf-4f44-8226-fdfb2c2c7015.jpg?1562630775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88f1343c-77bf-4f44-8226-fdfb2c2c7015.jpg?1562630775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slagstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e318b03-2aad-462b-a2a9-8b6bdf0e93d6.jpg?1562613393", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e318b03-2aad-462b-a2a9-8b6bdf0e93d6.jpg?1562613393"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaying Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83b5b110-c430-4ffe-9fc1-8e6987f52d1e.jpg?1572490469", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83b5b110-c430-4ffe-9fc1-8e6987f52d1e.jpg?1572490469"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smash to Smithereens", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/e/7eda1524-44dd-4f70-ac21-bac51578860e.jpg?1562832260", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/e/7eda1524-44dd-4f70-ac21-bac51578860e.jpg?1562832260"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smash to Smithereens", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4daccff6-8395-4b11-a4ce-3576aa38bc09.jpg?1562636800", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4daccff6-8395-4b11-a4ce-3576aa38bc09.jpg?1562636800"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Smoke Spirits' Aid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e492a245-46ba-438e-8d81-4626faa49bff.jpg?1651655377", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e492a245-46ba-438e-8d81-4626faa49bff.jpg?1651655377"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Solar Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b36fc40c-6a68-4192-91d9-2031c7d32e05.jpg?1562937333", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b36fc40c-6a68-4192-91d9-2031c7d32e05.jpg?1562937333"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sonic Assault", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cc61a398-cf16-415b-b3cf-897217dc7cc9.jpg?1572893813", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cc61a398-cf16-415b-b3cf-897217dc7cc9.jpg?1572893813"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sonic Burst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05530d5a-dcb6-403e-9e35-224c7b5cf615.jpg?1562086889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05530d5a-dcb6-403e-9e35-224c7b5cf615.jpg?1562086889"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sonic Seizure", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98eb9371-aa20-4790-baf8-a1ad95de39de.jpg?1562631090", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98eb9371-aa20-4790-baf8-a1ad95de39de.jpg?1562631090"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spark Jolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6ee479c2-a115-450b-bc2e-b03d23b82f2d.jpg?1562819617", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6ee479c2-a115-450b-bc2e-b03d23b82f2d.jpg?1562819617"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spark Spray", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f60d8716-4297-484c-8e02-c30ce2773a65.jpg?1562536945", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f60d8716-4297-484c-8e02-c30ce2773a65.jpg?1562536945"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spawning Breath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90ec1540-e8cb-4edc-a3b3-f71423cb46fc.jpg?1562706335", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90ec1540-e8cb-4edc-a3b3-f71423cb46fc.jpg?1562706335"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/burn3.json b/web/public/mtg/jsons/burn3.json new file mode 100644 index 00000000..aa261ae5 --- /dev/null +++ b/web/public/mtg/jsons/burn3.json @@ -0,0 +1 @@ +{"has_more": false, "data": [{"name": "Staggershock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75624ab3-ddbd-4fe8-8a07-7d1f78ec8a84.jpg?1562705194", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75624ab3-ddbd-4fe8-8a07-7d1f78ec8a84.jpg?1562705194"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Starfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/13921f0d-f163-4275-b025-045c1ccd99e5.jpg?1593096122", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/13921f0d-f163-4275-b025-045c1ccd99e5.jpg?1593096122"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Start from Scratch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55c99486-ae64-4293-81fb-a4b02e8fcae6.jpg?1637082383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55c99486-ae64-4293-81fb-a4b02e8fcae6.jpg?1637082383"}, "reprint": false, "frame_effects": ["lesson"], "digital": false, "set_type": "expansion"}, {"name": "Steam Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/144a1b4e-d960-4c3a-810b-11a0c78635ad.jpg?1562899291", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/144a1b4e-d960-4c3a-810b-11a0c78635ad.jpg?1562899291"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stoke the Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d94c000-52e0-4215-83af-6351dc43e636.jpg?1562783509", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d94c000-52e0-4215-83af-6351dc43e636.jpg?1562783509"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Stoke the Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5a1071a-c50c-439f-8387-5b2c143e24e4.jpg?1562640134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5a1071a-c50c-439f-8387-5b2c143e24e4.jpg?1562640134"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Stomping Slabs", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/820f1acf-7f0c-4ee5-9f18-b5627aac7c81.jpg?1562879653", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/820f1acf-7f0c-4ee5-9f18-b5627aac7c81.jpg?1562879653"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Strategy, Schmategy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2996a63-9fb6-4455-906d-13f917a8bb29.jpg?1562799134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2996a63-9fb6-4455-906d-13f917a8bb29.jpg?1562799134"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Structural Collapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d10da484-db67-4afc-90ef-6caf7d2e3a75.jpg?1561847167", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d10da484-db67-4afc-90ef-6caf7d2e3a75.jpg?1561847167"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Structural Distortion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a7895890-a774-4c7c-9f15-78b8aadfd9ef.jpg?1576384931", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a7895890-a774-4c7c-9f15-78b8aadfd9ef.jpg?1576384931"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sudden Shock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9fcc7ad0-1348-44e9-9782-e9b7fd032fa4.jpg?1606761799", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9fcc7ad0-1348-44e9-9782-e9b7fd032fa4.jpg?1606761799"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sulfurous Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/67511e0e-be09-4f4e-9949-b9ecbdc7f536.jpg?1562916599", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/67511e0e-be09-4f4e-9949-b9ecbdc7f536.jpg?1562916599"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Surging Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/156994b5-a0f2-4d02-9bda-882e80d9905c.jpg?1561756701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/156994b5-a0f2-4d02-9bda-882e80d9905c.jpg?1561756701"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Tarfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d13a898e-6a97-4fd9-980e-3bfd8d755386.jpg?1562369172", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d13a898e-6a97-4fd9-980e-3bfd8d755386.jpg?1562369172"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderblade Charge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88a85be1-9de5-4f96-9fd1-15f3f17c4bea.jpg?1562922621", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88a85be1-9de5-4f96-9fd1-15f3f17c4bea.jpg?1562922621"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderbolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/5845a5bc-6b7d-4bbb-80b3-a0f877b95553.jpg?1592709223", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/5845a5bc-6b7d-4bbb-80b3-a0f877b95553.jpg?1592709223"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Thunderbolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/0/a0a4b641-2eb3-482b-91a1-236ebe2a7a41.jpg?1562802418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/0/a0a4b641-2eb3-482b-91a1-236ebe2a7a41.jpg?1562802418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderous Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/daa39826-7f89-41cb-a7fe-7f7be817d5cd.jpg?1592709229", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/daa39826-7f89-41cb-a7fe-7f7be817d5cd.jpg?1592709229"}, "reprint": false, "frame_effects": ["miracle"], "digital": false, "set_type": "expansion"}, {"name": "Titan's Revenge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/1/b1b0f9ca-b752-4dd6-982b-06bb3a27ddbc.jpg?1562880793", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/1/b1b0f9ca-b752-4dd6-982b-06bb3a27ddbc.jpg?1562880793"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Touch of the Void", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/006ead4a-dc57-4856-8e13-235ba55483e6.jpg?1562895118", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/006ead4a-dc57-4856-8e13-235ba55483e6.jpg?1562895118"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Traitor's Roar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/751e2700-6425-45b8-b026-8c78098f08b2.jpg?1562831801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/751e2700-6425-45b8-b026-8c78098f08b2.jpg?1562831801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tribal Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07fafa53-1e22-43f5-abf3-bbab8130f84d.jpg?1561966002", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07fafa53-1e22-43f5-abf3-bbab8130f84d.jpg?1561966002"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Tribal Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9b32531e-c759-4603-abd0-1724e8df70db.jpg?1562926326", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9b32531e-c759-4603-abd0-1724e8df70db.jpg?1562926326"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unfriendly Fire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a61b274-0499-4cb6-a2e4-f5e18ad7fd2d.jpg?1562558512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a61b274-0499-4cb6-a2e4-f5e18ad7fd2d.jpg?1562558512"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unlicensed Disintegration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16ad8f86-7860-4896-a161-07bf347bbd5b.jpg?1576382889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16ad8f86-7860-4896-a161-07bf347bbd5b.jpg?1576382889"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unlicensed Disintegration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74843584-d6b1-4ee6-bedb-999ab0a42bb9.jpg?1562636815", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74843584-d6b1-4ee6-bedb-999ab0a42bb9.jpg?1562636815"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Urza's Rage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/774c52e2-b0d1-4b70-b6d1-bf98f6298603.jpg?1562917055", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/774c52e2-b0d1-4b70-b6d1-bf98f6298603.jpg?1562917055"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Urza's Rage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61a25a35-3ae4-471e-adcd-d8baf2f77b68.jpg?1562914759", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61a25a35-3ae4-471e-adcd-d8baf2f77b68.jpg?1562914759"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Urza's Rage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d80e9897-d84c-4992-9e8e-3a00f377c7e5.jpg?1623945800", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d80e9897-d84c-4992-9e8e-3a00f377c7e5.jpg?1623945800"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Volcanic Fallout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65536d12-e75c-42b5-b592-a3ad4f550a71.jpg?1592485188", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65536d12-e75c-42b5-b592-a3ad4f550a71.jpg?1592485188"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Volcanic Fallout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d3a69d2-518d-4b70-a03e-6d02a525f9ad.jpg?1561757550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d3a69d2-518d-4b70-a03e-6d02a525f9ad.jpg?1561757550"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Volcanic Geyser", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df5bab70-3c28-48db-9ed3-64706f64f4fa.jpg?1562560984", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df5bab70-3c28-48db-9ed3-64706f64f4fa.jpg?1562560984"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Volcanic Geyser", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/911787db-9023-46f8-9501-3ad26b6ca51d.jpg?1562720483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/911787db-9023-46f8-9501-3ad26b6ca51d.jpg?1562720483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Volcanic Hammer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8d93606-4864-4a5f-bcbf-8638211e979d.jpg?1562251759", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8d93606-4864-4a5f-bcbf-8638211e979d.jpg?1562251759"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Volcanic Hammer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58c0489d-b073-4ad4-b044-447fcc865b6c.jpg?1562915903", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58c0489d-b073-4ad4-b044-447fcc865b6c.jpg?1562915903"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Volcanic Hammer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/9563d7c1-4ed1-4919-b0b8-ea1ec9d4bbf6.jpg?1562447337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/9563d7c1-4ed1-4919-b0b8-ea1ec9d4bbf6.jpg?1562447337"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Volcanic Spray", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97daab4b-d934-4a3f-a043-f7c9c1dd32bf.jpg?1562923217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97daab4b-d934-4a3f-a043-f7c9c1dd32bf.jpg?1562923217"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Volt Charge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aa88011c-a19d-4faa-8da6-86b9980cd571.jpg?1562880613", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aa88011c-a19d-4faa-8da6-86b9980cd571.jpg?1562880613"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Warleader's Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/81e474ac-54f7-43f9-8af9-2f1adf258b15.jpg?1562919089", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/81e474ac-54f7-43f9-8af9-2f1adf258b15.jpg?1562919089"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Warleader's Helix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fcc1dd23-90fa-4aa4-b0a9-7a92991ad7ec.jpg?1562640152", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fcc1dd23-90fa-4aa4-b0a9-7a92991ad7ec.jpg?1562640152"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Weight of Spires", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5f26a87-4562-450c-800b-7d4acc1ae17b.jpg?1593273313", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5f26a87-4562-450c-800b-7d4acc1ae17b.jpg?1593273313"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wild Slash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/6975490f-7679-48b3-ba34-04dec97a29c2.jpg?1562826120", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/6975490f-7679-48b3-ba34-04dec97a29c2.jpg?1562826120"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Winter Sky", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af1035f3-3027-4a41-834c-55222b13c2bc.jpg?1562588224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af1035f3-3027-4a41-834c-55222b13c2bc.jpg?1562588224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wizard's Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59bf371a-164c-4db8-9207-197c2e7c3c10.jpg?1562736134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59bf371a-164c-4db8-9207-197c2e7c3c10.jpg?1562736134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Word of Blasting", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c5362ead-9162-4160-bfa9-432f7d0e222d.jpg?1562383027", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c5362ead-9162-4160-bfa9-432f7d0e222d.jpg?1562383027"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Word of Blasting", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46b383c8-d604-4131-a869-9e9d13e30b94.jpg?1562907917", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46b383c8-d604-4131-a869-9e9d13e30b94.jpg?1562907917"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Yamabushi's Flame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1a9bacba-55c4-4b92-bdd9-01b6035ed1b2.jpg?1562757952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1a9bacba-55c4-4b92-bdd9-01b6035ed1b2.jpg?1562757952"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/7502ce01-b762-40fe-a064-c7b20b08a722.jpg?1562918451", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/7502ce01-b762-40fe-a064-c7b20b08a722.jpg?1562918451"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zenith Flare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0efac1ed-3f01-487c-86be-8239568b4425.jpg?1591228324", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0efac1ed-3f01-487c-86be-8239568b4425.jpg?1591228324"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/counterspell1.json b/web/public/mtg/jsons/counterspell1.json new file mode 100644 index 00000000..abee75b2 --- /dev/null +++ b/web/public/mtg/jsons/counterspell1.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Abjure", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fbad9449-d09c-4fd0-b2ad-2aa3a29e03bf.jpg?1562804357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fbad9449-d09c-4fd0-b2ad-2aa3a29e03bf.jpg?1562804357"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Absorb", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e8a43c1-42d1-45ef-8a63-4b87775a6e88.jpg?1584831352", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e8a43c1-42d1-45ef-8a63-4b87775a6e88.jpg?1584831352"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Absorb", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d6a0f3e-457f-41f5-be26-5fb249874f1a.jpg?1562913952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d6a0f3e-457f-41f5-be26-5fb249874f1a.jpg?1562913952"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Absorb Energy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfdca67d-9a97-4ddc-8d50-26a48ad2e4b7.jpg?1645416627", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfdca67d-9a97-4ddc-8d50-26a48ad2e4b7.jpg?1645416627"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Abstruse Interference", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/249a7be3-311e-4ce6-97dc-97242463ae23.jpg?1562902357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/249a7be3-311e-4ce6-97dc-97242463ae23.jpg?1562902357"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Access Denied", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/1642df77-6fe8-47cf-b750-ca4dd9b331ba.jpg?1651655225", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/1642df77-6fe8-47cf-b750-ca4dd9b331ba.jpg?1651655225"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Admiral's Order", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/80dc0310-afd9-49b4-b58f-a0e91120c38c.jpg?1555039852", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/80dc0310-afd9-49b4-b58f-a0e91120c38c.jpg?1555039852"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aether Gust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/783da808-6698-4e55-9fac-430a6effe2b1.jpg?1592516251", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/783da808-6698-4e55-9fac-430a6effe2b1.jpg?1592516251"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Aether Gust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bcc1aa91-ec97-4fe8-b4b1-a213f050f956.jpg?1645141636", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bcc1aa91-ec97-4fe8-b4b1-a213f050f956.jpg?1645141636"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Annul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b1d4a59-11a0-4a55-8ac0-07377a9e6dc8.jpg?1631046631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b1d4a59-11a0-4a55-8ac0-07377a9e6dc8.jpg?1631046631"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Annul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5e71b6ad-4b81-4277-8512-0a3f2266cd23.jpg?1562818788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5e71b6ad-4b81-4277-8512-0a3f2266cd23.jpg?1562818788"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Annul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8ba18ec8-e82f-41be-9ed8-b1a4ae9b7426.jpg?1562150464", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8ba18ec8-e82f-41be-9ed8-b1a4ae9b7426.jpg?1562150464"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Annul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f8c73ff-be92-41ca-93a7-76f9823adb38.jpg?1562908208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f8c73ff-be92-41ca-93a7-76f9823adb38.jpg?1562908208"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "An Offer You Can't Refuse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9d349f3-5be2-4b1f-a4c3-ba94822cf0cf.jpg?1649394290", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9d349f3-5be2-4b1f-a4c3-ba94822cf0cf.jpg?1649394290"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anticognition", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db99b872-77c7-4471-9c44-a36d4ff5d33f.jpg?1604193539", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db99b872-77c7-4471-9c44-a36d4ff5d33f.jpg?1604193539"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcane Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d1ffeb1-6c31-45f7-8140-913c397022a3.jpg?1562439019", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d1ffeb1-6c31-45f7-8140-913c397022a3.jpg?1562439019"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Arcane Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/ab175817-da6a-4ae7-a016-c3bfb087eae0.jpg?1562931100", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/ab175817-da6a-4ae7-a016-c3bfb087eae0.jpg?1562931100"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Arcane Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b0c5728e-43e7-417a-ba18-5038345cec67.jpg?1562770144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b0c5728e-43e7-417a-ba18-5038345cec67.jpg?1562770144"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcane Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/415a3104-90e6-4235-b67f-69337c7fe714.jpg?1562768258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/415a3104-90e6-4235-b67f-69337c7fe714.jpg?1562768258"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Archmage's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/57b852b6-4388-4a41-a5c0-bba37a5c1451.jpg?1562201300", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/57b852b6-4388-4a41-a5c0-bba37a5c1451.jpg?1562201300"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Archmage's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d378f4f8-ff9f-4389-86c8-23c5c4990b4c.jpg?1657849868", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d378f4f8-ff9f-4389-86c8-23c5c4990b4c.jpg?1657849868"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Artifact Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/1506d99d-7b2e-4101-84a5-c950dadb263a.jpg?1562899411", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/1506d99d-7b2e-4101-84a5-c950dadb263a.jpg?1562899411"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assert Authority", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc339ed7-e1d4-4fe9-a4c4-b030d3e74c00.jpg?1562163986", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc339ed7-e1d4-4fe9-a4c4-b030d3e74c00.jpg?1562163986"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Avoid Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92f1509e-6ed5-4009-a031-ea84b43cbd1b.jpg?1562859699", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92f1509e-6ed5-4009-a031-ea84b43cbd1b.jpg?1562859699"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bane's Contingency", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19f81099-f657-4f7d-84ad-f472ae87d9c5.jpg?1653844052", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19f81099-f657-4f7d-84ad-f472ae87d9c5.jpg?1653844052"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Bant Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65b65c87-b084-44aa-b841-411a3c73e234.jpg?1562704776", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65b65c87-b084-44aa-b841-411a3c73e234.jpg?1562704776"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bar the Gate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9b1e53f-1384-4860-9944-e68922afc65c.jpg?1627702860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9b1e53f-1384-4860-9944-e68922afc65c.jpg?1627702860"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cfa51783-9ef8-4e51-ba0d-ce8439d83bdf.jpg?1562936749", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cfa51783-9ef8-4e51-ba0d-ce8439d83bdf.jpg?1562936749"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bind to Secrecy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/bab838e0-cfc5-4eeb-920d-bfbe462a1e31.jpg?1655963915", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/bab838e0-cfc5-4eeb-920d-bfbe462a1e31.jpg?1655963915"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Blue Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2f51f88f-f662-4572-a371-9a77718ed079.jpg?1562434032", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2f51f88f-f662-4572-a371-9a77718ed079.jpg?1562434032"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Blue Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20d666ef-39bf-4fbf-8201-5f1056539da2.jpg?1559591462", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20d666ef-39bf-4fbf-8201-5f1056539da2.jpg?1559591462"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Blue Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/6582b980-3e4b-422a-9a6c-1927ae966d7e.jpg?1561757308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/6582b980-3e4b-422a-9a6c-1927ae966d7e.jpg?1561757308"}, "reprint": true, "digital": false, "set_type": "spellbook"}, {"name": "Blue Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a671237a-f895-4bbc-b6bd-b0eed4502ec5.jpg?1562547160", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a671237a-f895-4bbc-b6bd-b0eed4502ec5.jpg?1562547160"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Bone to Ash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c4a75cef-9551-45e2-b1ff-80662c76ec20.jpg?1562941461", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c4a75cef-9551-45e2-b1ff-80662c76ec20.jpg?1562941461"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Broken Ambitions", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/8052d90b-bc49-4a9e-9211-159a54aa2bcd.jpg?1562355294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/8052d90b-bc49-4a9e-9211-159a54aa2bcd.jpg?1562355294"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Broken Concentration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/252eef1f-0a62-420d-aad8-e3d7f1e07c1b.jpg?1576383988", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/252eef1f-0a62-420d-aad8-e3d7f1e07c1b.jpg?1576383988"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brokers Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/657ff5fc-1a95-46f9-85f7-fc1ad757c8c4.jpg?1650506185", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/657ff5fc-1a95-46f9-85f7-fc1ad757c8c4.jpg?1650506185"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Brutal Expulsion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0cd0e11a-0398-431b-b523-9d3c8a0155cb.jpg?1562132495", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0cd0e11a-0398-431b-b523-9d3c8a0155cb.jpg?1562132495"}, "reprint": true, "frame_effects": ["devoid"], "digital": false, "set_type": "promo"}, {"name": "Burnout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a8f5a18-e490-4010-ac1c-c74a5f2dcbda.jpg?1562768717", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a8f5a18-e490-4010-ac1c-c74a5f2dcbda.jpg?1562768717"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Calculated Dismissal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c42ab35-6050-42b2-9c3c-3252f2e69442.jpg?1562012331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c42ab35-6050-42b2-9c3c-3252f2e69442.jpg?1562012331"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cf6e5ad6-ffe2-4588-b357-c415c33fbc11.jpg?1562564222", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cf6e5ad6-ffe2-4588-b357-c415c33fbc11.jpg?1562564222"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7258e651-868a-4f63-9454-6c6c95d25387.jpg?1543674894", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7258e651-868a-4f63-9454-6c6c95d25387.jpg?1543674894"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f540dcb-8d0b-4d33-8c0d-893fa5db54eb.jpg?1562791164", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f540dcb-8d0b-4d33-8c0d-893fa5db54eb.jpg?1562791164"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/d/fd994a26-65ff-43be-8d52-476e887d3ed2.jpg?1562795930", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/d/fd994a26-65ff-43be-8d52-476e887d3ed2.jpg?1562795930"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e557f54-3d9d-4610-a0d0-5874feacc76e.jpg?1562614848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e557f54-3d9d-4610-a0d0-5874feacc76e.jpg?1562614848"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/479f56c2-8256-4325-909a-bf460505dbc5.jpg?1562703421", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/479f56c2-8256-4325-909a-bf460505dbc5.jpg?1562703421"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4e175f7-f649-451b-9ee5-ad1140b2e8a7.jpg?1562933181", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4e175f7-f649-451b-9ee5-ad1140b2e8a7.jpg?1562933181"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cancel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc4d6368-03dc-488a-9a6b-07a549a87572.jpg?1561757939", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc4d6368-03dc-488a-9a6b-07a549a87572.jpg?1561757939"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Censor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4cb4e315-1a77-479a-9f15-fb23575de805.jpg?1543674908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4cb4e315-1a77-479a-9f15-fb23575de805.jpg?1543674908"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ceremonious Rejection", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08c5ed8e-4804-4042-8a1d-ad24c6846816.jpg?1576381129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08c5ed8e-4804-4042-8a1d-ad24c6846816.jpg?1576381129"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Circular Logic", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd9198d6-201d-4175-8f70-eef92d7d5bb5.jpg?1562632085", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd9198d6-201d-4175-8f70-eef92d7d5bb5.jpg?1562632085"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Clash of Wills", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/665ee42f-8d76-4f8b-9dd3-7455a90f0da7.jpg?1562023499", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/665ee42f-8d76-4f8b-9dd3-7455a90f0da7.jpg?1562023499"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Clash of Wills", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c67ab53-9489-4658-859e-9dd8a6e0f20d.jpg?1562636752", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c67ab53-9489-4658-859e-9dd8a6e0f20d.jpg?1562636752"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Complicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33f69670-e494-42b8-9148-fe105ec61aa0.jpg?1562907165", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33f69670-e494-42b8-9148-fe105ec61aa0.jpg?1562907165"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Concerted Defense", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/235c108d-3902-4c2e-919c-a5449cd2dc3c.jpg?1604193820", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/235c108d-3902-4c2e-919c-a5449cd2dc3c.jpg?1604193820"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Condescend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5ba16c0f-dd42-4a2a-8f08-bc8c8478952b.jpg?1562849378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5ba16c0f-dd42-4a2a-8f08-bc8c8478952b.jpg?1562849378"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Condescend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e8303b80-e29a-46b8-90b0-c0cfe551b435.jpg?1562880436", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e8303b80-e29a-46b8-90b0-c0cfe551b435.jpg?1562880436"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Confirm Suspicions", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cf7fcbc2-1034-442d-9f2a-7d79ea40ac3d.jpg?1576384007", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cf7fcbc2-1034-442d-9f2a-7d79ea40ac3d.jpg?1576384007"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Confound", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4f3b7d39-ce98-48e2-b2bf-0d55b4d3102b.jpg?1562911605", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4f3b7d39-ce98-48e2-b2bf-0d55b4d3102b.jpg?1562911605"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Contradict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/0/a0b3d4ff-09d1-4d9f-8c83-cdfbd7bb1079.jpg?1562790758", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/0/a0b3d4ff-09d1-4d9f-8c83-cdfbd7bb1079.jpg?1562790758"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Controvert", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0e670f6b-d16e-47fc-a5b7-7ca0d8763644.jpg?1593274904", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0e670f6b-d16e-47fc-a5b7-7ca0d8763644.jpg?1593274904"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Convolute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3fd8e607-8179-4ae8-ba7f-f5f22649dc18.jpg?1591230479", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3fd8e607-8179-4ae8-ba7f-f5f22649dc18.jpg?1591230479"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Convolute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e17cf756-ec41-4934-8906-4276277c1470.jpg?1576384056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e17cf756-ec41-4934-8906-4276277c1470.jpg?1576384056"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Convolute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fac88052-96a3-4a4d-95a2-c5a652fcb275.jpg?1598914075", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fac88052-96a3-4a4d-95a2-c5a652fcb275.jpg?1598914075"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corrupted Resolve", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28432161-023b-4a98-b92a-55dc6d936cd1.jpg?1562876198", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28432161-023b-4a98-b92a-55dc6d936cd1.jpg?1562876198"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Counterbore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f4228b80-d87d-4ebe-ae92-04e4a7d0dc43.jpg?1562838120", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f4228b80-d87d-4ebe-ae92-04e4a7d0dc43.jpg?1562838120"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Counterflux", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/94e4b773-40a4-4272-85dd-f728ada22748.jpg?1562790128", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/94e4b773-40a4-4272-85dd-f728ada22748.jpg?1562790128"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Counterflux", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e864fd80-baee-468e-9dc3-e650cc203b23.jpg?1657120160", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e864fd80-baee-468e-9dc3-e650cc203b23.jpg?1657120160"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Counterlash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3ec2c57-8e67-472d-8f2e-0492d311f130.jpg?1562945498", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3ec2c57-8e67-472d-8f2e-0492d311f130.jpg?1562945498"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Countermand", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07815e32-0b64-4c2b-84e6-a72336c45cf5.jpg?1593095401", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07815e32-0b64-4c2b-84e6-a72336c45cf5.jpg?1593095401"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c9a7cb0-5bff-48ff-b620-2838816ac9b5.jpg?1580013910", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c9a7cb0-5bff-48ff-b620-2838816ac9b5.jpg?1580013910"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/1/71cfcba5-1571-48b8-a3db-55dca135506e.jpg?1562843855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/71cfcba5-1571-48b8-a3db-55dca135506e.jpg?1562843855"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29bb1b85-9444-4bfa-b622-092a6873631c.jpg?1562234566", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29bb1b85-9444-4bfa-b622-092a6873631c.jpg?1562234566"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7bd03c80-7812-4704-9e07-9cf73b49c01f.jpg?1562381815", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7bd03c80-7812-4704-9e07-9cf73b49c01f.jpg?1562381815"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/dacdd380-71cf-4832-bd02-3697501325f3.jpg?1562056885", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/dacdd380-71cf-4832-bd02-3697501325f3.jpg?1562056885"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b975289d-d8b8-46b4-8c60-d6ed4b594519.jpg?1562593755", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b975289d-d8b8-46b4-8c60-d6ed4b594519.jpg?1562593755"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/aedbcbaa-40f0-485f-8427-778edc2d2ec0.jpg?1562927522", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/aedbcbaa-40f0-485f-8427-778edc2d2ec0.jpg?1562927522"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0df55e3f-14de-46ef-b6b1-616618724d9e.jpg?1559591713", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0df55e3f-14de-46ef-b6b1-616618724d9e.jpg?1559591713"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f35ec9da-f38b-4b7f-9eb5-090ca7755668.jpg?1645141660", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f35ec9da-f38b-4b7f-9eb5-090ca7755668.jpg?1645141660"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c358d75-01ad-4487-8104-425124b96aae.jpg?1628337127", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c358d75-01ad-4487-8104-425124b96aae.jpg?1628337127"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "draft_innovation"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ffdf9d2a-c163-43df-9a2f-20b8749c86ae.jpg?1631491044", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ffdf9d2a-c163-43df-9a2f-20b8749c86ae.jpg?1631491044"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/3126d20f-1082-4ebc-b2fa-b12be3ba1bac.jpg?1562904991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/3126d20f-1082-4ebc-b2fa-b12be3ba1bac.jpg?1562904991"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Counterspell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/7065deea-6117-47d4-9d72-fc67af5bb483.jpg?1561757383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/7065deea-6117-47d4-9d72-fc67af5bb483.jpg?1561757383"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Countersquall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b645d74-420e-45e5-aa82-ba3a8dfdd9a0.jpg?1562905206", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b645d74-420e-45e5-aa82-ba3a8dfdd9a0.jpg?1562905206"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Countersquall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec16e216-95e1-41f7-87e0-78b6ac3fe1df.jpg?1562804491", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec16e216-95e1-41f7-87e0-78b6ac3fe1df.jpg?1562804491"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Countervailing Winds", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de1c0ef3-b32c-403a-93cb-29cf05795711.jpg?1562817497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de1c0ef3-b32c-403a-93cb-29cf05795711.jpg?1562817497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crush Dissent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/94c70f23-0ca9-425e-a53a-6c09921c0075.jpg?1557576187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/94c70f23-0ca9-425e-a53a-6c09921c0075.jpg?1557576187"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cryptic Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/30f6fca9-003b-4f6b-9d6e-1e88adda4155.jpg?1562847413", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/30f6fca9-003b-4f6b-9d6e-1e88adda4155.jpg?1562847413"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Cryptic Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/829e3d6e-5d7c-4cc4-a7a6-7cbf5a7442ba.jpg?1562355759", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/829e3d6e-5d7c-4cc4-a7a6-7cbf5a7442ba.jpg?1562355759"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cryptic Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2a384c1-a05f-4f00-bd77-f897d9819971.jpg?1562927862", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2a384c1-a05f-4f00-bd77-f897d9819971.jpg?1562927862"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Cryptic Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/526607e9-1907-4639-b944-8ee152c81bfb.jpg?1561757137", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/526607e9-1907-4639-b944-8ee152c81bfb.jpg?1561757137"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Dash Hopes", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/814bcfc0-7539-4ed9-8b51-27e6a3ab9d9a.jpg?1562575740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/814bcfc0-7539-4ed9-8b51-27e6a3ab9d9a.jpg?1562575740"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dawn Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/4/a4c9667b-1d94-42eb-ae8e-1ae4755e200a.jpg?1562578420", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/4/a4c9667b-1d94-42eb-ae8e-1ae4755e200a.jpg?1562578420"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Daze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f05e9a3e-8a35-4687-85cb-e31b3927a5e2.jpg?1580013916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f05e9a3e-8a35-4687-85cb-e31b3927a5e2.jpg?1580013916"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Daze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/0/d03bff25-0d5e-4dcf-8d75-6df846afea3b.jpg?1562632115", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/0/d03bff25-0d5e-4dcf-8d75-6df846afea3b.jpg?1562632115"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Daze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9b037f1-3298-4ba8-92a8-0843f6e497d7.jpg?1562929191", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9b037f1-3298-4ba8-92a8-0843f6e497d7.jpg?1562929191"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Decisive Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b2e9d132-95f7-4ee7-9c91-be19e4ad7a5d.jpg?1627428577", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b2e9d132-95f7-4ee7-9c91-be19e4ad7a5d.jpg?1627428577"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Delay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/3906d538-f1ca-4799-b91c-2e0d2934f241.jpg?1619393997", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/3906d538-f1ca-4799-b91c-2e0d2934f241.jpg?1619393997"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Delay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e821d337-4bc5-4401-ac9b-34adf4012b73.jpg?1562941573", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e821d337-4bc5-4401-ac9b-34adf4012b73.jpg?1562941573"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Denied!", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1285c125-e145-4565-a029-352ac6adf688.jpg?1562799062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1285c125-e145-4565-a029-352ac6adf688.jpg?1562799062"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Deny Existence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16a14eeb-1c85-4029-a047-39a4efef3f74.jpg?1576384025", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16a14eeb-1c85-4029-a047-39a4efef3f74.jpg?1576384025"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deny the Divine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1200f68a-a8ea-4777-b6b0-de48b2203fd1.jpg?1588900840", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1200f68a-a8ea-4777-b6b0-de48b2203fd1.jpg?1588900840"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deprive", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2efecdd9-bd3a-4b79-92da-6485589d5bde.jpg?1562702470", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2efecdd9-bd3a-4b79-92da-6485589d5bde.jpg?1562702470"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Desertion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/a/9a2a1779-af08-4a9a-aba4-e6892ce2332c.jpg?1562278155", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/a/9a2a1779-af08-4a9a-aba4-e6892ce2332c.jpg?1562278155"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devious Cover-Up", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/648281fe-89fb-4d8d-b944-3af28fb044f6.jpg?1634348751", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/648281fe-89fb-4d8d-b944-3af28fb044f6.jpg?1634348751"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Devious Cover-Up", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21ac6b0a-b1a5-439d-b65e-5f04e1826c80.jpg?1636491628", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21ac6b0a-b1a5-439d-b65e-5f04e1826c80.jpg?1636491628"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Didn't Say Please", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77500b53-0852-4d6a-bfe3-b1e8ef5a12cd.jpg?1572489858", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77500b53-0852-4d6a-bfe3-b1e8ef5a12cd.jpg?1572489858"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dimir Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3f4cfa7-8ee4-4a85-9e6a-65a7541f62c1.jpg?1561852231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3f4cfa7-8ee4-4a85-9e6a-65a7541f62c1.jpg?1561852231"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dimir Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f6bc1da-3969-4f19-b072-4ed79f906fef.jpg?1562497257", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f6bc1da-3969-4f19-b072-4ed79f906fef.jpg?1562497257"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Disallow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25f05814-a5a5-460f-9d29-0ab03efecf4c.jpg?1576381471", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25f05814-a5a5-460f-9d29-0ab03efecf4c.jpg?1576381471"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disappearing Act", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/a/9a4a6d56-9bed-444c-aae8-383c315779a0.jpg?1576381158", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/a/9a4a6d56-9bed-444c-aae8-383c315779a0.jpg?1576381158"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Discombobulate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/cef584c5-6e2d-419b-9c11-a1b6c9c9ab2a.jpg?1562943839", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/cef584c5-6e2d-419b-9c11-a1b6c9c9ab2a.jpg?1562943839"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Discontinuity", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b33ba0a8-04e9-4df6-af20-a3ca4470cdcc.jpg?1594735451", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b33ba0a8-04e9-4df6-af20-a3ca4470cdcc.jpg?1594735451"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Disdainful Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/492aa24c-61c4-48bc-b7b7-f423be2662da.jpg?1649881231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/492aa24c-61c4-48bc-b7b7-f423be2662da.jpg?1649881231"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Disdainful Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/7691ac89-f8ba-493e-aa11-5674a783dffb.jpg?1631047007", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/7691ac89-f8ba-493e-aa11-5674a783dffb.jpg?1631047007"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Disdainful Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0193dfa3-8409-44be-b4be-6c3cad42d4a4.jpg?1572892724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0193dfa3-8409-44be-b4be-6c3cad42d4a4.jpg?1572892724"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Disdainful Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/8/180425c9-1898-48d4-9932-ddfb1a28e6b0.jpg?1562783110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/8/180425c9-1898-48d4-9932-ddfb1a28e6b0.jpg?1562783110"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disdainful Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/3711f61d-6381-4c92-a3f5-6deed29aae47.jpg?1562639749", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/3711f61d-6381-4c92-a3f5-6deed29aae47.jpg?1562639749"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Dismal Failure", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35786a7a-faa6-457d-9b92-da560b93a43a.jpg?1562569290", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35786a7a-faa6-457d-9b92-da560b93a43a.jpg?1562569290"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dismiss", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e55d6be-7682-4786-9872-e847afd710b0.jpg?1562052798", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e55d6be-7682-4786-9872-e847afd710b0.jpg?1562052798"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dispel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bceab6b3-6b64-4964-a501-ce806a6c13ad.jpg?1562939587", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bceab6b3-6b64-4964-a501-ce806a6c13ad.jpg?1562939587"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dispel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08d4a8d7-c136-472f-8146-a1100701ca4f.jpg?1562782227", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08d4a8d7-c136-472f-8146-a1100701ca4f.jpg?1562782227"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dispel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f178d0cc-5dd1-41ab-a2e8-218ece6f2a86.jpg?1562299138", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f178d0cc-5dd1-41ab-a2e8-218ece6f2a86.jpg?1562299138"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dispersal Shield", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c257df6-f275-40db-bfe3-a9291356cdf7.jpg?1562525399", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c257df6-f275-40db-bfe3-a9291356cdf7.jpg?1562525399"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disrupt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c000a02f-6b7e-4925-a938-59e645e980d7.jpg?1562933600", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c000a02f-6b7e-4925-a938-59e645e980d7.jpg?1562933600"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Disrupt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c6cc89b0-9acf-452b-ac1a-bc7e90eb32fc.jpg?1562803281", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c6cc89b0-9acf-452b-ac1a-bc7e90eb32fc.jpg?1562803281"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disrupting Shoal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/15589745-4c0a-4edf-ad45-3b7fa45e70c5.jpg?1562875608", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/15589745-4c0a-4edf-ad45-3b7fa45e70c5.jpg?1562875608"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disruption Protocol", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/053ab598-06a4-43ae-b9fd-c291bd05642c.jpg?1654566666", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/053ab598-06a4-43ae-b9fd-c291bd05642c.jpg?1654566666"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dissipate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/4689b3f2-e4b7-448e-b3d4-ab33194aafb2.jpg?1634348774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/4689b3f2-e4b7-448e-b3d4-ab33194aafb2.jpg?1634348774"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dissipate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d778082-bcdb-423a-b16f-57ac0d4dace7.jpg?1562830916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d778082-bcdb-423a-b16f-57ac0d4dace7.jpg?1562830916"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dissipate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36d9271d-6dbf-4640-9222-721a7a3ccc08.jpg?1562718782", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36d9271d-6dbf-4640-9222-721a7a3ccc08.jpg?1562718782"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dissolve", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/992e8119-f933-4e54-bb04-e1cc78f7e87b.jpg?1562821811", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/992e8119-f933-4e54-bb04-e1cc78f7e87b.jpg?1562821811"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dissolve", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2068083-5d53-43c3-af22-79bf617ccf1b.jpg?1562640127", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2068083-5d53-43c3-af22-79bf617ccf1b.jpg?1562640127"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Divide by Zero", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/1958d96e-ec44-48ab-80b1-5b01a24ac7b8.jpg?1644607565", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/1958d96e-ec44-48ab-80b1-5b01a24ac7b8.jpg?1644607565"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Double Negative", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c7e3c58-3cda-4891-8b3d-33bb21568cf5.jpg?1562640325", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c7e3c58-3cda-4891-8b3d-33bb21568cf5.jpg?1562640325"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dovin's Veto", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d60ca98f-7f91-4bbd-9d06-dadb0c1da282.jpg?1570573658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d60ca98f-7f91-4bbd-9d06-dadb0c1da282.jpg?1570573658"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Dream Fracture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/daca6a57-38b7-4547-9174-a7f548ea1258.jpg?1653691053", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/daca6a57-38b7-4547-9174-a7f548ea1258.jpg?1653691053"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Dream Fracture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4cfd71ff-d899-4f5b-b7df-ec47e2840be9.jpg?1562911180", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4cfd71ff-d899-4f5b-b7df-ec47e2840be9.jpg?1562911180"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dromar's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/69f752d3-3f42-4275-be09-d257c89da70d.jpg?1562917160", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/69f752d3-3f42-4275-be09-d257c89da70d.jpg?1562917160"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Dromar's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/7/c7a1894c-af4e-4530-960f-2225916be8cb.jpg?1562937176", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/7/c7a1894c-af4e-4530-960f-2225916be8cb.jpg?1562937176"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in the Loch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8bf5df5b-164d-4ec2-a5e6-bbaea152e271.jpg?1572490739", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8bf5df5b-164d-4ec2-a5e6-bbaea152e271.jpg?1572490739"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in the Loch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01acd1c1-86b2-4423-9ba7-5b9725c0514f.jpg?1640249448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01acd1c1-86b2-4423-9ba7-5b9725c0514f.jpg?1640249448"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Endless Detour", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/13798c8c-1aa5-4f95-979b-b971e73d715f.jpg?1649942599", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/13798c8c-1aa5-4f95-979b-b971e73d715f.jpg?1649942599"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Endless Detour", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e55503d2-1b32-43cf-95c6-a4a61047a4dc.jpg?1649942620", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e55503d2-1b32-43cf-95c6-a4a61047a4dc.jpg?1649942620"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Envelop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e7ed250e-12d0-4ebc-9410-5711e71c6d1f.jpg?1562632433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e7ed250e-12d0-4ebc-9410-5711e71c6d1f.jpg?1562632433"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ertai's Meddling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35c7e7fa-1493-4ef8-9cdb-b02b07a1ad85.jpg?1562053736", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35c7e7fa-1493-4ef8-9cdb-b02b07a1ad85.jpg?1562053736"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ertai's Trickery", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/544e3575-9fb6-41f7-a4e6-f8460dfae344.jpg?1562912607", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/544e3575-9fb6-41f7-a4e6-f8460dfae344.jpg?1562912607"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Backlash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a98609dc-ea90-4c7e-a191-5e5d0ba16847.jpg?1562791298", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a98609dc-ea90-4c7e-a191-5e5d0ba16847.jpg?1562791298"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Capture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f39bf1fa-b530-4353-a683-843466227109.jpg?1654566672", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f39bf1fa-b530-4353-a683-843466227109.jpg?1654566672"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Essence Capture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce137910-0f0e-4f94-9b95-6e0eeeba164e.jpg?1584830187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce137910-0f0e-4f94-9b95-6e0eeeba164e.jpg?1584830187"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Scatter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f79c8a0-291e-4e13-b765-4cf8c726cf30.jpg?1636491405", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f79c8a0-291e-4e13-b765-4cf8c726cf30.jpg?1636491405"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Essence Scatter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1e325e1-f1f9-4448-84e3-1fd929b0bc12.jpg?1543674950", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1e325e1-f1f9-4448-84e3-1fd929b0bc12.jpg?1543674950"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Essence Scatter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c231101e-6620-46fc-a0ad-a53291d12dc2.jpg?1561994248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c231101e-6620-46fc-a0ad-a53291d12dc2.jpg?1561994248"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Evasive Action", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d0b4f29-ada4-41d2-8292-b5af537c6fd2.jpg?1562916923", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d0b4f29-ada4-41d2-8292-b5af537c6fd2.jpg?1562916923"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Exclude", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a1a50f54-6363-41dd-88a7-9f9e820e7d5f.jpg?1562439432", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a1a50f54-6363-41dd-88a7-9f9e820e7d5f.jpg?1562439432"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Exclude", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/970864e0-5488-4b6f-9316-3e3b4098770e.jpg?1561951119", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/970864e0-5488-4b6f-9316-3e3b4098770e.jpg?1561951119"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Exclude", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/aeb359c8-209c-455f-84b2-970e5678a9fa.jpg?1562930137", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/aeb359c8-209c-455f-84b2-970e5678a9fa.jpg?1562930137"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinguish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21140417-09f5-4d05-b94c-355fde9b4719.jpg?1562255853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21140417-09f5-4d05-b94c-355fde9b4719.jpg?1562255853"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Extinguish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/641f4e66-b46b-4da3-a053-f3763400d4f5.jpg?1562918557", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/641f4e66-b46b-4da3-a053-f3763400d4f5.jpg?1562918557"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Faerie Trickery", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/defb9f0b-195e-4aeb-92c1-8f827ad6724b.jpg?1562371108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/defb9f0b-195e-4aeb-92c1-8f827ad6724b.jpg?1562371108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Failed Inspection", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8900f91-cb17-4f99-a5ce-15819369beb8.jpg?1576381199", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8900f91-cb17-4f99-a5ce-15819369beb8.jpg?1576381199"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fall of the Gavel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64f42848-963b-4b16-aeec-66d0f349758b.jpg?1562787318", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64f42848-963b-4b16-aeec-66d0f349758b.jpg?1562787318"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "False Summoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd7d30a8-bc7a-42bc-8d1b-600cbf78ab98.jpg?1562943500", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd7d30a8-bc7a-42bc-8d1b-600cbf78ab98.jpg?1562943500"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Familiar's Ruse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55b9be91-f3a1-49ce-8a3e-2ecd30e2e692.jpg?1562348978", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55b9be91-f3a1-49ce-8a3e-2ecd30e2e692.jpg?1562348978"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fervent Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b15428e-946e-490d-93bb-9888bfd3a1df.jpg?1568003997", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b15428e-946e-490d-93bb-9888bfd3a1df.jpg?1568003997"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Fervent Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed13fdb4-f28a-43c9-a69f-bab227806c39.jpg?1562939482", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed13fdb4-f28a-43c9-a69f-bab227806c39.jpg?1562939482"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Fierce Guardianship", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c5ffa83-c88d-4f5d-851e-a642b229d596.jpg?1591319453", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c5ffa83-c88d-4f5d-851e-a642b229d596.jpg?1591319453"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Flaccify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/409cb48a-572a-40df-ae1a-a43feab6bdfd.jpg?1562487932", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/409cb48a-572a-40df-ae1a-a43feab6bdfd.jpg?1562487932"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Flash Counter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dc14e61f-481a-4bfa-aca0-fb63dc952be6.jpg?1562939250", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dc14e61f-481a-4bfa-aca0-fb63dc952be6.jpg?1562939250"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Flash Counter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c3cd450-f1cd-416b-9271-37d95815c089.jpg?1587858200", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c3cd450-f1cd-416b-9271-37d95815c089.jpg?1587858200"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flashfreeze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/cefd9955-a195-4855-a00e-3809b96ca92b.jpg?1593274923", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/cefd9955-a195-4855-a00e-3809b96ca92b.jpg?1593274923"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flip the Switch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/c/5cdbe4e3-f030-46fa-ae84-edf261b61706.jpg?1634348893", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/c/5cdbe4e3-f030-46fa-ae84-edf261b61706.jpg?1634348893"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flusterstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e2e09bf-e7c8-4f13-bcee-f9c8cbc57993.jpg?1592713006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e2e09bf-e7c8-4f13-bcee-f9c8cbc57993.jpg?1592713006"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Flusterstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c2077c2-81ce-4ddf-82f0-6fece362d6d7.jpg?1562546827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c2077c2-81ce-4ddf-82f0-6fece362d6d7.jpg?1562546827"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Foil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e8b39fd6-9240-4f76-b12c-e7d9aa88f061.jpg?1547516254", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e8b39fd6-9240-4f76-b12c-e7d9aa88f061.jpg?1547516254"}, "reprint": true, "digital": false, "set_type": "masters"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/counterspell2.json b/web/public/mtg/jsons/counterspell2.json new file mode 100644 index 00000000..e32ed2c7 --- /dev/null +++ b/web/public/mtg/jsons/counterspell2.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Foil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/870fb793-3107-4cb2-ba78-34fbf5c9da2f.jpg?1562920018", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/870fb793-3107-4cb2-ba78-34fbf5c9da2f.jpg?1562920018"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fold into Aether", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/615157d6-0160-417b-b06c-0e253b306c37.jpg?1562877336", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/615157d6-0160-417b-b06c-0e253b306c37.jpg?1562877336"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Forbid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29df5ef7-d679-4543-bdb7-3984155c87e0.jpg?1562087370", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29df5ef7-d679-4543-bdb7-3984155c87e0.jpg?1562087370"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Forbid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/14a9cc52-a45b-4cde-8aff-d672b35c3118.jpg?1562899128", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/14a9cc52-a45b-4cde-8aff-d672b35c3118.jpg?1562899128"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Forceful Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27c75157-2670-4804-8853-a6867c83c40a.jpg?1608909212", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27c75157-2670-4804-8853-a6867c83c40a.jpg?1608909212"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Force of Negation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9be371c-c688-44ad-ab71-bd4c9f242d58.jpg?1562201382", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9be371c-c688-44ad-ab71-bd4c9f242d58.jpg?1562201382"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Force of Negation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/5396b405-6fa0-43d7-a8f6-f64154e95e98.jpg?1655823932", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/5396b405-6fa0-43d7-a8f6-f64154e95e98.jpg?1655823932"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Force of Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/ebc01ab4-d89a-4d25-bf54-6aed33772f4b.jpg?1580013954", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/ebc01ab4-d89a-4d25-bf54-6aed33772f4b.jpg?1580013954"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Force of Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/a/9a879b60-4381-447d-8a5a-8e0b6a1d49ca.jpg?1562769672", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/a/9a879b60-4381-447d-8a5a-8e0b6a1d49ca.jpg?1562769672"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Force of Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec136ce7-bad4-4ebb-ab00-b86de3d209a7.jpg?1599710933", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec136ce7-bad4-4ebb-ab00-b86de3d209a7.jpg?1599710933"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Force of Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/026983a4-03ca-4812-b129-5ea523596942.jpg?1562895460", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/026983a4-03ca-4812-b129-5ea523596942.jpg?1562895460"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Force of Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/53ed5673-728f-4da3-ad18-3bd72032e815.jpg?1562258455", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/53ed5673-728f-4da3-ad18-3bd72032e815.jpg?1562258455"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Force Spike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d03d73f-0530-4125-8689-1c43e502e331.jpg?1562233829", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d03d73f-0530-4125-8689-1c43e502e331.jpg?1562233829"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Force Spike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba23d540-8c2d-4a42-b4c0-86f0988bd1ce.jpg?1562593757", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba23d540-8c2d-4a42-b4c0-86f0988bd1ce.jpg?1562593757"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Force Spike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70e64028-ae96-4950-aa6c-9d347409fad3.jpg?1562859654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70e64028-ae96-4950-aa6c-9d347409fad3.jpg?1562859654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Force Void", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/226555ba-22af-45f1-a3f4-d265f8685dd5.jpg?1587911634", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/226555ba-22af-45f1-a3f4-d265f8685dd5.jpg?1587911634"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frazzle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68b7f705-4d64-4551-8d76-826d91324e9e.jpg?1593271993", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68b7f705-4d64-4551-8d76-826d91324e9e.jpg?1593271993"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frightful Delusion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/38c9ba98-90b4-4c28-9eef-a4fe0913b921.jpg?1562828708", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/38c9ba98-90b4-4c28-9eef-a4fe0913b921.jpg?1562828708"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fuel for the Cause", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/4126e0e5-9b23-496f-8a09-7a35499f9a09.jpg?1562610827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/4126e0e5-9b23-496f-8a09-7a35499f9a09.jpg?1562610827"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gainsay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e658939a-fa5a-4497-b35c-b6fbfa3f6882.jpg?1562835545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e658939a-fa5a-4497-b35c-b6fbfa3f6882.jpg?1562835545"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Gainsay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a70a2092-5048-49c0-9351-a3f882c2f56e.jpg?1562930170", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a70a2092-5048-49c0-9351-a3f882c2f56e.jpg?1562930170"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gale's Redirection", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/f/1f5ddcf8-c87b-4a26-b226-8593f517a74a.jpg?1653353395", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/f/1f5ddcf8-c87b-4a26-b226-8593f517a74a.jpg?1653353395"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Geistlight Snare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/7302b5da-cac5-4ce7-ad38-2ff4e410891b.jpg?1643587841", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/7302b5da-cac5-4ce7-ad38-2ff4e410891b.jpg?1643587841"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Geist Snatch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6dac5db-ef96-4bd5-aabc-e5ae2b95c8c3.jpg?1592708554", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6dac5db-ef96-4bd5-aabc-e5ae2b95c8c3.jpg?1592708554"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glorious End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/2922b976-7beb-4c68-b39e-1b66d5c6f65e.jpg?1543675588", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/2922b976-7beb-4c68-b39e-1b66d5c6f65e.jpg?1543675588"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grip of Amnesia", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43dc7e2a-5b9b-4f0f-8b2e-a7c7f847e1f1.jpg?1562629609", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43dc7e2a-5b9b-4f0f-8b2e-a7c7f847e1f1.jpg?1562629609"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guttural Response", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/9121e55e-5070-48cc-b706-92c67ad89254.jpg?1592761849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/9121e55e-5070-48cc-b706-92c67ad89254.jpg?1592761849"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Guttural Response", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0662ab6-b475-4b8d-ae77-a9b654e611da.jpg?1562837134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0662ab6-b475-4b8d-ae77-a9b654e611da.jpg?1562837134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Halt Order", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fed18af-7301-4d03-ba7c-e94f07f078b3.jpg?1562819574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fed18af-7301-4d03-ba7c-e94f07f078b3.jpg?1562819574"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hinder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dc7befed-805b-4a02-a87d-7df3a95db8a0.jpg?1562765119", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dc7befed-805b-4a02-a87d-7df3a95db8a0.jpg?1562765119"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hinder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/679d6226-7ec1-44f3-ac90-30b123501aa0.jpg?1561757329", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/679d6226-7ec1-44f3-ac90-30b123501aa0.jpg?1561757329"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Hindering Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98e43870-4bed-4d76-a633-a6326c736d22.jpg?1562706936", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98e43870-4bed-4d76-a633-a6326c736d22.jpg?1562706936"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hindering Touch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db9735d9-4aac-4175-8ec8-fc9bfd8f2c5c.jpg?1562535667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db9735d9-4aac-4175-8ec8-fc9bfd8f2c5c.jpg?1562535667"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hisoka's Defiance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/09fd4d01-1204-46a3-b237-45c37985acac.jpg?1562757466", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/09fd4d01-1204-46a3-b237-45c37985acac.jpg?1562757466"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hornswoggle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/1/b10b8f15-b323-44d8-85a7-ed662a40889d.jpg?1555039907", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/1/b10b8f15-b323-44d8-85a7-ed662a40889d.jpg?1555039907"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Horribly Awry", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4cd05532-686e-40dc-858b-8a77a3628c99.jpg?1562912968", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4cd05532-686e-40dc-858b-8a77a3628c99.jpg?1562912968"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Hydroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c9c9b16-5567-4473-95e6-622292f77336.jpg?1580013995", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c9c9b16-5567-4473-95e6-622292f77336.jpg?1580013995"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Hydroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f62716f0-fde2-49ef-b8a4-c1b03f451194.jpg?1562941220", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f62716f0-fde2-49ef-b8a4-c1b03f451194.jpg?1562941220"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hydroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/222db3a6-c2b1-48fc-9b0c-018ac6ed517b.jpg?1562543501", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/222db3a6-c2b1-48fc-9b0c-018ac6ed517b.jpg?1562543501"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Illumination", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb28f6e5-c9ef-416e-b315-967d857e7600.jpg?1562722393", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb28f6e5-c9ef-416e-b315-967d857e7600.jpg?1562722393"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Induce Paranoia", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc462b75-8b08-47a3-be22-d7b5c062ec5b.jpg?1598914307", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc462b75-8b08-47a3-be22-d7b5c062ec5b.jpg?1598914307"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Insidious Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8eafb2bb-58bf-4c6b-ae8f-91bcea12c7d2.jpg?1576381260", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8eafb2bb-58bf-4c6b-ae8f-91bcea12c7d2.jpg?1576381260"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Interdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/3442c919-73b9-4d29-a014-87293f456325.jpg?1562053290", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/3442c919-73b9-4d29-a014-87293f456325.jpg?1562053290"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Intervene", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b0e3894-5dfe-4d03-9996-eebf96c58168.jpg?1562862808", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b0e3894-5dfe-4d03-9996-eebf96c58168.jpg?1562862808"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Invasive Surgery", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6e644e38-39bf-40bd-9be1-5eb80f472e81.jpg?1576384110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6e644e38-39bf-40bd-9be1-5eb80f472e81.jpg?1576384110"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ionize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f161f7d2-eaa1-4931-93f9-befa8b5df821.jpg?1572893679", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f161f7d2-eaa1-4931-93f9-befa8b5df821.jpg?1572893679"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ixidor's Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b713448-853a-41ee-a302-963e9c1c1c65.jpg?1562901464", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b713448-853a-41ee-a302-963e9c1c1c65.jpg?1562901464"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Izzet Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61289196-a56b-4d24-b340-9cf067c77f45.jpg?1592713417", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61289196-a56b-4d24-b340-9cf067c77f45.jpg?1592713417"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Izzet Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e8e84a97-8e40-42fa-a114-df90e820ede6.jpg?1562497263", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e8e84a97-8e40-42fa-a114-df90e820ede6.jpg?1562497263"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Jace's Defeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c6b103c1-9b25-4bfe-9081-570977e9fdad.jpg?1562814148", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c6b103c1-9b25-4bfe-9081-570977e9fdad.jpg?1562814148"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jaded Response", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a9ab1f0-4e75-4165-85bc-6f838c221d6a.jpg?1562920093", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a9ab1f0-4e75-4165-85bc-6f838c221d6a.jpg?1562920093"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Keep Safe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/febfa682-76ae-4979-a40c-c1eae1121f3c.jpg?1591226372", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/febfa682-76ae-4979-a40c-c1eae1121f3c.jpg?1591226372"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kindred Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4fbdeac6-f61b-4669-934c-9216d669500f.jpg?1645417342", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4fbdeac6-f61b-4669-934c-9216d669500f.jpg?1645417342"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Lapse of Certainty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec609036-dfbf-47de-9a3a-762aea4196d4.jpg?1562804498", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec609036-dfbf-47de-9a3a-762aea4196d4.jpg?1562804498"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laquatus's Disdain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2ea5448-2d72-42eb-814c-197153d8e06a.jpg?1562632366", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2ea5448-2d72-42eb-814c-197153d8e06a.jpg?1562632366"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Last Word", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/139d2ece-f656-4cac-8d77-b0f083f76c70.jpg?1562635496", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/139d2ece-f656-4cac-8d77-b0f083f76c70.jpg?1562635496"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lay Bare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/0454c2a8-b17d-4cdf-8562-9a28bc6cf0be.jpg?1562700738", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/0454c2a8-b17d-4cdf-8562-9a28bc6cf0be.jpg?1562700738"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Liquify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12fadf25-0995-440d-a3e6-7964ed86cff6.jpg?1562628664", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12fadf25-0995-440d-a3e6-7964ed86cff6.jpg?1562628664"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lofty Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64832674-beb1-446e-b2f7-8a5e271139a5.jpg?1616182218", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64832674-beb1-446e-b2f7-8a5e271139a5.jpg?1616182218"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Logic Knot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/624feb0e-f683-4eb6-a63b-7872d0e28f1f.jpg?1619394325", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/624feb0e-f683-4eb6-a63b-7872d0e28f1f.jpg?1619394325"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Logic Knot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4e946be1-4ed6-4e2c-9782-3f630f8a8e1f.jpg?1562910897", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4e946be1-4ed6-4e2c-9782-3f630f8a8e1f.jpg?1562910897"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lookout's Dispersal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5751a3c-7695-4c47-9cbd-92fd5b1b7ec9.jpg?1562566719", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5751a3c-7695-4c47-9cbd-92fd5b1b7ec9.jpg?1562566719"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lose Focus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/985bdb0c-ce6c-4506-8163-76f3b2fdf5fb.jpg?1626094565", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/985bdb0c-ce6c-4506-8163-76f3b2fdf5fb.jpg?1626094565"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Lost in the Mist", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e5fc39d-590a-436b-ab90-a1741d2ae3da.jpg?1562827161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e5fc39d-590a-436b-ab90-a1741d2ae3da.jpg?1562827161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mages' Contest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c516861c-68d9-4d02-a343-689dba0526c6.jpg?1562934507", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c516861c-68d9-4d02-a343-689dba0526c6.jpg?1562934507"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Make Disappear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f2d6a21-ea77-484b-9e3a-1bd49806f907.jpg?1649471769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f2d6a21-ea77-484b-9e3a-1bd49806f907.jpg?1649471769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mana Drain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/416d2d51-8f29-4e95-b037-e8c32b081e6c.jpg?1562848002", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/416d2d51-8f29-4e95-b037-e8c32b081e6c.jpg?1562848002"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Mana Drain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cc9a04dc-afee-4194-80f5-fb1d9c906de7.jpg?1562936126", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cc9a04dc-afee-4194-80f5-fb1d9c906de7.jpg?1562936126"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Mana Drain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e691adef-3027-4e6a-889f-9f4e2df36a7c.jpg?1562861377", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e691adef-3027-4e6a-889f-9f4e2df36a7c.jpg?1562861377"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mana Drain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/456a2f03-8304-4512-804c-76653e30f436.jpg?1655827521", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/456a2f03-8304-4512-804c-76653e30f436.jpg?1655827521"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Mana Leak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a7c7757d-8036-4b33-a1cb-07795d392588.jpg?1562470857", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a7c7757d-8036-4b33-a1cb-07795d392588.jpg?1562470857"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Mana Leak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/abcaf16d-aa02-43e2-aa38-bb1835d47a05.jpg?1562597349", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/abcaf16d-aa02-43e2-aa38-bb1835d47a05.jpg?1562597349"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mana Leak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/dea41eb7-5828-4735-bca1-0dbb0fda04e3.jpg?1561758236", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/dea41eb7-5828-4735-bca1-0dbb0fda04e3.jpg?1561758236"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Mana Tithe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d48d622-f397-4f31-b1a5-0c23f60aa71c.jpg?1562575298", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d48d622-f397-4f31-b1a5-0c23f60aa71c.jpg?1562575298"}, "reprint": false, "frame_effects": ["colorshifted"], "digital": false, "set_type": "expansion"}, {"name": "Mana Tithe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e7f32354-893d-4f0b-b555-e0757fb5443b.jpg?1623592291", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e7f32354-893d-4f0b-b555-e0757fb5443b.jpg?1623592291"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Mana Tithe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/652b0ce3-293d-4599-8a04-9df01b9bc678.jpg?1561757305", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/652b0ce3-293d-4599-8a04-9df01b9bc678.jpg?1561757305"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Memory Drain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aadc1809-d6bb-455c-b6ce-dd11521808b6.jpg?1581479403", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aadc1809-d6bb-455c-b6ce-dd11521808b6.jpg?1581479403"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Memory Lapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/30202613-d05f-4f47-af97-d0b75ccac293.jpg?1634131658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/30202613-d05f-4f47-af97-d0b75ccac293.jpg?1634131658"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Memory Lapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d85cc30-ccae-4af8-834a-f7870dace679.jpg?1562235009", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d85cc30-ccae-4af8-834a-f7870dace679.jpg?1562235009"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Memory Lapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63453ed9-5cf1-4cad-b173-a067f22a4405.jpg?1562719747", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63453ed9-5cf1-4cad-b173-a067f22a4405.jpg?1562719747"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Memory Lapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d2cc591-3a81-468a-91a4-3c3aac83a21a.jpg?1562587259", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d2cc591-3a81-468a-91a4-3c3aac83a21a.jpg?1562587259"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Memory Lapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c8b5df3-6153-470e-be9c-f38d3cf66081.jpg?1562587296", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c8b5df3-6153-470e-be9c-f38d3cf66081.jpg?1562587296"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Memory Lapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98c1b465-b6d9-491b-bfc2-c034cc825d27.jpg?1623592117", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98c1b465-b6d9-491b-bfc2-c034cc825d27.jpg?1623592117"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Mental Misstep", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61e9c6df-1c84-4eab-9076-a4feb6347c10.jpg?1566819829", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61e9c6df-1c84-4eab-9076-a4feb6347c10.jpg?1566819829"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Metallic Rebuke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f712ac26-dca4-459b-84c1-010597007f60.jpg?1576381519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f712ac26-dca4-459b-84c1-010597007f60.jpg?1576381519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Minamo's Meddling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/502c4aca-98f8-4c7d-89fd-ee42c938fac7.jpg?1562876978", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/502c4aca-98f8-4c7d-89fd-ee42c938fac7.jpg?1562876978"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mindbreak Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4f51140b-6254-431a-8810-94307bfdfbbe.jpg?1562612097", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4f51140b-6254-431a-8810-94307bfdfbbe.jpg?1562612097"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mindstatic", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55d3fad5-a12a-4b41-9c7b-c1af5e0b5ca8.jpg?1562910742", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55d3fad5-a12a-4b41-9c7b-c1af5e0b5ca8.jpg?1562910742"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mindswipe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/557e8303-a021-4257-b41a-7d25f04618c8.jpg?1562786781", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/557e8303-a021-4257-b41a-7d25f04618c8.jpg?1562786781"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Miscalculation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b4956a2-9a39-4152-9c98-70e4b2acfa26.jpg?1562862809", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b4956a2-9a39-4152-9c98-70e4b2acfa26.jpg?1562862809"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Miscast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/033afbd5-9937-4957-98ba-48e469a490bb.jpg?1594735579", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/033afbd5-9937-4957-98ba-48e469a490bb.jpg?1594735579"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Molten Influence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c2b326b-d177-4a03-a0a3-fe2c2d4af272.jpg?1562908953", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c2b326b-d177-4a03-a0a3-fe2c2d4af272.jpg?1562908953"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Muddle the Mixture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4cc785b0-0a77-4b02-b0b4-2bda2fc621cc.jpg?1598914378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4cc785b0-0a77-4b02-b0b4-2bda2fc621cc.jpg?1598914378"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mystical Dispute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fbe04cb8-a8b9-4241-baae-b398a2509a3a.jpg?1572489956", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fbe04cb8-a8b9-4241-baae-b398a2509a3a.jpg?1572489956"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mystic Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/81bbffc2-6f58-4baa-8f95-168eab106b15.jpg?1562706477", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/81bbffc2-6f58-4baa-8f95-168eab106b15.jpg?1562706477"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Mystic Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1296ddc4-300d-44f6-95d8-1b392613d379.jpg?1562255840", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1296ddc4-300d-44f6-95d8-1b392613d379.jpg?1562255840"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Mystic Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/30bb424f-f3d6-4616-a368-df12af3ad024.jpg?1562906405", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/30bb424f-f3d6-4616-a368-df12af3ad024.jpg?1562906405"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Mystic Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52d60f29-6da0-4ce6-9c92-96f313007271.jpg?1562446637", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52d60f29-6da0-4ce6-9c92-96f313007271.jpg?1562446637"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Mystic Genesis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae1dd1ac-1a1e-485d-a11f-d1323a69f95e.jpg?1561841867", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae1dd1ac-1a1e-485d-a11f-d1323a69f95e.jpg?1561841867"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Narset's Reversal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63754036-d51e-47bb-925b-564d9dc922ff.jpg?1557576279", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63754036-d51e-47bb-925b-564d9dc922ff.jpg?1557576279"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e92c7477-d453-4fa4-acf4-3835ab9eb55a.jpg?1604194548", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e92c7477-d453-4fa4-acf4-3835ab9eb55a.jpg?1604194548"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/31534f45-43e6-4103-bf58-ad8fa688e4b0.jpg?1555039942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/31534f45-43e6-4103-bf58-ad8fa688e4b0.jpg?1555039942"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb142515-0856-441d-84d4-9c9d450a86e9.jpg?1576381530", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb142515-0856-441d-84d4-9c9d450a86e9.jpg?1576381530"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/026c499d-3d5b-4f65-a824-f78f146b82ef.jpg?1562895467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/026c499d-3d5b-4f65-a824-f78f146b82ef.jpg?1562895467"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/60380ed0-fed1-4d68-9763-56a9ff8ac5e6.jpg?1562787156", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60380ed0-fed1-4d68-9763-56a9ff8ac5e6.jpg?1562787156"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a501252-e722-4ebf-bcf7-f53a42745fa7.jpg?1562878670", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a501252-e722-4ebf-bcf7-f53a42745fa7.jpg?1562878670"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5bfe3a17-3349-4fcc-a9b5-418faa55cc43.jpg?1623592516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5bfe3a17-3349-4fcc-a9b5-418faa55cc43.jpg?1623592516"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/9850fbe9-68d2-4952-b48d-4737cef34f4a.jpg?1561757632", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/9850fbe9-68d2-4952-b48d-4737cef34f4a.jpg?1561757632"}, "reprint": true, "digital": false, "set_type": "spellbook"}, {"name": "Negate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/226e5187-d285-4547-869d-761fdbee6f1b.jpg?1561756781", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/226e5187-d285-4547-869d-761fdbee6f1b.jpg?1561756781"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Neutralize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/0430da3c-9460-4b62-ae28-2e7e6f4d06a4.jpg?1591226400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/0430da3c-9460-4b62-ae28-2e7e6f4d06a4.jpg?1591226400"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Neutralizing Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e549a8fc-6001-43db-88b1-ce8ed42a3443.jpg?1562830917", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e549a8fc-6001-43db-88b1-ce8ed42a3443.jpg?1562830917"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3dab4f64-2a91-409a-b83b-45b22afd22ff.jpg?1562907421", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3dab4f64-2a91-409a-b83b-45b22afd22ff.jpg?1562907421"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "No Escape", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc9888a1-6f35-4802-b8fb-902017736d4a.jpg?1557576285", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc9888a1-6f35-4802-b8fb-902017736d4a.jpg?1557576285"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Not of This World", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/569e2c39-7a49-4a3b-afe5-1862a7da8026.jpg?1562704022", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/569e2c39-7a49-4a3b-afe5-1862a7da8026.jpg?1562704022"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nullify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a940d859-3fb1-4946-8277-b7c503605b1e.jpg?1593091715", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a940d859-3fb1-4946-8277-b7c503605b1e.jpg?1593091715"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Obscura Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9961562d-cad9-40e5-afae-3ebce77a2260.jpg?1648583418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9961562d-cad9-40e5-afae-3ebce77a2260.jpg?1648583418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Obscura Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a02b758-65b6-4c25-83b9-de63a1a92b51.jpg?1648583494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a02b758-65b6-4c25-83b9-de63a1a92b51.jpg?1648583494"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Offering to Asha", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/260fe443-ca03-42b1-bcee-86e5173c1aaf.jpg?1562640177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/260fe443-ca03-42b1-bcee-86e5173c1aaf.jpg?1562640177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ojutai's Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/7/c7a7f500-594d-4c7b-80e8-54ae1ada2444.jpg?1562792959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/7/c7a7f500-594d-4c7b-80e8-54ae1ada2444.jpg?1562792959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ojutai's Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/939778a2-a10d-4dd4-8f78-0c366b76bf81.jpg?1562876267", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/939778a2-a10d-4dd4-8f78-0c366b76bf81.jpg?1562876267"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Oppressive Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/abcb5e75-c7a1-41de-a952-05aefb115270.jpg?1562495576", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/abcb5e75-c7a1-41de-a952-05aefb115270.jpg?1562495576"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Out of Bounds", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8b457672-902b-42c0-9d53-a3c21be2f500.jpg?1562923137", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8b457672-902b-42c0-9d53-a3c21be2f500.jpg?1562923137"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Outwit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/429f7cf0-579a-4003-b5cf-4baf5d420796.jpg?1592708662", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/429f7cf0-579a-4003-b5cf-4baf5d420796.jpg?1592708662"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Override", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35964fa6-800d-41d6-9f82-fb9c87deee56.jpg?1562140248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35964fa6-800d-41d6-9f82-fb9c87deee56.jpg?1562140248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Overrule", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/22b83a31-f974-4a49-b9ee-92f7767f11e0.jpg?1593273676", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/22b83a31-f974-4a49-b9ee-92f7767f11e0.jpg?1593273676"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Overwhelming Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33ff1000-1a4e-43f6-aa02-1dbe9fac6901.jpg?1562905471", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33ff1000-1a4e-43f6-aa02-1dbe9fac6901.jpg?1562905471"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Overwhelming Intellect", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cbeea686-7efc-48f5-b90b-bf1befc76a30.jpg?1562496066", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cbeea686-7efc-48f5-b90b-bf1befc76a30.jpg?1562496066"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pact of Negation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cca467a2-a2b3-4bdf-9d60-62979f675347.jpg?1562936138", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cca467a2-a2b3-4bdf-9d60-62979f675347.jpg?1562936138"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pact of Negation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3ab90299-547a-4538-a31c-f55afab10c50.jpg?1562906886", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3ab90299-547a-4538-a31c-f55afab10c50.jpg?1562906886"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Perplex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0db57459-29f0-4ef6-b256-56955036c0ef.jpg?1598917204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0db57459-29f0-4ef6-b256-56955036c0ef.jpg?1598917204"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plasm Capture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0ffe8485-d5fb-47cc-af53-6e0fd062b7a2.jpg?1562898119", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0ffe8485-d5fb-47cc-af53-6e0fd062b7a2.jpg?1562898119"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Power Sink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/662cf693-18c4-4169-bcce-09862778f60c.jpg?1562916378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/662cf693-18c4-4169-bcce-09862778f60c.jpg?1562916378"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Power Sink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/abc58c34-c3de-47f8-a42f-3a974dcb9c47.jpg?1562055922", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/abc58c34-c3de-47f8-a42f-3a974dcb9c47.jpg?1562055922"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Power Sink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49717583-e0bb-47d6-92d0-8959af13391f.jpg?1562718814", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49717583-e0bb-47d6-92d0-8959af13391f.jpg?1562718814"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Power Sink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85cbec45-81b4-40cc-b356-d6713a6a9b2b.jpg?1562919825", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85cbec45-81b4-40cc-b356-d6713a6a9b2b.jpg?1562919825"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Power Sink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b342dd3-09b9-4108-bf12-a65d4cef4eb9.jpg?1559591331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b342dd3-09b9-4108-bf12-a65d4cef4eb9.jpg?1559591331"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Preemptive Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c2314bf1-b22d-48c2-860f-e1081f56296b.jpg?1562257530", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c2314bf1-b22d-48c2-860f-e1081f56296b.jpg?1562257530"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Prohibit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0daa5458-2a97-40d0-b18d-2381a7a68ee1.jpg?1562897807", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0daa5458-2a97-40d0-b18d-2381a7a68ee1.jpg?1562897807"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Psychic Barrier", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1cba7d67-5c6c-4738-8907-7cce503e3180.jpg?1562875859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1cba7d67-5c6c-4738-8907-7cce503e3180.jpg?1562875859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Psychic Rebuttal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/67a105f8-0c01-4c09-a3bf-8c912b6dc741.jpg?1562023585", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/67a105f8-0c01-4c09-a3bf-8c912b6dc741.jpg?1562023585"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Psychic Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d87927c-80a6-4146-92a5-58c510ce7958.jpg?1561815780", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d87927c-80a6-4146-92a5-58c510ce7958.jpg?1561815780"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Psychic Trance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5e55695-16cc-4373-8078-959f1ded4c6d.jpg?1562945989", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5e55695-16cc-4373-8078-959f1ded4c6d.jpg?1562945989"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Punish Ignorance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9bc37d01-ffe5-4dfe-b59e-204df82d1d36.jpg?1562707043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9bc37d01-ffe5-4dfe-b59e-204df82d1d36.jpg?1562707043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Put Away", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c17dff9e-23f7-4b12-95e7-aa1c00ab3d18.jpg?1562835533", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c17dff9e-23f7-4b12-95e7-aa1c00ab3d18.jpg?1562835533"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b029eb9a-dd7a-40c2-96c4-0063d9cc002c.jpg?1580014621", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b029eb9a-dd7a-40c2-96c4-0063d9cc002c.jpg?1580014621"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Pyroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c342cac5-08ae-4428-9c2c-f6c5904e54d2.jpg?1562931528", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c342cac5-08ae-4428-9c2c-f6c5904e54d2.jpg?1562931528"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/93c460dc-cef2-4345-b9b8-a774307ba2d6.jpg?1593559584", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/93c460dc-cef2-4345-b9b8-a774307ba2d6.jpg?1593559584"}, "reprint": true, "digital": false, "set_type": "spellbook"}, {"name": "Pyroblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33afbf78-7a50-48e0-bec8-656f571759e2.jpg?1562543945", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33afbf78-7a50-48e0-bec8-656f571759e2.jpg?1562543945"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Quandrix Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/021b62d8-d160-47f5-bc51-0474f160d13f.jpg?1624739521", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/021b62d8-d160-47f5-bc51-0474f160d13f.jpg?1624739521"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48ca8c31-a9ea-4388-b257-951c1c68b86d.jpg?1562876834", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48ca8c31-a9ea-4388-b257-951c1c68b86d.jpg?1562876834"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Quash", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62019ac4-a5a1-4a8c-bfb4-96e818949bbe.jpg?1562444219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62019ac4-a5a1-4a8c-bfb4-96e818949bbe.jpg?1562444219"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quench", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee0ba01b-de96-4f8f-9405-ff3ad288afac.jpg?1589832153", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee0ba01b-de96-4f8f-9405-ff3ad288afac.jpg?1589832153"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rakshasa's Disdain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd9e8a25-2e71-431b-897f-8b62520a3ce9.jpg?1562829343", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd9e8a25-2e71-431b-897f-8b62520a3ce9.jpg?1562829343"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rebuff the Wicked", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fa47fcce-d4c4-40a2-8853-6d7569d50926.jpg?1562586538", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fa47fcce-d4c4-40a2-8853-6d7569d50926.jpg?1562586538"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Red Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70a45e9b-699e-425a-9f3d-267274830d3e.jpg?1562436618", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70a45e9b-699e-425a-9f3d-267274830d3e.jpg?1562436618"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Red Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/776ad9be-3309-4f1d-9f27-6219d9477662.jpg?1559591383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/776ad9be-3309-4f1d-9f27-6219d9477662.jpg?1559591383"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Red Elemental Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6cdd2a7c-001d-4891-8513-4b6d96968b35.jpg?1562545467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6cdd2a7c-001d-4891-8513-4b6d96968b35.jpg?1562545467"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Reinterpret", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/765e64ae-699c-46bd-a8cc-c8c1075d644f.jpg?1625192562", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/765e64ae-699c-46bd-a8cc-c8c1075d644f.jpg?1625192562"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Reject", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d77f0731-fb40-4dc2-8530-afcb5ce1f27f.jpg?1624661968", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d77f0731-fb40-4dc2-8530-afcb5ce1f27f.jpg?1624661968"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Remand", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/0027e5ca-8046-40a0-bd73-79be55f28bff.jpg?1592754515", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/0027e5ca-8046-40a0-bd73-79be55f28bff.jpg?1592754515"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Remand", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/581f3780-c480-48c6-b15c-1618f2feccb9.jpg?1598914434", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/581f3780-c480-48c6-b15c-1618f2feccb9.jpg?1598914434"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Remand", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d41e8cc0-4e05-412b-8ea3-d5b5c45da601.jpg?1562164467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d41e8cc0-4e05-412b-8ea3-d5b5c45da601.jpg?1562164467"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Remove Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f25f4f0e-bbf4-46b1-97fd-e796ff9e138f.jpg?1562251278", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f25f4f0e-bbf4-46b1-97fd-e796ff9e138f.jpg?1562251278"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Remove Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/d/fd6bbb81-b830-4b22-be9a-852d9edbda21.jpg?1562595434", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/d/fd6bbb81-b830-4b22-be9a-852d9edbda21.jpg?1562595434"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Remove Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63de147c-2e62-41b9-8ada-93406387f08b.jpg?1562859196", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63de147c-2e62-41b9-8ada-93406387f08b.jpg?1562859196"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Remove Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/675440ff-9701-4310-a4ad-8502b9cb73ae.jpg?1561757323", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/675440ff-9701-4310-a4ad-8502b9cb73ae.jpg?1561757323"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Render Silent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3f3d6e4-0abe-4042-a7f6-0395683e8582.jpg?1562937631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3f3d6e4-0abe-4042-a7f6-0395683e8582.jpg?1562937631"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Render Silent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/4514a13f-5eee-49a8-876c-6b4befff4592.jpg?1561757030", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/4514a13f-5eee-49a8-876c-6b4befff4592.jpg?1561757030"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Repel Intruders", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/38e64b09-1a58-4669-b7f2-baa3ccc85f2d.jpg?1568911006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/38e64b09-1a58-4669-b7f2-baa3ccc85f2d.jpg?1568911006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rethink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/915ae03f-22f3-4ecc-a875-5226d8dec384.jpg?1562921984", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/915ae03f-22f3-4ecc-a875-5226d8dec384.jpg?1562921984"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Revolutionary Rebuff", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6ea63dad-6afe-464e-ab19-fabd9709c6f9.jpg?1576381387", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6ea63dad-6afe-464e-ab19-fabd9709c6f9.jpg?1576381387"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rewind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e51c4fb-fb29-4b1c-b78e-1fadf94fc9a5.jpg?1562928379", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e51c4fb-fb29-4b1c-b78e-1fadf94fc9a5.jpg?1562928379"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rites of Refusal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fa88f595-1b6f-4af0-bc50-bd07c8be431f.jpg?1562942139", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fa88f595-1b6f-4af0-bc50-bd07c8be431f.jpg?1562942139"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Runeboggle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/37b2fb23-f8b5-4f83-9b29-b18507acaa1a.jpg?1593272065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/37b2fb23-f8b5-4f83-9b29-b18507acaa1a.jpg?1593272065"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rune Snag", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45b6cadf-1974-47c8-98d8-ba413486c3b5.jpg?1593275010", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45b6cadf-1974-47c8-98d8-ba413486c3b5.jpg?1593275010"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/counterspell3.json b/web/public/mtg/jsons/counterspell3.json new file mode 100644 index 00000000..97aeadc5 --- /dev/null +++ b/web/public/mtg/jsons/counterspell3.json @@ -0,0 +1 @@ +{"has_more": false, "data": [{"name": "Rust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/d/ad4974c8-34c5-4290-b325-7586a67f6d56.jpg?1592364545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/d/ad4974c8-34c5-4290-b325-7586a67f6d56.jpg?1592364545"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sage's Dousing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75ccd5f6-b363-433f-9e98-f65e10b10bc9.jpg?1562879335", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75ccd5f6-b363-433f-9e98-f65e10b10bc9.jpg?1562879335"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saw It Coming", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/877a1bb9-5eae-453a-bec0-a9de20ea6815.jpg?1631047574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/877a1bb9-5eae-453a-bec0-a9de20ea6815.jpg?1631047574"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scatter Arc", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/32ed969f-2c8e-4421-9448-dc5a2afdc81d.jpg?1561821983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/32ed969f-2c8e-4421-9448-dc5a2afdc81d.jpg?1561821983"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scattering Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c536c1ce-a012-4d77-ab29-8574be164731.jpg?1562367009", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c536c1ce-a012-4d77-ab29-8574be164731.jpg?1562367009"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scatter to the Winds", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d73ad49f-fe15-4fe5-9731-fd71d31c1e7f.jpg?1562946348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d73ad49f-fe15-4fe5-9731-fd71d31c1e7f.jpg?1562946348"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scent of Brine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d117bf8d-23ec-4f9d-99d0-3a990c5f7075.jpg?1562445215", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d117bf8d-23ec-4f9d-99d0-3a990c5f7075.jpg?1562445215"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Second Guess", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d22d093-8e89-4d54-ac04-14c8759de3ea.jpg?1592708686", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d22d093-8e89-4d54-ac04-14c8759de3ea.jpg?1592708686"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Silumgar's Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba26dbbc-d4a2-44a1-8e6b-affe61f43a34.jpg?1562792137", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba26dbbc-d4a2-44a1-8e6b-affe61f43a34.jpg?1562792137"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Silumgar's Scorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/077bee72-62f6-4d90-8557-ff9cac42ec9a.jpg?1562782102", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/077bee72-62f6-4d90-8557-ff9cac42ec9a.jpg?1562782102"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sinister Sabotage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6cbef36d-7170-424f-8fb1-8e7e112b7f0b.jpg?1572892841", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6cbef36d-7170-424f-8fb1-8e7e112b7f0b.jpg?1572892841"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soul Manipulation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bcd3cb05-c6f9-435a-a0e7-1f85da4a36eb.jpg?1562643969", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bcd3cb05-c6f9-435a-a0e7-1f85da4a36eb.jpg?1562643969"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42d7af6a-bfd1-4e89-965a-68336507a9ee.jpg?1562828463", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42d7af6a-bfd1-4e89-965a-68336507a9ee.jpg?1562828463"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Spell Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5fe58a24-f6a6-4858-82a5-0ca1d524efe1.jpg?1562054243", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5fe58a24-f6a6-4858-82a5-0ca1d524efe1.jpg?1562054243"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Spell Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70e4584f-6e44-4ff8-8313-c8791e0156af.jpg?1562591827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70e4584f-6e44-4ff8-8313-c8791e0156af.jpg?1562591827"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Spell Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/845734da-ab03-4dbc-bb5f-96481d3b8e88.jpg?1559591342", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/845734da-ab03-4dbc-bb5f-96481d3b8e88.jpg?1559591342"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Spell Burst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8169929c-641f-41c8-a48e-1a7d0c57726b.jpg?1619394723", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8169929c-641f-41c8-a48e-1a7d0c57726b.jpg?1619394723"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Spell Burst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f95c8015-fd7d-4329-ab23-aec37a824083.jpg?1562947751", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f95c8015-fd7d-4329-ab23-aec37a824083.jpg?1562947751"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Contortion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b748d8b-898f-4b55-bc33-f5bbbc823c45.jpg?1562286779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b748d8b-898f-4b55-bc33-f5bbbc823c45.jpg?1562286779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Counter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3d323f0-334f-49d1-b338-24c4b854a112.jpg?1562489832", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3d323f0-334f-49d1-b338-24c4b854a112.jpg?1562489832"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Spell Crumple", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/2247df4a-c5d8-4b34-b3a6-3c958eb65f94.jpg?1592713127", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/2247df4a-c5d8-4b34-b3a6-3c958eb65f94.jpg?1592713127"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Spelljack", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3eda8c7b-ce35-482a-bece-52a30cc78a9a.jpg?1562629500", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3eda8c7b-ce35-482a-bece-52a30cc78a9a.jpg?1562629500"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Pierce", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/beb42273-935b-4bda-849e-c163606cf89e.jpg?1654566963", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/beb42273-935b-4bda-849e-c163606cf89e.jpg?1654566963"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Spell Pierce", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6bf4dfc0-c58b-4535-b660-54ceaa6e0217.jpg?1562557054", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6bf4dfc0-c58b-4535-b660-54ceaa6e0217.jpg?1562557054"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Spell Pierce", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb3d3901-e4a6-45ab-a7b5-c65d91e1875e.jpg?1562616640", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb3d3901-e4a6-45ab-a7b5-c65d91e1875e.jpg?1562616640"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Pierce", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3c8f1c8-2b57-41a3-abeb-77ac7de62fa1.jpg?1656006437", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3c8f1c8-2b57-41a3-abeb-77ac7de62fa1.jpg?1656006437"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Spell Pierce", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/4/a4f8b11a-6b21-4532-96c9-bdb2cad603e8.jpg?1599332212", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/4/a4f8b11a-6b21-4532-96c9-bdb2cad603e8.jpg?1599332212"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Spell Pierce", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/eef1f68a-b27c-4e81-9a3c-dccb86771bec.jpg?1562942998", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/eef1f68a-b27c-4e81-9a3c-dccb86771bec.jpg?1562942998"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Spell Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7267fcec-0879-4743-a45f-35057ccb2596.jpg?1561831328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7267fcec-0879-4743-a45f-35057ccb2596.jpg?1561831328"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spellshift", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5c897a6-5835-42ac-8cc7-e8d9fc1e7c77.jpg?1562586074", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5c897a6-5835-42ac-8cc7-e8d9fc1e7c77.jpg?1562586074"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Shrivel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efa110cb-f091-48f0-bc62-80f5f18568e8.jpg?1562951938", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efa110cb-f091-48f0-bc62-80f5f18568e8.jpg?1562951938"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Spell Snare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35554fdf-c70a-4baa-a35a-414caa9978be.jpg?1593272766", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35554fdf-c70a-4baa-a35a-414caa9978be.jpg?1593272766"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Snip", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d6870203-ece9-4fe0-912b-2dcf685f3eb0.jpg?1562709543", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d6870203-ece9-4fe0-912b-2dcf685f3eb0.jpg?1562709543"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Snuff", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efadce19-07f4-47af-abc0-a436bafcdd65.jpg?1562201508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efadce19-07f4-47af-abc0-a436bafcdd65.jpg?1562201508"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Spell Suck", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f631bd92-2046-468d-8b10-d583a318ed24.jpg?1562946926", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f631bd92-2046-468d-8b10-d583a318ed24.jpg?1562946926"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Spell Swindle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6e619ada-e9ce-4758-afd8-8def853877eb.jpg?1562557238", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6e619ada-e9ce-4758-afd8-8def853877eb.jpg?1562557238"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spell Syphon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b883113c-e52b-4633-b4a4-016093327b6a.jpg?1562835117", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b883113c-e52b-4633-b4a4-016093327b6a.jpg?1562835117"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Split Decision", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83ed7ebe-48be-4e6e-a293-b81484f85142.jpg?1562865914", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83ed7ebe-48be-4e6e-a293-b81484f85142.jpg?1562865914"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Squelch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29421dd2-70a7-4623-afe0-ca4cb415ec87.jpg?1562758853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29421dd2-70a7-4623-afe0-ca4cb415ec87.jpg?1562758853"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Statute of Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af13770d-dddb-4b78-9cd3-4a0dc50472f4.jpg?1562792750", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af13770d-dddb-4b78-9cd3-4a0dc50472f4.jpg?1562792750"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Steel Sabotage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb40de7c-1905-4615-844b-4abc231fb01e.jpg?1562614249", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb40de7c-1905-4615-844b-4abc231fb01e.jpg?1562614249"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stifle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d7643c0-b2db-478f-944e-b27b77bad3eb.jpg?1562527068", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d7643c0-b2db-478f-944e-b27b77bad3eb.jpg?1562527068"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stifle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea24228f-da16-46eb-9dcf-a377286b6168.jpg?1562942013", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea24228f-da16-46eb-9dcf-a377286b6168.jpg?1562942013"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Stifle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c6228e16-72d4-4771-9e3f-a83ec856d315.jpg?1562636845", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c6228e16-72d4-4771-9e3f-a83ec856d315.jpg?1562636845"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Stoic Rebuttal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2805239-f30a-4eca-a10b-41673daaa287.jpg?1562825062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2805239-f30a-4eca-a10b-41673daaa287.jpg?1562825062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stubborn Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6f8626c4-306f-4e9d-8840-2bb73fe87e87.jpg?1562788344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6f8626c4-306f-4e9d-8840-2bb73fe87e87.jpg?1562788344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stymied Hopes", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/5702b757-5be5-4a48-bc73-a87ec4f3193b.jpg?1562818334", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/5702b757-5be5-4a48-bc73-a87ec4f3193b.jpg?1562818334"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sublime Epiphany", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/d/ad1bcb44-a562-4f66-b862-6d0ef3546ab4.jpg?1594735795", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/d/ad1bcb44-a562-4f66-b862-6d0ef3546ab4.jpg?1594735795"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Suffocating Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c2a70297-2a7b-4a0c-ace5-cd61bfe6dafd.jpg?1562940975", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c2a70297-2a7b-4a0c-ace5-cd61bfe6dafd.jpg?1562940975"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Summary Dismissal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b75794d-3334-4b4d-9446-0a251dd3bd15.jpg?1576384222", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b75794d-3334-4b4d-9446-0a251dd3bd15.jpg?1576384222"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Summoner's Bane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed82afba-df51-4bd9-853c-d3ef323095a6.jpg?1562618060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed82afba-df51-4bd9-853c-d3ef323095a6.jpg?1562618060"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Supreme Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b677e7cb-7b5d-4993-8f13-881493c498ce.jpg?1562811958", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b677e7cb-7b5d-4993-8f13-881493c498ce.jpg?1562811958"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swan Song", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efd26041-059b-4a1e-9ce8-c3cfd69a3721.jpg?1562837218", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efd26041-059b-4a1e-9ce8-c3cfd69a3721.jpg?1562837218"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swan Song", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/40fc6412-df1c-4bfa-842b-8c3a6f14e19d.jpg?1599358784", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/40fc6412-df1c-4bfa-842b-8c3a6f14e19d.jpg?1599358784"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Swift Silence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a1c5f733-e126-4c22-b528-18bdb90b509b.jpg?1593273784", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a1c5f733-e126-4c22-b528-18bdb90b509b.jpg?1593273784"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Syncopate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08375017-4432-4296-9799-966db145ed7c.jpg?1643588741", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08375017-4432-4296-9799-966db145ed7c.jpg?1643588741"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Syncopate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f81739a5-35a7-4812-a7af-e1951bf5579c.jpg?1617884773", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f81739a5-35a7-4812-a7af-e1951bf5579c.jpg?1617884773"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Syncopate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba6f218f-83b0-4b68-a00f-0327cd79f32a.jpg?1562792232", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba6f218f-83b0-4b68-a00f-0327cd79f32a.jpg?1562792232"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Syncopate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7850794-4c85-4844-a461-650cd4eaec93.jpg?1562929140", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7850794-4c85-4844-a461-650cd4eaec93.jpg?1562929140"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Syphon Essence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/435a2d31-ac2c-45aa-8369-6c2d6fbba4e4.jpg?1643588767", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/435a2d31-ac2c-45aa-8369-6c2d6fbba4e4.jpg?1643588767"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tale's End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/1421115b-9a98-4ab2-bcb2-7d8899ce12db.jpg?1592516519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/1421115b-9a98-4ab2-bcb2-7d8899ce12db.jpg?1592516519"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Teferi's Response", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3bb2df8-c559-4a34-83b0-d48fbc694cc8.jpg?1562944007", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3bb2df8-c559-4a34-83b0-d48fbc694cc8.jpg?1562944007"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Temur Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2ee3e36-a849-42b0-b84b-027a08427c35.jpg?1562794960", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2ee3e36-a849-42b0-b84b-027a08427c35.jpg?1562794960"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Test of Talents", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6e2b6236-b40c-430c-98b0-7940b942657a.jpg?1624590572", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6e2b6236-b40c-430c-98b0-7940b942657a.jpg?1624590572"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thassa's Intervention", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c1241d0-20d4-4eab-970d-74e476f023b4.jpg?1584279765", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c1241d0-20d4-4eab-970d-74e476f023b4.jpg?1584279765"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thassa's Rebuff", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/816a6ff7-cede-4346-b3e6-aee33aefac3a.jpg?1593091807", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/816a6ff7-cede-4346-b3e6-aee33aefac3a.jpg?1593091807"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thoughtbind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/7919cf41-67bb-4dc4-90de-cf3fa2096c2e.jpg?1593860622", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/7919cf41-67bb-4dc4-90de-cf3fa2096c2e.jpg?1593860622"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Collapse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/948b569b-6341-418b-99b5-f79dfb3fe8dd.jpg?1584830401", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/948b569b-6341-418b-99b5-f79dfb3fe8dd.jpg?1584830401"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thwart", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c12a0717-e9ea-4be3-a29f-179671ed4489.jpg?1562383015", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c12a0717-e9ea-4be3-a29f-179671ed4489.jpg?1562383015"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tibalt's Trickery", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/dd921e27-3e08-438c-bec2-723226d35175.jpg?1652278784", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/dd921e27-3e08-438c-bec2-723226d35175.jpg?1652278784"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Time Stop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f968c5e9-12a8-4542-90b4-84e0238fa375.jpg?1562766084", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f968c5e9-12a8-4542-90b4-84e0238fa375.jpg?1562766084"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trap Essence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c063b2b8-5243-43a8-8cb0-927116003bda.jpg?1562701652", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c063b2b8-5243-43a8-8cb0-927116003bda.jpg?1562701652"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Traumatic Visions", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f1e8b03d-9265-4699-b626-5efa73292d43.jpg?1562804612", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f1e8b03d-9265-4699-b626-5efa73292d43.jpg?1562804612"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trickbind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2e58ff2-dea3-42b3-8c22-3e6202a7d433.jpg?1562946300", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2e58ff2-dea3-42b3-8c22-3e6202a7d433.jpg?1562946300"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Turn Aside", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3b7573c2-484c-4b4e-9c26-0f005bd1daee.jpg?1576384240", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3b7573c2-484c-4b4e-9c26-0f005bd1daee.jpg?1576384240"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Turn Aside", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56226f57-6ff0-430e-aba6-6b3dd51f8d3c.jpg?1562817712", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56226f57-6ff0-430e-aba6-6b3dd51f8d3c.jpg?1562817712"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Undermine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/2334bc71-5f85-47ff-b393-601a1e746a4e.jpg?1562902053", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/2334bc71-5f85-47ff-b393-601a1e746a4e.jpg?1562902053"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Undersimplify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3eaebdc1-7a20-45db-9d45-0238fc917496.jpg?1656479084", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3eaebdc1-7a20-45db-9d45-0238fc917496.jpg?1656479084"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Unified Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6cb50db7-f1d4-4f9d-ac60-564398af79ea.jpg?1562704807", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6cb50db7-f1d4-4f9d-ac60-564398af79ea.jpg?1562704807"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unsubstantiate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba5dac3d-4b49-44c4-a7b2-0a99485252c9.jpg?1576384246", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba5dac3d-4b49-44c4-a7b2-0a99485252c9.jpg?1576384246"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unsubstantiate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8b184d7e-46ae-450e-9228-eb605ac3ad41.jpg?1562924384", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8b184d7e-46ae-450e-9228-eb605ac3ad41.jpg?1562924384"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Unwind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97da6607-9131-4f8b-8af3-63439a59b78b.jpg?1562739909", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97da6607-9131-4f8b-8af3-63439a59b78b.jpg?1562739909"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Verdant Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83031ea8-a6c9-4318-af16-bba701dd76bb.jpg?1626097990", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83031ea8-a6c9-4318-af16-bba701dd76bb.jpg?1626097990"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Verdant Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/070a3f30-0839-4678-a37c-475ee189811e.jpg?1626101883", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/070a3f30-0839-4678-a37c-475ee189811e.jpg?1626101883"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "draft_innovation"}, {"name": "Very Cryptic Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d8e84dd2-01f9-4fad-8a24-cc86424d09a2.jpg?1562940811", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d8e84dd2-01f9-4fad-8a24-cc86424d09a2.jpg?1562940811"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Vex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e28a9f15-5469-4dc2-8a73-646f854fec7e.jpg?1562640140", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e28a9f15-5469-4dc2-8a73-646f854fec7e.jpg?1562640140"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Void Shatter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4bf13c5e-3968-48ad-ba08-99ba58873223.jpg?1562910363", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4bf13c5e-3968-48ad-ba08-99ba58873223.jpg?1562910363"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Voidslime", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e640664f-5cc7-4970-b966-6e6e5ae09c5a.jpg?1640462194", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e640664f-5cc7-4970-b966-6e6e5ae09c5a.jpg?1640462194"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Voidslime", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/265c269e-1b5e-4e5f-873f-7733bd4142aa.jpg?1562384947", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/265c269e-1b5e-4e5f-873f-7733bd4142aa.jpg?1562384947"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Warping Wail", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2ef4db8-b51c-4f52-84f1-6fee31c4a14c.jpg?1562943843", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2ef4db8-b51c-4f52-84f1-6fee31c4a14c.jpg?1562943843"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wash Away", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43411ade-be80-4535-8baa-7055e78496df.jpg?1643588844", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43411ade-be80-4535-8baa-7055e78496df.jpg?1643588844"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whirlwind Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e127856-bedd-40a9-9e8e-d1f9fbefe07d.jpg?1581479658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e127856-bedd-40a9-9e8e-d1f9fbefe07d.jpg?1581479658"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whirlwind Denial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7a0c25a-8760-44ea-a418-fcd4a9761632.jpg?1623594049", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7a0c25a-8760-44ea-a418-fcd4a9761632.jpg?1623594049"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Wild Ricochet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d76f09bc-b49a-4ad2-be2d-2a191d41b86d.jpg?1562370137", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d76f09bc-b49a-4ad2-be2d-2a191d41b86d.jpg?1562370137"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Withering Boon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6e6499cb-6073-4c94-8c82-47f489094df5.jpg?1562719780", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6e6499cb-6073-4c94-8c82-47f489094df5.jpg?1562719780"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wizard's Retort", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/bae30b7d-9306-46ef-adea-c4057f59c9c1.jpg?1562741944", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/bae30b7d-9306-46ef-adea-c4057f59c9c1.jpg?1562741944"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "You Find the Villains' Lair", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c6704458-6e9e-4795-a56d-25b68fbf9672.jpg?1627704159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c6704458-6e9e-4795-a56d-25b68fbf9672.jpg?1627704159"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/terror1.json b/web/public/mtg/jsons/terror1.json new file mode 100644 index 00000000..4bbb9a03 --- /dev/null +++ b/web/public/mtg/jsons/terror1.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Abrupt Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3b1e92b4-6e53-4dba-a572-c67e01965ac5.jpg?1562785076", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3b1e92b4-6e53-4dba-a572-c67e01965ac5.jpg?1562785076"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Abrupt Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b10ef54-368c-4841-ab5d-f2e8e1265c83.jpg?1561756631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b10ef54-368c-4841-ab5d-f2e8e1265c83.jpg?1561756631"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Active Volcano", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/d/ad402e65-6fac-4005-a2d4-592983df0c30.jpg?1584237356", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/d/ad402e65-6fac-4005-a2d4-592983df0c30.jpg?1584237356"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aerial Assault", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64d9c182-cbb3-4791-90dd-0e533ddeebda.jpg?1592515927", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64d9c182-cbb3-4791-90dd-0e533ddeebda.jpg?1592515927"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Aerial Predation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec3c023c-037e-495a-b7df-32be42a75f36.jpg?1562795050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec3c023c-037e-495a-b7df-32be42a75f36.jpg?1562795050"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Afterlife", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fa2ecf9-b53c-4f1d-9028-ca3820d043cb.jpg?1562381856", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fa2ecf9-b53c-4f1d-9028-ca3820d043cb.jpg?1562381856"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Afterlife", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/4644694d-52e6-4d00-8cad-748899eeea84.jpg?1562718804", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/4644694d-52e6-4d00-8cad-748899eeea84.jpg?1562718804"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aftershock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91a26b2-03f8-43f0-a3a4-ff6c5a3690c4.jpg?1587857346", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91a26b2-03f8-43f0-a3a4-ff6c5a3690c4.jpg?1587857346"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Agonizing Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/539ac5e1-4bad-4f70-abac-e70c406bebec.jpg?1562912008", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/539ac5e1-4bad-4f70-abac-e70c406bebec.jpg?1562912008"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Angrath's Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/708006ba-d494-4093-b108-8249b110831e.jpg?1555041214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/708006ba-d494-4093-b108-8249b110831e.jpg?1555041214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Annihilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a3bf039-ecf6-477e-997c-e32c55323c01.jpg?1562909994", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a3bf039-ecf6-477e-997c-e32c55323c01.jpg?1562909994"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Asphyxiate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/894f3f5f-586d-45e4-9af7-4de80e44dfae.jpg?1593091866", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/894f3f5f-586d-45e4-9af7-4de80e44dfae.jpg?1593091866"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assassinate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/40b67839-622d-41c1-b9c7-1a26b021ec78.jpg?1562908402", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/40b67839-622d-41c1-b9c7-1a26b021ec78.jpg?1562908402"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assassin's Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b80e8fe0-eccb-4268-a6ce-1365c68e6b13.jpg?1562447376", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b80e8fe0-eccb-4268-a6ce-1365c68e6b13.jpg?1562447376"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Assassin's Ink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a926c10-029d-4e24-8c3f-1808025e30aa.jpg?1654567050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a926c10-029d-4e24-8c3f-1808025e30aa.jpg?1654567050"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assassin's Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f796e320-9898-45d4-9d7a-6d35de53c9ab.jpg?1562795619", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f796e320-9898-45d4-9d7a-6d35de53c9ab.jpg?1562795619"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Avenging Arrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/696678ff-44dc-4fe4-bf17-024e86cd0220.jpg?1562787572", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/696678ff-44dc-4fe4-bf17-024e86cd0220.jpg?1562787572"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bake into a Pie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42a4d090-1bb7-4334-ab22-e2527391e79b.jpg?1572490064", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42a4d090-1bb7-4334-ab22-e2527391e79b.jpg?1572490064"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beast Within", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/76f8a300-44a8-4a70-93d1-64333c13f6f2.jpg?1592752271", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/76f8a300-44a8-4a70-93d1-64333c13f6f2.jpg?1592752271"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Beast Within", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce5b6d19-22e3-4f57-8f4d-a17e982286c7.jpg?1562881648", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce5b6d19-22e3-4f57-8f4d-a17e982286c7.jpg?1562881648"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bedevil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/81e2b96b-ecf2-4dd9-bc9d-3c46ee8c59e6.jpg?1584831400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/81e2b96b-ecf2-4dd9-bc9d-3c46ee8c59e6.jpg?1584831400"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Befoul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2dfff5d3-1433-4a24-83e6-6361a446b974.jpg?1562758881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dfff5d3-1433-4a24-83e6-6361a446b974.jpg?1562758881"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Befoul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c5db137-33b9-4cea-9193-4e637d2966f1.jpg?1562241441", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c5db137-33b9-4cea-9193-4e637d2966f1.jpg?1562241441"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Befoul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f92cb48d-315b-4877-b615-ffdf275c4d61.jpg?1562947702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f92cb48d-315b-4877-b615-ffdf275c4d61.jpg?1562947702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Betrayal of Flesh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9e2e107-0277-4e5c-81a7-258bb2998f3e.jpg?1562153677", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9e2e107-0277-4e5c-81a7-258bb2998f3e.jpg?1562153677"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bloodchief's Thirst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/059e8447-6b1c-4651-a734-a8fea2cbf7b2.jpg?1604195360", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/059e8447-6b1c-4651-a734-a8fea2cbf7b2.jpg?1604195360"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blood Curdle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/4184c851-1419-476c-ba9c-9f0cb1137114.jpg?1591226609", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/4184c851-1419-476c-ba9c-9f0cb1137114.jpg?1591226609"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bone Shards", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1ee98955-4c47-4d45-9377-608dfa755337.jpg?1626095299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1ee98955-4c47-4d45-9377-608dfa755337.jpg?1626095299"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Bone Splinters", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74780faa-1c64-4d73-8d09-53b47ba02d7a.jpg?1562922512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74780faa-1c64-4d73-8d09-53b47ba02d7a.jpg?1562922512"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Bone Splinters", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/387eda28-f35b-48b0-ba59-773d82902327.jpg?1592708776", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/387eda28-f35b-48b0-ba59-773d82902327.jpg?1592708776"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Bone Splinters", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4a4b3a3-b7ae-4210-8037-098fdf5808d0.jpg?1562709424", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4a4b3a3-b7ae-4210-8037-098fdf5808d0.jpg?1562709424"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brainspoil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c34fa44f-274e-4914-bbd5-71193f8d2f96.jpg?1598914670", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c34fa44f-274e-4914-bbd5-71193f8d2f96.jpg?1598914670"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bright Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/3340ffb9-9513-4551-ad64-821600596b2e.jpg?1562553092", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/3340ffb9-9513-4551-ad64-821600596b2e.jpg?1562553092"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bring Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e18146f9-369c-41c8-8a1d-7737edd2c18e.jpg?1562940282", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e18146f9-369c-41c8-8a1d-7737edd2c18e.jpg?1562940282"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Broken Visage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/824823fb-5ae1-48b1-bc46-e452afa73cd8.jpg?1562592294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/824823fb-5ae1-48b1-bc46-e452afa73cd8.jpg?1562592294"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Broken Visage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9be199e7-feaa-4f23-b93c-3eab54a02e74.jpg?1562587775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9be199e7-feaa-4f23-b93c-3eab54a02e74.jpg?1562587775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Broken Wings", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9eb94908-4f4a-487e-87ac-8d5bdefe9983.jpg?1650029788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9eb94908-4f4a-487e-87ac-8d5bdefe9983.jpg?1650029788"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Broken Wings", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/6201f78e-ff45-4c59-ac85-c8447c14a496.jpg?1631050058", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/6201f78e-ff45-4c59-ac85-c8447c14a496.jpg?1631050058"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Broken Wings", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0fc2dfd-85b0-4add-be18-b39549235921.jpg?1604198611", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0fc2dfd-85b0-4add-be18-b39549235921.jpg?1604198611"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cast Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/aba79021-39af-4e74-beb5-f2f508c865b2.jpg?1653520579", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/aba79021-39af-4e74-beb5-f2f508c865b2.jpg?1653520579"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Cast Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/4/a41150b2-44a6-4e80-8b32-afc6ea744fb3.jpg?1591104816", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/4/a41150b2-44a6-4e80-8b32-afc6ea744fb3.jpg?1591104816"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Casualties of War", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08fc5e50-c6f7-41ec-815a-5667eefded78.jpg?1557577078", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08fc5e50-c6f7-41ec-815a-5667eefded78.jpg?1557577078"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Certain Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c67784b3-eb55-452e-b965-f63220b88896.jpg?1576384279", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c67784b3-eb55-452e-b965-f63220b88896.jpg?1576384279"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chastise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/1169dab7-8f4c-474d-9289-42765a275376.jpg?1562628717", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/1169dab7-8f4c-474d-9289-42765a275376.jpg?1562628717"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chill to the Bone", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/312505d7-362e-43cf-bd23-28c248a8b7e1.jpg?1593275049", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/312505d7-362e-43cf-bd23-28c248a8b7e1.jpg?1593275049"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cinder Cloud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f044c470-50ce-4a6c-b8ab-665357c3c11e.jpg?1562722408", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f044c470-50ce-4a6c-b8ab-665357c3c11e.jpg?1562722408"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Clear a Path", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8a8f904b-a9a3-4bae-9284-4e9cbe7592ee.jpg?1562920680", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8a8f904b-a9a3-4bae-9284-4e9cbe7592ee.jpg?1562920680"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Closing Statement", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/785e6d07-fe40-4723-b963-02da0a0987c7.jpg?1627428302", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/785e6d07-fe40-4723-b963-02da0a0987c7.jpg?1627428302"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Collar the Culprit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cdf305b7-d1f7-4770-9201-8f3fb6735cd9.jpg?1572892497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cdf305b7-d1f7-4770-9201-8f3fb6735cd9.jpg?1572892497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Collective Effort", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d85a6369-c07f-47d5-8448-72d8ec7e7898.jpg?1576383801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d85a6369-c07f-47d5-8448-72d8ec7e7898.jpg?1576383801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Consign to the Pit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/09991fad-4282-4a17-bfb1-03eaa13502df.jpg?1584830536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/09991fad-4282-4a17-bfb1-03eaa13502df.jpg?1584830536"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Contract Killing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d1f20feb-b1ed-4d80-bef9-f3cc44ffb7b0.jpg?1562564388", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d1f20feb-b1ed-4d80-bef9-f3cc44ffb7b0.jpg?1562564388"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corpsehatch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91c152d-1829-438c-b571-74361e09df62.jpg?1562708566", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91c152d-1829-438c-b571-74361e09df62.jpg?1562708566"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cradle to Grave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3ec275cf-bb4e-4de0-9184-4d53dd87dad3.jpg?1562569856", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3ec275cf-bb4e-4de0-9184-4d53dd87dad3.jpg?1562569856"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crosis's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a586e329-b1e2-4b60-a914-7b9aa2c645c2.jpg?1562929889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a586e329-b1e2-4b60-a914-7b9aa2c645c2.jpg?1562929889"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Crosis's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b59a9e75-9988-4040-a718-b1655fc20d11.jpg?1562933342", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b59a9e75-9988-4040-a718-b1655fc20d11.jpg?1562933342"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cruel Cut", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f99ffe22-4dd8-4787-b6e0-e03dea8ab42a.jpg?1590010389", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f99ffe22-4dd8-4787-b6e0-e03dea8ab42a.jpg?1590010389"}, "reprint": true, "digital": true, "set_type": "memorabilia"}, {"name": "Cruel Revival", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a863ae27-a99a-4a60-ab07-25c1bacec64d.jpg?1562035297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a863ae27-a99a-4a60-ab07-25c1bacec64d.jpg?1562035297"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Cruel Revival", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/245aba23-2abb-4084-b4cb-d06e46de2108.jpg?1562903595", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/245aba23-2abb-4084-b4cb-d06e46de2108.jpg?1562903595"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crushing Canopy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eae67d98-5167-442b-8586-0b2bcb0c56eb.jpg?1643592488", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eae67d98-5167-442b-8586-0b2bcb0c56eb.jpg?1643592488"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Crushing Canopy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0c4f213-0ea4-44c0-8429-172a317b77f5.jpg?1572893325", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0c4f213-0ea4-44c0-8429-172a317b77f5.jpg?1572893325"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Crushing Canopy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a66b0e45-e585-44f3-8d2b-e887330ba138.jpg?1562561563", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a66b0e45-e585-44f3-8d2b-e887330ba138.jpg?1562561563"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crushing Vines", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c59b3653-5a50-48f2-bcf1-ab305ef30902.jpg?1562941671", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c59b3653-5a50-48f2-bcf1-ab305ef30902.jpg?1562941671"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Damn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Daring Demolition", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6378898-50b7-47c9-8c25-dc660606be9f.jpg?1576381626", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6378898-50b7-47c9-8c25-dc660606be9f.jpg?1576381626"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d03720d-b0ca-4892-9ad1-52189f4a30a1.jpg?1562244108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d03720d-b0ca-4892-9ad1-52189f4a30a1.jpg?1562244108"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/922d6c8b-70ae-4db4-bf26-1904e4906211.jpg?1562055426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/922d6c8b-70ae-4db4-bf26-1904e4906211.jpg?1562055426"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f983dcb-b077-465f-a70b-6bd0e425556c.jpg?1562719738", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f983dcb-b077-465f-a70b-6bd0e425556c.jpg?1562719738"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7dc2716-ed62-4797-ad2b-227eca5408d0.jpg?1562941556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7dc2716-ed62-4797-ad2b-227eca5408d0.jpg?1562941556"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dark Betrayal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56adf4ea-1b1c-4737-8574-1848ca47d4f3.jpg?1562818301", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56adf4ea-1b1c-4737-8574-1848ca47d4f3.jpg?1562818301"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dark Offering", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3ce0cef9-6de4-4a71-b76a-eb0198387294.jpg?1562909319", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3ce0cef9-6de4-4a71-b76a-eb0198387294.jpg?1562909319"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Dark Withering", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3da58e0d-5877-43c4-b129-993e154b6087.jpg?1562907804", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3da58e0d-5877-43c4-b129-993e154b6087.jpg?1562907804"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deadly Alliance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/007a5c8c-ed0b-4844-9393-a3d25d4ffa1d.jpg?1604195436", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/007a5c8c-ed0b-4844-9393-a3d25d4ffa1d.jpg?1604195436"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deadly Visit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/462fe190-5264-42d8-bd27-23c5aa0c641f.jpg?1572892937", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/462fe190-5264-42d8-bd27-23c5aa0c641f.jpg?1572892937"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Bomb", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8a84715-c5dc-4a19-af6a-796c6ee912c2.jpg?1562947604", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8a84715-c5dc-4a19-af6a-796c6ee912c2.jpg?1562947604"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathmark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61268362-f2ba-469d-8e5a-0b8da96e54a5.jpg?1561982272", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61268362-f2ba-469d-8e5a-0b8da96e54a5.jpg?1561982272"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Deathmark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e72e8728-d0a0-4ee5-87c3-092ca94225e0.jpg?1593275062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e72e8728-d0a0-4ee5-87c3-092ca94225e0.jpg?1593275062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Mutation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c643d87-50bc-4380-b1d6-0a465eef5dbf.jpg?1562912876", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c643d87-50bc-4380-b1d6-0a465eef5dbf.jpg?1562912876"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Rattle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8cddafc8-57d6-456e-af58-4b7f45e195d5.jpg?1562923481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8cddafc8-57d6-456e-af58-4b7f45e195d5.jpg?1562923481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death's Caress", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/0643fb9a-8284-4dfc-836a-c2c69ef09f32.jpg?1562896472", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0643fb9a-8284-4dfc-836a-c2c69ef09f32.jpg?1562896472"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathsprout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d615557-aea8-4057-9fbd-d62dd98edc13.jpg?1557577090", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d615557-aea8-4057-9fbd-d62dd98edc13.jpg?1557577090"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/7478a471-3bd2-4038-a4eb-70c38a43afa9.jpg?1562596864", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/7478a471-3bd2-4038-a4eb-70c38a43afa9.jpg?1562596864"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decimate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/358bbaf9-8d48-448b-b87f-211344e36e29.jpg?1562864952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/358bbaf9-8d48-448b-b87f-211344e36e29.jpg?1562864952"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Decimate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/912c398a-e49a-4399-ac41-7b1d4328a59d.jpg?1562921956", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/912c398a-e49a-4399-ac41-7b1d4328a59d.jpg?1562921956"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deface", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43df9f41-944e-4cf3-ac80-524eadac221d.jpg?1584830848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43df9f41-944e-4cf3-ac80-524eadac221d.jpg?1584830848"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Defeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/60473300-0bdc-4e89-87d9-28c8d7b4d83d.jpg?1562787158", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60473300-0bdc-4e89-87d9-28c8d7b4d83d.jpg?1562787158"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Defend the Campus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85e4e1b5-77d6-4af4-b22e-6f6b4d129f5d.jpg?1624589309", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85e4e1b5-77d6-4af4-b22e-6f6b4d129f5d.jpg?1624589309"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Defenestrate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df3abdcc-83a8-45c3-9bfd-23f929705018.jpg?1634349688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df3abdcc-83a8-45c3-9bfd-23f929705018.jpg?1634349688"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devour in Shadow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98c80584-b7b5-4dcd-8a00-812b9dd9b1b9.jpg?1562878693", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98c80584-b7b5-4dcd-8a00-812b9dd9b1b9.jpg?1562878693"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dimir Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3f4cfa7-8ee4-4a85-9e6a-65a7541f62c1.jpg?1561852231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3f4cfa7-8ee4-4a85-9e6a-65a7541f62c1.jpg?1561852231"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dimir Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f6bc1da-3969-4f19-b072-4ed79f906fef.jpg?1562497257", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f6bc1da-3969-4f19-b072-4ed79f906fef.jpg?1562497257"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Disembowel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1edb79d-0031-4dc6-8881-f6d1fe4acba2.jpg?1619741469", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1edb79d-0031-4dc6-8881-f6d1fe4acba2.jpg?1619741469"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Divine Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed07b708-7232-4b87-b5d9-edaa20a69293.jpg?1555039673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed07b708-7232-4b87-b5d9-edaa20a69293.jpg?1555039673"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Divine Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79f46ac0-9e2f-4f9f-beee-0a7914475ac1.jpg?1562820257", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79f46ac0-9e2f-4f9f-beee-0a7914475ac1.jpg?1562820257"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Divine Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48444e14-c73b-47d1-9c55-0ff4dc3c6034.jpg?1561978713", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48444e14-c73b-47d1-9c55-0ff4dc3c6034.jpg?1561978713"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/176cdb4b-6ad4-4991-8456-28579640063d.jpg?1562229273", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/176cdb4b-6ad4-4991-8456-28579640063d.jpg?1562229273"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6e19acff-f3dd-417a-a9ab-ea3e36c1ba61.jpg?1561983934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6e19acff-f3dd-417a-a9ab-ea3e36c1ba61.jpg?1561983934"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/e/7e6c0fe2-a82b-42cb-8629-b9f00b7f08e9.jpg?1623780045", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/e/7e6c0fe2-a82b-42cb-8629-b9f00b7f08e9.jpg?1623780045"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/37468ade-27b1-4128-9a62-1293ec2aab41.jpg?1561756922", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/37468ade-27b1-4128-9a62-1293ec2aab41.jpg?1561756922"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Drag to the Underworld", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/91852444-9361-4588-a44f-fb90ba1b30e5.jpg?1581479732", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/91852444-9361-4588-a44f-fb90ba1b30e5.jpg?1581479732"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dreadbore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a83945c6-4dc6-4d9a-9bc2-2d4a264e5422.jpg?1562791208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a83945c6-4dc6-4d9a-9bc2-2d4a264e5422.jpg?1562791208"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in the Loch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8bf5df5b-164d-4ec2-a5e6-bbaea152e271.jpg?1572490739", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8bf5df5b-164d-4ec2-a5e6-bbaea152e271.jpg?1572490739"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in the Loch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01acd1c1-86b2-4423-9ba7-5b9725c0514f.jpg?1640249448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01acd1c1-86b2-4423-9ba7-5b9725c0514f.jpg?1640249448"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Duh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fa5b9b30-4950-4c9c-9ce8-6d271bb7aa01.jpg?1562489857", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fa5b9b30-4950-4c9c-9ce8-6d271bb7aa01.jpg?1562489857"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Easy Prey", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/312fb6e4-1eb1-4fbb-b7a4-125829a6e96a.jpg?1591226769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/312fb6e4-1eb1-4fbb-b7a4-125829a6e96a.jpg?1591226769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eaten by Spiders", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0efea1b1-f212-4b97-98dd-922f85ab191f.jpg?1592709344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0efea1b1-f212-4b97-98dd-922f85ab191f.jpg?1592709344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eightfold Maze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cc8c377a-82c4-46ee-94c2-b970160a3205.jpg?1562257975", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cc8c377a-82c4-46ee-94c2-b970160a3205.jpg?1562257975"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Eliminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8eb4087-3a4c-4de8-8e29-f4cd71acb180.jpg?1594736106", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8eb4087-3a4c-4de8-8e29-f4cd71acb180.jpg?1594736106"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Eliminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c55b2b50-ac83-4a78-8f84-580193d1ca0f.jpg?1623780234", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c55b2b50-ac83-4a78-8f84-580193d1ca0f.jpg?1623780234"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Enduring Victory", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54fef763-7ee2-4341-9c67-546e4b6710b7.jpg?1562786446", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54fef763-7ee2-4341-9c67-546e4b6710b7.jpg?1562786446"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Vortex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fe07e496-5070-4116-a91a-a3bbe19c12af.jpg?1562942896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fe07e496-5070-4116-a91a-a3bbe19c12af.jpg?1562942896"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eviscerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62ba90b8-3a30-4058-b8d3-72900b1f4fe0.jpg?1562736723", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62ba90b8-3a30-4058-b8d3-72900b1f4fe0.jpg?1562736723"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Execute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/333123bc-fb66-4b5a-bf55-045d2906c8c3.jpg?1562904481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/333123bc-fb66-4b5a-bf55-045d2906c8c3.jpg?1562904481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Expunge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/0576ffe8-a7b9-479b-8ea0-418b430b1aa1.jpg?1562896134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/0576ffe8-a7b9-479b-8ea0-418b430b1aa1.jpg?1562896134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eyeblight's Ending", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0c08701-7038-4d6b-bbf8-056fd8ffb226.jpg?1562371343", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0c08701-7038-4d6b-bbf8-056fd8ffb226.jpg?1562371343"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fatal Blow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/044dc7c2-6198-4526-b79a-f3d8ee7a157a.jpg?1562799109", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/044dc7c2-6198-4526-b79a-f3d8ee7a157a.jpg?1562799109"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5e81649-9954-424c-89d1-f87d73b66047.jpg?1595869185", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5e81649-9954-424c-89d1-f87d73b66047.jpg?1595869185"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/5427d8a6-ac9e-4e50-bd39-81713b2ade25.jpg?1607041515", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/5427d8a6-ac9e-4e50-bd39-81713b2ade25.jpg?1607041515"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9a50516-a20f-4e6e-b4f2-0049b673f942.jpg?1599711004", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9a50516-a20f-4e6e-b4f2-0049b673f942.jpg?1599711004"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86d1119d-7585-4699-8649-e3743c02d7a9.jpg?1562636837", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86d1119d-7585-4699-8649-e3743c02d7a9.jpg?1562636837"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Fateful Absence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/eca8d6f8-c6f1-437c-99e2-4281eae14a6f.jpg?1634346819", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/eca8d6f8-c6f1-437c-99e2-4281eae14a6f.jpg?1634346819"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast of Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1a7dd5e2-b2a5-46ab-a67c-499451706505.jpg?1562610240", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1a7dd5e2-b2a5-46ab-a67c-499451706505.jpg?1562610240"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast of Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/658bf8b7-fbc4-4046-9300-249cdeb87924.jpg?1561757312", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/658bf8b7-fbc4-4046-9300-249cdeb87924.jpg?1561757312"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Feast of Dreams", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de07e21e-c12a-47a6-ad2c-ef6fed343407.jpg?1593095705", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de07e21e-c12a-47a6-ad2c-ef6fed343407.jpg?1593095705"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast or Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92105bc6-b64a-4bdc-99fe-7a2ccdbd4486.jpg?1592713797", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92105bc6-b64a-4bdc-99fe-7a2ccdbd4486.jpg?1592713797"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Feast or Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/302ec21d-bb10-4651-80da-11852768165d.jpg?1559592569", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/302ec21d-bb10-4651-80da-11852768165d.jpg?1559592569"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Feast or Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c185b4d-8da5-4b8a-85f0-5f0622c7bade.jpg?1562769209", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c185b4d-8da5-4b8a-85f0-5f0622c7bade.jpg?1562769209"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feed the Swarm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f6b2eba7-862a-4efd-9f65-065fb2070855.jpg?1604195649", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f6b2eba7-862a-4efd-9f65-065fb2070855.jpg?1604195649"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fierce Retribution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/9597b163-5c6b-4f64-b1f1-5f1fa2e23e5d.jpg?1643586258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/9597b163-5c6b-4f64-b1f1-5f1fa2e23e5d.jpg?1643586258"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Final Payment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49a21a8f-9c7b-4ae8-8635-f2ee2151c8de.jpg?1584831505", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49a21a8f-9c7b-4ae8-8635-f2ee2151c8de.jpg?1584831505"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Finders, Keepers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f4b7148-e98f-40a4-95e3-ffdd2daa324b.jpg?1562914921", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f4b7148-e98f-40a4-95e3-ffdd2daa324b.jpg?1562914921"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Finishing Blow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b85a552-2119-4d9c-b7c1-c09c2d9f2f38.jpg?1594736130", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b85a552-2119-4d9c-b7c1-c09c2d9f2f38.jpg?1594736130"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Fissure", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aa2d778d-d74b-45ec-a86b-5d52ffad6ba5.jpg?1562935207", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aa2d778d-d74b-45ec-a86b-5d52ffad6ba5.jpg?1562935207"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flash Flood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5ae88c06-f28c-4fbc-a28c-5eb203a04722.jpg?1562859177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5ae88c06-f28c-4fbc-a28c-5eb203a04722.jpg?1562859177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flesh Allergy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c729525-b954-42dd-9877-f4360d99b961.jpg?1562820900", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c729525-b954-42dd-9877-f4360d99b961.jpg?1562820900"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flesh to Dust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16b2e842-6c92-47b0-bed4-e0e64485f168.jpg?1562783120", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16b2e842-6c92-47b0-bed4-e0e64485f168.jpg?1562783120"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Foul Play", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e4b75c-e993-4983-8933-977be314bba6.jpg?1634349812", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e4b75c-e993-4983-8933-977be314bba6.jpg?1634349812"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fumarole", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efa53e9a-0d7c-4d17-b2be-56930edfa2c2.jpg?1562940031", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efa53e9a-0d7c-4d17-b2be-56930edfa2c2.jpg?1562940031"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gang Up", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10d01449-3e4e-44ef-90aa-9489c86c57df.jpg?1595438095", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10d01449-3e4e-44ef-90aa-9489c86c57df.jpg?1595438095"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Get the Point", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/821c4ab5-eb75-445a-bbec-e50af54dba7a.jpg?1584831541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/821c4ab5-eb75-445a-bbec-e50af54dba7a.jpg?1584831541"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghastly Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9d2bfa3-0499-43ea-a76d-b12fddbc104e.jpg?1562935702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9d2bfa3-0499-43ea-a76d-b12fddbc104e.jpg?1562935702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghostly Visit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/06f6938a-229a-4521-b5d5-7999ce5fb372.jpg?1562255824", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/06f6938a-229a-4521-b5d5-7999ce5fb372.jpg?1562255824"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Gloomlance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b45bfb2-7c48-4da5-a0fd-29d353221814.jpg?1562832072", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b45bfb2-7c48-4da5-a0fd-29d353221814.jpg?1562832072"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gloomwidow's Feast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59b989b4-692c-4ccb-a290-0ff00abacba9.jpg?1562830513", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59b989b4-692c-4ccb-a290-0ff00abacba9.jpg?1562830513"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Go for the Throat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c6cb231-41df-409c-923e-100319f27ee3.jpg?1562605365", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c6cb231-41df-409c-923e-100319f27ee3.jpg?1562605365"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Go for the Throat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a3109aaa-b1e9-4c68-85f0-7515c8eeadc3.jpg?1562636862", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a3109aaa-b1e9-4c68-85f0-7515c8eeadc3.jpg?1562636862"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Grim Bounty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b98e0ab1-dea8-492b-a712-2057f2b1d020.jpg?1627704924", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b98e0ab1-dea8-492b-a712-2057f2b1d020.jpg?1627704924"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grisly Ritual", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/53cdf2ab-3acd-49bd-8273-84c1cfc92883.jpg?1643589817", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/53cdf2ab-3acd-49bd-8273-84c1cfc92883.jpg?1643589817"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grisly Spectacle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c26d0f6e-e7bd-4206-a0da-1c9c203a73f2.jpg?1561844583", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c26d0f6e-e7bd-4206-a0da-1c9c203a73f2.jpg?1561844583"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guiding Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd552f81-1947-47e0-beee-f04e73551055.jpg?1653690524", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd552f81-1947-47e0-beee-f04e73551055.jpg?1653690524"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Hand of Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9761136-9e1c-4d86-98ce-7abe1d8e6a8d.jpg?1562935064", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9761136-9e1c-4d86-98ce-7abe1d8e6a8d.jpg?1562935064"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hand of Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27f136b8-52be-49b9-919b-2b9785254350.jpg?1546740328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27f136b8-52be-49b9-919b-2b9785254350.jpg?1546740328"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Hearth Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/caa9ac66-51b7-4aec-92dc-0f0656b0f7fe.jpg?1562278639", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/caa9ac66-51b7-4aec-92dc-0f0656b0f7fe.jpg?1562278639"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Heartless Act", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e4e6794a-feeb-4fc8-a2ee-38c75c18aaae.jpg?1591226819", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e4e6794a-feeb-4fc8-a2ee-38c75c18aaae.jpg?1591226819"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hero's Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d22dd514-814f-4a62-926d-fef311896c02.jpg?1562879959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d22dd514-814f-4a62-926d-fef311896c02.jpg?1562879959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1b0751e-3a7e-4568-8c64-7429d6829687.jpg?1643589948", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1b0751e-3a7e-4568-8c64-7429d6829687.jpg?1643589948"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/596822f6-dbd4-4cc8-aa50-9331ff42544e.jpg?1562818494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/596822f6-dbd4-4cc8-aa50-9331ff42544e.jpg?1562818494"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed96b05d-b2ca-4c8f-969b-cac9b4562fab.jpg?1636900809", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed96b05d-b2ca-4c8f-969b-cac9b4562fab.jpg?1636900809"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64aa5cbd-98e9-46fc-8de4-64eab7afc90f.jpg?1561757293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64aa5cbd-98e9-46fc-8de4-64eab7afc90f.jpg?1561757293"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hideous End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b33e6056-00c9-4731-b364-b0214398848d.jpg?1562842860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b33e6056-00c9-4731-b364-b0214398848d.jpg?1562842860"}, "reprint": false, "digital": false, "set_type": "planechase"}, {"name": "Horobi's Whisper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1aad5179-4b73-498e-85c5-1fc363d26223.jpg?1562875751", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1aad5179-4b73-498e-85c5-1fc363d26223.jpg?1562875751"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Human Frailty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d1de712-86ac-4c03-be86-2403cd121f66.jpg?1592708908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d1de712-86ac-4c03-be86-2403cd121f66.jpg?1592708908"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Humble the Brute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c105686-8b45-494a-b9ef-8aa267bb1b5a.jpg?1656286373", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c105686-8b45-494a-b9ef-8aa267bb1b5a.jpg?1656286373"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Immolating Glare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2f468338-bb66-4db0-a883-69095566092b.jpg?1562904646", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2f468338-bb66-4db0-a883-69095566092b.jpg?1562904646"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Immolating Glare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0ddbcd23-e206-4a12-968a-3854693d1e60.jpg?1562870987", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0ddbcd23-e206-4a12-968a-3854693d1e60.jpg?1562870987"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Impale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfa0c4f7-3497-467d-9453-104fb4b5a0f3.jpg?1555040252", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfa0c4f7-3497-467d-9453-104fb4b5a0f3.jpg?1555040252"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Infernal Grasp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/17824929-f131-4b8d-addb-66c25323155e.jpg?1634349911", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/17824929-f131-4b8d-addb-66c25323155e.jpg?1634349911"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inscription of Ruin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/93612079-0b8d-489d-9ae1-3593414a8cee.jpg?1604195857", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/93612079-0b8d-489d-9ae1-3593414a8cee.jpg?1604195857"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Into the Maw of Hell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d188d9b-7a12-4eaf-855b-af4f0204dc5a.jpg?1562830878", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d188d9b-7a12-4eaf-855b-af4f0204dc5a.jpg?1562830878"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Just Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6e5e572-030d-4a41-89e6-e720b49bc131.jpg?1562934537", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6e5e572-030d-4a41-89e6-e720b49bc131.jpg?1562934537"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Kaervek's Purge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a42ef95-92ec-40fe-ab30-a476f012a525.jpg?1562720237", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a42ef95-92ec-40fe-ab30-a476f012a525.jpg?1562720237"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kill! Destroy!", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49dd5a66-101d-4f88-b1ba-e2368203d408.jpg?1605097368", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49dd5a66-101d-4f88-b1ba-e2368203d408.jpg?1605097368"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Killing Glare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7a4d87d-b844-4f20-8b14-4fd32c53dea5.jpg?1561852883", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7a4d87d-b844-4f20-8b14-4fd32c53dea5.jpg?1561852883"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kill Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61b0b9a3-8f50-4fba-9978-409f3369afa6.jpg?1650026094", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61b0b9a3-8f50-4fba-9978-409f3369afa6.jpg?1650026094"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Kill Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f30d4136-78a3-4760-83af-d365cc97d118.jpg?1562795914", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f30d4136-78a3-4760-83af-d365cc97d118.jpg?1562795914"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/terror2.json b/web/public/mtg/jsons/terror2.json new file mode 100644 index 00000000..162e6ad0 --- /dev/null +++ b/web/public/mtg/jsons/terror2.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Krovikan Rot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/17597c66-0d9f-41af-9160-0d92be88f450.jpg?1593275116", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/17597c66-0d9f-41af-9160-0d92be88f450.jpg?1593275116"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Launch Party", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/53f29821-902e-41bc-97a2-6fc7a710cbdb.jpg?1562786438", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/53f29821-902e-41bc-97a2-6fc7a710cbdb.jpg?1562786438"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lava Flow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/89e825e4-98be-49f0-bc5e-c8988118dcef.jpg?1562446890", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/89e825e4-98be-49f0-bc5e-c8988118dcef.jpg?1562446890"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Legion's Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/385bea20-c196-4da8-bc3e-36f8d50dcc17.jpg?1562553483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/385bea20-c196-4da8-bc3e-36f8d50dcc17.jpg?1562553483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lethal Scheme", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65864680-9520-4eb3-9774-fa478e54a290.jpg?1650411151", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65864680-9520-4eb3-9774-fa478e54a290.jpg?1650411151"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Lethal Sting", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eaded6bf-2db7-4b1d-93cc-4b7b571cd2de.jpg?1562819094", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eaded6bf-2db7-4b1d-93cc-4b7b571cd2de.jpg?1562819094"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lich's Caress", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/32bd3acd-aa62-4708-9336-e3430fd0e541.jpg?1562301277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/32bd3acd-aa62-4708-9336-e3430fd0e541.jpg?1562301277"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Liliana's Defeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f72b028-b9df-40c7-822f-4acc6bdcc719.jpg?1562789479", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f72b028-b9df-40c7-822f-4acc6bdcc719.jpg?1562789479"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Liliana's Scorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b231f941-4acb-46f2-81ae-16e5a28e65af.jpg?1596250190", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b231f941-4acb-46f2-81ae-16e5a28e65af.jpg?1596250190"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Liturgy of Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/3532105d-c550-4c20-8465-a6a19169efbd.jpg?1562827834", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/3532105d-c550-4c20-8465-a6a19169efbd.jpg?1562827834"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Maelstrom Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb651c3a-cb27-4b73-8eb6-b87d65211097.jpg?1562644898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb651c3a-cb27-4b73-8eb6-b87d65211097.jpg?1562644898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Maelstrom Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2d85423-ebd8-4a6e-aedf-90e52f918764.jpg?1562940541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2d85423-ebd8-4a6e-aedf-90e52f918764.jpg?1562940541"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Maelstrom Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d351c901-103b-460f-9d01-6e4d4b25cac8.jpg?1561929932", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d351c901-103b-460f-9d01-6e4d4b25cac8.jpg?1561929932"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Mage Hunters' Onslaught", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed85140f-f0e0-4ac1-a67f-26d17ff95e31.jpg?1624591129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed85140f-f0e0-4ac1-a67f-26d17ff95e31.jpg?1624591129"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Malicious Affliction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d6ea704f-a06c-4d3b-80a3-d23f739c74aa.jpg?1561960653", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d6ea704f-a06c-4d3b-80a3-d23f739c74aa.jpg?1561960653"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Misfortune's Gain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/80abd7c1-8f7a-4279-b76f-251a02624345.jpg?1562257029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/80abd7c1-8f7a-4279-b76f-251a02624345.jpg?1562257029"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Mob", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c216e13-3779-4734-b481-9aad7aba9925.jpg?1562201673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c216e13-3779-4734-b481-9aad7aba9925.jpg?1562201673"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Molten Frame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58356504-e28e-456c-b1d3-e6232f4d78a6.jpg?1562801105", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58356504-e28e-456c-b1d3-e6232f4d78a6.jpg?1562801105"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/38c5e2e8-b781-4265-bce1-98fa25ddd8c3.jpg?1592714339", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/38c5e2e8-b781-4265-bce1-98fa25ddd8c3.jpg?1592714339"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3b2c5187-71c7-4801-8a76-339c67322d35.jpg?1593272729", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3b2c5187-71c7-4801-8a76-339c67322d35.jpg?1593272729"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/645f4d28-68cb-4386-91b9-c748930d69fa.jpg?1570573674", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/645f4d28-68cb-4386-91b9-c748930d69fa.jpg?1570573674"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a36a42b0-8216-4c99-a85f-22a520f31fd4.jpg?1561757738", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a36a42b0-8216-4c99-a85f-22a520f31fd4.jpg?1561757738"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bdef7fea-2bd0-42a2-96f6-6def18bd7f0c.jpg?1653725816", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bdef7fea-2bd0-42a2-96f6-6def18bd7f0c.jpg?1653725816"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c13ac76-7cd9-456f-9b89-92bfa07c64c5.jpg?1649362504", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c13ac76-7cd9-456f-9b89-92bfa07c64c5.jpg?1649362504"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f2eb849-b3ab-4d26-86c5-235c8161cf2a.jpg?1576384369", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f2eb849-b3ab-4d26-86c5-235c8161cf2a.jpg?1576384369"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8676f02-cf1e-4d40-a0c5-6e5a97417898.jpg?1562559978", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8676f02-cf1e-4d40-a0c5-6e5a97417898.jpg?1562559978"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Murderous Compulsion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33b94db1-ac8c-4667-81d5-408df0f30879.jpg?1576384534", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33b94db1-ac8c-4667-81d5-408df0f30879.jpg?1576384534"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Murderous Cut", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b2dadff2-883f-4134-a881-be145cdcbd84.jpg?1562792142", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b2dadff2-883f-4134-a881-be145cdcbd84.jpg?1562792142"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Murderous Spoils", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/91ece344-c516-449e-ab7c-2e78d4778f02.jpg?1562638187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/91ece344-c516-449e-ab7c-2e78d4778f02.jpg?1562638187"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mutual Destruction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85ac0b25-80bf-4871-a6f6-5cf4d5b9496e.jpg?1591226898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85ac0b25-80bf-4871-a6f6-5cf4d5b9496e.jpg?1591226898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mythos of Nethroi", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6abc24e1-e721-471a-9efd-547f320675b0.jpg?1591226925", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6abc24e1-e721-471a-9efd-547f320675b0.jpg?1591226925"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Neck Snap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc326b79-363e-4c14-86e4-23041f2d6b4f.jpg?1562375861", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc326b79-363e-4c14-86e4-23041f2d6b4f.jpg?1562375861"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Noxious Grasp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8e5758cc-1f84-455d-a983-8ec471727eaf.jpg?1592516744", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8e5758cc-1f84-455d-a983-8ec471727eaf.jpg?1592516744"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Obscura Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9961562d-cad9-40e5-afae-3ebce77a2260.jpg?1648583418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9961562d-cad9-40e5-afae-3ebce77a2260.jpg?1648583418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Obscura Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a02b758-65b6-4c25-83b9-de63a1a92b51.jpg?1648583494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a02b758-65b6-4c25-83b9-de63a1a92b51.jpg?1648583494"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Orim's Thunder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/0/d00bf192-4baf-46ba-947b-a22d07635b04.jpg?1562944526", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/0/d00bf192-4baf-46ba-947b-a22d07635b04.jpg?1562944526"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Orzhov Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8ca44265-5e1b-4fbf-9002-52b2ce9b7448.jpg?1561835927", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8ca44265-5e1b-4fbf-9002-52b2ce9b7448.jpg?1561835927"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parting Thoughts", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e60b5a1-923c-4c67-ae06-2a498dc46506.jpg?1562393855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e60b5a1-923c-4c67-ae06-2a498dc46506.jpg?1562393855"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/41369848-ba9a-40ef-931e-1a65bc979209.jpg?1562434966", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/41369848-ba9a-40ef-931e-1a65bc979209.jpg?1562434966"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af7a2719-7910-4601-be88-7b3c249199d3.jpg?1562932043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af7a2719-7910-4601-be88-7b3c249199d3.jpg?1562932043"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb14d3f4-09f3-4113-bdc3-0fd753137f7c.jpg?1562942983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb14d3f4-09f3-4113-bdc3-0fd753137f7c.jpg?1562942983"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a1f3e1c9-bfad-49a1-b171-6fa344ef2eef.jpg?1562447361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a1f3e1c9-bfad-49a1-b171-6fa344ef2eef.jpg?1562447361"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Phthisis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9ba55f16-a37c-4caa-9417-227a06cf4061.jpg?1562927843", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9ba55f16-a37c-4caa-9417-227a06cf4061.jpg?1562927843"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pinion Feast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45d6df03-c3c3-42c3-85a4-6fccb0741592.jpg?1562785514", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45d6df03-c3c3-42c3-85a4-6fccb0741592.jpg?1562785514"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pistus Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1a2918d6-50f7-4bc1-aef2-930a5c84be8d.jpg?1562609919", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1a2918d6-50f7-4bc1-aef2-930a5c84be8d.jpg?1562609919"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pitfall Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/2823d9a5-dd2f-4e6a-8e3d-554c4204aa32.jpg?1562610754", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/2823d9a5-dd2f-4e6a-8e3d-554c4204aa32.jpg?1562610754"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Spores", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d106d56-a688-49cc-8d5d-0279a5a7c0a7.jpg?1562897663", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d106d56-a688-49cc-8d5d-0279a5a7c0a7.jpg?1562897663"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/5469e696-bbf1-43e3-9c25-fe089b36caed.jpg?1636224615", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/5469e696-bbf1-43e3-9c25-fe089b36caed.jpg?1636224615"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4be85ceb-be98-43ce-9565-a72990797437.jpg?1627708161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4be85ceb-be98-43ce-9565-a72990797437.jpg?1627708161"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d884b2f2-946e-4d5d-b8cf-ef035726a188.jpg?1591227840", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d884b2f2-946e-4d5d-b8cf-ef035726a188.jpg?1591227840"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8b2f186-4e04-49cb-a206-257cfb7e9361.jpg?1581480847", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8b2f186-4e04-49cb-a206-257cfb7e9361.jpg?1581480847"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54a0afaa-f99f-4c7a-9fa1-c6a46dfb2a29.jpg?1561480279", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54a0afaa-f99f-4c7a-9fa1-c6a46dfb2a29.jpg?1561480279"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f6acb5b-b087-4cad-b40f-2de37029847c.jpg?1562917482", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f6acb5b-b087-4cad-b40f-2de37029847c.jpg?1562917482"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a67bb585-cc4f-4cbc-9a5a-d31df98c07ae.jpg?1562930081", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a67bb585-cc4f-4cbc-9a5a-d31df98c07ae.jpg?1562930081"}, "reprint": false, "digital": false, "set_type": "archenemy"}, {"name": "Poison Arrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b7b5f34-c250-484e-9bae-94789b2a87fb.jpg?1562256571", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b7b5f34-c250-484e-9bae-94789b2a87fb.jpg?1562256571"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Poison the Cup", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fb94456-5266-47db-b514-a0e17e34b771.jpg?1631048334", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fb94456-5266-47db-b514-a0e17e34b771.jpg?1631048334"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Polymorph", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fbae8702-a152-4c53-8a76-691a221f2475.jpg?1562722872", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fbae8702-a152-4c53-8a76-691a221f2475.jpg?1562722872"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pongify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cce74a84-4441-4f2e-89d8-df0b096790ed.jpg?1562582099", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cce74a84-4441-4f2e-89d8-df0b096790ed.jpg?1562582099"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Power Word Kill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/395b6ce4-143f-4eed-b565-98aa3d6208ef.jpg?1627705234", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/395b6ce4-143f-4eed-b565-98aa3d6208ef.jpg?1627705234"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Power Word Kill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36c71043-1c11-4377-ab33-41d19927143a.jpg?1654010561", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36c71043-1c11-4377-ab33-41d19927143a.jpg?1654010561"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Premature Burial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e96cea6a-fea6-4a6b-84b2-7b57237be96a.jpg?1562944222", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e96cea6a-fea6-4a6b-84b2-7b57237be96a.jpg?1562944222"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Price of Fame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61b52152-0f7c-4466-9e49-033477028f67.jpg?1572893038", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61b52152-0f7c-4466-9e49-033477028f67.jpg?1572893038"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Prismatic Wardrobe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79624ebe-7110-486d-82ff-b64c662dc6de.jpg?1593865843", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79624ebe-7110-486d-82ff-b64c662dc6de.jpg?1593865843"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Public Execution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48188942-d0ba-4503-bd75-c7a5329bb7c8.jpg?1562553248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48188942-d0ba-4503-bd75-c7a5329bb7c8.jpg?1562553248"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Puncturing Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5b101264-4994-43b7-9156-228f7d10d2bd.jpg?1576383877", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5b101264-4994-43b7-9156-228f7d10d2bd.jpg?1576383877"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Puncturing Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e52d260a-e1ca-4228-855e-2e104b86fd6c.jpg?1562709696", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e52d260a-e1ca-4228-855e-2e104b86fd6c.jpg?1562709696"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Purge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bdcbe727-81f0-469e-92f1-0dd9acdb54ea.jpg?1562639281", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bdcbe727-81f0-469e-92f1-0dd9acdb54ea.jpg?1562639281"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d43a0b6-2a5c-4959-96ee-6e570949dfed.jpg?1562897570", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d43a0b6-2a5c-4959-96ee-6e570949dfed.jpg?1562897570"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c0aca3e-d91d-4bb7-ba4a-500d93f71718.jpg?1592713790", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c0aca3e-d91d-4bb7-ba4a-500d93f71718.jpg?1592713790"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0a16086c-5a74-45d0-8b38-e832cfbc80f7.jpg?1598917276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0a16086c-5a74-45d0-8b38-e832cfbc80f7.jpg?1598917276"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/3882ebea-2864-40ef-a21d-6ba80a0bd417.jpg?1624065750", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/3882ebea-2864-40ef-a21d-6ba80a0bd417.jpg?1624065750"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/236f46d9-276b-4418-a959-39b0963fc525.jpg?1561756786", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/236f46d9-276b-4418-a959-39b0963fc525.jpg?1561756786"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Radiant's Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28d2718e-c6fc-4961-b094-11f25f1177ff.jpg?1562862779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28d2718e-c6fc-4961-b094-11f25f1177ff.jpg?1562862779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rapid Hybridization", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83557f55-f1ab-4995-9cc1-37be895a59db.jpg?1561834181", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83557f55-f1ab-4995-9cc1-37be895a59db.jpg?1561834181"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reach of Shadows", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bbf9a803-473a-4c38-b352-d47c4fd93d5e.jpg?1562829283", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bbf9a803-473a-4c38-b352-d47c4fd93d5e.jpg?1562829283"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reave Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce7ff657-aa44-4336-895a-87518159cef6.jpg?1572490229", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce7ff657-aa44-4336-895a-87518159cef6.jpg?1572490229"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Reave Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db3d5e9d-07e8-43e1-aaf0-1f9e4ed2834a.jpg?1562045144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db3d5e9d-07e8-43e1-aaf0-1f9e4ed2834a.jpg?1562045144"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Rebuke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/267185ac-a176-423e-a7f8-ee966d1d9a1e.jpg?1562827636", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/267185ac-a176-423e-a7f8-ee966d1d9a1e.jpg?1562827636"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Regicide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07f56287-91e0-418f-8b57-35c6c30cee33.jpg?1576381853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07f56287-91e0-418f-8b57-35c6c30cee33.jpg?1576381853"}, "reprint": false, "frame_effects": ["draft"], "digital": false, "set_type": "draft_innovation"}, {"name": "Reign of Chaos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/9285b14a-fc8e-457a-b803-202e05be41e5.jpg?1562720487", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/9285b14a-fc8e-457a-b803-202e05be41e5.jpg?1562720487"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rend Flesh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92b300a3-e6a8-4ca9-bb26-03f57b5ff6ec.jpg?1562762516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92b300a3-e6a8-4ca9-bb26-03f57b5ff6ec.jpg?1562762516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/343baad1-dd58-4d64-9b0a-258618094ceb.jpg?1593095328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/343baad1-dd58-4d64-9b0a-258618094ceb.jpg?1593095328"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/3868f7ff-8a84-4153-bf5a-ff001d34e0f0.jpg?1562235914", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/3868f7ff-8a84-4153-bf5a-ff001d34e0f0.jpg?1562235914"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/179f50be-6658-42f4-b9b9-c97c7d3f239a.jpg?1562768219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/179f50be-6658-42f4-b9b9-c97c7d3f239a.jpg?1562768219"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/839df85a-1aca-4d4b-b327-2778caa6d289.jpg?1562769214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/839df85a-1aca-4d4b-b327-2778caa6d289.jpg?1562769214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Return to the Earth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95a53144-2ef3-47d9-a176-73d620202df6.jpg?1562827827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95a53144-2ef3-47d9-a176-73d620202df6.jpg?1562827827"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ride Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c021868f-9ab8-4a52-b12e-3cc35c9d67f0.jpg?1576385014", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c021868f-9ab8-4a52-b12e-3cc35c9d67f0.jpg?1576385014"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Ride Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bc9a434-9617-4a20-88f0-355b20f2c538.jpg?1562785134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bc9a434-9617-4a20-88f0-355b20f2c538.jpg?1562785134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rite of the Serpent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/005b9fec-66de-4079-88e0-c7de7e22d18e.jpg?1562781741", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/005b9fec-66de-4079-88e0-c7de7e22d18e.jpg?1562781741"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ruinous Path", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/709ab9cf-eed8-4d73-b10d-c7f6d8750328.jpg?1562921535", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/709ab9cf-eed8-4d73-b10d-c7f6d8750328.jpg?1562921535"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ruinous Path", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8a41a241-ee56-486a-9b4d-fb355b5f65b2.jpg?1562133050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8a41a241-ee56-486a-9b4d-fb355b5f65b2.jpg?1562133050"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sagittars' Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saltblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/edd1833d-64b0-4c9b-8f6b-1cf15c29d473.jpg?1562585578", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/edd1833d-64b0-4c9b-8f6b-1cf15c29d473.jpg?1562585578"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saw in Half", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05e6a7bc-a35a-4e68-99a0-be264553b5de.jpg?1638258467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05e6a7bc-a35a-4e68-99a0-be264553b5de.jpg?1638258467"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Scorch the Fields", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05c4338d-e5c0-46b4-ab16-1f9aa97b4026.jpg?1562896337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05c4338d-e5c0-46b4-ab16-1f9aa97b4026.jpg?1562896337"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/76dadfd8-8492-4c55-827c-cd4e6a40ae97.jpg?1562918808", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/76dadfd8-8492-4c55-827c-cd4e6a40ae97.jpg?1562918808"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seize the Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29bf245f-e8e0-4d32-8cd7-06d832609910.jpg?1593272276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29bf245f-e8e0-4d32-8cd7-06d832609910.jpg?1593272276"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Severed Strands", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bce654d6-fcf1-40a8-8bdb-5c37e561f7dc.jpg?1572893052", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bce654d6-fcf1-40a8-8bdb-5c37e561f7dc.jpg?1572893052"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sever Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df1cb775-3a45-4f2c-9c45-febda6434c59.jpg?1562939859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df1cb775-3a45-4f2c-9c45-febda6434c59.jpg?1562939859"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Sever Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c2d84fec-18f1-4231-a293-0dc1ff868a40.jpg?1562383023", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c2d84fec-18f1-4231-a293-0dc1ff868a40.jpg?1562383023"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sheer Drop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca6e9658-684e-44fd-9c72-c5c3faa9fb1f.jpg?1593095413", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca6e9658-684e-44fd-9c72-c5c3faa9fb1f.jpg?1593095413"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Silverstrike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f27b92a-cde9-41bc-9b23-d83b74b167d4.jpg?1576383889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f27b92a-cde9-41bc-9b23-d83b74b167d4.jpg?1576383889"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sip of Hemlock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/22051427-9b2a-4571-8c9f-ee84d8d0e4d1.jpg?1562815635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/22051427-9b2a-4571-8c9f-ee84d8d0e4d1.jpg?1562815635"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skywhaler's Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54dd4948-dc79-4fe5-b4a0-fb257058f9dd.jpg?1576381006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54dd4948-dc79-4fe5-b4a0-fb257058f9dd.jpg?1576381006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8ff06c7d-5e78-4bcf-864b-34487f6555b2.jpg?1562088317", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8ff06c7d-5e78-4bcf-864b-34487f6555b2.jpg?1562088317"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughter Pact", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42696fdb-de1f-44ae-bef3-b6af068958d0.jpg?1562908356", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42696fdb-de1f-44ae-bef3-b6af068958d0.jpg?1562908356"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughter Pact", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc8475bd-bdd4-421c-ace7-c6262f7405ce.jpg?1562932879", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc8475bd-bdd4-421c-ace7-c6262f7405ce.jpg?1562932879"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Slay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/eccda747-2680-4793-8a13-35e49b4de12f.jpg?1562944937", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/eccda747-2680-4793-8a13-35e49b4de12f.jpg?1562944937"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slingbow Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/def592b9-9d8b-4e2d-9b52-e1bc9f4bd019.jpg?1562297661", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/def592b9-9d8b-4e2d-9b52-e1bc9f4bd019.jpg?1562297661"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ff799e40-fd40-4f6a-8fa8-c22d77476168.jpg?1561854361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ff799e40-fd40-4f6a-8fa8-c22d77476168.jpg?1561854361"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/2698f01a-8574-4ae8-9441-a4361b1c29c6.jpg?1562702095", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/2698f01a-8574-4ae8-9441-a4361b1c29c6.jpg?1562702095"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/14f165ad-cfe6-4a5d-8073-a70969494855.jpg?1562595916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/14f165ad-cfe6-4a5d-8073-a70969494855.jpg?1562595916"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c103163-31b7-4d25-aa2c-02ca082ee1bf.jpg?1604193448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c103163-31b7-4d25-aa2c-02ca082ee1bf.jpg?1604193448"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/766aad27-e987-45ab-82aa-e5f44fcc34ef.jpg?1562922992", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/766aad27-e987-45ab-82aa-e5f44fcc34ef.jpg?1562922992"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/1405bb2e-2204-43ab-82a3-5d0c8537325a.jpg?1562782881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/1405bb2e-2204-43ab-82a3-5d0c8537325a.jpg?1562782881"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0103f3b1-88c2-4cbf-a67c-49420f92970f.jpg?1562825351", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0103f3b1-88c2-4cbf-a67c-49420f92970f.jpg?1562825351"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/2969e9b5-64d3-401f-9878-32ec283680ab.jpg?1562633742", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/2969e9b5-64d3-401f-9878-32ec283680ab.jpg?1562633742"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Smother", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/09b4deea-c077-46ab-898f-41b3907ecf33.jpg?1562281733", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/09b4deea-c077-46ab-898f-41b3907ecf33.jpg?1562281733"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smother", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/a/9a8321af-d667-44e7-8c03-3957286604b9.jpg?1562931422", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/a/9a8321af-d667-44e7-8c03-3957286604b9.jpg?1562931422"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snuff Out", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db8b3560-4940-40cc-9797-f909dcb1519b.jpg?1562090223", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db8b3560-4940-40cc-9797-f909dcb1519b.jpg?1562090223"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Snuff Out", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/8/18a3cca1-e50e-49b6-9e1a-f86640e3b177.jpg?1562379436", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/8/18a3cca1-e50e-49b6-9e1a-f86640e3b177.jpg?1562379436"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soul Reap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2a129e2-bed5-4ee7-b223-851452f72682.jpg?1562942827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2a129e2-bed5-4ee7-b223-851452f72682.jpg?1562942827"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soul Rend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fa084e1-05c2-4691-b9fe-3e3c717e5c9d.jpg?1562720249", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fa084e1-05c2-4691-b9fe-3e3c717e5c9d.jpg?1562720249"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spark Harvest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2013a138-f8e2-4a67-91e8-759288d985a7.jpg?1557576556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2013a138-f8e2-4a67-91e8-759288d985a7.jpg?1557576556"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spiteful Blow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fafaa798-e534-4cd0-b369-9e767a02fe3d.jpg?1593095848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fafaa798-e534-4cd0-b369-9e767a02fe3d.jpg?1593095848"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spread the Sickness", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de42a771-4f5c-4295-b070-8cb857a0279e.jpg?1562615413", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de42a771-4f5c-4295-b070-8cb857a0279e.jpg?1562615413"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Strangling Soot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/6723e552-baf5-4b6a-8af6-843fd8597f6c.jpg?1562916570", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/6723e552-baf5-4b6a-8af6-843fd8597f6c.jpg?1562916570"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stream of Acid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbbf00b3-2a1b-4ad3-8a5b-deec9e08a231.jpg?1562875294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbbf00b3-2a1b-4ad3-8a5b-deec9e08a231.jpg?1562875294"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Sultai Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/993c9028-9b1b-4903-81b2-3cf4f37b7229.jpg?1562790829", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/993c9028-9b1b-4903-81b2-3cf4f37b7229.jpg?1562790829"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sultai Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c72495e-3c03-4dff-b671-47764af5058d.jpg?1562701596", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c72495e-3c03-4dff-b671-47764af5058d.jpg?1562701596"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sungold Barrage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee507688-9890-47c4-bb04-43c51eb48e22.jpg?1634348527", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee507688-9890-47c4-bb04-43c51eb48e22.jpg?1634348527"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Surge of Righteousness", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/114366f3-237f-4f96-b644-5bd82d97b18b.jpg?1562782657", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/114366f3-237f-4f96-b644-5bd82d97b18b.jpg?1562782657"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/cec3a260-6c50-401d-a0ff-bf49a973e1a1.jpg?1562943805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/cec3a260-6c50-401d-a0ff-bf49a973e1a1.jpg?1562943805"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Swat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/947b8923-d9d6-4dd8-928b-91be9105ffb4.jpg?1562863743", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/947b8923-d9d6-4dd8-928b-91be9105ffb4.jpg?1562863743"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swift Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/904cb2f5-eb62-4416-8236-d2fbeadf1dc4.jpg?1562031231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/904cb2f5-eb62-4416-8236-d2fbeadf1dc4.jpg?1562031231"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Swift Response", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a90c1ad0-83bd-471c-8d4c-e65bc2abaa18.jpg?1594735305", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a90c1ad0-83bd-471c-8d4c-e65bc2abaa18.jpg?1594735305"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Take Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66fbde22-d98d-4f12-b4d8-1bad2a9878b2.jpg?1562302645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66fbde22-d98d-4f12-b4d8-1bad2a9878b2.jpg?1562302645"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Terashi's Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc5fa34b-95c6-4e02-9e15-3f595f744741.jpg?1562879427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc5fa34b-95c6-4e02-9e15-3f595f744741.jpg?1562879427"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terminal Agony", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3ddb6d98-3a3a-4332-a64e-97aec71777a4.jpg?1626103523", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3ddb6d98-3a3a-4332-a64e-97aec71777a4.jpg?1626103523"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8af2d815-d8b2-42ff-9889-acbe77a42583.jpg?1593814672", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8af2d815-d8b2-42ff-9889-acbe77a42583.jpg?1593814672"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dc8acab8-4469-4baa-af2f-a3f49b841a55.jpg?1562644597", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dc8acab8-4469-4baa-af2f-a3f49b841a55.jpg?1562644597"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/190ca502-672d-4cc0-b6e0-b9de517058d0.jpg?1562900286", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/190ca502-672d-4cc0-b6e0-b9de517058d0.jpg?1562900286"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54f3c523-09dc-4f2a-9bd9-7614e061de28.jpg?1655823700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54f3c523-09dc-4f2a-9bd9-7614e061de28.jpg?1655823700"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfd77920-7dbb-4673-9317-095ce9483878.jpg?1575602242", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfd77920-7dbb-4673-9317-095ce9483878.jpg?1575602242"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d1ccc3b-a6bd-4dc8-b7ba-99172d612106.jpg?1562546519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d1ccc3b-a6bd-4dc8-b7ba-99172d612106.jpg?1562546519"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f41651db-619a-4ab4-86cf-a0d32297dbdf.jpg?1562163040", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f41651db-619a-4ab4-86cf-a0d32297dbdf.jpg?1562163040"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21004958-2c7e-4a55-bc80-411c4d780106.jpg?1559591536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21004958-2c7e-4a55-bc80-411c4d780106.jpg?1559591536"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba9d4863-75f2-4894-8033-e4ffebe0547a.jpg?1561757930", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba9d4863-75f2-4894-8033-e4ffebe0547a.jpg?1561757930"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Tezzeret's Betrayal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d71efa6-5de8-476f-86ce-0790956e574f.jpg?1562932177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d71efa6-5de8-476f-86ce-0790956e574f.jpg?1562932177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thornado", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eadffd6b-d707-4fc5-a600-44eb9124b195.jpg?1615475425", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eadffd6b-d707-4fc5-a600-44eb9124b195.jpg?1615475425"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Tidy Conclusion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfcf6849-4fac-41b9-8e70-dc77c4562a42.jpg?1576381900", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfcf6849-4fac-41b9-8e70-dc77c4562a42.jpg?1576381900"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trip Wire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4eb1e16f-002e-4a81-ba41-cfe41f3a9071.jpg?1634292196", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4eb1e16f-002e-4a81-ba41-cfe41f3a9071.jpg?1634292196"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Triumphant Surge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75d6eb18-a49d-4fa5-a333-78aafbc4abcb.jpg?1581479273", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75d6eb18-a49d-4fa5-a333-78aafbc4abcb.jpg?1581479273"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tyrant's Scorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7e2708c-2824-4925-b529-d625deb77924.jpg?1557577324", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7e2708c-2824-4925-b529-d625deb77924.jpg?1557577324"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ultimate Price", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b41f7cf3-bd76-4184-b694-f565aa5cf3a4.jpg?1562791851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b41f7cf3-bd76-4184-b694-f565aa5cf3a4.jpg?1562791851"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Ultimate Price", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2b4912a-83a2-4870-8fac-81fa79da2830.jpg?1562793639", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2b4912a-83a2-4870-8fac-81fa79da2830.jpg?1562793639"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ultimate Price", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/334e3ffc-a4dc-405c-b6e4-7182f28241fe.jpg?1562639743", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/334e3ffc-a4dc-405c-b6e4-7182f28241fe.jpg?1562639743"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Unforge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d369a3da-3424-4984-a50a-59fd9c3d689e.jpg?1562639761", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d369a3da-3424-4984-a50a-59fd9c3d689e.jpg?1562639761"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unholy Hunger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/5994b7b0-3bca-480b-b265-ed269f15c17e.jpg?1562021369", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/5994b7b0-3bca-480b-b265-ed269f15c17e.jpg?1562021369"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Unlicensed Disintegration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16ad8f86-7860-4896-a161-07bf347bbd5b.jpg?1576382889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16ad8f86-7860-4896-a161-07bf347bbd5b.jpg?1576382889"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unlicensed Disintegration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74843584-d6b1-4ee6-bedb-999ab0a42bb9.jpg?1562636815", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74843584-d6b1-4ee6-bedb-999ab0a42bb9.jpg?1562636815"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Valorous Stance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0e6b9a3b-8a19-4094-8dbb-08a0a9ca04a0.jpg?1643587276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0e6b9a3b-8a19-4094-8dbb-08a0a9ca04a0.jpg?1643587276"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Valorous Stance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65998e94-15a0-41f1-8288-730b957f81df.jpg?1562825972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65998e94-15a0-41f1-8288-730b957f81df.jpg?1562825972"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Valorous Stance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f482213a-4e3e-4e13-82a1-88e7d6c4ba2c.jpg?1561758433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f482213a-4e3e-4e13-82a1-88e7d6c4ba2c.jpg?1561758433"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Vanquish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27bae717-56c0-4028-b1e7-a445d6a57176.jpg?1562875950", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27bae717-56c0-4028-b1e7-a445d6a57176.jpg?1562875950"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Foul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fdcec06-e33c-4737-b81e-b156d6e3fd77.jpg?1562821391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fdcec06-e33c-4737-b81e-b156d6e3fd77.jpg?1562821391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Weak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c15852d4-2c79-4841-bb65-6661d88fdfab.jpg?1604196688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c15852d4-2c79-4841-bb65-6661d88fdfab.jpg?1604196688"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Weak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e599ed0b-4b3b-4341-b6ac-7fdfdc6799a3.jpg?1562565757", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e599ed0b-4b3b-4341-b6ac-7fdfdc6799a3.jpg?1562565757"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vendetta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/039fc76d-3b7e-4329-a997-07c25509e421.jpg?1562700700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/039fc76d-3b7e-4329-a997-07c25509e421.jpg?1562700700"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Vendetta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/67ced38e-0f33-4bda-8e18-09f6ac03a3d7.jpg?1562381344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/67ced38e-0f33-4bda-8e18-09f6ac03a3d7.jpg?1562381344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/011b9836-fee4-4e83-add7-5e13cb1275d6.jpg?1562231350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/011b9836-fee4-4e83-add7-5e13cb1275d6.jpg?1562231350"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a882fbcc-b2b9-44f3-b5cc-56759879f473.jpg?1562257514", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a882fbcc-b2b9-44f3-b5cc-56759879f473.jpg?1562257514"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/3209ee48-4485-44fc-b71d-cd6241674e64.jpg?1562906693", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/3209ee48-4485-44fc-b71d-cd6241674e64.jpg?1562906693"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91c249b-157c-4f1d-8171-29d1e75b1c9f.jpg?1562447828", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91c249b-157c-4f1d-8171-29d1e75b1c9f.jpg?1562447828"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Venomous Vines", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db10359c-1ea8-4453-bc01-f638ad20a5ec.jpg?1562632255", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db10359c-1ea8-4453-bc01-f638ad20a5ec.jpg?1562632255"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/terror3.json b/web/public/mtg/jsons/terror3.json new file mode 100644 index 00000000..463fb4a7 --- /dev/null +++ b/web/public/mtg/jsons/terror3.json @@ -0,0 +1 @@ +{"has_more": false, "data": [{"name": "Victim of Night", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee4c6135-eee9-43ec-bbe8-76912352dcac.jpg?1562839346", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee4c6135-eee9-43ec-bbe8-76912352dcac.jpg?1562839346"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a1bfefd-dae8-49e9-9d56-cc852e3dc93b.jpg?1562904968", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a1bfefd-dae8-49e9-9d56-cc852e3dc93b.jpg?1562904968"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e4978ecd-3c2e-49e2-98e0-0172887e4319.jpg?1628337210", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e4978ecd-3c2e-49e2-98e0-0172887e4319.jpg?1628337210"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "draft_innovation"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97aeb745-5b98-4240-a1a8-861c06d616cc.jpg?1562925629", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97aeb745-5b98-4240-a1a8-861c06d616cc.jpg?1562925629"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6fef34ec-f728-4919-9254-576ed889a654.jpg?1561757378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6fef34ec-f728-4919-9254-576ed889a654.jpg?1561757378"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c2d88dd-813a-4cd5-9a6a-ca6f80564078.jpg?1561756842", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c2d88dd-813a-4cd5-9a6a-ca6f80564078.jpg?1561756842"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Violet Pall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bdfd0fa3-37d2-403e-99fe-8c9e57515e9d.jpg?1562881062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bdfd0fa3-37d2-403e-99fe-8c9e57515e9d.jpg?1562881062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vraska's Stoneglare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27fc4db6-a5f5-4254-ae64-c8eaf2c98030.jpg?1572894308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27fc4db6-a5f5-4254-ae64-c8eaf2c98030.jpg?1572894308"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Walk the Plank", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/0038ac6a-318f-44fb-bb64-7ae172c4aca3.jpg?1562549640", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/0038ac6a-318f-44fb-bb64-7ae172c4aca3.jpg?1562549640"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Walk the Plank", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d7f3b24f-e2ec-4405-b6f5-147292063b0a.jpg?1562935396", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d7f3b24f-e2ec-4405-b6f5-147292063b0a.jpg?1562935396"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Wallop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45ce5126-e7b1-41ab-9e56-1e12927c4d27.jpg?1562909144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45ce5126-e7b1-41ab-9e56-1e12927c4d27.jpg?1562909144"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Weed Strangle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1f7fb79-19a8-483a-bf91-e687f7da4e9c.jpg?1562366513", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1f7fb79-19a8-483a-bf91-e687f7da4e9c.jpg?1562366513"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wing Snare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d37ba325-5a14-473b-9def-6a4660a50d7a.jpg?1562248658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d37ba325-5a14-473b-9def-6a4660a50d7a.jpg?1562248658"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Wing Snare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19116d5d-8f2d-4e85-849d-1fbaa67e8cfd.jpg?1562862328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19116d5d-8f2d-4e85-849d-1fbaa67e8cfd.jpg?1562862328"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Winnow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d61748dd-4010-47da-8717-ca0147877057.jpg?1562937982", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d61748dd-4010-47da-8717-ca0147877057.jpg?1562937982"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Witherbloom Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87d5e94b-0b35-4efd-9158-1767dcaea38c.jpg?1624740473", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87d5e94b-0b35-4efd-9158-1767dcaea38c.jpg?1624740473"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wrecking Ball", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/1182e0cf-475e-4cb9-a00a-c9a4032f51e4.jpg?1593273836", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/1182e0cf-475e-4cb9-a00a-c9a4032f51e4.jpg?1593273836"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wretched Banquet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bdaf55b-2de3-4c8a-90ae-9c88c9d00fd7.jpg?1562800483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bdaf55b-2de3-4c8a-90ae-9c88c9d00fd7.jpg?1562800483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "You Are Already Dead", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/768727ce-4f84-4527-8d69-3c9b7877b748.jpg?1654567474", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/768727ce-4f84-4527-8d69-3c9b7877b748.jpg?1654567474"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/wrath1.json b/web/public/mtg/jsons/wrath1.json new file mode 100644 index 00000000..267e34b0 --- /dev/null +++ b/web/public/mtg/jsons/wrath1.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Aetherize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33303859-c6e0-4ebd-bb5f-44be7f5d7459.jpg?1561821990", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33303859-c6e0-4ebd-bb5f-44be7f5d7459.jpg?1561821990"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aetherspouts", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46f1b48f-6528-46bd-a384-2358af25e500.jpg?1562786278", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46f1b48f-6528-46bd-a384-2358af25e500.jpg?1562786278"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Aggravate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/999f40a7-b723-42e1-83c1-f45a72a26dd4.jpg?1592709004", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/999f40a7-b723-42e1-83c1-f45a72a26dd4.jpg?1592709004"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Akroma's Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5e33aaf7-7490-4b64-a966-82fbf7ca8686.jpg?1562917166", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5e33aaf7-7490-4b64-a966-82fbf7ca8686.jpg?1562917166"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Akroma's Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4f112edd-1d2f-45ad-aaeb-6c0934d24c1f.jpg?1570203942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4f112edd-1d2f-45ad-aaeb-6c0934d24c1f.jpg?1570203942"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Alpha Brawl", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2ec168a-3e4f-4527-901a-bc28cc28d125.jpg?1562949045", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2ec168a-3e4f-4527-901a-bc28cc28d125.jpg?1562949045"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90795891-5e67-47c0-8d52-a5e5c5a9ef81.jpg?1562821425", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90795891-5e67-47c0-8d52-a5e5c5a9ef81.jpg?1562821425"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/dedcbd3b-7e30-44cf-b9b7-1bb32c11ef67.jpg?1655825935", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/dedcbd3b-7e30-44cf-b9b7-1bb32c11ef67.jpg?1655825935"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec898bc9-9ab8-4394-8c4c-8d652f313919.jpg?1607042506", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec898bc9-9ab8-4394-8c4c-8d652f313919.jpg?1607042506"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88f2ca85-de02-4471-b90f-d13ccb93c8bb.jpg?1597250046", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88f2ca85-de02-4471-b90f-d13ccb93c8bb.jpg?1597250046"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Arcbond", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9bc397d1-50a8-46cd-98b2-7104f2241420.jpg?1562828028", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9bc397d1-50a8-46cd-98b2-7104f2241420.jpg?1562828028"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arms of Hadar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db1fd431-8f6d-4ca5-bc0c-53881c500da1.jpg?1653767219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db1fd431-8f6d-4ca5-bc0c-53881c500da1.jpg?1653767219"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Austere Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bef16a71-5ed2-4f30-a844-c02a0754f679.jpg?1562853529", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bef16a71-5ed2-4f30-a844-c02a0754f679.jpg?1562853529"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Austere Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8ee73fe8-d52b-43bb-ab91-5545192be676.jpg?1562357897", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8ee73fe8-d52b-43bb-ab91-5545192be676.jpg?1562357897"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Austere Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbbf55bc-6bb3-458a-8cf0-1f603bb2acb3.jpg?1562939169", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbbf55bc-6bb3-458a-8cf0-1f603bb2acb3.jpg?1562939169"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Baki's Curse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3261b4c-7963-4ca0-875d-77b7c8571b3f.jpg?1562588703", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3261b4c-7963-4ca0-875d-77b7c8571b3f.jpg?1562588703"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Barrage of Boulders", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2eb1a9f7-32ba-48fd-a7f7-788b0ec052c6.jpg?1562784418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2eb1a9f7-32ba-48fd-a7f7-788b0ec052c6.jpg?1562784418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Begin Anew", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d885aedb-2c65-4099-af2e-0a540caf8d33.jpg?1645417110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d885aedb-2c65-4099-af2e-0a540caf8d33.jpg?1645417110"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Bite of the Black Rose", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/254d1363-1204-41d2-9799-34484a3eb211.jpg?1562864493", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/254d1363-1204-41d2-9799-34484a3eb211.jpg?1562864493"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Biting Rain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5ac62d2f-6834-4d98-b69d-bd7b5831d981.jpg?1576384359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5ac62d2f-6834-4d98-b69d-bd7b5831d981.jpg?1576384359"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Black Sun's Zenith", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/03bdcf52-50b8-42c0-9665-931d83f5f314.jpg?1562609329", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/03bdcf52-50b8-42c0-9665-931d83f5f314.jpg?1562609329"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Black Sun's Zenith", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/dd88131a-2811-4a1f-bb9a-c82e12c1493b.jpg?1561758222", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/dd88131a-2811-4a1f-bb9a-c82e12c1493b.jpg?1561758222"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Blasphemous Act", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/509ce648-fb76-486d-8b39-183e368b7cb7.jpg?1562830111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/509ce648-fb76-486d-8b39-183e368b7cb7.jpg?1562830111"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blazing Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3adc0288-acdf-4a99-9bfb-919cae1aeb69.jpg?1591227065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3adc0288-acdf-4a99-9bfb-919cae1aeb69.jpg?1591227065"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Blazing Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba450179-4591-4e8a-b6ca-66cbef1817f2.jpg?1543675486", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba450179-4591-4e8a-b6ca-66cbef1817f2.jpg?1543675486"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bloodline Culling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fac827f7-a587-4adf-8408-2d9ccd9c1343.jpg?1634349575", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fac827f7-a587-4adf-8408-2d9ccd9c1343.jpg?1634349575"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blood Money", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d45c18c-b8eb-465c-8dfc-fd6da73e25b5.jpg?1653442044", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d45c18c-b8eb-465c-8dfc-fd6da73e25b5.jpg?1653442044"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Blood on the Snow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d8606f40-0af4-443b-a413-a88dc3e8f32e.jpg?1631047655", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d8606f40-0af4-443b-a413-a88dc3e8f32e.jpg?1631047655"}, "reprint": false, "frame_effects": ["snow"], "digital": false, "set_type": "expansion"}, {"name": "Boiling Earth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cdaab44c-4ce1-43fb-915c-c687fe8559ce.jpg?1562943558", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cdaab44c-4ce1-43fb-915c-c687fe8559ce.jpg?1562943558"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bonfire of the Damned", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e60610fe-891d-46de-b556-d03b637dccec.jpg?1592709031", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e60610fe-891d-46de-b556-d03b637dccec.jpg?1592709031"}, "reprint": false, "frame_effects": ["miracle"], "digital": false, "set_type": "expansion"}, {"name": "Bontu's Last Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b4d0102-c0d6-4d50-941a-dd1c3575a3a8.jpg?1562791273", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b4d0102-c0d6-4d50-941a-dd1c3575a3a8.jpg?1562791273"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Borrowing the East Wind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/6/96ba9014-d750-4924-aa6f-8b9f421807f9.jpg?1562257056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/6/96ba9014-d750-4924-aa6f-8b9f421807f9.jpg?1562257056"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Breaking Point", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/765ec2c9-8ffe-488a-bebe-e5dd63825a8c.jpg?1562630501", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/765ec2c9-8ffe-488a-bebe-e5dd63825a8c.jpg?1562630501"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath of Darigaaz", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/480bb7e3-df03-454d-ada0-592ef8a4a6f0.jpg?1562909692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/480bb7e3-df03-454d-ada0-592ef8a4a6f0.jpg?1562909692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath Weapon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0174e40a-0ef5-4439-91e6-3fc39f482520.jpg?1653596065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0174e40a-0ef5-4439-91e6-3fc39f482520.jpg?1653596065"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Burn Down the House", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20ded7af-8086-465e-a980-3099217d324c.jpg?1634350460", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20ded7af-8086-465e-a980-3099217d324c.jpg?1634350460"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burning of Xinye", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33a1fe45-52d2-4c50-bedc-eee156ab69c8.jpg?1562256064", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33a1fe45-52d2-4c50-bedc-eee156ab69c8.jpg?1562256064"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "By Invitation Only", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46764e49-64da-4a94-b61c-75e006b2c5a9.jpg?1643585907", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46764e49-64da-4a94-b61c-75e006b2c5a9.jpg?1643585907"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Canopy Surge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e19d68e-7554-4627-a316-beb1f75fa494.jpg?1562904391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e19d68e-7554-4627-a316-beb1f75fa494.jpg?1562904391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cataclysm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/024ae668-a1ae-4020-89c8-acbd8bd0a691.jpg?1593863070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/024ae668-a1ae-4020-89c8-acbd8bd0a691.jpg?1593863070"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cataclysm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3ed0d87b-1ce8-452b-9558-fa1923407f16.jpg?1559618030", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3ed0d87b-1ce8-452b-9558-fa1923407f16.jpg?1559618030"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Catastrophe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/294d21dc-5c76-4449-936f-9b7541d37c86.jpg?1562903769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/294d21dc-5c76-4449-936f-9b7541d37c86.jpg?1562903769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cave-In", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/440d9d26-f304-467d-af79-914cc65f082e.jpg?1562380418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/440d9d26-f304-467d-af79-914cc65f082e.jpg?1562380418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Celestial Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5fd29cd7-9950-49c0-9e71-d6b0f944292c.jpg?1637627823", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5fd29cd7-9950-49c0-9e71-d6b0f944292c.jpg?1637627823"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Cerebral Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77161159-ee2c-485d-8674-d8590ccc62e1.jpg?1562819165", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77161159-ee2c-485d-8674-d8590ccc62e1.jpg?1562819165"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chain Reaction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/614b9df9-c959-4bdb-91c0-75ae60b724e4.jpg?1567754665", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/614b9df9-c959-4bdb-91c0-75ae60b724e4.jpg?1567754665"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chandra's Flame Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f13b6a7-fa62-4d94-a56c-f2e64c8c1666.jpg?1592518162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f13b6a7-fa62-4d94-a56c-f2e64c8c1666.jpg?1592518162"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Chandra's Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e761acf6-6618-44cc-8f65-1d7ad7e520fe.jpg?1561758344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e761acf6-6618-44cc-8f65-1d7ad7e520fe.jpg?1561758344"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Chandra's Ignition", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d4c90de-49aa-43ed-a18a-f7f96268e5eb.jpg?1562027623", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d4c90de-49aa-43ed-a18a-f7f96268e5eb.jpg?1562027623"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cinderclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/5516cf97-805f-4a21-a4c6-2d6e55865336.jpg?1604196918", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/5516cf97-805f-4a21-a4c6-2d6e55865336.jpg?1604196918"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Citywide Bust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a995200f-1e9d-4ff3-9e04-4a4309e0e09c.jpg?1572892490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a995200f-1e9d-4ff3-9e04-4a4309e0e09c.jpg?1572892490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Claws of Wirewood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b94cd33f-40b6-4b11-97a4-8676ef27631e.jpg?1562533774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b94cd33f-40b6-4b11-97a4-8676ef27631e.jpg?1562533774"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cleanse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2fbd611b-ac97-4516-bad7-cc9ee4ef74f7.jpg?1591836785", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2fbd611b-ac97-4516-bad7-cc9ee4ef74f7.jpg?1591836785"}, "content_warning": true, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cleansing Nova", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/11f1b6cd-d89a-4468-a097-7a54efe22f2c.jpg?1625192921", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/11f1b6cd-d89a-4468-a097-7a54efe22f2c.jpg?1625192921"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Cleansing Nova", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5be8eed7-c033-42cc-bd21-4512db7af66c.jpg?1562302239", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5be8eed7-c033-42cc-bd21-4512db7af66c.jpg?1562302239"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cloudkill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c71b2b8-f5ef-4885-9f8d-284fe335d184.jpg?1654365309", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c71b2b8-f5ef-4885-9f8d-284fe335d184.jpg?1654365309"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Collision of Realms", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49618217-1bbb-498a-a6f0-f269ce7166a6.jpg?1651655330", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49618217-1bbb-498a-a6f0-f269ce7166a6.jpg?1651655330"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Conductive Current", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43adef3c-87f0-4db1-9fbb-017c96c815ff.jpg?1645416694", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43adef3c-87f0-4db1-9fbb-017c96c815ff.jpg?1645416694"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Consume the Meek", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c94dcaed-55da-41f4-a61f-2a79ef6c1459.jpg?1593095734", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c94dcaed-55da-41f4-a61f-2a79ef6c1459.jpg?1593095734"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Consume the Meek", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/921ebea0-48bf-4338-9e84-2cd06ffe6f4b.jpg?1562706383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/921ebea0-48bf-4338-9e84-2cd06ffe6f4b.jpg?1562706383"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corpse Explosion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/7/c700eff3-138b-4d4c-ba36-58b98986168c.jpg?1650029916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/7/c700eff3-138b-4d4c-ba36-58b98986168c.jpg?1650029916"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corrosive Gale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/04a13825-ab9b-4ffd-9b59-6198181891b9.jpg?1562875245", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/04a13825-ab9b-4ffd-9b59-6198181891b9.jpg?1562875245"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cosmotronic Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/69c5bafa-8cd8-4158-98e0-46dc74c027c0.jpg?1572893121", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/69c5bafa-8cd8-4158-98e0-46dc74c027c0.jpg?1572893121"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cower in Fear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf2d53b8-7847-4b94-9711-eca29facccba.jpg?1562559508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf2d53b8-7847-4b94-9711-eca29facccba.jpg?1562559508"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Crippling Fear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d9bd181-b99f-477e-bcfb-9b78cbf51224.jpg?1631047737", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d9bd181-b99f-477e-bcfb-9b78cbf51224.jpg?1631047737"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crush the Weak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/875a20c2-1d17-46ea-b4d2-3e70bc05aae3.jpg?1631049096", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/875a20c2-1d17-46ea-b4d2-3e70bc05aae3.jpg?1631049096"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crux of Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1d45374-a41b-4b3f-a7c8-3eb5ca767cf6.jpg?1648060698", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1d45374-a41b-4b3f-a7c8-3eb5ca767cf6.jpg?1648060698"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crux of Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3ccea48-ee90-4da8-832d-8c30c98bf1dd.jpg?1623779891", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3ccea48-ee90-4da8-832d-8c30c98bf1dd.jpg?1623779891"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Cry of the Carnarium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/1/715a14a3-046e-45ca-b943-dd630e5202b7.jpg?1584830546", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/715a14a3-046e-45ca-b943-dd630e5202b7.jpg?1584830546"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Culling Sun", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5ec5a956-c846-46b6-91bd-37e4db542280.jpg?1593272635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5ec5a956-c846-46b6-91bd-37e4db542280.jpg?1593272635"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dakmor Plague", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58b38ef1-5839-4292-91d6-e45698c69a75.jpg?1562915882", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58b38ef1-5839-4292-91d6-e45698c69a75.jpg?1562915882"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Damn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/26c68473-70ca-40ba-b5c6-71ec30f88a2c.jpg?1562568132", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/26c68473-70ca-40ba-b5c6-71ec30f88a2c.jpg?1562568132"}, "reprint": false, "frame_effects": ["colorshifted"], "digital": false, "set_type": "expansion"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dca972d7-fcf8-4ac4-a98b-fffb2fbb4dbc.jpg?1656326586", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dca972d7-fcf8-4ac4-a98b-fffb2fbb4dbc.jpg?1656326586"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fc1d7db-11a3-4ff9-8d27-1fe401053080.jpg?1615223046", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fc1d7db-11a3-4ff9-8d27-1fe401053080.jpg?1615223046"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c916a119-9eee-440d-90ef-05ab35bf3fbe.jpg?1562935376", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c916a119-9eee-440d-90ef-05ab35bf3fbe.jpg?1562935376"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c5823bb-d56d-4bed-ba3f-09bdd93c52dc.jpg?1561757368", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c5823bb-d56d-4bed-ba3f-09bdd93c52dc.jpg?1561757368"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Damning Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5be40c34-6df0-4471-b99b-850ae2be9923.jpg?1650406359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5be40c34-6df0-4471-b99b-850ae2be9923.jpg?1650406359"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2aa98fca-972b-46c2-bdec-6ace35c988d5.jpg?1562610835", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2aa98fca-972b-46c2-bdec-6ace35c988d5.jpg?1562610835"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5bf85d00-52cc-4594-b4fd-5ec424210524.jpg?1623592427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5bf85d00-52cc-4594-b4fd-5ec424210524.jpg?1623592427"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/aea87800-6725-4399-b489-651637e1804a.jpg?1561757821", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/aea87800-6725-4399-b489-651637e1804a.jpg?1561757821"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6ba873f7-a7a4-44aa-84a6-44501424dc7a.jpg?1561757360", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6ba873f7-a7a4-44aa-84a6-44501424dc7a.jpg?1561757360"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Deadly Tempest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9ca2810-3c1b-43cf-af1e-078015bf3492.jpg?1562708889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9ca2810-3c1b-43cf-af1e-078015bf3492.jpg?1562708889"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Dead of Winter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f480df6d-e227-4ccb-ad6d-a4ad48a360ad.jpg?1562201599", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f480df6d-e227-4ccb-ad6d-a4ad48a360ad.jpg?1562201599"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Deafening Clarion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e115a81-001d-4e17-98af-6a63f2b0967f.jpg?1572893584", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e115a81-001d-4e17-98af-6a63f2b0967f.jpg?1572893584"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Cloud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97a0bfb9-859b-4fed-a1c4-1f0924715801.jpg?1562638297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97a0bfb9-859b-4fed-a1c4-1f0924715801.jpg?1562638297"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Frenzy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92096311-a3fa-41fc-b7a9-71ac2310f7fe.jpg?1562790443", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92096311-a3fa-41fc-b7a9-71ac2310f7fe.jpg?1562790443"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decree of Annihilation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73744717-518c-478e-9da9-201c49124f37.jpg?1562530626", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73744717-518c-478e-9da9-201c49124f37.jpg?1562530626"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decree of Pain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1958a07-fc75-41cd-ac45-d92d49587754.jpg?1562536145", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1958a07-fc75-41cd-ac45-d92d49587754.jpg?1562536145"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decree of Pain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/03c37c68-cccf-4309-80c5-828108b942a4.jpg?1569957295", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/03c37c68-cccf-4309-80c5-828108b942a4.jpg?1569957295"}, "reprint": true, "digital": false, "set_type": "arsenal"}, {"name": "Delayed Blast Fireball", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e59903e3-a344-4218-9d41-8b19a9bc8311.jpg?1654082475", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e59903e3-a344-4218-9d41-8b19a9bc8311.jpg?1654082475"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Depopulate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c53c1898-9107-4bf8-b249-d0502fb9596d.jpg?1649698259", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c53c1898-9107-4bf8-b249-d0502fb9596d.jpg?1649698259"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Descend upon the Sinful", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c9ff2cbf-a1dc-4cc5-9a5d-8439899d4e87.jpg?1576383726", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c9ff2cbf-a1dc-4cc5-9a5d-8439899d4e87.jpg?1576383726"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Desert Sandstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/588ad2bf-405d-4c36-b485-e415c22f2703.jpg?1562256542", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/588ad2bf-405d-4c36-b485-e415c22f2703.jpg?1562256542"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Destructive Force", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1abde258-08e0-4762-8142-38e08a960f9d.jpg?1562452402", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1abde258-08e0-4762-8142-38e08a960f9d.jpg?1562452402"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Devastate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfe7c990-a34b-475e-a612-447c22f998d3.jpg?1562930849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfe7c990-a34b-475e-a612-447c22f998d3.jpg?1562930849"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devastating Dreams", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9fffeed0-a5ea-47ac-a7a4-0cc3bb1d408a.jpg?1562631212", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9fffeed0-a5ea-47ac-a7a4-0cc3bb1d408a.jpg?1562631212"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devastation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/1/71cce019-162c-4969-89ac-1cf94148a032.jpg?1562446865", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/71cce019-162c-4969-89ac-1cf94148a032.jpg?1562446865"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Disaster Radius", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/9318ae4a-1084-49d9-b5de-dbe4d80836cb.jpg?1562706406", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/9318ae4a-1084-49d9-b5de-dbe4d80836cb.jpg?1562706406"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disorder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6d11422-60a9-4386-8e7f-dd7dcdac58d8.jpg?1562246308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6d11422-60a9-4386-8e7f-dd7dcdac58d8.jpg?1562246308"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Disorder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3fa5ec10-dfea-4e6d-8996-553a4a0eb8a4.jpg?1562908220", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3fa5ec10-dfea-4e6d-8996-553a4a0eb8a4.jpg?1562908220"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Divine Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/446ea3a4-206a-4097-87c1-c04bb7812972.jpg?1562829296", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/446ea3a4-206a-4097-87c1-c04bb7812972.jpg?1562829296"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Doomskar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/130ee895-1e5e-4f82-bb66-e1275bac75dd.jpg?1631045641", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/130ee895-1e5e-4f82-bb66-e1275bac75dd.jpg?1631045641"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Do or Die", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05f63cd9-e82b-4cf8-b8ce-f0aa0157692b.jpg?1562896148", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05f63cd9-e82b-4cf8-b8ce-f0aa0157692b.jpg?1562896148"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Draconic Intervention", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/657de246-b9fc-47b1-b932-091e9500bb82.jpg?1624591671", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/657de246-b9fc-47b1-b932-091e9500bb82.jpg?1624591671"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in Sorrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/287c7570-8080-43dc-a586-963e15566446.jpg?1593091908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/287c7570-8080-43dc-a586-963e15566446.jpg?1593091908"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in Sorrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/107cdfa4-da15-4610-9b72-e6e6c59deec4.jpg?1630641355", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/107cdfa4-da15-4610-9b72-e6e6c59deec4.jpg?1630641355"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Dry Spell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a142f369-8fdd-4dc8-b5d9-3493455cc588.jpg?1562447357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a142f369-8fdd-4dc8-b5d9-3493455cc588.jpg?1562447357"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Dry Spell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/547c10ea-8ace-4496-8b99-61863c0cec1b.jpg?1562587287", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/547c10ea-8ace-4496-8b99-61863c0cec1b.jpg?1562587287"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dry Spell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/997ea663-40a1-49b7-80f1-2e1febc1b6fa.jpg?1562587769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/997ea663-40a1-49b7-80f1-2e1febc1b6fa.jpg?1562587769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Duneblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8e3fba5b-b4cd-4050-b9f0-d8eabe82e7d6.jpg?1562701635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8e3fba5b-b4cd-4050-b9f0-d8eabe82e7d6.jpg?1562701635"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Dwarven Catapult", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8c1c6932-638a-4df7-bf9b-8d921f7484d9.jpg?1562921034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8c1c6932-638a-4df7-bf9b-8d921f7484d9.jpg?1562921034"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f04dc5c-2764-42d0-974e-6d902222c138.jpg?1562242701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f04dc5c-2764-42d0-974e-6d902222c138.jpg?1562242701"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05126438-e806-43e6-bd81-233b629b4a1b.jpg?1562896224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05126438-e806-43e6-bd81-233b629b4a1b.jpg?1562896224"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/272f65a3-3c0c-417d-b5b6-276a643d643e.jpg?1562446144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/272f65a3-3c0c-417d-b5b6-276a643d643e.jpg?1562446144"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01bde909-899d-4efc-aac5-57b69fa764db.jpg?1562588740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01bde909-899d-4efc-aac5-57b69fa764db.jpg?1562588740"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e68ac362-6cdc-48a6-bdd3-4f8ea32add64.jpg?1559591701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e68ac362-6cdc-48a6-bdd3-4f8ea32add64.jpg?1559591701"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Electrickery", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5ed81ee8-d5e4-4127-876e-9bff81f9c726.jpg?1562787062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5ed81ee8-d5e4-4127-876e-9bff81f9c726.jpg?1562787062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Endemic Plague", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/15326971-a53b-45f2-8f1d-1b82935286e1.jpg?1562900082", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/15326971-a53b-45f2-8f1d-1b82935286e1.jpg?1562900082"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "End Hostilities", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/80a53ed7-a7b7-40d8-9239-cf6f205dbc59.jpg?1562789330", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/80a53ed7-a7b7-40d8-9239-cf6f205dbc59.jpg?1562789330"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "End the Festivities", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bec748e6-7245-4a71-aeee-cefed8346948.jpg?1643591154", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bec748e6-7245-4a71-aeee-cefed8346948.jpg?1643591154"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Engulf the Shore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/22909767-a088-49ff-83be-37f967d1da3d.jpg?1576384043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/22909767-a088-49ff-83be-37f967d1da3d.jpg?1576384043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3e32d1b-e580-4d09-b285-c8d6c5297896.jpg?1625191655", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3e32d1b-e580-4d09-b285-c8d6c5297896.jpg?1625191655"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Evacuation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a978fa0a-a52b-4464-afe3-d9f7bc202e63.jpg?1562553159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a978fa0a-a52b-4464-afe3-d9f7bc202e63.jpg?1562553159"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Evacuation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e1144eb-701d-4716-9051-e8b77480e72d.jpg?1595438077", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e1144eb-701d-4716-9051-e8b77480e72d.jpg?1595438077"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Evacuation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1cb8ae53-a53f-4a0f-94f7-559aca041797.jpg?1562595927", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1cb8ae53-a53f-4a0f-94f7-559aca041797.jpg?1562595927"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Evaporate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a3c99939-4854-4e28-a142-4cb7f89fe898.jpg?1562587778", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a3c99939-4854-4e28-a142-4cb7f89fe898.jpg?1562587778"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Evincar's Justice", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d53f46f-b069-4b34-af4b-98143328c078.jpg?1562054236", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d53f46f-b069-4b34-af4b-98143328c078.jpg?1562054236"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a233a244-7f84-4525-b0ce-e10db0a95385.jpg?1562055894", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a233a244-7f84-4525-b0ce-e10db0a95385.jpg?1562055894"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinction Event", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/8725a869-462b-4381-880a-b4bcc63a655b.jpg?1591226783", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/8725a869-462b-4381-880a-b4bcc63a655b.jpg?1591226783"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinguish All Hope", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/6895024f-a04b-46cf-b020-df4487d0c758.jpg?1593095692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/6895024f-a04b-46cf-b020-df4487d0c758.jpg?1593095692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eyeblight Massacre", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d73484db-5fd0-4a01-83fd-54748cc21a0f.jpg?1562044208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d73484db-5fd0-4a01-83fd-54748cc21a0f.jpg?1562044208"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Ezuri's Predation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d9b4ad1-3d5c-43b6-9284-9ec427936dd2.jpg?1562704058", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d9b4ad1-3d5c-43b6-9284-9ec427936dd2.jpg?1562704058"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Falling Star", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2b9983e-20d4-4d12-9e2c-ec6d9a345787.jpg?1562861838", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2b9983e-20d4-4d12-9e2c-ec6d9a345787.jpg?1562861838"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a56410a7-6f99-4bdf-9385-f23571c263c3.jpg?1562929852", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a56410a7-6f99-4bdf-9385-f23571c263c3.jpg?1562929852"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d6c10ca-f6d6-4322-aa17-7e874cb10bb1.jpg?1562257044", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d6c10ca-f6d6-4322-aa17-7e874cb10bb1.jpg?1562257044"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Farewell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1068723-d1ef-4007-97d9-b10dccdbade4.jpg?1654566260", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1068723-d1ef-4007-97d9-b10dccdbade4.jpg?1654566260"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Farewell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98c664bc-9585-47a7-9514-b3e30a4e1b59.jpg?1654569820", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98c664bc-9585-47a7-9514-b3e30a4e1b59.jpg?1654569820"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Fated Retribution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8158b330-2868-4147-907e-4d86e44cfaad.jpg?1593091437", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8158b330-2868-4147-907e-4d86e44cfaad.jpg?1593091437"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fault Line", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/cab4fd0e-9f84-4628-92a7-858ad8064531.jpg?1562937807", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/cab4fd0e-9f84-4628-92a7-858ad8064531.jpg?1562937807"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast of Succession", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac83f97d-c8c9-480c-a32c-918035673ab4.jpg?1608909745", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac83f97d-c8c9-480c-a32c-918035673ab4.jpg?1608909745"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Fell the Mighty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4e999d3-c2d7-47dc-81ad-a2baf6cc4757.jpg?1561960243", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4e999d3-c2d7-47dc-81ad-a2baf6cc4757.jpg?1561960243"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Festergloom", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3125137-bd18-488e-b45e-6fc23828c5bd.jpg?1562796922", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3125137-bd18-488e-b45e-6fc23828c5bd.jpg?1562796922"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Festering March", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c34e6aa-0414-45ba-b6eb-1ac4255d7de8.jpg?1562903995", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c34e6aa-0414-45ba-b6eb-1ac4255d7de8.jpg?1562903995"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Cannonade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/664d21c9-4b6c-4797-845f-7bca79c2b76b.jpg?1562556766", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/664d21c9-4b6c-4797-845f-7bca79c2b76b.jpg?1562556766"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b61c9bc-16e8-417f-99e7-8bd83d4666c5.jpg?1562706203", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b61c9bc-16e8-417f-99e7-8bd83d4666c5.jpg?1562706203"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Fiery Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c454a20-8ec8-41d9-b9c3-acaa510d050b.jpg?1593559583", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c454a20-8ec8-41d9-b9c3-acaa510d050b.jpg?1593559583"}, "reprint": true, "digital": false, "set_type": "spellbook"}, {"name": "Fight to the Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/5552ca9b-0245-4f91-9646-a5b5443863a2.jpg?1562641354", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/5552ca9b-0245-4f91-9646-a5b5443863a2.jpg?1562641354"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Final Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2503e136-031f-498a-b042-4077baebe8f8.jpg?1562876056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2503e136-031f-498a-b042-4077baebe8f8.jpg?1562876056"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Final Revels", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99f3744a-71c4-4a54-9e1c-92420526b792.jpg?1562359766", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99f3744a-71c4-4a54-9e1c-92420526b792.jpg?1562359766"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Firespout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/13454f69-1458-4c03-ab02-bd697a32eb17.jpg?1562826991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/13454f69-1458-4c03-ab02-bd697a32eb17.jpg?1562826991"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Firespout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fecd098-bbf2-44f1-b9f1-7b93ea660880.jpg?1559966438", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fecd098-bbf2-44f1-b9f1-7b93ea660880.jpg?1559966438"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Fire Tempest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92334ebe-3d7a-46de-8b91-931e5d56a5a5.jpg?1562447336", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92334ebe-3d7a-46de-8b91-931e5d56a5a5.jpg?1562447336"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Flamebreak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e1f06f-7c87-4da8-b339-e571e391cab1.jpg?1562637920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e1f06f-7c87-4da8-b339-e571e391cab1.jpg?1562637920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flames of the Raze-Boar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16957271-12bb-4031-b476-f7678b753ae3.jpg?1584830878", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16957271-12bb-4031-b476-f7678b753ae3.jpg?1584830878"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Sweep", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8e489d6c-2eb2-4914-ae71-c9da55b51d0b.jpg?1586187261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8e489d6c-2eb2-4914-ae71-c9da55b51d0b.jpg?1586187261"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Flame Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e069d90a-e7d9-4967-a872-0dd8a0a9934a.jpg?1562597824", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e069d90a-e7d9-4967-a872-0dd8a0a9934a.jpg?1562597824"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flaying Tendrils", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77899cb2-4d87-4c2d-99ae-1ae75bc5dc86.jpg?1562918962", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77899cb2-4d87-4c2d-99ae-1ae75bc5dc86.jpg?1562918962"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Flaying Tendrils", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10bf8dbf-ae2e-41cd-904c-84b9cca14c27.jpg?1575936034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10bf8dbf-ae2e-41cd-904c-84b9cca14c27.jpg?1575936034"}, "reprint": true, "frame_effects": ["devoid"], "digital": false, "set_type": "promo"}, {"name": "Flowstone Slide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec7b02e1-0a20-4247-ae2a-056c5356f168.jpg?1562632691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec7b02e1-0a20-4247-ae2a-056c5356f168.jpg?1562632691"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Forced March", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36eae0e1-7100-449d-a259-7abfcd429117.jpg?1562379925", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36eae0e1-7100-449d-a259-7abfcd429117.jpg?1562379925"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fumigate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f00f27a7-9e92-4fbf-baa8-f47a5eee48a6.jpg?1576380863", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f00f27a7-9e92-4fbf-baa8-f47a5eee48a6.jpg?1576380863"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gale Force", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/26c5c233-a373-4ac4-9b99-81ed97df1f9b.jpg?1562758454", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/26c5c233-a373-4ac4-9b99-81ed97df1f9b.jpg?1562758454"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gates Ablaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b574b44-01e1-4197-99bd-57e54aebc5ff.jpg?1584830891", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b574b44-01e1-4197-99bd-57e54aebc5ff.jpg?1584830891"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Golden Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88bb420a-8bf1-4504-b1b5-2d929be978be.jpg?1555040232", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88bb420a-8bf1-4504-b1b5-2d929be978be.jpg?1555040232"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Golgari Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48fce388-eefc-4234-8dd9-1260c1ba97eb.jpg?1562785737", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48fce388-eefc-4234-8dd9-1260c1ba97eb.jpg?1562785737"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gruul Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/9235afe5-0a6b-43c2-921c-18524cf032f1.jpg?1561836885", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/9235afe5-0a6b-43c2-921c-18524cf032f1.jpg?1561836885"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guan Yu's 1,000-Li March", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fa7526a-7a4e-4b3d-b96e-91f2bbf1c7bd.jpg?1562257048", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fa7526a-7a4e-4b3d-b96e-91f2bbf1c7bd.jpg?1562257048"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Hail Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a7e9d786-4e9b-447b-a5dc-ca117c4961c5.jpg?1562769694", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a7e9d786-4e9b-447b-a5dc-ca117c4961c5.jpg?1562769694"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hallowed Burial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c42fad4b-caeb-4aa2-9586-cb26bdec56cd.jpg?1562936481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c42fad4b-caeb-4aa2-9586-cb26bdec56cd.jpg?1562936481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Harsh Mercy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6473b4d-1f59-4216-ace9-f3e5306266fb.jpg?1562937932", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6473b4d-1f59-4216-ace9-f3e5306266fb.jpg?1562937932"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hazardous Conditions", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/daa9b08b-c56f-480e-874e-069e72d979c8.jpg?1576382835", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/daa9b08b-c56f-480e-874e-069e72d979c8.jpg?1576382835"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hellfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/362f1fe9-20af-434c-9957-7a1a564d89e6.jpg?1592364391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/362f1fe9-20af-434c-9957-7a1a564d89e6.jpg?1592364391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hellion Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/6529c92e-c79b-4953-8bd0-50ceae2ce261.jpg?1562704497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/6529c92e-c79b-4953-8bd0-50ceae2ce261.jpg?1562704497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hideous Laughter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/941fd135-1c5a-4650-8faf-dfa2c93ec8c9.jpg?1562762525", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/941fd135-1c5a-4650-8faf-dfa2c93ec8c9.jpg?1562762525"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/wrath2.json b/web/public/mtg/jsons/wrath2.json new file mode 100644 index 00000000..ea785118 --- /dev/null +++ b/web/public/mtg/jsons/wrath2.json @@ -0,0 +1 @@ +{"has_more": true, "data": [{"name": "Holy Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c3c8a850-bc99-4679-a316-45ecdea696b2.jpg?1592364686", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c3c8a850-bc99-4679-a316-45ecdea696b2.jpg?1592364686"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hostile Takeover", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd7df727-50ea-4ea8-bdb9-d7ef16199d8a.jpg?1649697248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd7df727-50ea-4ea8-bdb9-d7ef16199d8a.jpg?1649697248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hostile Takeover", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8137f134-0148-4df1-b575-ec861192c65c.jpg?1649695787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8137f134-0148-4df1-b575-ec861192c65c.jpg?1649695787"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Hour of Devastation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d420cc12-cfd7-4007-a0c2-b16c8f63a754.jpg?1562816057", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d420cc12-cfd7-4007-a0c2-b16c8f63a754.jpg?1562816057"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hour of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d12768a5-8ee6-407b-87cf-703e69a0c32a.jpg?1568003844", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d12768a5-8ee6-407b-87cf-703e69a0c32a.jpg?1568003844"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Hour of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bec7a987-1ef2-40aa-a744-92d90b246df4.jpg?1598913735", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bec7a987-1ef2-40aa-a744-92d90b246df4.jpg?1598913735"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Howling Gale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9917cf32-0236-4463-9b1d-e8193754ff97.jpg?1562923428", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9917cf32-0236-4463-9b1d-e8193754ff97.jpg?1562923428"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Hurly-Burly", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a6e0b97-c2a9-4cd6-957e-87e9b22f7b48.jpg?1562354283", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a6e0b97-c2a9-4cd6-957e-87e9b22f7b48.jpg?1562354283"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0526077-79b6-40ae-8178-8b97c33a53fb.jpg?1562250875", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0526077-79b6-40ae-8178-8b97c33a53fb.jpg?1562250875"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b4dd722-4729-444a-9d81-e2e93317fbd5.jpg?1562920277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b4dd722-4729-444a-9d81-e2e93317fbd5.jpg?1562920277"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b97904e-80ba-4d65-808a-a528200430f8.jpg?1562446872", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b97904e-80ba-4d65-808a-a528200430f8.jpg?1562446872"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8cc6db7-1f40-40e3-a7ea-92f1d05e2e3d.jpg?1562926538", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8cc6db7-1f40-40e3-a7ea-92f1d05e2e3d.jpg?1562926538"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52f5a19f-16e4-4d35-89e1-969ac8202f88.jpg?1559591426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52f5a19f-16e4-4d35-89e1-969ac8202f88.jpg?1559591426"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Ichor Explosion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b207e2f-4604-43c5-bb35-a877e35ddd81.jpg?1562875473", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b207e2f-4604-43c5-bb35-a877e35ddd81.jpg?1562875473"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Immolating Gyre", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd0b8aee-fbfb-470f-9ac2-64fce0b4b2fb.jpg?1632261825", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd0b8aee-fbfb-470f-9ac2-64fce0b4b2fb.jpg?1632261825"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Incandescent Aria", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77e2ed9e-ee1d-440a-94b4-d4b17d30b800.jpg?1649801687", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77e2ed9e-ee1d-440a-94b4-d4b17d30b800.jpg?1649801687"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incandescent Aria", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63167d77-a8d5-468f-9132-a5000c57901a.jpg?1649801714", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63167d77-a8d5-468f-9132-a5000c57901a.jpg?1649801714"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Incendiary Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/512367a2-f8f6-4c28-9eb3-8e04d2694e4b.jpg?1562348065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/512367a2-f8f6-4c28-9eb3-8e04d2694e4b.jpg?1562348065"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incendiary Sabotage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0ee44ca0-1989-42fa-8024-b6b3e5c3883c.jpg?1576382098", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0ee44ca0-1989-42fa-8024-b6b3e5c3883c.jpg?1576382098"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incite Rebellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/628c4a6f-6970-407d-a774-e67bfcdf7ee2.jpg?1561944371", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/628c4a6f-6970-407d-a774-e67bfcdf7ee2.jpg?1561944371"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e411b7b5-ab91-410a-af6d-b3a21a8e3b70.jpg?1562249896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e411b7b5-ab91-410a-af6d-b3a21a8e3b70.jpg?1562249896"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68d04a75-647f-400f-b0dc-c4544f7db2d4.jpg?1562591355", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68d04a75-647f-400f-b0dc-c4544f7db2d4.jpg?1562591355"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6b61512-5b24-424c-966f-36b595781e14.jpg?1562934483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6b61512-5b24-424c-966f-36b595781e14.jpg?1562934483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3ac1649a-629b-4598-be09-74a57905753f.jpg?1562544107", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3ac1649a-629b-4598-be09-74a57905753f.jpg?1562544107"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Infest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb9dd080-5e13-4334-8614-8eec41ae89c2.jpg?1562711058", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb9dd080-5e13-4334-8614-8eec41ae89c2.jpg?1562711058"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Infest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7890ba2-aa42-4c8d-bbc1-94fb1d4150fc.jpg?1562938305", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7890ba2-aa42-4c8d-bbc1-94fb1d4150fc.jpg?1562938305"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Infest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/9350a640-3f22-478f-b463-6b50cfe766e1.jpg?1561757603", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/9350a640-3f22-478f-b463-6b50cfe766e1.jpg?1561757603"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Inflame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1efad9a-2fcf-4045-8105-bf9f5e79d12c.jpg?1562640129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1efad9a-2fcf-4045-8105-bf9f5e79d12c.jpg?1562640129"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Inflame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd7bc4c0-9bfd-444b-b22c-f1b7e1426807.jpg?1562933469", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd7bc4c0-9bfd-444b-b22c-f1b7e1426807.jpg?1562933469"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "In Garruk's Wake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f6f2c2f6-d07f-42af-9944-70d3dac8348c.jpg?1562797158", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f6f2c2f6-d07f-42af-9944-70d3dac8348c.jpg?1562797158"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "In Garruk's Wake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/987ace55-8f39-4d5e-8604-9e99d065b4d5.jpg?1561757636", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/987ace55-8f39-4d5e-8604-9e99d065b4d5.jpg?1561757636"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Inundate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5047c92-2885-4a7b-b51f-f3e093dca5ad.jpg?1562940048", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5047c92-2885-4a7b-b51f-f3e093dca5ad.jpg?1562940048"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jokulhaups", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d81e479-45b7-4237-a0eb-95245582e87d.jpg?1562591373", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d81e479-45b7-4237-a0eb-95245582e87d.jpg?1562591373"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Jokulhaups", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bf0d325-5928-4593-8faa-64ffa414cb48.jpg?1562906050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bf0d325-5928-4593-8faa-64ffa414cb48.jpg?1562906050"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jund Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a0ddf00-926c-4283-a8b2-daa02fa99b8b.jpg?1562705657", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a0ddf00-926c-4283-a8b2-daa02fa99b8b.jpg?1562705657"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaervek's Hex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/097910fb-7c48-4535-8ffc-b521d08294b0.jpg?1562717830", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/097910fb-7c48-4535-8ffc-b521d08294b0.jpg?1562717830"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaya's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5ed140c1-752b-4539-88f2-1fa354049b17.jpg?1584831638", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5ed140c1-752b-4539-88f2-1fa354049b17.jpg?1584831638"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Killing Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33de2371-175e-4f8a-9636-35f996e3cf24.jpg?1592708920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33de2371-175e-4f8a-9636-35f996e3cf24.jpg?1592708920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Killing Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e40ed6b1-7b92-4ba4-b197-07c3f171a935.jpg?1561758322", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e40ed6b1-7b92-4ba4-b197-07c3f171a935.jpg?1561758322"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Kindle the Carnage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b5dfa91-8f93-41b7-95e9-3374550f1617.jpg?1593273180", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b5dfa91-8f93-41b7-95e9-3374550f1617.jpg?1593273180"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kindred Dominance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/9794115a-5509-4d9a-b119-d2b61942e87b.jpg?1562617149", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/9794115a-5509-4d9a-b119-d2b61942e87b.jpg?1562617149"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Kirtar's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5a0c4e6-d50e-42e8-b062-8f6ef5950ab7.jpg?1562928851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5a0c4e6-d50e-42e8-b062-8f6ef5950ab7.jpg?1562928851"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Klauth's Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/761e1f77-5231-4008-829f-99650b429fb3.jpg?1631585593", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/761e1f77-5231-4008-829f-99650b429fb3.jpg?1631585593"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Kozilek's Return", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/72765559-0a78-4aa3-827e-cb4612720991.jpg?1618608556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/72765559-0a78-4aa3-827e-cb4612720991.jpg?1618608556"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Languish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3593efa-0a05-4061-9f6e-edd0a5ca9a1f.jpg?1562043520", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3593efa-0a05-4061-9f6e-edd0a5ca9a1f.jpg?1562043520"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Last One Standing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e2ee71-293d-452b-89a5-b15990186f5b.jpg?1562922467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e2ee71-293d-452b-89a5-b15990186f5b.jpg?1562922467"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Lavaball Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0d411e1-5488-4818-95a4-9f637efb9be6.jpg?1562616217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0d411e1-5488-4818-95a4-9f637efb9be6.jpg?1562616217"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lavalanche", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/749981d6-78e7-4f53-80a8-f211e61bd532.jpg?1562642149", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/749981d6-78e7-4f53-80a8-f211e61bd532.jpg?1562642149"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Life's Finale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ffd3fbd2-87c7-4f08-baaa-91d61c1114da.jpg?1562883140", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ffd3fbd2-87c7-4f08-baaa-91d61c1114da.jpg?1562883140"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Living Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0e73682a-56a2-4796-9902-a03aaa3815e8.jpg?1562897968", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0e73682a-56a2-4796-9902-a03aaa3815e8.jpg?1562897968"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Living Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c820476-fbda-4073-baf6-51e71f45ed58.jpg?1562054465", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c820476-fbda-4073-baf6-51e71f45ed58.jpg?1562054465"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Living End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3be0ff69-d9f3-4b81-b02f-1360e4064aff.jpg?1562907448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3be0ff69-d9f3-4b81-b02f-1360e4064aff.jpg?1562907448"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Magmaquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac85679e-17c7-4525-8eed-979d04feb8f1.jpg?1562558550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac85679e-17c7-4525-8eed-979d04feb8f1.jpg?1562558550"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Magmaquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/1476d42e-6cf8-4612-ae75-b3044d1eebbe.jpg?1605361705", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/1476d42e-6cf8-4612-ae75-b3044d1eebbe.jpg?1605361705"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Make Obsolete", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0a96feb-accc-4c30-8ecd-7d9272ebd45b.jpg?1576381736", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0a96feb-accc-4c30-8ecd-7d9272ebd45b.jpg?1576381736"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Malicious Malfunction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56e7415f-f014-4ece-81db-d8271444d9e9.jpg?1654567289", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56e7415f-f014-4ece-81db-d8271444d9e9.jpg?1654567289"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "March of Souls", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f07dd0f1-b80b-4af0-ae76-907ec55ec7d5.jpg?1562945732", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f07dd0f1-b80b-4af0-ae76-907ec55ec7d5.jpg?1562945732"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Marsh Casualties", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28476d0d-60ea-4d08-890c-0e6502ee3d2a.jpg?1562610765", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28476d0d-60ea-4d08-890c-0e6502ee3d2a.jpg?1562610765"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Martial Coup", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/4201385f-6f74-4e3d-aafb-0eff82cb24c1.jpg?1562800634", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/4201385f-6f74-4e3d-aafb-0eff82cb24c1.jpg?1562800634"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Martyr's Cry", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2c9f463-d1cc-4f11-aad2-d4a4520aa978.jpg?1562949002", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2c9f463-d1cc-4f11-aad2-d4a4520aa978.jpg?1562949002"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Massacre", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f05f5d93-50d1-4aa6-af05-383a6808345b.jpg?1562632742", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f05f5d93-50d1-4aa6-af05-383a6808345b.jpg?1562632742"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mass Calcify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d24be94-9922-43bb-83c8-98090adc3f32.jpg?1562829041", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d24be94-9922-43bb-83c8-98090adc3f32.jpg?1562829041"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mephitic Vapors", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/675640ba-37e7-4231-8524-87e8b87ea46f.jpg?1572892991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/675640ba-37e7-4231-8524-87e8b87ea46f.jpg?1572892991"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Merciless Eviction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9876a4c-714b-47e5-9589-148a623af96a.jpg?1561848654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9876a4c-714b-47e5-9589-148a623af96a.jpg?1561848654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mizzium Mortars", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/544b2931-0af1-4743-b7c1-91e1dc9294d5.jpg?1654120304", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/544b2931-0af1-4743-b7c1-91e1dc9294d5.jpg?1654120304"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Mizzium Mortars", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4ded88d-2688-4f5e-a8b2-16216cf9c792.jpg?1562793745", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4ded88d-2688-4f5e-a8b2-16216cf9c792.jpg?1562793745"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mogg Infestation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a91aa6f-cb2f-4aad-9415-bba4eb9b76ca.jpg?1562596412", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a91aa6f-cb2f-4aad-9415-bba4eb9b76ca.jpg?1562596412"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molten Disaster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/31e0713c-dbf4-4403-ae69-58fd483e2481.jpg?1562905110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/31e0713c-dbf4-4403-ae69-58fd483e2481.jpg?1562905110"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mutilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c48bc86b-df0a-4a9c-8aad-c3ffb742a5ff.jpg?1588005547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c48bc86b-df0a-4a9c-8aad-c3ffb742a5ff.jpg?1588005547"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Mutilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9cbdabf-18e3-4c0c-b37b-097aaa650066.jpg?1562090221", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9cbdabf-18e3-4c0c-b37b-097aaa650066.jpg?1562090221"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Mutilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/6189cab3-1963-4590-9cbc-7ab4a693d7c6.jpg?1562629994", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/6189cab3-1963-4590-9cbc-7ab4a693d7c6.jpg?1562629994"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nature's Ruin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/5950f52a-493e-432e-9175-0272c0edb232.jpg?1562446647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/5950f52a-493e-432e-9175-0272c0edb232.jpg?1562446647"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Nausea", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2569173f-df5e-4518-9fb3-f972210595df.jpg?1580014299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2569173f-df5e-4518-9fb3-f972210595df.jpg?1580014299"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Nausea", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b71315e3-14c1-433b-97be-2cdf99213bba.jpg?1562246310", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b71315e3-14c1-433b-97be-2cdf99213bba.jpg?1562246310"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Nausea", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a10531d8-fc99-4a2b-94b0-97a25521d725.jpg?1562088332", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a10531d8-fc99-4a2b-94b0-97a25521d725.jpg?1562088332"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Necromantic Selection", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/9462680e-b83d-44cc-a7a6-505fbc69ab41.jpg?1561950631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/9462680e-b83d-44cc-a7a6-505fbc69ab41.jpg?1561950631"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Needle Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/be80dd2d-f595-4d80-84ae-66d3d18e7399.jpg?1562056388", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/be80dd2d-f595-4d80-84ae-66d3d18e7399.jpg?1562056388"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Needle Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29a44e44-94b1-4bd2-8e00-6bd2ec07ee4c.jpg?1562446151", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29a44e44-94b1-4bd2-8e00-6bd2ec07ee4c.jpg?1562446151"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Nightmare Unmaking", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95c0ff1b-bd97-4115-8486-62a18bab2610.jpg?1568003505", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95c0ff1b-bd97-4115-8486-62a18bab2610.jpg?1568003505"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Nylea's Intervention", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/daa2f963-9d16-4224-b24e-b6a79f2b9d75.jpg?1581480794", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/daa2f963-9d16-4224-b24e-b6a79f2b9d75.jpg?1581480794"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Obliterate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cdabde40-2143-4677-b7b4-ea8fbf9b1f25.jpg?1562936357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cdabde40-2143-4677-b7b4-ea8fbf9b1f25.jpg?1562936357"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oddly Uneven", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/830d5f87-1c8b-414a-a91e-4805f5bdca54.jpg?1562922623", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/830d5f87-1c8b-414a-a91e-4805f5bdca54.jpg?1562922623"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Olivia's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98893cc1-f502-4ca6-b6c1-e09fa1f4ef7a.jpg?1641600703", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98893cc1-f502-4ca6-b6c1-e09fa1f4ef7a.jpg?1641600703"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Organic Extinction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fea0f8be-c242-49dd-bae3-0b306107ac0b.jpg?1651655197", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fea0f8be-c242-49dd-bae3-0b306107ac0b.jpg?1651655197"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Outbreak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f43c30d9-23a5-4872-925d-3427f5f57995.jpg?1562940897", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f43c30d9-23a5-4872-925d-3427f5f57995.jpg?1562940897"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oversimplify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56eae179-f850-4661-b3f0-4d10be77ed8a.jpg?1629806259", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56eae179-f850-4661-b3f0-4d10be77ed8a.jpg?1629806259"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Overwhelming Forces", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c56c7fb4-8b7b-40fc-879c-76cfb5d417b8.jpg?1562257531", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c56c7fb4-8b7b-40fc-879c-76cfb5d417b8.jpg?1562257531"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Part the Veil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d870e607-1607-46f3-bc9f-925d0164bcf9.jpg?1562764693", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d870e607-1607-46f3-bc9f-925d0164bcf9.jpg?1562764693"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Path of Peril", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0c5449a-d63b-4b22-9432-8f0365c3c4d9.jpg?1643590080", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0c5449a-d63b-4b22-9432-8f0365c3c4d9.jpg?1643590080"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Perish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e47ace1d-73de-44aa-a3fe-2e2a21ebec79.jpg?1562057337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e47ace1d-73de-44aa-a3fe-2e2a21ebec79.jpg?1562057337"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Perplexing Test", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/31f2cbcc-d5b8-4659-ae51-e567c555a743.jpg?1625191389", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/31f2cbcc-d5b8-4659-ae51-e567c555a743.jpg?1625191389"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Pestilent Haze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08b78aa8-a63a-4aa2-bb82-3fbf2595ed7c.jpg?1594736339", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08b78aa8-a63a-4aa2-bb82-3fbf2595ed7c.jpg?1594736339"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Phyrexian Rebirth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36b7536d-6b0b-4906-ba88-7fcfe9b854ee.jpg?1562610586", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36b7536d-6b0b-4906-ba88-7fcfe9b854ee.jpg?1562610586"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Wind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b0d4bd20-7422-45ed-aa76-3ef055c556e7.jpg?1562927896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b0d4bd20-7422-45ed-aa76-3ef055c556e7.jpg?1562927896"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Planar Despair", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3a92d454-3f23-45bf-921f-25b0da4ce138.jpg?1562908776", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3a92d454-3f23-45bf-921f-25b0da4ce138.jpg?1562908776"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Planar Outburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f34f930-a7c6-400d-b6e8-b9908e0f0404.jpg?1562917450", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f34f930-a7c6-400d-b6e8-b9908e0f0404.jpg?1562917450"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Promise of Loyalty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc21e7d5-3641-47fe-add0-8becf5173e28.jpg?1625191123", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc21e7d5-3641-47fe-add0-8becf5173e28.jpg?1625191123"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Psychotic Haze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d3f6cd2-0138-40e7-a975-3f7c68db0d93.jpg?1562630817", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d3f6cd2-0138-40e7-a975-3f7c68db0d93.jpg?1562630817"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Puppet's Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/052b743a-456d-49c3-881e-4f30c7645fa5.jpg?1562378946", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/052b743a-456d-49c3-881e-4f30c7645fa5.jpg?1562378946"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34ec6e8f-a8be-4efe-8082-d807378066b1.jpg?1562905712", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34ec6e8f-a8be-4efe-8082-d807378066b1.jpg?1562905712"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7afce33f-2ead-4943-9655-bff6eaa9fe6b.jpg?1562241054", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7afce33f-2ead-4943-9655-bff6eaa9fe6b.jpg?1562241054"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de214247-e5e3-4d8f-935a-797218416be1.jpg?1562448294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de214247-e5e3-4d8f-935a-797218416be1.jpg?1562448294"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88040748-ad76-4b9a-bd4e-87e5980e9816.jpg?1562920179", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88040748-ad76-4b9a-bd4e-87e5980e9816.jpg?1562920179"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0581322-d901-465e-b22c-cd99ddbb4839.jpg?1561758268", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0581322-d901-465e-b22c-cd99ddbb4839.jpg?1561758268"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Radiant Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70f4fe69-c541-4320-9074-9c6a3bc70ea3.jpg?1562921619", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70f4fe69-c541-4320-9074-9c6a3bc70ea3.jpg?1562921619"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Radiant Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2548487e-a355-4a05-acbc-3031d98f4289.jpg?1562132516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2548487e-a355-4a05-acbc-3031d98f4289.jpg?1562132516"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Radiating Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/94454128-92f1-475d-abc4-c235f501eeb6.jpg?1562739709", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/94454128-92f1-475d-abc4-c235f501eeb6.jpg?1562739709"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rain of Daggers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb09a5bb-9730-43cd-8dea-3842634c9983.jpg?1562939110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb09a5bb-9730-43cd-8dea-3842634c9983.jpg?1562939110"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Rain of Embers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d5391a9-6c30-4f9b-b746-a4427a3e63fc.jpg?1598915805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d5391a9-6c30-4f9b-b746-a4427a3e63fc.jpg?1598915805"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rancid Earth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/23d07a96-85ba-4714-94a5-4a8125954f58.jpg?1562628959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/23d07a96-85ba-4714-94a5-4a8125954f58.jpg?1562628959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reckless Endeavor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba98a4bd-e217-4dba-aee9-315b4f843cdf.jpg?1631585239", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba98a4bd-e217-4dba-aee9-315b4f843cdf.jpg?1631585239"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Reign of Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7bd83049-aec1-4911-bc70-39adba04b174.jpg?1587856923", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7bd83049-aec1-4911-bc70-39adba04b174.jpg?1587856923"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Retaliate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58acdda6-6754-46f2-ad68-f1580b8ab0dd.jpg?1562877159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58acdda6-6754-46f2-ad68-f1580b8ab0dd.jpg?1562877159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Retribution of the Meek", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/860b8633-1bfc-426a-8666-5e6a584d4525.jpg?1587857186", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/860b8633-1bfc-426a-8666-5e6a584d4525.jpg?1587857186"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Righteous Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c408f43e-9092-440d-a15f-bef4ad58bcc6.jpg?1562941331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c408f43e-9092-440d-a15f-bef4ad58bcc6.jpg?1562941331"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Rising Miasma", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4f9a8e87-3b8b-4dbf-9c1e-0a3290a33a0b.jpg?1562913657", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4f9a8e87-3b8b-4dbf-9c1e-0a3290a33a0b.jpg?1562913657"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ritual of Soot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/269af993-4894-4bf1-b55a-af4d736cb3cc.jpg?1572893045", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/269af993-4894-4bf1-b55a-af4d736cb3cc.jpg?1572893045"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Riveteers Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb15ba71-c3b3-4a9f-b000-bd788514211c.jpg?1650549265", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb15ba71-c3b3-4a9f-b000-bd788514211c.jpg?1650549265"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Rollick of Abandon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f1a80c4-8119-437d-bf5b-549c5679c90a.jpg?1593096073", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f1a80c4-8119-437d-bf5b-549c5679c90a.jpg?1593096073"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rolling Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c1bf210-ecdb-4b49-8504-51360c269e66.jpg?1562256070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c1bf210-ecdb-4b49-8504-51360c269e66.jpg?1562256070"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Rolling Spoil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6c5546f-2429-4099-a9bd-eda3f52779b7.jpg?1598916497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6c5546f-2429-4099-a9bd-eda3f52779b7.jpg?1598916497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rolling Temblor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/060ce982-94dd-4b9e-b240-15da297e29f9.jpg?1562825667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/060ce982-94dd-4b9e-b240-15da297e29f9.jpg?1562825667"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c3da3f0-bf90-461a-b62d-5c00d5c9aebd.jpg?1562865454", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c3da3f0-bf90-461a-b62d-5c00d5c9aebd.jpg?1562865454"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Rout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/94bc55ed-b89b-4e22-b3f1-4ce0f8d180d7.jpg?1562924999", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/94bc55ed-b89b-4e22-b3f1-4ce0f8d180d7.jpg?1562924999"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db53c1fb-3641-44a3-b0b4-b7b2ba993646.jpg?1562632349", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db53c1fb-3641-44a3-b0b4-b7b2ba993646.jpg?1562632349"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2a2a4e7-3173-4b73-8898-2c668f9eebf9.jpg?1562548310", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2a2a4e7-3173-4b73-8898-2c668f9eebf9.jpg?1562548310"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Sagittars' Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Savage Alliance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5255da8-8511-48a7-98e5-ba43ca6e8681.jpg?1576384658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5255da8-8511-48a7-98e5-ba43ca6e8681.jpg?1576384658"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Savage Twister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99d22b83-381d-47da-b983-8f77d19b0c01.jpg?1562927484", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99d22b83-381d-47da-b983-8f77d19b0c01.jpg?1562927484"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Savage Twister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/682ee5a9-2995-4868-b7ea-8735b2aee77e.jpg?1593272763", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/682ee5a9-2995-4868-b7ea-8735b2aee77e.jpg?1593272763"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Savage Twister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb73313b-d39a-46ab-abfc-76f94a75dfca.jpg?1593014734", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb73313b-d39a-46ab-abfc-76f94a75dfca.jpg?1593014734"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scouring Sands", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/273f25fc-9c9f-4b73-a28b-1461d8fcd443.jpg?1593092358", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/273f25fc-9c9f-4b73-a28b-1461d8fcd443.jpg?1593092358"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sculpted Sunburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d16d8fe-a770-4bbd-bf20-447c0165de5a.jpg?1654291825", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d16d8fe-a770-4bbd-bf20-447c0165de5a.jpg?1654291825"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Seismic Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9b952e4e-c1ed-4455-90d5-46b56478e6b0.jpg?1562790481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9b952e4e-c1ed-4455-90d5-46b56478e6b0.jpg?1562790481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seismic Shudder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20365082-6102-4e3b-8791-c9b66846270d.jpg?1562610483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20365082-6102-4e3b-8791-c9b66846270d.jpg?1562610483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seismic Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e55b8ffb-c2e4-4676-9051-ff6c686cad0b.jpg?1654567822", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e55b8ffb-c2e4-4676-9051-ff6c686cad0b.jpg?1654567822"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Settle the Wreckage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9cbd346e-098a-4cf6-a72f-468376fd2e8f.jpg?1562560853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9cbd346e-098a-4cf6-a72f-468376fd2e8f.jpg?1562560853"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shadowstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/367c4ad6-973d-47ba-9431-312f9f2996f6.jpg?1562053739", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/367c4ad6-973d-47ba-9431-312f9f2996f6.jpg?1562053739"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shadows' Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52470883-b44d-415b-9324-8074e66f79ae.jpg?1604196514", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52470883-b44d-415b-9324-8074e66f79ae.jpg?1604196514"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shake the Foundations", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5bd4bdd-3a2a-40d9-9f86-fefe0a462cd2.jpg?1555040519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5bd4bdd-3a2a-40d9-9f86-fefe0a462cd2.jpg?1555040519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shatter the Sky", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b706977b-db8e-4810-882d-ed3745404489.jpg?1581479244", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b706977b-db8e-4810-882d-ed3745404489.jpg?1581479244"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shrivel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a87c80a1-5818-45fd-9a37-a2ee3396626e.jpg?1562707116", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a87c80a1-5818-45fd-9a37-a2ee3396626e.jpg?1562707116"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sickening Dreams", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/9396ac77-9f53-46bd-b126-02441a0f5594.jpg?1562630974", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/9396ac77-9f53-46bd-b126-02441a0f5594.jpg?1562630974"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Simoon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/84b1930d-2e4b-472f-98a9-008fd632f3be.jpg?1562921826", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/84b1930d-2e4b-472f-98a9-008fd632f3be.jpg?1562921826"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Simoon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/642d9239-82e0-4696-ad99-10796042d1f8.jpg?1587913163", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/642d9239-82e0-4696-ad99-10796042d1f8.jpg?1587913163"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Single Combat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce0e7c6a-e628-4327-a16f-2062c5a662df.jpg?1557576066", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce0e7c6a-e628-4327-a16f-2062c5a662df.jpg?1557576066"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyreaping", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/40eb76b3-b527-4ed8-8ce3-d3de48562b6e.jpg?1593092666", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/40eb76b3-b527-4ed8-8ce3-d3de48562b6e.jpg?1593092666"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slagstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e318b03-2aad-462b-a2a9-8b6bdf0e93d6.jpg?1562613393", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e318b03-2aad-462b-a2a9-8b6bdf0e93d6.jpg?1562613393"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slash the Ranks", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/0913a5e8-7f77-44f2-a7cf-c8c0d6270a86.jpg?1608909011", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/0913a5e8-7f77-44f2-a7cf-c8c0d6270a86.jpg?1608909011"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Slaughter the Strong", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c9f8aea-0c9a-4686-b551-35e2a72ef701.jpg?1653521934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c9f8aea-0c9a-4686-b551-35e2a72ef701.jpg?1653521934"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Slaughter the Strong", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/4217ab21-181e-4c32-97c3-d8bd441287e0.jpg?1555039791", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/4217ab21-181e-4c32-97c3-d8bd441287e0.jpg?1555039791"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slice and Dice", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59262684-86e3-4485-9e35-202771c3eaa6.jpg?1562916006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59262684-86e3-4485-9e35-202771c3eaa6.jpg?1562916006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Solar Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb72ba0f-ab3a-41e6-906d-a84039efa0af.jpg?1557577261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb72ba0f-ab3a-41e6-906d-a84039efa0af.jpg?1557577261"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Solar Tide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/57ce33b6-267f-4ee8-a3f7-f41c619d0cfa.jpg?1562144484", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/57ce33b6-267f-4ee8-a3f7-f41c619d0cfa.jpg?1562144484"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soulquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b3a7470-b93e-4c3a-ab1c-0a4dd401e95a.jpg?1562641103", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b3a7470-b93e-4c3a-ab1c-0a4dd401e95a.jpg?1562641103"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spectral Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7238c46e-6338-4aca-96f2-934c44c8cc36.jpg?1631233619", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7238c46e-6338-4aca-96f2-934c44c8cc36.jpg?1631233619"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Spontaneous Combustion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55d50177-736a-44d6-a2a3-f6892d7037b3.jpg?1562865429", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55d50177-736a-44d6-a2a3-f6892d7037b3.jpg?1562865429"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Spontaneous Combustion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34e6c04f-9d1a-497b-bc96-a0e48a1c1904.jpg?1562053293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34e6c04f-9d1a-497b-bc96-a0e48a1c1904.jpg?1562053293"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Squall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46460e5f-2756-486b-99a6-c3a9a209bfaa.jpg?1594065372", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46460e5f-2756-486b-99a6-c3a9a209bfaa.jpg?1594065372"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Squall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e5409b54-66ed-4add-bf43-cfeb074b1c50.jpg?1562383517", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e5409b54-66ed-4add-bf43-cfeb074b1c50.jpg?1562383517"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Squall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63c1b2f6-e47f-4f18-a94a-1d08eb009ef3.jpg?1594065383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63c1b2f6-e47f-4f18-a94a-1d08eb009ef3.jpg?1594065383"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Squall Line", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f368729-a6f2-4bf7-8b06-39c551f0b24a.jpg?1562908127", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f368729-a6f2-4bf7-8b06-39c551f0b24a.jpg?1562908127"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Star of Extinction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/021f57dc-80f3-4ede-99d5-4a44aade44e2.jpg?1562549822", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/021f57dc-80f3-4ede-99d5-4a44aade44e2.jpg?1562549822"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Starstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/439aa3eb-fa1f-46b2-a13a-369b6a88d97c.jpg?1562908992", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/439aa3eb-fa1f-46b2-a13a-369b6a88d97c.jpg?1562908992"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Starstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b54d72ba-05ce-4299-a7c3-a9e9f126fffb.jpg?1562937719", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b54d72ba-05ce-4299-a7c3-a9e9f126fffb.jpg?1562937719"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Steam Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/144a1b4e-d960-4c3a-810b-11a0c78635ad.jpg?1562899291", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/144a1b4e-d960-4c3a-810b-11a0c78635ad.jpg?1562899291"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stench of Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f9a45644-549a-4eaa-8367-b170027bd5a2.jpg?1562770859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f9a45644-549a-4eaa-8367-b170027bd5a2.jpg?1562770859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stench of Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4b93845-f17a-4892-a1ce-a4630dced218.jpg?1562770150", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4b93845-f17a-4892-a1ce-a4630dced218.jpg?1562770150"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stick Together", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d77a57a-e30b-46d7-acb8-1d164c7dff78.jpg?1654036983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d77a57a-e30b-46d7-acb8-1d164c7dff78.jpg?1654036983"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Storm's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4bc9ecd2-7664-471b-90f2-2d0dd1acec80.jpg?1581480444", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4bc9ecd2-7664-471b-90f2-2d0dd1acec80.jpg?1581480444"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Strategy, Schmategy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2996a63-9fb6-4455-906d-13f917a8bb29.jpg?1562799134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2996a63-9fb6-4455-906d-13f917a8bb29.jpg?1562799134"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Street Spasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f599948f-1561-415f-b415-c9c991896704.jpg?1592713487", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f599948f-1561-415f-b415-c9c991896704.jpg?1592713487"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Structural Assault", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cbdb50e3-fe15-4431-b9bd-c4de65820734.jpg?1650025267", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cbdb50e3-fe15-4431-b9bd-c4de65820734.jpg?1650025267"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sublime Exhalation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac6d4a9e-a7fd-480e-96cf-5cf6d2390189.jpg?1562414946", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac6d4a9e-a7fd-480e-96cf-5cf6d2390189.jpg?1562414946"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Subterranean Tremors", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b9510b8-6601-4116-8713-ff7649c000eb.jpg?1576381980", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b9510b8-6601-4116-8713-ff7649c000eb.jpg?1576381980"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/wrath3.json b/web/public/mtg/jsons/wrath3.json new file mode 100644 index 00000000..19e27341 --- /dev/null +++ b/web/public/mtg/jsons/wrath3.json @@ -0,0 +1 @@ +{"has_more": false, "data": [{"name": "Sudden Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7217afaa-00e1-45a7-bb7f-66a770487b77.jpg?1562918949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7217afaa-00e1-45a7-bb7f-66a770487b77.jpg?1562918949"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Suffocating Fumes", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66b562e4-35df-4aee-848d-ceb4204bbe58.jpg?1591226972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66b562e4-35df-4aee-848d-ceb4204bbe58.jpg?1591226972"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sulfurous Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/67511e0e-be09-4f4e-9949-b9ecbdc7f536.jpg?1562916599", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/67511e0e-be09-4f4e-9949-b9ecbdc7f536.jpg?1562916599"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sunscour", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44c726db-a30a-4e76-9fbf-ec6d5cd7a1ba.jpg?1593274832", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44c726db-a30a-4e76-9fbf-ec6d5cd7a1ba.jpg?1593274832"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Supreme Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4e9648f9-7a67-4717-bca1-861d1f7fed43.jpg?1562786100", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4e9648f9-7a67-4717-bca1-861d1f7fed43.jpg?1562786100"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Supreme Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2b760cc-800a-48a3-97d9-316e1eeafd4c.jpg?1655619437", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2b760cc-800a-48a3-97d9-316e1eeafd4c.jpg?1655619437"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Supreme Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35e3b17c-1af9-4a6d-9cbe-e9d23ea52c53.jpg?1562497060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35e3b17c-1af9-4a6d-9cbe-e9d23ea52c53.jpg?1562497060"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sweltering Suns", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f11cd406-c6ae-4018-ae45-4e5577aa82ae.jpg?1543675701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f11cd406-c6ae-4018-ae45-4e5577aa82ae.jpg?1543675701"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swirling Sandstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d757ec3-c15f-4d6e-8e18-36ebae985448.jpg?1562629788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d757ec3-c15f-4d6e-8e18-36ebae985448.jpg?1562629788"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Synthetic Destiny", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6ab025e6-9ee7-45f0-b829-199637eb0038.jpg?1562705395", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6ab025e6-9ee7-45f0-b829-199637eb0038.jpg?1562705395"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Take Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8e702db-8c73-4947-9c13-5dcb50f4efab.jpg?1576382690", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8e702db-8c73-4947-9c13-5dcb50f4efab.jpg?1576382690"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terminus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/0982ea7e-05a4-4e40-98ab-ea9aa6c7342e.jpg?1592708421", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/0982ea7e-05a4-4e40-98ab-ea9aa6c7342e.jpg?1592708421"}, "reprint": false, "frame_effects": ["miracle"], "digital": false, "set_type": "expansion"}, {"name": "Thunder of Hooves", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e4f796a-6831-4d83-824d-88fd2148b4c1.jpg?1562932440", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e4f796a-6831-4d83-824d-88fd2148b4c1.jpg?1562932440"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderwave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9531098-63ea-4568-81e9-80e00a5f8995.jpg?1653417329", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9531098-63ea-4568-81e9-80e00a5f8995.jpg?1653417329"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Time Wipe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62c59475-6f15-48d2-b105-f49901f20d44.jpg?1557577308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62c59475-6f15-48d2-b105-f49901f20d44.jpg?1557577308"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Time Wipe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6ab4b490-67d8-4f13-86cb-858a8012a46a.jpg?1558324717", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6ab4b490-67d8-4f13-86cb-858a8012a46a.jpg?1558324717"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Tivadar's Crusade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8b6da540-6803-47e5-9af0-7ae8e2f84b6c.jpg?1562927916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8b6da540-6803-47e5-9af0-7ae8e2f84b6c.jpg?1562927916"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Torrent of Lava", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19528a24-4968-4742-a2d1-06f94e60f290.jpg?1562718298", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19528a24-4968-4742-a2d1-06f94e60f290.jpg?1562718298"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Toxic Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db34617f-b04f-4b65-84cf-5c5be1eb7226.jpg?1651951814", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db34617f-b04f-4b65-84cf-5c5be1eb7226.jpg?1651951814"}, "reprint": true, "digital": false, "set_type": "arsenal"}, {"name": "Toxic Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/564caf57-4ba5-4993-a35e-945699c94eb7.jpg?1562913020", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/564caf57-4ba5-4993-a35e-945699c94eb7.jpg?1562913020"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Toxic Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73731e45-51bb-4188-a54d-fdaa4bdfaf1f.jpg?1599711037", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73731e45-51bb-4188-a54d-fdaa4bdfaf1f.jpg?1599711037"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b281c013-b35a-4c4a-aaee-b6f93968485c.jpg?1562246219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b281c013-b35a-4c4a-aaee-b6f93968485c.jpg?1562246219"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/8531efb1-d77d-451a-8621-424fc278ccf9.jpg?1562381834", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/8531efb1-d77d-451a-8621-424fc278ccf9.jpg?1562381834"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2509285-a88e-4f5c-86c1-c0386da0f0c5.jpg?1562948885", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2509285-a88e-4f5c-86c1-c0386da0f0c5.jpg?1562948885"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9d64665-c1e0-40ab-a358-247f82966379.jpg?1562278171", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9d64665-c1e0-40ab-a358-247f82966379.jpg?1562278171"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tropical Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd5f473c-e11e-4047-91f9-81b80f0a3562.jpg?1587912688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd5f473c-e11e-4047-91f9-81b80f0a3562.jpg?1587912688"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tsabo's Decree", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c1a0ebd-1add-49e6-b5e6-5b26abb1de88.jpg?1562897461", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c1a0ebd-1add-49e6-b5e6-5b26abb1de88.jpg?1562897461"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Underworld Fires", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0fe616c4-dcb0-4284-ba10-6fbf7cecd217.jpg?1581480512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0fe616c4-dcb0-4284-ba10-6fbf7cecd217.jpg?1581480512"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Urborg Justice", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/39f322ff-0b04-41ce-90cd-9896f941e703.jpg?1562800263", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/39f322ff-0b04-41ce-90cd-9896f941e703.jpg?1562800263"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Valiant Endeavor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/0445def0-8921-4579-912f-035d9fbce3c0.jpg?1631584806", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/0445def0-8921-4579-912f-035d9fbce3c0.jpg?1631584806"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Vampires' Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20d2d886-13a2-44f1-966a-ec674622fd01.jpg?1643592028", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20d2d886-13a2-44f1-966a-ec674622fd01.jpg?1643592028"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vampires' Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f4ba693-0323-415d-ad91-c083fbbab7f7.jpg?1645228860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f4ba693-0323-415d-ad91-c083fbbab7f7.jpg?1645228860"}, "flavor_name": "Mysterious Blood Illness", "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Horde", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e264615c-eb99-4cb3-844a-2b4a94ba5203.jpg?1634348651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e264615c-eb99-4cb3-844a-2b4a94ba5203.jpg?1634348651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Virtue's Ruin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/7854928a-d467-4616-b96b-de7e5fe7303e.jpg?1562446869", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/7854928a-d467-4616-b96b-de7e5fe7303e.jpg?1562446869"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Void", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0b3e320-a85c-4d92-944e-0a5e78a066a5.jpg?1580015114", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0b3e320-a85c-4d92-944e-0a5e78a066a5.jpg?1580015114"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Void", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62dc1df7-b9db-4f5f-a340-08287cd3d9e5.jpg?1562915020", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62dc1df7-b9db-4f5f-a340-08287cd3d9e5.jpg?1562915020"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Volcanic Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a80582b1-09db-45f8-b362-0e5207a5a8e6.jpg?1559591541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a80582b1-09db-45f8-b362-0e5207a5a8e6.jpg?1559591541"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Volcanic Fallout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65536d12-e75c-42b5-b592-a3ad4f550a71.jpg?1592485188", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65536d12-e75c-42b5-b592-a3ad4f550a71.jpg?1592485188"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Volcanic Fallout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d3a69d2-518d-4b70-a03e-6d02a525f9ad.jpg?1561757550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d3a69d2-518d-4b70-a03e-6d02a525f9ad.jpg?1561757550"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Volcanic Spray", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97daab4b-d934-4a3f-a043-f7c9c1dd32bf.jpg?1562923217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97daab4b-d934-4a3f-a043-f7c9c1dd32bf.jpg?1562923217"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Volcanic Torrent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb586da6-670d-4c50-9d9b-f320f1c288d7.jpg?1608910472", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb586da6-670d-4c50-9d9b-f320f1c288d7.jpg?1608910472"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Volcanic Vision", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f973e1a6-c6f9-47f5-9bf0-b7fa06959bd4.jpg?1625194143", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f973e1a6-c6f9-47f5-9bf0-b7fa06959bd4.jpg?1625194143"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Volcanic Vision", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/979da13b-9be6-49cc-a62c-67eeea289612.jpg?1562790292", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/979da13b-9be6-49cc-a62c-67eeea289612.jpg?1562790292"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wail of the Nim", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8c32faa-c6d1-418a-aed6-ccc5849daa1f.jpg?1562153645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8c32faa-c6d1-418a-aed6-ccc5849daa1f.jpg?1562153645"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wave of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27d6655d-f55c-4bfc-a9c6-10232ebc707b.jpg?1562392689", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27d6655d-f55c-4bfc-a9c6-10232ebc707b.jpg?1562392689"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Wave of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b101b5e-d478-4686-b3cf-bdc545f089e5.jpg?1562378964", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b101b5e-d478-4686-b3cf-bdc545f089e5.jpg?1562378964"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whelming Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fcabd4c7-093f-4ef6-8b89-b08565c48e3c.jpg?1593091836", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fcabd4c7-093f-4ef6-8b89-b08565c48e3c.jpg?1593091836"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whipflare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a7e6c10-d066-4967-932f-5b6c8d74568b.jpg?1562877860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a7e6c10-d066-4967-932f-5b6c8d74568b.jpg?1562877860"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whirlwind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8101bab4-ef93-451a-a24f-e1456c82837c.jpg?1562922208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8101bab4-ef93-451a-a24f-e1456c82837c.jpg?1562922208"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Widespread Brutality", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97715d22-f432-4f67-b4ea-47b8fe6edca5.jpg?1557577331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97715d22-f432-4f67-b4ea-47b8fe6edca5.jpg?1557577331"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wildfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/826fd527-9356-4eec-8542-781116f23eb7.jpg?1562241689", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/826fd527-9356-4eec-8542-781116f23eb7.jpg?1562241689"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Wildfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/72d50972-4549-40cd-9c33-4b341333803f.jpg?1562919111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/72d50972-4549-40cd-9c33-4b341333803f.jpg?1562919111"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Wildfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b69cfcb0-db68-4494-a3e1-7c2ca279fcf5.jpg?1562938018", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b69cfcb0-db68-4494-a3e1-7c2ca279fcf5.jpg?1562938018"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Winds of Abandon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bb17913-fe4d-4acd-9b75-71f5a90f898b.jpg?1562201278", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bb17913-fe4d-4acd-9b75-71f5a90f898b.jpg?1562201278"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Winds of Rath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6d731b2-0113-4fd5-8b78-1aa1064bb4f5.jpg?1562055907", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6d731b2-0113-4fd5-8b78-1aa1064bb4f5.jpg?1562055907"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Windstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/154dc31c-ac9d-4b78-b92b-e7bacc532915.jpg?1562782948", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/154dc31c-ac9d-4b78-b92b-e7bacc532915.jpg?1562782948"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Windstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee3768ec-bb3b-44dc-9fa3-7cb3d3ee9f8c.jpg?1562000543", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee3768ec-bb3b-44dc-9fa3-7cb3d3ee9f8c.jpg?1562000543"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Winter Sky", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af1035f3-3027-4a41-834c-55222b13c2bc.jpg?1562588224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af1035f3-3027-4a41-834c-55222b13c2bc.jpg?1562588224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Witch's Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbf16457-3444-4130-b220-834b69d9faa3.jpg?1572490276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbf16457-3444-4130-b220-834b69d9faa3.jpg?1572490276"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d223e83-0d3c-459e-96f5-ba9227fe49dd.jpg?1562232378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d223e83-0d3c-459e-96f5-ba9227fe49dd.jpg?1562232378"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d75d8204-6f9d-4a7a-bb8b-d51ac65a30fa.jpg?1562447853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d75d8204-6f9d-4a7a-bb8b-d51ac65a30fa.jpg?1562447853"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2788d69-6a3a-42f0-8736-cc6b57755ecd.jpg?1559591620", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2788d69-6a3a-42f0-8736-cc6b57755ecd.jpg?1559591620"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0adf3831-93d9-4995-b8c8-0d8c03fee872.jpg?1657809849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0adf3831-93d9-4995-b8c8-0d8c03fee872.jpg?1657809849"}, "flavor_name": "Shrinking Storm", "reprint": true, "digital": false, "set_type": "box"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a91be77a-bd5b-485f-b5ca-0e6148c236ca.jpg?1619340331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a91be77a-bd5b-485f-b5ca-0e6148c236ca.jpg?1619340331"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/4351bf97-0b9e-44a5-bb7c-1098a683b18d.jpg?1562908574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/4351bf97-0b9e-44a5-bb7c-1098a683b18d.jpg?1562908574"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98890cd7-ebd5-4fea-814e-4f612abfe3a5.jpg?1560576455", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98890cd7-ebd5-4fea-814e-4f612abfe3a5.jpg?1560576455"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10c5810f-83f6-43bf-8ece-047be42d7d58.jpg?1561756672", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10c5810f-83f6-43bf-8ece-047be42d7d58.jpg?1561756672"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Yahenni's Expertise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2f28735-122c-45ba-bde5-decfd9b11b32.jpg?1576381752", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2f28735-122c-45ba-bde5-decfd9b11b32.jpg?1576381752"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Yahenni's Expertise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f4ddbb7-b317-44dc-bb3d-52f52c0a8f96.jpg?1562270938", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f4ddbb7-b317-44dc-bb3d-52f52c0a8f96.jpg?1562270938"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Yamabushi's Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0a5a930d-ae59-47e2-9b98-f703e308b5c0.jpg?1562757474", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0a5a930d-ae59-47e2-9b98-f703e308b5c0.jpg?1562757474"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zealous Persecution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07d8ae46-14ec-4878-ba8a-a47d4508c6d7.jpg?1562639500", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07d8ae46-14ec-4878-ba8a-a47d4508c6d7.jpg?1562639500"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zealous Persecution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/00963993-ff4d-4cc6-a7e0-ed8adac40bfd.jpg?1562895154", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/00963993-ff4d-4cc6-a7e0-ed8adac40bfd.jpg?1562895154"}, "reprint": true, "digital": false, "set_type": "box"}]} \ No newline at end of file From c3b825cc447cae8ed56dddd65dd507d0ed2b2ea9 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Wed, 20 Jul 2022 16:59:40 -0700 Subject: [PATCH 060/113] Adjust card positioning --- web/public/mtg/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/public/mtg/index.html b/web/public/mtg/index.html index 8ca9264c..722e4714 100644 --- a/web/public/mtg/index.html +++ b/web/public/mtg/index.html @@ -66,7 +66,7 @@ background-size: 220px; background-repeat: no-repeat; transition: height 1s, background-image 1s, border 0.4s 0.6s; - background-position-y: calc(50% - 20px); + background-position-y: calc(50% - 18px); } .card:not([data-name^='name'])::after { From 6b5b9b42f5a86f642c9966645560f2f8160454ad Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Wed, 20 Jul 2022 17:14:49 -0700 Subject: [PATCH 061/113] Make the select screen index.html --- web/public/mtg/choose.html | 225 --------------- web/public/mtg/guess.html | 554 ++++++++++++++++++++++++++++++++++++ web/public/mtg/index.html | 565 ++++++++----------------------------- 3 files changed, 672 insertions(+), 672 deletions(-) delete mode 100644 web/public/mtg/choose.html create mode 100644 web/public/mtg/guess.html diff --git a/web/public/mtg/choose.html b/web/public/mtg/choose.html deleted file mode 100644 index cb84ced5..00000000 --- a/web/public/mtg/choose.html +++ /dev/null @@ -1,225 +0,0 @@ -<!DOCTYPE html> -<html> - <head> - <!-- Google Tag Manager --> - <script> - ;(function (w, d, s, l, i) { - w[l] = w[l] || [] - w[l].push({ - 'gtm.start': new Date().getTime(), - event: 'gtm.js', - }) - var f = d.getElementsByTagName(s)[0], - j = d.createElement(s), - dl = l !== 'dataLayer' ? '&l=' + l : '' - j.async = true - j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl - f.parentNode.insertBefore(j, f) - })(window, document, 'script', 'dataLayer', 'GTM-M3MBVGG') - </script> - <!-- End Google Tag Manager --> - <meta charset="UTF-8" /> - <style type="text/css"> - body { - position: relative; - } - - .play-page { - display: flex; - flex-direction: row-reverse; - font-family: Georgia, 'Times New Roman', Times, serif; - min-height: 200px; - } - - h1, - h3 { - font-family: Verdana, Geneva, Tahoma, sans-serif; - text-align: center; - } - - #submit { - margin-top: 10px; - padding: 8px 20px; - background-color: cadetblue; - border: none; - border-radius: 3px; - font-size: 1.1em; - color: white; - cursor: pointer; - } - - #submit:hover { - background-color: rgb(0, 146, 156); - } - - [type='radio'] { - display: none; - } - - [type='radio'] + label.radio-label { - background: lightgrey; - display: block; - padding: 10px; - border-radius: 4px; - cursor: pointer; - } - - label.radio-label:hover { - background: darkgrey; - } - - [type='radio']:checked + label.radio-label { - background: lightcoral; - } - - .radio-label h3 { - margin: 0; - display: inline-block; - vertical-align: middle; - width: 220px; - } - - .thumbnail { - display: inline-block; - vertical-align: middle; - width: 67px; - height: 48px; - margin-right: 4px; - } - - body { - padding: 70px 0 30px; - } - - #addl-options { - position: absolute; - top: 30px; - right: 30px; - background-color: white; - padding: 10px; - cursor: pointer; - width: 200px; - } - - #addl-options > summary { - list-style: none; - text-align: right; - } - </style> - </head> - <body> - <!-- Google Tag Manager (noscript) --> - <noscript> - <iframe - src="https://www.googletagmanager.com/ns.html?id=GTM-M3MBVGG" - height="0" - width="0" - style="display: none; visibility: hidden" - ></iframe> - </noscript> - <!-- End Google Tag Manager (noscript) --> - <h1>Magic the Guessering</h1> - <div class="play-page" style="justify-content: center"> - <form - method="get" - action="index.html" - style="display: flex; flex-direction: column; align-items: center" - > - <!-- <input type="radio" id="wrath" name="whichguesser" value="wrath" /> - <label class="radio-label" for="wrath"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0619d670-7b53-4185-a25d-2fab5db1aab5.jpg?1562896185" - /> - <h3>I'll Clean Sweep</h3></label - ><br /> --> - - <input - type="radio" - id="counterspell" - name="whichguesser" - value="counterspell" - checked - /> - <label class="radio-label" for="counterspell"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/71cfcba5-1571-48b8-a3db-55dca135506e.jpg?1562843855" - /> - <h3>Counterspell Guesser</h3></label - ><br /> - - <!-- <input type="radio" id="terror" name="whichguesser" value="terror" /> - <label class="radio-label" for="terror"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dd5d601-aff7-4b7a-ab6c-b89f403af076.jpg?1562905752" - /> - <h3>I'm a Terror-able Guesser</h3></label - ><br /> --> - - <input type="radio" id="burn" name="whichguesser" value="burn" /> - <label class="radio-label" for="burn"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60b2fae1-242b-45e0-a757-b1adc02c06f3.jpg?1562760596" - /> - <h3>Match With Hot Singles</h3></label - ><br /> - - <!-- <input type="radio" id="beast" name="whichguesser" value="beast" /> - <label class="radio-label" for="beast"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33f7e788-8fc7-49f3-804b-2d7f96852d4b.jpg?1562905469" - /> - <h3>Finding Fantastic Beasts</h3></label - > - <br /> --> - - <details id="addl-options"> - <summary> - <img - src="http://mythicspoiler.com/images/buttons/ustset.png" - style="width: 32px; vertical-align: top" - /> - Options - </summary> - <input type="checkbox" name="digital" id="digital" checked /> - <label for="digital">include digital cards</label> - <br /> - <input type="checkbox" name="un" id="un" checked /> - <label for="un">include un-cards</label> - <br /> - <input type="checkbox" name="original" id="original" /> - <label for="original">restrict to only original printing</label> - </details> - <input type="submit" id="submit" value="Play" /> - </form> - </div> - - <div style="margin: -40px 0 0; height: 60px"> - <a href="https://paypal.me/idamayer">Donate, buy us a boba 🧋</a> - </div> - - <div - style=" - font-size: 0.9em; - position: absolute; - bottom: 0; - left: 0; - right: 0; - color: grey; - font-style: italic; - " - > - made by - <a - style="color: rgb(0, 146, 156); font-style: italic" - href="https://idamayer.com" - >Ida Mayer</a - > - & Alex Lien 2022 - </div> - </body> -</html> diff --git a/web/public/mtg/guess.html b/web/public/mtg/guess.html new file mode 100644 index 00000000..f0045f08 --- /dev/null +++ b/web/public/mtg/guess.html @@ -0,0 +1,554 @@ +<!DOCTYPE html> +<html> + <head> + <!-- Google Tag Manager --> + <script> + ;(function (w, d, s, l, i) { + w[l] = w[l] || [] + w[l].push({ + 'gtm.start': new Date().getTime(), + event: 'gtm.js', + }) + var f = d.getElementsByTagName(s)[0], + j = d.createElement(s), + dl = l !== 'dataLayer' ? '&l=' + l : '' + j.async = true + j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl + f.parentNode.insertBefore(j, f) + })(window, document, 'script', 'dataLayer', 'GTM-M3MBVGG') + </script> + <!-- End Google Tag Manager --> + <meta charset="UTF-8" /> + <script type="text/javascript" src="app.js"></script> + <style type="text/css"> + body { + position: relative; + } + + .play-page { + display: flex; + flex-direction: row-reverse; + font-family: Georgia, 'Times New Roman', Times, serif; + } + + h1 { + font-family: Verdana, Geneva, Tahoma, sans-serif; + text-align: center; + } + + form { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + margin-right: 240px; + } + + .cards-container { + display: flex; + flex-wrap: wrap; + flex-direction: row; + justify-content: center; + } + + .card { + width: 230px; + height: 208px; + border: 5px solid lightgrey; + margin: 5px; + align-items: flex-end; + box-sizing: border-box; + border-radius: 11px; + position: relative; + display: flex; + justify-content: center; + /*background-size: contain;*/ + background-size: 220px; + background-repeat: no-repeat; + transition: height 1s, background-image 1s, border 0.4s 0.6s; + background-position-y: calc(50% - 18px); + } + + .card:not([data-name^='name'])::after { + content: ''; + height: 34px; + background: white; + width: 100%; + } + + .answer-page .card { + height: 350px; + /*padding-top: 310px;*/ + /*background-size: cover;*/ + overflow: hidden; + border-color: rgb(0, 146, 156); + } + + .answer-page .card.incorrect { + border-color: rgb(216, 27, 96); + } + + .names-bank { + position: fixed; + padding: 10px 10px 40px; + } + + .names-bank .name { + margin: 6px 0; + } + + .answer-page .names-bank .name { + display: none; + } + + .answer-page .names-bank .word-count { + display: none; + } + + .word-count { + text-align: center; + font-style: italic; + color: #444; + } + + .score { + width: 100%; + text-align: center; + background-color: rgb(255, 193, 7); + width: 200px; + font-family: Verdana, Geneva, Tahoma, sans-serif; + opacity: 0; + } + + .names-bank .score { + overflow: hidden; + height: 0; + } + + .answer-page .names-bank .score { + height: auto; + display: block; + opacity: 1; + transition: opacity 1.2s 0.2s; + padding: 20px; + } + + .name { + width: 230px; + min-height: 36px; + border-radius: 2px; + background-color: lightgrey; + padding: 8px 12px 2px; + box-sizing: border-box; + } + + .card .name { + border-radius: 0 0 5px 5px; + } + + #submit { + margin-top: 10px; + padding: 8px 20px; + background-color: cadetblue; + border: none; + border-radius: 3px; + font-size: 1.1em; + color: white; + cursor: pointer; + } + + #submit:hover { + background-color: rgb(0, 146, 156); + } + + #newGame { + padding: 8px 20px; + background-color: lightpink; + border: none; + position: absolute; + top: 5px; + left: 20px; + border-radius: 3px; + font-size: 0.7em; + cursor: pointer; + } + + #newGame:hover { + background-color: coral; + } + + .selected { + background-color: orange; + } + + @media screen and (orientation: landscape) and (max-height: 680px) { + /* CSS applied when the device is in landscape mode*/ + .names-bank { + padding: 0; + top: 0; + max-height: 100vh; + overflow: scroll; + } + + body { + font-size: 20px; + } + + .word-count { + font-size: 14px; + } + + h1 { + margin-right: 240px; + } + } + + @media screen and (orientation: portrait) and (max-width: 1100px) { + body { + font-size: 1.8em; + } + + .play-page { + flex-direction: column; + } + + .names-bank { + flex-direction: row; + display: flex; + flex-wrap: wrap; + /* position: fixed; */ + padding: 10px 10px 40px; + position: sticky; + top: 0; + z-index: 100; + background: white; + } + + .answer-page .names-bank { + min-width: 100%; + justify-content: center; + } + + form { + margin: 0; + } + + .names-bank .name { + margin: 6px; + } + + .names-bank .score { + width: 0; + } + + .answer-page .names-bank .score { + width: auto; + } + + .word-count { + position: absolute; + margin-top: -20px; + } + + .name { + width: 300px; + } + + .card { + width: 300px; + background-size: 300px; + height: 266px; + } + + .answer-page .card { + height: 454px; + } + } + </style> + </head> + <body> + <!-- Google Tag Manager (noscript) --> + <noscript> + <iframe + src="https://www.googletagmanager.com/ns.html?id=GTM-M3MBVGG" + height="0" + width="0" + style="display: none; visibility: hidden" + ></iframe> + </noscript> + <!-- End Google Tag Manager (noscript) --> + + <h1><span id="guess-type"></span>: <span id="round-number"></span></h1> + + <div class="play-page"> + <div + class="names-bank" + ondrop="returnDrop(event)" + ondragover="event.preventDefault()" + > + <div class="score"> + YOUR SCORE + <div>Correct Answers This Round: <span id="score-amount"></span></div> + <div> + Correct Answers In Total: <span id="score-amount-total"></span> + </div> + <div>Overall Percent: <span id="score-percent"></span>%</div> + </div> + <div class="word-count"><span id="words-left"></span></div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-1" + > + Name 1 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-2" + > + Name 2 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-3" + > + Name 3 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-4" + > + Name 4 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-5" + > + Name 5 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-6" + > + Name 6 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-7" + > + Name 7 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-8" + > + Name 8 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-9" + > + Name 9 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-10" + > + Name 10 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-11" + > + Name 11 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-12" + > + Name 12 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-13" + > + Name 13 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-14" + > + Name 14 + </div> + <div + class="name" + draggable="true" + ondragstart="drag(event)" + onClick="selectName(event)" + id="name-15" + > + Name 15 + </div> + </div> + <form onsubmit="toggleMode(event)"> + <div class="cards-container"> + <div + class="card" + ondrop="drop(event,1)" + ondragover="allowDrop(event,1)" + onclick="dropSelected(event, 1)" + id="card-1" + ></div> + <div + class="card" + ondrop="drop(event,2)" + ondragover="allowDrop(event,2)" + onclick="dropSelected(event, 2)" + id="card-2" + ></div> + <div + class="card" + ondrop="drop(event,3)" + ondragover="allowDrop(event,3)" + onclick="dropSelected(event, 3)" + id="card-3" + ></div> + <div + class="card" + ondrop="drop(event,4)" + ondragover="allowDrop(event,4)" + onclick="dropSelected(event, 4)" + id="card-4" + ></div> + <div + class="card" + ondrop="drop(event,5)" + ondragover="allowDrop(event,5)" + onclick="dropSelected(event, 5)" + id="card-5" + ></div> + <div + class="card" + ondrop="drop(event, 6)" + ondragover="allowDrop(event,6)" + onclick="dropSelected(event,6)" + id="card-6" + ></div> + <div + class="card" + ondrop="drop(event,7)" + ondragover="allowDrop(event,7)" + onclick="dropSelected(event, 7)" + id="card-7" + ></div> + <div + class="card" + ondrop="drop(event,8)" + ondragover="allowDrop(event,8)" + onclick="dropSelected(event, 8)" + id="card-8" + ></div> + <div + class="card" + ondrop="drop(event,9)" + ondragover="allowDrop(event,9)" + onclick="dropSelected(event, 9)" + id="card-9" + ></div> + <div + class="card" + ondrop="drop(event,10)" + ondragover="allowDrop(event,10)" + onclick="dropSelected(event, 10)" + id="card-10" + ></div> + <div + class="card" + ondrop="drop(event,11)" + ondragover="allowDrop(event,11)" + onclick="dropSelected(event, 11)" + id="card-11" + ></div> + <div + class="card" + ondrop="drop(event,12)" + ondragover="allowDrop(event,12)" + onclick="dropSelected(event, 12)" + id="card-12" + ></div> + </div> + <input type="submit" id="submit" value="Submit" /> + </form> + </div> + + <div style="position: absolute; top: 0; left: 0; right: 0; color: grey"> + <form method="get" action="index.html"> + <input type="submit" id="newGame" value="New Game" /> + </form> + </div> + <div style="margin: -40px 0 0; height: 60px"> + <a href="https://paypal.me/idamayer">Donate, buy us a boba 🧋</a> + </div> + + <div + style=" + font-size: 0.9em; + position: absolute; + bottom: 0; + left: 0; + right: 0; + color: grey; + font-style: italic; + " + > + made by + <a + style="color: rgb(0, 146, 156); font-style: italic" + href="https://idamayer.com" + >Ida Mayer</a + > + & Alex Lien 2022 + </div> + </body> +</html> diff --git a/web/public/mtg/index.html b/web/public/mtg/index.html index 722e4714..8fbd9991 100644 --- a/web/public/mtg/index.html +++ b/web/public/mtg/index.html @@ -19,7 +19,6 @@ </script> <!-- End Google Tag Manager --> <meta charset="UTF-8" /> - <script type="text/javascript" src="app.js"></script> <style type="text/css"> body { position: relative; @@ -29,123 +28,15 @@ display: flex; flex-direction: row-reverse; font-family: Georgia, 'Times New Roman', Times, serif; + min-height: 200px; } - h1 { + h1, + h3 { font-family: Verdana, Geneva, Tahoma, sans-serif; text-align: center; } - form { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - margin-right: 240px; - } - - .cards-container { - display: flex; - flex-wrap: wrap; - flex-direction: row; - justify-content: center; - } - - .card { - width: 230px; - height: 208px; - border: 5px solid lightgrey; - margin: 5px; - align-items: flex-end; - box-sizing: border-box; - border-radius: 11px; - position: relative; - display: flex; - justify-content: center; - /*background-size: contain;*/ - background-size: 220px; - background-repeat: no-repeat; - transition: height 1s, background-image 1s, border 0.4s 0.6s; - background-position-y: calc(50% - 18px); - } - - .card:not([data-name^='name'])::after { - content: ''; - height: 34px; - background: white; - width: 100%; - } - - .answer-page .card { - height: 350px; - /*padding-top: 310px;*/ - /*background-size: cover;*/ - overflow: hidden; - border-color: rgb(0, 146, 156); - } - - .answer-page .card.incorrect { - border-color: rgb(216, 27, 96); - } - - .names-bank { - position: fixed; - padding: 10px 10px 40px; - } - - .names-bank .name { - margin: 6px 0; - } - - .answer-page .names-bank .name { - display: none; - } - - .answer-page .names-bank .word-count { - display: none; - } - - .word-count { - text-align: center; - font-style: italic; - color: #444; - } - - .score { - width: 100%; - text-align: center; - background-color: rgb(255, 193, 7); - width: 200px; - font-family: Verdana, Geneva, Tahoma, sans-serif; - opacity: 0; - } - - .names-bank .score { - overflow: hidden; - height: 0; - } - - .answer-page .names-bank .score { - height: auto; - display: block; - opacity: 1; - transition: opacity 1.2s 0.2s; - padding: 20px; - } - - .name { - width: 230px; - min-height: 36px; - border-radius: 2px; - background-color: lightgrey; - padding: 8px 12px 2px; - box-sizing: border-box; - } - - .card .name { - border-radius: 0 0 5px 5px; - } - #submit { margin-top: 10px; padding: 8px 20px; @@ -161,108 +52,58 @@ background-color: rgb(0, 146, 156); } - #newGame { - padding: 8px 20px; - background-color: lightpink; - border: none; - position: absolute; - top: 5px; - left: 20px; - border-radius: 3px; - font-size: 0.7em; + [type='radio'] { + display: none; + } + + [type='radio'] + label.radio-label { + background: lightgrey; + display: block; + padding: 10px; + border-radius: 4px; cursor: pointer; } - #newGame:hover { - background-color: coral; + label.radio-label:hover { + background: darkgrey; } - .selected { - background-color: orange; + [type='radio']:checked + label.radio-label { + background: lightcoral; } - @media screen and (orientation: landscape) and (max-height: 680px) { - /* CSS applied when the device is in landscape mode*/ - .names-bank { - padding: 0; - top: 0; - max-height: 100vh; - overflow: scroll; - } - - body { - font-size: 20px; - } - - .word-count { - font-size: 14px; - } - - h1 { - margin-right: 240px; - } + .radio-label h3 { + margin: 0; + display: inline-block; + vertical-align: middle; + width: 220px; } - @media screen and (orientation: portrait) and (max-width: 1100px) { - body { - font-size: 1.8em; - } + .thumbnail { + display: inline-block; + vertical-align: middle; + width: 67px; + height: 48px; + margin-right: 4px; + } - .play-page { - flex-direction: column; - } + body { + padding: 70px 0 30px; + } - .names-bank { - flex-direction: row; - display: flex; - flex-wrap: wrap; - /* position: fixed; */ - padding: 10px 10px 40px; - position: sticky; - top: 0; - z-index: 100; - background: white; - } + #addl-options { + position: absolute; + top: 30px; + right: 30px; + background-color: white; + padding: 10px; + cursor: pointer; + width: 200px; + } - .answer-page .names-bank { - min-width: 100%; - justify-content: center; - } - - form { - margin: 0; - } - - .names-bank .name { - margin: 6px; - } - - .names-bank .score { - width: 0; - } - - .answer-page .names-bank .score { - width: auto; - } - - .word-count { - position: absolute; - margin-top: -20px; - } - - .name { - width: 300px; - } - - .card { - width: 300px; - background-size: 300px; - height: 266px; - } - - .answer-page .card { - height: 454px; - } + #addl-options > summary { + list-style: none; + text-align: right; } </style> </head> @@ -277,256 +118,86 @@ ></iframe> </noscript> <!-- End Google Tag Manager (noscript) --> - - <h1><span id="guess-type"></span>: <span id="round-number"></span></h1> - - <div class="play-page"> - <div - class="names-bank" - ondrop="returnDrop(event)" - ondragover="event.preventDefault()" + <h1>Magic the Guessering</h1> + <div class="play-page" style="justify-content: center"> + <form + method="get" + action="guess.html" + style="display: flex; flex-direction: column; align-items: center" > - <div class="score"> - YOUR SCORE - <div>Correct Answers This Round: <span id="score-amount"></span></div> - <div> - Correct Answers In Total: <span id="score-amount-total"></span> - </div> - <div>Overall Percent: <span id="score-percent"></span>%</div> - </div> - <div class="word-count"><span id="words-left"></span></div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-1" + <!-- <input type="radio" id="wrath" name="whichguesser" value="wrath" /> + <label class="radio-label" for="wrath"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0619d670-7b53-4185-a25d-2fab5db1aab5.jpg?1562896185" + /> + <h3>I'll Clean Sweep</h3></label + ><br /> --> + + <input + type="radio" + id="counterspell" + name="whichguesser" + value="counterspell" + checked + /> + <label class="radio-label" for="counterspell"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/71cfcba5-1571-48b8-a3db-55dca135506e.jpg?1562843855" + /> + <h3>Counterspell Guesser</h3></label + ><br /> + + <!-- <input type="radio" id="terror" name="whichguesser" value="terror" /> + <label class="radio-label" for="terror"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dd5d601-aff7-4b7a-ab6c-b89f403af076.jpg?1562905752" + /> + <h3>I'm a Terror-able Guesser</h3></label + ><br /> --> + + <input type="radio" id="burn" name="whichguesser" value="burn" /> + <label class="radio-label" for="burn"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60b2fae1-242b-45e0-a757-b1adc02c06f3.jpg?1562760596" + /> + <h3>Match With Hot Singles</h3></label + ><br /> + + <!-- <input type="radio" id="beast" name="whichguesser" value="beast" /> + <label class="radio-label" for="beast"> + <img + class="thumbnail" + src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33f7e788-8fc7-49f3-804b-2d7f96852d4b.jpg?1562905469" + /> + <h3>Finding Fantastic Beasts</h3></label > - Name 1 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-2" - > - Name 2 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-3" - > - Name 3 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-4" - > - Name 4 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-5" - > - Name 5 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-6" - > - Name 6 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-7" - > - Name 7 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-8" - > - Name 8 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-9" - > - Name 9 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-10" - > - Name 10 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-11" - > - Name 11 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-12" - > - Name 12 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-13" - > - Name 13 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-14" - > - Name 14 - </div> - <div - class="name" - draggable="true" - ondragstart="drag(event)" - onClick="selectName(event)" - id="name-15" - > - Name 15 - </div> - </div> - <form onsubmit="toggleMode(event)"> - <div class="cards-container"> - <div - class="card" - ondrop="drop(event,1)" - ondragover="allowDrop(event,1)" - onclick="dropSelected(event, 1)" - id="card-1" - ></div> - <div - class="card" - ondrop="drop(event,2)" - ondragover="allowDrop(event,2)" - onclick="dropSelected(event, 2)" - id="card-2" - ></div> - <div - class="card" - ondrop="drop(event,3)" - ondragover="allowDrop(event,3)" - onclick="dropSelected(event, 3)" - id="card-3" - ></div> - <div - class="card" - ondrop="drop(event,4)" - ondragover="allowDrop(event,4)" - onclick="dropSelected(event, 4)" - id="card-4" - ></div> - <div - class="card" - ondrop="drop(event,5)" - ondragover="allowDrop(event,5)" - onclick="dropSelected(event, 5)" - id="card-5" - ></div> - <div - class="card" - ondrop="drop(event, 6)" - ondragover="allowDrop(event,6)" - onclick="dropSelected(event,6)" - id="card-6" - ></div> - <div - class="card" - ondrop="drop(event,7)" - ondragover="allowDrop(event,7)" - onclick="dropSelected(event, 7)" - id="card-7" - ></div> - <div - class="card" - ondrop="drop(event,8)" - ondragover="allowDrop(event,8)" - onclick="dropSelected(event, 8)" - id="card-8" - ></div> - <div - class="card" - ondrop="drop(event,9)" - ondragover="allowDrop(event,9)" - onclick="dropSelected(event, 9)" - id="card-9" - ></div> - <div - class="card" - ondrop="drop(event,10)" - ondragover="allowDrop(event,10)" - onclick="dropSelected(event, 10)" - id="card-10" - ></div> - <div - class="card" - ondrop="drop(event,11)" - ondragover="allowDrop(event,11)" - onclick="dropSelected(event, 11)" - id="card-11" - ></div> - <div - class="card" - ondrop="drop(event,12)" - ondragover="allowDrop(event,12)" - onclick="dropSelected(event, 12)" - id="card-12" - ></div> - </div> - <input type="submit" id="submit" value="Submit" /> + <br /> --> + + <details id="addl-options"> + <summary> + <img + src="http://mythicspoiler.com/images/buttons/ustset.png" + style="width: 32px; vertical-align: top" + /> + Options + </summary> + <input type="checkbox" name="digital" id="digital" checked /> + <label for="digital">include digital cards</label> + <br /> + <input type="checkbox" name="un" id="un" checked /> + <label for="un">include un-cards</label> + <br /> + <input type="checkbox" name="original" id="original" /> + <label for="original">restrict to only original printing</label> + </details> + <input type="submit" id="submit" value="Play" /> </form> </div> - <div style="position: absolute; top: 0; left: 0; right: 0; color: grey"> - <form method="get" action="choose.html"> - <input type="submit" id="newGame" value="New Game" /> - </form> - </div> <div style="margin: -40px 0 0; height: 60px"> <a href="https://paypal.me/idamayer">Donate, buy us a boba 🧋</a> </div> From edee910e2d884d06c1dd4467041bbc502aee5f98 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Wed, 20 Jul 2022 18:00:18 -0700 Subject: [PATCH 062/113] Remove other guessing games --- web/public/mtg/index.html | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/web/public/mtg/index.html b/web/public/mtg/index.html index 8fbd9991..4626312e 100644 --- a/web/public/mtg/index.html +++ b/web/public/mtg/index.html @@ -125,15 +125,6 @@ action="guess.html" style="display: flex; flex-direction: column; align-items: center" > - <!-- <input type="radio" id="wrath" name="whichguesser" value="wrath" /> - <label class="radio-label" for="wrath"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0619d670-7b53-4185-a25d-2fab5db1aab5.jpg?1562896185" - /> - <h3>I'll Clean Sweep</h3></label - ><br /> --> - <input type="radio" id="counterspell" @@ -149,15 +140,6 @@ <h3>Counterspell Guesser</h3></label ><br /> - <!-- <input type="radio" id="terror" name="whichguesser" value="terror" /> - <label class="radio-label" for="terror"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dd5d601-aff7-4b7a-ab6c-b89f403af076.jpg?1562905752" - /> - <h3>I'm a Terror-able Guesser</h3></label - ><br /> --> - <input type="radio" id="burn" name="whichguesser" value="burn" /> <label class="radio-label" for="burn"> <img @@ -167,16 +149,6 @@ <h3>Match With Hot Singles</h3></label ><br /> - <!-- <input type="radio" id="beast" name="whichguesser" value="beast" /> - <label class="radio-label" for="beast"> - <img - class="thumbnail" - src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33f7e788-8fc7-49f3-804b-2d7f96852d4b.jpg?1562905469" - /> - <h3>Finding Fantastic Beasts</h3></label - > - <br /> --> - <details id="addl-options"> <summary> <img From 260f4641dd89b1c46b61c529e9cc974a7e28cb95 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Wed, 20 Jul 2022 18:04:54 -0700 Subject: [PATCH 063/113] Remove alternate versions; add Alex's email --- web/public/mtg/app.js | 8 -------- web/public/mtg/guess.html | 7 ++++++- web/public/mtg/index.html | 7 ++++++- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/web/public/mtg/app.js b/web/public/mtg/app.js index 983b8651..fc7711d0 100644 --- a/web/public/mtg/app.js +++ b/web/public/mtg/app.js @@ -57,14 +57,6 @@ function putIntoMapAndFetch(data) { window.console.log(nameList) if (whichGuesser === 'counterspell') { document.getElementById('guess-type').innerText = 'Counterspell Guesser' - } else if (whichGuesser === 'beast') { - document.getElementById('guess-type').innerText = - 'Finding Fantastic Beasts' - } else if (whichGuesser === 'terror') { - document.getElementById('guess-type').innerText = - "I'm a Terror-able Guesser" - } else if (whichGuesser === 'wrath') { - document.getElementById('guess-type').innerText = "I'll Clean Sweep" } else if (whichGuesser === 'burn') { document.getElementById('guess-type').innerText = 'Match With Hot Singles' } diff --git a/web/public/mtg/guess.html b/web/public/mtg/guess.html index f0045f08..882883a7 100644 --- a/web/public/mtg/guess.html +++ b/web/public/mtg/guess.html @@ -548,7 +548,12 @@ href="https://idamayer.com" >Ida Mayer</a > - & Alex Lien 2022 + & + <a + style="color: rgb(0, 146, 156); font-style: italic" + href="mailto:alexlien.alien@gmail.com" + >Alex Lien</a + >, 2022 </div> </body> </html> diff --git a/web/public/mtg/index.html b/web/public/mtg/index.html index 4626312e..5fd31966 100644 --- a/web/public/mtg/index.html +++ b/web/public/mtg/index.html @@ -191,7 +191,12 @@ href="https://idamayer.com" >Ida Mayer</a > - & Alex Lien 2022 + & + <a + style="color: rgb(0, 146, 156); font-style: italic" + href="mailto:alexlien.alien@gmail.com" + >Alex Lien</a + >, 2022 </div> </body> </html> From aba818a9de766194ca6aafc6a82eafac42e6589a Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Wed, 20 Jul 2022 18:05:41 -0700 Subject: [PATCH 064/113] Remove unused jsons --- web/public/mtg/jsons/beast1.json | 1 - web/public/mtg/jsons/beast2.json | 1 - web/public/mtg/jsons/beast3.json | 1 - web/public/mtg/jsons/terror1.json | 1 - web/public/mtg/jsons/terror2.json | 1 - web/public/mtg/jsons/terror3.json | 1 - web/public/mtg/jsons/wrath1.json | 1 - web/public/mtg/jsons/wrath2.json | 1 - web/public/mtg/jsons/wrath3.json | 1 - 9 files changed, 9 deletions(-) delete mode 100644 web/public/mtg/jsons/beast1.json delete mode 100644 web/public/mtg/jsons/beast2.json delete mode 100644 web/public/mtg/jsons/beast3.json delete mode 100644 web/public/mtg/jsons/terror1.json delete mode 100644 web/public/mtg/jsons/terror2.json delete mode 100644 web/public/mtg/jsons/terror3.json delete mode 100644 web/public/mtg/jsons/wrath1.json delete mode 100644 web/public/mtg/jsons/wrath2.json delete mode 100644 web/public/mtg/jsons/wrath3.json diff --git a/web/public/mtg/jsons/beast1.json b/web/public/mtg/jsons/beast1.json deleted file mode 100644 index 6a5b26c0..00000000 --- a/web/public/mtg/jsons/beast1.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": true, "data": [{"name": "Adaptive Snapjaw", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d3c0c43-2d6d-49b8-a112-07611a23ae69.jpg?1561815740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d3c0c43-2d6d-49b8-a112-07611a23ae69.jpg?1561815740"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aeromoeba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a304f7e-0b9e-4ef6-9ad8-34350839f7d9.jpg?1626094228", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a304f7e-0b9e-4ef6-9ad8-34350839f7d9.jpg?1626094228"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Affectionate Indrik", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4c8ddc1-d95c-499f-b1d1-f608f8f07b02.jpg?1572893293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4c8ddc1-d95c-499f-b1d1-f608f8f07b02.jpg?1572893293"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Alms Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce441759-cd4c-4bcc-925e-08e8b60853c0.jpg?1561846666", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce441759-cd4c-4bcc-925e-08e8b60853c0.jpg?1561846666"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Alpha Tyrranax", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a2e5279-f28c-4a78-9f8a-16c9f72f8d38.jpg?1562817224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a2e5279-f28c-4a78-9f8a-16c9f72f8d38.jpg?1562817224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Barkripper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33255dfd-f8a9-4a15-aac5-c53dc0257859.jpg?1562629272", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33255dfd-f8a9-4a15-aac5-c53dc0257859.jpg?1562629272"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Brushhopper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b09204c7-3e3d-484a-a4f7-da1b818e3884.jpg?1562631503", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b09204c7-3e3d-484a-a4f7-da1b818e3884.jpg?1562631503"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Murkdiver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e43d62c-488a-4c8d-b193-bacbf8037761.jpg?1562932427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e43d62c-488a-4c8d-b193-bacbf8037761.jpg?1562932427"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Scavenger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21a21190-3c05-40fe-9310-493ed0f9e42e.jpg?1562628898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21a21190-3c05-40fe-9310-493ed0f9e42e.jpg?1562628898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anurid Swarmsnapper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/3636a9f8-d1d7-4452-8a53-788b514fdb97.jpg?1562629337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/3636a9f8-d1d7-4452-8a53-788b514fdb97.jpg?1562629337"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aquamoeba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1243552a-ca57-42ce-817e-d6268fc673e0.jpg?1562628647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1243552a-ca57-42ce-817e-d6268fc673e0.jpg?1562628647"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aquus Steed", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af643949-7a9b-4195-8ab8-d43b1928b85a.jpg?1562791584", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af643949-7a9b-4195-8ab8-d43b1928b85a.jpg?1562791584"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arashin War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66aed11a-0831-4619-931f-7dfded999c66.jpg?1562826029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66aed11a-0831-4619-931f-7dfded999c66.jpg?1562826029"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arashin War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70fd6e2c-201d-436b-ad54-c9403295ec85.jpg?1562634168", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70fd6e2c-201d-436b-ad54-c9403295ec85.jpg?1562634168"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Arborback Stomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/788b9d55-6679-4fcc-a3af-11d31e477421.jpg?1576382341", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/788b9d55-6679-4fcc-a3af-11d31e477421.jpg?1576382341"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arboreal Grazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c4a5f86f-44a8-4735-909a-770586d33a15.jpg?1586962989", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c4a5f86f-44a8-4735-909a-770586d33a15.jpg?1586962989"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Hybrid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2f33f9d-dffd-4742-92c6-be7fe6463dca.jpg?1562638550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2f33f9d-dffd-4742-92c6-be7fe6463dca.jpg?1562638550"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Lancer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7ff3241b-49ba-4243-b8fc-fef600836c8c.jpg?1562637774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7ff3241b-49ba-4243-b8fc-fef600836c8c.jpg?1562637774"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0c33a92-5621-40b4-a3a2-b67893edbc01.jpg?1561968545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0c33a92-5621-40b4-a3a2-b67893edbc01.jpg?1561968545"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/72c1a731-7854-42b1-8719-ac3c2a269c1f.jpg?1562637545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/72c1a731-7854-42b1-8719-ac3c2a269c1f.jpg?1562637545"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a898fbf-5c73-4a50-8bf5-126051747659.jpg?1599332547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a898fbf-5c73-4a50-8bf5-126051747659.jpg?1599332547"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/211b1279-0f37-47a9-8eb5-db91159d0cf2.jpg?1562636700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/211b1279-0f37-47a9-8eb5-db91159d0cf2.jpg?1562636700"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Arcbound Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/eda7bda4-51cf-4648-8489-352d28d591fb.jpg?1562945052", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/eda7bda4-51cf-4648-8489-352d28d591fb.jpg?1562945052"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Arc-Slogger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3dd67e0-72b4-4c55-b49b-c69950feccb1.jpg?1562158892", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3dd67e0-72b4-4c55-b49b-c69950feccb1.jpg?1562158892"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Armguard Familiar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/7497f147-146d-4a76-b670-bd84e07352b3.jpg?1654566610", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/7497f147-146d-4a76-b670-bd84e07352b3.jpg?1654566610"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ashen Firebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/ebaef0bd-8288-49ba-a889-d897a4aae64c.jpg?1562939159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/ebaef0bd-8288-49ba-a889-d897a4aae64c.jpg?1562939159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assault Zeppelid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12bf6443-c941-418a-a766-05bba088a117.jpg?1593273548", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12bf6443-c941-418a-a766-05bba088a117.jpg?1593273548"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aura Gnarlid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f8dbb4f-4b01-4666-b62f-a2323dac7a19.jpg?1562706262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f8dbb4f-4b01-4666-b62f-a2323dac7a19.jpg?1562706262"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Auspicious Starrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a39ae1e4-d4dd-4691-af5a-5fa25ace4ebe.jpg?1591227516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a39ae1e4-d4dd-4691-af5a-5fa25ace4ebe.jpg?1591227516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Auspicious Starrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7b41cfa-b22e-4d34-bfe9-68c9d8740704.jpg?1604781846", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7b41cfa-b22e-4d34-bfe9-68c9d8740704.jpg?1604781846"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Avarax", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae76705f-ec95-48b0-9e26-84ce40c9514b.jpg?1562936224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae76705f-ec95-48b0-9e26-84ce40c9514b.jpg?1562936224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Axebane Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2f420b35-1f73-41c8-a15f-1aee4af0999c.jpg?1584831084", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2f420b35-1f73-41c8-a15f-1aee4af0999c.jpg?1584831084"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Gorger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/504090bb-d183-4833-aea5-d4193b5c57a1.jpg?1562735490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/504090bb-d183-4833-aea5-d4193b5c57a1.jpg?1562735490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Null", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/8811d210-23e2-4318-9730-7ee3b2021c68.jpg?1562922516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/8811d210-23e2-4318-9730-7ee3b2021c68.jpg?1562922516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Packhunter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61b22c5d-3b29-47c1-8a04-13586461a143.jpg?1597684060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61b22c5d-3b29-47c1-8a04-13586461a143.jpg?1597684060"}, "reprint": false, "digital": true, "set_type": "starter"}, {"name": "Baloth Pup", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f9c87f4-4fa5-4c97-9654-c4acd250f850.jpg?1562907761", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f9c87f4-4fa5-4c97-9654-c4acd250f850.jpg?1562907761"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Baloth Woodcrasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/8223dc6a-2bee-4be9-86d5-f0a17a24c33e.jpg?1562613874", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/8223dc6a-2bee-4be9-86d5-f0a17a24c33e.jpg?1562613874"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bannerhide Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1271251b-7d79-4cb4-80bb-98574aa63249.jpg?1626097186", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1271251b-7d79-4cb4-80bb-98574aa63249.jpg?1626097186"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Barbarian Outcast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9d67b5c-ab20-456e-8ff5-7521be8273b2.jpg?1562631722", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9d67b5c-ab20-456e-8ff5-7521be8273b2.jpg?1562631722"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Barkhide Mauler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9196ce7-3ff4-4dda-a628-559ada11c9ba.jpg?1562938641", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9196ce7-3ff4-4dda-a628-559ada11c9ba.jpg?1562938641"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Batterhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a7b40f74-893f-4bfc-87b2-7f8df4c912d8.jpg?1562791147", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a7b40f74-893f-4bfc-87b2-7f8df4c912d8.jpg?1562791147"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Battering Craghorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9ef71f42-87e5-4b1d-aac1-3752b81cee7c.jpg?1562932547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9ef71f42-87e5-4b1d-aac1-3752b81cee7c.jpg?1562932547"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Battering Krasis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d9aa740-9adf-412a-b6ec-0b9bb1b4618b.jpg?1587306439", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d9aa740-9adf-412a-b6ec-0b9bb1b4618b.jpg?1587306439"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Battlefront Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3b425cd-c5a5-48e9-b697-3860dfa6d5d3.jpg?1562830855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3b425cd-c5a5-48e9-b697-3860dfa6d5d3.jpg?1562830855"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bazaar Krovod", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b07bb2fe-3a9b-47d0-864b-99a662d9544b.jpg?1562791650", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b07bb2fe-3a9b-47d0-864b-99a662d9544b.jpg?1562791650"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beacon Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0cc42e33-7489-4a32-bb30-adc80ec13521.jpg?1562799353", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0cc42e33-7489-4a32-bb30-adc80ec13521.jpg?1562799353"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35ed069c-410f-4b30-afd1-8d04742068e7.jpg?1562906387", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35ed069c-410f-4b30-afd1-8d04742068e7.jpg?1562906387"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/7693877c-958f-4c67-93d5-7db8f2dd87e7.jpg?1562919934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/7693877c-958f-4c67-93d5-7db8f2dd87e7.jpg?1562919934"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c90b6269-7406-40c9-8d4c-3448698a1fdd.jpg?1562937465", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c90b6269-7406-40c9-8d4c-3448698a1fdd.jpg?1562937465"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beast in Show", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f7191d7-2c2c-470e-a2b6-eeb8f3031cc2.jpg?1562928685", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f7191d7-2c2c-470e-a2b6-eeb8f3031cc2.jpg?1562928685"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Beasts of Bogardan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f885d776-2953-4ed4-b63f-91dc2b42783b.jpg?1562861851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f885d776-2953-4ed4-b63f-91dc2b42783b.jpg?1562861851"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beast Walkers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99b42f6c-5c7e-4ba8-b0fb-ac8564aaf825.jpg?1562587770", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99b42f6c-5c7e-4ba8-b0fb-ac8564aaf825.jpg?1562587770"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Berserk Murlodont", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/499c4674-dd9f-4848-8447-721f842a0213.jpg?1562909903", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/499c4674-dd9f-4848-8447-721f842a0213.jpg?1562909903"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blastoderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/1354ca60-7183-47ae-ba7b-0871311cba66.jpg?1562089277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/1354ca60-7183-47ae-ba7b-0871311cba66.jpg?1562089277"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Blastoderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9db5d6c2-b11f-442a-b172-c0c99c9bec07.jpg?1562631252", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9db5d6c2-b11f-442a-b172-c0c99c9bec07.jpg?1562631252"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blight-Breath Catoblepas", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/7865c079-1d91-48d4-852d-d104b6e0c157.jpg?1616399490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/7865c079-1d91-48d4-852d-d104b6e0c157.jpg?1616399490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blind Creeper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86d5440a-7460-4b4f-a167-a6c4fb2d855e.jpg?1562878236", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86d5440a-7460-4b4f-a167-a6c4fb2d855e.jpg?1562878236"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bloodstoke Howler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/743779d4-fee8-4b8d-a5ac-27f355e006e5.jpg?1562918274", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/743779d4-fee8-4b8d-a5ac-27f355e006e5.jpg?1562918274"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blossoming Bogbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/332153ab-1b8e-40a8-b0b4-01f94866d368.jpg?1625192204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/332153ab-1b8e-40a8-b0b4-01f94866d368.jpg?1625192204"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Bog Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f230831-023c-41aa-832e-16ac81e68588.jpg?1562909815", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f230831-023c-41aa-832e-16ac81e68588.jpg?1562909815"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bogstomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05145a8d-0bfb-4f07-87cf-65875310bdb4.jpg?1562300265", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05145a8d-0bfb-4f07-87cf-65875310bdb4.jpg?1562300265"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Bonethorn Valesk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/297d7326-ad03-464d-97e2-443042d48f92.jpg?1562526649", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/297d7326-ad03-464d-97e2-443042d48f92.jpg?1562526649"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boneyard Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/37e4df5b-ec53-4f8a-8c26-272b3177c0a6.jpg?1591227954", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/37e4df5b-ec53-4f8a-8c26-272b3177c0a6.jpg?1591227954"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boneyard Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e0232c0-0867-4217-8e5d-b3454c0c8dab.jpg?1604781908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e0232c0-0867-4217-8e5d-b3454c0c8dab.jpg?1604781908"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Book Devourer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01dfe640-5bd2-4d0b-8977-887b2ed4c2dd.jpg?1572893108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01dfe640-5bd2-4d0b-8977-887b2ed4c2dd.jpg?1572893108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Boot Nipper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cff5a5b8-f823-4429-acd8-c4f34a676cb4.jpg?1591226621", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cff5a5b8-f823-4429-acd8-c4f34a676cb4.jpg?1591226621"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brackish Trudge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90ba37ee-159f-421f-8d37-a7b5f1b562f0.jpg?1624590775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90ba37ee-159f-421f-8d37-a7b5f1b562f0.jpg?1624590775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Branchsnap Lorian", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52118ff1-ad76-4b97-9fdc-6adfe80140f8.jpg?1562911651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52118ff1-ad76-4b97-9fdc-6adfe80140f8.jpg?1562911651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brontotherium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a171f5e2-ed3d-4675-a4fc-953ebb907aa0.jpg?1562927638", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a171f5e2-ed3d-4675-a4fc-953ebb907aa0.jpg?1562927638"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Broodstar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07a194cb-53c9-4690-ba63-79beecaebe0e.jpg?1562134726", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07a194cb-53c9-4690-ba63-79beecaebe0e.jpg?1562134726"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brushstrider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59bd1534-52d1-4946-b430-d26f039a9067.jpg?1562786763", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59bd1534-52d1-4946-b430-d26f039a9067.jpg?1562786763"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bulette", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/206a9e7b-45c1-4213-8fc4-27d90e2ab0e9.jpg?1627707159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/206a9e7b-45c1-4213-8fc4-27d90e2ab0e9.jpg?1627707159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bulette", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a76c993-7cc5-428f-bfbc-7747c6a566d0.jpg?1627711855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a76c993-7cc5-428f-bfbc-7747c6a566d0.jpg?1627711855"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Bull Cerodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bbae0fe2-5d52-434c-8ad1-4a5e42f4b7c4.jpg?1562708388", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bbae0fe2-5d52-434c-8ad1-4a5e42f4b7c4.jpg?1562708388"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bumbling Pangolin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/4930b9d5-939f-4463-9f9a-235aa3a4f8c4.jpg?1562910270", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/4930b9d5-939f-4463-9f9a-235aa3a4f8c4.jpg?1562910270"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Calciderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/1585bb24-41de-48a7-820e-d99ee76aec01.jpg?1580013629", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/1585bb24-41de-48a7-820e-d99ee76aec01.jpg?1580013629"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Calciderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/387adc65-5d18-4291-85b1-f49f556781c7.jpg?1561756925", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/387adc65-5d18-4291-85b1-f49f556781c7.jpg?1561756925"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Caller of the Pack", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/1286208b-896b-4f41-a837-1c8a2b199a0f.jpg?1562701494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/1286208b-896b-4f41-a837-1c8a2b199a0f.jpg?1562701494"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Canopy Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b04160c-89a7-4dcd-b05d-5dc846824d64.jpg?1604198638", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b04160c-89a7-4dcd-b05d-5dc846824d64.jpg?1604198638"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Canopy Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d52e90d3-d356-4b23-8f5c-a4004b20394c.jpg?1604202724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d52e90d3-d356-4b23-8f5c-a4004b20394c.jpg?1604202724"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Canopy Crawler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0ccdc9d7-71b5-4304-8d19-a63952e17a6b.jpg?1562897615", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0ccdc9d7-71b5-4304-8d19-a63952e17a6b.jpg?1562897615"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Carnassid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae10e7fe-ee51-4c39-86ec-503324d19f6c.jpg?1562597351", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae10e7fe-ee51-4c39-86ec-503324d19f6c.jpg?1562597351"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Carnivorous Moss-Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd814ce3-9555-4e9d-a212-e40717f4e546.jpg?1562793539", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd814ce3-9555-4e9d-a212-e40717f4e546.jpg?1562793539"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cavern Harpy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/d/adfb0804-50d6-4bca-8733-72e01030a543.jpg?1562931741", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/d/adfb0804-50d6-4bca-8733-72e01030a543.jpg?1562931741"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cavern Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34748acb-7045-42b6-a93f-a3f11a1bc839.jpg?1562702691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34748acb-7045-42b6-a93f-a3f11a1bc839.jpg?1562702691"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cerodon Yearling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f6a85165-5aed-4e26-a314-1370d4638deb.jpg?1562645142", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f6a85165-5aed-4e26-a314-1370d4638deb.jpg?1562645142"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chainflinger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/670a5bba-a10f-41f6-88cd-cef1dfe4bfa9.jpg?1562914041", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/670a5bba-a10f-41f6-88cd-cef1dfe4bfa9.jpg?1562914041"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chambered Nautilus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/860c613d-d031-4c2a-922b-39f4eec04e18.jpg?1562381838", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/860c613d-d031-4c2a-922b-39f4eec04e18.jpg?1562381838"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chancellor of the Tangle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d129aa8-b637-451e-8123-5221e08cc2cc.jpg?1562878494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d129aa8-b637-451e-8123-5221e08cc2cc.jpg?1562878494"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Charging Binox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68222ab7-7b9c-43e5-b80e-db643d80a6d9.jpg?1562915983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68222ab7-7b9c-43e5-b80e-db643d80a6d9.jpg?1562915983"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Charging Slateback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2cfff37-655f-4107-abf3-e6f63d0e4de2.jpg?1562945225", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2cfff37-655f-4107-abf3-e6f63d0e4de2.jpg?1562945225"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chartooth Cougar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b0960bdb-baa7-4b9a-a377-d350eb9c1d3b.jpg?1581708552", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b0960bdb-baa7-4b9a-a377-d350eb9c1d3b.jpg?1581708552"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Chartooth Cougar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b2c9c07-c3db-46ca-a204-b710c3a34ae9.jpg?1562530181", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b2c9c07-c3db-46ca-a204-b710c3a34ae9.jpg?1562530181"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chromeshell Crab", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91cf95f-5007-409c-b891-00e10a3477e0.jpg?1568003959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91cf95f-5007-409c-b891-00e10a3477e0.jpg?1568003959"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Chromeshell Crab", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e02a40a4-fa61-4595-810a-3796e0d71507.jpg?1562940039", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e02a40a4-fa61-4595-810a-3796e0d71507.jpg?1562940039"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cliffrunner Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/764c1a14-143f-4601-92c5-ebeabf3e375d.jpg?1562801821", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/764c1a14-143f-4601-92c5-ebeabf3e375d.jpg?1562801821"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Clockwork Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27f916a2-0ace-44b5-99dc-72979af34db9.jpg?1559591318", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27f916a2-0ace-44b5-99dc-72979af34db9.jpg?1559591318"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Clockwork Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5e5ae63-4963-485e-b40c-3450ee46674b.jpg?1562940262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5e5ae63-4963-485e-b40c-3450ee46674b.jpg?1562940262"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Clockwork Vorrac", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/e/7e876938-1b8e-44cf-ade2-a42f8acdf24c.jpg?1562148654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/e/7e876938-1b8e-44cf-ade2-a42f8acdf24c.jpg?1562148654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Coalhauler Swine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc001cef-3afd-4128-989f-ac99dc76b243.jpg?1598915417", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc001cef-3afd-4128-989f-ac99dc76b243.jpg?1598915417"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Colossodon Yearling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2c60e63-0b86-4100-a932-bb9e9b197610.jpg?1562795540", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2c60e63-0b86-4100-a932-bb9e9b197610.jpg?1562795540"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Colos Yearling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d68eb62-9f86-4c85-8696-46a248c744ff.jpg?1562443334", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d68eb62-9f86-4c85-8696-46a248c744ff.jpg?1562443334"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Copperhoof Vorrac", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/81fff4cc-b2ab-4a41-bede-0d807552ba46.jpg?1562149121", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/81fff4cc-b2ab-4a41-bede-0d807552ba46.jpg?1562149121"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cosmic Larva", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/deaa0b9b-258e-4daf-8fec-ce64864d6bbf.jpg?1562880234", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/deaa0b9b-258e-4daf-8fec-ce64864d6bbf.jpg?1562880234"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cragplate Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/ab62382d-2dc9-4a60-b031-c845ebad0357.jpg?1604198667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/ab62382d-2dc9-4a60-b031-c845ebad0357.jpg?1604198667"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crater Hellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/2382e525-1750-484a-bf95-dbb42bbb30ae.jpg?1562902530", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/2382e525-1750-484a-bf95-dbb42bbb30ae.jpg?1562902530"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Craterhoof Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a249be17-73ed-4108-89c0-f7e87939beb8.jpg?1592709311", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a249be17-73ed-4108-89c0-f7e87939beb8.jpg?1592709311"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Craterhoof Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/2750bee4-7dfa-4128-989c-5f81af1b322a.jpg?1645561147", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/2750bee4-7dfa-4128-989c-5f81af1b322a.jpg?1645561147"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Craterhoof Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/640be32d-dcc8-408a-b8a6-077472f1e70b.jpg?1645561142", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/640be32d-dcc8-408a-b8a6-077472f1e70b.jpg?1645561142"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Creature Guy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/13ac8bde-7a3e-4d14-91f4-f4325c93f6a8.jpg?1562487893", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/13ac8bde-7a3e-4d14-91f4-f4325c93f6a8.jpg?1562487893"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Crested Craghorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aadb40c8-3d54-4705-82dc-54e8d6e315d5.jpg?1562929450", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aadb40c8-3d54-4705-82dc-54e8d6e315d5.jpg?1562929450"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cryptic Annelid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a51026a-ae3c-4fa1-ac1e-96d44ae55b82.jpg?1562916366", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a51026a-ae3c-4fa1-ac1e-96d44ae55b82.jpg?1562916366"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cultivator Colossus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62dffe04-c431-440d-a8da-33c74b4bb683.jpg?1643592511", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62dffe04-c431-440d-a8da-33c74b4bb683.jpg?1643592511"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cystbearer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6c10302-f0b3-4076-ae5c-a8c8c09a7d41.jpg?1562822162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6c10302-f0b3-4076-ae5c-a8c8c09a7d41.jpg?1562822162"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Darba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d82636dc-4b3e-44a8-bc72-dab1275dfb6d.jpg?1562935433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d82636dc-4b3e-44a8-bc72-dab1275dfb6d.jpg?1562935433"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathbringer Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f09f166f-dd3c-4cf5-b5f9-3989f46f050c.jpg?1562645019", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f09f166f-dd3c-4cf5-b5f9-3989f46f050c.jpg?1562645019"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathmist Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74c40df1-3f63-49e7-a869-1ce14f94a753.jpg?1562788391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74c40df1-3f63-49e7-a869-1ce14f94a753.jpg?1562788391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deepwood Tantiv", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfa2028e-4e73-4ff2-a9e2-9ac347d67893.jpg?1562382576", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfa2028e-4e73-4ff2-a9e2-9ac347d67893.jpg?1562382576"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Desert Cerodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2047c2e5-8b3b-4c6b-91cf-3484f21e52f0.jpg?1543675549", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2047c2e5-8b3b-4c6b-91cf-3484f21e52f0.jpg?1543675549"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Displacer Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95d5c36c-bcc8-459c-9f4b-b265ccdb1f06.jpg?1627703119", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95d5c36c-bcc8-459c-9f4b-b265ccdb1f06.jpg?1627703119"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Displacer Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/8646ae5c-e757-4d16-bf2a-d48770d620fa.jpg?1627711276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/8646ae5c-e757-4d16-bf2a-d48770d620fa.jpg?1627711276"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Displacer Kitten", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/7/c7a401b8-29fb-46ef-a663-427f66724d5c.jpg?1653329945", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/7/c7a401b8-29fb-46ef-a663-427f66724d5c.jpg?1653329945"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Domri's Nodorog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1abe58d8-67d1-4719-8e84-27747dea3506.jpg?1584832471", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1abe58d8-67d1-4719-8e84-27747dea3506.jpg?1584832471"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dreg Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e7771eba-bc2d-40f2-bab4-5e9cc4fe8f34.jpg?1562710204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e7771eba-bc2d-40f2-bab4-5e9cc4fe8f34.jpg?1562710204"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drekavac", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/459d8cb7-cbb8-4e73-9571-44277f1d1be2.jpg?1593272880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/459d8cb7-cbb8-4e73-9571-44277f1d1be2.jpg?1593272880"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dromad Purebred", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0106caf1-2201-4661-96a5-56af02963fa6.jpg?1598913635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0106caf1-2201-4661-96a5-56af02963fa6.jpg?1598913635"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drooling Groodion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de33c222-0d74-4eb5-8794-39f3601eb8f4.jpg?1598916987", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de33c222-0d74-4eb5-8794-39f3601eb8f4.jpg?1598916987"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Durkwood Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/670521c3-df02-487d-a299-49419e41889f.jpg?1562916541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/670521c3-df02-487d-a299-49419e41889f.jpg?1562916541"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Earthshaking Si", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/418df457-4aab-486c-b691-41f03ec8a6df.jpg?1562131512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/418df457-4aab-486c-b691-41f03ec8a6df.jpg?1562131512"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Elder Gargaroth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d51269cf-a333-4a64-94cd-245798d840d2.jpg?1594736944", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d51269cf-a333-4a64-94cd-245798d840d2.jpg?1594736944"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Electryte", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85c3d04f-4010-4db3-9e4e-afa8116b263d.jpg?1562923240", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85c3d04f-4010-4db3-9e4e-afa8116b263d.jpg?1562923240"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ember Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8a6d9cab-b07b-456b-9562-7ea7f6bec7f3.jpg?1561835467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8a6d9cab-b07b-456b-9562-7ea7f6bec7f3.jpg?1561835467"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Ember Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25080720-612f-40c0-8894-cda8e3e8afb8.jpg?1562901920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25080720-612f-40c0-8894-cda8e3e8afb8.jpg?1562901920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Enormous Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/cebfb5a6-9052-47be-b931-834b5064df31.jpg?1562936577", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/cebfb5a6-9052-47be-b931-834b5064df31.jpg?1562936577"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Erithizon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec4ea4e2-2102-4b99-bea5-6fc4203f2b26.jpg?1562383536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec4ea4e2-2102-4b99-bea5-6fc4203f2b26.jpg?1562383536"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Symbiote", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d09ddf0-91f0-4e76-809f-c39ca7418ed5.jpg?1591227575", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d09ddf0-91f0-4e76-809f-c39ca7418ed5.jpg?1591227575"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ettercap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f5228dc-ec9d-456f-a89c-1bc592a1bbab.jpg?1653970287", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f5228dc-ec9d-456f-a89c-1bc592a1bbab.jpg?1653970287"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Excavating Anurid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d353d315-5790-417d-adf5-270df1ff34b0.jpg?1562202067", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d353d315-5790-417d-adf5-270df1ff34b0.jpg?1562202067"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Fangren Firstborn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97d5fc3c-7f6b-42a5-a482-d789a2a421c7.jpg?1562638300", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97d5fc3c-7f6b-42a5-a482-d789a2a421c7.jpg?1562638300"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fangren Hunter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2dbc8eef-f032-490a-b487-da1af71b7ff2.jpg?1562139685", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dbc8eef-f032-490a-b487-da1af71b7ff2.jpg?1562139685"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fangren Marauder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5cf62a2-d03a-495d-924a-bf79524175fa.jpg?1562615957", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5cf62a2-d03a-495d-924a-bf79524175fa.jpg?1562615957"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fangren Pathcutter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59679bcf-4436-48f8-bc6a-d7e0ec6b04c9.jpg?1562877169", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59679bcf-4436-48f8-bc6a-d7e0ec6b04c9.jpg?1562877169"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Felidar Cub", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea76a183-e15c-4968-b29d-91c074aa8681.jpg?1562950859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea76a183-e15c-4968-b29d-91c074aa8681.jpg?1562950859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Felidar Guardian", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44bdbed8-5d21-4bf5-8a32-9623b1139c85.jpg?1576381396", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44bdbed8-5d21-4bf5-8a32-9623b1139c85.jpg?1576381396"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Felidar Sovereign", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/78769295-e1e3-4bd7-9ece-b60e124efbba.jpg?1562920314", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/78769295-e1e3-4bd7-9ece-b60e124efbba.jpg?1562920314"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Feral Hydra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46f76986-e9fb-4c51-b946-880b501775b0.jpg?1562703397", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46f76986-e9fb-4c51-b946-880b501775b0.jpg?1562703397"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feral Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/5041996b-c265-4c4f-a52c-dfe29b2e282d.jpg?1562825098", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/5041996b-c265-4c4f-a52c-dfe29b2e282d.jpg?1562825098"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feral Throwback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/5111a9a3-a92d-4677-8974-20800256dd4f.jpg?1606849574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/5111a9a3-a92d-4677-8974-20800256dd4f.jpg?1606849574"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Ferocious Zheng", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a6d1184-15e0-4b41-ba2d-4f68e91c61d4.jpg?1562131565", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a6d1184-15e0-4b41-ba2d-4f68e91c61d4.jpg?1562131565"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Ferrovore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8dcc7170-38d9-4b9e-a5f9-73ac1208c439.jpg?1636491206", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8dcc7170-38d9-4b9e-a5f9-73ac1208c439.jpg?1636491206"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fledgling Mawcor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c464923e-ae6e-4c1d-9315-0ddb86c07b40.jpg?1562936522", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c464923e-ae6e-4c1d-9315-0ddb86c07b40.jpg?1562936522"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Charger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c57abdab-d99c-418c-818d-b06a8722d733.jpg?1562941643", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c57abdab-d99c-418c-818d-b06a8722d733.jpg?1562941643"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Crusher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c93f0066-1ff0-4e52-9959-9eb0def60957.jpg?1562631986", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c93f0066-1ff0-4e52-9959-9eb0def60957.jpg?1562631986"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Hellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/680ccbc7-aa97-4f01-9d26-0df184af3c3e.jpg?1562596853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/680ccbc7-aa97-4f01-9d26-0df184af3c3e.jpg?1562596853"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Mauler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a3165251-6ac6-4294-8bca-595c362f4ceb.jpg?1562597338", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a3165251-6ac6-4294-8bca-595c362f4ceb.jpg?1562597338"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Overseer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3e644ab8-3cc3-413d-a918-44fc636087ae.jpg?1562629522", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3e644ab8-3cc3-413d-a918-44fc636087ae.jpg?1562629522"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flowstone Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6f2b70a5-db13-4c3f-829d-d4b9e0a16245.jpg?1562596859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6f2b70a5-db13-4c3f-829d-d4b9e0a16245.jpg?1562596859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frenetic Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f6bc3c0-2d6e-4a09-84c4-b26a352186bb.jpg?1562923949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f6bc3c0-2d6e-4a09-84c4-b26a352186bb.jpg?1562923949"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frenzied Arynx", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bce2eef7-03a4-415f-8bb7-a29d50ce1b0f.jpg?1584831519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bce2eef7-03a4-415f-8bb7-a29d50ce1b0f.jpg?1584831519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Frondland Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/ab220695-e1a9-45ec-a1b1-5a82c9c90a03.jpg?1591605277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/ab220695-e1a9-45ec-a1b1-5a82c9c90a03.jpg?1591605277"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fungal Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b65f96b-019b-40a9-9b4d-acd4abf4a0f9.jpg?1562901457", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b65f96b-019b-40a9-9b4d-acd4abf4a0f9.jpg?1562901457"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Furnace Scamp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97538294-058c-47d4-b7a8-4db3753a6628.jpg?1562879991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97538294-058c-47d4-b7a8-4db3753a6628.jpg?1562879991"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fylamarid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8dd4f686-79e3-4067-81f9-7fae0c25dc8f.jpg?1562055416", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8dd4f686-79e3-4067-81f9-7fae0c25dc8f.jpg?1562055416"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Galvanoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc1a696b-642a-419f-bd43-09af39a9401b.jpg?1562616123", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc1a696b-642a-419f-bd43-09af39a9401b.jpg?1562616123"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gang of Elk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd0a61c9-8b14-4255-8453-4b74d90fe0a3.jpg?1562248146", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd0a61c9-8b14-4255-8453-4b74d90fe0a3.jpg?1562248146"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Gang of Elk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a84177f-43a3-4d14-9a4c-2ca931cfe092.jpg?1562863261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a84177f-43a3-4d14-9a4c-2ca931cfe092.jpg?1562863261"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b672c59-7376-455d-961e-ce94d47a5ca4.jpg?1626096673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b672c59-7376-455d-961e-ce94d47a5ca4.jpg?1626096673"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88167b74-c25f-4a9b-a4f5-33a51e01d498.jpg?1626101678", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88167b74-c25f-4a9b-a4f5-33a51e01d498.jpg?1626101678"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "draft_innovation"}, {"name": "Garruk's Companion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/863c9a10-d83f-415b-adf2-2d0f870410b2.jpg?1562466784", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/863c9a10-d83f-415b-adf2-2d0f870410b2.jpg?1562466784"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Gorehorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/3928bbce-87b7-4b28-9af4-20362935c909.jpg?1594736993", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/3928bbce-87b7-4b28-9af4-20362935c909.jpg?1594736993"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Harbinger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e0fa0b6-5f3f-4669-84e8-2c38c9593d88.jpg?1595022082", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e0fa0b6-5f3f-4669-84e8-2c38c9593d88.jpg?1595022082"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Horde", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/563c6959-9131-40a6-97ec-12baf6fb7ca0.jpg?1562643185", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/563c6959-9131-40a6-97ec-12baf6fb7ca0.jpg?1562643185"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Garruk's Horde", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/3313f4ea-1275-4835-b4ff-73d3601c04e1.jpg?1605361688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/3313f4ea-1275-4835-b4ff-73d3601c04e1.jpg?1605361688"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Garruk's Packleader", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfaef299-7879-4f52-8ee4-701ed150b930.jpg?1562478545", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfaef299-7879-4f52-8ee4-701ed150b930.jpg?1562478545"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Gemrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/0095245c-a30e-4e2a-88c9-632c678e9f03.jpg?1591227650", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/0095245c-a30e-4e2a-88c9-632c678e9f03.jpg?1591227650"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/beast2.json b/web/public/mtg/jsons/beast2.json deleted file mode 100644 index de0f2279..00000000 --- a/web/public/mtg/jsons/beast2.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": true, "data": [{"name": "Gemrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d75546a5-81fd-41c1-a081-d8980f6bd60a.jpg?1604781861", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d75546a5-81fd-41c1-a081-d8980f6bd60a.jpg?1604781861"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Gemrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c811c0d4-e2fc-45eb-8a76-b89c38a95536.jpg?1604783022", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c811c0d4-e2fc-45eb-8a76-b89c38a95536.jpg?1604783022"}, "flavor_name": "Anguirus, Armored Killer", "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Geyser Glider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b8aec169-4c62-4d53-a19c-68baa20c8e59.jpg?1562615855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b8aec169-4c62-4d53-a19c-68baa20c8e59.jpg?1562615855"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghor-Clan Rampager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/382048ec-0bf5-49a5-90d5-f80fbda08962.jpg?1561822913", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/382048ec-0bf5-49a5-90d5-f80fbda08962.jpg?1561822913"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghor-Clan Rampager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5dacb6f8-20f7-4ed4-aa9f-8c1d55f09357.jpg?1562497081", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5dacb6f8-20f7-4ed4-aa9f-8c1d55f09357.jpg?1562497081"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Giant Warthog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c402ef0e-51e7-4da6-a434-b99c5d435698.jpg?1562631879", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c402ef0e-51e7-4da6-a434-b99c5d435698.jpg?1562631879"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gilded Cerodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f68c8fbd-9223-447d-a85c-fa6222c75277.jpg?1562820187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f68c8fbd-9223-447d-a85c-fa6222c75277.jpg?1562820187"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glade Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee38eeae-918b-4d19-b37a-175ac5db37a4.jpg?1562951582", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee38eeae-918b-4d19-b37a-175ac5db37a4.jpg?1562951582"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glademuse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/89a40dc1-3bd8-4c7e-9446-5abc8c1f6995.jpg?1591319670", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/89a40dc1-3bd8-4c7e-9446-5abc8c1f6995.jpg?1591319670"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Gloomshrieker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2b50751-7f65-4321-86da-eef735bf8b67.jpg?1654568435", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2b50751-7f65-4321-86da-eef735bf8b67.jpg?1654568435"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glowering Rogon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/974b0881-bd26-4074-93dd-a1e3600347c4.jpg?1562925487", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/974b0881-bd26-4074-93dd-a1e3600347c4.jpg?1562925487"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Glowing Anemone", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/708593e6-787b-4f76-a86c-1d52857493ea.jpg?1562381361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/708593e6-787b-4f76-a86c-1d52857493ea.jpg?1562381361"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gluetius Maximus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aa7626ff-814f-4d9f-9595-ac7fa5334d4b.jpg?1562489356", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aa7626ff-814f-4d9f-9595-ac7fa5334d4b.jpg?1562489356"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Gnarlid Colony", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/7327289d-eed8-44b1-8495-7172e2b49d5f.jpg?1604198764", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/7327289d-eed8-44b1-8495-7172e2b49d5f.jpg?1604198764"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gnarlid Pack", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68716387-c5ec-4967-be5f-723783722c64.jpg?1562288938", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68716387-c5ec-4967-be5f-723783722c64.jpg?1562288938"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Godsire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2539ff7-2b7d-47e3-bd77-3138a6c42d2b.jpg?1562710016", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2539ff7-2b7d-47e3-bd77-3138a6c42d2b.jpg?1562710016"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Goretusk Firebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9919d2dd-d6a1-4d45-b6aa-227ed05d7051.jpg?1562631090", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9919d2dd-d6a1-4d45-b6aa-227ed05d7051.jpg?1562631090"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Graf Mole", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25a40334-65d8-46d2-9c56-389e9b32107c.jpg?1576385088", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25a40334-65d8-46d2-9c56-389e9b32107c.jpg?1576385088"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grave Sifter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/598fe7f1-bcc2-4909-9933-06bf02372adc.jpg?1561943333", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/598fe7f1-bcc2-4909-9933-06bf02372adc.jpg?1561943333"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Graxiplon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c16e565-0b7f-46b1-a091-64c47c923a9f.jpg?1562897735", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c16e565-0b7f-46b1-a091-64c47c923a9f.jpg?1562897735"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grazing Kelpie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68ccef2d-9a1f-4011-89e1-911bcc109b9d.jpg?1562916942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68ccef2d-9a1f-4011-89e1-911bcc109b9d.jpg?1562916942"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Greater Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/653ddfa0-2088-4503-a3ab-b0f1d55d8351.jpg?1562916161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/653ddfa0-2088-4503-a3ab-b0f1d55d8351.jpg?1562916161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Great-Horn Krushok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/122e08cb-407b-4b3d-8af0-077ff96bf160.jpg?1562822577", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/122e08cb-407b-4b3d-8af0-077ff96bf160.jpg?1562822577"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gristleback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b82f763a-c960-4b59-8c77-f3bea7bd8c8b.jpg?1593272456", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b82f763a-c960-4b59-8c77-f3bea7bd8c8b.jpg?1593272456"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Groffskithur", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75e84098-c15c-40f4-9d8a-3fa5da26a268.jpg?1562148057", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75e84098-c15c-40f4-9d8a-3fa5da26a268.jpg?1562148057"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grollub", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/47f6301a-d581-4aaf-9993-3013323074aa.jpg?1562087828", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/47f6301a-d581-4aaf-9993-3013323074aa.jpg?1562087828"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gruul Nodorog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/9855ce83-ae26-4b1d-ab7f-637cde09d679.jpg?1593272463", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/9855ce83-ae26-4b1d-ab7f-637cde09d679.jpg?1593272463"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gruul Ragebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/080ef367-7904-4e5c-a8b4-1fb62f951f3e.jpg?1561814762", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/080ef367-7904-4e5c-a8b4-1fb62f951f3e.jpg?1561814762"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guardian Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9941f83b-2903-4eab-ac6d-5313e3978fa3.jpg?1562923479", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9941f83b-2903-4eab-ac6d-5313e3978fa3.jpg?1562923479"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gulf Squid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf424982-a0ab-4db9-8889-f3cef10966c6.jpg?1562930718", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf424982-a0ab-4db9-8889-f3cef10966c6.jpg?1562930718"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gurzigost", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f4e672c6-6ddc-4dd2-b4c7-5083d7566e87.jpg?1562632734", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f4e672c6-6ddc-4dd2-b4c7-5083d7566e87.jpg?1562632734"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Helium Squirter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/764e3d28-1876-46da-b927-b98089d62776.jpg?1593272686", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/764e3d28-1876-46da-b927-b98089d62776.jpg?1593272686"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Herald of the Forgotten", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c3dba1c4-ee9a-4ea6-bf66-f639d38711cd.jpg?1591319371", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c3dba1c4-ee9a-4ea6-bf66-f639d38711cd.jpg?1591319371"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Herd Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1e9cef5-c55f-47d9-9d2f-300dab8fcb0b.jpg?1626097560", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1e9cef5-c55f-47d9-9d2f-300dab8fcb0b.jpg?1626097560"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Herd Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9cf4fd75-34b1-4afa-b8cd-777dfc9e6376.jpg?1562928115", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9cf4fd75-34b1-4afa-b8cd-777dfc9e6376.jpg?1562928115"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Highcliff Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ecbeac44-9392-4522-8ff5-87079386bd0a.jpg?1576267130", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ecbeac44-9392-4522-8ff5-87079386bd0a.jpg?1576267130"}, "reprint": false, "digital": false, "set_type": "box"}, {"name": "Hollowhenge Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/052ab91f-ac01-43f4-9276-9af35dbfbf71.jpg?1562896231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/052ab91f-ac01-43f4-9276-9af35dbfbf71.jpg?1562896231"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hundroog", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f525c356-88ca-4e2e-8f06-663be101e34f.jpg?1562944359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f525c356-88ca-4e2e-8f06-663be101e34f.jpg?1562944359"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hunted Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/edda2de4-22f6-4d33-b182-3ae5d105f1f6.jpg?1562942777", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/edda2de4-22f6-4d33-b182-3ae5d105f1f6.jpg?1562942777"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Hunted Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b21c8b2d-ef0f-4839-acfc-20fd248c62cf.jpg?1562382549", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b21c8b2d-ef0f-4839-acfc-20fd248c62cf.jpg?1562382549"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hunting Moa", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/926cefa1-3c5c-4bd6-859b-de620a3ee777.jpg?1555789722", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/926cefa1-3c5c-4bd6-859b-de620a3ee777.jpg?1555789722"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hydroid Krasis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/801dd9c6-b159-4e1c-af2c-214c1f573633.jpg?1584833616", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/801dd9c6-b159-4e1c-af2c-214c1f573633.jpg?1584833616"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hystrodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c964473-7c54-4c2d-a3eb-dba01c842103.jpg?1562901719", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c964473-7c54-4c2d-a3eb-dba01c842103.jpg?1562901719"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Indrik Stomphowler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fe57b3a2-0fd9-4f99-bb2b-828979dbcfc3.jpg?1593273398", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fe57b3a2-0fd9-4f99-bb2b-828979dbcfc3.jpg?1593273398"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Infernal Spawn of Evil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99711b5b-3cb2-4d57-ac9a-f43cc86a7ca9.jpg?1562799128", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99711b5b-3cb2-4d57-ac9a-f43cc86a7ca9.jpg?1562799128"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Infernius Spawnington III, Esq.", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5e3b1317-f024-4e34-89ad-538fc148cd5c.jpg?1584348881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5e3b1317-f024-4e34-89ad-538fc148cd5c.jpg?1584348881"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Insatiable Souleater", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/171d5213-5bb4-4f5b-9ddd-e2a7ac092ec6.jpg?1562875704", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/171d5213-5bb4-4f5b-9ddd-e2a7ac092ec6.jpg?1562875704"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Intrusive Packbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49266f3c-4b43-4175-8bac-16789ba6f4b9.jpg?1572892585", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49266f3c-4b43-4175-8bac-16789ba6f4b9.jpg?1572892585"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Iron-Barb Hellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0cb36352-2f16-4572-b1aa-dc28b11f4229.jpg?1562875415", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0cb36352-2f16-4572-b1aa-dc28b11f4229.jpg?1562875415"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ironclad Krovod", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/afb16895-6542-405e-9793-154ffc439f23.jpg?1569418805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/afb16895-6542-405e-9793-154ffc439f23.jpg?1569418805"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jackalope Herd", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb80105c-d2c0-4f8c-9302-5e6152a60f54.jpg?1562088801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb80105c-d2c0-4f8c-9302-5e6152a60f54.jpg?1562088801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kalonian Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77064471-d0c1-4988-8c47-f767bf9635f3.jpg?1561984952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77064471-d0c1-4988-8c47-f767bf9635f3.jpg?1561984952"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Kalonian Tusker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/135946fc-fe67-401f-821d-d7145c63f030.jpg?1562826250", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/135946fc-fe67-401f-821d-d7145c63f030.jpg?1562826250"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Karplusan Wolverine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/602610ce-8f42-4a1d-8f6e-92424d9d637c.jpg?1593275267", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/602610ce-8f42-4a1d-8f6e-92424d9d637c.jpg?1593275267"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Karstoderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/028c52f2-c45b-42da-89bd-cdd5cd7850f3.jpg?1562635162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/028c52f2-c45b-42da-89bd-cdd5cd7850f3.jpg?1562635162"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kazandu Stomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/afdfe5aa-8b15-4a89-a22a-03baf6afa4e7.jpg?1604199049", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/afdfe5aa-8b15-4a89-a22a-03baf6afa4e7.jpg?1604199049"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kelpie Guide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0112ebfb-55ad-401c-9dc5-ffd829f5b5bf.jpg?1624590206", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0112ebfb-55ad-401c-9dc5-ffd829f5b5bf.jpg?1624590206"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kezzerdrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/23b95d3a-bb19-474d-9939-8817038fe9fc.jpg?1562052813", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/23b95d3a-bb19-474d-9939-8817038fe9fc.jpg?1562052813"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kiln Fiend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c584268-67c3-411b-a26c-aee3adf23872.jpg?1562701033", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c584268-67c3-411b-a26c-aee3adf23872.jpg?1562701033"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kjeldoran Frostbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2fccb1d0-b324-4780-bb9e-4533240da06d.jpg?1562903801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2fccb1d0-b324-4780-bb9e-4533240da06d.jpg?1562903801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krakilin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a90442e8-9d22-4767-9e08-bd314169ea70.jpg?1562055913", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a90442e8-9d22-4767-9e08-bd314169ea70.jpg?1562055913"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kranioceros", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52aece74-cc1f-4f32-ad1f-00733eb79007.jpg?1562801006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52aece74-cc1f-4f32-ad1f-00733eb79007.jpg?1562801006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af822507-fd4c-454b-ab07-106c81c535bf.jpg?1562927648", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af822507-fd4c-454b-ab07-106c81c535bf.jpg?1562927648"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/47ea2f2d-14ca-4b57-b973-5ce7db35bebf.jpg?1615254642", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/47ea2f2d-14ca-4b57-b973-5ce7db35bebf.jpg?1615254642"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Krosan Cloudscraper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/51ef4cda-e55b-45a8-9c02-4e77e5b15a9e.jpg?1562911611", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/51ef4cda-e55b-45a8-9c02-4e77e5b15a9e.jpg?1562911611"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Colossus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a804f3c0-5ebf-43ca-b200-09f7c1bbe902.jpg?1562934820", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a804f3c0-5ebf-43ca-b200-09f7c1bbe902.jpg?1562934820"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Groundshaker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/82105090-5f71-4690-9ade-187354311ae3.jpg?1562925715", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/82105090-5f71-4690-9ade-187354311ae3.jpg?1562925715"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Tusker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b872f85-60c5-44c4-956d-a8aa8132908b.jpg?1562897602", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b872f85-60c5-44c4-956d-a8aa8132908b.jpg?1562897602"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Vorine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7d1c6c6-16b3-4a52-aeda-683b1aeb0e7f.jpg?1562931992", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7d1c6c6-16b3-4a52-aeda-683b1aeb0e7f.jpg?1562931992"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Krosan Warchief", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/435b700b-2072-47c0-9725-ad04414d2474.jpg?1562528085", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/435b700b-2072-47c0-9725-ad04414d2474.jpg?1562528085"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kurgadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52a1758c-849a-4de3-b674-857c3c9bf399.jpg?1562529070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52a1758c-849a-4de3-b674-857c3c9bf399.jpg?1562529070"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Grunt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f27fd65a-5631-491f-b158-45012832ccf1.jpg?1562632792", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f27fd65a-5631-491f-b158-45012832ccf1.jpg?1562632792"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Titan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e36bc466-0f74-46fd-add2-c1cf3b3fe46b.jpg?1562632509", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e36bc466-0f74-46fd-add2-c1cf3b3fe46b.jpg?1562632509"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Warrior", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a13b103f-482b-47d5-84a2-3621ba23bd20.jpg?1562631306", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a13b103f-482b-47d5-84a2-3621ba23bd20.jpg?1562631306"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Laccolith Whelp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86eb5b9e-320f-40de-8668-ee0c08f63ec1.jpg?1562630877", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86eb5b9e-320f-40de-8668-ee0c08f63ec1.jpg?1562630877"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Landscaper Colos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f45a9e86-133e-4626-a239-73ef88d9ae12.jpg?1626093695", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f45a9e86-133e-4626-a239-73ef88d9ae12.jpg?1626093695"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Lazotep Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/594bbe43-a8aa-42aa-bc49-cb4f3bc05cad.jpg?1557576504", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/594bbe43-a8aa-42aa-bc49-cb4f3bc05cad.jpg?1557576504"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Leatherback Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55f97b4c-42c7-4986-a150-0b8de11f0537.jpg?1562287740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55f97b4c-42c7-4986-a150-0b8de11f0537.jpg?1562287740"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Leatherback Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2c621ad-7109-4e07-b0cf-49fc243bc175.jpg?1562448787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2c621ad-7109-4e07-b0cf-49fc243bc175.jpg?1562448787"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Leery Fogbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56125660-2307-4270-a947-f1f4ad63841c.jpg?1562915161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56125660-2307-4270-a947-f1f4ad63841c.jpg?1562915161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Leopard-Spotted Jiao", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/91df110f-85d2-41cb-96b6-6c79cebfada7.jpg?1562131600", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/91df110f-85d2-41cb-96b6-6c79cebfada7.jpg?1562131600"}, "reprint": false, "digital": false, "set_type": "duel_deck"}, {"name": "Lesser Gargadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63ed7aec-a513-418e-9cef-e0c51203055b.jpg?1562913496", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63ed7aec-a513-418e-9cef-e0c51203055b.jpg?1562913496"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lexivore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b39db7a3-028e-4c01-8ff9-64d2a1397379.jpg?1562799143", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b39db7a3-028e-4c01-8ff9-64d2a1397379.jpg?1562799143"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Leyline Prowler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c56b4e8f-d48e-4bb0-883d-29f978033f65.jpg?1557577175", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c56b4e8f-d48e-4bb0-883d-29f978033f65.jpg?1557577175"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lightning Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/24a0860d-d3b9-4a00-a8cb-617bc317b93d.jpg?1562640145", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/24a0860d-d3b9-4a00-a8cb-617bc317b93d.jpg?1562640145"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Loathsome Catoblepas", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a8cff2f-ba52-4d22-83e8-13c56368f1df.jpg?1562817730", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a8cff2f-ba52-4d22-83e8-13c56368f1df.jpg?1562817730"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Longhorn Firebeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf0dcf33-8d3f-429c-8ad8-a65d07d7c790.jpg?1562631821", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf0dcf33-8d3f-429c-8ad8-a65d07d7c790.jpg?1562631821"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lore Drakkis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83e035ca-eccd-4b63-817c-f2c676b9c98d.jpg?1591228108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83e035ca-eccd-4b63-817c-f2c676b9c98d.jpg?1591228108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lore Drakkis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e938fac3-544a-4f27-9726-a67153392031.jpg?1604781920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e938fac3-544a-4f27-9726-a67153392031.jpg?1604781920"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Lovestruck Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4ccdef9c-1e85-4358-8059-8972479f7556.jpg?1572490606", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4ccdef9c-1e85-4358-8059-8972479f7556.jpg?1572490606"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lovestruck Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/341110e5-577d-45ee-bf62-53373a331c87.jpg?1571399806", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/341110e5-577d-45ee-bf62-53373a331c87.jpg?1571399806"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Lullmage's Familiar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b31a81e8-df0e-4540-93c1-c30c31ea9be9.jpg?1604200204", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b31a81e8-df0e-4540-93c1-c30c31ea9be9.jpg?1604200204"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lumbering Battlement", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/2469bc93-57ca-4077-bda2-160b4160adad.jpg?1584829942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/2469bc93-57ca-4077-bda2-160b4160adad.jpg?1584829942"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lumbering Satyr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d897088-0667-4864-91c3-5f0ac7f9b220.jpg?1562380887", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d897088-0667-4864-91c3-5f0ac7f9b220.jpg?1562380887"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurching Rotbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f06be97-71c8-46c8-a1c2-5da3af25e6de.jpg?1562808809", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f06be97-71c8-46c8-a1c2-5da3af25e6de.jpg?1562808809"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b39eb671-e17e-4c5a-8913-1e3be7faedfb.jpg?1587910787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b39eb671-e17e-4c5a-8913-1e3be7faedfb.jpg?1587910787"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurking Arynx", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7f59bc0b-88de-4580-bfc8-5af911d9ee99.jpg?1562788949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7f59bc0b-88de-4580-bfc8-5af911d9ee99.jpg?1562788949"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lurking Chupacabra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/abdbaa34-1ee5-4a2a-bdb3-2f04809a5b42.jpg?1562561935", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/abdbaa34-1ee5-4a2a-bdb3-2f04809a5b42.jpg?1562561935"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Macetail Hystrodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/8451ab3f-5d61-4f35-ab70-5a5060caf53d.jpg?1562921768", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/8451ab3f-5d61-4f35-ab70-5a5060caf53d.jpg?1562921768"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Makindi Sliderunner", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e6da400-ee4e-44d1-887d-1e2fb59b9322.jpg?1562932470", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e6da400-ee4e-44d1-887d-1e2fb59b9322.jpg?1562932470"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Manglehorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0aa3a844-97e6-4f5d-a36f-56fea4e06932.jpg?1543675886", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0aa3a844-97e6-4f5d-a36f-56fea4e06932.jpg?1543675886"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Marauding Maulhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7d5e3dc-f307-4f91-a5ee-e7c5d03d8102.jpg?1562834221", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7d5e3dc-f307-4f91-a5ee-e7c5d03d8102.jpg?1562834221"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Marsh Lurker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90c4b759-f53d-4977-8d97-a93762622e75.jpg?1562055419", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90c4b759-f53d-4977-8d97-a93762622e75.jpg?1562055419"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mawcor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48494f33-34b5-4c76-bb24-23a78b856e3c.jpg?1562237337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48494f33-34b5-4c76-bb24-23a78b856e3c.jpg?1562237337"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Mawcor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f50971e-2a18-4db7-8b5b-83dd5e85766e.jpg?1562055468", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f50971e-2a18-4db7-8b5b-83dd5e85766e.jpg?1562055468"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Megatherium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c58a1e43-a173-45d6-ac55-363664bf6e1b.jpg?1562383029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c58a1e43-a173-45d6-ac55-363664bf6e1b.jpg?1562383029"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Meglonoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b69e32b7-87d6-44a8-a544-5dabcd64c9f3.jpg?1562803314", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b69e32b7-87d6-44a8-a544-5dabcd64c9f3.jpg?1562803314"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Migratory Greathorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a2a287b-b83f-444f-84f7-e388beb616c2.jpg?1591227787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a2a287b-b83f-444f-84f7-e388beb616c2.jpg?1591227787"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Migratory Greathorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e31f56d-bf75-4e14-94de-5c77193abf3a.jpg?1604781892", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e31f56d-bf75-4e14-94de-5c77193abf3a.jpg?1604781892"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Mischievous Quanar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dc48c2db-f5b4-4c24-a5fa-00750b7ff56f.jpg?1562535674", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dc48c2db-f5b4-4c24-a5fa-00750b7ff56f.jpg?1562535674"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mockery of Nature", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/3118737f-2fd9-4fe5-bd0f-43c9ef2166e2.jpg?1576383753", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/3118737f-2fd9-4fe5-bd0f-43c9ef2166e2.jpg?1576383753"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molder Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d1340a63-f549-440b-aad3-14247113896a.jpg?1562823428", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d1340a63-f549-440b-aad3-14247113896a.jpg?1562823428"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molder Slug", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee355d1b-5d64-4328-94d6-7a58889b99bc.jpg?1562162474", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee355d1b-5d64-4328-94d6-7a58889b99bc.jpg?1562162474"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mold Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/903cb570-d769-4d7f-afbe-90ebad96657c.jpg?1562614361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/903cb570-d769-4d7f-afbe-90ebad96657c.jpg?1562614361"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mosscoat Goriak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c23139d4-0db5-4683-8d49-f4600fbe29e2.jpg?1591227812", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c23139d4-0db5-4683-8d49-f4600fbe29e2.jpg?1591227812"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Muck Drubb", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e5bda3fc-89e8-44c2-bcfb-d17064bbc391.jpg?1562584674", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e5bda3fc-89e8-44c2-bcfb-d17064bbc391.jpg?1562584674"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Murasa Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/480ddde1-81d3-4939-b232-cb1ced6cfc4d.jpg?1562202132", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/480ddde1-81d3-4939-b232-cb1ced6cfc4d.jpg?1562202132"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Murasa Rootgrazer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e70b3b78-9bdc-449b-82a9-c2fc3dd7f120.jpg?1604200243", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e70b3b78-9bdc-449b-82a9-c2fc3dd7f120.jpg?1604200243"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nalfeshnee", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7717617-706a-4338-a207-dd8c08feb1c3.jpg?1654036022", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7717617-706a-4338-a207-dd8c08feb1c3.jpg?1654036022"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Naya Soulbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0e4b468-096b-4f80-9e78-022fe24a7e45.jpg?1562945827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0e4b468-096b-4f80-9e78-022fe24a7e45.jpg?1562945827"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Needleshot Gourna", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f9b1628d-aacd-4e19-9ebb-bcd9b2842c91.jpg?1562945371", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f9b1628d-aacd-4e19-9ebb-bcd9b2842c91.jpg?1562945371"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nessian Demolok", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee0683b2-8bc2-4c6a-964e-b909693b68c1.jpg?1593092523", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee0683b2-8bc2-4c6a-964e-b909693b68c1.jpg?1593092523"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nessian Game Warden", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/5099d18d-c8b5-4706-bc93-40d1bb12988d.jpg?1593096253", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/5099d18d-c8b5-4706-bc93-40d1bb12988d.jpg?1593096253"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Noxious Groodion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6cb3d78-1a60-4e9b-b387-afeb58677536.jpg?1584830637", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6cb3d78-1a60-4e9b-b387-afeb58677536.jpg?1584830637"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nucklavee", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/50f54b0a-b0e1-44f1-bb91-523cc9e1c298.jpg?1562911924", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/50f54b0a-b0e1-44f1-bb91-523cc9e1c298.jpg?1562911924"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nullhide Ferox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/24c30bb0-06ba-432b-a20c-6fa79b0dc68a.jpg?1572893406", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/24c30bb0-06ba-432b-a20c-6fa79b0dc68a.jpg?1572893406"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nulltread Gargantuan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a263f594-621e-46af-8561-f7eee565a19a.jpg?1562643297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a263f594-621e-46af-8561-f7eee565a19a.jpg?1562643297"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nylea's Forerunner", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2cf2b6be-80a8-4464-a909-8cc658196a14.jpg?1581480774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2cf2b6be-80a8-4464-a909-8cc658196a14.jpg?1581480774"}, "reprint": false, "frame_effects": ["nyxtouched"], "digital": false, "set_type": "expansion"}, {"name": "Obstinate Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/6694496c-45b9-4ddf-bfcd-b632441b8811.jpg?1562462698", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/6694496c-45b9-4ddf-bfcd-b632441b8811.jpg?1562462698"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Ondu Greathorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95d9668e-05dc-41c4-9326-ef4c0e15dd80.jpg?1562930312", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95d9668e-05dc-41c4-9326-ef4c0e15dd80.jpg?1562930312"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oraxid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c05609a-f32d-4454-af24-a24452997dcb.jpg?1562630387", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c05609a-f32d-4454-af24-a24452997dcb.jpg?1562630387"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oxidda Scrapmelter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c64fe85b-e471-489a-8c38-2357da1c7969.jpg?1562822847", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c64fe85b-e471-489a-8c38-2357da1c7969.jpg?1562822847"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Paleoloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b83ad801-44e7-48d0-9f34-0d10536bb4dc.jpg?1562803341", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b83ad801-44e7-48d0-9f34-0d10536bb4dc.jpg?1562803341"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pallimud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61adc314-cfb2-4fdd-925c-cc1dc4692992.jpg?1562054248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61adc314-cfb2-4fdd-925c-cc1dc4692992.jpg?1562054248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parcelbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/610bb98c-d66a-44cc-92e2-a80d700b59e4.jpg?1591228161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/610bb98c-d66a-44cc-92e2-a80d700b59e4.jpg?1591228161"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parcelbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f5ac98e5-a22c-41b5-94a9-b37b5aeb124f.jpg?1604781949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f5ac98e5-a22c-41b5-94a9-b37b5aeb124f.jpg?1604781949"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Petradon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75ac6311-8516-4db2-8c1f-626f0db0d36f.jpg?1562630404", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75ac6311-8516-4db2-8c1f-626f0db0d36f.jpg?1562630404"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Petravark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ffc98d09-439e-426b-8403-4a3e12167336.jpg?1562632920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ffc98d09-439e-426b-8403-4a3e12167336.jpg?1562632920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Phantom Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/572df99b-af44-4128-8b2c-e40b1cea816b.jpg?1562460582", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/572df99b-af44-4128-8b2c-e40b1cea816b.jpg?1562460582"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Phantom Nishoba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56ebc372-aabd-4174-a943-c7bf59e5028d.jpg?1562629953", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56ebc372-aabd-4174-a943-c7bf59e5028d.jpg?1562629953"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Phyrexian Ingester", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/376e9829-23eb-4b43-9ec7-246cb3156e95.jpg?1562876645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/376e9829-23eb-4b43-9ec7-246cb3156e95.jpg?1562876645"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Phyrexian War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c7576e2-1a95-453f-aab5-b08e21f28ba4.jpg?1559592288", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c7576e2-1a95-453f-aab5-b08e21f28ba4.jpg?1559592288"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Phyrexian War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e7d651f6-50be-4df9-80f8-4c62bb860e71.jpg?1562770649", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e7d651f6-50be-4df9-80f8-4c62bb860e71.jpg?1562770649"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Belcher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/280ae211-f025-4971-83e6-118ca08a1911.jpg?1543675375", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/280ae211-f025-4971-83e6-118ca08a1911.jpg?1543675375"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plaguemaw Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52341830-8cea-421f-b901-9229004f2d45.jpg?1562611301", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52341830-8cea-421f-b901-9229004f2d45.jpg?1562611301"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Reaver", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/230b9bc8-29c8-49cb-b4f5-1aceeda8bf45.jpg?1608909892", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/230b9bc8-29c8-49cb-b4f5-1aceeda8bf45.jpg?1608909892"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Plated Crusher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd68e01c-4a09-450b-bfa0-8fbac8721764.jpg?1562943464", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd68e01c-4a09-450b-bfa0-8fbac8721764.jpg?1562943464"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plated Seastrider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97171611-c677-48a6-b081-98a27ecef979.jpg?1562820641", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97171611-c677-48a6-b081-98a27ecef979.jpg?1562820641"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plaxmanta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8ae3598d-4d76-45ac-ab96-00d27a8de6c8.jpg?1593272724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8ae3598d-4d76-45ac-ab96-00d27a8de6c8.jpg?1593272724"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Porcuparrot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/856892c8-ba47-46d0-aec2-0416b55b9e88.jpg?1591227333", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/856892c8-ba47-46d0-aec2-0416b55b9e88.jpg?1591227333"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Porcuparrot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6373fe1-c834-419e-8a0b-590fb5dc555e.jpg?1604781828", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6373fe1-c834-419e-8a0b-590fb5dc555e.jpg?1604781828"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Pouncing Shoreshark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c859b339-b55b-41fe-948c-27502e3b3ea8.jpg?1591226459", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c859b339-b55b-41fe-948c-27502e3b3ea8.jpg?1591226459"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pouncing Shoreshark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54428228-83a0-440f-afe9-573c9d8640cc.jpg?1604781667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54428228-83a0-440f-afe9-573c9d8640cc.jpg?1604781667"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Primal Huntbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb77f6a8-a9d6-4fdd-996e-70877199ebab.jpg?1562561489", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb77f6a8-a9d6-4fdd-996e-70877199ebab.jpg?1562561489"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Primoc Escapee", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6cb3e72-bb64-4b1e-a54b-1fe4fb4ad4c9.jpg?1562941357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6cb3e72-bb64-4b1e-a54b-1fe4fb4ad4c9.jpg?1562941357"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Protean Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d978332-95bf-4f86-9e67-06f10983c267.jpg?1593273433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d978332-95bf-4f86-9e67-06f10983c267.jpg?1593273433"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Protean Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88269739-8a38-4f75-a53e-4b4ce70f2aef.jpg?1658282664", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88269739-8a38-4f75-a53e-4b4ce70f2aef.jpg?1658282664"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Prowling Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9d1c11a-a32c-449c-95c6-450dce6c26d2.jpg?1604193011", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9d1c11a-a32c-449c-95c6-450dce6c26d2.jpg?1604193011"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Prowling Felidar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e8df0aed-dd2b-4f1e-8dfe-aec07462b1e1.jpg?1604202426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e8df0aed-dd2b-4f1e-8dfe-aec07462b1e1.jpg?1604202426"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Prowling Pangolin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6bf8191-3154-48d7-a49b-4d07b5e35a15.jpg?1580014350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6bf8191-3154-48d7-a49b-4d07b5e35a15.jpg?1580014350"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Prowling Pangolin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f037e99-75fb-4a2a-b4c6-448ef21b16a3.jpg?1562898495", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f037e99-75fb-4a2a-b4c6-448ef21b16a3.jpg?1562898495"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Putrid Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/9127942b-d73d-42a9-9f97-6a39fa798a8b.jpg?1562532123", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/9127942b-d73d-42a9-9f97-6a39fa798a8b.jpg?1562532123"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quagnoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/335c3aa3-af89-44ce-955a-69e12d83175f.jpg?1562905350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/335c3aa3-af89-44ce-955a-69e12d83175f.jpg?1562905350"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quartzwood Crasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8e4c609-19c9-433b-a852-7999e375ee4f.jpg?1591605359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8e4c609-19c9-433b-a852-7999e375ee4f.jpg?1591605359"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quicksilver Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/645bfe2d-845b-4cf3-88b6-b2b62b8531e4.jpg?1562637248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/645bfe2d-845b-4cf3-88b6-b2b62b8531e4.jpg?1562637248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Quillspike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/14cb4054-d5d6-4015-ae86-6f99280afe0a.jpg?1562899380", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/14cb4054-d5d6-4015-ae86-6f99280afe0a.jpg?1562899380"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Qumulox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54102e68-dded-440c-b9b1-28771c8033d4.jpg?1562877043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54102e68-dded-440c-b9b1-28771c8033d4.jpg?1562877043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Raging Kronch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/ae38aa2d-6c0e-409a-bfc7-ed4281457670.jpg?1557576793", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/ae38aa2d-6c0e-409a-bfc7-ed4281457670.jpg?1557576793"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rakeclaw Gargantuan", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d1995ab8-7382-4c2a-b8c7-8b9272cab4fb.jpg?1562709274", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d1995ab8-7382-4c2a-b8c7-8b9272cab4fb.jpg?1562709274"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rampaging Baloths", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66ae703d-b133-4749-9d38-216abe6c6647.jpg?1562612913", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66ae703d-b133-4749-9d38-216abe6c6647.jpg?1562612913"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rampaging Baloths", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aac9448c-c802-476a-87ef-e1d745fd862a.jpg?1605370770", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aac9448c-c802-476a-87ef-e1d745fd862a.jpg?1605370770"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Rampaging Rendhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12c1b820-0f06-41f6-804f-5c98f60c1529.jpg?1584831217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12c1b820-0f06-41f6-804f-5c98f60c1529.jpg?1584831217"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ravenous Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c98182d6-5b25-4493-9286-f29633e1bec4.jpg?1592666556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c98182d6-5b25-4493-9286-f29633e1bec4.jpg?1592666556"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ravenous Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68c1142a-58c1-4a8e-808b-d47a45abb76b.jpg?1592666558", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68c1142a-58c1-4a8e-808b-d47a45abb76b.jpg?1592666558"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Ravenous Chupacabra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/02551196-ecea-472f-9547-3c9658d0489e.jpg?1555040291", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/02551196-ecea-472f-9547-3c9658d0489e.jpg?1555040291"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/beast3.json b/web/public/mtg/jsons/beast3.json deleted file mode 100644 index 3bf8f454..00000000 --- a/web/public/mtg/jsons/beast3.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": false, "data": [{"name": "Ravenous Chupacabra", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e2af348-e768-44ca-b847-d541a0b0e6e0.jpg?1645141508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e2af348-e768-44ca-b847-d541a0b0e6e0.jpg?1645141508"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Ravenous Gigantotherium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca260253-40b8-4846-9e41-4e9cfc56d691.jpg?1591319695", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca260253-40b8-4846-9e41-4e9cfc56d691.jpg?1591319695"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Ravenous Leucrocota", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e91524b-4885-45fc-b22d-f9e5ee55845d.jpg?1593096288", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e91524b-4885-45fc-b22d-f9e5ee55845d.jpg?1593096288"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Razing Snidd", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2090b80-2ce2-4c9a-87fe-d221f3c677b4.jpg?1562939456", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2090b80-2ce2-4c9a-87fe-d221f3c677b4.jpg?1562939456"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Realm Razer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/da3ecfc6-1f9e-443e-a445-51df518025a5.jpg?1562709702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/da3ecfc6-1f9e-443e-a445-51df518025a5.jpg?1562709702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Relic Sloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1cb483f-c567-4cfd-9fe8-1503e7b40542.jpg?1624739702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1cb483f-c567-4cfd-9fe8-1503e7b40542.jpg?1624739702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Renegade Krasis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/23b68921-0c34-4d92-83c3-21542f62c7f6.jpg?1562901608", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/23b68921-0c34-4d92-83c3-21542f62c7f6.jpg?1562901608"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rhox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58388a29-b2a6-4d16-b872-f198563721d9.jpg?1562630034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58388a29-b2a6-4d16-b872-f198563721d9.jpg?1562630034"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rhox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d5f3f57-410f-4ee2-b93c-f5051a068828.jpg?1655270060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d5f3f57-410f-4ee2-b93c-f5051a068828.jpg?1655270060"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Ridgeline Rager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f663a4a-592a-4a3b-bbaf-e9c5c3049021.jpg?1562912585", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f663a4a-592a-4a3b-bbaf-e9c5c3049021.jpg?1562912585"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ridge Rannet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/4275a8dd-f777-4160-b773-9a868e743218.jpg?1562703177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/4275a8dd-f777-4160-b773-9a868e743218.jpg?1562703177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ridgescale Tusker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/84b689cc-35ef-4a23-bb1e-4d81b9fb8455.jpg?1579814138", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/84b689cc-35ef-4a23-bb1e-4d81b9fb8455.jpg?1579814138"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ridgetop Raptor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/1013cbc4-09f4-484f-b328-9f7403225149.jpg?1562898258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/1013cbc4-09f4-484f-b328-9f7403225149.jpg?1562898258"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Riptide Mangler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/5314a802-85d6-4d7b-ae9a-ca64eec652cf.jpg?1562911887", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/5314a802-85d6-4d7b-ae9a-ca64eec652cf.jpg?1562911887"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "River Kelpie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/970adaaf-1534-4529-8da4-c4dcf7c08b7b.jpg?1562833446", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/970adaaf-1534-4529-8da4-c4dcf7c08b7b.jpg?1562833446"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Roaring Primadox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19529b2f-03f0-469d-92d4-e2a2a933d5dc.jpg?1562550917", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19529b2f-03f0-469d-92d4-e2a2a933d5dc.jpg?1562550917"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Rock Badger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dff05df8-76f5-48c6-ac96-7b4e6a7050f6.jpg?1562383505", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dff05df8-76f5-48c6-ac96-7b4e6a7050f6.jpg?1562383505"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ronom Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e5b4b14c-e6fa-4cd2-9be7-fa2a2df05de1.jpg?1593275458", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e5b4b14c-e6fa-4cd2-9be7-fa2a2df05de1.jpg?1593275458"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Root Greevil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/306e3429-b3b4-4186-935b-18cfc308d22c.jpg?1562905210", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/306e3429-b3b4-4186-935b-18cfc308d22c.jpg?1562905210"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rotted Hystrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7bcae97d-468a-4e16-bfed-d2946f64784c.jpg?1562879013", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7bcae97d-468a-4e16-bfed-d2946f64784c.jpg?1562879013"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rumbling Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d8610ff1-064b-4c75-a8df-d3b076370d1e.jpg?1562835728", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d8610ff1-064b-4c75-a8df-d3b076370d1e.jpg?1562835728"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Rust Monster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6a7c6b2c-9ba0-4fc1-9922-0988acf2dfde.jpg?1627706779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6a7c6b2c-9ba0-4fc1-9922-0988acf2dfde.jpg?1627706779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rust Monster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf004dae-c411-4b0e-b695-fd727f475948.jpg?1627711737", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf004dae-c411-4b0e-b695-fd727f475948.jpg?1627711737"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Sabertooth Nishoba", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/8338c296-cf3f-41d7-b380-3fb4237cb41c.jpg?1562921586", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/8338c296-cf3f-41d7-b380-3fb4237cb41c.jpg?1562921586"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sagu Mauler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c64af58-963d-497b-ab95-104839d96b94.jpg?1562786271", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c64af58-963d-497b-ab95-104839d96b94.jpg?1562786271"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sanctuary Smasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cc634c10-42c5-4bdc-bc22-f862ae285492.jpg?1591227414", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cc634c10-42c5-4bdc-bc22-f862ae285492.jpg?1591227414"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sanctum Plowbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73887514-7644-4b2b-8c67-4b7e64150478.jpg?1562642111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73887514-7644-4b2b-8c67-4b7e64150478.jpg?1562642111"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sand Squid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4efd7ce9-b920-409d-a4d2-a07fff280712.jpg?1562380860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4efd7ce9-b920-409d-a4d2-a07fff280712.jpg?1562380860"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sandstorm Charger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/9757be26-4480-43b7-a38a-8e4bde4e2d50.jpg?1562790274", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/9757be26-4480-43b7-a38a-8e4bde4e2d50.jpg?1562790274"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sand Strangler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/dd7153be-ad6c-47ff-8f45-bc8df17973cb.jpg?1562817478", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/dd7153be-ad6c-47ff-8f45-bc8df17973cb.jpg?1562817478"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saprazzan Breaker", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2de7bf0f-5ad5-467b-ad80-28517951bbe1.jpg?1562379910", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2de7bf0f-5ad5-467b-ad80-28517951bbe1.jpg?1562379910"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sawtusk Demolisher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/574d1a02-a403-4b6e-8ce0-a472325c9c2c.jpg?1591319710", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/574d1a02-a403-4b6e-8ce0-a472325c9c2c.jpg?1591319710"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Scalpelexis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29c3b7fa-78e7-4a0c-bcdc-4b829638e3f6.jpg?1562629108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29c3b7fa-78e7-4a0c-bcdc-4b829638e3f6.jpg?1562629108"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scragnoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d80f7fa7-e7c4-4fc4-99bf-8a8502965fc8.jpg?1562056876", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d80f7fa7-e7c4-4fc4-99bf-8a8502965fc8.jpg?1562056876"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Screeching Harpy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10c02902-4e3a-445e-9dd9-116806ddc966.jpg?1562052779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10c02902-4e3a-445e-9dd9-116806ddc966.jpg?1562052779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sea Snidd", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca11015e-200b-488c-8bf5-662dcc03cd2d.jpg?1562937660", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca11015e-200b-488c-8bf5-662dcc03cd2d.jpg?1562937660"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shaleskin Bruiser", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc2de8a4-0d84-4f7c-bbe4-3a31172186ab.jpg?1562954767", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc2de8a4-0d84-4f7c-bbe4-3a31172186ab.jpg?1562954767"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shaleskin Plower", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42658b33-9a12-403b-bc7d-807fbe1f1a36.jpg?1562908348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42658b33-9a12-403b-bc7d-807fbe1f1a36.jpg?1562908348"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shivan Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/7958a1e5-b671-4ecb-95de-240ffaf5021e.jpg?1562574880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/7958a1e5-b671-4ecb-95de-240ffaf5021e.jpg?1562574880"}, "reprint": false, "frame_effects": ["colorshifted"], "digital": false, "set_type": "expansion"}, {"name": "Shore Snapper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/157e5763-4892-47e4-8fd5-f576844c0a0d.jpg?1562701373", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/157e5763-4892-47e4-8fd5-f576844c0a0d.jpg?1562701373"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Siege Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/918fb717-8ad3-4804-a62e-902baea58cfb.jpg?1561950184", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/918fb717-8ad3-4804-a62e-902baea58cfb.jpg?1561950184"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Sigiled Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0195ee6-c5d9-402e-8339-2caa50c4e46b.jpg?1562644651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0195ee6-c5d9-402e-8339-2caa50c4e46b.jpg?1562644651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Silt Crawler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f334e864-4e62-4bc3-9470-661be3d879e2.jpg?1562940692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f334e864-4e62-4bc3-9470-661be3d879e2.jpg?1562940692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Six-y Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/0379c99c-94b1-4c48-b62d-7accb594ef1a.jpg?1562487439", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/0379c99c-94b1-4c48-b62d-7accb594ef1a.jpg?1562487439"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Skarrg Goliath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b2dcafd-eb72-4f3a-9c1c-ba17fe30bf0f.jpg?1561820572", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b2dcafd-eb72-4f3a-9c1c-ba17fe30bf0f.jpg?1561820572"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skarrg Goliath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/0357e2ce-da68-46ff-a7e6-86df8a8ce91c.jpg?1605371304", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/0357e2ce-da68-46ff-a7e6-86df8a8ce91c.jpg?1605371304"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Skittish Valesk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4cc8a6e6-ed62-4784-ba9a-b1f703fc6119.jpg?1562912967", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4cc8a6e6-ed62-4784-ba9a-b1f703fc6119.jpg?1562912967"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c01d17e-45a2-4b6f-aaa5-2af9c8f26181.jpg?1562628866", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c01d17e-45a2-4b6f-aaa5-2af9c8f26181.jpg?1562628866"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud Cutter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a558c4f5-a716-4e46-9234-5f84f1bd57aa.jpg?1562631366", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a558c4f5-a716-4e46-9234-5f84f1bd57aa.jpg?1562631366"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud Ridgeback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/410896ab-d3dc-478c-bfd1-c0cad5b1180a.jpg?1562629551", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/410896ab-d3dc-478c-bfd1-c0cad5b1180a.jpg?1562629551"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyshroud War Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19d809c1-e674-40b8-816d-c45d77c66722.jpg?1562087347", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19d809c1-e674-40b8-816d-c45d77c66722.jpg?1562087347"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughterhorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb3fcc7a-ff5b-4695-aa86-9166f6cba565.jpg?1561853432", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb3fcc7a-ff5b-4695-aa86-9166f6cba565.jpg?1561853432"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slippery Bogle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c4e4bbea-7e3f-4de0-bb01-dfd67f21c254.jpg?1547518325", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c4e4bbea-7e3f-4de0-bb01-dfd67f21c254.jpg?1547518325"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Slippery Bogle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19714d6c-2bfa-4ee0-aa2f-5ccc196bc5d8.jpg?1562900327", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19714d6c-2bfa-4ee0-aa2f-5ccc196bc5d8.jpg?1562900327"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slipstream Eel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9d06a1f-00b7-440d-849d-efc466d73f29.jpg?1562950698", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9d06a1f-00b7-440d-849d-efc466d73f29.jpg?1562950698"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snapping Gnarlid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/834409e3-134e-4a34-89cb-53e2a039e980.jpg?1562925959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/834409e3-134e-4a34-89cb-53e2a039e980.jpg?1562925959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snapping Thragg", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8a47d41-b893-46b9-90c9-ccd8f9f78855.jpg?1562942401", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8a47d41-b893-46b9-90c9-ccd8f9f78855.jpg?1562942401"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snarling Undorak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05788d63-6210-44f2-9ae4-e55e9507a3a9.jpg?1562896264", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05788d63-6210-44f2-9ae4-e55e9507a3a9.jpg?1562896264"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snorting Gahr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e568503e-a886-4c8b-9d46-8520c2cdda48.jpg?1562383519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e568503e-a886-4c8b-9d46-8520c2cdda48.jpg?1562383519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soldevi Steam Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ead79d2c-170e-4106-962d-d69c4b5fead0.jpg?1562770654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ead79d2c-170e-4106-962d-d69c4b5fead0.jpg?1562770654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soldevi Steam Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9de5e730-1d5c-4326-b3fc-2f0f97edc07e.jpg?1575874846", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9de5e730-1d5c-4326-b3fc-2f0f97edc07e.jpg?1575874846"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spark Fiend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/ea73a7ef-e9da-4d5b-aa4d-a953cbacd6c2.jpg?1562799182", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/ea73a7ef-e9da-4d5b-aa4d-a953cbacd6c2.jpg?1562799182"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Spearbreaker Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/132367ee-22e9-48e2-82e0-62ad9aaa62f3.jpg?1562701266", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/132367ee-22e9-48e2-82e0-62ad9aaa62f3.jpg?1562701266"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Species Gorger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0087a98-55cf-4c8b-a180-fb0d9c336eb2.jpg?1562936816", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0087a98-55cf-4c8b-a180-fb0d9c336eb2.jpg?1562936816"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spellbreaker Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a197e3f2-e69f-4716-9979-a304a87506c3.jpg?1562643286", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a197e3f2-e69f-4716-9979-a304a87506c3.jpg?1562643286"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spiked Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/522777b1-a89f-4969-a962-0137018ec86c.jpg?1562553788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/522777b1-a89f-4969-a962-0137018ec86c.jpg?1562553788"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Spinal Villain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d6d5e36f-0049-4be8-bf85-8dc0186339a4.jpg?1562861348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d6d5e36f-0049-4be8-bf85-8dc0186339a4.jpg?1562861348"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spinebiter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/f/cfc79ac6-ffc6-4506-9dea-e20176f960ea.jpg?1562881679", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/f/cfc79ac6-ffc6-4506-9dea-e20176f960ea.jpg?1562881679"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spined Basher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d0d666a-8e31-466c-937f-54df910f664e.jpg?1562913024", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d0d666a-8e31-466c-937f-54df910f664e.jpg?1562913024"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spirespine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac71491f-3027-4257-a18f-ba4de6041feb.jpg?1593096345", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac71491f-3027-4257-a18f-ba4de6041feb.jpg?1593096345"}, "reprint": false, "frame_effects": ["nyxtouched"], "digital": false, "set_type": "expansion"}, {"name": "Spiritmonger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b96d6e67-f690-4f19-bb25-a7c2d2aaf42f.jpg?1562938690", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b96d6e67-f690-4f19-bb25-a7c2d2aaf42f.jpg?1562938690"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spiritmonger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce20919e-cdc7-465d-8653-4b912ff08997.jpg?1561929929", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce20919e-cdc7-465d-8653-4b912ff08997.jpg?1561929929"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Spitting Gourna", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/746b98bf-5398-4a00-b4fe-a990ea9cfd77.jpg?1562922510", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/746b98bf-5398-4a00-b4fe-a990ea9cfd77.jpg?1562922510"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sproutback Trudge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbf26e54-bdfe-4da8-acbb-4f1a98faba49.jpg?1625192442", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbf26e54-bdfe-4da8-acbb-4f1a98faba49.jpg?1625192442"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Spur Grappler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/50bf91a7-4d04-437c-a290-6adb52f25312.jpg?1562909787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/50bf91a7-4d04-437c-a290-6adb52f25312.jpg?1562909787"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spurred Wolverine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46d7aaea-226b-4820-8db2-89dcdcbcc557.jpg?1562911611", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46d7aaea-226b-4820-8db2-89dcdcbcc557.jpg?1562911611"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stampeding Serow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/7/47c63065-6051-4193-8457-713a8a800393.jpg?1562493496", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/7/47c63065-6051-4193-8457-713a8a800393.jpg?1562493496"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stampeding Wildebeests", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/ddb5f524-fad6-4a63-b20f-3348a844fefa.jpg?1562278656", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/ddb5f524-fad6-4a63-b20f-3348a844fefa.jpg?1562278656"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stomper Cub", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/89be64a8-dd78-48c3-bb47-4f2a5ad9ec10.jpg?1562706034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/89be64a8-dd78-48c3-bb47-4f2a5ad9ec10.jpg?1562706034"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stonework Packbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a29e17ba-d584-4296-9f43-17467edaa25f.jpg?1604201060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a29e17ba-d584-4296-9f43-17467edaa25f.jpg?1604201060"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stratadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/324bc757-9942-4862-b691-5af42e07f682.jpg?1562905516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/324bc757-9942-4862-b691-5af42e07f682.jpg?1562905516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stratozeppelid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7ccfc49d-2a07-4088-a288-ba7be4da7bc2.jpg?1593272091", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7ccfc49d-2a07-4088-a288-ba7be4da7bc2.jpg?1593272091"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swarm Shambler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a7e4f99-ece4-473e-b712-40e4c53558e8.jpg?1604199508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a7e4f99-ece4-473e-b712-40e4c53558e8.jpg?1604199508"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sylvan Brushstrider", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8bc288a3-ea56-450a-96fd-c2123121f663.jpg?1584831296", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8bc288a3-ea56-450a-96fd-c2123121f663.jpg?1584831296"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Symbiotic Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb61443d-e47a-4fe1-b777-67a3670a5a56.jpg?1562939214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb61443d-e47a-4fe1-b777-67a3670a5a56.jpg?1562939214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tangle Hulk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8ed3c301-8d8e-45fe-902a-af03a79525be.jpg?1562612950", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8ed3c301-8d8e-45fe-902a-af03a79525be.jpg?1562612950"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tenement Crasher", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44af9170-bd99-4fde-b673-62d988312b2d.jpg?1562785527", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44af9170-bd99-4fde-b673-62d988312b2d.jpg?1562785527"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tephraderm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/41b65eba-140b-4c1d-b796-8134b7c1ede8.jpg?1562910455", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/41b65eba-140b-4c1d-b796-8134b7c1ede8.jpg?1562910455"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terra Ravager", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/124dd668-ad84-45b9-9e04-1ea7cd2d7024.jpg?1562898786", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/124dd668-ad84-45b9-9e04-1ea7cd2d7024.jpg?1562898786"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Terra Stomper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4ab062f4-e4b1-4129-9027-d0ca1a723273.jpg?1562611988", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4ab062f4-e4b1-4129-9027-d0ca1a723273.jpg?1562611988"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Territorial Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c3d4afc-5bb7-4159-9a11-f9c989dd9043.jpg?1562897795", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c3d4afc-5bb7-4159-9a11-f9c989dd9043.jpg?1562897795"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Territorial Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45033b8a-f3a8-4a23-b6b0-e011e3e7a4c1.jpg?1562611772", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45033b8a-f3a8-4a23-b6b0-e011e3e7a4c1.jpg?1562611772"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thoughtbound Primoc", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/8/e89156b5-8bdb-41d1-a7aa-63f770a9b070.jpg?1562950377", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/8/e89156b5-8bdb-41d1-a7aa-63f770a9b070.jpg?1562950377"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Devourer", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba7a96ee-e2d1-4d76-a09e-d6868ddd9282.jpg?1562929803", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba7a96ee-e2d1-4d76-a09e-d6868ddd9282.jpg?1562929803"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Eater", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4e05f63c-f93d-44b9-98e9-c5e3e3aad6b9.jpg?1562909299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4e05f63c-f93d-44b9-98e9-c5e3e3aad6b9.jpg?1562909299"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thought Nibbler", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7284a7fd-cda8-43ac-b119-ad47b33c2ec4.jpg?1562916262", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7284a7fd-cda8-43ac-b119-ad47b33c2ec4.jpg?1562916262"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thragtusk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28667c8b-d02c-4e57-a050-1549207b65d1.jpg?1562551691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28667c8b-d02c-4e57-a050-1549207b65d1.jpg?1562551691"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Thragtusk", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43e1e3f3-a9b8-4185-9be9-798fe3cddd5c.jpg?1640744362", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43e1e3f3-a9b8-4185-9be9-798fe3cddd5c.jpg?1640744362"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Thrashing Mudspawn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/da84de0e-a4cd-4dff-8ee3-87c9debf0969.jpg?1562947056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/da84de0e-a4cd-4dff-8ee3-87c9debf0969.jpg?1562947056"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thrashing Wumpus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86bc07c6-2ba7-41f8-90ab-f9bbac86dd08.jpg?1562381841", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86bc07c6-2ba7-41f8-90ab-f9bbac86dd08.jpg?1562381841"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thresher Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/57996732-c9e4-4271-9d5f-2a8c77f8d177.jpg?1562911143", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/57996732-c9e4-4271-9d5f-2a8c77f8d177.jpg?1562911143"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderfoot Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e376a953-2075-4595-a3ef-85d0f68aa8b2.jpg?1650426042", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e376a953-2075-4595-a3ef-85d0f68aa8b2.jpg?1650426042"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Thunderfoot Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/9730de49-efa9-42ec-8531-43313fb58a44.jpg?1561951126", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/9730de49-efa9-42ec-8531-43313fb58a44.jpg?1561951126"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Thundering Tanadon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2fab443-0f4b-45ea-8a6d-435b93803409.jpg?1562882228", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2fab443-0f4b-45ea-8a6d-435b93803409.jpg?1562882228"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Timbermaw Larva", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d68fc3bc-eb3b-4504-93a3-8943d07b23f8.jpg?1562617126", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d68fc3bc-eb3b-4504-93a3-8943d07b23f8.jpg?1562617126"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Titanic Bulvox", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f42c4d7-b555-449c-a539-119c1ae62232.jpg?1562528017", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f42c4d7-b555-449c-a539-119c1ae62232.jpg?1562528017"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Titanoth Rex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d02e1e8-b85b-4e26-8ab8-ca2f49d05b88.jpg?1591227898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d02e1e8-b85b-4e26-8ab8-ca2f49d05b88.jpg?1591227898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Titanoth Rex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4817b86-d55a-4334-82ee-603f8c4b3e93.jpg?1590879818", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4817b86-d55a-4334-82ee-603f8c4b3e93.jpg?1590879818"}, "flavor_name": "Godzilla, Primeval Champion", "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Towering Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a8cc948-28ff-4bbe-b8c9-71de37478023.jpg?1562905065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a8cc948-28ff-4bbe-b8c9-71de37478023.jpg?1562905065"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Towering Indrik", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c6049e92-6c52-44be-a3c7-aa8e8bf9c10a.jpg?1562792972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c6049e92-6c52-44be-a3c7-aa8e8bf9c10a.jpg?1562792972"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trapjaw Kelpie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62615f86-0431-4709-b41c-af43f7793fdb.jpg?1562915541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62615f86-0431-4709-b41c-af43f7793fdb.jpg?1562915541"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Treespring Lorian", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f525d7ce-37d3-4989-beb4-173447cb5294.jpg?1562953129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f525d7ce-37d3-4989-beb4-173447cb5294.jpg?1562953129"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trove Warden", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/3336593c-c83c-48e7-9173-2c2b74b94d3b.jpg?1604195307", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/3336593c-c83c-48e7-9173-2c2b74b94d3b.jpg?1604195307"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Trumpeting Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/063a95ee-3fda-436f-9ff8-de80cc874dde.jpg?1591228292", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/063a95ee-3fda-436f-9ff8-de80cc874dde.jpg?1591228292"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trumpeting Gnarr", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2fe88a45-a420-4998-b242-b475c6b5b0bc.jpg?1604781989", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2fe88a45-a420-4998-b242-b475c6b5b0bc.jpg?1604781989"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Trusty Packbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/8320e35b-15b9-4f98-b9b8-9c951696408b.jpg?1562302921", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/8320e35b-15b9-4f98-b9b8-9c951696408b.jpg?1562302921"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Trygon Predator", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8b14a8b3-1a85-400b-b17c-a28ed145d720.jpg?1561967848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8b14a8b3-1a85-400b-b17c-a28ed145d720.jpg?1561967848"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Trygon Predator", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f31f54bf-7bf0-48f0-853d-1468713784eb.jpg?1593273791", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f31f54bf-7bf0-48f0-853d-1468713784eb.jpg?1593273791"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tusked Colossodon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d511407-0c1e-4342-a578-ca557c6886fd.jpg?1562784330", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d511407-0c1e-4342-a578-ca557c6886fd.jpg?1562784330"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tyrranax", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/c/5cb0cc0e-f71f-456f-a6ec-6a70cf838c35.jpg?1562877248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/c/5cb0cc0e-f71f-456f-a6ec-6a70cf838c35.jpg?1562877248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Undying Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c95c752-3add-4830-8159-036b8689f40a.jpg?1562447348", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c95c752-3add-4830-8159-036b8689f40a.jpg?1562447348"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Ursapine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba547810-c82a-498b-81eb-e81a8dcbbd42.jpg?1598916680", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba547810-c82a-498b-81eb-e81a8dcbbd42.jpg?1598916680"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vagrant Plowbeasts", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/546b0a74-ebef-4596-b730-2190e20b2e66.jpg?1562801037", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/546b0a74-ebef-4596-b730-2190e20b2e66.jpg?1562801037"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Valley Rannet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2027335a-224b-411d-a59f-f4ad39b38a69.jpg?1562640043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2027335a-224b-411d-a59f-f4ad39b38a69.jpg?1562640043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Venomspout Brackus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/0774771c-5373-4636-9174-d06e7d635183.jpg?1562896736", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/0774771c-5373-4636-9174-d06e7d635183.jpg?1562896736"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vigilant Baloth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34ad8e5d-0c26-4588-8161-b22197715d63.jpg?1562301653", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34ad8e5d-0c26-4588-8161-b22197715d63.jpg?1562301653"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Vizzerdrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c2c681e3-fc54-4da1-80ff-13507688dbc3.jpg?1562247258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c2c681e3-fc54-4da1-80ff-13507688dbc3.jpg?1562247258"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Vizzerdrix", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/25711022-7270-4335-a48b-9f2b8275ceeb.jpg?1562873595", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/25711022-7270-4335-a48b-9f2b8275ceeb.jpg?1562873595"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Voracious Typhon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efa2bccb-0e01-4629-b9a8-5c0ea26239b3.jpg?1581480923", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efa2bccb-0e01-4629-b9a8-5c0ea26239b3.jpg?1581480923"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vulshok War Boar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb6b232a-834c-4c9a-bf36-821d125dc318.jpg?1562639233", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb6b232a-834c-4c9a-bf36-821d125dc318.jpg?1562639233"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "War Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/652109b9-d607-42b6-945d-0c0dd5bba89c.jpg?1562787724", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/652109b9-d607-42b6-945d-0c0dd5bba89c.jpg?1562787724"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wayward Guide-Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/0/d00f8ab0-61cd-4721-b974-a2516da77d39.jpg?1604198443", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/0/d00f8ab0-61cd-4721-b974-a2516da77d39.jpg?1604198443"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Weaver of Lies", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/2/12172d0e-0c73-4482-9f83-2c23ace9b7a0.jpg?1562898647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/2/12172d0e-0c73-4482-9f83-2c23ace9b7a0.jpg?1562898647"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wild Colos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d39f746-7b82-476a-9774-3375debb47bd.jpg?1562443743", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d39f746-7b82-476a-9774-3375debb47bd.jpg?1562443743"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woodland Bellower", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a706d4bb-0b44-4e43-b340-7de799c086b8.jpg?1562034880", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a706d4bb-0b44-4e43-b340-7de799c086b8.jpg?1562034880"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Woodripper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/5126b782-d74c-40ca-a9b2-a6c78f94d138.jpg?1562629900", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/5126b782-d74c-40ca-a9b2-a6c78f94d138.jpg?1562629900"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woolly Razorback", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95ed6354-161e-496e-9ac7-74432f9b0818.jpg?1593274871", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95ed6354-161e-496e-9ac7-74432f9b0818.jpg?1593274871"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woolly Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d5907d5-ae5c-4c9d-a5df-61f1c94f979d.jpg?1562705775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d5907d5-ae5c-4c9d-a5df-61f1c94f979d.jpg?1562705775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Woolly Thoctar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb3a2bb2-3ba7-4486-84c9-3aab85c368e1.jpg?1561758467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb3a2bb2-3ba7-4486-84c9-3aab85c368e1.jpg?1561758467"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Wormfang Behemoth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c7f29aa-c069-4adb-b313-6a56849905d4.jpg?1562628869", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c7f29aa-c069-4adb-b313-6a56849905d4.jpg?1562628869"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wormfang Manta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc9bf91d-6f7c-4fb5-bbc6-c012212e62e9.jpg?1562631728", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc9bf91d-6f7c-4fb5-bbc6-c012212e62e9.jpg?1562631728"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wormfang Newt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df8012c1-76ec-4c36-8b38-5bc41ce5e156.jpg?1562632319", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df8012c1-76ec-4c36-8b38-5bc41ce5e156.jpg?1562632319"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wormfang Turtle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48404362-7579-4896-a71a-8eb40e5ac416.jpg?1562629707", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48404362-7579-4896-a71a-8eb40e5ac416.jpg?1562629707"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wrecking Beast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74e6f7be-4493-4081-ac67-d782ab2b3723.jpg?1584831344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74e6f7be-4493-4081-ac67-d782ab2b3723.jpg?1584831344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wretched Anurid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aab525ad-1f62-4d9c-9b74-c7b0048da452.jpg?1562935315", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aab525ad-1f62-4d9c-9b74-c7b0048da452.jpg?1562935315"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Yoked Plowbeast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/ddbbc7dc-efdf-46e8-bf19-0daa4034f6ec.jpg?1562709823", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/ddbbc7dc-efdf-46e8-bf19-0daa4034f6ec.jpg?1562709823"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zhur-Taa Ancient", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2076308f-0f4e-4b31-9e75-c2965942e7d1.jpg?1562900996", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2076308f-0f4e-4b31-9e75-c2965942e7d1.jpg?1562900996"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/terror1.json b/web/public/mtg/jsons/terror1.json deleted file mode 100644 index 4bbb9a03..00000000 --- a/web/public/mtg/jsons/terror1.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": true, "data": [{"name": "Abrupt Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3b1e92b4-6e53-4dba-a572-c67e01965ac5.jpg?1562785076", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3b1e92b4-6e53-4dba-a572-c67e01965ac5.jpg?1562785076"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Abrupt Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b10ef54-368c-4841-ab5d-f2e8e1265c83.jpg?1561756631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b10ef54-368c-4841-ab5d-f2e8e1265c83.jpg?1561756631"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Active Volcano", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/d/ad402e65-6fac-4005-a2d4-592983df0c30.jpg?1584237356", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/d/ad402e65-6fac-4005-a2d4-592983df0c30.jpg?1584237356"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aerial Assault", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64d9c182-cbb3-4791-90dd-0e533ddeebda.jpg?1592515927", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64d9c182-cbb3-4791-90dd-0e533ddeebda.jpg?1592515927"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Aerial Predation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec3c023c-037e-495a-b7df-32be42a75f36.jpg?1562795050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec3c023c-037e-495a-b7df-32be42a75f36.jpg?1562795050"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Afterlife", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fa2ecf9-b53c-4f1d-9028-ca3820d043cb.jpg?1562381856", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fa2ecf9-b53c-4f1d-9028-ca3820d043cb.jpg?1562381856"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Afterlife", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/4644694d-52e6-4d00-8cad-748899eeea84.jpg?1562718804", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/4644694d-52e6-4d00-8cad-748899eeea84.jpg?1562718804"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aftershock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91a26b2-03f8-43f0-a3a4-ff6c5a3690c4.jpg?1587857346", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91a26b2-03f8-43f0-a3a4-ff6c5a3690c4.jpg?1587857346"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Agonizing Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/539ac5e1-4bad-4f70-abac-e70c406bebec.jpg?1562912008", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/539ac5e1-4bad-4f70-abac-e70c406bebec.jpg?1562912008"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Angrath's Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/708006ba-d494-4093-b108-8249b110831e.jpg?1555041214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/708006ba-d494-4093-b108-8249b110831e.jpg?1555041214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Annihilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a3bf039-ecf6-477e-997c-e32c55323c01.jpg?1562909994", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a3bf039-ecf6-477e-997c-e32c55323c01.jpg?1562909994"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Asphyxiate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/894f3f5f-586d-45e4-9af7-4de80e44dfae.jpg?1593091866", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/894f3f5f-586d-45e4-9af7-4de80e44dfae.jpg?1593091866"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assassinate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/40b67839-622d-41c1-b9c7-1a26b021ec78.jpg?1562908402", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/40b67839-622d-41c1-b9c7-1a26b021ec78.jpg?1562908402"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assassin's Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/8/b80e8fe0-eccb-4268-a6ce-1365c68e6b13.jpg?1562447376", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/8/b80e8fe0-eccb-4268-a6ce-1365c68e6b13.jpg?1562447376"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Assassin's Ink", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a926c10-029d-4e24-8c3f-1808025e30aa.jpg?1654567050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a926c10-029d-4e24-8c3f-1808025e30aa.jpg?1654567050"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Assassin's Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f796e320-9898-45d4-9d7a-6d35de53c9ab.jpg?1562795619", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f796e320-9898-45d4-9d7a-6d35de53c9ab.jpg?1562795619"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Avenging Arrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/696678ff-44dc-4fe4-bf17-024e86cd0220.jpg?1562787572", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/696678ff-44dc-4fe4-bf17-024e86cd0220.jpg?1562787572"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bake into a Pie", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42a4d090-1bb7-4334-ab22-e2527391e79b.jpg?1572490064", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42a4d090-1bb7-4334-ab22-e2527391e79b.jpg?1572490064"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Beast Within", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/76f8a300-44a8-4a70-93d1-64333c13f6f2.jpg?1592752271", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/76f8a300-44a8-4a70-93d1-64333c13f6f2.jpg?1592752271"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Beast Within", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce5b6d19-22e3-4f57-8f4d-a17e982286c7.jpg?1562881648", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce5b6d19-22e3-4f57-8f4d-a17e982286c7.jpg?1562881648"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bedevil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/81e2b96b-ecf2-4dd9-bc9d-3c46ee8c59e6.jpg?1584831400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/81e2b96b-ecf2-4dd9-bc9d-3c46ee8c59e6.jpg?1584831400"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Befoul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2dfff5d3-1433-4a24-83e6-6361a446b974.jpg?1562758881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2dfff5d3-1433-4a24-83e6-6361a446b974.jpg?1562758881"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Befoul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c5db137-33b9-4cea-9193-4e637d2966f1.jpg?1562241441", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c5db137-33b9-4cea-9193-4e637d2966f1.jpg?1562241441"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Befoul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f92cb48d-315b-4877-b615-ffdf275c4d61.jpg?1562947702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f92cb48d-315b-4877-b615-ffdf275c4d61.jpg?1562947702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Betrayal of Flesh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9e2e107-0277-4e5c-81a7-258bb2998f3e.jpg?1562153677", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9e2e107-0277-4e5c-81a7-258bb2998f3e.jpg?1562153677"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bloodchief's Thirst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/059e8447-6b1c-4651-a734-a8fea2cbf7b2.jpg?1604195360", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/059e8447-6b1c-4651-a734-a8fea2cbf7b2.jpg?1604195360"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blood Curdle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/4184c851-1419-476c-ba9c-9f0cb1137114.jpg?1591226609", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/4184c851-1419-476c-ba9c-9f0cb1137114.jpg?1591226609"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bone Shards", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1ee98955-4c47-4d45-9377-608dfa755337.jpg?1626095299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1ee98955-4c47-4d45-9377-608dfa755337.jpg?1626095299"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Bone Splinters", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74780faa-1c64-4d73-8d09-53b47ba02d7a.jpg?1562922512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74780faa-1c64-4d73-8d09-53b47ba02d7a.jpg?1562922512"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Bone Splinters", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/387eda28-f35b-48b0-ba59-773d82902327.jpg?1592708776", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/387eda28-f35b-48b0-ba59-773d82902327.jpg?1592708776"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Bone Splinters", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4a4b3a3-b7ae-4210-8037-098fdf5808d0.jpg?1562709424", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4a4b3a3-b7ae-4210-8037-098fdf5808d0.jpg?1562709424"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Brainspoil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c34fa44f-274e-4914-bbd5-71193f8d2f96.jpg?1598914670", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c34fa44f-274e-4914-bbd5-71193f8d2f96.jpg?1598914670"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bright Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/3340ffb9-9513-4551-ad64-821600596b2e.jpg?1562553092", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/3340ffb9-9513-4551-ad64-821600596b2e.jpg?1562553092"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bring Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e18146f9-369c-41c8-8a1d-7737edd2c18e.jpg?1562940282", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e18146f9-369c-41c8-8a1d-7737edd2c18e.jpg?1562940282"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Broken Visage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/824823fb-5ae1-48b1-bc46-e452afa73cd8.jpg?1562592294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/824823fb-5ae1-48b1-bc46-e452afa73cd8.jpg?1562592294"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Broken Visage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9be199e7-feaa-4f23-b93c-3eab54a02e74.jpg?1562587775", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9be199e7-feaa-4f23-b93c-3eab54a02e74.jpg?1562587775"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Broken Wings", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9eb94908-4f4a-487e-87ac-8d5bdefe9983.jpg?1650029788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9eb94908-4f4a-487e-87ac-8d5bdefe9983.jpg?1650029788"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Broken Wings", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/6201f78e-ff45-4c59-ac85-c8447c14a496.jpg?1631050058", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/6201f78e-ff45-4c59-ac85-c8447c14a496.jpg?1631050058"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Broken Wings", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0fc2dfd-85b0-4add-be18-b39549235921.jpg?1604198611", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0fc2dfd-85b0-4add-be18-b39549235921.jpg?1604198611"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cast Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/b/aba79021-39af-4e74-beb5-f2f508c865b2.jpg?1653520579", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/b/aba79021-39af-4e74-beb5-f2f508c865b2.jpg?1653520579"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Cast Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/4/a41150b2-44a6-4e80-8b32-afc6ea744fb3.jpg?1591104816", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/4/a41150b2-44a6-4e80-8b32-afc6ea744fb3.jpg?1591104816"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Casualties of War", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08fc5e50-c6f7-41ec-815a-5667eefded78.jpg?1557577078", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08fc5e50-c6f7-41ec-815a-5667eefded78.jpg?1557577078"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Certain Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/6/c67784b3-eb55-452e-b965-f63220b88896.jpg?1576384279", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/6/c67784b3-eb55-452e-b965-f63220b88896.jpg?1576384279"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chastise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/1169dab7-8f4c-474d-9289-42765a275376.jpg?1562628717", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/1169dab7-8f4c-474d-9289-42765a275376.jpg?1562628717"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chill to the Bone", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/312505d7-362e-43cf-bd23-28c248a8b7e1.jpg?1593275049", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/312505d7-362e-43cf-bd23-28c248a8b7e1.jpg?1593275049"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cinder Cloud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f044c470-50ce-4a6c-b8ab-665357c3c11e.jpg?1562722408", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f044c470-50ce-4a6c-b8ab-665357c3c11e.jpg?1562722408"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Clear a Path", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8a8f904b-a9a3-4bae-9284-4e9cbe7592ee.jpg?1562920680", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8a8f904b-a9a3-4bae-9284-4e9cbe7592ee.jpg?1562920680"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Closing Statement", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/785e6d07-fe40-4723-b963-02da0a0987c7.jpg?1627428302", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/785e6d07-fe40-4723-b963-02da0a0987c7.jpg?1627428302"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Collar the Culprit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cdf305b7-d1f7-4770-9201-8f3fb6735cd9.jpg?1572892497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cdf305b7-d1f7-4770-9201-8f3fb6735cd9.jpg?1572892497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Collective Effort", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d85a6369-c07f-47d5-8448-72d8ec7e7898.jpg?1576383801", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d85a6369-c07f-47d5-8448-72d8ec7e7898.jpg?1576383801"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Consign to the Pit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/09991fad-4282-4a17-bfb1-03eaa13502df.jpg?1584830536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/09991fad-4282-4a17-bfb1-03eaa13502df.jpg?1584830536"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Contract Killing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d1f20feb-b1ed-4d80-bef9-f3cc44ffb7b0.jpg?1562564388", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d1f20feb-b1ed-4d80-bef9-f3cc44ffb7b0.jpg?1562564388"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corpsehatch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91c152d-1829-438c-b571-74361e09df62.jpg?1562708566", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91c152d-1829-438c-b571-74361e09df62.jpg?1562708566"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cradle to Grave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3ec275cf-bb4e-4de0-9184-4d53dd87dad3.jpg?1562569856", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3ec275cf-bb4e-4de0-9184-4d53dd87dad3.jpg?1562569856"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crosis's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a586e329-b1e2-4b60-a914-7b9aa2c645c2.jpg?1562929889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a586e329-b1e2-4b60-a914-7b9aa2c645c2.jpg?1562929889"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Crosis's Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b59a9e75-9988-4040-a718-b1655fc20d11.jpg?1562933342", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b59a9e75-9988-4040-a718-b1655fc20d11.jpg?1562933342"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cruel Cut", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f99ffe22-4dd8-4787-b6e0-e03dea8ab42a.jpg?1590010389", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f99ffe22-4dd8-4787-b6e0-e03dea8ab42a.jpg?1590010389"}, "reprint": true, "digital": true, "set_type": "memorabilia"}, {"name": "Cruel Revival", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a863ae27-a99a-4a60-ab07-25c1bacec64d.jpg?1562035297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a863ae27-a99a-4a60-ab07-25c1bacec64d.jpg?1562035297"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Cruel Revival", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/4/245aba23-2abb-4084-b4cb-d06e46de2108.jpg?1562903595", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/4/245aba23-2abb-4084-b4cb-d06e46de2108.jpg?1562903595"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crushing Canopy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eae67d98-5167-442b-8586-0b2bcb0c56eb.jpg?1643592488", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eae67d98-5167-442b-8586-0b2bcb0c56eb.jpg?1643592488"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Crushing Canopy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0c4f213-0ea4-44c0-8429-172a317b77f5.jpg?1572893325", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0c4f213-0ea4-44c0-8429-172a317b77f5.jpg?1572893325"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Crushing Canopy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a66b0e45-e585-44f3-8d2b-e887330ba138.jpg?1562561563", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a66b0e45-e585-44f3-8d2b-e887330ba138.jpg?1562561563"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crushing Vines", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c59b3653-5a50-48f2-bcf1-ab305ef30902.jpg?1562941671", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c59b3653-5a50-48f2-bcf1-ab305ef30902.jpg?1562941671"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Damn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Daring Demolition", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6378898-50b7-47c9-8c25-dc660606be9f.jpg?1576381626", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6378898-50b7-47c9-8c25-dc660606be9f.jpg?1576381626"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d03720d-b0ca-4892-9ad1-52189f4a30a1.jpg?1562244108", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d03720d-b0ca-4892-9ad1-52189f4a30a1.jpg?1562244108"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/922d6c8b-70ae-4db4-bf26-1904e4906211.jpg?1562055426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/922d6c8b-70ae-4db4-bf26-1904e4906211.jpg?1562055426"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f983dcb-b077-465f-a70b-6bd0e425556c.jpg?1562719738", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f983dcb-b077-465f-a70b-6bd0e425556c.jpg?1562719738"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Dark Banishing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7dc2716-ed62-4797-ad2b-227eca5408d0.jpg?1562941556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7dc2716-ed62-4797-ad2b-227eca5408d0.jpg?1562941556"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dark Betrayal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56adf4ea-1b1c-4737-8574-1848ca47d4f3.jpg?1562818301", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56adf4ea-1b1c-4737-8574-1848ca47d4f3.jpg?1562818301"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dark Offering", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3ce0cef9-6de4-4a71-b76a-eb0198387294.jpg?1562909319", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3ce0cef9-6de4-4a71-b76a-eb0198387294.jpg?1562909319"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Dark Withering", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3da58e0d-5877-43c4-b129-993e154b6087.jpg?1562907804", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3da58e0d-5877-43c4-b129-993e154b6087.jpg?1562907804"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deadly Alliance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/007a5c8c-ed0b-4844-9393-a3d25d4ffa1d.jpg?1604195436", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/007a5c8c-ed0b-4844-9393-a3d25d4ffa1d.jpg?1604195436"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deadly Visit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/462fe190-5264-42d8-bd27-23c5aa0c641f.jpg?1572892937", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/462fe190-5264-42d8-bd27-23c5aa0c641f.jpg?1572892937"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Bomb", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8a84715-c5dc-4a19-af6a-796c6ee912c2.jpg?1562947604", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8a84715-c5dc-4a19-af6a-796c6ee912c2.jpg?1562947604"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathmark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61268362-f2ba-469d-8e5a-0b8da96e54a5.jpg?1561982272", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61268362-f2ba-469d-8e5a-0b8da96e54a5.jpg?1561982272"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Deathmark", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e72e8728-d0a0-4ee5-87c3-092ca94225e0.jpg?1593275062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e72e8728-d0a0-4ee5-87c3-092ca94225e0.jpg?1593275062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Mutation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c643d87-50bc-4380-b1d6-0a465eef5dbf.jpg?1562912876", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c643d87-50bc-4380-b1d6-0a465eef5dbf.jpg?1562912876"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Rattle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8cddafc8-57d6-456e-af58-4b7f45e195d5.jpg?1562923481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8cddafc8-57d6-456e-af58-4b7f45e195d5.jpg?1562923481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death's Caress", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/0643fb9a-8284-4dfc-836a-c2c69ef09f32.jpg?1562896472", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/0643fb9a-8284-4dfc-836a-c2c69ef09f32.jpg?1562896472"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deathsprout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d615557-aea8-4057-9fbd-d62dd98edc13.jpg?1557577090", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d615557-aea8-4057-9fbd-d62dd98edc13.jpg?1557577090"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Stroke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/7478a471-3bd2-4038-a4eb-70c38a43afa9.jpg?1562596864", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/7478a471-3bd2-4038-a4eb-70c38a43afa9.jpg?1562596864"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decimate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/358bbaf9-8d48-448b-b87f-211344e36e29.jpg?1562864952", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/358bbaf9-8d48-448b-b87f-211344e36e29.jpg?1562864952"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Decimate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/912c398a-e49a-4399-ac41-7b1d4328a59d.jpg?1562921956", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/912c398a-e49a-4399-ac41-7b1d4328a59d.jpg?1562921956"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Deface", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43df9f41-944e-4cf3-ac80-524eadac221d.jpg?1584830848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43df9f41-944e-4cf3-ac80-524eadac221d.jpg?1584830848"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Defeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/0/60473300-0bdc-4e89-87d9-28c8d7b4d83d.jpg?1562787158", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/0/60473300-0bdc-4e89-87d9-28c8d7b4d83d.jpg?1562787158"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Defend the Campus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85e4e1b5-77d6-4af4-b22e-6f6b4d129f5d.jpg?1624589309", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85e4e1b5-77d6-4af4-b22e-6f6b4d129f5d.jpg?1624589309"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Defenestrate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df3abdcc-83a8-45c3-9bfd-23f929705018.jpg?1634349688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df3abdcc-83a8-45c3-9bfd-23f929705018.jpg?1634349688"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devour in Shadow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98c80584-b7b5-4dcd-8a00-812b9dd9b1b9.jpg?1562878693", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98c80584-b7b5-4dcd-8a00-812b9dd9b1b9.jpg?1562878693"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dimir Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3f4cfa7-8ee4-4a85-9e6a-65a7541f62c1.jpg?1561852231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3f4cfa7-8ee4-4a85-9e6a-65a7541f62c1.jpg?1561852231"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dimir Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f6bc1da-3969-4f19-b072-4ed79f906fef.jpg?1562497257", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f6bc1da-3969-4f19-b072-4ed79f906fef.jpg?1562497257"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Disembowel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1edb79d-0031-4dc6-8881-f6d1fe4acba2.jpg?1619741469", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1edb79d-0031-4dc6-8881-f6d1fe4acba2.jpg?1619741469"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Divine Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed07b708-7232-4b87-b5d9-edaa20a69293.jpg?1555039673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed07b708-7232-4b87-b5d9-edaa20a69293.jpg?1555039673"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Divine Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79f46ac0-9e2f-4f9f-beee-0a7914475ac1.jpg?1562820257", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79f46ac0-9e2f-4f9f-beee-0a7914475ac1.jpg?1562820257"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Divine Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48444e14-c73b-47d1-9c55-0ff4dc3c6034.jpg?1561978713", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48444e14-c73b-47d1-9c55-0ff4dc3c6034.jpg?1561978713"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/176cdb4b-6ad4-4991-8456-28579640063d.jpg?1562229273", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/176cdb4b-6ad4-4991-8456-28579640063d.jpg?1562229273"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/e/6e19acff-f3dd-417a-a9ab-ea3e36c1ba61.jpg?1561983934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/e/6e19acff-f3dd-417a-a9ab-ea3e36c1ba61.jpg?1561983934"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/e/7e6c0fe2-a82b-42cb-8629-b9f00b7f08e9.jpg?1623780045", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/e/7e6c0fe2-a82b-42cb-8629-b9f00b7f08e9.jpg?1623780045"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Doom Blade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/7/37468ade-27b1-4128-9a62-1293ec2aab41.jpg?1561756922", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/7/37468ade-27b1-4128-9a62-1293ec2aab41.jpg?1561756922"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Drag to the Underworld", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/91852444-9361-4588-a44f-fb90ba1b30e5.jpg?1581479732", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/91852444-9361-4588-a44f-fb90ba1b30e5.jpg?1581479732"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dreadbore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a83945c6-4dc6-4d9a-9bc2-2d4a264e5422.jpg?1562791208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a83945c6-4dc6-4d9a-9bc2-2d4a264e5422.jpg?1562791208"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in the Loch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8bf5df5b-164d-4ec2-a5e6-bbaea152e271.jpg?1572490739", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8bf5df5b-164d-4ec2-a5e6-bbaea152e271.jpg?1572490739"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in the Loch", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01acd1c1-86b2-4423-9ba7-5b9725c0514f.jpg?1640249448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01acd1c1-86b2-4423-9ba7-5b9725c0514f.jpg?1640249448"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Duh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fa5b9b30-4950-4c9c-9ce8-6d271bb7aa01.jpg?1562489857", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fa5b9b30-4950-4c9c-9ce8-6d271bb7aa01.jpg?1562489857"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Easy Prey", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/312fb6e4-1eb1-4fbb-b7a4-125829a6e96a.jpg?1591226769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/312fb6e4-1eb1-4fbb-b7a4-125829a6e96a.jpg?1591226769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eaten by Spiders", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0efea1b1-f212-4b97-98dd-922f85ab191f.jpg?1592709344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0efea1b1-f212-4b97-98dd-922f85ab191f.jpg?1592709344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eightfold Maze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cc8c377a-82c4-46ee-94c2-b970160a3205.jpg?1562257975", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cc8c377a-82c4-46ee-94c2-b970160a3205.jpg?1562257975"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Eliminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8eb4087-3a4c-4de8-8e29-f4cd71acb180.jpg?1594736106", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8eb4087-3a4c-4de8-8e29-f4cd71acb180.jpg?1594736106"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Eliminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c55b2b50-ac83-4a78-8f84-580193d1ca0f.jpg?1623780234", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c55b2b50-ac83-4a78-8f84-580193d1ca0f.jpg?1623780234"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Enduring Victory", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54fef763-7ee2-4341-9c67-546e4b6710b7.jpg?1562786446", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54fef763-7ee2-4341-9c67-546e4b6710b7.jpg?1562786446"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Vortex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fe07e496-5070-4116-a91a-a3bbe19c12af.jpg?1562942896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fe07e496-5070-4116-a91a-a3bbe19c12af.jpg?1562942896"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eviscerate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62ba90b8-3a30-4058-b8d3-72900b1f4fe0.jpg?1562736723", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62ba90b8-3a30-4058-b8d3-72900b1f4fe0.jpg?1562736723"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Execute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/333123bc-fb66-4b5a-bf55-045d2906c8c3.jpg?1562904481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/333123bc-fb66-4b5a-bf55-045d2906c8c3.jpg?1562904481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Expunge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/0576ffe8-a7b9-479b-8ea0-418b430b1aa1.jpg?1562896134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/0576ffe8-a7b9-479b-8ea0-418b430b1aa1.jpg?1562896134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eyeblight's Ending", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0c08701-7038-4d6b-bbf8-056fd8ffb226.jpg?1562371343", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0c08701-7038-4d6b-bbf8-056fd8ffb226.jpg?1562371343"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fatal Blow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/044dc7c2-6198-4526-b79a-f3d8ee7a157a.jpg?1562799109", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/044dc7c2-6198-4526-b79a-f3d8ee7a157a.jpg?1562799109"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5e81649-9954-424c-89d1-f87d73b66047.jpg?1595869185", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5e81649-9954-424c-89d1-f87d73b66047.jpg?1595869185"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/5427d8a6-ac9e-4e50-bd39-81713b2ade25.jpg?1607041515", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/5427d8a6-ac9e-4e50-bd39-81713b2ade25.jpg?1607041515"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9a50516-a20f-4e6e-b4f2-0049b673f942.jpg?1599711004", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9a50516-a20f-4e6e-b4f2-0049b673f942.jpg?1599711004"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Fatal Push", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/86d1119d-7585-4699-8649-e3743c02d7a9.jpg?1562636837", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/86d1119d-7585-4699-8649-e3743c02d7a9.jpg?1562636837"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Fateful Absence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/eca8d6f8-c6f1-437c-99e2-4281eae14a6f.jpg?1634346819", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/eca8d6f8-c6f1-437c-99e2-4281eae14a6f.jpg?1634346819"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast of Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1a7dd5e2-b2a5-46ab-a67c-499451706505.jpg?1562610240", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1a7dd5e2-b2a5-46ab-a67c-499451706505.jpg?1562610240"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast of Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/658bf8b7-fbc4-4046-9300-249cdeb87924.jpg?1561757312", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/658bf8b7-fbc4-4046-9300-249cdeb87924.jpg?1561757312"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Feast of Dreams", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de07e21e-c12a-47a6-ad2c-ef6fed343407.jpg?1593095705", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de07e21e-c12a-47a6-ad2c-ef6fed343407.jpg?1593095705"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast or Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92105bc6-b64a-4bdc-99fe-7a2ccdbd4486.jpg?1592713797", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92105bc6-b64a-4bdc-99fe-7a2ccdbd4486.jpg?1592713797"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Feast or Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/0/302ec21d-bb10-4651-80da-11852768165d.jpg?1559592569", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/0/302ec21d-bb10-4651-80da-11852768165d.jpg?1559592569"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Feast or Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c185b4d-8da5-4b8a-85f0-5f0622c7bade.jpg?1562769209", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c185b4d-8da5-4b8a-85f0-5f0622c7bade.jpg?1562769209"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feed the Swarm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f6b2eba7-862a-4efd-9f65-065fb2070855.jpg?1604195649", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f6b2eba7-862a-4efd-9f65-065fb2070855.jpg?1604195649"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fierce Retribution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/9597b163-5c6b-4f64-b1f1-5f1fa2e23e5d.jpg?1643586258", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/9597b163-5c6b-4f64-b1f1-5f1fa2e23e5d.jpg?1643586258"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Final Payment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49a21a8f-9c7b-4ae8-8635-f2ee2151c8de.jpg?1584831505", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49a21a8f-9c7b-4ae8-8635-f2ee2151c8de.jpg?1584831505"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Finders, Keepers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f4b7148-e98f-40a4-95e3-ffdd2daa324b.jpg?1562914921", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f4b7148-e98f-40a4-95e3-ffdd2daa324b.jpg?1562914921"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Finishing Blow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b85a552-2119-4d9c-b7c1-c09c2d9f2f38.jpg?1594736130", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b85a552-2119-4d9c-b7c1-c09c2d9f2f38.jpg?1594736130"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Fissure", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/a/aa2d778d-d74b-45ec-a86b-5d52ffad6ba5.jpg?1562935207", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/a/aa2d778d-d74b-45ec-a86b-5d52ffad6ba5.jpg?1562935207"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flash Flood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5ae88c06-f28c-4fbc-a28c-5eb203a04722.jpg?1562859177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5ae88c06-f28c-4fbc-a28c-5eb203a04722.jpg?1562859177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flesh Allergy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c729525-b954-42dd-9877-f4360d99b961.jpg?1562820900", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c729525-b954-42dd-9877-f4360d99b961.jpg?1562820900"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flesh to Dust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16b2e842-6c92-47b0-bed4-e0e64485f168.jpg?1562783120", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16b2e842-6c92-47b0-bed4-e0e64485f168.jpg?1562783120"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Foul Play", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e4b75c-e993-4983-8933-977be314bba6.jpg?1634349812", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e4b75c-e993-4983-8933-977be314bba6.jpg?1634349812"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fumarole", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efa53e9a-0d7c-4d17-b2be-56930edfa2c2.jpg?1562940031", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efa53e9a-0d7c-4d17-b2be-56930edfa2c2.jpg?1562940031"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gang Up", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10d01449-3e4e-44ef-90aa-9489c86c57df.jpg?1595438095", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10d01449-3e4e-44ef-90aa-9489c86c57df.jpg?1595438095"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Get the Point", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/821c4ab5-eb75-445a-bbec-e50af54dba7a.jpg?1584831541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/821c4ab5-eb75-445a-bbec-e50af54dba7a.jpg?1584831541"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghastly Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9d2bfa3-0499-43ea-a76d-b12fddbc104e.jpg?1562935702", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9d2bfa3-0499-43ea-a76d-b12fddbc104e.jpg?1562935702"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ghostly Visit", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/06f6938a-229a-4521-b5d5-7999ce5fb372.jpg?1562255824", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/06f6938a-229a-4521-b5d5-7999ce5fb372.jpg?1562255824"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Gloomlance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b45bfb2-7c48-4da5-a0fd-29d353221814.jpg?1562832072", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b45bfb2-7c48-4da5-a0fd-29d353221814.jpg?1562832072"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gloomwidow's Feast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59b989b4-692c-4ccb-a290-0ff00abacba9.jpg?1562830513", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59b989b4-692c-4ccb-a290-0ff00abacba9.jpg?1562830513"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Go for the Throat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c6cb231-41df-409c-923e-100319f27ee3.jpg?1562605365", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c6cb231-41df-409c-923e-100319f27ee3.jpg?1562605365"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Go for the Throat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a3109aaa-b1e9-4c68-85f0-7515c8eeadc3.jpg?1562636862", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a3109aaa-b1e9-4c68-85f0-7515c8eeadc3.jpg?1562636862"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Grim Bounty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b98e0ab1-dea8-492b-a712-2057f2b1d020.jpg?1627704924", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b98e0ab1-dea8-492b-a712-2057f2b1d020.jpg?1627704924"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grisly Ritual", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/53cdf2ab-3acd-49bd-8273-84c1cfc92883.jpg?1643589817", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/53cdf2ab-3acd-49bd-8273-84c1cfc92883.jpg?1643589817"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Grisly Spectacle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c26d0f6e-e7bd-4206-a0da-1c9c203a73f2.jpg?1561844583", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c26d0f6e-e7bd-4206-a0da-1c9c203a73f2.jpg?1561844583"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guiding Bolt", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd552f81-1947-47e0-beee-f04e73551055.jpg?1653690524", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd552f81-1947-47e0-beee-f04e73551055.jpg?1653690524"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Hand of Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9761136-9e1c-4d86-98ce-7abe1d8e6a8d.jpg?1562935064", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9761136-9e1c-4d86-98ce-7abe1d8e6a8d.jpg?1562935064"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hand of Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27f136b8-52be-49b9-919b-2b9785254350.jpg?1546740328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27f136b8-52be-49b9-919b-2b9785254350.jpg?1546740328"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Hearth Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/caa9ac66-51b7-4aec-92dc-0f0656b0f7fe.jpg?1562278639", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/caa9ac66-51b7-4aec-92dc-0f0656b0f7fe.jpg?1562278639"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Heartless Act", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e4e6794a-feeb-4fc8-a2ee-38c75c18aaae.jpg?1591226819", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e4e6794a-feeb-4fc8-a2ee-38c75c18aaae.jpg?1591226819"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hero's Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d22dd514-814f-4a62-926d-fef311896c02.jpg?1562879959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d22dd514-814f-4a62-926d-fef311896c02.jpg?1562879959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1b0751e-3a7e-4568-8c64-7429d6829687.jpg?1643589948", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1b0751e-3a7e-4568-8c64-7429d6829687.jpg?1643589948"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/596822f6-dbd4-4cc8-aa50-9331ff42544e.jpg?1562818494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/596822f6-dbd4-4cc8-aa50-9331ff42544e.jpg?1562818494"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed96b05d-b2ca-4c8f-969b-cac9b4562fab.jpg?1636900809", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed96b05d-b2ca-4c8f-969b-cac9b4562fab.jpg?1636900809"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Hero's Downfall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/64aa5cbd-98e9-46fc-8de4-64eab7afc90f.jpg?1561757293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/64aa5cbd-98e9-46fc-8de4-64eab7afc90f.jpg?1561757293"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hideous End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/3/b33e6056-00c9-4731-b364-b0214398848d.jpg?1562842860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/3/b33e6056-00c9-4731-b364-b0214398848d.jpg?1562842860"}, "reprint": false, "digital": false, "set_type": "planechase"}, {"name": "Horobi's Whisper", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1aad5179-4b73-498e-85c5-1fc363d26223.jpg?1562875751", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1aad5179-4b73-498e-85c5-1fc363d26223.jpg?1562875751"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Human Frailty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/d/1d1de712-86ac-4c03-be86-2403cd121f66.jpg?1592708908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/d/1d1de712-86ac-4c03-be86-2403cd121f66.jpg?1592708908"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Humble the Brute", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c105686-8b45-494a-b9ef-8aa267bb1b5a.jpg?1656286373", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c105686-8b45-494a-b9ef-8aa267bb1b5a.jpg?1656286373"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Immolating Glare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2f468338-bb66-4db0-a883-69095566092b.jpg?1562904646", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2f468338-bb66-4db0-a883-69095566092b.jpg?1562904646"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Immolating Glare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0ddbcd23-e206-4a12-968a-3854693d1e60.jpg?1562870987", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0ddbcd23-e206-4a12-968a-3854693d1e60.jpg?1562870987"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Impale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfa0c4f7-3497-467d-9453-104fb4b5a0f3.jpg?1555040252", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfa0c4f7-3497-467d-9453-104fb4b5a0f3.jpg?1555040252"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Infernal Grasp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/17824929-f131-4b8d-addb-66c25323155e.jpg?1634349911", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/17824929-f131-4b8d-addb-66c25323155e.jpg?1634349911"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inscription of Ruin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/93612079-0b8d-489d-9ae1-3593414a8cee.jpg?1604195857", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/93612079-0b8d-489d-9ae1-3593414a8cee.jpg?1604195857"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Into the Maw of Hell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d188d9b-7a12-4eaf-855b-af4f0204dc5a.jpg?1562830878", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d188d9b-7a12-4eaf-855b-af4f0204dc5a.jpg?1562830878"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Just Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6e5e572-030d-4a41-89e6-e720b49bc131.jpg?1562934537", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6e5e572-030d-4a41-89e6-e720b49bc131.jpg?1562934537"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Kaervek's Purge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a42ef95-92ec-40fe-ab30-a476f012a525.jpg?1562720237", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a42ef95-92ec-40fe-ab30-a476f012a525.jpg?1562720237"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kill! Destroy!", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49dd5a66-101d-4f88-b1ba-e2368203d408.jpg?1605097368", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49dd5a66-101d-4f88-b1ba-e2368203d408.jpg?1605097368"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Killing Glare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/7/f7a4d87d-b844-4f20-8b14-4fd32c53dea5.jpg?1561852883", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/7/f7a4d87d-b844-4f20-8b14-4fd32c53dea5.jpg?1561852883"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kill Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61b0b9a3-8f50-4fba-9978-409f3369afa6.jpg?1650026094", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61b0b9a3-8f50-4fba-9978-409f3369afa6.jpg?1650026094"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Kill Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f30d4136-78a3-4760-83af-d365cc97d118.jpg?1562795914", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f30d4136-78a3-4760-83af-d365cc97d118.jpg?1562795914"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/terror2.json b/web/public/mtg/jsons/terror2.json deleted file mode 100644 index 162e6ad0..00000000 --- a/web/public/mtg/jsons/terror2.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": true, "data": [{"name": "Krovikan Rot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/17597c66-0d9f-41af-9160-0d92be88f450.jpg?1593275116", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/17597c66-0d9f-41af-9160-0d92be88f450.jpg?1593275116"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Launch Party", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/3/53f29821-902e-41bc-97a2-6fc7a710cbdb.jpg?1562786438", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/3/53f29821-902e-41bc-97a2-6fc7a710cbdb.jpg?1562786438"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lava Flow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/9/89e825e4-98be-49f0-bc5e-c8988118dcef.jpg?1562446890", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/9/89e825e4-98be-49f0-bc5e-c8988118dcef.jpg?1562446890"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Legion's Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/385bea20-c196-4da8-bc3e-36f8d50dcc17.jpg?1562553483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/385bea20-c196-4da8-bc3e-36f8d50dcc17.jpg?1562553483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lethal Scheme", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65864680-9520-4eb3-9774-fa478e54a290.jpg?1650411151", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65864680-9520-4eb3-9774-fa478e54a290.jpg?1650411151"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Lethal Sting", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eaded6bf-2db7-4b1d-93cc-4b7b571cd2de.jpg?1562819094", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eaded6bf-2db7-4b1d-93cc-4b7b571cd2de.jpg?1562819094"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lich's Caress", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/32bd3acd-aa62-4708-9336-e3430fd0e541.jpg?1562301277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/32bd3acd-aa62-4708-9336-e3430fd0e541.jpg?1562301277"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Liliana's Defeat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f72b028-b9df-40c7-822f-4acc6bdcc719.jpg?1562789479", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f72b028-b9df-40c7-822f-4acc6bdcc719.jpg?1562789479"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Liliana's Scorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b231f941-4acb-46f2-81ae-16e5a28e65af.jpg?1596250190", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b231f941-4acb-46f2-81ae-16e5a28e65af.jpg?1596250190"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Liturgy of Blood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/3532105d-c550-4c20-8465-a6a19169efbd.jpg?1562827834", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/3532105d-c550-4c20-8465-a6a19169efbd.jpg?1562827834"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Maelstrom Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb651c3a-cb27-4b73-8eb6-b87d65211097.jpg?1562644898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb651c3a-cb27-4b73-8eb6-b87d65211097.jpg?1562644898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Maelstrom Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2d85423-ebd8-4a6e-aedf-90e52f918764.jpg?1562940541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2d85423-ebd8-4a6e-aedf-90e52f918764.jpg?1562940541"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Maelstrom Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d351c901-103b-460f-9d01-6e4d4b25cac8.jpg?1561929932", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d351c901-103b-460f-9d01-6e4d4b25cac8.jpg?1561929932"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Mage Hunters' Onslaught", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/ed85140f-f0e0-4ac1-a67f-26d17ff95e31.jpg?1624591129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/ed85140f-f0e0-4ac1-a67f-26d17ff95e31.jpg?1624591129"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Malicious Affliction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d6ea704f-a06c-4d3b-80a3-d23f739c74aa.jpg?1561960653", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d6ea704f-a06c-4d3b-80a3-d23f739c74aa.jpg?1561960653"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Misfortune's Gain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/80abd7c1-8f7a-4279-b76f-251a02624345.jpg?1562257029", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/80abd7c1-8f7a-4279-b76f-251a02624345.jpg?1562257029"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Mob", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c216e13-3779-4734-b481-9aad7aba9925.jpg?1562201673", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c216e13-3779-4734-b481-9aad7aba9925.jpg?1562201673"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Molten Frame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58356504-e28e-456c-b1d3-e6232f4d78a6.jpg?1562801105", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58356504-e28e-456c-b1d3-e6232f4d78a6.jpg?1562801105"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/38c5e2e8-b781-4265-bce1-98fa25ddd8c3.jpg?1592714339", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/38c5e2e8-b781-4265-bce1-98fa25ddd8c3.jpg?1592714339"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3b2c5187-71c7-4801-8a76-339c67322d35.jpg?1593272729", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3b2c5187-71c7-4801-8a76-339c67322d35.jpg?1593272729"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/645f4d28-68cb-4386-91b9-c748930d69fa.jpg?1570573674", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/645f4d28-68cb-4386-91b9-c748930d69fa.jpg?1570573674"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Mortify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a36a42b0-8216-4c99-a85f-22a520f31fd4.jpg?1561757738", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a36a42b0-8216-4c99-a85f-22a520f31fd4.jpg?1561757738"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bdef7fea-2bd0-42a2-96f6-6def18bd7f0c.jpg?1653725816", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bdef7fea-2bd0-42a2-96f6-6def18bd7f0c.jpg?1653725816"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1c13ac76-7cd9-456f-9b89-92bfa07c64c5.jpg?1649362504", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1c13ac76-7cd9-456f-9b89-92bfa07c64c5.jpg?1649362504"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f2eb849-b3ab-4d26-86c5-235c8161cf2a.jpg?1576384369", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f2eb849-b3ab-4d26-86c5-235c8161cf2a.jpg?1576384369"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Murder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/8/c8676f02-cf1e-4d40-a0c5-6e5a97417898.jpg?1562559978", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/8/c8676f02-cf1e-4d40-a0c5-6e5a97417898.jpg?1562559978"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Murderous Compulsion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33b94db1-ac8c-4667-81d5-408df0f30879.jpg?1576384534", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33b94db1-ac8c-4667-81d5-408df0f30879.jpg?1576384534"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Murderous Cut", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b2dadff2-883f-4134-a881-be145cdcbd84.jpg?1562792142", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b2dadff2-883f-4134-a881-be145cdcbd84.jpg?1562792142"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Murderous Spoils", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/1/91ece344-c516-449e-ab7c-2e78d4778f02.jpg?1562638187", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/1/91ece344-c516-449e-ab7c-2e78d4778f02.jpg?1562638187"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mutual Destruction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/85ac0b25-80bf-4871-a6f6-5cf4d5b9496e.jpg?1591226898", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/85ac0b25-80bf-4871-a6f6-5cf4d5b9496e.jpg?1591226898"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mythos of Nethroi", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6abc24e1-e721-471a-9efd-547f320675b0.jpg?1591226925", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6abc24e1-e721-471a-9efd-547f320675b0.jpg?1591226925"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Neck Snap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc326b79-363e-4c14-86e4-23041f2d6b4f.jpg?1562375861", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc326b79-363e-4c14-86e4-23041f2d6b4f.jpg?1562375861"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Noxious Grasp", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8e5758cc-1f84-455d-a983-8ec471727eaf.jpg?1592516744", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8e5758cc-1f84-455d-a983-8ec471727eaf.jpg?1592516744"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Obscura Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9961562d-cad9-40e5-afae-3ebce77a2260.jpg?1648583418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9961562d-cad9-40e5-afae-3ebce77a2260.jpg?1648583418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Obscura Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/a/4a02b758-65b6-4c25-83b9-de63a1a92b51.jpg?1648583494", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/a/4a02b758-65b6-4c25-83b9-de63a1a92b51.jpg?1648583494"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Orim's Thunder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/0/d00bf192-4baf-46ba-947b-a22d07635b04.jpg?1562944526", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/0/d00bf192-4baf-46ba-947b-a22d07635b04.jpg?1562944526"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Orzhov Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8ca44265-5e1b-4fbf-9002-52b2ce9b7448.jpg?1561835927", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8ca44265-5e1b-4fbf-9002-52b2ce9b7448.jpg?1561835927"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Parting Thoughts", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e60b5a1-923c-4c67-ae06-2a498dc46506.jpg?1562393855", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e60b5a1-923c-4c67-ae06-2a498dc46506.jpg?1562393855"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/1/41369848-ba9a-40ef-931e-1a65bc979209.jpg?1562434966", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/1/41369848-ba9a-40ef-931e-1a65bc979209.jpg?1562434966"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af7a2719-7910-4601-be88-7b3c249199d3.jpg?1562932043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af7a2719-7910-4601-be88-7b3c249199d3.jpg?1562932043"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cb14d3f4-09f3-4113-bdc3-0fd753137f7c.jpg?1562942983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cb14d3f4-09f3-4113-bdc3-0fd753137f7c.jpg?1562942983"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Path of Peace", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a1f3e1c9-bfad-49a1-b171-6fa344ef2eef.jpg?1562447361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a1f3e1c9-bfad-49a1-b171-6fa344ef2eef.jpg?1562447361"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Phthisis", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9ba55f16-a37c-4caa-9417-227a06cf4061.jpg?1562927843", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9ba55f16-a37c-4caa-9417-227a06cf4061.jpg?1562927843"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pinion Feast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45d6df03-c3c3-42c3-85a4-6fccb0741592.jpg?1562785514", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45d6df03-c3c3-42c3-85a4-6fccb0741592.jpg?1562785514"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pistus Strike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1a2918d6-50f7-4bc1-aef2-930a5c84be8d.jpg?1562609919", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1a2918d6-50f7-4bc1-aef2-930a5c84be8d.jpg?1562609919"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pitfall Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/2823d9a5-dd2f-4e6a-8e3d-554c4204aa32.jpg?1562610754", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/2823d9a5-dd2f-4e6a-8e3d-554c4204aa32.jpg?1562610754"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Spores", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d106d56-a688-49cc-8d5d-0279a5a7c0a7.jpg?1562897663", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d106d56-a688-49cc-8d5d-0279a5a7c0a7.jpg?1562897663"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/5469e696-bbf1-43e3-9c25-fe089b36caed.jpg?1636224615", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/5469e696-bbf1-43e3-9c25-fe089b36caed.jpg?1636224615"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4be85ceb-be98-43ce-9565-a72990797437.jpg?1627708161", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4be85ceb-be98-43ce-9565-a72990797437.jpg?1627708161"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d884b2f2-946e-4d5d-b8cf-ef035726a188.jpg?1591227840", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d884b2f2-946e-4d5d-b8cf-ef035726a188.jpg?1591227840"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8b2f186-4e04-49cb-a206-257cfb7e9361.jpg?1581480847", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8b2f186-4e04-49cb-a206-257cfb7e9361.jpg?1581480847"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54a0afaa-f99f-4c7a-9fa1-c6a46dfb2a29.jpg?1561480279", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54a0afaa-f99f-4c7a-9fa1-c6a46dfb2a29.jpg?1561480279"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f6acb5b-b087-4cad-b40f-2de37029847c.jpg?1562917482", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f6acb5b-b087-4cad-b40f-2de37029847c.jpg?1562917482"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Plummet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a67bb585-cc4f-4cbc-9a5a-d31df98c07ae.jpg?1562930081", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a67bb585-cc4f-4cbc-9a5a-d31df98c07ae.jpg?1562930081"}, "reprint": false, "digital": false, "set_type": "archenemy"}, {"name": "Poison Arrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b7b5f34-c250-484e-9bae-94789b2a87fb.jpg?1562256571", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b7b5f34-c250-484e-9bae-94789b2a87fb.jpg?1562256571"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Poison the Cup", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fb94456-5266-47db-b514-a0e17e34b771.jpg?1631048334", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fb94456-5266-47db-b514-a0e17e34b771.jpg?1631048334"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Polymorph", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fbae8702-a152-4c53-8a76-691a221f2475.jpg?1562722872", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fbae8702-a152-4c53-8a76-691a221f2475.jpg?1562722872"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pongify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/c/cce74a84-4441-4f2e-89d8-df0b096790ed.jpg?1562582099", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/c/cce74a84-4441-4f2e-89d8-df0b096790ed.jpg?1562582099"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Power Word Kill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/395b6ce4-143f-4eed-b565-98aa3d6208ef.jpg?1627705234", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/395b6ce4-143f-4eed-b565-98aa3d6208ef.jpg?1627705234"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Power Word Kill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36c71043-1c11-4377-ab33-41d19927143a.jpg?1654010561", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36c71043-1c11-4377-ab33-41d19927143a.jpg?1654010561"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Premature Burial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e96cea6a-fea6-4a6b-84b2-7b57237be96a.jpg?1562944222", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e96cea6a-fea6-4a6b-84b2-7b57237be96a.jpg?1562944222"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Price of Fame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/61b52152-0f7c-4466-9e49-033477028f67.jpg?1572893038", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/61b52152-0f7c-4466-9e49-033477028f67.jpg?1572893038"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Prismatic Wardrobe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/9/79624ebe-7110-486d-82ff-b64c662dc6de.jpg?1593865843", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/9/79624ebe-7110-486d-82ff-b64c662dc6de.jpg?1593865843"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Public Execution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48188942-d0ba-4503-bd75-c7a5329bb7c8.jpg?1562553248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48188942-d0ba-4503-bd75-c7a5329bb7c8.jpg?1562553248"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Puncturing Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5b101264-4994-43b7-9156-228f7d10d2bd.jpg?1576383877", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5b101264-4994-43b7-9156-228f7d10d2bd.jpg?1576383877"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Puncturing Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e52d260a-e1ca-4228-855e-2e104b86fd6c.jpg?1562709696", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e52d260a-e1ca-4228-855e-2e104b86fd6c.jpg?1562709696"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Purge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bdcbe727-81f0-469e-92f1-0dd9acdb54ea.jpg?1562639281", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bdcbe727-81f0-469e-92f1-0dd9acdb54ea.jpg?1562639281"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d43a0b6-2a5c-4959-96ee-6e570949dfed.jpg?1562897570", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d43a0b6-2a5c-4959-96ee-6e570949dfed.jpg?1562897570"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c0aca3e-d91d-4bb7-ba4a-500d93f71718.jpg?1592713790", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c0aca3e-d91d-4bb7-ba4a-500d93f71718.jpg?1592713790"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0a16086c-5a74-45d0-8b38-e832cfbc80f7.jpg?1598917276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0a16086c-5a74-45d0-8b38-e832cfbc80f7.jpg?1598917276"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/3882ebea-2864-40ef-a21d-6ba80a0bd417.jpg?1624065750", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/3882ebea-2864-40ef-a21d-6ba80a0bd417.jpg?1624065750"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Putrefy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/236f46d9-276b-4418-a959-39b0963fc525.jpg?1561756786", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/236f46d9-276b-4418-a959-39b0963fc525.jpg?1561756786"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Radiant's Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28d2718e-c6fc-4961-b094-11f25f1177ff.jpg?1562862779", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28d2718e-c6fc-4961-b094-11f25f1177ff.jpg?1562862779"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rapid Hybridization", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/83557f55-f1ab-4995-9cc1-37be895a59db.jpg?1561834181", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/83557f55-f1ab-4995-9cc1-37be895a59db.jpg?1561834181"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reach of Shadows", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bbf9a803-473a-4c38-b352-d47c4fd93d5e.jpg?1562829283", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bbf9a803-473a-4c38-b352-d47c4fd93d5e.jpg?1562829283"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reave Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce7ff657-aa44-4336-895a-87518159cef6.jpg?1572490229", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce7ff657-aa44-4336-895a-87518159cef6.jpg?1572490229"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Reave Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db3d5e9d-07e8-43e1-aaf0-1f9e4ed2834a.jpg?1562045144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db3d5e9d-07e8-43e1-aaf0-1f9e4ed2834a.jpg?1562045144"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Rebuke", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/267185ac-a176-423e-a7f8-ee966d1d9a1e.jpg?1562827636", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/267185ac-a176-423e-a7f8-ee966d1d9a1e.jpg?1562827636"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Regicide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07f56287-91e0-418f-8b57-35c6c30cee33.jpg?1576381853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07f56287-91e0-418f-8b57-35c6c30cee33.jpg?1576381853"}, "reprint": false, "frame_effects": ["draft"], "digital": false, "set_type": "draft_innovation"}, {"name": "Reign of Chaos", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/9285b14a-fc8e-457a-b803-202e05be41e5.jpg?1562720487", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/9285b14a-fc8e-457a-b803-202e05be41e5.jpg?1562720487"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rend Flesh", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92b300a3-e6a8-4ca9-bb26-03f57b5ff6ec.jpg?1562762516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92b300a3-e6a8-4ca9-bb26-03f57b5ff6ec.jpg?1562762516"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/343baad1-dd58-4d64-9b0a-258618094ceb.jpg?1593095328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/343baad1-dd58-4d64-9b0a-258618094ceb.jpg?1593095328"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/8/3868f7ff-8a84-4153-bf5a-ff001d34e0f0.jpg?1562235914", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/8/3868f7ff-8a84-4153-bf5a-ff001d34e0f0.jpg?1562235914"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/7/179f50be-6658-42f4-b9b9-c97c7d3f239a.jpg?1562768219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/7/179f50be-6658-42f4-b9b9-c97c7d3f239a.jpg?1562768219"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reprisal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/839df85a-1aca-4d4b-b327-2778caa6d289.jpg?1562769214", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/839df85a-1aca-4d4b-b327-2778caa6d289.jpg?1562769214"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Return to the Earth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95a53144-2ef3-47d9-a176-73d620202df6.jpg?1562827827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95a53144-2ef3-47d9-a176-73d620202df6.jpg?1562827827"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ride Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c021868f-9ab8-4a52-b12e-3cc35c9d67f0.jpg?1576385014", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c021868f-9ab8-4a52-b12e-3cc35c9d67f0.jpg?1576385014"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Ride Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bc9a434-9617-4a20-88f0-355b20f2c538.jpg?1562785134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bc9a434-9617-4a20-88f0-355b20f2c538.jpg?1562785134"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rite of the Serpent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/005b9fec-66de-4079-88e0-c7de7e22d18e.jpg?1562781741", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/005b9fec-66de-4079-88e0-c7de7e22d18e.jpg?1562781741"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ruinous Path", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/709ab9cf-eed8-4d73-b10d-c7f6d8750328.jpg?1562921535", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/709ab9cf-eed8-4d73-b10d-c7f6d8750328.jpg?1562921535"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ruinous Path", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8a41a241-ee56-486a-9b4d-fb355b5f65b2.jpg?1562133050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8a41a241-ee56-486a-9b4d-fb355b5f65b2.jpg?1562133050"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sagittars' Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saltblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/d/edd1833d-64b0-4c9b-8f6b-1cf15c29d473.jpg?1562585578", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/d/edd1833d-64b0-4c9b-8f6b-1cf15c29d473.jpg?1562585578"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Saw in Half", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05e6a7bc-a35a-4e68-99a0-be264553b5de.jpg?1638258467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05e6a7bc-a35a-4e68-99a0-be264553b5de.jpg?1638258467"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Scorch the Fields", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05c4338d-e5c0-46b4-ab16-1f9aa97b4026.jpg?1562896337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05c4338d-e5c0-46b4-ab16-1f9aa97b4026.jpg?1562896337"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Searing Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/76dadfd8-8492-4c55-827c-cd4e6a40ae97.jpg?1562918808", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/76dadfd8-8492-4c55-827c-cd4e6a40ae97.jpg?1562918808"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seize the Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29bf245f-e8e0-4d32-8cd7-06d832609910.jpg?1593272276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29bf245f-e8e0-4d32-8cd7-06d832609910.jpg?1593272276"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Severed Strands", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bce654d6-fcf1-40a8-8bdb-5c37e561f7dc.jpg?1572893052", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bce654d6-fcf1-40a8-8bdb-5c37e561f7dc.jpg?1572893052"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sever Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/df1cb775-3a45-4f2c-9c45-febda6434c59.jpg?1562939859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/df1cb775-3a45-4f2c-9c45-febda6434c59.jpg?1562939859"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Sever Soul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/2/c2d84fec-18f1-4231-a293-0dc1ff868a40.jpg?1562383023", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/2/c2d84fec-18f1-4231-a293-0dc1ff868a40.jpg?1562383023"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sheer Drop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/ca6e9658-684e-44fd-9c72-c5c3faa9fb1f.jpg?1593095413", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/ca6e9658-684e-44fd-9c72-c5c3faa9fb1f.jpg?1593095413"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Silverstrike", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f27b92a-cde9-41bc-9b23-d83b74b167d4.jpg?1576383889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f27b92a-cde9-41bc-9b23-d83b74b167d4.jpg?1576383889"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sip of Hemlock", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/22051427-9b2a-4571-8c9f-ee84d8d0e4d1.jpg?1562815635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/22051427-9b2a-4571-8c9f-ee84d8d0e4d1.jpg?1562815635"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skywhaler's Shot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54dd4948-dc79-4fe5-b4a0-fb257058f9dd.jpg?1576381006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54dd4948-dc79-4fe5-b4a0-fb257058f9dd.jpg?1576381006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8ff06c7d-5e78-4bcf-864b-34487f6555b2.jpg?1562088317", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8ff06c7d-5e78-4bcf-864b-34487f6555b2.jpg?1562088317"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughter Pact", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/42696fdb-de1f-44ae-bef3-b6af068958d0.jpg?1562908356", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/42696fdb-de1f-44ae-bef3-b6af068958d0.jpg?1562908356"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slaughter Pact", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc8475bd-bdd4-421c-ace7-c6262f7405ce.jpg?1562932879", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc8475bd-bdd4-421c-ace7-c6262f7405ce.jpg?1562932879"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Slay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/eccda747-2680-4793-8a13-35e49b4de12f.jpg?1562944937", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/eccda747-2680-4793-8a13-35e49b4de12f.jpg?1562944937"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slingbow Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/def592b9-9d8b-4e2d-9b52-e1bc9f4bd019.jpg?1562297661", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/def592b9-9d8b-4e2d-9b52-e1bc9f4bd019.jpg?1562297661"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ff799e40-fd40-4f6a-8fa8-c22d77476168.jpg?1561854361", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ff799e40-fd40-4f6a-8fa8-c22d77476168.jpg?1561854361"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/2698f01a-8574-4ae8-9441-a4361b1c29c6.jpg?1562702095", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/2698f01a-8574-4ae8-9441-a4361b1c29c6.jpg?1562702095"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/14f165ad-cfe6-4a5d-8073-a70969494855.jpg?1562595916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/14f165ad-cfe6-4a5d-8073-a70969494855.jpg?1562595916"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9c103163-31b7-4d25-aa2c-02ca082ee1bf.jpg?1604193448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9c103163-31b7-4d25-aa2c-02ca082ee1bf.jpg?1604193448"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/766aad27-e987-45ab-82aa-e5f44fcc34ef.jpg?1562922992", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/766aad27-e987-45ab-82aa-e5f44fcc34ef.jpg?1562922992"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/1405bb2e-2204-43ab-82a3-5d0c8537325a.jpg?1562782881", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/1405bb2e-2204-43ab-82a3-5d0c8537325a.jpg?1562782881"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0103f3b1-88c2-4cbf-a67c-49420f92970f.jpg?1562825351", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0103f3b1-88c2-4cbf-a67c-49420f92970f.jpg?1562825351"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Smite the Monstrous", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/2969e9b5-64d3-401f-9878-32ec283680ab.jpg?1562633742", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/2969e9b5-64d3-401f-9878-32ec283680ab.jpg?1562633742"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Smother", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/09b4deea-c077-46ab-898f-41b3907ecf33.jpg?1562281733", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/09b4deea-c077-46ab-898f-41b3907ecf33.jpg?1562281733"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Smother", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/a/9a8321af-d667-44e7-8c03-3957286604b9.jpg?1562931422", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/a/9a8321af-d667-44e7-8c03-3957286604b9.jpg?1562931422"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Snuff Out", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db8b3560-4940-40cc-9797-f909dcb1519b.jpg?1562090223", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db8b3560-4940-40cc-9797-f909dcb1519b.jpg?1562090223"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Snuff Out", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/8/18a3cca1-e50e-49b6-9e1a-f86640e3b177.jpg?1562379436", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/8/18a3cca1-e50e-49b6-9e1a-f86640e3b177.jpg?1562379436"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soul Reap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2a129e2-bed5-4ee7-b223-851452f72682.jpg?1562942827", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2a129e2-bed5-4ee7-b223-851452f72682.jpg?1562942827"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soul Rend", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fa084e1-05c2-4691-b9fe-3e3c717e5c9d.jpg?1562720249", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fa084e1-05c2-4691-b9fe-3e3c717e5c9d.jpg?1562720249"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spark Harvest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/2013a138-f8e2-4a67-91e8-759288d985a7.jpg?1557576556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/2013a138-f8e2-4a67-91e8-759288d985a7.jpg?1557576556"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spiteful Blow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fafaa798-e534-4cd0-b369-9e767a02fe3d.jpg?1593095848", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fafaa798-e534-4cd0-b369-9e767a02fe3d.jpg?1593095848"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spread the Sickness", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de42a771-4f5c-4295-b070-8cb857a0279e.jpg?1562615413", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de42a771-4f5c-4295-b070-8cb857a0279e.jpg?1562615413"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Strangling Soot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/6723e552-baf5-4b6a-8af6-843fd8597f6c.jpg?1562916570", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/6723e552-baf5-4b6a-8af6-843fd8597f6c.jpg?1562916570"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stream of Acid", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbbf00b3-2a1b-4ad3-8a5b-deec9e08a231.jpg?1562875294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbbf00b3-2a1b-4ad3-8a5b-deec9e08a231.jpg?1562875294"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Sultai Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/993c9028-9b1b-4903-81b2-3cf4f37b7229.jpg?1562790829", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/993c9028-9b1b-4903-81b2-3cf4f37b7229.jpg?1562790829"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sultai Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c72495e-3c03-4dff-b671-47764af5058d.jpg?1562701596", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c72495e-3c03-4dff-b671-47764af5058d.jpg?1562701596"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sungold Barrage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee507688-9890-47c4-bb04-43c51eb48e22.jpg?1634348527", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee507688-9890-47c4-bb04-43c51eb48e22.jpg?1634348527"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Surge of Righteousness", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/114366f3-237f-4f96-b644-5bd82d97b18b.jpg?1562782657", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/114366f3-237f-4f96-b644-5bd82d97b18b.jpg?1562782657"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/cec3a260-6c50-401d-a0ff-bf49a973e1a1.jpg?1562943805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/cec3a260-6c50-401d-a0ff-bf49a973e1a1.jpg?1562943805"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Swat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/947b8923-d9d6-4dd8-928b-91be9105ffb4.jpg?1562863743", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/947b8923-d9d6-4dd8-928b-91be9105ffb4.jpg?1562863743"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swift Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/904cb2f5-eb62-4416-8236-d2fbeadf1dc4.jpg?1562031231", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/904cb2f5-eb62-4416-8236-d2fbeadf1dc4.jpg?1562031231"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Swift Response", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a90c1ad0-83bd-471c-8d4c-e65bc2abaa18.jpg?1594735305", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a90c1ad0-83bd-471c-8d4c-e65bc2abaa18.jpg?1594735305"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Take Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66fbde22-d98d-4f12-b4d8-1bad2a9878b2.jpg?1562302645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66fbde22-d98d-4f12-b4d8-1bad2a9878b2.jpg?1562302645"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Terashi's Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/c/bc5fa34b-95c6-4e02-9e15-3f595f744741.jpg?1562879427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/c/bc5fa34b-95c6-4e02-9e15-3f595f744741.jpg?1562879427"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terminal Agony", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3ddb6d98-3a3a-4332-a64e-97aec71777a4.jpg?1626103523", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3ddb6d98-3a3a-4332-a64e-97aec71777a4.jpg?1626103523"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/a/8af2d815-d8b2-42ff-9889-acbe77a42583.jpg?1593814672", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/a/8af2d815-d8b2-42ff-9889-acbe77a42583.jpg?1593814672"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dc8acab8-4469-4baa-af2f-a3f49b841a55.jpg?1562644597", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dc8acab8-4469-4baa-af2f-a3f49b841a55.jpg?1562644597"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/190ca502-672d-4cc0-b6e0-b9de517058d0.jpg?1562900286", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/190ca502-672d-4cc0-b6e0-b9de517058d0.jpg?1562900286"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/54f3c523-09dc-4f2a-9bd9-7614e061de28.jpg?1655823700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/54f3c523-09dc-4f2a-9bd9-7614e061de28.jpg?1655823700"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Terminate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfd77920-7dbb-4673-9317-095ce9483878.jpg?1575602242", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfd77920-7dbb-4673-9317-095ce9483878.jpg?1575602242"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d1ccc3b-a6bd-4dc8-b7ba-99172d612106.jpg?1562546519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d1ccc3b-a6bd-4dc8-b7ba-99172d612106.jpg?1562546519"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f41651db-619a-4ab4-86cf-a0d32297dbdf.jpg?1562163040", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f41651db-619a-4ab4-86cf-a0d32297dbdf.jpg?1562163040"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/1/21004958-2c7e-4a55-bc80-411c4d780106.jpg?1559591536", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/1/21004958-2c7e-4a55-bc80-411c4d780106.jpg?1559591536"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba9d4863-75f2-4894-8033-e4ffebe0547a.jpg?1561757930", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba9d4863-75f2-4894-8033-e4ffebe0547a.jpg?1561757930"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Tezzeret's Betrayal", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/d/9d71efa6-5de8-476f-86ce-0790956e574f.jpg?1562932177", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/d/9d71efa6-5de8-476f-86ce-0790956e574f.jpg?1562932177"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thornado", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/a/eadffd6b-d707-4fc5-a600-44eb9124b195.jpg?1615475425", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/a/eadffd6b-d707-4fc5-a600-44eb9124b195.jpg?1615475425"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Tidy Conclusion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/f/dfcf6849-4fac-41b9-8e70-dc77c4562a42.jpg?1576381900", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/f/dfcf6849-4fac-41b9-8e70-dc77c4562a42.jpg?1576381900"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Trip Wire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4eb1e16f-002e-4a81-ba41-cfe41f3a9071.jpg?1634292196", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4eb1e16f-002e-4a81-ba41-cfe41f3a9071.jpg?1634292196"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Triumphant Surge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/5/75d6eb18-a49d-4fa5-a333-78aafbc4abcb.jpg?1581479273", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/5/75d6eb18-a49d-4fa5-a333-78aafbc4abcb.jpg?1581479273"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tyrant's Scorn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7e2708c-2824-4925-b529-d625deb77924.jpg?1557577324", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7e2708c-2824-4925-b529-d625deb77924.jpg?1557577324"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ultimate Price", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b41f7cf3-bd76-4184-b694-f565aa5cf3a4.jpg?1562791851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b41f7cf3-bd76-4184-b694-f565aa5cf3a4.jpg?1562791851"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Ultimate Price", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2b4912a-83a2-4870-8fac-81fa79da2830.jpg?1562793639", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2b4912a-83a2-4870-8fac-81fa79da2830.jpg?1562793639"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ultimate Price", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/334e3ffc-a4dc-405c-b6e4-7182f28241fe.jpg?1562639743", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/334e3ffc-a4dc-405c-b6e4-7182f28241fe.jpg?1562639743"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Unforge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d369a3da-3424-4984-a50a-59fd9c3d689e.jpg?1562639761", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d369a3da-3424-4984-a50a-59fd9c3d689e.jpg?1562639761"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unholy Hunger", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/5994b7b0-3bca-480b-b265-ed269f15c17e.jpg?1562021369", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/5994b7b0-3bca-480b-b265-ed269f15c17e.jpg?1562021369"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Unlicensed Disintegration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16ad8f86-7860-4896-a161-07bf347bbd5b.jpg?1576382889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16ad8f86-7860-4896-a161-07bf347bbd5b.jpg?1576382889"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Unlicensed Disintegration", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/74843584-d6b1-4ee6-bedb-999ab0a42bb9.jpg?1562636815", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/74843584-d6b1-4ee6-bedb-999ab0a42bb9.jpg?1562636815"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Valorous Stance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0e6b9a3b-8a19-4094-8dbb-08a0a9ca04a0.jpg?1643587276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0e6b9a3b-8a19-4094-8dbb-08a0a9ca04a0.jpg?1643587276"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Valorous Stance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65998e94-15a0-41f1-8288-730b957f81df.jpg?1562825972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65998e94-15a0-41f1-8288-730b957f81df.jpg?1562825972"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Valorous Stance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f482213a-4e3e-4e13-82a1-88e7d6c4ba2c.jpg?1561758433", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f482213a-4e3e-4e13-82a1-88e7d6c4ba2c.jpg?1561758433"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Vanquish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27bae717-56c0-4028-b1e7-a445d6a57176.jpg?1562875950", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27bae717-56c0-4028-b1e7-a445d6a57176.jpg?1562875950"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Foul", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fdcec06-e33c-4737-b81e-b156d6e3fd77.jpg?1562821391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fdcec06-e33c-4737-b81e-b156d6e3fd77.jpg?1562821391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Weak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c15852d4-2c79-4841-bb65-6661d88fdfab.jpg?1604196688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c15852d4-2c79-4841-bb65-6661d88fdfab.jpg?1604196688"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Weak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e599ed0b-4b3b-4341-b6ac-7fdfdc6799a3.jpg?1562565757", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e599ed0b-4b3b-4341-b6ac-7fdfdc6799a3.jpg?1562565757"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vendetta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/039fc76d-3b7e-4329-a997-07c25509e421.jpg?1562700700", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/039fc76d-3b7e-4329-a997-07c25509e421.jpg?1562700700"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Vendetta", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/67ced38e-0f33-4bda-8e18-09f6ac03a3d7.jpg?1562381344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/67ced38e-0f33-4bda-8e18-09f6ac03a3d7.jpg?1562381344"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/011b9836-fee4-4e83-add7-5e13cb1275d6.jpg?1562231350", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/011b9836-fee4-4e83-add7-5e13cb1275d6.jpg?1562231350"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a882fbcc-b2b9-44f3-b5cc-56759879f473.jpg?1562257514", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a882fbcc-b2b9-44f3-b5cc-56759879f473.jpg?1562257514"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/2/3209ee48-4485-44fc-b71d-cd6241674e64.jpg?1562906693", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/2/3209ee48-4485-44fc-b71d-cd6241674e64.jpg?1562906693"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c91c249b-157c-4f1d-8171-29d1e75b1c9f.jpg?1562447828", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c91c249b-157c-4f1d-8171-29d1e75b1c9f.jpg?1562447828"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Venomous Vines", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db10359c-1ea8-4453-bc01-f638ad20a5ec.jpg?1562632255", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db10359c-1ea8-4453-bc01-f638ad20a5ec.jpg?1562632255"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/terror3.json b/web/public/mtg/jsons/terror3.json deleted file mode 100644 index 463fb4a7..00000000 --- a/web/public/mtg/jsons/terror3.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": false, "data": [{"name": "Victim of Night", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee4c6135-eee9-43ec-bbe8-76912352dcac.jpg?1562839346", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee4c6135-eee9-43ec-bbe8-76912352dcac.jpg?1562839346"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2a1bfefd-dae8-49e9-9d56-cc852e3dc93b.jpg?1562904968", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2a1bfefd-dae8-49e9-9d56-cc852e3dc93b.jpg?1562904968"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e4978ecd-3c2e-49e2-98e0-0172887e4319.jpg?1628337210", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e4978ecd-3c2e-49e2-98e0-0172887e4319.jpg?1628337210"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "draft_innovation"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97aeb745-5b98-4240-a1a8-861c06d616cc.jpg?1562925629", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97aeb745-5b98-4240-a1a8-861c06d616cc.jpg?1562925629"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/f/6fef34ec-f728-4919-9254-576ed889a654.jpg?1561757378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/f/6fef34ec-f728-4919-9254-576ed889a654.jpg?1561757378"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Vindicate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c2d88dd-813a-4cd5-9a6a-ca6f80564078.jpg?1561756842", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c2d88dd-813a-4cd5-9a6a-ca6f80564078.jpg?1561756842"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Violet Pall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bdfd0fa3-37d2-403e-99fe-8c9e57515e9d.jpg?1562881062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bdfd0fa3-37d2-403e-99fe-8c9e57515e9d.jpg?1562881062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vraska's Stoneglare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27fc4db6-a5f5-4254-ae64-c8eaf2c98030.jpg?1572894308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27fc4db6-a5f5-4254-ae64-c8eaf2c98030.jpg?1572894308"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Walk the Plank", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/0038ac6a-318f-44fb-bb64-7ae172c4aca3.jpg?1562549640", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/0038ac6a-318f-44fb-bb64-7ae172c4aca3.jpg?1562549640"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Walk the Plank", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d7f3b24f-e2ec-4405-b6f5-147292063b0a.jpg?1562935396", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d7f3b24f-e2ec-4405-b6f5-147292063b0a.jpg?1562935396"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Wallop", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/5/45ce5126-e7b1-41ab-9e56-1e12927c4d27.jpg?1562909144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/5/45ce5126-e7b1-41ab-9e56-1e12927c4d27.jpg?1562909144"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Weed Strangle", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/1/c1f7fb79-19a8-483a-bf91-e687f7da4e9c.jpg?1562366513", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/1/c1f7fb79-19a8-483a-bf91-e687f7da4e9c.jpg?1562366513"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wing Snare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d37ba325-5a14-473b-9def-6a4660a50d7a.jpg?1562248658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d37ba325-5a14-473b-9def-6a4660a50d7a.jpg?1562248658"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Wing Snare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19116d5d-8f2d-4e85-849d-1fbaa67e8cfd.jpg?1562862328", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19116d5d-8f2d-4e85-849d-1fbaa67e8cfd.jpg?1562862328"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Winnow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/6/d61748dd-4010-47da-8717-ca0147877057.jpg?1562937982", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/6/d61748dd-4010-47da-8717-ca0147877057.jpg?1562937982"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Witherbloom Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87d5e94b-0b35-4efd-9158-1767dcaea38c.jpg?1624740473", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87d5e94b-0b35-4efd-9158-1767dcaea38c.jpg?1624740473"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wrecking Ball", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/1182e0cf-475e-4cb9-a00a-c9a4032f51e4.jpg?1593273836", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/1182e0cf-475e-4cb9-a00a-c9a4032f51e4.jpg?1593273836"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wretched Banquet", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bdaf55b-2de3-4c8a-90ae-9c88c9d00fd7.jpg?1562800483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bdaf55b-2de3-4c8a-90ae-9c88c9d00fd7.jpg?1562800483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "You Are Already Dead", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/768727ce-4f84-4527-8d69-3c9b7877b748.jpg?1654567474", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/768727ce-4f84-4527-8d69-3c9b7877b748.jpg?1654567474"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/wrath1.json b/web/public/mtg/jsons/wrath1.json deleted file mode 100644 index 267e34b0..00000000 --- a/web/public/mtg/jsons/wrath1.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": true, "data": [{"name": "Aetherize", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33303859-c6e0-4ebd-bb5f-44be7f5d7459.jpg?1561821990", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33303859-c6e0-4ebd-bb5f-44be7f5d7459.jpg?1561821990"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Aetherspouts", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46f1b48f-6528-46bd-a384-2358af25e500.jpg?1562786278", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46f1b48f-6528-46bd-a384-2358af25e500.jpg?1562786278"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Aggravate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/999f40a7-b723-42e1-83c1-f45a72a26dd4.jpg?1592709004", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/999f40a7-b723-42e1-83c1-f45a72a26dd4.jpg?1592709004"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Akroma's Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5e33aaf7-7490-4b64-a966-82fbf7ca8686.jpg?1562917166", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5e33aaf7-7490-4b64-a966-82fbf7ca8686.jpg?1562917166"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Akroma's Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4f112edd-1d2f-45ad-aaeb-6c0934d24c1f.jpg?1570203942", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4f112edd-1d2f-45ad-aaeb-6c0934d24c1f.jpg?1570203942"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Alpha Brawl", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2ec168a-3e4f-4527-901a-bc28cc28d125.jpg?1562949045", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2ec168a-3e4f-4527-901a-bc28cc28d125.jpg?1562949045"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/0/90795891-5e67-47c0-8d52-a5e5c5a9ef81.jpg?1562821425", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/0/90795891-5e67-47c0-8d52-a5e5c5a9ef81.jpg?1562821425"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/dedcbd3b-7e30-44cf-b9b7-1bb32c11ef67.jpg?1655825935", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/dedcbd3b-7e30-44cf-b9b7-1bb32c11ef67.jpg?1655825935"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec898bc9-9ab8-4394-8c4c-8d652f313919.jpg?1607042506", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec898bc9-9ab8-4394-8c4c-8d652f313919.jpg?1607042506"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Anger of the Gods", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88f2ca85-de02-4471-b90f-d13ccb93c8bb.jpg?1597250046", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88f2ca85-de02-4471-b90f-d13ccb93c8bb.jpg?1597250046"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Arcbond", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9bc397d1-50a8-46cd-98b2-7104f2241420.jpg?1562828028", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9bc397d1-50a8-46cd-98b2-7104f2241420.jpg?1562828028"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Arms of Hadar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db1fd431-8f6d-4ca5-bc0c-53881c500da1.jpg?1653767219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db1fd431-8f6d-4ca5-bc0c-53881c500da1.jpg?1653767219"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Austere Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bef16a71-5ed2-4f30-a844-c02a0754f679.jpg?1562853529", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bef16a71-5ed2-4f30-a844-c02a0754f679.jpg?1562853529"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Austere Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8ee73fe8-d52b-43bb-ab91-5545192be676.jpg?1562357897", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8ee73fe8-d52b-43bb-ab91-5545192be676.jpg?1562357897"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Austere Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbbf55bc-6bb3-458a-8cf0-1f603bb2acb3.jpg?1562939169", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbbf55bc-6bb3-458a-8cf0-1f603bb2acb3.jpg?1562939169"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Baki's Curse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3261b4c-7963-4ca0-875d-77b7c8571b3f.jpg?1562588703", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3261b4c-7963-4ca0-875d-77b7c8571b3f.jpg?1562588703"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Barrage of Boulders", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2eb1a9f7-32ba-48fd-a7f7-788b0ec052c6.jpg?1562784418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2eb1a9f7-32ba-48fd-a7f7-788b0ec052c6.jpg?1562784418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Begin Anew", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d885aedb-2c65-4099-af2e-0a540caf8d33.jpg?1645417110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d885aedb-2c65-4099-af2e-0a540caf8d33.jpg?1645417110"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Bite of the Black Rose", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/254d1363-1204-41d2-9799-34484a3eb211.jpg?1562864493", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/254d1363-1204-41d2-9799-34484a3eb211.jpg?1562864493"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Biting Rain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5ac62d2f-6834-4d98-b69d-bd7b5831d981.jpg?1576384359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5ac62d2f-6834-4d98-b69d-bd7b5831d981.jpg?1576384359"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Black Sun's Zenith", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/03bdcf52-50b8-42c0-9665-931d83f5f314.jpg?1562609329", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/03bdcf52-50b8-42c0-9665-931d83f5f314.jpg?1562609329"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Black Sun's Zenith", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/d/dd88131a-2811-4a1f-bb9a-c82e12c1493b.jpg?1561758222", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/d/dd88131a-2811-4a1f-bb9a-c82e12c1493b.jpg?1561758222"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Blasphemous Act", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/0/509ce648-fb76-486d-8b39-183e368b7cb7.jpg?1562830111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/0/509ce648-fb76-486d-8b39-183e368b7cb7.jpg?1562830111"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blazing Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3adc0288-acdf-4a99-9bfb-919cae1aeb69.jpg?1591227065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3adc0288-acdf-4a99-9bfb-919cae1aeb69.jpg?1591227065"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Blazing Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba450179-4591-4e8a-b6ca-66cbef1817f2.jpg?1543675486", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba450179-4591-4e8a-b6ca-66cbef1817f2.jpg?1543675486"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bloodline Culling", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/a/fac827f7-a587-4adf-8408-2d9ccd9c1343.jpg?1634349575", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/a/fac827f7-a587-4adf-8408-2d9ccd9c1343.jpg?1634349575"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Blood Money", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d45c18c-b8eb-465c-8dfc-fd6da73e25b5.jpg?1653442044", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d45c18c-b8eb-465c-8dfc-fd6da73e25b5.jpg?1653442044"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Blood on the Snow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d8606f40-0af4-443b-a413-a88dc3e8f32e.jpg?1631047655", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d8606f40-0af4-443b-a413-a88dc3e8f32e.jpg?1631047655"}, "reprint": false, "frame_effects": ["snow"], "digital": false, "set_type": "expansion"}, {"name": "Boiling Earth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cdaab44c-4ce1-43fb-915c-c687fe8559ce.jpg?1562943558", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cdaab44c-4ce1-43fb-915c-c687fe8559ce.jpg?1562943558"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Bonfire of the Damned", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e60610fe-891d-46de-b556-d03b637dccec.jpg?1592709031", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e60610fe-891d-46de-b556-d03b637dccec.jpg?1592709031"}, "reprint": false, "frame_effects": ["miracle"], "digital": false, "set_type": "expansion"}, {"name": "Bontu's Last Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b4d0102-c0d6-4d50-941a-dd1c3575a3a8.jpg?1562791273", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b4d0102-c0d6-4d50-941a-dd1c3575a3a8.jpg?1562791273"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Borrowing the East Wind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/6/96ba9014-d750-4924-aa6f-8b9f421807f9.jpg?1562257056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/6/96ba9014-d750-4924-aa6f-8b9f421807f9.jpg?1562257056"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Breaking Point", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/765ec2c9-8ffe-488a-bebe-e5dd63825a8c.jpg?1562630501", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/765ec2c9-8ffe-488a-bebe-e5dd63825a8c.jpg?1562630501"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath of Darigaaz", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/480bb7e3-df03-454d-ada0-592ef8a4a6f0.jpg?1562909692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/480bb7e3-df03-454d-ada0-592ef8a4a6f0.jpg?1562909692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Breath Weapon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/0174e40a-0ef5-4439-91e6-3fc39f482520.jpg?1653596065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/0174e40a-0ef5-4439-91e6-3fc39f482520.jpg?1653596065"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Burn Down the House", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20ded7af-8086-465e-a980-3099217d324c.jpg?1634350460", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20ded7af-8086-465e-a980-3099217d324c.jpg?1634350460"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Burning of Xinye", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33a1fe45-52d2-4c50-bedc-eee156ab69c8.jpg?1562256064", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33a1fe45-52d2-4c50-bedc-eee156ab69c8.jpg?1562256064"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "By Invitation Only", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46764e49-64da-4a94-b61c-75e006b2c5a9.jpg?1643585907", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46764e49-64da-4a94-b61c-75e006b2c5a9.jpg?1643585907"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Canopy Surge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/e/2e19d68e-7554-4627-a316-beb1f75fa494.jpg?1562904391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/e/2e19d68e-7554-4627-a316-beb1f75fa494.jpg?1562904391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cataclysm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/024ae668-a1ae-4020-89c8-acbd8bd0a691.jpg?1593863070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/024ae668-a1ae-4020-89c8-acbd8bd0a691.jpg?1593863070"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cataclysm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/e/3ed0d87b-1ce8-452b-9558-fa1923407f16.jpg?1559618030", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/e/3ed0d87b-1ce8-452b-9558-fa1923407f16.jpg?1559618030"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Catastrophe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/294d21dc-5c76-4449-936f-9b7541d37c86.jpg?1562903769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/294d21dc-5c76-4449-936f-9b7541d37c86.jpg?1562903769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cave-In", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/440d9d26-f304-467d-af79-914cc65f082e.jpg?1562380418", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/440d9d26-f304-467d-af79-914cc65f082e.jpg?1562380418"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Celestial Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5fd29cd7-9950-49c0-9e71-d6b0f944292c.jpg?1637627823", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5fd29cd7-9950-49c0-9e71-d6b0f944292c.jpg?1637627823"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Cerebral Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77161159-ee2c-485d-8674-d8590ccc62e1.jpg?1562819165", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77161159-ee2c-485d-8674-d8590ccc62e1.jpg?1562819165"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chain Reaction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/614b9df9-c959-4bdb-91c0-75ae60b724e4.jpg?1567754665", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/614b9df9-c959-4bdb-91c0-75ae60b724e4.jpg?1567754665"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Chandra's Flame Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f13b6a7-fa62-4d94-a56c-f2e64c8c1666.jpg?1592518162", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f13b6a7-fa62-4d94-a56c-f2e64c8c1666.jpg?1592518162"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Chandra's Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/7/e761acf6-6618-44cc-8f65-1d7ad7e520fe.jpg?1561758344", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/7/e761acf6-6618-44cc-8f65-1d7ad7e520fe.jpg?1561758344"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Chandra's Ignition", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d4c90de-49aa-43ed-a18a-f7f96268e5eb.jpg?1562027623", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d4c90de-49aa-43ed-a18a-f7f96268e5eb.jpg?1562027623"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cinderclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/5516cf97-805f-4a21-a4c6-2d6e55865336.jpg?1604196918", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/5516cf97-805f-4a21-a4c6-2d6e55865336.jpg?1604196918"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Citywide Bust", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a995200f-1e9d-4ff3-9e04-4a4309e0e09c.jpg?1572892490", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a995200f-1e9d-4ff3-9e04-4a4309e0e09c.jpg?1572892490"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Claws of Wirewood", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b94cd33f-40b6-4b11-97a4-8676ef27631e.jpg?1562533774", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b94cd33f-40b6-4b11-97a4-8676ef27631e.jpg?1562533774"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cleanse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/f/2fbd611b-ac97-4516-bad7-cc9ee4ef74f7.jpg?1591836785", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/f/2fbd611b-ac97-4516-bad7-cc9ee4ef74f7.jpg?1591836785"}, "content_warning": true, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cleansing Nova", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/1/11f1b6cd-d89a-4468-a097-7a54efe22f2c.jpg?1625192921", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/1/11f1b6cd-d89a-4468-a097-7a54efe22f2c.jpg?1625192921"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Cleansing Nova", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5be8eed7-c033-42cc-bd21-4512db7af66c.jpg?1562302239", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5be8eed7-c033-42cc-bd21-4512db7af66c.jpg?1562302239"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Cloudkill", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/c/7c71b2b8-f5ef-4885-9f8d-284fe335d184.jpg?1654365309", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/c/7c71b2b8-f5ef-4885-9f8d-284fe335d184.jpg?1654365309"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Collision of Realms", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/9/49618217-1bbb-498a-a6f0-f269ce7166a6.jpg?1651655330", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/9/49618217-1bbb-498a-a6f0-f269ce7166a6.jpg?1651655330"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Conductive Current", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/43adef3c-87f0-4db1-9fbb-017c96c815ff.jpg?1645416694", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/43adef3c-87f0-4db1-9fbb-017c96c815ff.jpg?1645416694"}, "reprint": false, "digital": true, "set_type": "alchemy"}, {"name": "Consume the Meek", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c94dcaed-55da-41f4-a61f-2a79ef6c1459.jpg?1593095734", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c94dcaed-55da-41f4-a61f-2a79ef6c1459.jpg?1593095734"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Consume the Meek", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/921ebea0-48bf-4338-9e84-2cd06ffe6f4b.jpg?1562706383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/921ebea0-48bf-4338-9e84-2cd06ffe6f4b.jpg?1562706383"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corpse Explosion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/7/c700eff3-138b-4d4c-ba36-58b98986168c.jpg?1650029916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/7/c700eff3-138b-4d4c-ba36-58b98986168c.jpg?1650029916"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Corrosive Gale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/04a13825-ab9b-4ffd-9b59-6198181891b9.jpg?1562875245", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/04a13825-ab9b-4ffd-9b59-6198181891b9.jpg?1562875245"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cosmotronic Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/9/69c5bafa-8cd8-4158-98e0-46dc74c027c0.jpg?1572893121", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/9/69c5bafa-8cd8-4158-98e0-46dc74c027c0.jpg?1572893121"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Cower in Fear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bf2d53b8-7847-4b94-9711-eca29facccba.jpg?1562559508", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bf2d53b8-7847-4b94-9711-eca29facccba.jpg?1562559508"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Crippling Fear", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/d/7d9bd181-b99f-477e-bcfb-9b78cbf51224.jpg?1631047737", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/d/7d9bd181-b99f-477e-bcfb-9b78cbf51224.jpg?1631047737"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crush the Weak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/875a20c2-1d17-46ea-b4d2-3e70bc05aae3.jpg?1631049096", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/875a20c2-1d17-46ea-b4d2-3e70bc05aae3.jpg?1631049096"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crux of Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1d45374-a41b-4b3f-a7c8-3eb5ca767cf6.jpg?1648060698", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1d45374-a41b-4b3f-a7c8-3eb5ca767cf6.jpg?1648060698"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Crux of Fate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3ccea48-ee90-4da8-832d-8c30c98bf1dd.jpg?1623779891", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3ccea48-ee90-4da8-832d-8c30c98bf1dd.jpg?1623779891"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Cry of the Carnarium", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/1/715a14a3-046e-45ca-b943-dd630e5202b7.jpg?1584830546", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/715a14a3-046e-45ca-b943-dd630e5202b7.jpg?1584830546"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Culling Sun", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5ec5a956-c846-46b6-91bd-37e4db542280.jpg?1593272635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5ec5a956-c846-46b6-91bd-37e4db542280.jpg?1593272635"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dakmor Plague", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58b38ef1-5839-4292-91d6-e45698c69a75.jpg?1562915882", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58b38ef1-5839-4292-91d6-e45698c69a75.jpg?1562915882"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Damn", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/f/efeae088-9ac5-4d2f-a15c-d8675a471ac5.jpg?1626095400"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/26c68473-70ca-40ba-b5c6-71ec30f88a2c.jpg?1562568132", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/26c68473-70ca-40ba-b5c6-71ec30f88a2c.jpg?1562568132"}, "reprint": false, "frame_effects": ["colorshifted"], "digital": false, "set_type": "expansion"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/c/dca972d7-fcf8-4ac4-a98b-fffb2fbb4dbc.jpg?1656326586", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/c/dca972d7-fcf8-4ac4-a98b-fffb2fbb4dbc.jpg?1656326586"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/f/7fc1d7db-11a3-4ff9-8d27-1fe401053080.jpg?1615223046", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/f/7fc1d7db-11a3-4ff9-8d27-1fe401053080.jpg?1615223046"}, "reprint": true, "digital": false, "set_type": "box"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c916a119-9eee-440d-90ef-05ab35bf3fbe.jpg?1562935376", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c916a119-9eee-440d-90ef-05ab35bf3fbe.jpg?1562935376"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Damnation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c5823bb-d56d-4bed-ba3f-09bdd93c52dc.jpg?1561757368", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c5823bb-d56d-4bed-ba3f-09bdd93c52dc.jpg?1561757368"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Damning Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5be40c34-6df0-4471-b99b-850ae2be9923.jpg?1650406359", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5be40c34-6df0-4471-b99b-850ae2be9923.jpg?1650406359"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/a/2aa98fca-972b-46c2-bdec-6ace35c988d5.jpg?1562610835", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/a/2aa98fca-972b-46c2-bdec-6ace35c988d5.jpg?1562610835"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/b/5bf85d00-52cc-4594-b4fd-5ec424210524.jpg?1623592427", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/b/5bf85d00-52cc-4594-b4fd-5ec424210524.jpg?1623592427"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/e/aea87800-6725-4399-b489-651637e1804a.jpg?1561757821", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/e/aea87800-6725-4399-b489-651637e1804a.jpg?1561757821"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Day of Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6ba873f7-a7a4-44aa-84a6-44501424dc7a.jpg?1561757360", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6ba873f7-a7a4-44aa-84a6-44501424dc7a.jpg?1561757360"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Deadly Tempest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/9/b9ca2810-3c1b-43cf-af1e-078015bf3492.jpg?1562708889", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/9/b9ca2810-3c1b-43cf-af1e-078015bf3492.jpg?1562708889"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Dead of Winter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f480df6d-e227-4ccb-ad6d-a4ad48a360ad.jpg?1562201599", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f480df6d-e227-4ccb-ad6d-a4ad48a360ad.jpg?1562201599"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Deafening Clarion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e115a81-001d-4e17-98af-6a63f2b0967f.jpg?1572893584", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e115a81-001d-4e17-98af-6a63f2b0967f.jpg?1572893584"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Cloud", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97a0bfb9-859b-4fed-a1c4-1f0924715801.jpg?1562638297", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97a0bfb9-859b-4fed-a1c4-1f0924715801.jpg?1562638297"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Death Frenzy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92096311-a3fa-41fc-b7a9-71ac2310f7fe.jpg?1562790443", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92096311-a3fa-41fc-b7a9-71ac2310f7fe.jpg?1562790443"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decree of Annihilation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73744717-518c-478e-9da9-201c49124f37.jpg?1562530626", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73744717-518c-478e-9da9-201c49124f37.jpg?1562530626"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decree of Pain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1958a07-fc75-41cd-ac45-d92d49587754.jpg?1562536145", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1958a07-fc75-41cd-ac45-d92d49587754.jpg?1562536145"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Decree of Pain", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/3/03c37c68-cccf-4309-80c5-828108b942a4.jpg?1569957295", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/03c37c68-cccf-4309-80c5-828108b942a4.jpg?1569957295"}, "reprint": true, "digital": false, "set_type": "arsenal"}, {"name": "Delayed Blast Fireball", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e59903e3-a344-4218-9d41-8b19a9bc8311.jpg?1654082475", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e59903e3-a344-4218-9d41-8b19a9bc8311.jpg?1654082475"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Depopulate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c53c1898-9107-4bf8-b249-d0502fb9596d.jpg?1649698259", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c53c1898-9107-4bf8-b249-d0502fb9596d.jpg?1649698259"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Descend upon the Sinful", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/9/c9ff2cbf-a1dc-4cc5-9a5d-8439899d4e87.jpg?1576383726", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/9/c9ff2cbf-a1dc-4cc5-9a5d-8439899d4e87.jpg?1576383726"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Desert Sandstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/588ad2bf-405d-4c36-b485-e415c22f2703.jpg?1562256542", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/588ad2bf-405d-4c36-b485-e415c22f2703.jpg?1562256542"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Destructive Force", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/a/1abde258-08e0-4762-8142-38e08a960f9d.jpg?1562452402", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/a/1abde258-08e0-4762-8142-38e08a960f9d.jpg?1562452402"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Devastate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/f/bfe7c990-a34b-475e-a612-447c22f998d3.jpg?1562930849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/f/bfe7c990-a34b-475e-a612-447c22f998d3.jpg?1562930849"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devastating Dreams", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9fffeed0-a5ea-47ac-a7a4-0cc3bb1d408a.jpg?1562631212", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9fffeed0-a5ea-47ac-a7a4-0cc3bb1d408a.jpg?1562631212"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Devastation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/1/71cce019-162c-4969-89ac-1cf94148a032.jpg?1562446865", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/1/71cce019-162c-4969-89ac-1cf94148a032.jpg?1562446865"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Disaster Radius", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/9318ae4a-1084-49d9-b5de-dbe4d80836cb.jpg?1562706406", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/9318ae4a-1084-49d9-b5de-dbe4d80836cb.jpg?1562706406"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Disorder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6d11422-60a9-4386-8e7f-dd7dcdac58d8.jpg?1562246308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6d11422-60a9-4386-8e7f-dd7dcdac58d8.jpg?1562246308"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Disorder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3fa5ec10-dfea-4e6d-8996-553a4a0eb8a4.jpg?1562908220", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3fa5ec10-dfea-4e6d-8996-553a4a0eb8a4.jpg?1562908220"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Divine Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/446ea3a4-206a-4097-87c1-c04bb7812972.jpg?1562829296", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/446ea3a4-206a-4097-87c1-c04bb7812972.jpg?1562829296"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Doomskar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/130ee895-1e5e-4f82-bb66-e1275bac75dd.jpg?1631045641", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/130ee895-1e5e-4f82-bb66-e1275bac75dd.jpg?1631045641"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Do or Die", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05f63cd9-e82b-4cf8-b8ce-f0aa0157692b.jpg?1562896148", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05f63cd9-e82b-4cf8-b8ce-f0aa0157692b.jpg?1562896148"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Draconic Intervention", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/657de246-b9fc-47b1-b932-091e9500bb82.jpg?1624591671", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/657de246-b9fc-47b1-b932-091e9500bb82.jpg?1624591671"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in Sorrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/287c7570-8080-43dc-a586-963e15566446.jpg?1593091908", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/287c7570-8080-43dc-a586-963e15566446.jpg?1593091908"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Drown in Sorrow", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/107cdfa4-da15-4610-9b72-e6e6c59deec4.jpg?1630641355", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/107cdfa4-da15-4610-9b72-e6e6c59deec4.jpg?1630641355"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Dry Spell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a142f369-8fdd-4dc8-b5d9-3493455cc588.jpg?1562447357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a142f369-8fdd-4dc8-b5d9-3493455cc588.jpg?1562447357"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Dry Spell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/547c10ea-8ace-4496-8b99-61863c0cec1b.jpg?1562587287", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/547c10ea-8ace-4496-8b99-61863c0cec1b.jpg?1562587287"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Dry Spell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/997ea663-40a1-49b7-80f1-2e1febc1b6fa.jpg?1562587769", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/997ea663-40a1-49b7-80f1-2e1febc1b6fa.jpg?1562587769"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Duneblast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8e3fba5b-b4cd-4050-b9f0-d8eabe82e7d6.jpg?1562701635", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8e3fba5b-b4cd-4050-b9f0-d8eabe82e7d6.jpg?1562701635"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Dwarven Catapult", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/c/8c1c6932-638a-4df7-bf9b-8d921f7484d9.jpg?1562921034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/c/8c1c6932-638a-4df7-bf9b-8d921f7484d9.jpg?1562921034"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8f04dc5c-2764-42d0-974e-6d902222c138.jpg?1562242701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8f04dc5c-2764-42d0-974e-6d902222c138.jpg?1562242701"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/05126438-e806-43e6-bd81-233b629b4a1b.jpg?1562896224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/05126438-e806-43e6-bd81-233b629b4a1b.jpg?1562896224"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/272f65a3-3c0c-417d-b5b6-276a643d643e.jpg?1562446144", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/272f65a3-3c0c-417d-b5b6-276a643d643e.jpg?1562446144"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/1/01bde909-899d-4efc-aac5-57b69fa764db.jpg?1562588740", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/1/01bde909-899d-4efc-aac5-57b69fa764db.jpg?1562588740"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e68ac362-6cdc-48a6-bdd3-4f8ea32add64.jpg?1559591701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e68ac362-6cdc-48a6-bdd3-4f8ea32add64.jpg?1559591701"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Electrickery", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5ed81ee8-d5e4-4127-876e-9bff81f9c726.jpg?1562787062", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5ed81ee8-d5e4-4127-876e-9bff81f9c726.jpg?1562787062"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Endemic Plague", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/15326971-a53b-45f2-8f1d-1b82935286e1.jpg?1562900082", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/15326971-a53b-45f2-8f1d-1b82935286e1.jpg?1562900082"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "End Hostilities", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/0/80a53ed7-a7b7-40d8-9239-cf6f205dbc59.jpg?1562789330", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/0/80a53ed7-a7b7-40d8-9239-cf6f205dbc59.jpg?1562789330"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "End the Festivities", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bec748e6-7245-4a71-aeee-cefed8346948.jpg?1643591154", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bec748e6-7245-4a71-aeee-cefed8346948.jpg?1643591154"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Engulf the Shore", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/2/22909767-a088-49ff-83be-37f967d1da3d.jpg?1576384043", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/2/22909767-a088-49ff-83be-37f967d1da3d.jpg?1576384043"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Essence Pulse", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/3/e3e32d1b-e580-4d09-b285-c8d6c5297896.jpg?1625191655", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/3/e3e32d1b-e580-4d09-b285-c8d6c5297896.jpg?1625191655"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Evacuation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a978fa0a-a52b-4464-afe3-d9f7bc202e63.jpg?1562553159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a978fa0a-a52b-4464-afe3-d9f7bc202e63.jpg?1562553159"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Evacuation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/e/1e1144eb-701d-4716-9051-e8b77480e72d.jpg?1595438077", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/e/1e1144eb-701d-4716-9051-e8b77480e72d.jpg?1595438077"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Evacuation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/c/1cb8ae53-a53f-4a0f-94f7-559aca041797.jpg?1562595927", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/c/1cb8ae53-a53f-4a0f-94f7-559aca041797.jpg?1562595927"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Evaporate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/3/a3c99939-4854-4e28-a142-4cb7f89fe898.jpg?1562587778", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/3/a3c99939-4854-4e28-a142-4cb7f89fe898.jpg?1562587778"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Evincar's Justice", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/d/5d53f46f-b069-4b34-af4b-98143328c078.jpg?1562054236", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/d/5d53f46f-b069-4b34-af4b-98143328c078.jpg?1562054236"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a233a244-7f84-4525-b0ce-e10db0a95385.jpg?1562055894", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a233a244-7f84-4525-b0ce-e10db0a95385.jpg?1562055894"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinction Event", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/8725a869-462b-4381-880a-b4bcc63a655b.jpg?1591226783", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/8725a869-462b-4381-880a-b4bcc63a655b.jpg?1591226783"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Extinguish All Hope", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/6895024f-a04b-46cf-b020-df4487d0c758.jpg?1593095692", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/6895024f-a04b-46cf-b020-df4487d0c758.jpg?1593095692"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Eyeblight Massacre", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d73484db-5fd0-4a01-83fd-54748cc21a0f.jpg?1562044208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d73484db-5fd0-4a01-83fd-54748cc21a0f.jpg?1562044208"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Ezuri's Predation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d9b4ad1-3d5c-43b6-9284-9ec427936dd2.jpg?1562704058", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d9b4ad1-3d5c-43b6-9284-9ec427936dd2.jpg?1562704058"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Falling Star", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2b9983e-20d4-4d12-9e2c-ec6d9a345787.jpg?1562861838", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2b9983e-20d4-4d12-9e2c-ec6d9a345787.jpg?1562861838"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/5/a56410a7-6f99-4bdf-9385-f23571c263c3.jpg?1562929852", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/5/a56410a7-6f99-4bdf-9385-f23571c263c3.jpg?1562929852"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Famine", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d6c10ca-f6d6-4322-aa17-7e874cb10bb1.jpg?1562257044", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d6c10ca-f6d6-4322-aa17-7e874cb10bb1.jpg?1562257044"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Farewell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1068723-d1ef-4007-97d9-b10dccdbade4.jpg?1654566260", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1068723-d1ef-4007-97d9-b10dccdbade4.jpg?1654566260"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Farewell", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98c664bc-9585-47a7-9514-b3e30a4e1b59.jpg?1654569820", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98c664bc-9585-47a7-9514-b3e30a4e1b59.jpg?1654569820"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Fated Retribution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8158b330-2868-4147-907e-4d86e44cfaad.jpg?1593091437", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8158b330-2868-4147-907e-4d86e44cfaad.jpg?1593091437"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fault Line", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/a/cab4fd0e-9f84-4628-92a7-858ad8064531.jpg?1562937807", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/a/cab4fd0e-9f84-4628-92a7-858ad8064531.jpg?1562937807"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Feast of Succession", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac83f97d-c8c9-480c-a32c-918035673ab4.jpg?1608909745", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac83f97d-c8c9-480c-a32c-918035673ab4.jpg?1608909745"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Fell the Mighty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4e999d3-c2d7-47dc-81ad-a2baf6cc4757.jpg?1561960243", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4e999d3-c2d7-47dc-81ad-a2baf6cc4757.jpg?1561960243"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Festergloom", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/3/f3125137-bd18-488e-b45e-6fc23828c5bd.jpg?1562796922", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/3/f3125137-bd18-488e-b45e-6fc23828c5bd.jpg?1562796922"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Festering March", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/c/2c34e6aa-0414-45ba-b6eb-1ac4255d7de8.jpg?1562903995", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/c/2c34e6aa-0414-45ba-b6eb-1ac4255d7de8.jpg?1562903995"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Cannonade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/664d21c9-4b6c-4797-845f-7bca79c2b76b.jpg?1562556766", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/664d21c9-4b6c-4797-845f-7bca79c2b76b.jpg?1562556766"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fiery Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b61c9bc-16e8-417f-99e7-8bd83d4666c5.jpg?1562706203", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b61c9bc-16e8-417f-99e7-8bd83d4666c5.jpg?1562706203"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Fiery Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/c/4c454a20-8ec8-41d9-b9c3-acaa510d050b.jpg?1593559583", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/c/4c454a20-8ec8-41d9-b9c3-acaa510d050b.jpg?1593559583"}, "reprint": true, "digital": false, "set_type": "spellbook"}, {"name": "Fight to the Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/5552ca9b-0245-4f91-9646-a5b5443863a2.jpg?1562641354", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/5552ca9b-0245-4f91-9646-a5b5443863a2.jpg?1562641354"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Final Judgment", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2503e136-031f-498a-b042-4077baebe8f8.jpg?1562876056", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2503e136-031f-498a-b042-4077baebe8f8.jpg?1562876056"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Final Revels", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99f3744a-71c4-4a54-9e1c-92420526b792.jpg?1562359766", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99f3744a-71c4-4a54-9e1c-92420526b792.jpg?1562359766"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Firespout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/3/13454f69-1458-4c03-ab02-bd697a32eb17.jpg?1562826991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/3/13454f69-1458-4c03-ab02-bd697a32eb17.jpg?1562826991"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Firespout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fecd098-bbf2-44f1-b9f1-7b93ea660880.jpg?1559966438", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fecd098-bbf2-44f1-b9f1-7b93ea660880.jpg?1559966438"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Fire Tempest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/92334ebe-3d7a-46de-8b91-931e5d56a5a5.jpg?1562447336", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/92334ebe-3d7a-46de-8b91-931e5d56a5a5.jpg?1562447336"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Flamebreak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e1f06f-7c87-4da8-b339-e571e391cab1.jpg?1562637920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e1f06f-7c87-4da8-b339-e571e391cab1.jpg?1562637920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flames of the Raze-Boar", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/6/16957271-12bb-4031-b476-f7678b753ae3.jpg?1584830878", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/6/16957271-12bb-4031-b476-f7678b753ae3.jpg?1584830878"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flame Sweep", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/e/8e489d6c-2eb2-4914-ae71-c9da55b51d0b.jpg?1586187261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/e/8e489d6c-2eb2-4914-ae71-c9da55b51d0b.jpg?1586187261"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "promo"}, {"name": "Flame Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e069d90a-e7d9-4967-a872-0dd8a0a9934a.jpg?1562597824", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e069d90a-e7d9-4967-a872-0dd8a0a9934a.jpg?1562597824"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Flaying Tendrils", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77899cb2-4d87-4c2d-99ae-1ae75bc5dc86.jpg?1562918962", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77899cb2-4d87-4c2d-99ae-1ae75bc5dc86.jpg?1562918962"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Flaying Tendrils", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10bf8dbf-ae2e-41cd-904c-84b9cca14c27.jpg?1575936034", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10bf8dbf-ae2e-41cd-904c-84b9cca14c27.jpg?1575936034"}, "reprint": true, "frame_effects": ["devoid"], "digital": false, "set_type": "promo"}, {"name": "Flowstone Slide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/c/ec7b02e1-0a20-4247-ae2a-056c5356f168.jpg?1562632691", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/c/ec7b02e1-0a20-4247-ae2a-056c5356f168.jpg?1562632691"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Forced March", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36eae0e1-7100-449d-a259-7abfcd429117.jpg?1562379925", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36eae0e1-7100-449d-a259-7abfcd429117.jpg?1562379925"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Fumigate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f00f27a7-9e92-4fbf-baa8-f47a5eee48a6.jpg?1576380863", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f00f27a7-9e92-4fbf-baa8-f47a5eee48a6.jpg?1576380863"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gale Force", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/26c5c233-a373-4ac4-9b99-81ed97df1f9b.jpg?1562758454", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/26c5c233-a373-4ac4-9b99-81ed97df1f9b.jpg?1562758454"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gates Ablaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/b/2b574b44-01e1-4197-99bd-57e54aebc5ff.jpg?1584830891", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/b/2b574b44-01e1-4197-99bd-57e54aebc5ff.jpg?1584830891"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Golden Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88bb420a-8bf1-4504-b1b5-2d929be978be.jpg?1555040232", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88bb420a-8bf1-4504-b1b5-2d929be978be.jpg?1555040232"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Golgari Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/8/48fce388-eefc-4234-8dd9-1260c1ba97eb.jpg?1562785737", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/8/48fce388-eefc-4234-8dd9-1260c1ba97eb.jpg?1562785737"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Gruul Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/2/9235afe5-0a6b-43c2-921c-18524cf032f1.jpg?1561836885", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/2/9235afe5-0a6b-43c2-921c-18524cf032f1.jpg?1561836885"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Guan Yu's 1,000-Li March", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/f/8fa7526a-7a4e-4b3d-b96e-91f2bbf1c7bd.jpg?1562257048", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/f/8fa7526a-7a4e-4b3d-b96e-91f2bbf1c7bd.jpg?1562257048"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Hail Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/7/a7e9d786-4e9b-447b-a5dc-ca117c4961c5.jpg?1562769694", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/7/a7e9d786-4e9b-447b-a5dc-ca117c4961c5.jpg?1562769694"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hallowed Burial", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c42fad4b-caeb-4aa2-9586-cb26bdec56cd.jpg?1562936481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c42fad4b-caeb-4aa2-9586-cb26bdec56cd.jpg?1562936481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Harsh Mercy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b6473b4d-1f59-4216-ace9-f3e5306266fb.jpg?1562937932", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b6473b4d-1f59-4216-ace9-f3e5306266fb.jpg?1562937932"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hazardous Conditions", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/daa9b08b-c56f-480e-874e-069e72d979c8.jpg?1576382835", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/daa9b08b-c56f-480e-874e-069e72d979c8.jpg?1576382835"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hellfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/362f1fe9-20af-434c-9957-7a1a564d89e6.jpg?1592364391", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/362f1fe9-20af-434c-9957-7a1a564d89e6.jpg?1592364391"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hellion Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/6529c92e-c79b-4953-8bd0-50ceae2ce261.jpg?1562704497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/6529c92e-c79b-4953-8bd0-50ceae2ce261.jpg?1562704497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hideous Laughter", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/941fd135-1c5a-4650-8faf-dfa2c93ec8c9.jpg?1562762525", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/941fd135-1c5a-4650-8faf-dfa2c93ec8c9.jpg?1562762525"}, "reprint": false, "digital": false, "set_type": "expansion"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/wrath2.json b/web/public/mtg/jsons/wrath2.json deleted file mode 100644 index ea785118..00000000 --- a/web/public/mtg/jsons/wrath2.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": true, "data": [{"name": "Holy Light", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/3/c3c8a850-bc99-4679-a316-45ecdea696b2.jpg?1592364686", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/3/c3c8a850-bc99-4679-a316-45ecdea696b2.jpg?1592364686"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hostile Takeover", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd7df727-50ea-4ea8-bdb9-d7ef16199d8a.jpg?1649697248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd7df727-50ea-4ea8-bdb9-d7ef16199d8a.jpg?1649697248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hostile Takeover", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8137f134-0148-4df1-b575-ec861192c65c.jpg?1649695787", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8137f134-0148-4df1-b575-ec861192c65c.jpg?1649695787"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Hour of Devastation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d420cc12-cfd7-4007-a0c2-b16c8f63a754.jpg?1562816057", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d420cc12-cfd7-4007-a0c2-b16c8f63a754.jpg?1562816057"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hour of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/1/d12768a5-8ee6-407b-87cf-703e69a0c32a.jpg?1568003844", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/1/d12768a5-8ee6-407b-87cf-703e69a0c32a.jpg?1568003844"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Hour of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/bec7a987-1ef2-40aa-a744-92d90b246df4.jpg?1598913735", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/bec7a987-1ef2-40aa-a744-92d90b246df4.jpg?1598913735"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Howling Gale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/9917cf32-0236-4463-9b1d-e8193754ff97.jpg?1562923428", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/9917cf32-0236-4463-9b1d-e8193754ff97.jpg?1562923428"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Hurly-Burly", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a6e0b97-c2a9-4cd6-957e-87e9b22f7b48.jpg?1562354283", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a6e0b97-c2a9-4cd6-957e-87e9b22f7b48.jpg?1562354283"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0526077-79b6-40ae-8178-8b97c33a53fb.jpg?1562250875", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0526077-79b6-40ae-8178-8b97c33a53fb.jpg?1562250875"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/b/6b4dd722-4729-444a-9d81-e2e93317fbd5.jpg?1562920277", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/b/6b4dd722-4729-444a-9d81-e2e93317fbd5.jpg?1562920277"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7b97904e-80ba-4d65-808a-a528200430f8.jpg?1562446872", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7b97904e-80ba-4d65-808a-a528200430f8.jpg?1562446872"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8cc6db7-1f40-40e3-a7ea-92f1d05e2e3d.jpg?1562926538", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8cc6db7-1f40-40e3-a7ea-92f1d05e2e3d.jpg?1562926538"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Hurricane", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52f5a19f-16e4-4d35-89e1-969ac8202f88.jpg?1559591426", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52f5a19f-16e4-4d35-89e1-969ac8202f88.jpg?1559591426"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Ichor Explosion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b207e2f-4604-43c5-bb35-a877e35ddd81.jpg?1562875473", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b207e2f-4604-43c5-bb35-a877e35ddd81.jpg?1562875473"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Immolating Gyre", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/d/bd0b8aee-fbfb-470f-9ac2-64fce0b4b2fb.jpg?1632261825", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/d/bd0b8aee-fbfb-470f-9ac2-64fce0b4b2fb.jpg?1632261825"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Incandescent Aria", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/7/77e2ed9e-ee1d-440a-94b4-d4b17d30b800.jpg?1649801687", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/7/77e2ed9e-ee1d-440a-94b4-d4b17d30b800.jpg?1649801687"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incandescent Aria", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63167d77-a8d5-468f-9132-a5000c57901a.jpg?1649801714", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63167d77-a8d5-468f-9132-a5000c57901a.jpg?1649801714"}, "reprint": false, "frame_effects": ["showcase"], "digital": false, "set_type": "expansion"}, {"name": "Incendiary Command", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/1/512367a2-f8f6-4c28-9eb3-8e04d2694e4b.jpg?1562348065", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/1/512367a2-f8f6-4c28-9eb3-8e04d2694e4b.jpg?1562348065"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incendiary Sabotage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0ee44ca0-1989-42fa-8024-b6b3e5c3883c.jpg?1576382098", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0ee44ca0-1989-42fa-8024-b6b3e5c3883c.jpg?1576382098"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Incite Rebellion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/628c4a6f-6970-407d-a774-e67bfcdf7ee2.jpg?1561944371", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/628c4a6f-6970-407d-a774-e67bfcdf7ee2.jpg?1561944371"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e411b7b5-ab91-410a-af6d-b3a21a8e3b70.jpg?1562249896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e411b7b5-ab91-410a-af6d-b3a21a8e3b70.jpg?1562249896"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/68d04a75-647f-400f-b0dc-c4544f7db2d4.jpg?1562591355", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/68d04a75-647f-400f-b0dc-c4544f7db2d4.jpg?1562591355"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6b61512-5b24-424c-966f-36b595781e14.jpg?1562934483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6b61512-5b24-424c-966f-36b595781e14.jpg?1562934483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Inferno", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3ac1649a-629b-4598-be09-74a57905753f.jpg?1562544107", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3ac1649a-629b-4598-be09-74a57905753f.jpg?1562544107"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Infest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/b/fb9dd080-5e13-4334-8614-8eec41ae89c2.jpg?1562711058", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/b/fb9dd080-5e13-4334-8614-8eec41ae89c2.jpg?1562711058"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Infest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b7890ba2-aa42-4c8d-bbc1-94fb1d4150fc.jpg?1562938305", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b7890ba2-aa42-4c8d-bbc1-94fb1d4150fc.jpg?1562938305"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Infest", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/9350a640-3f22-478f-b463-6b50cfe766e1.jpg?1561757603", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/9350a640-3f22-478f-b463-6b50cfe766e1.jpg?1561757603"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Inflame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/1/e1efad9a-2fcf-4045-8105-bf9f5e79d12c.jpg?1562640129", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/1/e1efad9a-2fcf-4045-8105-bf9f5e79d12c.jpg?1562640129"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Inflame", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd7bc4c0-9bfd-444b-b22c-f1b7e1426807.jpg?1562933469", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd7bc4c0-9bfd-444b-b22c-f1b7e1426807.jpg?1562933469"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "In Garruk's Wake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/6/f6f2c2f6-d07f-42af-9944-70d3dac8348c.jpg?1562797158", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/6/f6f2c2f6-d07f-42af-9944-70d3dac8348c.jpg?1562797158"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "In Garruk's Wake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/987ace55-8f39-4d5e-8604-9e99d065b4d5.jpg?1561757636", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/987ace55-8f39-4d5e-8604-9e99d065b4d5.jpg?1561757636"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Inundate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/5/d5047c92-2885-4a7b-b51f-f3e093dca5ad.jpg?1562940048", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/5/d5047c92-2885-4a7b-b51f-f3e093dca5ad.jpg?1562940048"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jokulhaups", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/d/6d81e479-45b7-4237-a0eb-95245582e87d.jpg?1562591373", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/d/6d81e479-45b7-4237-a0eb-95245582e87d.jpg?1562591373"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Jokulhaups", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bf0d325-5928-4593-8faa-64ffa414cb48.jpg?1562906050", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bf0d325-5928-4593-8faa-64ffa414cb48.jpg?1562906050"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Jund Charm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7a0ddf00-926c-4283-a8b2-daa02fa99b8b.jpg?1562705657", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7a0ddf00-926c-4283-a8b2-daa02fa99b8b.jpg?1562705657"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaervek's Hex", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/097910fb-7c48-4535-8ffc-b521d08294b0.jpg?1562717830", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/097910fb-7c48-4535-8ffc-b521d08294b0.jpg?1562717830"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kaya's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/e/5ed140c1-752b-4539-88f2-1fa354049b17.jpg?1584831638", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/e/5ed140c1-752b-4539-88f2-1fa354049b17.jpg?1584831638"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Killing Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/3/33de2371-175e-4f8a-9636-35f996e3cf24.jpg?1592708920", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/3/33de2371-175e-4f8a-9636-35f996e3cf24.jpg?1592708920"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Killing Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e40ed6b1-7b92-4ba4-b197-07c3f171a935.jpg?1561758322", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e40ed6b1-7b92-4ba4-b197-07c3f171a935.jpg?1561758322"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Kindle the Carnage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b5dfa91-8f93-41b7-95e9-3374550f1617.jpg?1593273180", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b5dfa91-8f93-41b7-95e9-3374550f1617.jpg?1593273180"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Kindred Dominance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/9794115a-5509-4d9a-b119-d2b61942e87b.jpg?1562617149", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/9794115a-5509-4d9a-b119-d2b61942e87b.jpg?1562617149"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Kirtar's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5a0c4e6-d50e-42e8-b062-8f6ef5950ab7.jpg?1562928851", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5a0c4e6-d50e-42e8-b062-8f6ef5950ab7.jpg?1562928851"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Klauth's Will", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/6/761e1f77-5231-4008-829f-99650b429fb3.jpg?1631585593", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/6/761e1f77-5231-4008-829f-99650b429fb3.jpg?1631585593"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Kozilek's Return", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/72765559-0a78-4aa3-827e-cb4612720991.jpg?1618608556", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/72765559-0a78-4aa3-827e-cb4612720991.jpg?1618608556"}, "reprint": false, "frame_effects": ["devoid"], "digital": false, "set_type": "expansion"}, {"name": "Languish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3593efa-0a05-4061-9f6e-edd0a5ca9a1f.jpg?1562043520", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3593efa-0a05-4061-9f6e-edd0a5ca9a1f.jpg?1562043520"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Last One Standing", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/7/87e2ee71-293d-452b-89a5-b15990186f5b.jpg?1562922467", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/7/87e2ee71-293d-452b-89a5-b15990186f5b.jpg?1562922467"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Lavaball Trap", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0d411e1-5488-4818-95a4-9f637efb9be6.jpg?1562616217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0d411e1-5488-4818-95a4-9f637efb9be6.jpg?1562616217"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Lavalanche", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/4/749981d6-78e7-4f53-80a8-f211e61bd532.jpg?1562642149", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/4/749981d6-78e7-4f53-80a8-f211e61bd532.jpg?1562642149"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Life's Finale", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/f/ffd3fbd2-87c7-4f08-baaa-91d61c1114da.jpg?1562883140", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/f/ffd3fbd2-87c7-4f08-baaa-91d61c1114da.jpg?1562883140"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Living Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/e/0e73682a-56a2-4796-9902-a03aaa3815e8.jpg?1562897968", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/e/0e73682a-56a2-4796-9902-a03aaa3815e8.jpg?1562897968"}, "reprint": true, "digital": true, "set_type": "masters"}, {"name": "Living Death", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c820476-fbda-4073-baf6-51e71f45ed58.jpg?1562054465", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c820476-fbda-4073-baf6-51e71f45ed58.jpg?1562054465"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Living End", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3be0ff69-d9f3-4b81-b02f-1360e4064aff.jpg?1562907448", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3be0ff69-d9f3-4b81-b02f-1360e4064aff.jpg?1562907448"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Magmaquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac85679e-17c7-4525-8eed-979d04feb8f1.jpg?1562558550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac85679e-17c7-4525-8eed-979d04feb8f1.jpg?1562558550"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Magmaquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/1476d42e-6cf8-4612-ae75-b3044d1eebbe.jpg?1605361705", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/1476d42e-6cf8-4612-ae75-b3044d1eebbe.jpg?1605361705"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Make Obsolete", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0a96feb-accc-4c30-8ecd-7d9272ebd45b.jpg?1576381736", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0a96feb-accc-4c30-8ecd-7d9272ebd45b.jpg?1576381736"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Malicious Malfunction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56e7415f-f014-4ece-81db-d8271444d9e9.jpg?1654567289", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56e7415f-f014-4ece-81db-d8271444d9e9.jpg?1654567289"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "March of Souls", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f07dd0f1-b80b-4af0-ae76-907ec55ec7d5.jpg?1562945732", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f07dd0f1-b80b-4af0-ae76-907ec55ec7d5.jpg?1562945732"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Marsh Casualties", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/8/28476d0d-60ea-4d08-890c-0e6502ee3d2a.jpg?1562610765", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/8/28476d0d-60ea-4d08-890c-0e6502ee3d2a.jpg?1562610765"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Martial Coup", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/4201385f-6f74-4e3d-aafb-0eff82cb24c1.jpg?1562800634", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/4201385f-6f74-4e3d-aafb-0eff82cb24c1.jpg?1562800634"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Martyr's Cry", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2c9f463-d1cc-4f11-aad2-d4a4520aa978.jpg?1562949002", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2c9f463-d1cc-4f11-aad2-d4a4520aa978.jpg?1562949002"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Massacre", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f05f5d93-50d1-4aa6-af05-383a6808345b.jpg?1562632742", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f05f5d93-50d1-4aa6-af05-383a6808345b.jpg?1562632742"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mass Calcify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/d/3d24be94-9922-43bb-83c8-98090adc3f32.jpg?1562829041", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/d/3d24be94-9922-43bb-83c8-98090adc3f32.jpg?1562829041"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mephitic Vapors", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/675640ba-37e7-4231-8524-87e8b87ea46f.jpg?1572892991", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/675640ba-37e7-4231-8524-87e8b87ea46f.jpg?1572892991"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Merciless Eviction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9876a4c-714b-47e5-9589-148a623af96a.jpg?1561848654", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9876a4c-714b-47e5-9589-148a623af96a.jpg?1561848654"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mizzium Mortars", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/4/544b2931-0af1-4743-b7c1-91e1dc9294d5.jpg?1654120304", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/4/544b2931-0af1-4743-b7c1-91e1dc9294d5.jpg?1654120304"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Mizzium Mortars", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/4/d4ded88d-2688-4f5e-a8b2-16216cf9c792.jpg?1562793745", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/4/d4ded88d-2688-4f5e-a8b2-16216cf9c792.jpg?1562793745"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mogg Infestation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a91aa6f-cb2f-4aad-9415-bba4eb9b76ca.jpg?1562596412", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a91aa6f-cb2f-4aad-9415-bba4eb9b76ca.jpg?1562596412"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Molten Disaster", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/31e0713c-dbf4-4403-ae69-58fd483e2481.jpg?1562905110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/31e0713c-dbf4-4403-ae69-58fd483e2481.jpg?1562905110"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Mutilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c48bc86b-df0a-4a9c-8aad-c3ffb742a5ff.jpg?1588005547", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c48bc86b-df0a-4a9c-8aad-c3ffb742a5ff.jpg?1588005547"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Mutilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/9/d9cbdabf-18e3-4c0c-b37b-097aaa650066.jpg?1562090221", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/9/d9cbdabf-18e3-4c0c-b37b-097aaa650066.jpg?1562090221"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Mutilate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/1/6189cab3-1963-4590-9cbc-7ab4a693d7c6.jpg?1562629994", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/1/6189cab3-1963-4590-9cbc-7ab4a693d7c6.jpg?1562629994"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Nature's Ruin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/5950f52a-493e-432e-9175-0272c0edb232.jpg?1562446647", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/5950f52a-493e-432e-9175-0272c0edb232.jpg?1562446647"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Nausea", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2569173f-df5e-4518-9fb3-f972210595df.jpg?1580014299", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2569173f-df5e-4518-9fb3-f972210595df.jpg?1580014299"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Nausea", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b71315e3-14c1-433b-97be-2cdf99213bba.jpg?1562246310", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b71315e3-14c1-433b-97be-2cdf99213bba.jpg?1562246310"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Nausea", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/1/a10531d8-fc99-4a2b-94b0-97a25521d725.jpg?1562088332", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/1/a10531d8-fc99-4a2b-94b0-97a25521d725.jpg?1562088332"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Necromantic Selection", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/9462680e-b83d-44cc-a7a6-505fbc69ab41.jpg?1561950631", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/9462680e-b83d-44cc-a7a6-505fbc69ab41.jpg?1561950631"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Needle Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/e/be80dd2d-f595-4d80-84ae-66d3d18e7399.jpg?1562056388", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/e/be80dd2d-f595-4d80-84ae-66d3d18e7399.jpg?1562056388"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Needle Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/9/29a44e44-94b1-4bd2-8e00-6bd2ec07ee4c.jpg?1562446151", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/9/29a44e44-94b1-4bd2-8e00-6bd2ec07ee4c.jpg?1562446151"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Nightmare Unmaking", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/5/95c0ff1b-bd97-4115-8486-62a18bab2610.jpg?1568003505", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/5/95c0ff1b-bd97-4115-8486-62a18bab2610.jpg?1568003505"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Nylea's Intervention", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/a/daa2f963-9d16-4224-b24e-b6a79f2b9d75.jpg?1581480794", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/a/daa2f963-9d16-4224-b24e-b6a79f2b9d75.jpg?1581480794"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Obliterate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cdabde40-2143-4677-b7b4-ea8fbf9b1f25.jpg?1562936357", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cdabde40-2143-4677-b7b4-ea8fbf9b1f25.jpg?1562936357"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oddly Uneven", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/3/830d5f87-1c8b-414a-a91e-4805f5bdca54.jpg?1562922623", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/3/830d5f87-1c8b-414a-a91e-4805f5bdca54.jpg?1562922623"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Olivia's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98893cc1-f502-4ca6-b6c1-e09fa1f4ef7a.jpg?1641600703", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98893cc1-f502-4ca6-b6c1-e09fa1f4ef7a.jpg?1641600703"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Organic Extinction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/e/fea0f8be-c242-49dd-bae3-0b306107ac0b.jpg?1651655197", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/e/fea0f8be-c242-49dd-bae3-0b306107ac0b.jpg?1651655197"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Outbreak", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/4/f43c30d9-23a5-4872-925d-3427f5f57995.jpg?1562940897", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/4/f43c30d9-23a5-4872-925d-3427f5f57995.jpg?1562940897"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Oversimplify", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/56eae179-f850-4661-b3f0-4d10be77ed8a.jpg?1629806259", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/56eae179-f850-4661-b3f0-4d10be77ed8a.jpg?1629806259"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Overwhelming Forces", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/5/c56c7fb4-8b7b-40fc-879c-76cfb5d417b8.jpg?1562257531", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/5/c56c7fb4-8b7b-40fc-879c-76cfb5d417b8.jpg?1562257531"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Part the Veil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/8/d870e607-1607-46f3-bc9f-925d0164bcf9.jpg?1562764693", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/8/d870e607-1607-46f3-bc9f-925d0164bcf9.jpg?1562764693"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Path of Peril", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/0/f0c5449a-d63b-4b22-9432-8f0365c3c4d9.jpg?1643590080", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/0/f0c5449a-d63b-4b22-9432-8f0365c3c4d9.jpg?1643590080"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Perish", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/4/e47ace1d-73de-44aa-a3fe-2e2a21ebec79.jpg?1562057337", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/4/e47ace1d-73de-44aa-a3fe-2e2a21ebec79.jpg?1562057337"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Perplexing Test", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/1/31f2cbcc-d5b8-4659-ae51-e567c555a743.jpg?1625191389", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/1/31f2cbcc-d5b8-4659-ae51-e567c555a743.jpg?1625191389"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Pestilent Haze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/8/08b78aa8-a63a-4aa2-bb82-3fbf2595ed7c.jpg?1594736339", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/8/08b78aa8-a63a-4aa2-bb82-3fbf2595ed7c.jpg?1594736339"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Phyrexian Rebirth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/36b7536d-6b0b-4906-ba88-7fcfe9b854ee.jpg?1562610586", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/36b7536d-6b0b-4906-ba88-7fcfe9b854ee.jpg?1562610586"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Plague Wind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/0/b0d4bd20-7422-45ed-aa76-3ef055c556e7.jpg?1562927896", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/0/b0d4bd20-7422-45ed-aa76-3ef055c556e7.jpg?1562927896"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Planar Despair", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/a/3a92d454-3f23-45bf-921f-25b0da4ce138.jpg?1562908776", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/a/3a92d454-3f23-45bf-921f-25b0da4ce138.jpg?1562908776"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Planar Outburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/f/5f34f930-a7c6-400d-b6e8-b9908e0f0404.jpg?1562917450", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/f/5f34f930-a7c6-400d-b6e8-b9908e0f0404.jpg?1562917450"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Promise of Loyalty", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fc21e7d5-3641-47fe-add0-8becf5173e28.jpg?1625191123", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fc21e7d5-3641-47fe-add0-8becf5173e28.jpg?1625191123"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Psychotic Haze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d3f6cd2-0138-40e7-a975-3f7c68db0d93.jpg?1562630817", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d3f6cd2-0138-40e7-a975-3f7c68db0d93.jpg?1562630817"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Puppet's Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/5/052b743a-456d-49c3-881e-4f30c7645fa5.jpg?1562378946", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/5/052b743a-456d-49c3-881e-4f30c7645fa5.jpg?1562378946"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34ec6e8f-a8be-4efe-8082-d807378066b1.jpg?1562905712", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34ec6e8f-a8be-4efe-8082-d807378066b1.jpg?1562905712"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/a/7afce33f-2ead-4943-9655-bff6eaa9fe6b.jpg?1562241054", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/a/7afce33f-2ead-4943-9655-bff6eaa9fe6b.jpg?1562241054"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/e/de214247-e5e3-4d8f-935a-797218416be1.jpg?1562448294", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/e/de214247-e5e3-4d8f-935a-797218416be1.jpg?1562448294"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/8/88040748-ad76-4b9a-bd4e-87e5980e9816.jpg?1562920179", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/8/88040748-ad76-4b9a-bd4e-87e5980e9816.jpg?1562920179"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Pyroclasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/0/e0581322-d901-465e-b22c-cd99ddbb4839.jpg?1561758268", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/0/e0581322-d901-465e-b22c-cd99ddbb4839.jpg?1561758268"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Radiant Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/0/70f4fe69-c541-4320-9074-9c6a3bc70ea3.jpg?1562921619", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/0/70f4fe69-c541-4320-9074-9c6a3bc70ea3.jpg?1562921619"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Radiant Flames", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/5/2548487e-a355-4a05-acbc-3031d98f4289.jpg?1562132516", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/5/2548487e-a355-4a05-acbc-3031d98f4289.jpg?1562132516"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Radiating Lightning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/94454128-92f1-475d-abc4-c235f501eeb6.jpg?1562739709", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/94454128-92f1-475d-abc4-c235f501eeb6.jpg?1562739709"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rain of Daggers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/b/bb09a5bb-9730-43cd-8dea-3842634c9983.jpg?1562939110", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/b/bb09a5bb-9730-43cd-8dea-3842634c9983.jpg?1562939110"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Rain of Embers", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d5391a9-6c30-4f9b-b746-a4427a3e63fc.jpg?1598915805", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d5391a9-6c30-4f9b-b746-a4427a3e63fc.jpg?1598915805"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rancid Earth", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/3/23d07a96-85ba-4714-94a5-4a8125954f58.jpg?1562628959", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/3/23d07a96-85ba-4714-94a5-4a8125954f58.jpg?1562628959"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Reckless Endeavor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/a/ba98a4bd-e217-4dba-aee9-315b4f843cdf.jpg?1631585239", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/a/ba98a4bd-e217-4dba-aee9-315b4f843cdf.jpg?1631585239"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Reign of Terror", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/b/7bd83049-aec1-4911-bc70-39adba04b174.jpg?1587856923", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/b/7bd83049-aec1-4911-bc70-39adba04b174.jpg?1587856923"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Retaliate", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/8/58acdda6-6754-46f2-ad68-f1580b8ab0dd.jpg?1562877159", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/8/58acdda6-6754-46f2-ad68-f1580b8ab0dd.jpg?1562877159"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Retribution of the Meek", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/6/860b8633-1bfc-426a-8666-5e6a584d4525.jpg?1587857186", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/6/860b8633-1bfc-426a-8666-5e6a584d4525.jpg?1587857186"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Righteous Fury", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/4/c408f43e-9092-440d-a15f-bef4ad58bcc6.jpg?1562941331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/4/c408f43e-9092-440d-a15f-bef4ad58bcc6.jpg?1562941331"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Rising Miasma", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/f/4f9a8e87-3b8b-4dbf-9c1e-0a3290a33a0b.jpg?1562913657", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/f/4f9a8e87-3b8b-4dbf-9c1e-0a3290a33a0b.jpg?1562913657"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Ritual of Soot", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/6/269af993-4894-4bf1-b55a-af4d736cb3cc.jpg?1572893045", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/6/269af993-4894-4bf1-b55a-af4d736cb3cc.jpg?1572893045"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Riveteers Confluence", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb15ba71-c3b3-4a9f-b000-bd788514211c.jpg?1650549265", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb15ba71-c3b3-4a9f-b000-bd788514211c.jpg?1650549265"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Rollick of Abandon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f1a80c4-8119-437d-bf5b-549c5679c90a.jpg?1593096073", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f1a80c4-8119-437d-bf5b-549c5679c90a.jpg?1593096073"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rolling Earthquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/c/3c1bf210-ecdb-4b49-8504-51360c269e66.jpg?1562256070", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/c/3c1bf210-ecdb-4b49-8504-51360c269e66.jpg?1562256070"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Rolling Spoil", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/6/e6c5546f-2429-4099-a9bd-eda3f52779b7.jpg?1598916497", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/6/e6c5546f-2429-4099-a9bd-eda3f52779b7.jpg?1598916497"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rolling Temblor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/6/060ce982-94dd-4b9e-b240-15da297e29f9.jpg?1562825667", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/6/060ce982-94dd-4b9e-b240-15da297e29f9.jpg?1562825667"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c3da3f0-bf90-461a-b62d-5c00d5c9aebd.jpg?1562865454", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c3da3f0-bf90-461a-b62d-5c00d5c9aebd.jpg?1562865454"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Rout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/4/94bc55ed-b89b-4e22-b3f1-4ce0f8d180d7.jpg?1562924999", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/4/94bc55ed-b89b-4e22-b3f1-4ce0f8d180d7.jpg?1562924999"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db53c1fb-3641-44a3-b0b4-b7b2ba993646.jpg?1562632349", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db53c1fb-3641-44a3-b0b4-b7b2ba993646.jpg?1562632349"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/2/d2a2a4e7-3173-4b73-8898-2c668f9eebf9.jpg?1562548310", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/2/d2a2a4e7-3173-4b73-8898-2c668f9eebf9.jpg?1562548310"}, "reprint": true, "digital": true, "set_type": "promo"}, {"name": "Sagittars' Volley", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/3/d3104cad-e684-4bd7-b26b-5aa862f7a2b3.jpg?1584831248"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Savage Alliance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5255da8-8511-48a7-98e5-ba43ca6e8681.jpg?1576384658", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5255da8-8511-48a7-98e5-ba43ca6e8681.jpg?1576384658"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Savage Twister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/9/99d22b83-381d-47da-b983-8f77d19b0c01.jpg?1562927484", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/9/99d22b83-381d-47da-b983-8f77d19b0c01.jpg?1562927484"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Savage Twister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/8/682ee5a9-2995-4868-b7ea-8735b2aee77e.jpg?1593272763", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/8/682ee5a9-2995-4868-b7ea-8735b2aee77e.jpg?1593272763"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Savage Twister", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb73313b-d39a-46ab-abfc-76f94a75dfca.jpg?1593014734", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb73313b-d39a-46ab-abfc-76f94a75dfca.jpg?1593014734"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Scouring Sands", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/273f25fc-9c9f-4b73-a28b-1461d8fcd443.jpg?1593092358", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/273f25fc-9c9f-4b73-a28b-1461d8fcd443.jpg?1593092358"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sculpted Sunburst", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/d/2d16d8fe-a770-4bbd-bf20-447c0165de5a.jpg?1654291825", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/d/2d16d8fe-a770-4bbd-bf20-447c0165de5a.jpg?1654291825"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Seismic Rupture", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/b/9b952e4e-c1ed-4455-90d5-46b56478e6b0.jpg?1562790481", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/b/9b952e4e-c1ed-4455-90d5-46b56478e6b0.jpg?1562790481"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seismic Shudder", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20365082-6102-4e3b-8791-c9b66846270d.jpg?1562610483", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20365082-6102-4e3b-8791-c9b66846270d.jpg?1562610483"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Seismic Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e55b8ffb-c2e4-4676-9051-ff6c686cad0b.jpg?1654567822", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e55b8ffb-c2e4-4676-9051-ff6c686cad0b.jpg?1654567822"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Settle the Wreckage", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/c/9cbd346e-098a-4cf6-a72f-468376fd2e8f.jpg?1562560853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/c/9cbd346e-098a-4cf6-a72f-468376fd2e8f.jpg?1562560853"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shadowstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/6/367c4ad6-973d-47ba-9431-312f9f2996f6.jpg?1562053739", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/6/367c4ad6-973d-47ba-9431-312f9f2996f6.jpg?1562053739"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shadows' Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/2/52470883-b44d-415b-9324-8074e66f79ae.jpg?1604196514", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/2/52470883-b44d-415b-9324-8074e66f79ae.jpg?1604196514"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shake the Foundations", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b5bd4bdd-3a2a-40d9-9f86-fefe0a462cd2.jpg?1555040519", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b5bd4bdd-3a2a-40d9-9f86-fefe0a462cd2.jpg?1555040519"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shatter the Sky", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/7/b706977b-db8e-4810-882d-ed3745404489.jpg?1581479244", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/7/b706977b-db8e-4810-882d-ed3745404489.jpg?1581479244"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Shrivel", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a87c80a1-5818-45fd-9a37-a2ee3396626e.jpg?1562707116", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a87c80a1-5818-45fd-9a37-a2ee3396626e.jpg?1562707116"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sickening Dreams", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/3/9396ac77-9f53-46bd-b126-02441a0f5594.jpg?1562630974", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/3/9396ac77-9f53-46bd-b126-02441a0f5594.jpg?1562630974"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Simoon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/4/84b1930d-2e4b-472f-98a9-008fd632f3be.jpg?1562921826", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/4/84b1930d-2e4b-472f-98a9-008fd632f3be.jpg?1562921826"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Simoon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/4/642d9239-82e0-4696-ad99-10796042d1f8.jpg?1587913163", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/4/642d9239-82e0-4696-ad99-10796042d1f8.jpg?1587913163"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Single Combat", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/e/ce0e7c6a-e628-4327-a16f-2062c5a662df.jpg?1557576066", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/e/ce0e7c6a-e628-4327-a16f-2062c5a662df.jpg?1557576066"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Skyreaping", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/0/40eb76b3-b527-4ed8-8ce3-d3de48562b6e.jpg?1593092666", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/0/40eb76b3-b527-4ed8-8ce3-d3de48562b6e.jpg?1593092666"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slagstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e318b03-2aad-462b-a2a9-8b6bdf0e93d6.jpg?1562613393", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e318b03-2aad-462b-a2a9-8b6bdf0e93d6.jpg?1562613393"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slash the Ranks", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/0913a5e8-7f77-44f2-a7cf-c8c0d6270a86.jpg?1608909011", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/0913a5e8-7f77-44f2-a7cf-c8c0d6270a86.jpg?1608909011"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Slaughter the Strong", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/c/6c9f8aea-0c9a-4686-b551-35e2a72ef701.jpg?1653521934", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/c/6c9f8aea-0c9a-4686-b551-35e2a72ef701.jpg?1653521934"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Slaughter the Strong", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/2/4217ab21-181e-4c32-97c3-d8bd441287e0.jpg?1555039791", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/2/4217ab21-181e-4c32-97c3-d8bd441287e0.jpg?1555039791"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Slice and Dice", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/9/59262684-86e3-4485-9e35-202771c3eaa6.jpg?1562916006", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/9/59262684-86e3-4485-9e35-202771c3eaa6.jpg?1562916006"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Solar Blaze", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb72ba0f-ab3a-41e6-906d-a84039efa0af.jpg?1557577261", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb72ba0f-ab3a-41e6-906d-a84039efa0af.jpg?1557577261"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Solar Tide", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/7/57ce33b6-267f-4ee8-a3f7-f41c619d0cfa.jpg?1562144484", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/7/57ce33b6-267f-4ee8-a3f7-f41c619d0cfa.jpg?1562144484"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Soulquake", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4b3a7470-b93e-4c3a-ab1c-0a4dd401e95a.jpg?1562641103", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4b3a7470-b93e-4c3a-ab1c-0a4dd401e95a.jpg?1562641103"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Spectral Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7238c46e-6338-4aca-96f2-934c44c8cc36.jpg?1631233619", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7238c46e-6338-4aca-96f2-934c44c8cc36.jpg?1631233619"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Spontaneous Combustion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/5/55d50177-736a-44d6-a2a3-f6892d7037b3.jpg?1562865429", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/5/55d50177-736a-44d6-a2a3-f6892d7037b3.jpg?1562865429"}, "reprint": true, "digital": false, "set_type": "draft_innovation"}, {"name": "Spontaneous Combustion", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/4/34e6c04f-9d1a-497b-bc96-a0e48a1c1904.jpg?1562053293", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/4/34e6c04f-9d1a-497b-bc96-a0e48a1c1904.jpg?1562053293"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Squall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/6/46460e5f-2756-486b-99a6-c3a9a209bfaa.jpg?1594065372", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/6/46460e5f-2756-486b-99a6-c3a9a209bfaa.jpg?1594065372"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Squall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/5/e5409b54-66ed-4add-bf43-cfeb074b1c50.jpg?1562383517", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/5/e5409b54-66ed-4add-bf43-cfeb074b1c50.jpg?1562383517"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Squall", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/3/63c1b2f6-e47f-4f18-a94a-1d08eb009ef3.jpg?1594065383", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/3/63c1b2f6-e47f-4f18-a94a-1d08eb009ef3.jpg?1594065383"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Squall Line", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/f/3f368729-a6f2-4bf7-8b06-39c551f0b24a.jpg?1562908127", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/f/3f368729-a6f2-4bf7-8b06-39c551f0b24a.jpg?1562908127"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Star of Extinction", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/2/021f57dc-80f3-4ede-99d5-4a44aade44e2.jpg?1562549822", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/2/021f57dc-80f3-4ede-99d5-4a44aade44e2.jpg?1562549822"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Starstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/439aa3eb-fa1f-46b2-a13a-369b6a88d97c.jpg?1562908992", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/439aa3eb-fa1f-46b2-a13a-369b6a88d97c.jpg?1562908992"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Starstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/5/b54d72ba-05ce-4299-a7c3-a9e9f126fffb.jpg?1562937719", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/5/b54d72ba-05ce-4299-a7c3-a9e9f126fffb.jpg?1562937719"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Steam Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/4/144a1b4e-d960-4c3a-810b-11a0c78635ad.jpg?1562899291", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/4/144a1b4e-d960-4c3a-810b-11a0c78635ad.jpg?1562899291"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stench of Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f9a45644-549a-4eaa-8367-b170027bd5a2.jpg?1562770859", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f9a45644-549a-4eaa-8367-b170027bd5a2.jpg?1562770859"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stench of Decay", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/4/b4b93845-f17a-4892-a1ce-a4630dced218.jpg?1562770150", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/4/b4b93845-f17a-4892-a1ce-a4630dced218.jpg?1562770150"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Stick Together", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d77a57a-e30b-46d7-acb8-1d164c7dff78.jpg?1654036983", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d77a57a-e30b-46d7-acb8-1d164c7dff78.jpg?1654036983"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Storm's Wrath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/b/4bc9ecd2-7664-471b-90f2-2d0dd1acec80.jpg?1581480444", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/b/4bc9ecd2-7664-471b-90f2-2d0dd1acec80.jpg?1581480444"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Strategy, Schmategy", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2996a63-9fb6-4455-906d-13f917a8bb29.jpg?1562799134", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2996a63-9fb6-4455-906d-13f917a8bb29.jpg?1562799134"}, "reprint": false, "digital": false, "set_type": "funny"}, {"name": "Street Spasm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/5/f599948f-1561-415f-b415-c9c991896704.jpg?1592713487", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/5/f599948f-1561-415f-b415-c9c991896704.jpg?1592713487"}, "reprint": true, "digital": false, "set_type": "duel_deck"}, {"name": "Structural Assault", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/b/cbdb50e3-fe15-4431-b9bd-c4de65820734.jpg?1650025267", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/b/cbdb50e3-fe15-4431-b9bd-c4de65820734.jpg?1650025267"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sublime Exhalation", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/c/ac6d4a9e-a7fd-480e-96cf-5cf6d2390189.jpg?1562414946", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/c/ac6d4a9e-a7fd-480e-96cf-5cf6d2390189.jpg?1562414946"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Subterranean Tremors", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/b/1b9510b8-6601-4116-8713-ff7649c000eb.jpg?1576381980", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/b/1b9510b8-6601-4116-8713-ff7649c000eb.jpg?1576381980"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}]} \ No newline at end of file diff --git a/web/public/mtg/jsons/wrath3.json b/web/public/mtg/jsons/wrath3.json deleted file mode 100644 index 19e27341..00000000 --- a/web/public/mtg/jsons/wrath3.json +++ /dev/null @@ -1 +0,0 @@ -{"has_more": false, "data": [{"name": "Sudden Demise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/7217afaa-00e1-45a7-bb7f-66a770487b77.jpg?1562918949", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/7217afaa-00e1-45a7-bb7f-66a770487b77.jpg?1562918949"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Suffocating Fumes", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/6/66b562e4-35df-4aee-848d-ceb4204bbe58.jpg?1591226972", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/6/66b562e4-35df-4aee-848d-ceb4204bbe58.jpg?1591226972"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sulfurous Blast", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/7/67511e0e-be09-4f4e-9949-b9ecbdc7f536.jpg?1562916599", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/7/67511e0e-be09-4f4e-9949-b9ecbdc7f536.jpg?1562916599"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Sunscour", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/4/44c726db-a30a-4e76-9fbf-ec6d5cd7a1ba.jpg?1593274832", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/4/44c726db-a30a-4e76-9fbf-ec6d5cd7a1ba.jpg?1593274832"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Supreme Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/e/4e9648f9-7a67-4717-bca1-861d1f7fed43.jpg?1562786100", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/e/4e9648f9-7a67-4717-bca1-861d1f7fed43.jpg?1562786100"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Supreme Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2b760cc-800a-48a3-97d9-316e1eeafd4c.jpg?1655619437", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2b760cc-800a-48a3-97d9-316e1eeafd4c.jpg?1655619437"}, "reprint": true, "frame_effects": ["inverted"], "digital": false, "set_type": "masters"}, {"name": "Supreme Verdict", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/5/35e3b17c-1af9-4a6d-9cbe-e9d23ea52c53.jpg?1562497060", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/5/35e3b17c-1af9-4a6d-9cbe-e9d23ea52c53.jpg?1562497060"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Sweltering Suns", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/1/f11cd406-c6ae-4018-ae45-4e5577aa82ae.jpg?1543675701", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/1/f11cd406-c6ae-4018-ae45-4e5577aa82ae.jpg?1543675701"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Swirling Sandstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/d/4d757ec3-c15f-4d6e-8e18-36ebae985448.jpg?1562629788", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/d/4d757ec3-c15f-4d6e-8e18-36ebae985448.jpg?1562629788"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Synthetic Destiny", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6ab025e6-9ee7-45f0-b829-199637eb0038.jpg?1562705395", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6ab025e6-9ee7-45f0-b829-199637eb0038.jpg?1562705395"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Take Down", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/8/f8e702db-8c73-4947-9c13-5dcb50f4efab.jpg?1576382690", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/8/f8e702db-8c73-4947-9c13-5dcb50f4efab.jpg?1576382690"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Terminus", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/9/0982ea7e-05a4-4e40-98ab-ea9aa6c7342e.jpg?1592708421", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/9/0982ea7e-05a4-4e40-98ab-ea9aa6c7342e.jpg?1592708421"}, "reprint": false, "frame_effects": ["miracle"], "digital": false, "set_type": "expansion"}, {"name": "Thunder of Hooves", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/e/9e4f796a-6831-4d83-824d-88fd2148b4c1.jpg?1562932440", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/e/9e4f796a-6831-4d83-824d-88fd2148b4c1.jpg?1562932440"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Thunderwave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/9/e9531098-63ea-4568-81e9-80e00a5f8995.jpg?1653417329", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/9/e9531098-63ea-4568-81e9-80e00a5f8995.jpg?1653417329"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Time Wipe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62c59475-6f15-48d2-b105-f49901f20d44.jpg?1557577308", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62c59475-6f15-48d2-b105-f49901f20d44.jpg?1557577308"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Time Wipe", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/a/6ab4b490-67d8-4f13-86cb-858a8012a46a.jpg?1558324717", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/a/6ab4b490-67d8-4f13-86cb-858a8012a46a.jpg?1558324717"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Tivadar's Crusade", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/b/8b6da540-6803-47e5-9af0-7ae8e2f84b6c.jpg?1562927916", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/b/8b6da540-6803-47e5-9af0-7ae8e2f84b6c.jpg?1562927916"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Torrent of Lava", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/9/19528a24-4968-4742-a2d1-06f94e60f290.jpg?1562718298", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/9/19528a24-4968-4742-a2d1-06f94e60f290.jpg?1562718298"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Toxic Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/db34617f-b04f-4b65-84cf-5c5be1eb7226.jpg?1651951814", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/db34617f-b04f-4b65-84cf-5c5be1eb7226.jpg?1651951814"}, "reprint": true, "digital": false, "set_type": "arsenal"}, {"name": "Toxic Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/6/564caf57-4ba5-4993-a35e-945699c94eb7.jpg?1562913020", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/6/564caf57-4ba5-4993-a35e-945699c94eb7.jpg?1562913020"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Toxic Deluge", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/3/73731e45-51bb-4188-a54d-fdaa4bdfaf1f.jpg?1599711037", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/3/73731e45-51bb-4188-a54d-fdaa4bdfaf1f.jpg?1599711037"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/2/b281c013-b35a-4c4a-aaee-b6f93968485c.jpg?1562246219", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/2/b281c013-b35a-4c4a-aaee-b6f93968485c.jpg?1562246219"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/5/8531efb1-d77d-451a-8621-424fc278ccf9.jpg?1562381834", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/5/8531efb1-d77d-451a-8621-424fc278ccf9.jpg?1562381834"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e2509285-a88e-4f5c-86c1-c0386da0f0c5.jpg?1562948885", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e2509285-a88e-4f5c-86c1-c0386da0f0c5.jpg?1562948885"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Tremor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a9d64665-c1e0-40ab-a358-247f82966379.jpg?1562278171", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a9d64665-c1e0-40ab-a358-247f82966379.jpg?1562278171"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tropical Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/d/cd5f473c-e11e-4047-91f9-81b80f0a3562.jpg?1587912688", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/d/cd5f473c-e11e-4047-91f9-81b80f0a3562.jpg?1587912688"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Tsabo's Decree", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/c/0c1a0ebd-1add-49e6-b5e6-5b26abb1de88.jpg?1562897461", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/c/0c1a0ebd-1add-49e6-b5e6-5b26abb1de88.jpg?1562897461"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Underworld Fires", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0fe616c4-dcb0-4284-ba10-6fbf7cecd217.jpg?1581480512", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0fe616c4-dcb0-4284-ba10-6fbf7cecd217.jpg?1581480512"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Urborg Justice", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/9/39f322ff-0b04-41ce-90cd-9896f941e703.jpg?1562800263", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/9/39f322ff-0b04-41ce-90cd-9896f941e703.jpg?1562800263"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Valiant Endeavor", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/4/0445def0-8921-4579-912f-035d9fbce3c0.jpg?1631584806", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/4/0445def0-8921-4579-912f-035d9fbce3c0.jpg?1631584806"}, "reprint": false, "digital": false, "set_type": "commander"}, {"name": "Vampires' Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/0/20d2d886-13a2-44f1-966a-ec674622fd01.jpg?1643592028", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/0/20d2d886-13a2-44f1-966a-ec674622fd01.jpg?1643592028"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vampires' Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/f/9f4ba693-0323-415d-ad91-c083fbbab7f7.jpg?1645228860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/f/9f4ba693-0323-415d-ad91-c083fbbab7f7.jpg?1645228860"}, "flavor_name": "Mysterious Blood Illness", "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Vanquish the Horde", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/2/e264615c-eb99-4cb3-844a-2b4a94ba5203.jpg?1634348651", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/2/e264615c-eb99-4cb3-844a-2b4a94ba5203.jpg?1634348651"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Virtue's Ruin", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/8/7854928a-d467-4616-b96b-de7e5fe7303e.jpg?1562446869", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/8/7854928a-d467-4616-b96b-de7e5fe7303e.jpg?1562446869"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Void", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/c/0/c0b3e320-a85c-4d92-944e-0a5e78a066a5.jpg?1580015114", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/c/0/c0b3e320-a85c-4d92-944e-0a5e78a066a5.jpg?1580015114"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Void", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/2/62dc1df7-b9db-4f5f-a340-08287cd3d9e5.jpg?1562915020", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/2/62dc1df7-b9db-4f5f-a340-08287cd3d9e5.jpg?1562915020"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Volcanic Eruption", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a80582b1-09db-45f8-b362-0e5207a5a8e6.jpg?1559591541", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a80582b1-09db-45f8-b362-0e5207a5a8e6.jpg?1559591541"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Volcanic Fallout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/6/5/65536d12-e75c-42b5-b592-a3ad4f550a71.jpg?1592485188", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/6/5/65536d12-e75c-42b5-b592-a3ad4f550a71.jpg?1592485188"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Volcanic Fallout", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/d/8d3a69d2-518d-4b70-a03e-6d02a525f9ad.jpg?1561757550", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/d/8d3a69d2-518d-4b70-a03e-6d02a525f9ad.jpg?1561757550"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Volcanic Spray", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97daab4b-d934-4a3f-a043-f7c9c1dd32bf.jpg?1562923217", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97daab4b-d934-4a3f-a043-f7c9c1dd32bf.jpg?1562923217"}, "reprint": false, "frame_effects": ["tombstone"], "digital": false, "set_type": "expansion"}, {"name": "Volcanic Torrent", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/b/eb586da6-670d-4c50-9d9b-f320f1c288d7.jpg?1608910472", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/b/eb586da6-670d-4c50-9d9b-f320f1c288d7.jpg?1608910472"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Volcanic Vision", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/9/f973e1a6-c6f9-47f5-9bf0-b7fa06959bd4.jpg?1625194143", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/9/f973e1a6-c6f9-47f5-9bf0-b7fa06959bd4.jpg?1625194143"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Volcanic Vision", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/979da13b-9be6-49cc-a62c-67eeea289612.jpg?1562790292", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/979da13b-9be6-49cc-a62c-67eeea289612.jpg?1562790292"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wail of the Nim", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/8/a8c32faa-c6d1-418a-aed6-ccc5849daa1f.jpg?1562153645", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/8/a8c32faa-c6d1-418a-aed6-ccc5849daa1f.jpg?1562153645"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wave of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/2/7/27d6655d-f55c-4bfc-a9c6-10232ebc707b.jpg?1562392689", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/2/7/27d6655d-f55c-4bfc-a9c6-10232ebc707b.jpg?1562392689"}, "reprint": true, "digital": false, "set_type": "commander"}, {"name": "Wave of Reckoning", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/b/0b101b5e-d478-4686-b3cf-bdc545f089e5.jpg?1562378964", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/b/0b101b5e-d478-4686-b3cf-bdc545f089e5.jpg?1562378964"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whelming Wave", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/c/fcabd4c7-093f-4ef6-8b89-b08565c48e3c.jpg?1593091836", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/c/fcabd4c7-093f-4ef6-8b89-b08565c48e3c.jpg?1593091836"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whipflare", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/5/a/5a7e6c10-d066-4967-932f-5b6c8d74568b.jpg?1562877860", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/5/a/5a7e6c10-d066-4967-932f-5b6c8d74568b.jpg?1562877860"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Whirlwind", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/1/8101bab4-ef93-451a-a24f-e1456c82837c.jpg?1562922208", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/1/8101bab4-ef93-451a-a24f-e1456c82837c.jpg?1562922208"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Widespread Brutality", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/7/97715d22-f432-4f67-b4ea-47b8fe6edca5.jpg?1557577331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/7/97715d22-f432-4f67-b4ea-47b8fe6edca5.jpg?1557577331"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wildfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/8/2/826fd527-9356-4eec-8542-781116f23eb7.jpg?1562241689", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/8/2/826fd527-9356-4eec-8542-781116f23eb7.jpg?1562241689"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Wildfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/7/2/72d50972-4549-40cd-9c33-4b341333803f.jpg?1562919111", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/7/2/72d50972-4549-40cd-9c33-4b341333803f.jpg?1562919111"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Wildfire", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/b/6/b69cfcb0-db68-4494-a3e1-7c2ca279fcf5.jpg?1562938018", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/b/6/b69cfcb0-db68-4494-a3e1-7c2ca279fcf5.jpg?1562938018"}, "reprint": false, "digital": false, "set_type": "starter"}, {"name": "Winds of Abandon", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/3/b/3bb17913-fe4d-4acd-9b75-71f5a90f898b.jpg?1562201278", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/3/b/3bb17913-fe4d-4acd-9b75-71f5a90f898b.jpg?1562201278"}, "reprint": false, "digital": false, "set_type": "draft_innovation"}, {"name": "Winds of Rath", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/6/a6d731b2-0113-4fd5-8b78-1aa1064bb4f5.jpg?1562055907", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/6/a6d731b2-0113-4fd5-8b78-1aa1064bb4f5.jpg?1562055907"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Windstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/5/154dc31c-ac9d-4b78-b92b-e7bacc532915.jpg?1562782948", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/5/154dc31c-ac9d-4b78-b92b-e7bacc532915.jpg?1562782948"}, "reprint": true, "digital": false, "set_type": "expansion"}, {"name": "Windstorm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/e/e/ee3768ec-bb3b-44dc-9fa3-7cb3d3ee9f8c.jpg?1562000543", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/e/e/ee3768ec-bb3b-44dc-9fa3-7cb3d3ee9f8c.jpg?1562000543"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Winter Sky", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/f/af1035f3-3027-4a41-834c-55222b13c2bc.jpg?1562588224", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/f/af1035f3-3027-4a41-834c-55222b13c2bc.jpg?1562588224"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Witch's Vengeance", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/b/dbf16457-3444-4130-b220-834b69d9faa3.jpg?1572490276", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/b/dbf16457-3444-4130-b220-834b69d9faa3.jpg?1572490276"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/d/0d223e83-0d3c-459e-96f5-ba9227fe49dd.jpg?1562232378", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/d/0d223e83-0d3c-459e-96f5-ba9227fe49dd.jpg?1562232378"}, "reprint": true, "digital": false, "set_type": "core"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/d/7/d75d8204-6f9d-4a7a-bb8b-d51ac65a30fa.jpg?1562447853", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/d/7/d75d8204-6f9d-4a7a-bb8b-d51ac65a30fa.jpg?1562447853"}, "reprint": true, "digital": false, "set_type": "starter"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/2/a2788d69-6a3a-42f0-8736-cc6b57755ecd.jpg?1559591620", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/2/a2788d69-6a3a-42f0-8736-cc6b57755ecd.jpg?1559591620"}, "reprint": false, "digital": false, "set_type": "core"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0adf3831-93d9-4995-b8c8-0d8c03fee872.jpg?1657809849", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0adf3831-93d9-4995-b8c8-0d8c03fee872.jpg?1657809849"}, "flavor_name": "Shrinking Storm", "reprint": true, "digital": false, "set_type": "box"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/a/9/a91be77a-bd5b-485f-b5ca-0e6148c236ca.jpg?1619340331", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/a/9/a91be77a-bd5b-485f-b5ca-0e6148c236ca.jpg?1619340331"}, "reprint": true, "digital": false, "set_type": "masters"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/4/3/4351bf97-0b9e-44a5-bb7c-1098a683b18d.jpg?1562908574", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/4/3/4351bf97-0b9e-44a5-bb7c-1098a683b18d.jpg?1562908574"}, "reprint": true, "digital": false, "set_type": "masterpiece"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/9/8/98890cd7-ebd5-4fea-814e-4f612abfe3a5.jpg?1560576455", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/9/8/98890cd7-ebd5-4fea-814e-4f612abfe3a5.jpg?1560576455"}, "reprint": true, "digital": false, "set_type": "from_the_vault"}, {"name": "Wrath of God", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/1/0/10c5810f-83f6-43bf-8ece-047be42d7d58.jpg?1561756672", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/1/0/10c5810f-83f6-43bf-8ece-047be42d7d58.jpg?1561756672"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Yahenni's Expertise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/f/2/f2f28735-122c-45ba-bde5-decfd9b11b32.jpg?1576381752", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/f/2/f2f28735-122c-45ba-bde5-decfd9b11b32.jpg?1576381752"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Yahenni's Expertise", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/f/0f4ddbb7-b317-44dc-bb3d-52f52c0a8f96.jpg?1562270938", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/f/0f4ddbb7-b317-44dc-bb3d-52f52c0a8f96.jpg?1562270938"}, "reprint": true, "digital": false, "set_type": "promo"}, {"name": "Yamabushi's Storm", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/a/0a5a930d-ae59-47e2-9b98-f703e308b5c0.jpg?1562757474", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/a/0a5a930d-ae59-47e2-9b98-f703e308b5c0.jpg?1562757474"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zealous Persecution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/7/07d8ae46-14ec-4878-ba8a-a47d4508c6d7.jpg?1562639500", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/7/07d8ae46-14ec-4878-ba8a-a47d4508c6d7.jpg?1562639500"}, "reprint": false, "digital": false, "set_type": "expansion"}, {"name": "Zealous Persecution", "image_uris": {"normal": "https://c1.scryfall.com/file/scryfall-cards/normal/front/0/0/00963993-ff4d-4cc6-a7e0-ed8adac40bfd.jpg?1562895154", "art_crop": "https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/0/00963993-ff4d-4cc6-a7e0-ed8adac40bfd.jpg?1562895154"}, "reprint": true, "digital": false, "set_type": "box"}]} \ No newline at end of file From 8f5e51a3049d1026b226f1b8e13dab318f7776f1 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 22:13:37 -0500 Subject: [PATCH 065/113] Small FR comments tweaks --- .../feed/feed-answer-comment-group.tsx | 46 ++++++------------- 1 file changed, 14 insertions(+), 32 deletions(-) diff --git a/web/components/feed/feed-answer-comment-group.tsx b/web/components/feed/feed-answer-comment-group.tsx index a48a7e9c..c0b7162c 100644 --- a/web/components/feed/feed-answer-comment-group.tsx +++ b/web/components/feed/feed-answer-comment-group.tsx @@ -3,8 +3,6 @@ import { Bet } from 'common/bet' import { Comment } from 'common/comment' import React, { useEffect, useState } from 'react' import { Col } from 'web/components/layout/col' -import { Modal } from 'web/components/layout/modal' -import { AnswerBetPanel } from 'web/components/answers/answer-bet-panel' import { Row } from 'web/components/layout/row' import { Avatar } from 'web/components/avatar' import { UserLink } from 'web/components/user-page' @@ -34,7 +32,6 @@ export function FeedAnswerCommentGroup(props: { const { username, avatarUrl, name, text } = answer const [replyToUsername, setReplyToUsername] = useState('') - const [open, setOpen] = useState(false) const [showReply, setShowReply] = useState(false) const [inputRef, setInputRef] = useState<HTMLTextAreaElement | null>(null) const [highlighted, setHighlighted] = useState(false) @@ -104,26 +101,15 @@ export function FeedAnswerCommentGroup(props: { return ( <Col className={'relative flex-1 gap-3'} key={answer.id + 'comment'}> - <Modal open={open} setOpen={setOpen}> - <AnswerBetPanel - answer={answer} - contract={contract} - closePanel={() => setOpen(false)} - className="sm:max-w-84 !rounded-md bg-white !px-8 !py-6" - isModal={true} - /> - </Modal> - <Row className={clsx( - 'mt-4 flex gap-3 space-x-3 transition-all duration-1000', + 'flex gap-3 space-x-3 pt-4 transition-all duration-1000', highlighted ? `-m-2 my-3 rounded bg-indigo-500/[0.2] p-2` : '' )} id={answerElementId} > - <div className="px-1"> - <Avatar username={username} avatarUrl={avatarUrl} /> - </div> + <Avatar username={username} avatarUrl={avatarUrl} /> + <Col className="min-w-0 flex-1 lg:gap-1"> <div className="text-sm text-gray-500"> <UserLink username={username} name={name} /> answered @@ -135,25 +121,21 @@ export function FeedAnswerCommentGroup(props: { /> </div> - <Col className="align-items justify-between gap-4 sm:flex-row"> + <Col className="align-items justify-between gap-2 sm:flex-row"> <span className="whitespace-pre-line text-lg"> <Linkify text={text} /> </span> - <Row className="items-center justify-center gap-4"> - {isFreeResponseContractPage && ( - <div className={'sm:hidden'}> - <button - className={ - 'text-xs font-bold text-gray-500 hover:underline' - } - onClick={() => scrollAndOpenReplyInput(undefined, answer)} - > - Reply - </button> - </div> - )} - </Row> + {isFreeResponseContractPage && ( + <div className={'sm:hidden'}> + <button + className={'text-xs font-bold text-gray-500 hover:underline'} + onClick={() => scrollAndOpenReplyInput(undefined, answer)} + > + Reply + </button> + </div> + )} </Col> {isFreeResponseContractPage && ( <div className={'justify-initial hidden sm:block'}> From f7151f131d77d9a7cf5b73b9db8022e22f8d8a83 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Wed, 20 Jul 2022 22:37:43 -0500 Subject: [PATCH 066/113] Spacing tweak --- web/components/feed/feed-answer-comment-group.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/components/feed/feed-answer-comment-group.tsx b/web/components/feed/feed-answer-comment-group.tsx index c0b7162c..aabb1081 100644 --- a/web/components/feed/feed-answer-comment-group.tsx +++ b/web/components/feed/feed-answer-comment-group.tsx @@ -162,9 +162,9 @@ export function FeedAnswerCommentGroup(props: { /> {showReply && ( - <div className={'ml-6 pt-4'}> + <div className={'ml-6'}> <span - className="absolute -ml-[1px] mt-[0.8rem] h-2 w-0.5 rotate-90 bg-gray-200" + className="absolute -ml-[1px] mt-[1.25rem] h-2 w-0.5 rotate-90 bg-gray-200" aria-hidden="true" /> <CommentInput From 7a041fd753daa00cb9a17a3cacc9ca399ece6db4 Mon Sep 17 00:00:00 2001 From: ingawei <46611122+ingawei@users.noreply.github.com> Date: Wed, 20 Jul 2022 22:45:53 -0700 Subject: [PATCH 067/113] Changing manalinks table UI (#665) From table to card view --- web/components/contract/contract-details.tsx | 9 +- .../contract/contract-info-dialog.tsx | 2 +- web/components/manalink-card.tsx | 262 +++++++++++++----- .../manalinks/create-links-button.tsx | 5 +- web/components/pagination.tsx | 9 +- web/components/share-icon-button.tsx | 49 ++-- web/pages/link/[slug].tsx | 64 +++-- web/pages/links.tsx | 155 ++--------- 8 files changed, 285 insertions(+), 270 deletions(-) diff --git a/web/components/contract/contract-details.tsx b/web/components/contract/contract-details.tsx index b4d67520..036311fe 100644 --- a/web/components/contract/contract-details.tsx +++ b/web/components/contract/contract-details.tsx @@ -11,6 +11,7 @@ import { UserLink } from '../user-page' import { Contract, contractMetrics, + contractPath, contractPool, updateContract, } from 'web/lib/firebase/contracts' @@ -33,6 +34,7 @@ import { ShareIconButton } from 'web/components/share-icon-button' import { useUser } from 'web/hooks/use-user' import { Editor } from '@tiptap/react' import { exhibitExts } from 'common/util/parse' +import { ENV_CONFIG } from 'common/envs/constants' export type ShowTime = 'resolve-date' | 'close-date' @@ -222,9 +224,12 @@ export function ContractDetails(props: { <div className="whitespace-nowrap">{volumeLabel}</div> </Row> <ShareIconButton - contract={contract} + copyPayload={`https://${ENV_CONFIG.domain}${contractPath(contract)}${ + user?.username && contract.creatorUsername !== user?.username + ? '?referrer=' + user?.username + : '' + }`} toastClassName={'sm:-left-40 -left-24 min-w-[250%]'} - username={user?.username} /> {!disabled && <ContractInfoDialog contract={contract} bets={bets} />} diff --git a/web/components/contract/contract-info-dialog.tsx b/web/components/contract/contract-info-dialog.tsx index a0c7fcc9..d976253f 100644 --- a/web/components/contract/contract-info-dialog.tsx +++ b/web/components/contract/contract-info-dialog.tsx @@ -19,7 +19,7 @@ import { InfoTooltip } from '../info-tooltip' import { DuplicateContractButton } from '../copy-contract-button' export const contractDetailsButtonClassName = - 'group flex items-center rounded-md px-3 py-2 text-sm font-medium cursor-pointer hover:bg-gray-100 text-gray-400 hover:text-gray-500' + 'group flex items-center rounded-md px-3 py-2 text-sm font-medium cursor-pointer hover:bg-gray-100 text-gray-400 hover:text-gray-500' export function ContractInfoDialog(props: { contract: Contract; bets: Bet[] }) { const { contract, bets } = props diff --git a/web/components/manalink-card.tsx b/web/components/manalink-card.tsx index b5a79091..b49e1621 100644 --- a/web/components/manalink-card.tsx +++ b/web/components/manalink-card.tsx @@ -3,9 +3,13 @@ import { formatMoney } from 'common/util/format' import { fromNow } from 'web/lib/util/time' import { Col } from 'web/components/layout/col' import { Row } from 'web/components/layout/row' -import { User } from 'web/lib/firebase/users' -import { Button } from './button' - +import { Claim, Manalink } from 'common/manalink' +import { useState } from 'react' +import { ShareIconButton } from './share-icon-button' +import { DotsHorizontalIcon } from '@heroicons/react/solid' +import { contractDetailsButtonClassName } from './contract/contract-info-dialog' +import { useUserById } from 'web/hooks/use-user' +import getManalinkUrl from 'web/get-manalink-url' export type ManalinkInfo = { expiresTime: number | null maxUses: number | null @@ -15,94 +19,202 @@ export type ManalinkInfo = { } export function ManalinkCard(props: { - user: User | null | undefined - className?: string info: ManalinkInfo - isClaiming: boolean - onClaim?: () => void + className?: string + preview?: boolean }) { - const { user, className, isClaiming, info, onClaim } = props + const { className, info, preview = false } = props const { expiresTime, maxUses, uses, amount, message } = info return ( - <div + <Col> + <div + className={clsx( + className, + 'min-h-20 group flex flex-col rounded-xl bg-gradient-to-br shadow-lg transition-all', + getManalinkGradient(info.amount) + )} + > + <Col className="mx-4 mt-2 -mb-4 text-right text-sm text-gray-100"> + <div> + {maxUses != null + ? `${maxUses - uses}/${maxUses} uses left` + : `Unlimited use`} + </div> + <div> + {expiresTime != null + ? `Expires ${fromNow(expiresTime)}` + : 'Never expires'} + </div> + </Col> + + <img + className={clsx( + 'block h-1/3 w-1/3 self-center transition-all group-hover:rotate-12', + preview ? 'my-2' : 'w-1/2 md:mb-6 md:h-1/2' + )} + src="/logo-white.svg" + /> + <Row className="rounded-b-xl bg-white p-4"> + <Col> + <div + className={clsx( + 'mb-1 text-xl text-indigo-500', + getManalinkAmountColor(amount) + )} + > + {formatMoney(amount)} + </div> + <div>{message}</div> + </Col> + </Row> + </div> + </Col> + ) +} + +export function ManalinkCardFromView(props: { + className?: string + link: Manalink + highlightedSlug: string +}) { + const { className, link, highlightedSlug } = props + const { message, amount, expiresTime, maxUses, claims } = link + const [details, setDetails] = useState(false) + + return ( + <Col className={clsx( + 'group z-10 rounded-lg drop-shadow-sm transition-all hover:drop-shadow-lg', className, - 'min-h-20 group flex flex-col rounded-xl bg-gradient-to-br from-indigo-200 via-indigo-400 to-indigo-800 shadow-lg transition-all' + link.slug === highlightedSlug ? 'animate-pulse' : '' )} > - <Col className="mx-4 mt-2 -mb-4 text-right text-sm text-gray-100"> - <div> - {maxUses != null - ? `${maxUses - uses}/${maxUses} uses left` - : `Unlimited use`} - </div> - <div> - {expiresTime != null - ? `Expires ${fromNow(expiresTime)}` - : 'Never expires'} - </div> - </Col> - - <img - className="mb-6 block self-center transition-all group-hover:rotate-12" - src="/logo-white.svg" - width={200} - height={200} - /> - <Row className="justify-end rounded-b-xl bg-white p-4"> - <Col> - <div className="mb-1 text-xl text-indigo-500"> + <div + className={clsx( + 'relative flex flex-col rounded-t-lg bg-gradient-to-br transition-all', + getManalinkGradient(link.amount) + )} + onClick={() => setDetails(!details)} + > + {details && ( + <ClaimsList + className="absolute h-full w-full bg-white opacity-90" + link={link} + /> + )} + <Col className="mx-4 mt-2 -mb-4 text-right text-xs text-gray-100"> + <div> + {maxUses != null + ? `${maxUses - claims.length}/${maxUses} uses left` + : `Unlimited use`} + </div> + <div> + {expiresTime != null + ? `Expires ${fromNow(expiresTime)}` + : 'Never expires'} + </div> + </Col> + <img + className={clsx('my-auto block w-1/3 select-none self-center py-3')} + src="/logo-white.svg" + /> + </div> + <Col className="w-full rounded-b-lg bg-white px-4 py-2 text-lg"> + <Row className="relative gap-1"> + <div + className={clsx( + 'my-auto mb-1 w-full', + getManalinkAmountColor(amount) + )} + > {formatMoney(amount)} </div> - <div>{message}</div> - </Col> - - <div className="ml-auto"> - <Button onClick={onClaim} disabled={isClaiming}> - {user ? 'Claim' : 'Login'} - </Button> - </div> - </Row> - </div> + <ShareIconButton + toastClassName={'-left-48 min-w-[250%]'} + buttonClassName={'transition-colors'} + onCopyButtonClassName={ + 'bg-gray-200 text-gray-600 transition-none hover:bg-gray-200 hover:text-gray-600' + } + copyPayload={getManalinkUrl(link.slug)} + /> + <button + onClick={() => setDetails(!details)} + className={clsx( + contractDetailsButtonClassName, + details + ? 'bg-gray-200 text-gray-600 hover:bg-gray-200 hover:text-gray-600' + : '' + )} + > + <DotsHorizontalIcon className="h-[24px] w-5" /> + </button> + </Row> + <div className="my-2 text-xs md:text-sm">{message || '\n\n'}</div> + </Col> + </Col> ) } -export function ManalinkCardPreview(props: { - className?: string - info: ManalinkInfo -}) { - const { className, info } = props - const { expiresTime, maxUses, uses, amount, message } = info +function ClaimsList(props: { link: Manalink; className: string }) { + const { link, className } = props return ( - <div - className={clsx( - className, - ' group flex flex-col rounded-lg bg-gradient-to-br from-indigo-200 via-indigo-400 to-indigo-800 shadow-lg transition-all' - )} - > - <Col className="mx-4 mt-2 -mb-4 text-right text-xs text-gray-100"> - <div> - {maxUses != null - ? `${maxUses - uses}/${maxUses} uses left` - : `Unlimited use`} + <> + <Col className={clsx('px-4 py-2', className)}> + <div className="text-md mb-1 mt-2 w-full font-semibold"> + Claimed by... </div> - <div> - {expiresTime != null - ? `Expires ${fromNow(expiresTime)}` - : 'Never expires'} + <div className="overflow-auto"> + {link.claims.length > 0 ? ( + <> + {link.claims.map((claim) => ( + <Row key={claim.txnId}> + <Claim claim={claim} /> + </Row> + ))} + </> + ) : ( + <div className="h-full"> + No one has claimed this manalink yet! Share your manalink to start + spreading the wealth. + </div> + )} </div> </Col> - - <img - className="my-2 block h-1/3 w-1/3 self-center transition-all group-hover:rotate-12" - src="/logo-white.svg" - /> - <Row className="rounded-b-lg bg-white p-2"> - <Col className="text-md"> - <div className="mb-1 text-indigo-500">{formatMoney(amount)}</div> - <div className="text-xs">{message}</div> - </Col> - </Row> - </div> + </> ) } + +function Claim(props: { claim: Claim }) { + const { claim } = props + const who = useUserById(claim.toId) + return ( + <Row className="my-1 gap-2 text-xs"> + <div>{who?.name || 'Loading...'}</div> + <div className="text-gray-500">{fromNow(claim.claimedTime)}</div> + </Row> + ) +} + +function getManalinkGradient(amount: number) { + if (amount < 20) { + return 'from-indigo-200 via-indigo-500 to-indigo-800' + } else if (amount >= 20 && amount < 50) { + return 'from-fuchsia-200 via-fuchsia-500 to-fuchsia-800' + } else if (amount >= 50 && amount < 100) { + return 'from-rose-100 via-rose-400 to-rose-700' + } else if (amount >= 100) { + return 'from-amber-200 via-amber-500 to-amber-700' + } +} + +function getManalinkAmountColor(amount: number) { + if (amount < 20) { + return 'text-indigo-500' + } else if (amount >= 20 && amount < 50) { + return 'text-fuchsia-600' + } else if (amount >= 50 && amount < 100) { + return 'text-rose-600' + } else if (amount >= 100) { + return 'text-amber-600' + } +} diff --git a/web/components/manalinks/create-links-button.tsx b/web/components/manalinks/create-links-button.tsx index 0d1d603e..25b51bb2 100644 --- a/web/components/manalinks/create-links-button.tsx +++ b/web/components/manalinks/create-links-button.tsx @@ -4,7 +4,7 @@ import { Col } from '../layout/col' import { Row } from '../layout/row' import { Title } from '../title' import { User } from 'common/user' -import { ManalinkCardPreview, ManalinkInfo } from 'web/components/manalink-card' +import { ManalinkCard, ManalinkInfo } from 'web/components/manalink-card' import { createManalink } from 'web/lib/firebase/manalinks' import { Modal } from 'web/components/layout/modal' import Textarea from 'react-expanding-textarea' @@ -37,6 +37,7 @@ export function CreateLinksButton(props: { message: newManalink.message, }) setHighlightedSlug(slug || '') + setTimeout(() => setHighlightedSlug(''), 3700) }} /> </Col> @@ -191,7 +192,7 @@ function CreateManalinkForm(props: { {finishedCreating && ( <> <Title className="!my-0" text="Manalink Created!" /> - <ManalinkCardPreview className="my-4" info={newManalink} /> + <ManalinkCard className="my-4" info={newManalink} preview /> <Row className={clsx( 'rounded border bg-gray-50 py-2 px-3 text-sm text-gray-500 transition-colors duration-700', diff --git a/web/components/pagination.tsx b/web/components/pagination.tsx index 069ebda7..3f4108bc 100644 --- a/web/components/pagination.tsx +++ b/web/components/pagination.tsx @@ -1,9 +1,12 @@ +import clsx from 'clsx' + export function Pagination(props: { page: number itemsPerPage: number totalItems: number setPage: (page: number) => void scrollToTop?: boolean + className?: string nextTitle?: string prevTitle?: string }) { @@ -15,13 +18,17 @@ export function Pagination(props: { scrollToTop, nextTitle, prevTitle, + className, } = props const maxPage = Math.ceil(totalItems / itemsPerPage) - 1 return ( <nav - className="flex items-center justify-between border-t border-gray-200 bg-white px-4 py-3 sm:px-6" + className={clsx( + 'flex items-center justify-between border-t border-gray-200 bg-white px-4 py-3 sm:px-6', + className + )} aria-label="Pagination" > <div className="hidden sm:block"> diff --git a/web/components/share-icon-button.tsx b/web/components/share-icon-button.tsx index 507d90c2..4db192a9 100644 --- a/web/components/share-icon-button.tsx +++ b/web/components/share-icon-button.tsx @@ -2,65 +2,48 @@ import React, { useState } from 'react' import { ShareIcon } from '@heroicons/react/outline' import clsx from 'clsx' -import { Contract } from 'common/contract' import { copyToClipboard } from 'web/lib/util/copy' -import { contractPath } from 'web/lib/firebase/contracts' -import { ENV_CONFIG } from 'common/envs/constants' import { ToastClipboard } from 'web/components/toast-clipboard' import { track } from 'web/lib/service/analytics' import { contractDetailsButtonClassName } from 'web/components/contract/contract-info-dialog' -import { Group } from 'common/group' -import { groupPath } from 'web/lib/firebase/groups' - -function copyContractWithReferral(contract: Contract, username?: string) { - const postFix = - username && contract.creatorUsername !== username - ? '?referrer=' + username - : '' - copyToClipboard( - `https://${ENV_CONFIG.domain}${contractPath(contract)}${postFix}` - ) -} - -// Note: if a user arrives at a /group endpoint with a ?referral= query, they'll be added to the group automatically -function copyGroupWithReferral(group: Group, username?: string) { - const postFix = username ? '?referrer=' + username : '' - copyToClipboard( - `https://${ENV_CONFIG.domain}${groupPath(group.slug)}${postFix}` - ) -} export function ShareIconButton(props: { - contract?: Contract - group?: Group buttonClassName?: string + onCopyButtonClassName?: string toastClassName?: string - username?: string children?: React.ReactNode + iconClassName?: string + copyPayload: string }) { const { - contract, buttonClassName, + onCopyButtonClassName, toastClassName, - username, - group, children, + iconClassName, + copyPayload, } = props const [showToast, setShowToast] = useState(false) return ( <div className="relative z-10 flex-shrink-0"> <button - className={clsx(contractDetailsButtonClassName, buttonClassName)} + className={clsx( + contractDetailsButtonClassName, + buttonClassName, + showToast ? onCopyButtonClassName : '' + )} onClick={() => { - if (contract) copyContractWithReferral(contract, username) - if (group) copyGroupWithReferral(group, username) + copyToClipboard(copyPayload) track('copy share link') setShowToast(true) setTimeout(() => setShowToast(false), 2000) }} > - <ShareIcon className="h-[24px] w-5" aria-hidden="true" /> + <ShareIcon + className={clsx(iconClassName ? iconClassName : 'h-[24px] w-5')} + aria-hidden="true" + /> {children} </button> diff --git a/web/pages/link/[slug].tsx b/web/pages/link/[slug].tsx index 8ad9850f..119fec77 100644 --- a/web/pages/link/[slug].tsx +++ b/web/pages/link/[slug].tsx @@ -7,6 +7,8 @@ import { useManalink } from 'web/lib/firebase/manalinks' import { ManalinkCard } from 'web/components/manalink-card' import { useUser } from 'web/hooks/use-user' import { firebaseLogin } from 'web/lib/firebase/users' +import { Row } from 'web/components/layout/row' +import { Button } from 'web/components/button' export default function ClaimPage() { const user = useUser() @@ -28,34 +30,42 @@ export default function ClaimPage() { description="Send mana to anyone via link!" url="/send" /> - <div className="mx-auto max-w-xl"> - <Title text={`Claim M$${manalink.amount} mana`} /> - <ManalinkCard - user={user} - info={info} - isClaiming={claiming} - onClaim={async () => { - setClaiming(true) - try { - if (user == null) { - await firebaseLogin() + <div className="mx-auto max-w-xl px-2"> + <Row className="items-center justify-between"> + <Title text={`Claim M$${manalink.amount} mana`} /> + <div className="my-auto"> + <Button + onClick={async () => { + setClaiming(true) + try { + if (user == null) { + await firebaseLogin() + setClaiming(false) + return + } + if (user?.id == manalink.fromId) { + throw new Error("You can't claim your own manalink.") + } + await claimManalink({ slug: manalink.slug }) + user && router.push(`/${user.username}?claimed-mana=yes`) + } catch (e) { + console.log(e) + const message = + e && e instanceof Object + ? e.toString() + : 'An error occurred.' + setError(message) + } setClaiming(false) - return - } - if (user?.id == manalink.fromId) { - throw new Error("You can't claim your own manalink.") - } - await claimManalink({ slug: manalink.slug }) - user && router.push(`/${user.username}?claimed-mana=yes`) - } catch (e) { - console.log(e) - const message = - e && e instanceof Object ? e.toString() : 'An error occurred.' - setError(message) - } - setClaiming(false) - }} - /> + }} + disabled={claiming} + size="lg" + > + {user ? 'Claim' : 'Login'} + </Button> + </div> + </Row> + <ManalinkCard info={info} /> {error && ( <section className="my-5 text-red-500"> <p>Failed to claim manalink.</p> diff --git a/web/pages/links.tsx b/web/pages/links.tsx index 490f1878..8a2e6767 100644 --- a/web/pages/links.tsx +++ b/web/pages/links.tsx @@ -1,7 +1,4 @@ -import clsx from 'clsx' import { useState } from 'react' -import { ChevronDownIcon, ChevronUpIcon } from '@heroicons/react/solid' -import { Claim, Manalink } from 'common/manalink' import { formatMoney } from 'common/util/format' import { Col } from 'web/components/layout/col' import { Row } from 'web/components/layout/row' @@ -11,7 +8,6 @@ import { Title } from 'web/components/title' import { Subtitle } from 'web/components/subtitle' import { useUser } from 'web/hooks/use-user' import { useUserManalinks } from 'web/lib/firebase/manalinks' -import { fromNow } from 'web/lib/util/time' import { useUserById } from 'web/hooks/use-user' import { ManalinkTxn } from 'common/txn' import { Avatar } from 'web/components/avatar' @@ -22,8 +18,11 @@ import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' import dayjs from 'dayjs' import customParseFormat from 'dayjs/plugin/customParseFormat' +import { ManalinkCardFromView } from 'web/components/manalink-card' +import { Pagination } from 'web/components/pagination' dayjs.extend(customParseFormat) +const LINKS_PER_PAGE = 24 export const getServerSideProps = redirectIfLoggedOut('/') export function getManalinkUrl(slug: string) { @@ -40,6 +39,10 @@ export default function LinkPage() { (l.maxUses == null || l.claimedUserIds.length < l.maxUses) && (l.expiresTime == null || l.expiresTime > Date.now()) ) + const [page, setPage] = useState(0) + const start = page * LINKS_PER_PAGE + const end = start + LINKS_PER_PAGE + const displayedLinks = unclaimedLinks.slice(start, end) if (user == null) { return null @@ -68,12 +71,30 @@ export default function LinkPage() { don't yet have a Manifold account. </p> <Subtitle text="Your Manalinks" /> - <LinksTable links={unclaimedLinks} highlightedSlug={highlightedSlug} /> + <Col className="grid w-full gap-4 md:grid-cols-2"> + {displayedLinks.map((link) => { + return ( + <ManalinkCardFromView + link={link} + highlightedSlug={highlightedSlug} + /> + ) + })} + </Col> + <Pagination + page={page} + itemsPerPage={LINKS_PER_PAGE} + totalItems={unclaimedLinks.length} + setPage={setPage} + className="mt-4 bg-transparent" + scrollToTop + /> </Col> </Page> ) } +// TODO: either utilize this or get rid of it export function ClaimsList(props: { txns: ManalinkTxn[] }) { const { txns } = props return ( @@ -121,127 +142,3 @@ export function ClaimDescription(props: { txn: ManalinkTxn }) { </div> ) } - -function ClaimTableRow(props: { claim: Claim }) { - const { claim } = props - const who = useUserById(claim.toId) - return ( - <tr> - <td className="px-5 py-2">{who?.name || 'Loading...'}</td> - <td className="px-5 py-2">{`${new Date( - claim.claimedTime - ).toLocaleString()}, ${fromNow(claim.claimedTime)}`}</td> - </tr> - ) -} - -function LinkDetailsTable(props: { link: Manalink }) { - const { link } = props - return ( - <table className="w-full divide-y divide-gray-300 border border-gray-400"> - <thead className="bg-gray-50 text-left text-sm font-semibold text-gray-900"> - <tr> - <th className="px-5 py-2">Claimed by</th> - <th className="px-5 py-2">Time</th> - </tr> - </thead> - <tbody className="divide-y divide-gray-200 bg-white text-sm text-gray-500"> - {link.claims.length ? ( - link.claims.map((claim) => <ClaimTableRow claim={claim} />) - ) : ( - <tr> - <td className="px-5 py-2" colSpan={2}> - No claims yet. - </td> - </tr> - )} - </tbody> - </table> - ) -} - -function LinkTableRow(props: { link: Manalink; highlight: boolean }) { - const { link, highlight } = props - const [expanded, setExpanded] = useState(false) - return ( - <> - <LinkSummaryRow - link={link} - highlight={highlight} - expanded={expanded} - onToggle={() => setExpanded((exp) => !exp)} - /> - {expanded && ( - <tr> - <td className="bg-gray-100 p-3" colSpan={5}> - <LinkDetailsTable link={link} /> - </td> - </tr> - )} - </> - ) -} - -function LinkSummaryRow(props: { - link: Manalink - highlight: boolean - expanded: boolean - onToggle: () => void -}) { - const { link, highlight, expanded, onToggle } = props - const className = clsx( - 'whitespace-nowrap text-sm hover:cursor-pointer text-gray-500 hover:bg-sky-50 bg-white', - highlight ? 'bg-indigo-100 rounded-lg animate-pulse' : '' - ) - return ( - <tr id={link.slug} key={link.slug} className={className}> - <td className="py-4 pl-5" onClick={onToggle}> - {expanded ? ( - <ChevronUpIcon className="h-5 w-5" /> - ) : ( - <ChevronDownIcon className="h-5 w-5" /> - )} - </td> - - <td className="px-5 py-4 font-medium text-gray-900"> - {formatMoney(link.amount)} - </td> - <td className="px-5 py-4">{getManalinkUrl(link.slug)}</td> - <td className="px-5 py-4">{link.claimedUserIds.length}</td> - <td className="px-5 py-4">{link.maxUses == null ? '∞' : link.maxUses}</td> - <td className="px-5 py-4"> - {link.expiresTime == null ? 'Never' : fromNow(link.expiresTime)} - </td> - </tr> - ) -} - -function LinksTable(props: { links: Manalink[]; highlightedSlug?: string }) { - const { links, highlightedSlug } = props - return links.length == 0 ? ( - <p>You don't currently have any outstanding manalinks.</p> - ) : ( - <div className="overflow-scroll"> - <table className="w-full divide-y divide-gray-300 rounded-lg border border-gray-200"> - <thead className="bg-gray-50 text-left text-sm font-semibold text-gray-900"> - <tr> - <th></th> - <th className="px-5 py-3.5">Amount</th> - <th className="px-5 py-3.5">Link</th> - <th className="px-5 py-3.5">Uses</th> - <th className="px-5 py-3.5">Max Uses</th> - <th className="px-5 py-3.5">Expires</th> - </tr> - </thead> - <tbody className="divide-y divide-gray-200 bg-white"> - {links.map((link) => ( - <LinkTableRow - link={link} - highlight={link.slug === highlightedSlug} - /> - ))} - </tbody> - </table> - </div> - ) -} From 2ad72662833d3c6462df34cef554ad119aa9521c Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Thu, 21 Jul 2022 00:46:56 -0500 Subject: [PATCH 068/113] Fix comment spacing on non-FR --- web/components/feed/feed-comments.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/web/components/feed/feed-comments.tsx b/web/components/feed/feed-comments.tsx index d5accef0..f4c6eb74 100644 --- a/web/components/feed/feed-comments.tsx +++ b/web/components/feed/feed-comments.tsx @@ -70,7 +70,7 @@ export function FeedCommentThread(props: { if (showReply && inputRef) inputRef.focus() }, [inputRef, showReply]) return ( - <div className={'w-full flex-col pr-1'}> + <Col className={'w-full gap-3 pr-1'}> <span className="absolute top-5 left-5 -ml-px h-[calc(100%-2rem)] w-0.5 bg-gray-200" aria-hidden="true" @@ -86,7 +86,7 @@ export function FeedCommentThread(props: { scrollAndOpenReplyInput={scrollAndOpenReplyInput} /> {showReply && ( - <div className={'-pb-2 ml-6 flex flex-col pt-5'}> + <Col className={'-pb-2 ml-6'}> <span className="absolute -ml-[1px] mt-[0.8rem] h-2 w-0.5 rotate-90 bg-gray-200" aria-hidden="true" @@ -106,9 +106,9 @@ export function FeedCommentThread(props: { setReplyToUsername('') }} /> - </div> + </Col> )} - </div> + </Col> ) } From 21c08aed304c028d6038a3e23d8f9af957c91bce Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Thu, 21 Jul 2022 00:50:28 -0500 Subject: [PATCH 069/113] Move "Send M$" lower in sidebar More list. --- web/components/nav/sidebar.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/components/nav/sidebar.tsx b/web/components/nav/sidebar.tsx index ff740540..34bc2135 100644 --- a/web/components/nav/sidebar.tsx +++ b/web/components/nav/sidebar.tsx @@ -62,9 +62,9 @@ function getMoreNavigation(user?: User | null) { } return [ - { name: 'Send M$', href: '/links' }, { name: 'Leaderboards', href: '/leaderboards' }, { name: 'Charity', href: '/charity' }, + { name: 'Send M$', href: '/links' }, { name: 'Discord', href: 'https://discord.gg/eHQBNBqXuh' }, { name: 'About', href: 'https://docs.manifold.markets/$how-to' }, { @@ -113,8 +113,8 @@ function getMoreMobileNav() { ...(IS_PRIVATE_MANIFOLD ? [] : [ - { name: 'Send M$', href: '/links' }, { name: 'Charity', href: '/charity' }, + { name: 'Send M$', href: '/links' }, { name: 'Discord', href: 'https://discord.gg/eHQBNBqXuh' }, ]), { name: 'Leaderboards', href: '/leaderboards' }, From 8aa360c853784db32e32a4ec2a34a238013b0116 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Thu, 21 Jul 2022 00:52:11 -0500 Subject: [PATCH 070/113] Move leaderboards up in mobile nav --- web/components/nav/sidebar.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/components/nav/sidebar.tsx b/web/components/nav/sidebar.tsx index 34bc2135..9486a97b 100644 --- a/web/components/nav/sidebar.tsx +++ b/web/components/nav/sidebar.tsx @@ -110,6 +110,7 @@ const signedInMobileNavigation = [ function getMoreMobileNav() { return [ + { name: 'Leaderboards', href: '/leaderboards' }, ...(IS_PRIVATE_MANIFOLD ? [] : [ @@ -117,7 +118,6 @@ function getMoreMobileNav() { { name: 'Send M$', href: '/links' }, { name: 'Discord', href: 'https://discord.gg/eHQBNBqXuh' }, ]), - { name: 'Leaderboards', href: '/leaderboards' }, { name: 'Sign out', href: '#', From 03858e4a8cafc694a446b33285c1581816ef7be4 Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Thu, 21 Jul 2022 00:38:26 -0700 Subject: [PATCH 071/113] Make a React context to be the source of truth for authenticated user (#675) * Make a React context to manage the logged in user events * Remove unnecessary new user creation promise machinery * Slight refactoring to auth context code * Improvements in response to James feedback --- web/components/auth-context.tsx | 77 ++++++++++++++++++++++++++++++ web/components/bets-list.tsx | 6 +-- web/components/feed/feed-items.tsx | 4 +- web/hooks/use-algo-feed.ts | 2 +- web/hooks/use-seen-contracts.ts | 8 ++-- web/hooks/use-user.ts | 24 ++-------- web/lib/firebase/tracking.ts | 20 +++----- web/lib/firebase/users.ts | 52 +------------------- web/pages/_app.tsx | 9 ++-- 9 files changed, 106 insertions(+), 96 deletions(-) create mode 100644 web/components/auth-context.tsx diff --git a/web/components/auth-context.tsx b/web/components/auth-context.tsx new file mode 100644 index 00000000..fcc3de39 --- /dev/null +++ b/web/components/auth-context.tsx @@ -0,0 +1,77 @@ +import { createContext, useEffect } from 'react' +import { User } from 'common/user' +import { onIdTokenChanged } from 'firebase/auth' +import { + auth, + listenForUser, + getUser, + setCachedReferralInfoForUser, +} from 'web/lib/firebase/users' +import { deleteAuthCookies, setAuthCookies } from 'web/lib/firebase/auth' +import { createUser } from 'web/lib/firebase/api' +import { randomString } from 'common/util/random' +import { identifyUser, setUserProperty } from 'web/lib/service/analytics' +import { useStateCheckEquality } from 'web/hooks/use-state-check-equality' + +// Either we haven't looked up the logged in user yet (undefined), or we know +// the user is not logged in (null), or we know the user is logged in (User). +type AuthUser = undefined | null | User + +const CACHED_USER_KEY = 'CACHED_USER_KEY' + +const ensureDeviceToken = () => { + let deviceToken = localStorage.getItem('device-token') + if (!deviceToken) { + deviceToken = randomString() + localStorage.setItem('device-token', deviceToken) + } + return deviceToken +} + +export const AuthContext = createContext<AuthUser>(null) + +export function AuthProvider({ children }: any) { + const [authUser, setAuthUser] = useStateCheckEquality<AuthUser>(undefined) + + useEffect(() => { + const cachedUser = localStorage.getItem(CACHED_USER_KEY) + setAuthUser(cachedUser && JSON.parse(cachedUser)) + }, [setAuthUser]) + + useEffect(() => { + return onIdTokenChanged(auth, async (fbUser) => { + if (fbUser) { + let user = await getUser(fbUser.uid) + if (!user) { + const deviceToken = ensureDeviceToken() + user = (await createUser({ deviceToken })) as User + } + setAuthUser(user) + // Persist to local storage, to reduce login blink next time. + // Note: Cap on localStorage size is ~5mb + localStorage.setItem(CACHED_USER_KEY, JSON.stringify(user)) + setCachedReferralInfoForUser(user) + setAuthCookies(await fbUser.getIdToken(), fbUser.refreshToken) + } else { + // User logged out; reset to null + setAuthUser(null) + localStorage.removeItem(CACHED_USER_KEY) + deleteAuthCookies() + } + }) + }, [setAuthUser]) + + const authUserId = authUser?.id + const authUsername = authUser?.username + useEffect(() => { + if (authUserId && authUsername) { + identifyUser(authUserId) + setUserProperty('username', authUsername) + return listenForUser(authUserId, setAuthUser) + } + }, [authUserId, authUsername, setAuthUser]) + + return ( + <AuthContext.Provider value={authUser}>{children}</AuthContext.Provider> + ) +} diff --git a/web/components/bets-list.tsx b/web/components/bets-list.tsx index 2114ec2b..a306a020 100644 --- a/web/components/bets-list.tsx +++ b/web/components/bets-list.tsx @@ -78,10 +78,10 @@ export function BetsList(props: { const getTime = useTimeSinceFirstRender() useEffect(() => { - if (bets && contractsById) { - trackLatency('portfolio', getTime()) + if (bets && contractsById && signedInUser) { + trackLatency(signedInUser.id, 'portfolio', getTime()) } - }, [bets, contractsById, getTime]) + }, [signedInUser, bets, contractsById, getTime]) if (!bets || !contractsById) { return <LoadingIndicator /> diff --git a/web/components/feed/feed-items.tsx b/web/components/feed/feed-items.tsx index ff5f5440..ea8302b8 100644 --- a/web/components/feed/feed-items.tsx +++ b/web/components/feed/feed-items.tsx @@ -23,6 +23,7 @@ import BetRow from '../bet-row' import { Avatar } from '../avatar' import { ActivityItem } from './activity-items' import { useSaveSeenContract } from 'web/hooks/use-seen-contracts' +import { useUser } from 'web/hooks/use-user' import { trackClick } from 'web/lib/firebase/tracking' import { DAY_MS } from 'common/util/time' import NewContractBadge from '../new-contract-badge' @@ -118,6 +119,7 @@ export function FeedQuestion(props: { const { volumeLabel } = contractMetrics(contract) const isBinary = outcomeType === 'BINARY' const isNew = createdTime > Date.now() - DAY_MS && !isResolved + const user = useUser() return ( <div className={'flex gap-2'}> @@ -149,7 +151,7 @@ export function FeedQuestion(props: { href={ props.contractPath ? props.contractPath : contractPath(contract) } - onClick={() => trackClick(contract.id)} + onClick={() => user && trackClick(user.id, contract.id)} className="text-lg text-indigo-700 sm:text-xl" > {question} diff --git a/web/hooks/use-algo-feed.ts b/web/hooks/use-algo-feed.ts index fde50e80..e195936f 100644 --- a/web/hooks/use-algo-feed.ts +++ b/web/hooks/use-algo-feed.ts @@ -25,7 +25,7 @@ export const useAlgoFeed = ( getDefaultFeed().then((feed) => setAllFeed(feed)) } else setAllFeed(feed) - trackLatency('feed', getTime()) + trackLatency(user.id, 'feed', getTime()) console.log('"all" feed load time', getTime()) }) diff --git a/web/hooks/use-seen-contracts.ts b/web/hooks/use-seen-contracts.ts index 501e7b0c..d21ca84c 100644 --- a/web/hooks/use-seen-contracts.ts +++ b/web/hooks/use-seen-contracts.ts @@ -3,6 +3,7 @@ import { useEffect, useState } from 'react' import { Contract } from 'common/contract' import { trackView } from 'web/lib/firebase/tracking' import { useIsVisible } from './use-is-visible' +import { useUser } from './use-user' export const useSeenContracts = () => { const [seenContracts, setSeenContracts] = useState<{ @@ -21,18 +22,19 @@ export const useSaveSeenContract = ( contract: Contract ) => { const isVisible = useIsVisible(elem) + const user = useUser() useEffect(() => { - if (isVisible) { + if (isVisible && user) { const newSeenContracts = { ...getSeenContracts(), [contract.id]: Date.now(), } localStorage.setItem(key, JSON.stringify(newSeenContracts)) - trackView(contract.id) + trackView(user.id, contract.id) } - }, [isVisible, contract]) + }, [isVisible, user, contract]) } const key = 'feed-seen-contracts' diff --git a/web/hooks/use-user.ts b/web/hooks/use-user.ts index e04a69ca..4c492d6c 100644 --- a/web/hooks/use-user.ts +++ b/web/hooks/use-user.ts @@ -1,4 +1,4 @@ -import { useEffect, useState } from 'react' +import { useContext, useEffect, useState } from 'react' import { useFirestoreDocumentData } from '@react-query-firebase/firestore' import { QueryClient } from 'react-query' @@ -6,32 +6,14 @@ import { doc, DocumentData } from 'firebase/firestore' import { PrivateUser } from 'common/user' import { getUser, - listenForLogin, listenForPrivateUser, - listenForUser, User, users, } from 'web/lib/firebase/users' -import { useStateCheckEquality } from './use-state-check-equality' -import { identifyUser, setUserProperty } from 'web/lib/service/analytics' +import { AuthContext } from 'web/components/auth-context' export const useUser = () => { - const [user, setUser] = useStateCheckEquality<User | null | undefined>( - undefined - ) - - useEffect(() => listenForLogin(setUser), [setUser]) - - useEffect(() => { - if (user) { - identifyUser(user.id) - setUserProperty('username', user.username) - - return listenForUser(user.id, setUser) - } - }, [user, setUser]) - - return user + return useContext(AuthContext) } export const usePrivateUser = (userId?: string) => { diff --git a/web/lib/firebase/tracking.ts b/web/lib/firebase/tracking.ts index f6ad3aa8..d1828e01 100644 --- a/web/lib/firebase/tracking.ts +++ b/web/lib/firebase/tracking.ts @@ -2,16 +2,9 @@ import { doc, collection, setDoc } from 'firebase/firestore' import { db } from './init' import { ClickEvent, LatencyEvent, View } from 'common/tracking' -import { listenForLogin, User } from './users' -let user: User | null = null -if (typeof window !== 'undefined') { - listenForLogin((u) => (user = u)) -} - -export async function trackView(contractId: string) { - if (!user) return - const ref = doc(collection(db, 'private-users', user.id, 'views')) +export async function trackView(userId: string, contractId: string) { + const ref = doc(collection(db, 'private-users', userId, 'views')) const view: View = { contractId, @@ -21,9 +14,8 @@ export async function trackView(contractId: string) { return await setDoc(ref, view) } -export async function trackClick(contractId: string) { - if (!user) return - const ref = doc(collection(db, 'private-users', user.id, 'events')) +export async function trackClick(userId: string, contractId: string) { + const ref = doc(collection(db, 'private-users', userId, 'events')) const clickEvent: ClickEvent = { type: 'click', @@ -35,11 +27,11 @@ export async function trackClick(contractId: string) { } export async function trackLatency( + userId: string, type: 'feed' | 'portfolio', latency: number ) { - if (!user) return - const ref = doc(collection(db, 'private-users', user.id, 'latency')) + const ref = doc(collection(db, 'private-users', userId, 'latency')) const latencyEvent: LatencyEvent = { type, diff --git a/web/lib/firebase/users.ts b/web/lib/firebase/users.ts index 89852851..481f86de 100644 --- a/web/lib/firebase/users.ts +++ b/web/lib/firebase/users.ts @@ -15,15 +15,10 @@ import { } from 'firebase/firestore' import { getAuth } from 'firebase/auth' import { ref, getStorage, uploadBytes, getDownloadURL } from 'firebase/storage' -import { - onIdTokenChanged, - GoogleAuthProvider, - signInWithPopup, -} from 'firebase/auth' +import { GoogleAuthProvider, signInWithPopup } from 'firebase/auth' import { zip } from 'lodash' import { app, db } from './init' import { PortfolioMetrics, PrivateUser, User } from 'common/user' -import { createUser } from './api' import { coll, getValue, @@ -37,13 +32,11 @@ import { safeLocalStorage } from '../util/local' import { filterDefined } from 'common/util/array' import { addUserToGroupViaId } from 'web/lib/firebase/groups' import { removeUndefinedProps } from 'common/util/object' -import { randomString } from 'common/util/random' import dayjs from 'dayjs' import utc from 'dayjs/plugin/utc' dayjs.extend(utc) import { track } from '@amplitude/analytics-browser' -import { deleteAuthCookies, setAuthCookies } from './auth' export const users = coll<User>('users') export const privateUsers = coll<PrivateUser>('private-users') @@ -97,7 +90,6 @@ export function listenForPrivateUser( return listenForValue<PrivateUser>(userRef, setPrivateUser) } -const CACHED_USER_KEY = 'CACHED_USER_KEY' const CACHED_REFERRAL_USERNAME_KEY = 'CACHED_REFERRAL_KEY' const CACHED_REFERRAL_CONTRACT_ID_KEY = 'CACHED_REFERRAL_CONTRACT_KEY' const CACHED_REFERRAL_GROUP_ID_KEY = 'CACHED_REFERRAL_GROUP_KEY' @@ -130,7 +122,7 @@ export function writeReferralInfo( local?.setItem(CACHED_REFERRAL_CONTRACT_ID_KEY, contractId) } -async function setCachedReferralInfoForUser(user: User | null) { +export async function setCachedReferralInfoForUser(user: User | null) { if (!user || user.referredByUserId) return // if the user wasn't created in the last minute, don't bother const now = dayjs().utc() @@ -181,46 +173,6 @@ async function setCachedReferralInfoForUser(user: User | null) { local?.removeItem(CACHED_REFERRAL_CONTRACT_ID_KEY) } -// used to avoid weird race condition -let createUserPromise: Promise<User> | undefined = undefined - -export function listenForLogin(onUser: (user: User | null) => void) { - const local = safeLocalStorage() - const cachedUser = local?.getItem(CACHED_USER_KEY) - onUser(cachedUser && JSON.parse(cachedUser)) - - return onIdTokenChanged(auth, async (fbUser) => { - if (fbUser) { - let user: User | null = await getUser(fbUser.uid) - if (!user) { - if (createUserPromise == null) { - const local = safeLocalStorage() - let deviceToken = local?.getItem('device-token') - if (!deviceToken) { - deviceToken = randomString() - local?.setItem('device-token', deviceToken) - } - createUserPromise = createUser({ deviceToken }).then((r) => r as User) - } - user = await createUserPromise - } - onUser(user) - - // Persist to local storage, to reduce login blink next time. - // Note: Cap on localStorage size is ~5mb - local?.setItem(CACHED_USER_KEY, JSON.stringify(user)) - setCachedReferralInfoForUser(user) - setAuthCookies(await fbUser.getIdToken(), fbUser.refreshToken) - } else { - // User logged out; reset to null - onUser(null) - createUserPromise = undefined - local?.removeItem(CACHED_USER_KEY) - deleteAuthCookies() - } - }) -} - export async function firebaseLogin() { const provider = new GoogleAuthProvider() return signInWithPopup(auth, provider) diff --git a/web/pages/_app.tsx b/web/pages/_app.tsx index d081bc9a..52316eb0 100644 --- a/web/pages/_app.tsx +++ b/web/pages/_app.tsx @@ -5,6 +5,7 @@ import Head from 'next/head' import Script from 'next/script' import { usePreserveScroll } from 'web/hooks/use-preserve-scroll' import { QueryClient, QueryClientProvider } from 'react-query' +import { AuthProvider } from 'web/components/auth-context' function firstLine(msg: string) { return msg.replace(/\r?\n.*/s, '') @@ -78,9 +79,11 @@ function MyApp({ Component, pageProps }: AppProps) { /> </Head> - <QueryClientProvider client={queryClient}> - <Component {...pageProps} /> - </QueryClientProvider> + <AuthProvider> + <QueryClientProvider client={queryClient}> + <Component {...pageProps} /> + </QueryClientProvider> + </AuthProvider> </> ) } From 6603effd1bb691dceeb5213cdbaaf425c78cccb9 Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Thu, 21 Jul 2022 01:16:21 -0700 Subject: [PATCH 072/113] Use https for hotlinked image Editing main from my phone, fingers crossed --- web/public/mtg/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/public/mtg/index.html b/web/public/mtg/index.html index 5fd31966..62849462 100644 --- a/web/public/mtg/index.html +++ b/web/public/mtg/index.html @@ -152,7 +152,7 @@ <details id="addl-options"> <summary> <img - src="http://mythicspoiler.com/images/buttons/ustset.png" + src="https://mythicspoiler.com/images/buttons/ustset.png" style="width: 32px; vertical-align: top" /> Options From 96e9f749d24f717d7571cdbf820a2583d4738caa Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Thu, 21 Jul 2022 12:45:47 -0500 Subject: [PATCH 073/113] track search categories --- web/components/contract-search.tsx | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 730b113f..8eb7df6e 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -22,7 +22,7 @@ import { Spacer } from './layout/spacer' import { ENV, IS_PRIVATE_MANIFOLD } from 'common/envs/constants' import { useUser } from 'web/hooks/use-user' import { useFollows } from 'web/hooks/use-follows' -import { trackCallback } from 'web/lib/service/analytics' +import { track, trackCallback } from 'web/lib/service/analytics' import ContractSearchFirestore from 'web/pages/contract-search-firestore' import { useMemberGroups } from 'web/hooks/use-group' import { Group, NEW_USER_GROUP_SLUGS } from 'common/group' @@ -111,8 +111,14 @@ export function ContractSearch(props: { querySortOptions?.defaultFilter ?? 'open' ) const pillsEnabled = !additionalFilter + const [pillFilter, setPillFilter] = useState<string | undefined>(undefined) + const selectFilter = (pill: string | undefined) => () => { + setPillFilter(pill) + track('select search category', { category: pill ?? 'all' }) + } + const { filters, numericFilters } = useMemo(() => { let filters = [ filter === 'open' ? 'isResolved:false' : '', @@ -191,7 +197,7 @@ export function ContractSearch(props: { className="!select !select-bordered" value={filter} onChange={(e) => setFilter(e.target.value as filter)} - onBlur={trackCallback('select search filter')} + onBlur={trackCallback('select search filter', { filter })} > <option value="open">Open</option> <option value="closed">Closed</option> @@ -204,7 +210,7 @@ export function ContractSearch(props: { classNames={{ select: '!select !select-bordered', }} - onBlur={trackCallback('select search sort')} + onBlur={trackCallback('select search sort', { sort })} /> )} <Configure @@ -222,14 +228,14 @@ export function ContractSearch(props: { <PillButton key={'all'} selected={pillFilter === undefined} - onSelect={() => setPillFilter(undefined)} + onSelect={selectFilter(undefined)} > All </PillButton> <PillButton key={'personal'} selected={pillFilter === 'personal'} - onSelect={() => setPillFilter('personal')} + onSelect={selectFilter('personal')} > For you </PillButton> @@ -237,7 +243,7 @@ export function ContractSearch(props: { <PillButton key={'your-bets'} selected={pillFilter === 'your-bets'} - onSelect={() => setPillFilter('your-bets')} + onSelect={selectFilter('your-bets')} > Your bets </PillButton> @@ -247,7 +253,7 @@ export function ContractSearch(props: { <PillButton key={slug} selected={pillFilter === slug} - onSelect={() => setPillFilter(slug)} + onSelect={selectFilter(slug)} > {name} </PillButton> From 91bec9c9964056b5894cc709e14454cd5534f1df Mon Sep 17 00:00:00 2001 From: mantikoros <95266179+mantikoros@users.noreply.github.com> Date: Thu, 21 Jul 2022 14:43:10 -0500 Subject: [PATCH 074/113] Referrals page (#676) * Referrals page added to sidebar; useSaveReferral; InfoBox * text color * eslint * migrate useUsers hook to react-query (#674) * Remove bet button from free response comments * Make answer replies more closely spaced together * Host Ida and Alex's MTG Guesser game (#656) * Copy over code from Mtg Guesser * Run Prettier * CSS Tweaks: Hover feedback, button positioning * Hide all but counterspell & burn, for now * Move to /mtg directory * Fix prettierignore * smaller jsons (#673) limited burn to only red cards and also added limited json files to only have fields needed to play * Add Ida's tweak to card position Co-authored-by: marsteralex <bob.masteralex@gmail.com> * Adjust card positioning * Make the select screen index.html * Remove other guessing games * Remove alternate versions; add Alex's email * Remove unused jsons * Small FR comments tweaks * Spacing tweak * Changing manalinks table UI (#665) From table to card view * Fix comment spacing on non-FR * Move "Send M$" lower in sidebar More list. * Move leaderboards up in mobile nav * eslint * prettier Co-authored-by: Sinclair Chen <abc.sinclair@gmail.com> Co-authored-by: James Grugett <jahooma@gmail.com> Co-authored-by: Austin Chen <akrolsmir@gmail.com> Co-authored-by: marsteralex <bob.masteralex@gmail.com> Co-authored-by: ingawei <46611122+ingawei@users.noreply.github.com> --- web/components/info-box.tsx | 30 +++++++++++++ web/components/nav/sidebar.tsx | 2 + web/hooks/use-save-referral.ts | 27 +++++++++++ web/pages/[username]/[contractSlug].tsx | 17 +++---- web/pages/group/[...slugs]/index.tsx | 22 ++++----- web/pages/home.tsx | 3 ++ web/pages/index.tsx | 4 ++ web/pages/referrals.tsx | 57 ++++++++++++++++++++++++ web/public/logo-flapping-with-money.gif | Bin 0 -> 293878 bytes 9 files changed, 137 insertions(+), 25 deletions(-) create mode 100644 web/components/info-box.tsx create mode 100644 web/hooks/use-save-referral.ts create mode 100644 web/pages/referrals.tsx create mode 100644 web/public/logo-flapping-with-money.gif diff --git a/web/components/info-box.tsx b/web/components/info-box.tsx new file mode 100644 index 00000000..34f65089 --- /dev/null +++ b/web/components/info-box.tsx @@ -0,0 +1,30 @@ +import clsx from 'clsx' +import { InformationCircleIcon } from '@heroicons/react/solid' + +import { Linkify } from './linkify' + +export function InfoBox(props: { + title: string + text: string + className?: string +}) { + const { title, text, className } = props + return ( + <div className={clsx('rounded-md bg-gray-50 p-4', className)}> + <div className="flex"> + <div className="flex-shrink-0"> + <InformationCircleIcon + className="h-5 w-5 text-gray-400" + aria-hidden="true" + /> + </div> + <div className="ml-3"> + <h3 className="text-sm font-medium text-black">{title}</h3> + <div className="mt-2 text-sm text-black"> + <Linkify text={text} /> + </div> + </div> + </div> + </div> + ) +} diff --git a/web/components/nav/sidebar.tsx b/web/components/nav/sidebar.tsx index 9486a97b..b7117a20 100644 --- a/web/components/nav/sidebar.tsx +++ b/web/components/nav/sidebar.tsx @@ -63,6 +63,7 @@ function getMoreNavigation(user?: User | null) { return [ { name: 'Leaderboards', href: '/leaderboards' }, + { name: 'Referrals', href: '/referrals' }, { name: 'Charity', href: '/charity' }, { name: 'Send M$', href: '/links' }, { name: 'Discord', href: 'https://discord.gg/eHQBNBqXuh' }, @@ -114,6 +115,7 @@ function getMoreMobileNav() { ...(IS_PRIVATE_MANIFOLD ? [] : [ + { name: 'Referrals', href: '/referrals' }, { name: 'Charity', href: '/charity' }, { name: 'Send M$', href: '/links' }, { name: 'Discord', href: 'https://discord.gg/eHQBNBqXuh' }, diff --git a/web/hooks/use-save-referral.ts b/web/hooks/use-save-referral.ts new file mode 100644 index 00000000..788268b0 --- /dev/null +++ b/web/hooks/use-save-referral.ts @@ -0,0 +1,27 @@ +import { useRouter } from 'next/router' +import { useEffect } from 'react' + +import { User, writeReferralInfo } from 'web/lib/firebase/users' + +export const useSaveReferral = ( + user?: User | null, + options?: { + defaultReferrer?: string + contractId?: string + groupId?: string + } +) => { + const router = useRouter() + + useEffect(() => { + const { referrer } = router.query as { + referrer?: string + } + + const actualReferrer = referrer || options?.defaultReferrer + + if (!user && router.isReady && actualReferrer) { + writeReferralInfo(actualReferrer, options?.contractId, options?.groupId) + } + }, [user, router, options]) +} diff --git a/web/pages/[username]/[contractSlug].tsx b/web/pages/[username]/[contractSlug].tsx index 17453770..11d9af9c 100644 --- a/web/pages/[username]/[contractSlug].tsx +++ b/web/pages/[username]/[contractSlug].tsx @@ -10,7 +10,7 @@ import { useUser } from 'web/hooks/use-user' import { ResolutionPanel } from 'web/components/resolution-panel' import { Title } from 'web/components/title' import { Spacer } from 'web/components/layout/spacer' -import { listUsers, User, writeReferralInfo } from 'web/lib/firebase/users' +import { listUsers, User } from 'web/lib/firebase/users' import { Contract, getContractFromSlug, @@ -43,9 +43,9 @@ import { CPMMBinaryContract } from 'common/contract' import { AlertBox } from 'web/components/alert-box' import { useTracking } from 'web/hooks/use-tracking' import { CommentTipMap, useTipTxns } from 'web/hooks/use-tip-txns' -import { useRouter } from 'next/router' import { useLiquidity } from 'web/hooks/use-liquidity' import { richTextToString } from 'common/util/parse' +import { useSaveReferral } from 'web/hooks/use-save-referral' export const getStaticProps = fromPropz(getStaticPropz) export async function getStaticPropz(props: { @@ -157,15 +157,10 @@ export function ContractPageContent( const ogCardProps = getOpenGraphProps(contract) - const router = useRouter() - - useEffect(() => { - const { referrer } = router.query as { - referrer?: string - } - if (!user && router.isReady) - writeReferralInfo(contract.creatorUsername, contract.id, referrer) - }, [user, contract, router]) + useSaveReferral(user, { + defaultReferrer: contract.creatorUsername, + contractId: contract.id, + }) const rightSidebar = hasSidePanel ? ( <Col className="gap-4"> diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index 0d38580c..90f39e83 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -14,12 +14,7 @@ import { } from 'web/lib/firebase/groups' import { Row } from 'web/components/layout/row' import { UserLink } from 'web/components/user-page' -import { - firebaseLogin, - getUser, - User, - writeReferralInfo, -} from 'web/lib/firebase/users' +import { firebaseLogin, getUser, User } from 'web/lib/firebase/users' import { Col } from 'web/components/layout/col' import { useUser } from 'web/hooks/use-user' import { listMembers, useGroup, useMembers } from 'web/hooks/use-group' @@ -34,7 +29,7 @@ import { Linkify } from 'web/components/linkify' import { fromPropz, usePropz } from 'web/hooks/use-propz' import { Tabs } from 'web/components/layout/tabs' import { CreateQuestionButton } from 'web/components/create-question-button' -import React, { useEffect, useState } from 'react' +import React, { useState } from 'react' import { GroupChat } from 'web/components/groups/group-chat' import { LoadingIndicator } from 'web/components/loading-indicator' import { Modal } from 'web/components/layout/modal' @@ -53,6 +48,7 @@ import { searchInAny } from 'common/util/parse' import { useWindowSize } from 'web/hooks/use-window-size' import { CopyLinkButton } from 'web/components/copy-link-button' import { ENV_CONFIG } from 'common/envs/constants' +import { useSaveReferral } from 'web/hooks/use-save-referral' export const getStaticProps = fromPropz(getStaticPropz) export async function getStaticPropz(props: { params: { slugs: string[] } }) { @@ -155,13 +151,11 @@ export default function GroupPage(props: { const messages = useCommentsOnGroup(group?.id) const user = useUser() - useEffect(() => { - const { referrer } = router.query as { - referrer?: string - } - if (!user && router.isReady) - writeReferralInfo(creator.username, undefined, referrer, group?.id) - }, [user, creator, group, router]) + + useSaveReferral(user, { + defaultReferrer: creator.username, + groupId: group?.id, + }) const { width } = useWindowSize() const chatDisabled = !group || group.chatDisabled diff --git a/web/pages/home.tsx b/web/pages/home.tsx index 53bb6ec9..61003895 100644 --- a/web/pages/home.tsx +++ b/web/pages/home.tsx @@ -12,6 +12,7 @@ import { getContractFromSlug } from 'web/lib/firebase/contracts' import { useTracking } from 'web/hooks/use-tracking' import { track } from 'web/lib/service/analytics' import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' +import { useSaveReferral } from 'web/hooks/use-save-referral' export const getServerSideProps = redirectIfLoggedOut('/') @@ -21,6 +22,8 @@ const Home = () => { const router = useRouter() useTracking('view home') + useSaveReferral() + return ( <> <Page suspend={!!contract}> diff --git a/web/pages/index.tsx b/web/pages/index.tsx index d9ff7f51..fd5cf382 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -7,6 +7,7 @@ import { LandingPagePanel } from 'web/components/landing-page-panel' import { Col } from 'web/components/layout/col' import { ManifoldLogo } from 'web/components/nav/manifold-logo' import { redirectIfLoggedIn } from 'web/lib/firebase/server-auth' +import { useSaveReferral } from 'web/hooks/use-save-referral' export const getServerSideProps = redirectIfLoggedIn('/home', async (_) => { // These hardcoded markets will be shown in the frontpage for signed-out users: @@ -32,6 +33,9 @@ export default function Home(props: { hotContracts: Contract[] }) { // on this page and they log in -- in the future we will make some cleaner way const user = useUser() const router = useRouter() + + useSaveReferral() + useEffect(() => { if (user != null) { router.replace('/home') diff --git a/web/pages/referrals.tsx b/web/pages/referrals.tsx new file mode 100644 index 00000000..c879afaa --- /dev/null +++ b/web/pages/referrals.tsx @@ -0,0 +1,57 @@ +import { Col } from 'web/components/layout/col' +import { SEO } from 'web/components/SEO' +import { Title } from 'web/components/title' +import { useUser } from 'web/hooks/use-user' +import { Page } from 'web/components/page' +import { useTracking } from 'web/hooks/use-tracking' +import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' +import { REFERRAL_AMOUNT } from 'common/user' +import { CopyLinkButton } from 'web/components/copy-link-button' +import { ENV_CONFIG } from 'common/envs/constants' +import { InfoBox } from 'web/components/info-box' + +export const getServerSideProps = redirectIfLoggedOut('/') + +export default function ReferralsPage() { + const user = useUser() + + useTracking('view referrals') + + const url = `https://${ENV_CONFIG.domain}?referrer=${user?.username}` + + return ( + <Page> + <SEO title="Referrals" description="" url="/add-funds" /> + + <Col className="items-center"> + <Col className="h-full rounded bg-white p-4 py-8 sm:p-8 sm:shadow-md"> + <Title className="!mt-0" text="Referrals" /> + <img + className="mb-6 block -scale-x-100 self-center" + src="/logo-flapping-with-money.gif" + width={200} + height={200} + /> + + <div className={'mb-4'}> + Invite new users to Manifold and get M${REFERRAL_AMOUNT} if they + sign up! + </div> + + <CopyLinkButton + url={url} + tracking="copy referral link" + buttonClassName="btn-md rounded-l-none" + toastClassName={'-left-28 mt-1'} + /> + + <InfoBox + title="FYI" + className="mt-4 max-w-md" + text="You can also earn the referral bonus from sharing the link to any market or group you've created!" + /> + </Col> + </Col> + </Page> + ) +} diff --git a/web/public/logo-flapping-with-money.gif b/web/public/logo-flapping-with-money.gif new file mode 100644 index 0000000000000000000000000000000000000000..0ef936a42bdada3f461bf31a43179a059aab2b28 GIT binary patch literal 293878 zcmb5VcT`is*C?6>gc1x$M=|t(bdipRBE19wL7Ma;2oX>aQA3elLa$;Jq<87fP((Tb z>7WKddI`M>&);{y@4oxTU2m;7f1ERA*O|TdtTVHZrnZKhyj=rr1MSf^KwZ99U9MMC zsqf<N<=N@QJ^4O;)qxLLi)UvS2m9xL|6XV+_PIS8J3qgep4eahbKKgn@%Gi6wsOCQ zLZ8mv{{C-dOC#dR$zMOuDJ`YGisF^g;oYPd5_$V<bK_L!PXF=oUyRE{;m0LC)PTdo z(O*9f?`sa$Rjp+v|9<^^=JfPJ7uBz?G7$6jr>V|R7h%iXVEB#S%<<7*tNX-*gY(~{ zqo=MDM~8oLk-tWUb`KBF_jb>1AB-5P4_FuyH`h<C?-RGTPEB=(2rZk_ll%QW<o&(# z>ax`by2Hy$$DLocEYU=?`k;Z@zz+FrYxC4dW6;KU#MfieM0;p=_bfPI7JY9pCw<|W z$E2~=(Bi_;pT%Q4v(eq1v)p%o)>co}*G|Sp_6B;%q@Rbcp3QhVjaQbetgW1w=?w?^ zOh*R)cxX7>-MMY9KRnd8V`DPn<vcMtzQ4MB(onPh$aLgu`_{(#NlU}V(&Dk3?O0Us zkJR}2mF451{vCVsQ5Wm)@6r~sQx^vNcIKuJs!CV=yr%MU{-omO({S_7R^JzYA30cz zekbnwJf3v4`0nXAJ~p~HF}64Heb34Adw}<}v-S7lPs=}M4_^7s__|N}dri68jD33l zXKv=;=iGs}+vM!@L2KiNhr@Vn)!O{8!@h6ih54iBPo{dlZhvXsjD7nv<mGI^$EDKz z<$$Nt;cw<Xm#=0e|9)&Y_QY{~e00y<ZtQEvR?v&tjKtqPUE9RLotdfq2<(sd84FY6 z`_UmkJ?zJG(iRFnEPc#g%*X$!|Gf6nXF4wYS6kCYdcu5j{YG*usiSSPwsP$SW~#TF zoRReV*W6)z#ILNB-}ubMgs5M`13RS!%UJ)}h@c;d(WJchf4+5Y*H^C<<t??hZq`(+ zmgFxt)vY(xuD^Xf*I2V29r`ou^;~S&&+?*`(7?H}!sVjerIfgNHQC<F%S*uj&%%94 zYjDrRSWN|ePfAPz4E%@wughE?jZnAqwfpy0y6cazb8vU^Mc6yJxOpn`Y&U=5LAW_8 z^O)V%m(a(kIk~!N1$a9d2N;+*1h_lMJM!GUgHZBU@PC4N;^b?G@PFdr>7(GU%wy;1 zW$&c$ul}EIaUR5ff%v*B^Qio10P!E5YF^$>h}&W^q7IVMw-K`PVv;hqq~+yB5K<D7 za^ezl;*z&SC1n((B^0Ej5dU3x{&DkmbXK^puJPZz{<V~OTz!2p3gY5^etu$px5T`> zUBo5j<>kdCq{OA9ME^mE`n>S;weuJC^x^#<3hGWi4&H7UUpFsL#D6H-*?T?nRp$98 z>HkvU2}WQ4e-rlf5&JKN#2mbyi2K`N#3jWf#GgF*k6!-;?c;mj>Hihu{|fD6@&e-| ze&5N*>zTKM(?4+D|3UsYcmLmv{sZ_=8U;gdw||Rb=b`T9@a&0`r?0lUGS9yeF-JE? z1qnxcX(tD1dr>J_`+pB-X<1Qw8G9$u+qWE?CFNvp+uO^_{|}x28~#0MS#?!8c^Ne| zc{xeRdus9$_f%A5@2N}5OUd4nP}le$Ty0MuUpr3+r~l#Y_K){}<KF)N#8pu9cCz#J z@;34E^7tPsK)ZVRdil6|VGwF+|5<f;1k%jS)6vV%N9aGx^uM%Lck*_7?&PT9?ezrl zU-PWs_J5H<!a+t(+EG?QRL)UKTGY--T3*!7@%C*|M|oLUyW4isPLj^IdHx&U@&A~= z|7EBDdj9Ew`5$o<>}2HRZ{2c`5OsEv_(#oI+D`P}E+Qo=Co5+!DP?abXXj+cBmPfB z@&B04|6xl1)Ai3j|5N?nj`6SYzg^48^PfL?|8pGR<;CCgv(uB~qr-#!z1<!1_SWXc z`r7Ks^3tEhh2Qg}Uq64$&CX0uO-_uDeIFem4i60u^!N4leCz(&)!ETb_|n$e(%jV8 zP+wPD^SQdJvZB1Kw4}JGups|aUhc;a`1d*Qva>QX($i8?l9Lh>aPe`mG0{<x5#eEP zLqmdtuy0<!3Va#x!r$-tGhZL?rx-8KCm!yP-CSLqog5wP?Q9>}SX)_IJTy0ZU}|D~ z-w17Jps%N^qphW>aZg=MRRwkTj<S-Xg1nrp%x&pgQj!wlVxl59g@urU0{ncuJlu#I zT-UF0a<H?pvM@7UWn_R~p@-4Y(ojRGC@COd(7*7*eFC9o0&D|B{u9Xlvq=M>mw;c? z*R(3}?IF;s!d5+%A3DR~ygJ!hRUf}bv)y_;*He}IEgqp3bxpfEuQv&4Tx``_{i#1q z!l5r)`*Z$amYmPpT<_<C;rFNzn(I0>g(JCINy65BHAUYG(78JAbZU#oOUyq%{?S)k zGFf5U8FgK^u5|jd>-S>o{<^Z+ddx!KJKg&7AI<)IYd`wyD}H^!f@!(*8Y<^IBd*@G z8EB|l_=e-v&CzSD{?ng+%l+p-<LBjJyjnDuepAir_d??mo56q4d$Q7@KS#g0ZgaN5 zXZ`13bN%)&LI~{*gO-M!g`T9FkA_+r_m+vdy6+8In-12eKD+-KYHdE+CUr(%-Y{%y zIoVtJUh-(Tt@Z4PywLyN@Jrj@v*W$>U&CL%{EPaOND>yp;z|mF3KWup>10+&A#e@k zd??cc*ZH?>&V}<~*PgG;ha<v}za#ikU4KU+^9z4RiPWw9j+W>~F2qPrxGu!XEfp@r zDIKmX#G@#M7IEq<Zi@+80!537dNQkvNoWnBKglK!-2SAPI~V;)wR*n#C(SlYXer$> z)om%mHNR*n)1z*6DGSprw4Cib;kNwFf2n9WC-87}`8}3Wcm*HI@_6M#gh27i#~7Kl zm0X;L@M>Q2gU73%(w&P}^Ru6?trp<Jgx3o5QXj7s73LSO6_?hnt(8=EUkb06)=WHJ zFKbvTUN3JsTwAXoP~P0A>|$}>sOk|Y*{B|nS>O0f)VR4>GxorJvv$h4WV3GW`TAx( zDeUG}!(yuYR^v*3$yU=w-TGEDx%=jJ%l?G>cI)v{$#&cM;rjL$0F?-t0AckYw?hR> z$sKgE8{|&7rpQhglbOfPS2mZ@o$hOX8#~_+;Uc>|d}$uLy~u*n-9C}}jop5UZz6jG z(vu#0gL2EIdqYY`8+*ejD$#wSI_s1D5iP;8{ZT#H&He9aP0@of6SF4=<K`}92NPC) zn+KD&;i89Aj%iO0r(Fxm4re^-HxFkq-$ak*d?%kA{qSEdJNg-Tbh&x-3ri(-ObTW7 zJf4pbEI<AoBfE9HfYTH^Sxh$bJo%IEQhu_O?YDKZj1Lz(UCB%HJY6j;C_h~*t=~Fb zuly!<wox<bdA8ZGTz<CIa<p}}O`sA#CwH-Wo$vGrR-Eq+$ZntS5jDmC?vI&y{XLj+ zsrY+1=ePa$h!ie<alDx3b#by%P;qg(QNMk0M*b##dA>jCb@}&rx#IHT{Al~11=8UG zR9XZO2N?_1!-H6R2$TxsAb1QOBB<3)V?hpP8^BY__O#OnkV6o3AE26A9gLaeP^8`m z8nd1bmL~FBiI@*`E?S)&GvqM2fe-Y4J)K;q<Zu+-NBCv9Ru>P)PK1`;N5-_CE&+v| zNOa6crUI?6!WKJG<^vyD>U+M51?)uI(&e&!)9RMW+=+43%jKBt>6U5QiN(a^UR&1s zrZBS;=Rc6kb=33i&go7(mM#xLrQM^-v5Sk)%j03~?a@%!O~A$E@d;}8>R9Y1rVr!^ z$oBRc1nef^={_MfwfpX8?j{%NeG)e7?R(I)n^GC`NyJ6F-(qGrwPE0sm|t(d&FO9$ zfi7PnTzkNtV=ui&FJCIHcfeU;FM}A9FI}KL_}F4Eb7~-8roMO3Ghi=^L{}j9O?${Y zb1!>EuRvk4cj$T3-aB$kfzq<}aKOx7&hbFOoul5%;n$~o?*Xtv6qOD!m}4Ig)h|?K z?IVUM?0<mA7OD&Cj6_-Ne`Fgh)R65Pi3`}zMZk)*G<8N3Gxzh5`b9cseWR&O`=2CY zi}YM{zGu$t=gSQi8Tj>m&pF*MK*5U9;W}d<ISvZ7^o#GO^^N5#92B8ri%kl2#)~Zu zip>X$AJq4amj@h_*uqN8zv)a=XC9Qg>X%qd_D$3^9h6~WORSc4CYxps%KZmRY>xUS z+fENEu&`2FD&46Lj>F0b{Zf0@{;6(-!zx^CsiUCobf3jxb^2hbvuywLP{845Jgm%B zQ+H-G^RT8+zwEJD|I9?wVQpn>nTLz+?9AoNVO_&unWta>?9bD~dIGE*6Rtb=o8zdV zN59-Vt$%Jw;i!=qTkcz+`(w@GsA+1j{CR!<kF9{CW)iHz|C{d5-OQtw75$2U$^M^* zO-HTd*oweq-Cw6OM{UQ06|ax_e_fm&eF4x{VyW~<AkJd~)Sxn$b$~>vc-#(;s|*#? zo2Rin?qD0L43iz0r+<0eiJ-5F(A4|Qn04HRG^mO)8~DxAeEd}+t}4bwZ-Ha>xLa<h zD$Z|Uf$Qw}8;ZUf7p}L+!+Fx9Wl)`%Hn1q5c+!iGt4=P^`y*_5(q}$YomxNeN9^TE zzb*ae^ly4gQduVht_GhoCkK{fnolkVF>#->m-UtvW>1Fvhd$>V4J_X|I~m5(*Wju2 zS5!Gqi4g`hA6W-iG!#!qaB($xg8HjEmZziXLpAxbgR2HFPru{oYYR2?*Y0PXjujfz z7Ml&OJ!n21uZ*iLb<tn9m_40n7^*Gz8(g<JJDnuZ*Hwn=Z`gC5P4yVmRi_PZI4hn_ z6XWV?3iLN0Tb|8K4b|1v4{mzCJewua*Ef9A-}25nn_DrcZ<-w3dft5YgB(}ivaG)y zFnjj%c&NVZXmI=W+1W3^l?DQp0XdlSoCGy&=wKZphbf-V!{Zye1PykgEYE+l4L5Yl z4(-IfJYPUuY3$K7*iFnjUqoISHujkf?WQ)L|B;Aq9B?t%%bY!5k{fOu@*CRAIXhoQ zU1=hQ8|;7N{JWxM*fg3pw4bl|cNHDqG*)16P;B{k&3w3NqJHS0{N>+u+bhje-wY0` zv;J<l8aB^N4jtAt|J}sIH_t5_95v1U-SQu9{&_TX)OPlF8+)aNL}hr~!FfTBFl_nF zI(*!%c(H?vZ&?&HJn6H%*i9d9S&|(-8G3oKhriOgqG@<Knsu>XXxO@DHhenKd~r}2 z-@4&qcs4V8ao8~2y5%=~_VeuGh;XHi9Bz32oAdIx$FOZTZTNgi@$!Ti-?m?1_;=0n z@^osr?XZ6M@7Bx9Gt!kWm&e}>FLtvo&sPk;oK6m395!G6CC7g`UpBlvoxQv`9{zH1 zG<<n+_Ad&vVL@_Oh&h(h9}7*#(llV{rm*zKSU6h{qg)V^c@T?#5L<c>M?=uHsUWW7 zAOu@5k6bXHd9Z+gFfu(@xFJ|%Dp>3|Sb{A?N-jj&JVeGnL@qr<p&>+RD&)>_2#PIK zRW4NBJXFI!R4YAHry*2tD%9XO6wUVbzT8_A^S2ND-<qetwP<*2HTBl!_^mBln7v$> zqj{LKf0%1}*yDyUkEt-v<1h?cxVK!muX*@$|8W2G@PLN!z^U-p$KhDEh+w&hQ1gf| z|A>h6h^U5$n5l@k%i{<fTV$eKWU_f=s()m9dSqrpWcE~K&T%B3E$X9ORGxWMzJF9< zdQ@>kROwVy`EgVwTXeNtbd7m*oqu$37u9V54UPbtLqVeO;08IvM{vqU96cKW@WK|j zMWWXw0G4bi?@2&m5;5y}AbtX!lPy4>01`m~nGpZ^B4$JZDbN5WTfjIOq+%PpTm$SS z0B#|GgXZyv{_zL?Gy`OcEu_ICJlzvGU>*uMHpd;v#ciRe=FqW!d-S1r+Ij#)#1_Zo zh6_T2VMY2}09qLU__uii;suVnh?f0@{_RRCj0E@wJW=FfJP1JHhfe$s0Ttq4YydFm z5``1(O#~nS`WT2bB5Bx>YK%;kB>`rtOww7UXOf_h!va(r^=J^(a`;3>T#{~Ml5z&c zPk2i2BCrn&d@Ygi@L?(w3A9Q|=~jo#5TSR-2~HU)%DoVAd};>-q=SQ|;1i!tr|G$Y z3~kfC>{HkPz&9`{3ae?}LI5{JdP^R_4nwPiN{uQ?2Lfo~GIUMwbl0iVQdZLdD5{JX zy7?FiCqml$j7)lo%+H|!dmPLhn-rOm8AS~#W!L2*(5GOMwY9TqguwNyI(RIY1(R;R znpG4@*WRcjONJFlr1r4Cvm*LJ$pCuHyQz$KGa2ugWT4q(YA^Y$k;{xsZ7R@hJZ&i) z+JdLvn9kWc$;m`fOTxi6WB@!2(1?RZV>1^bvmv&=G-&Vuo<<T4eT<;d#o=k1@N}7Y zFBFw84s?%XYfGdFi%kE^{>~ra3nfw%VyHOav~oD;5E`0P33^IRK}Ur70f1@}5D$!P z0*2NXmBG&OZW!Qu8%3i7fW9SwjY%N1Er^s3{9TmtQ!dXK0l9;MLIl8ba1hsvJlV`l z9kLHS5vB<TenHSEqd#o{D4ro~9}#Fi6W-fKWj~wt;lx02Sb8}Wl?F{dEt!&&{0NK# z&)}%5Gx8T2^Ofr9-y!HWaZpN9!61_6u=kPSB?gjGnbsOv*mD9?)}+Y80P6`9K2e3L zWE#cFM`>8_9ouXZ;i9M)1xi%Z&q)9`EF^!8o)-n$!~l;eJ`KC&R;*<`C-^v!>Dmai zLlP7fGf8(afTI-1tSxvxqhz57q*y@l3<q98QKBS315F?a3}pW{;2xR!tTAywA!qm$ zrj7+q5epi1;#?*2cm6;IiInWv5A#vkUU(lvG}Uba&=H%wHxt8)rY>BwQMaWx!j}Bi z$&!rnxsC?<qhPWxviE2JObFWOCL0JE!i|OGyr^vJ#mP(pJ>f7j1ced2=$bnqom{l$ zL=}q3C-qhJtb*kP!OR4zu1hTN4xs89E#M{=ToYyUl$g3g^SO<kT9yi=j;9C(Q1R>5 z9La%#FgA)3Q~|ve2J2aMZaxSiRUQWNmO!DfUZd<r`R6ueLnUQiKy91+2bp?c8xeLN zK^tCNchm#fps|7AX$uGxl)Cj%LO@wf2%bQh{LjVK>Idb3UX_`@_^DR$rJT_XQH}I6 zY2e=g;9~-9xp3o=E10?2dV);Nht1C}Nx#(gkta}xqA9RgiVlmWgQ=o|ENcZaj4WJH zxt>;x_IXO6_QTLOASlK&n=f=gRRGX*Ek!sYp(`u1L(V6p66S*ie@8>rXq&rq=q5h_ zCa~0E@W#PQ%hZQAeMS@^-vF@twzc!?^fzsRGdk8>67(M>iq|buq0=#K5<Y>IusJkr z{AKH4Nx287wZ{oH!0HP(J79qgu!R8JqN3D91BrN=RrhMB5-5q#Fhl_=Lf5jy5JX>m zk!1I=1<>k9z*a~!R4r|coS^q5R)Hi6*XU-1RjL#fh#>}4jE1gRb{<4je~z}o31z%m z@6?HeO8Nmm;b==yl)~5Q?hJem$F}s;X1se?tTC5}KJjM7(lipN-B8rZ*<TOjKsH#b z+qRi`y4^b3l#)ku;&`ANmilJ)SAZ?RQP&DV&a9&T>M@si9pLj6N9$utXMf)QW-dnW zQi4GE101W&a>(ux75XerMWchK6M}=EoqxLufN*SBcDkj!7U@N})re8i)S;=;vD68A zeFrOzZTBdKsNa=mr_gVBI}qq_DEdsLzH*V~mfO%OKn}^WpIg2|gsMy)Lw6R{(@j^> zt^2k9E#QSbwfp%1_o}xAs(h)bw>G=A!Sn;`TK|+4u9xV2lvy!oHN-UC=3{Gl%OZCp zJB2IDn|8MHO7z!1dT}g-o{DE+BZW_UbKN3T)jYb@LrTQK9#9e*ROLj&L#n1JOAada zmUjOvr#l1|ttzObC{HPvCKPZej~r<A3i$!w;VGOEH2S)u%x(Zvcvs<gA?`ApDE2Bo zKgOGtMC*@%6v&TW)sG9WwD_P<EFJir@<l&V77&64|3T9#*?!mBtgwDzQK!>yd_574 z_s+*s721Mt0mfuu01+ZAzm}r6sr2EyL7^jxJX>0B0>%B-iNO`n#l}N0j`nB3pzo{r z<rwckJha9ZY=oG2_@kE|X0b&B-g!J_-1=3372+U4IYgrJ`7wD=NX@nR5NuhQ4oh5M z10z`>QMNS8WXd@GNmV?R)T@V5*eZ^a;q)@X76~Z04B^L8F`z(cf2S`vD5@$SKDW&e z+?=Iy0}8r8+L5qA(b?`FF#sI!4hELNO!;zcaQNMKUO%u!CAjL6I6C|z@n$7t+v=h5 zdi%U}f{wDcG=WM{0(J+}unL=DBn~G#)!oXT@ogRF3kO(Wz_V})q{1(qUSi~5bJphi zdwQe;b8iR{D2#!`Y|hcW#xW5`;!_~;B@@hX@eL?%7zwC=fw<e2T`y0T_%RdC+?0D( zE%-Vf2lECKfvj*ESM-3mCr-81T-vrdR)2m~bcVMctbm4C+5VO<Pv*sa3qPO}CA4VU z;Oa!Z6;Pk!P(T#dA7U%$gRMC=2C{_)$mJ{uz`Uh#0D1{(pOQbijS#<0Gj$S;he5*3 z=2IyI*b)vhzq716-77w4riKOt+Thp`-mEyll}jwO`<)e?4A5P&nF<CFV}r|udrM)! zwm8sD+@GYMF{)Uwu&0?F0q`y^o(AA8OoBl0RA}^?t~`j)YQ}0y8N9UyJ(<6u36KSV zA}UwQ%acbo!Id~Obv)IVEqWR~+=tgstpSt>6wDQ~@vsr(PW<znd1Z8qejx&OLlFFm z1mwX{S7dE+ivX3#OHY^~JgBXMp7`tGHBq*d7&4{S(3VIq@y*bKr>M2VxVi12S{vHB z?4d2jXzKW_2do%St>-qd`Kc#uy|??elN;c1<%Z)Yif*x;E%eHD!G=)x25`lWV%vjf zm5m&aR<F4<rk6Bw{7Tc!c|cvcC3^WQrl9R<QFBw7;?}Jz8&<C$JVh)kUV&YkZ2rR8 z(%HP{w7TRt4)Cia-}2gFU~T<=_T@Boe~Ywi{|ETe_FxOK$ZpoQY}s!0D@_PrZDUIH zLgH{M?&;a=7n2*i4%@5Y<j<BV0B88o#RWb33kELI&NSEe^jBh~0nCbdIp{qYG(y2* z)*+bPF?IcziT#I`#Kyz%{h;BUZ44!IcqcQyQ)zA%XPCfSN$IC+nsDdvD0){N{Zwb5 z%i#R@!=r@7bSUhGY3`lF-XX&6M`u?izdpLwjlFTE>jog;wsmi>8+aW+8=JRD)Gy;P z7?E$jRtFt#;wiii^-VX%FI$o?6`qDz^@Lmft#Jd~SvQ#yJ9k3Bwb3ICF1_h<{TT5J z3hg+fW|IQ(3$_z_<gbe&I(WLoAf7ZtQVFGI7IT~;&Z|W*@EhcrkJxu!asK&aacX2i z6UTioj_={<qIR;7X}RO{=pWs5NvEN_hu@d<v*n*{Elz)5HpHvErRTR8TQN#`%4X#_ zGq!46Xb|MFfrqY|mOiZY{4+DYZdPgcHICnMV&h?r+jzOt?8K%e&LLfehZP(K02m!? z{h6KI?gHIhBk)^Ik?p!7nZ=#wrgj!;Sq+$uEvI*#3hZSVgXgCAT!<g;#S2)^?7NK> znO4x3d@_i0aD>`loB`P`pUgF0^`0io9C?x2-(C^4ne*2d4e%8Y*NT<@eudL?MZxCB z>9dXLTCe4wKhFHfBDI0M!Qj~+EyM4*<nTXV{i2TM3N3i_>*Ce<$wAij;KjdZN>f^- zFOe40h1q`@O)x5yoW5igC~q>ZKya-v2s};0L*}7JL0#0~Svq#%)Vk6;>P*HaMx_vS zXhNg1lK;0xR!$z<T<!;BPc^w-?(b+KLe8r~Xvla<@c!fEh!D<c^loo>sN5omyQF4U zN941#7`++3s}!rqG1b!_N}MhPN!FV9=*!Id?&-@dcoczUKQ^jHA*K0}KCpNOx`Zf$ zpSgr03lsLx>Q_xKeT`B%8bYL0&b;~Q;}8)h;e%}BzQzWM2m8io+N2MlI}z;!sumu7 zD40=}QO#5w*aM(8SFJsGVC7S07_DskM>iCrz=$GB$?Wn$t&>cjKXlG|HlYuXAO^$b zcJ~hubW01aG43C(*~PZ!F#B0~_bZpsUpBp>iM*y5#W%_!v)gSIuwHv)6S%iY7kWoa z{v%xMeya@RiTq=fH9ruCV4&K6c5D~H`x6Pg1%It`MfA?D3bE+tNe5G;8p{jEL|vJT zTv*_$2F*h{^kgt2s@hx|483#WobBVB6d~r)R*1b?xL+8e6+P91dYAMdz%4(EB@v3A z!Y{_tjqY8J2h*tTp4<Z<30;N-oh&am$Xq{Wcqludk#s7#FR37FJ*h7}o7U?TYp-<$ zp<p(ntt=6xY8JmY;4nEzX!BLGz^C7oT;nlO^e7fS2+zGHw(eV#fj&cuSA?kyphY0K zNdC$LEUQKbU>C-G*x@tfkoK-nV%OICBWMOjouKu1?A3Ep2<vPA#s$)1oDU`e6v0r= zi~=WmG`v!~D#v>fu<?0$1#}DX?kBfd1VZS(sf;j>{^obHH?Izpt~+MQW76|+e0C{- zfW*q<i!am~(3V#KO0=gsdg$VseVA?RB7It4GT{0#3aUZW+~(|%#B;x$w$g<Nv<Ibm zI$TPIX`@4VL#N;^E~vMQ+*W+-5AcDN3=(>Ap||qvU{74H-|-0H98Z7r*Y;~r5?hC^ z4JznsC@w7c2Rc%B-vrJT-to4phwpYoGM`K$y@0b(wB_PQI|3$@2BpT#Hun8WyGG(o z|5X61E3iX@6b{X<iuTEKz;#qIA%!7&E4<q5ApR0RIueMz#DN?3LQ8!MLRX3IkS5O4 z+$fIHMplJ#{Hh8We?|)c`Kuw|X<F#8`znd@c3dziq2v_=8VEokK`$Ui-S<;J)A2(I z5g=10o{+W<>^1G*e8}szyjLm#9Z2}wC&c?1{WS*OdPQ*CPwLDGzqRPoU+8;WI`0Ls zBJYWrt59mu&^?&GPmK@mO`w6QSXT$Dl+~OV_y_0T9ae`no2X*7xb1oCB3$nNJsBRb z1~500)H#q<{Z9pU_$m}!K3Pnad9lOrS3kL01e16IxF8NU-R|YVvAI!UCV9O4)3<E! zLDIH7i3!zMRl|<5FmH7*)Ht1&L*st-QZiDfw@?KuAe|D3LQ78dP#zZ==Lwh=eTY&M zTe6J_Ni{MxckgYt?_;1hFLf5Per(nnz^Iurn(XGT&A>Ar6ieDJad&dJtbow)BY7#F zGc222eq+=P2n7h?izWkC9}vV+%#?3OELwpeDy`(}wkUVo>u2UY3eZcYy220?yjU1G z$6R6dr-wxqKi+xoK@IOcRy&`gL~)ays9dKf?$*)Q8;NhrA9R*lSW7hsQeWlcM=mMw zlba?fS+hiWN)<b(lGva+08VZI_uDh86^)}?<w5#k1}>Iqj`y{jD6}cKW<;;r8Z<2^ z^9@HuqtZ#nXum0_T+f-!akrW1g3$1bwPN9oCiQ^E>yeb9#pTrLsL#9nWV*o#W4=-{ ze*=C=qx7LIRMWgewTSq(bXF8Gr2gjodhgZol!$bF^Dcm|)zc%=TpAMb{_NV*XzTOe zDezt`ttPKL0r@0)Z*x9Gk8npQ`mHFzyr;b+WHX@YTSiPrF5>dKchb8#dxdFg!}}?V zkF0sruSbUhW?CmWKimBg41ef3cT)_Eyq81=jiTeE?lk&(?kq>;XYxtGG?pR-BvH>7 z`;es<tW{|MJVwBu3e-$N&8--E&;s%iV~e|%u3DM_Wh0pnY74Ik(LtsKQUVjX4XS}% z#qJbFsLVWlYpJV@6FD-gPf7ump|KtxstWR-m1*{gzX1*m1@SEFV~hB%;TI`>y-g{d zk)W~^RD5J0vZe9lcaU<`==FrD9=7CHPdvWda=PiB(WFH%%}6)aHrMLa`vHYSI$Qo2 zXv%dP1dL_!`59v8BC;l5c?AwLJiedH@uXlTD_g=uTL!It8Gri(s2M8vi*}pos4G*m z`gfjpus46F=<6N+r6*pmUQT1(LB{-cq#Op~<9x~2-tzKEm0^S0QXDbf>ED#F_^a1f z_58}X{96Pbm@<}{?t;b6irr0nJ`cpU<-Xv`XjP0fk&3(UEu<Ru?=j}u%k~4k_mAZ7 z`ZrPZ49_YnRz7}J-ZBv3FN_bf-gK{@J^MY`Y5j8b#oZAFU11_PQ^(fEWBFx>zmEC- zZs-)6=kYJt8~=Ak#9+sbiCmvxOa8`12xBE1Q&+VAKu7^F$*4B?*{+z1GWTAtU~8v$ zgIdFxB^n9UA*v-q(rlRsAhB1QS<^Q=a*hQ#eLifyy1YDdekB>>&{7&Z|0C(Iu+R?? z$>VTl`oNWf{2HBlSp&Q%^0DTlv)Re9{~WTX(5!W%rYjS<<`P9Y8G7biE?pvY&2LfN z`}xx1-yPVSH@By&K@DSnK7pCPedv+oXMm*p1C)Z1caNpcEeV|@Ms?$wob(1%5P-52 zMLWjexhsI7xodL<{78`EugXcoU>{s<LUGp6>Z#PoRmND<;z`$4j8xdORVW#d!BU04 zuO{1YMkyOJqHxsPs_8}{{2U@3Wk|^mZ<!CS3cMbwg8TGIszNDIisE(v%pSGDY<Y%+ ztbQLr8Wko;r}hCU<)_&8-W*YLRqeJ_C&{(=vLLG1vkIFf9QCLq;U+$k$D3Eo{Eo~< zXF5Jz$~fyIn^JjibjO~Wx?a~X_GV*dnfr(0TzEalLyAn>+&1sfn<nb|5b8Y(c_<x? zHsb1oK3eu^bz`M_9qFZg9MH?ztK7s!JiLKJh$WN2SJnZ!qJGbMF~Y=HA&;bNw%2HV zO~alpda9U~KJP9~3k|M>L8y|t+_HcfO|TzRcjhgvzC~l&(e`*l!%LlJEh_dJU2<b5 zO-=~|WkaOzT2sYY_Z<&ef-XKcJs;Hz@N3ZwT%<mgig)Box`Ju>h-G9UP(u-2T1ITK zJ(_~P4MUwY2Q<k>XsyWXp0q*<I`(gusQL2J!saZJ>NC6Gs9Y^(rJ6als@xT%3OgXd zN;{Q_nq4vRHD40_JWWpt!#meD_YABI_G{`~o6P`{uRrQ?=Bm|-cCJS+viYied*w%7 znn^GNM^9vHW`=rCS8h#fRmhiH{WPB$lk;12D(Ak+-(of~QdU{LTA|g(!SFttEW#V` z){0J-bk>}sBV7)yRc@qcoYVDc!5R=jx8QF-wXi%miP|k;ke#Cb>CMY17gn*TTg%ID zdiJgq&!bWW?itXtZUH<ZgzzFm*zv03)9vMO0tZm;9aL3cL1l12DP>)Ve~#uZ4HK=a z{;WwCkS&x08E!!edN6l23rKqjFJ+Kfp}u77Kq5M39h+CdeSUjU;d4oQmIiBdYQ_Yx zNo5dGT6ZS!PQ^+)M-}8fS>nT<szm8f;ma>MQF0Zwl>zF8#~vNx2ntImQ0!P=DyXZn zM^$m3nrppDImR&82W1GMWxkpm!Gxx0McqL|EGmPLaD623T6JM3>yGq$tuN0$0`#oV zF|;?oTPRebrBsXnSCmK2XoDr$z%FF)d2;g@H?4MHg6$dg-R7?kR7PIz0p`|=JRs51 zA&da6_>W^oys>QvG{jggToy+Z6w<85eP!jA#RG0<S^%#}bn=$nmWugSWh;$j{|dl_ zf1A613#KTD1S&-UE*brekd5y@yLPj3H{jXo%GKI$eY%bE(5gnZhe~!S!A!btf$kB3 zZm##Y=#pUy(LULuAILrK(|MsxCR*!VIit$eTB0gIu+FAQZ8K1GD#)B|z`a+Z2Foah zpvi7w5g;oWzLH|eE5P$bpY#u#wT|cJ0`E)(xsij4jnZ}$X^}#Jj|f1bS~|5qc&y8m zySe*dPNy1&T6KKz_^TX*7|b~phBOC;Qcrv?>}3_A!Dq1>RrWnj5%(|cH)NtsdpYd$ zYVsv7mL46%iw%0TnQCJnT`&jFjnH_;5Ny_C<S!}_rY_MZ60N0846-)2bO&4^2JxDQ zEE%zm>d{`-1~N?DjB0imcuu?@7Auw*s-Gkh{h5|2<=i|uwg$L@rG-*R<FM*KlA`pZ zI|CW+Fh%u(rEd^>lHZoUPaa=3p$#cb*j;^?`}Xs7Vh|50I5Jkv=Q{28z=Q@#n(6ga zW-RcJlEtL=M2!7#4WJd(&Qx}Nmiv2<(NhRb#Ps>1_Gh*s)}YW5b5m0zHffA$^)r#C z0c5Hrtu0>?yup(2M3O@bK$Q+jTb1ho46~}p<fZG#7Kb{)=IRpl9(hEs(=y=_tOofd z*m1yN9m{9Er5&VU*7onYQ^DXE6B^vxf**4U0fRB8BejL5;;U?vt=6keScpGBPi}5q zitdsY#*lNHhOx_N&bl~ny@=pW>&BmyrEIgpEXv*hl+X%dMq4(5dur21;EkQ7Xnp;T z`|+_h*!#mQHI}v5cIBs>yH6hV+y@FG0LoZU^vKUz+$j8mdKq?1?3VQr1rpRcmf%F& zfAR?Y{3fUY2uFpkZ%%aKzQaG<E9+51WsQNu1mU0BI#8V`q3^U8q&I6IiGOFnC~)-7 zgAUg*xErLrQa#$u6h4vPKHAsGHp413!!|UZkQj7_3}EO9&2s4bie;2rp|Mn-kWE*+ zp7UvG0NE@ZgJxo?vbGn#C~!4`+`@*)x>`JHztxRR6d^}(*0OQB{t%w{sC;|svTMas zJb`rU^@2x7?Hg*gjaQ6G4s;k;Ld6u|*>05?*;cNcTX(Q<N`&qsL$W`$<2{@FCl2ht z{_x+LFhc^PgB=IVkMr&=eKdcS4}w~B*=C`te&}&Ip=aug8qFS^)O~B1f=BjMkbX77 zr0o%ZL{vKtn7X<m43<AR*~sw4E^vNn%<Qp_$%HY~ozpa$rZ87xOE;Yui{Jg8ne9Sp zORaLav^k4?Y#b4KC+BF{88HLb)~m!==_dlD{cSwx@xc^24A%eBJB$J5;l4S`oS99F z54ptRlC$^d>R}0XOEmSqx!P#^0MGZh*dGoyG36ViU{6;DZ^e@jHw0fXTmlIS!{|A< zkU^FC01Rdj{^0%lPX&LR=vw%$-a2tjrbm2jM#K!*5D`D%48v7Z=An|<3T?NId5ZuY ziJr=V%CByCgZJMTxFgFKII13fh1$S(epbl^`LQ%HL(A}#IlhBPy;m{Qb61UW9+&4_ zpTEl6-OMsU3)`Y#Ao0-dZd8BXdOY;O>Unuv*HkxZhoY|BeQM{9CXHb3YX*9@U)_X9 z@R5S*W5Y}-0BxQ7*C6YFsJp{>%~Lgxo}p`h7rvw(GBRz^K`9fY<!E8|*aT3^JzQCf z&wf91iUGrtpVL1X7s#SJ7ieu`0bGMIQzm>-j+Ug9Kp<AepJ$euI9w7DBdF;o^DLa4 zB1k#Dfre`^<cHDEmG`CM7U$_RT0Rx1Zp9#eTy2l@+?>cj>J_DjCT753CZ@EC2M(y8 zTY<f{%lq!#fbS@6#r-(1#HVV7#U98i)v=xh825u(tdl7_kg>t>L?%OYWu*M;A0pWp z`S3H)iyUFs)p)ukn9w;kWd^dNrHM0n_#Bf^6e1I`G#W;y4@-WyfVo=1YFZ;AYs&an z3HE@Jp{@bzz<it5cJAsh>veM2Z_w56cx$9lDd&~lr}7$_`zdBtvG$Y<BbL!m4@7AJ zPq_V3bqSDaUDpw!lX!0%@|U+0^*7o*W}vyoIKTyd;_{h1dFg2vq)j#u^J0PaEW2>5 zj$jPUO1{W^@v)rNJeygE2i+fEae=Rb>+x>-AF;+nX(cljVZgr9Z@00CI&S7Y_4mH| zRXyV2DR0hUF_a7q&!V%-+&<>+TUEW~8_q3}iA{`U_JcorV3wSgCwYg}hJ<y4SMAgl z&S<4zpL;wrGy<4U?MN8GIO!P*7M?lyCFNyH*?x7LK(E1e9@S|rUH)u#a7m^z50eU+ z_zsv=4qAVF`TPcZze4mgc;m(xavjG0vlii^Zy)3dI8r|ell4bU*e+0n`vqQM)X8PJ z|CYIij-K!nZh)j4d&ka--3_c~WVQ{zes}77!<@3v&SmI(f2ITnYu+Q6kluXH2FwWD ziL`N~0Lc^_3l{~k3p(C3gxz?<h!A{{_8zCPB@_78b0mEe_9C<s@aWkHME%VPf+76H zT`5DG*rh@5_jgaJB>%i#XNl*cN7~JIlD$kBK+1And0uc~EqCKSFvKPH`KyhRD`$U? zo#LW96R7BU3}WcEtC0~DRg(;8Qc23qdo`>~+HYRAT+%<OYxFFq|0{r#(4b@8QoYd- z)*{QmjsbH)N9IW+W%<CKZTgqx3UXJRyqsaQmsh^Z*&A7cEaL+ycK}`yAP>D4zu2C` zg`N{1{awJWjDh#q%Hmj;&Av8lTD|d}cm&sy3%_JXl)7@nAzyFL-FQ83zFHZ^eD`kL zeL=XFAMKqww%d1K{yvJk&PK)M?`Z7p`@8Z;P`+#R^7R<o+GPEWJW6`0UvPKJ7@eO) zHL6Q8TZp*?Fy?)RF>9O}JyVn4o4;3LD=49+_npxg7c!zFl!jHxV}<-7!jDn#eyQsY zPj?K5toO!BRqlsy9?e8O<PvXRvas=E<mxWJUMOWT+}v$XU?^L`Z+ByLPmqXL4QCX6 zypJ5s(@B$hvX;yPlx4$pl|DXL>i`LIC~XEL(M?p+0|A)j&YLqek0-02tRITbHFz(N zmbo8^{cH(1+TC0~sxXkKOx9CdrU}DV+p}KAF9N34nY$BZm45c9NI53}_^uUioZMO= ze$-47dvfZ^2#eNp^c2ld$^L$qx`BlgTiUEu?YFnJc_vFHb%b9P_dJ)|T@+TiR)keG z<qocO_bDt=;%``eFr6)cQ*AzEa4t_0_qtFz-LEct6>J1h3QXe(F07amer;L}THD*+ zzPyVC(#Ro#C^)8mQG8nLpkWW^5Bp_5P7#5nqBkMZhw?w<nPuU2M6v^JhI%6+`7`}_ zqF%2O=;+u3k9kxn=om;;5={`5DEYMp-gxEHV_uvJjrJHt;bMn2N3xcSgDIPNfenaX z4iH31Rf7Y8S=b1UYGxY`f+?)*YcJIq)G}WPWV%hr_Hf_PLO6#7z!_{AFj08|IWN{4 z1>e6qJrTrTSKbSzbh8akw|^cN+74baa^;3l;o&M!I*+14H5>8+l`H9O(m;4DrGjwL zr%Vne;6x~*3zGBL49m_6g@%^U%zF!$H?B3^tY|$wy@`IhC>1WL!(vjR79+s=C)v~{ z<Ikrag-|Uo!7*f+me4ssr2a=he=b$1l2iy_$~je&4Lo66t^y4_6KmP&QxtDKprndo z?8}3LKW+#(1{Jm|Td3qEJ>V$&a^=(fERgyZAB5g;Mp5!BbF@aN%>8t9d8gfV5-`ZA zk~8Ehe^#JWpHNAl6tZqC=#pAM_qm4(MVqAVrxf$Y(>uD{$CMpTN;jlcnW{<yrAM_n zDO80cO@0Rx&6qKoK?=vT)uRvHTW?QVzkK(TZ2+Z8|K-Y%m5&>kRj=riktP3EFNiHk z2Ecv{=%0MCUM79RrgW!0%k$e}Up7T?$JWD_H{0YEVihms?pur{bV@q*Y*YeV-#q{P zS%Fui!ITbg1fUMCsO*lwm9zzv)2w*YUJ=1^B|)j#v^blas@fE{ThA^O`z!+0AoNrF zvsC~NKz?1G$D2FN<|2@KV40Cuw^|0l{flx#-xMGO5~(WA$oLHB|GtqO^X1OjX7lAm zyy2J;m@4%~bjxnQ)11p&H4E;7bF^|Sw^{UfY{`lUP>OMga<U!e<nDW|L;PDtWwb@E z7J~9tVLQwlBYnLPz*QI&wD3&ijgMVU`wXSZIb8w2Z!SQfZoHj+lq`vWtI24%)-g+| z-?ZX3qCfwH<zTFe&`{!G^cw}rsxQ#okLdWTu#{fEvHehSVLm!X;u;fn2=EwZ&e)0U z{^XD4NSW&TQ<)B*%0}ufHI1_^Aiv3vCcKg=1l))S0^Zml+A*rq(!49skTcSdV~xO) zWWHx8NL42Y8)3m15{i2NDULE@II@i-E}>AJlylC96r=?4xCX&7So^Vyo@C*Gp~Rdu z@YB~4vh9(Am&tX$e9XyDY3}w6rBEjrMcHFT<{CmA>y-qgl8OfI1mUmb$*FQTptaw8 z!X~LwFSZ9pifS+|13hbUB2tA6c<6apVlhd_fkFjL^FyZfKonqZ=k3$c&pC%JE?5~- zw5OH|%kUm6Wt{}mgG0kCYTdU_g%J>90`+@(ryHPTT!gk95l<PEQhJRTbah_UqM?eQ zrY1a^keDp34xr#f?u66jUBy!lP|KLQ8hvo<lY>L8#!v^NiMzgDk6bC}0J4KBAJ?y^ z9f$E4<N@9=R~Hz(5;n=5Nxl{V20bQGn1*Tuzxx=9H_Kk#2nf2yFd#;uh!eI*Vu`dQ zen`7@`FBdOO%meH;>xsf|B=OB@nq}nZC-g2gu563712|1WpRD1X@6>1sTzN^mpXGc z6a#&DP+Ps*)Gn(EXiK&5e!Pt)$Tno~ux6|Wrz(p+HjW;a!~CXSCcI_BN`P`kJa}!a zMI6iu!xsI+Q;qOpk3;%z8b{b#F^>t%|7?fK*uw55z&~PgZ~j;vdJ3OS2h-;pK^ae@ zsV52}?0vFkHIXi~ba+cj99DL%+RqT$qaq{KZvALt>v|EXJ1&qQ=2}z#<>IgSd8uNk z1Ihtmv~R}g%*UVokfHu}?TTRe0@jP>3B+CE2KLrQu3+UtjGM31$xk~f897@`uBp7s zFyqqS%-gY7W=R^iYZM<nuMOe|4wQ&v4F>L-ps-4_dOYy{-`uoNCb>#1TE0Ysx-FMp z2QwKL>L%vE*x2`=&AXLAyygmB?3BOQ-AF}q!LHRiPy#5;s!E*~d$63%z9lNJ3bEV` zA2gxlNu|lsW#zpWCc)e>cFuH5D$RpRu$SBdLo>_wz%KtX9e@fhecieeyn})|l+CEV z6@8zk?~3+uKKKPE)uc?9C7=pzQv|p#plLjZ9VK?BDk5r#DXEAw6n~xqHrs2OY|}6d zW*I}Mq%}=loN~W-E}^@wjevi7En`C<#;_RO?=^?ygObs|Z>W&Ui5D^rotIBCd9Dj- z=gP=5RoxET!_oWRV2f{9c*nvs$3ugWSy9k!r<?`$e(RAcYXOUqgT6VT-ztouzn76M z-YqI|nitN}RD$TPw)|Fe`|R8)YaBz5VEzP8<ioq~BqX&gsxh!s#nh5hKD$q@1Yy6t z=%(P#YFR>7fp0pixJR?pLVA$xxP5mq)2Wsfjk`@6<WCjV53~LlEGHty7F6r?Z5dKE znntMLluvqO=O2fbh_<OrUVlb-q(D%Z`EIkD+A88q^;%(WUOnOzHSxsRRB^)ZUlPZ= zvl)|@;i98X0+s0{bpCghes^B4tCCdSimShhSW^S2(->5j8YuOO2hm>M;G6!~s~?QW zyqTx?xr8$PuJW3^sC?h__D(sgvHtiT_)24}D?wkmof;i#jG6yAQ|fii>a~D+B`vh! z?w#E-5vAYk!|N4q+MXAFy&>_zthG1Zk8u>}7HcWpwH*N=eqXHEu>Nws<Wh0IG8wS) z`K}u6`jrCL7xQ~}vy}O!8dWkxsI*b+`p={$sfh0Z^dz@eXy_{Xd+mFWPT25qcr7s& z!q-v9fGCg;lB!XmG|9SmLR8#P6<pLlu+_bZMo_1cj75#EDv$iT6QFgboIC&ap)nR1 zN*K>TB*22@0YTd*jGVmy(Z!6+Qrf!YuT#@_2CjL@A4Xi83467d_^UQ=SI()3e2jF= z+>FlV#i0O3%=>$GqhiF4oQRm3IZ6eq59~R1NNbd!YY=+`NLZQs-@V#CAY#sUgc}Rs zC^v720A09Um1tF?FU`s^hc#zgb8+$TM2%1!gSf7#fN$Gf)A*<h?Ez=ALb`2u4$ZE) zs`0|JILf|X2?fH)z4J^q0y#Xw&xrs!Raml`D49T`^HHRu3oG~U$}X0Az*<-*jZRvh zfB*UwyD`Nv)cl6FqFwar=0_<p-m`QN7d{w<(*+Ij+*as9(r5vwhafT7C5c?8gTY^} zcopVxMWia@G4-i!^v(-j#kz&HK%mf+Diot4@*r3F&ZW8}WzSe+ETn0{rjdSQ1AntU z1>~V}xuc!YNON++t0u!YNe<#62E){Wd_QyVajCy!fU=s}aE#&A?j%$B4?91Z`(+Jy zb*>Euk~GWtbc^-iG3{(}AveYr?oIHiMoeI@F^Zn3K+NrQN56w^qg5^Ld$)$r^`P)* zw(1y?q0A@aK3xzgNXRxsdM3|Q2BOLwAu<vRXi-6s=8b<|h2mA|U+}PuPb#wU;9VJ; zj~&h1_^m)Xtcxga^Y)ik{5HZ60s078YI+LwcA2g}aw#J>@C^F9xTDri7%nQ=j&_7v zz)?d0Z$jYdGPbc1P>mQ5LNW!k69TlIkt&yoe9vqy^ofcH0sz-1sS|AxobTS2k2AsE zw_kGNP>q~RJ{RTlm@pD+WjB9HQpEBX`6df(<v-<eiPB?xB37V6!baklAqpK3o@F+M zAo+Wl_o_w|>992EefLwio`n_oQ)+?Dd3;6%ShBT#P!G}tEc!dcp;}D$V1E#HiRDu% zjT_%yZVA3g)vSNF>^(z>+-LdN==7#(nAKke9hrM$2wH(-sU!6S86e++sG#aVtk`ng zyNDOlA21J)pfb}9i3x?BKA$Sui2TB+#4v>8igy%y6mprreB}(S;vBn3*&S5@y<Vqv zBlZG`+xjZmfOKHTQaGlRENaCEUB*!}so^~1g{*>}1~JPY_C;3ptK2C{^>njDT}vn) z0sTu7wnahkSSSibkq)k2fo8bnQv33zsnUZ;aF%rbEA8VI()l&$huMck@1?$84HSZ~ z3xU;9wATpKC@feB@I|}pj(uNT7vgT%ulG{);V-7_%5g40+SQDH4O8L5uwt|a7O$b7 z9_N;k<3=He0y(<fs{~eOJH+8RR-h`((B#6U*aU9&kkk7{Alm#4-QSDCRV*d?`zl4% zv>!NxKMD)y=0l1mqC9gVsy7{F*b1v248R)L#U)uRyraKpsn*5aY<wIl#&<J6TR0<A zD6_h_BtMiB5l#N1)%@@>9&n8PoU-0W2NLx7C9R6K_wIjVAN_i*q&;=L@#D=Hk@XJ( zYaeAE8^VFr>eu6yvRBoC#$2Ue2^Ks99IwPO+yZn58vA~^mG&~0upvbP3*C$B+)Fqp zV2Eh3UFg6EGtPnbUW1q#QP+EMS1<wnk(s(f^iK-og8G~(J7v~86)39JbK;eRhhqS6 zy_+M?X<Mf`9o&|i$%Qq?uH&!EQe_AuHWdBU>&0yz7KnZzpf}(-9Uu_Pix!@`py{4> zWzAV^PQIQxB>Ia|h$BW+o3E_%&P^*vl`{X{cs(0d3X^|-rn4?u-8db+(M>yVN6RiP zwp3iG04P^YE-P-jT(>5ul$EOD2Dq3<)t7RjCZ4`~SB{SC)-AB_FUS|$+%4b-l#>*0 zcCFpx9gCW$pgtHG<rx>luU!A-Bn+WmXo0`4WUSbW6XZ%RUT)fGKK#l%)<;XJeXfF+ zRq}f8%C&q@eA9HbCA8!yXZxvV$BU({(bO=GF&!qFUTTub7%C{~qgQ4RVe5d)VP2?p z4%o~jazT%AqygI)Y)?NBcf+Wb4b0<Eg5#}1z$@B}N*vF-ANEf4_XI?R8dOq!`2$8F zZ&!=Y(}(A&u4UAS4)X=iy{?R73M#!<ezQ^4LoWtSQ%1X7Y5Z7~k4IufSQAmYnlWbg z$25p;l^kh)iJ*+CxcRE2HG;d25B&cCYCx605>N3;S_2D`@a~q!93aaznn@+@<S}3? z6{iOd>L6nUti2GTxhU`$w{a@gg6sJ(+WH41AWJ?Di7j#^zPj;%=$;mGA-;ty#grnp z@F^c3aw?XB(_!&}AZx8;B${NS+pIto904NxhaC`t&VB5)oxtTy%xWTw=v^`?BjQGq znjEw7fJCdS(A<zft;5s}8X!X{r^hCCV$Y6`)>=$DO3Sd;GBBUv1uUC*G4h5X3$Cfj zDM!r+Z~@f@Gja6d@q*O>;BCopGMwlRG;i|}_N76kGMXUEhTzEsq}mHPf_rlFX^es2 zkY<CX%>NOrI?w;J4a%k(8MB@s3*zEQwF-^_#1K6L2LkBADU2vsz3$1}BC>RFKsPk~ z*)!;XbD#($m)NGBcr!R%t3&UG2f%{Af|ZV@3|r#xMwfK?RY2)D3_hQVd18ul?g?iK zuSu820>Oa{TT&iST*~MvvPkhv|Mc-~05PYln6B&R&T+3uL9L`GpWr40!W&Rm##okR zE<=z1rc5Z;iYiAnS0CL2aKHkH$x3?*?RkoT_6Y>L4HKkJSNDY-P(xt?qo!uC$`EHE zw>4fL9s!&{S+8tSw`>AWOd2fppQy0IOh6mJX<pNX0!YGWGVvhMaMFCIxs38+Uv|-z zzyY+hWQ_lH#W1g@aKWDtsNf_*I%9TM<PrvSD_A-4%HSuq{4#3KcFj4!0boE_TZKd) zjTh8P0RT#e)aol7F>SMjb)FL-`w|)-jR+%)HWxQ^liUNG00)Es)QE&<D-9qB@t*`Q zGm}6VM|WDp=S1D~AnAc1BTY)mvv{{R$&~=196$s_0G2R-eH%6PE)F4Z_n$1Oz3#Dl zJ4J%>?7#Y~CvVMcx(Y)FID-#d0wh3%IDmwg@Z+>-t;i~%wCN;Qa)T#@0)#<8W^D~? z&6SdLho3luueYZ>^PZfr+h)Klqc~CI()T2{FI98b@N})fk&O3vbjP!&=mM$GDlN^N zkN^KflnUi<Iw;q~uC$2pkw^JPCjqiRLaFq#^-zE;oVJu>#GGbBomTbiAoSJ*>s@y_ zn&&mL;B2YXs|+SunyZ8dbeLg+^e1l(p2fMIM>VqKYpGCABCWux?RiJ+syq8qPV3FU zN{glux}!U^+Tw~N*Pfq0dPQKCZ&I^mbIk^0%Dh@Ss6+D-9B!__ax4n~REIjhe!>O& zAzgb-&`Jwlg*vSV^HAFf>E?=II}8)(w4)<HE_AGUtC3_Y4%hx$ttWde+ko%tisEYH z8@O_sg8@(-I(=oa*XXUe43V;T`ypdNtu(@}m@epu0+)CATD8>~`?}s#uC(yDx5xiG z72`myzyYs#chm^MD=1o;*R74a5_&g|lOqe1%e%qXZb-OF7WB&Yes??ExsN~YCjaJv zHx6j;>A`1w4o60<_{#k1@!CrH0OSDciaF@)GUMdA#;-g9-)_hIN?Hre3c!FRANdm; zK_&bm@<I@fKMnw!OQW;A(0ebe)=C%i%C57^W}pGPH~1ysK=_(`#4-8fbh@H^`p{>6 z>awz@+_AIYddG}FB}lt?>u;vd6qz?p$fb|gw|(u#>mvip7r)S!cX$PV^h|}c>KuEm z0G!+ZJ>N=ft&lyg<gq`)xqA-)40|k<Hhtr$F}83!;7|V7#%!%5^RG<0(1icUpo_N? zG{X{0z1v*1>Jaj~Q$Ff{tvGv&sXNRFR61=FfjMC9Z@xO@WVNdleCqFhrRwvyEc520 zdU5;l78bbw6g%(qGP3+G?>E1}8m_DC<*$_U>@Wd~b9E+9d~0L7>R_{&B%||(|G0{- zt9UK9V0lgf!F1yFEw?VfI=<=vIkK#y_}722_O7eE-?w12+W>@(2k!_LG<XnULWK(% zHgxz9Vnm4(DOR+25o1P;8##9L_z`4Cks}H2n3Jf|3<~a8wsiRtW=xqgY1Xt!Q;!ys zJ9+l>`LiI9n?s2fWmyDhQl(3oHg)<GYE-FHsaCam6>C<lTe)`i`W63dSg~WtmNo12 zkx{j4-Gw;&R%8VsZ0XjGDdZIaxO@5b_4^m_$1%9pe2^djfL+ClhZZ<-A#mibH5gZp z`9X4K&6_!Q_WT)iXwjodmo|MGb!yca)mW~KWi?+25?t4&If6ti5V3jp_Wj!@0bQrK zu&{lcF@re3nJ+AZymG7N)2UatejR&u?c2F`_x>HcLr&1?atU8m1bOHH1o$9!9)5iJ zQ{|+y;X^`V_4|h&2r|Dk0{F8_F8~cZ5Wxf$T#&&A9efbN^LiPur~)G7i3192Tfu@O zF8mNg@T~cSgc&~25XF}Y7$U^La7oc9Ra%^p#u{zB5yu>L+>!ss$h?5jrXDRKAO#>5 z13&^akP?!~CePC0n>I2yOg|$B)Po2o!BW7=p>)s^%rM0qlgu*BJQK~oQt48rG!fb& z1UBg!VG;-2yc5rjwm1X`<K!IB49N0~YLq``Dr3+@6<w6kMjd?=((D*9)TJj9Ex`gx zivoax5C)1A)H4;Z1``+Z(-gWq>IfC63{ZWk23BRAmDXBqy%pD773$;F4HT_FfLDhy z0FwfBJ@!Kn#u3Gb6NR<y01uG$D2HcR0%F>1wcVE6ZoU1Mx(#0KV^Iy9wN@qoRybrg zaNYHe2yH%r0WowdE8vcIE6UW`CH4Im;D7}lnBamhdgA|8NEki9-rKw|7-G~wNChR8 z8fMIu<swe#3v@Bt803&e9+~8l$9#1TMnTB%VweChzzmaR?&}LL3Zt@RyF^Gp<`~eG zZswqc9-8Q)jqdH$KpG_ggPdVv!r!B%rb>Y@ZsEaCr|CjsRhbd6*Vw7W9-Hj4%|835 ztPMTD(FaJ-x}^z#uoLaNNuoj-8(=sU?zM6XIvI3jw43n44L=<5p&3AxlSelYs&97$ zN}TeEYPg~d6C+p4F+pdx_shyfAD#5lO$Sv9RMmj=g<$)}E9}!n2SJQ%u%Nff&2Lg} zXb8|nRQBM7AD;N)TYOH_M<UfAa@=Au9&rz-sbv2Xi*+Z;KcZcKHdg4p{~rAC#rJI$ zR2u=6Wv$us;hOQy1_cKbalYQB6^o7pT>;$Rpa1^-|355OKouN7MSuuIZUsw7832by zg>Rg~4{D=dO|WD%AD}B=4AkHTIoLrDVuWFu%0j4q&@{Lq$pTUP;Kl|Ki%;MucN3gR zpp51Ld#w<MIn?0}_XmhqvFZW*f*T7aQ34(k3;{|=#3VE)!<wi{YCf|TB92%^D_#+c zb|b_OSyh1^^o>)e*g_WF1%_6@z%cc4;!L6?wXdNI0c4cp9O+m`g9+kQ4Up9dXwx?X zR3UbD%vB_AK?e!05hnN&8zRs}20=a&l9B(E<gBWNsxizeJz$i;Atq_78*n28dy63= zU6Qe}*{cJcROKpJ*-9rB;Z<UwRr=sI0&lo7Ql=2WESgBlnCxt9cR-g9a9K=a9ut`e zN<yz_#k9x)fCb%1=AZ_UgKT61cfN!P*UGj%VM$_|;S}dM$%!;nv7uHESX|^>pu%#7 z=?O=mp7pfplE0Bn68U@QKKa>CfAZy3mavrrgs3&S8S$S@x&#iIHNSegqjP4vptUlX zP>Ws^qZwUF0Z?^?TLEixni!)-ZzKb5K=6?D<ek}ca6^*56s9qiX+*eys)yZ*d65%> z9s)U22W?>+_u<<^S(3f8sRCV8^y&Xnnc7r~VgXf3y%h?Y7lr3Jl|ch2!Y3BdOQPBj zZ32QLR>@jcv*OYQs7gbwF3<unW`KQXHINgUAti@Cw1RbOMI+_fSHJ!>i%`{+TXMAn z6T&Tl3k2+Uh+vK=q_mziwA;CamCD6l7PFc49}Z9@g<}O#lPT0}c4Sb55FlZwM1>;Z zU}-I4juy7DmF?*afhq<dOD>TkB0^^i96PXrmy{)H8w&@yXMwY~$yM%h$tFNev0z#d z@Mg}!_ygv~CJfrZrW(ImQNmHiTKc>0c*$GdkXeF@$jYf7)zDM(cE%(XTM1EFV#>oI z?^zId?|%8)-)^xXy~v`a(~$qfN&j|cFgN4wLxFj?mZIyx5ti_TK_xC!S!!BD+S~|Y zMq$7Zpa{f)tS`BlIHX!D86H;gidjr1F)%Y*aC+tnLeXNlB*8u~q%TYEi8wBe)y6>< z@{n6JhH-5RQ=40YJBiGd5tT@|^^7Rx3T3SrG#SfT*7AHB@G3@d3#5IM+o!gS6)4$t z!72^I=v-wjX_Xnyah7v)UX_Y&nQL<?u<o3tG6+76*q27FTqU3NT0S2d(TV=dt8U7z z5WWrv?p5?o2w;s6m}->T1ncMu`l?7w8q}c{^;xojs$O_&WmUcEsCVK4LWshvM0G`$ zNY}COvKrU9)-_e&z_|Z!IrD^Yg~hHx60b&NbH`@jS?Q#hUt&KS+R+wCBUA@2w;^y1 zHJ0{8CMMq<yJNMb6RWkhU2b!q`ypvbp1U5WNggm6-3sA@&C-}@Qtsi+rh5^J<K1t6 zm%BBZ`oz0hr`t)8`QHaofG(~EXhh;mkFv8@91~t~i;H?Zn!<p-)~h}WU}Db~$D7_# z`%wGJ&UaS6_{v#+=m}|R3I7_f(+tqwi(f8tQLbl$gEw7N<-6rU7dnxDgsOiT@R^&e zIPGkQY@#B8MZ?3NYlmKStG9SfM*mj{H{9WVOK+a@rEiagH_>N(`s!&{yMHHzs)*|g zv|yxhycOVp_|^ZLzEd8a4R5`6zyE!_ys~7#yr^VfnHz5?{kA(8ux8^mTUh!9{NyPg zTMKJSmI32q<R-8PghRW9jnMIq1x>s+lDqP$S3O`6hN>J4ER&H-!49IG#3jaB%29`2 z;H-s<)&Cy&Wqp+(2sZPa3E>c))Abk5h<EzV8hl_2{`9FY(^nCKV8E_r6sSRLLK<@M z?oc-PgsJlCpCA1ebvTRwQ80DB6$!(}^$ore%97VJ+~4!LroNDV|Np<7)`?OYZD0th zdDft7L`|0-0r%<&-^3@Mti=KVkOC|4m{Lbmq>5m|OnoFE5e{$C5Wt$Y%ibRD4&DxY z%uZNd&jSBj&;=(6zYJxqAg1HA#sGlf^Z4uu*dgq`?c~Cz1JES{UXTcju#U=Sur`LO z!06*>57FSq0-TSicusuC09{7G2(wTNtH`-1#j_%&tv1I1a6tLs%%l|W+n|nr#_d@Y zU<=<64n6464CS^q#;}r3Y2*y3gsKD)iR{K_uX-;I2ayo{$A_LPWa6%GKEUg=YyfhB zs~XUk^lpE2j#4D85HnE|WoL`D4rFqxZwg=q5)jM4pc!CbO43Z58t;Ev>shXB6Jt>p zWe1Nu5oDxmbGQHmiHrzt;jzN6^!UfPgr)yx(HM_0aR`l4XkcV&&}lj^2U)DN?5_{k zXw(1v2fUtT0+Ep$yAf?%ky2<)WQ;FoW>3g|E4UU9`WPq%Uxfv|5gy~wXqE|8+<;^> zOsA5s#Red|NbuXnkAWWSS%y#^3(_Dz2UWg|WMr&wMu7V|VgN>K2adqob}at@=)|4{ z3lEYbJ91;{%w&=**y3*^RNw|Q>k@FGp;XbA9&m$x%v#*gBWIE(0fwVAg#bsU@EURr z;7uaLzz#4A#6)cIAg+U|>{)!TCYO>ayQQWy<<w;61T4{Bki-$_<|4*H4lWDF_|OM6 zri0q-Sun9F%hD`EMX)Hv5Q1h7ZO~IL0t^Ph3IFQJB+-|saD$ZbRe<L#`_eB%B~Je| z1qXsA)tInYETRN1KqmXD1C#;Hs!@j2aD_SzRl4UdFB3BrB@IvoHiAa`;Kl&hg(4CF z3;@d$vY}7H?+-c1)}94hG7~mqGffytQ*2;pu1%A2@*yMv!{kahG64<lPtzVFham4& zd{Q=(Q#p5}=qP35hNj&j#{{rXB5ELX&I$~uArYc*@mMj3*zi?8W;w@`JawcC4JGD? zrr^YE1S%jR27mw}@~o_(45V<l{zHfM?OA}PJp0o>Lj=8SQD~geX%Yb|VQUAppctAU z{2)sAbV&OCQ$i=SK>$oZg=Ps~Ck>);u}r}WfFS@HbRBmn<(_45C=^9gbUyzsk5Z22 z0uHDl{U8F!(yT5Z2U@@c8dUt2jfeJ+Qm#`)gH%Yl<Hb-V366&APDlXWAQ0MRvATc_ z$Y2E;^dfa=>Yjx!hg3_qlsb$IRglwU6j5s^APUwJuoU0{j-U_>pg~=-id67bER##; zlul!#%Uo}2c2a#Zpa(SIuWkSm4uAnNAVj~-D6NR^T(eFWl~GY+_{3)OB1Zt+Q?7zQ z3G{#qsM42yu!@ZHOB)qbLv_(mg*vAu_WH&G4iu}lpc`(X4JM#acMLC&==6j|JVg~( zbM-Hl09D#=Y{;=?7~n{;iU6Xa6<lEnG!>B~GmCg{KXnyaqxCHgYi<9?1|K6w6DW?U zx*!KQ!5G?L0U%R`R?~_iR9ep!UAy8FI;w28Kmhw@)n;k{wtyL+0ShcZ?7oUP<)}o3 z<wVmJU;~ya)QwVB!E6jLau&e5V2S|3fEaL~5ZZtxNy$6s$VUwYNCj47H&!VEj#9F8 zY&Z~ZrU1EK3IS?h6x2Z!{(zqDvyLJVOF33%XVxb&&I{3oKwBmN9Dxs1fTVsv9I9Xq zM!-Hb?Lp@VPAijUmzHTi;^io%4$me-PY4T;A){0v2XKK0baX`NC<yzmX~R}*E223K z1-j5C3?nB1D)yhi-~>*AO&b&-?Z^r#YHaToZyh4*G{tW2@R|Q&z_R+O0f+zvqCiKh zbdG9OSn`%}8`mJ(j&JP-HyctI<a3{l02O#)3Ut&>1&KDFMFSmIbj8*UUWFO$W&`FT za+W{|_(>560RxzzK@Sy@CT?_ZS8R#kRm8Dwa4~ZJKo`nM1uEbeNI+RhiBkm$9ACwe zaMyX4mIhwM9t$UDTc#0sYnnRX2;iUzV)ff*Rgi}9RRZ^U%Xed8tZ;y}VG5uH$oH5O zAsBqXdv}akB`F()#n8-Ge*^Ya(8+MFb!3l#Mkgr;^uP*qlw2RF9Z{uZ_t$~Xb^TIA zpbm#2;idq9A@hpq44NSX`lu-PwUY!=Sj6jrOE_BJ^-upi3UNddZa#nvIsuntzztde z33QZgJ1HZDWnoR2hd~ts)sk}bRBKk?7m9I}z~Bf(;U<9*KUWDn1FVOmm{Av)O$L*4 zrZRGRzza@yk{ZAhsDTIOH}8&Cl>!lTr5KGF6$vS&GbyJnodyVoU@;+y2E;%b<X1#_ zmz9pUOSCnO|5!`U^G|HEathOe3&9s8X$v&q6b@K!d9;=E5>=WPkSke8-<VC>m~uYT zX;?rNhSiQ#z#7nD36}WV5O<X*Q&Zg6l3Q6q0|8acV{|50YfK;zsKAb%pd3EIgBP!J zU8yzk*OiBvLgxTgEQEBT6K;?|1AKOl#()zXL5%;q3k7k>Q#GZ5iCLS+6B3}fa@G@W z{NNenXa_2Ql*M(8lGl}<SW`%No8MVEb-|k}r+V#W0@8pKvd9$J!3G>T{J__h^fU6{ znV^$%dH)2INoQ(l?hsfxhY+9-^Z*7Xph4^Rm|*f*3R<IKlO8n%ObzEnbxIh@Fo!}R z6MFgE5*U||Qdm-KqhI<jUnO`?CrROE4a&iCbEpGE0iB(Q5|c?Rg~g9yny8sFVS-0Y zo#qeT5r@E_7jiWGZaA5)R9IlKsIPh{P5Dn0>vV)TX9OSu654}&;TB+EN*6B}rzvSQ z1?aHatvT{3DJ2hsCsMU$3Jf7*H3$Tr;S>K{AY2WVjHfA4h54-un<LY*T8HOUsf!2Z zV2&9m39f;c@>SOKSe&kzQqaz@H#;5!lTuW8c+}Tg3V;DnfrBDJ8vHTYAbFe=7ggMu zvtt_>H&as#mUsX-XC^=jJb{6_U|Cp}vg@hD_Q_cXTDFh-7(drgKsI>XwQmHV8s?IJ z24e;!;I14{C;G{ykej<>v26e3e2fQSwI=?mIeb*04_tu@MxZE9(4YGCRb0Be=erOE zSxyKDdPG)dH-Q`W#|~Pd5!N6Bdir`+%AYRwPllSl7hDSilu|~>d+<za7QhCw*?SlP z6PSpPWk>{?xSwFQsu^6w-_SxM*L(jkxnU+C1-9~gjNlu1AQcIGb1b@_)|yh<dc<?Q z1zFTkzy}1}3T_qv1qOI@JV6_HfV~$_rOWAS3r)wL`~{0tQ@9v<{8np(Ah1uT0dhbJ zkYK<KRkAFqZqE+N%e(@;R8uUwcxX9ifB`Inrvpyl5xDc)q}rccyPeHk&;RdEHD!9i zCv`0t6GlpQb|D##ZDL6&t^Y~6Uq$lv9MY=~eZj|fpAj9L;B-{r8}c9#TK1t7iKMnW z(nlTm`qzEx*;+=x5)?df&VUmXOvWRpYcZ<)l9JSK{r7lPQzm$PMEhBI;Lj^Z64U|w z7H@7f3c=-s$Z?(7gN|BLcz^$pZo*?gP7j9$z9AFZKsZT^6gBF8U&X4MUEJ4hU2&3s ze!#PH#sHSV!wUxwguw>re8=`6yJ3ooDaDA#UEi&aU=1a7#fOD+#sr9gq|c@StU(p9 zKw@J(6x}<fMEF&<ao;C?=sZ>i{l}{>#s}<-aGszQHUYTn{LNu1hux9lPd?~u)=&tm zf3R3<%0SJ>#uGRoS+850I^3t&nNkQ6<$K=Zp4Lz_nSW3mT_ivnO4DpEpaNVWf)<a) zVakk!Wg~r_>izAz<wTbK$B=Vo3Wx!h$tDTHArl0g;rnLEHEP3+<gu%s?YC`j4F#G1 zhm$X623nyD#-<c7z!CrK^5MeVrw&?El(Ovyf7>9pMH%S*v}Or-y@pO;4FtgEeaX&c zN_<ge*$E%>6RmVFw0|6+@*9Q(SX*cYfgFAjt=rwFf*IU1pY@4NcQ0&%z&U5gfz?aq z0^A_mx1E$g9jh?gQ1ZR?gFn=w7gcr<fKdHeIACZzpcUpk?dfOMnM&skMdF3u`a$i; zIB20;#!qJ^4wgZ+>Fd~?N}x^t`p;j{j+%o)T5AO0(MRS2#Gw*WBDl3_xXB8mUxnw< zpZ@{koxp(v3mQC#FrmVQ3>!Lp2r;6>i4-eZyofQQ#*G{qW^o5Hq{xvZOPV~1a!$vU zEL*yK2{UHP9~l2o+PsM~r%53jWcvIGH0aA3!hC#?AOL{QrA(VT1-VCy(5Y0bTD^)j z>!_z(osP;1HmumOWXqa8i#Dy=wQSqEeG50P+_`k?+P#Z6uim}y;B@_qG7#Uvgv~y% z064Kz5)TSHZrfl3B_1pkTfS_vz?}w<JA3}TF$3n&?i7GNjXJgJ)vQ~)ehoXe?Af$y z+rEvPU?b9i59Iz`xPlPg#6x1(0X+G^Cnp-M$)L2j^rj5rD8G)~Wsd29ab^DwKD_wx z<jb2sk3PNn_3S&A;og)}`}sa0NPs`O#RdASYb1j+!w2{ch>{3F@Q2`Sh!NNn0SP_` zVT2M+NMZkl7G8*9h8kM53WGSQv0;b<iQu7PD2Qm63Ki&a3Jgh==phnAph)9f9>Azm z88z<6V~;-m2xO2#4oT#9SKxTkBSk{U0g_#5uw+?57_!MGGf?2<fO<$3WtTt2kflvE zcu8iNW}b;=nrg1erg{g2IZ`8Snnyqia55!81#|i|04U1@h*WfU@>YNu`|XM7LI@06 z5)g?#3TdR0PD*K|ma-WLqwc_QX>waIpearkIMC@uJA|T%AC-m58v|jKnrJethExQs zw%&?suDb5ZYp-$5p=lPr#^%6+vzo*}W5XhJNg&QacPwTH9Jp+m(SA^Ew%TsXZMWWj zn<oDxp@Mr_1p-8C5(W-#+dv(EOcEfvmT5-rkPt-MO1=8-%WuE_{tNJGeT*A0Um6G~ z??@bM`$IY~9Q9(tf4M?L!8M+H?79|j%yGvae++WS3T+T7XClk>ro<wNkZm05ys@gv zf0>cM$reTuttvL}%yZ8^{|xk+PlP%~&}xCug3KUEaKf-4<YGe`5(uhvQ%KZd^n*S` zt3%dae+_onVvmhosA7;U)($l(-GiRIg2B!#@mBp*RA{T$L9{yF&3E5^{|$KHS%un@ z;8Q(7Le&<Ouqz|WWa1*#bmyd*$%cbRMzmvI&Uxpae-1j|1!&4f=rV0EoYEoufNTE( z&1_Q1m6KCvo$1LfdaR?i@6LPgzW=T*7n)iE{7MjDEOP`Jck0PBOF%67>^2!#ylsd? zTWj^&Z_j=A-Uo?=rdND_kp^@x+$jQLU_hDlOvy+-Y}dw5fBp8~k3V)HXzE4&5H(pf zC|QaR8nA&6rsh7KY{`G9xdXl!2*C(SaDo(cOBytVhzcTv01>E~03cAQ97ur#b4%b& z3Uw$A5(as!TAm7D2*Vi4aE1)I9;4Dg!*~2(e@f$tq;3F#H3%S3CcKHOa+sGI<P3>S zY@!pN_&qOZDg;O@fw5G^7)W&@8BvH?5p6OpDAMIU$Lg9G&xpn}s_|}s(3Jlam{@@x zRP8v3Qh+XO-~woU5he6mqg!;KH$Mt;kc2Fx#R#D(1~l;m2$Pw9=JW({h@ymhGzrBF zsTNge4wIbhq$fXlD?w<A1x`$v(oV#tT`c1hk*nlMXa-8M5FlCth@~xWiOXDeX*-&7 zA_xGeGy$Rs1TXkQ?6Bm@l3Y!fU};6P?!e4wN^_djgpe2r)<goVO=fvQ(-*w(Fd`;% zBzCJNRT{}EbE<Ql>}+Rl#t^C}Jn;dbQrf7@6oy;0Z=58loI8I~glJ{(p9C$aK@Xaj z1`rO44gf;clI0~MD8U9WKp;OwQXPcC#G%JRfJQ$G(vXVuDxvCw7+?RuLW!v>N{TqZ zBPe-McTjJn9Qi`D$UxJa>U5_(l}M-<aYpl14ShpGKn~P^g;vJY9q{WZM!<Be4mfqH zRIRE=m!PRspb-UhW0{bi;EhUH37Jb>pj9U_%VYWAtZZ$oTc^3rJN5637f71Ym=>f? zRO5N#yeJCa3K3jHOA>%BtYHr;NE>LX7im;m)!ODG5TF7Bs#<DDj)>TWD1erk?W|`% z3&Zd+N<L{kjN%x#BRmk}69<gmIKv3qgKXtk(2T8ZZ;M;+;XqR$QloIHwmKROKn$5! z1Wfta$J`D?G{;h|bDs-c&ly5fN?N0Rs-`><b)gw9>gz=>30?nQ&T631Ew6dc3$|Wp z>Jx$_(NIG)2y=ANvLS(GbgvjHkD_<K{OxbZq{t`?3=)_!6Q+d-Py`zw!J<oDW_fLT zES&mx!W6FXzEYv7B@D7o9t5F<esBc2p);oCEH6}NB~=Tnc*QL46(g|e$1U(sW<I1) z95~PjrN-2s=EdEt*4pAA3wg+sas!P0XvL~!F+w01LL!by-;APHR>vYNk*|#9ESrf4 zB`c)4=7^jJ@xc&lfSzS%ieAoYdChEYbB}01G(#S&YLDd40CG@;eOk7u`@Pq(JnZH` z3wqEKG8-mMDKk{g#{+kW8iQkMR{o~6mxQjgr7xYHQ04yslSreRfz?xkLzLmT<NRxX zadxa^V0zW8Zgp}#!YDy-(y>bGrg|<QhHPL!#}~z{f4A0AR||XC#Ac0O7)6LqB2ICn zLXQUyAXeE~7PkJq(XnDs>}+d$+kDv#qX6N_4RBOu5H-&rssX5o`L(tbJ~692!0mX; zd){mz<Dll+NtDjfh2OaWGbroDn1YwWK4uk=>5cG&E4(TlVib8hDO9Bq6+DCB1Zy9C zQTtZdhO>&q!aol3khA1SH;g5LRp!;~ARrfsFz$%?>0lMBS>!aYxy>DdXgE<3lpL%Y zUa<p)YlKtX7cH@c9r)*)D}Cuq&lIEH7|R_#)@}dEAwm^kMqhXEc*T=u6w|*B_K*XM zQHr!>lI@Aw+{l0%A&{DDlPP5uOCnmT4!hm&9&d3mij=pEBXC)V8#}N<#92o(i-A2W z{o;M`jBoY8D1FNl+(&8It<3-+p$*6p9l0|SG9a(r_|S{K(j<fYE!`{e+8E&om4LEk z^-!@PYw}p|9=+{vpXH%xiUztoxx_y0nlYfjDBdl#p@^K;ALD-c%nx#?VvkF0b{IAY zD8ec9ywp6r>dMYMmdBe9{_yuVRBm7<J*!q@)_4FG2E;f&4^aCnzkE=&6u<rN58cr* z3aHE^!nm=hEUHlgdjKHwmrTiZWdW6R_{aZ%4G3Do!zfx6O{KtGGDAnG0RqpUYrMu! z1BYe*cVrGIf+N^gqIGZ6bO#eaXDQ?vc0di$MpiK;0yU#$N^~sVL4rA`gH$zRcfwfH zbPWqoHH!8a3LptMkZy0cM=_^m_SQl>2!&BdQy0W2hCodU5DZFqEWpPXJD>~zmvu&$ zWy!}X*d~Q%h=vBmad(0P)pP;m;6YS37(_4)jnG<_RRAYoIcp|Z$MOYf2#A5GP5?G2 zSYS?FPz%g97zm&Qi2yGK=t^<NW}9^^79fb1h>5z?MvP(u>SPL)@K6DW7hli{L#Ksb zWO!^gTeGrhndpkI$VrG4VCw`5Sf&3oD}@)4a0_%0aDLT!f>wc{k^!(tjK%0jqQoc~ zwoY!q1n*@RH}DN1P*JD&MX*O`;>9XoVT{|zjZK7&chXMc0Ex$va&n;v?C?_KxJRZo zX!xZmrqPY@D333sfL_;5#4vd(^K)=<XW5{6)M!H5XK4^ND>yih2Z@jjlmsDIO&~B0 zy@)Q5^%hUSdSgXj@ONqM7ApLfkR9of-4iNF;7&In4F-UAZgB}XKzy5bfb3Rj1s5u2 z_>nV7lhqR{+0#xPU<~;vF~Ox4Yj+BjMPD9RX;d~Ve^`@Asg$;(X#}+epAZ0)$B|-@ z1l!Pl0BJ%q$ZFAIiA(8~UwQvIwm2xVMo^dF2+n90MeqqOM_){MX@16vU@4b#$v1HY zC&^Y&kgy0*Szu-11j^6`8Bl!VB!-vPb$2q1bg7t&={1V=Z3iU?5U4UAG#2p%1Q1zj zdgyAXHY?i5n4bxnHe-T!;u{B*3NX+^g@Y9YU=1O#U|5+zlE`X^$13m`nzxCY8?#%C zGCl{@0K#CBGP7h>;Q@p&N$R*qskmy^R*<>roX_bm)5R#OpiwmN3Hqlp7f2Oxpba_3 zk_Y&U!lsd$GL_J2p659%BsVB~gHWK*j7n2yK>-4(@MO|fR?sJGFsUi*iJtxGpS)rT zZUj=S0GoqCgg(IsUQqvLgXv1_IBZ7ADx3446H1|_!Ul;1QVqZhp7s+8kWbhbQv#`N z(V{yQYN96^DWx|keD_fv(1Q|VYcN3t%0N->_ge8+Y)CgNIEkV?>Z596WTvN4XD2iF zG!$1bYRFkc2$*e$2`AX{qfsiQWWr@as!@KYH08Du>XQvg^_{Lnl*Kl8$C58oYNlrz zByhHSBPDtJwh|t|4lqbxS{ZM&xshm!r+Hc<&qq_JCo>b55uktr7GP#E<(Ar(H^-tg zddjGcdLiVOQ@)ol<!BK%zzso(naNa`+Lk$G<fxwtst*EdgQA)uC4G0*G#9Z2oN$$R zsG0LdhM~frp-TU&wR#@MHYlZ&Q|HGvau^W<kPB-`YH(LO^wxc|BB8dbtjqcx-Zm)2 zqf^ClS`z^V+$ES_T1m<oZ%T?ICCaSd3a+{F2;#$2U#2>M_Yg#I3-d)^1rVO}R*$U0 zqv1-g_4*oWpea_!QxTUu<yjCiPz2Iwqse5A3kQOX0;Tq<unU_SoS-Rf*i&4EmI@(w zgolU6w{SK%D`m>C9qX}$k#k{Uh&@$T9I6o9`Hz+*q95mkclxm}3$u6Obc51~PDN|n z1ZV|e1anZIF?dlJ338t|D~lSlMQgNfF?NMWRi>4i1)%^nfC3AOtzX2X3pabSVn#=+ zwOd;jdN=<lTu@cNr8L8-3mT9K>}pwIs&JGzE3?YAZwt3n@pyw$09JK8V3q&}U<E9& z0uxZ6(nF^rw~7%Ow}orCK%t_8a#sARGL%pSA;FgohBY=9jG9t^hl{zHyArx*k5(nA zS*J3a`f=Z=DK4qGr;EB25t3)cVW6utdANr(=Z>A5y0vS&4RMofC1b9uGO|f?1j#B7 zce}$&yaSP`IHC(}MWnn-j?|)b<H;zBSG?1EyY)0Ekl<G4%DkcCu3s0cnj&G;E55ZW z1)8D~ZZ&7y%P0lQbbW|o;|ss2`=VhY7;hD_>Wd=|x^&TUaPjNEhD(KmQkrh{OZb~5 zEBpU-aLFoG_P-4bw`&L|z4=zBYQQA|v|;C@VRE?+%)weqh<8Grg|%!IOdwUubezd5 zrrW_Q{IZ+4o`)rFB#a+w%XD^Xr7VoY3@eL+A}5EXZ!#<$fopfn8N4}c#2$-`gTg6@ z#kfFx8HXBn&^sv7d&E^7uB4kK!jf5^>%?6lx?iWCj1s<9Ovc|Dui%(jJ=evF0lT3G zp`nsuWh}?ax{x;vSTwQ5f8o1$$G>yz$I2Qiyw_Pwo5xL|t#_xR3;f569IAZkSy)=g zl=H5Qm%&-G!HkT_c?zkY)uxer6YMK`V>&B2o5`hYreb*~rP^73>dF0tv9@Q!v}^y$ zvmB*%878_4T3j5-2t0a;IxBTY%falUj`^&%MZv8M5*K`Xotk*U?93=Snh|_kyxPhp zEP7!)C^GrX+x(xqd4jhkt)5K7q6fj6f}`Aw&gLndgCe}3rM+t`#LL&m=}gb&sh)R& zL%G$&Bn-v3cgC9Xef2ERxEY{~vU9m5u|WLAws)}fH_#7#n-|I`Bb!?#OTuj|ej3Xv zqzus=EtiQ4Ct&MbI}pvxyT{DevUcpzE1i@<O1IE;3CFushrE13%PPRk(mAb^RVvH4 z)d8~*xuDy<40yGyLd80b)E=p(J$+lCu$R0G%J%oYjH1m+ZPgtaPtN5sLMZ>#uZ(}k z`fgV()>y46stj6A01LC=v)Q+O4#=%A(!XOZ*WEa(cVbevwFS$720=Y-=Zt??JSYJ@ z*Mn`0xOykpYg;9N12Wy9D$IbhdncDn*puyw&Uz>3`&lZ$2+*(wuImcLDuTcpDjZGO zr5%Xl$|&{gSr4EA`n1*;70(VR#b|8WwJnJF$|wVjSSqjqEg%FE;J0l#xj8u1gJO`j zjofGGu%p#k9Z(F;5S&>TX*uY=Png`-9fj(}D7|%9ieL$OkO6${S0})NB*?a9h~4SE zgC7hh)m2zDzzrP00I$tYCoO`58!AYt-uvx<7{(|)3|Ml&38DZ60wDk1@8`TwSh<YS zmHh4C`1fLrvczu1n#X|3csR*Ah{8?z;2kc0b9*OR+*Szy0aCC6t{c@*7|V$1;Vlk+ zAPpyObq3ck3vXRSULA!*94ema;ypfkoU6EJbpf={3zJ~rS(gXHjfS%gC${P1Pu_T4 zR#kFf2{GUYHl9Gre1_P3C&vxtUw(ISHdO=Q0OlYBAFu!i-jbL2#^ed+Z+>@-?ICC5 zR5DNp*zlfN_t}^jEmaNYe|~e;o61h*0pMT*Se`(!jfM)G-+=DuN>{#&g3CG8C&7>h z^gT}fjE0r$Bn|%PpB{24oh8tkQyriLEieOVF5O&$iK5IZtqA|>vA%E(Hz*Q3QYDZK zWv~Q1xnt!0iYpE$i7D&Dj&S!3C-@dp7q9{9&;tUn0Dn6>_ML{loQ=e8?eliOPSVZ@ z6$En-16JU=)aHuJT$|T!?%U?V_#9FS5Di`+3KXE`;8~1Z4kuoI?)TnmJA5YxjZiv} z3oXC}h%P-To{8nmDE^A?2`^|#d?!$cP;vkcRR9AM5bv&p<F6P<3a{~)2G~eab_V64 z)c^;CisVX8jQ`9i$-40?A807=BrHl$U7!SMU<DHJ>=)_Ru-MRd;;k(2^K4efOubGe zZ~!(SM_Fghuc*<v`}0lDW(;XgmTC@fphsy7+S@4Vcas0GPS5pMmeuWK2VU?A7QpK= zNQ2#I)1kt#UC;JGhMj}XPJ?g^S>Wu@J~^6Bj79CTZO`{BCYg4<PCI}M-;Uy}9*@O+ zCq&!#i%(%CohAHNO)ZrO3qIcE-Hl)!Dp||;o6ldwd?yk(O$49|dJqMizDLq-i~>I( zZp-<tA6<^`B*@N8PA~+oF!6RjIpRK#9S<ie@A|**T;A-1(-aM{AO%sN`gAkY9SPZR z((}L%{kXNxcS2gaL<1FY3sYe8xL-8{FOQ<FDf1fr;}2TK9wyw4OMGCJN1t^Ue~?U` zC0kGa^Y2*&Jt*#NO9Maz+VBPdAs~P|f&~p8M410j;X;ND9X8BU=iNk#6)j%Gm{H?K zjvYOI1Q}A~NRlN@o<x~a<w}+<UA}}Fb0UF<HErG`*h=P3o;`j31R7N6P@+YR9z~i| z=~AXmoj!#cRq9l#RjppdnpNvou3f#pWP?-eSa+Yko<*B>X#!N_fMg&WSMFSc2Rx|7 zn^*5%zG!jL1>BH8U&4hAA4Z&5@nXh}9Y2N~S@LAcl`UUpxgqdof*3G=2JI5hkyUFZ z0N|WjwYvg$LcfL`TlPc+t5d6*om=;A-o1VQ1|D4aaN@;{AAc&w_S_}NoflS7>Rg!_ zAC_O2>nhH3?%lnU9EBaQj_>8opGTiw{d)iQ?cKkJuYQbpvhnQ`eF96=3JD8P(+AKY z5fZqsKm#FzE5NbJIIuwnAA~SM2`8kmLJKd{ssROW!mz`PNJ-|85jG?-AtWU7Fhv!I z%ArJ@YFIHw8E2%iMjLO$F-IMNa?zm%c69IpK~w=kfd6_VQ4cMEWRgh>kbFphCa0vb zN-M9#GD|JD%nQne#^6#tEr!7Y2noF0uz(XT2(wKHJwUS|2;8KzPCM_!GfzGDG%$-e z4-$h<;~KDrk|r|n?@#&|*iKMKy^BFng&w7}QcEwzG*eAC6$%bX3Ce-f+&a);zfb8q zAP7-cjSYcQ51NKmS!boSR$FhywZi{KP8B5A%C>+eibP+vt$-nXMOLw7h%HEgWS@mL zT4|@Hw%V^AIh7D=5hDPSV|X}|+12zQVq0^!5;uTD&Ske<ci)9K-e=V~6%cvV`eB?` zmKauC&dgx*UV)8*KwLCH7&u{t7iPF&hb`pfR4*RJN)k05sm|ZjBBHqCmIPpyg^4{T zxnz@1Mmc51dN~ylm6^JMnKCFq^hk~Avg>7?Gm3=S0^p!xXQ78Cx@e=1F3F2i(?B{X zK7<iv#G5y3t!bToV73Vk5VpE&ufGO6Y<5#QH3YF=LSPpTz_oem>>540;||1Sp$Y^_ z5Jv$JZiu^YzyAh2a4i`*RSN&XP3i!GDtNHYZNLURoMAHjodg>?m~dp15VQ$|8Vw)- z-2u@bNTBq{Pe(m<)mL|}k5d_7y`wP>NCSp`9VhF=*yVK<_k#=oo&n)8h@kibju!!R z2sRMCgwhGzJ$mV<r@nfuH2ahV>t}k#nN2eGJuW4;KNpek#RA>{5`+(-_y|xyUik_{ zci?&Q@5euX{r8{fiC4Gp05~=wftsC9ENTiE|Dt8U)uhh?!efB@IB>iJ$d7&=C>;V6 zxIqqf(1SYrU-d4r2N5xFER6bKvhHBQ5;+ipDJWhGD0l+Uz2JiOOJNRmxI-S^>QywD z-VTsag(Vn?g*Qo64{!ekvLk+K0l;&?3*AS-&xLMuI8<U5wYWtt0*M8uDp&NzaEwhX zAzV##h_SjTs~Vv3eCdNA@r)Ng&@s;e&NJN_^|(hq_7Ob{IF%cAH-Jb;;R6M9BSXmL z$4!+Xk&h%u`qsyQ_7x9)2S^_1<|jHVGSZWu1Z5~0BZX5jB6d5N!zY>m$%X(-l$Fu} zD`nXb7Ya{;6ttk|Fqi-hzS5V!1ZFUg;>b^>f^}mE1_>lEkXastW5VQ<Dw;XXvDA_Q zFpPi<k4HlY*ie_9gl0I!InHseLSm{TKoP1Cg)>sq9XTWCooM1tdT!>428g2Yuo(d= zDvy4o%VRtRI#B<D=I{!q>P71KKnPc~VFJvgX4MKxr&iR{q5*>A@TN$|<uwnS69s8V zMcTImoXQZW^F<ZP*f@7;XQW|b=|yFVBuTQ*eV5E61U6Z}fWFkHKLx780C6fDM2-fw z2*C&>U_^I9E~r;3!c3*=FKgcNc)4`IE_?Y@u6EU{wIal+uy8n21fv#Ttf%h2N+lpn z)vX4!CN{Ns0B(9Ss~=r!UiG@yDhc9LHVB*oAh8MyWT0)$93NkI^o6%JmX-I+=QTHa zfGR@ZpLkVlW;MH61GVT=p7~n>?tlRcv~!vW<SdRN<yh8UG@}fVBR@H6M?69=wYSA> zZiN%oPc{F?Z>A7|CeU!ZW};BHGn!{>mD}2yQu3x8-6>{|J6-BlmoG^O;n@gKiZpD( z0u-oc60NJEzbx0h=S@gei#NfmYVwA>9B+K(J71?{H*9<e$082N)YBe|z8I<vdIdb- zhr~68GpylzZTnvaH`u`;vG3Q2pbjpqz@m$MFonWHU=DX!ERdDr94YJ1EA}+QCq}Vu z3vj9=fK3OsFa`_^TTfS}I6?{XaE^66m)FLYf;pwFbZtCjA`_Ggrz*nNexQL<SRkg; z<QN$E@S`FZ$g?}fa+Xum+)BO=y7UurmBl>fE@I(Sp|Tnw1L2G|5O<b2`$jIPOlJ5z zNz4Ct#xr)*8v*uK(7oS;FP#NFX#RzOS5`B^5kBEv@Vc{V3iyU83GE&@<=N7g-jIQ_ ziQsN3c+#H+b>PyFt)^*#8sJ*$VOi-?Mlj<pp<d5wF+FQq_Xx!LoNQ$;YhqaU+SepA z->2+lv<Bor9VCz%Jt3D0Zu~kuy{mP!rLCwQPZr1?<+Zc5z3pi!?NbLZnjFeO1|Q7W zow~CF8yvuG^DJxH?}j(CxcuC0*6{)C#&^DDb<j^;p=e=<fh@r1&heE(30u|obK<>l zhCA+_B)|X%G_V1LC*0x}$CD*awThwXAQh9~kDFPEKm`n;6c~R_!5Y4Dmfws7Er9>P zy-_}MnrA62pJLF?YJdwaB-@<~2*W!rfee|~yf{p3dD4~sDFa~O1PeBL)TK@%>`BUS zI*UXMkYH|iCh;3=7|hg#)3c?Q-Rx*uKm;}*cDA=2L(2IS>{LdDAz)z%Pj03f2cQH= zyZtv<JA2>-Pa+bCpyGZ<eB$3TpX{mZ61_OZa8<qPaz%m-P*?nHDm{44cOE+}D0=2a zKl<-z=u{{}02>~Wi0{&vK&5yF>31V*&)44efx$rNWxspg2PeXEBLq8B?M{vfmK430 z4YY5+eCCfO_sEBS^k?(Kl6isyBtR=Y_iz^wc;fKVw@k2`KYsE%1Or<DfBOH`Kba+f z(PJ`rMhwb5c}TYAM;AE5`ax5E{`Ws2DM%pw6TkuN3k(RPj^TrAkOC*GCzpDM3y=W< zw2T$<zY6p}6p+9S)WEa&gi~3&hY155h&+*FC8r9z4U`O|v%nP`zY0LX7lgs7z?M&8 z1BXd~Q4obcn1M#4CM58$cbKynYz#?Y!6F>LMG(RyRKla6mrt>ThS`DxV4UHjro?)O z0a(Ju06Zh)Lfg}TECj<al!=Jxw}n9fU08)h@VV1k6ESRzSn9$!^gJfOJU6t%JNyWi z`IM7N7(38_LRbT?n<k*62xq}V!;mI9RK&q+hC_73N6ZLsla!(wm@xlH14m#$dJ->4 zER5t@#7``{MBv0xd_=POl(D*(8>j;wSO6;QFH$s&iUP%1Tsk~}#ak3Z!ub@yl9w8Y zg`Tr0R|q3q<O{r`#bb=OCnUyY6hb!;D|xX*G~h34GJ`r~#<Sq9SAi&G<i;aXhie4K z4J3k7;R1MZf>3~iyQ`;X3P-$Xt5+$2HSmKb*v4+ON8CY!cGO1!q=8c@fOjbY6tICd zn8s$>zI{}SHX;@a5Qb1_0T{T)i1eKxM97Nlz2B>r1}FkJsDvG)C;PKVv>>Kap#XCL zgAVWp6OhQ2oEk6*$(NKpjGUGr(10l{NLg|~nCuEq{FE86g?InJ159Aaq4bwP(aEDs zyzEny7TXq3Foz1WD5pZottc;lv;`SZfCFfO2*3d0A%XNE%CPhjU6{(UWII6mlq9Pb z6)1vJXahlPCLc7*tq8DJxjIJRsRt094Nx8tI35&m9|*Dl;8_5%G)&bX%ehocnj@u8 zNz7^KfFpo|OeDA^Sxl_huu};DP?(57_=xABp9%n-6QH22<Vpwv%fnPnhfvGQbWMF5 zNkxGKYH@&RaLbz<xi)-FtH7~O$;Wp918ZOj1SlQ76dmQ!fWLH~5D=ch1fJCtOQzh- z>C`rJ`jk1479CIqj`YZ%3p(ngiYq&na+rv47>eg90nz^vP0%UL;z<G2d`{>D#eW3P z`s_7+lN8T{mf4Ad4{*h1+C=+=3OjohDl?|1AkGBv0Qx~r3R+IDOilUZzbFvU3Z1l) z`nG3LfIe^qVEo7*v{0vDtUmz&o2i0{um+0E3iRAd<)I)Ba8C$w0m78f!OMma#nCYf zgj4Z1Wa)rZ3Pk#QBw@_ar=UG334j790Ep^<iTFapD4hirofjBQ2Q8kiWPq=X&l-g{ z>@3nRO|d!HIAp1TK!AgRqeg24Q=(8lG%3-7@PUcogC?Df=P^#c1RcLT02nPE8KqG! z)iOI+(?NAGNH~?8yA>6vfEG9f7{E<PVn;$n3U~i|l}JF*-2lxgt<vK$O)O=A2nE#E z`U6QN)%nteQ)vWT@c={k10CeSX*$SKMG9t-l8FGK<492Bbb!88&OU8UPz}{-N(Wgb zR_e+|MS+7`>4asdj{lS;kSx}sP`Ou`llRC}2Ut%CXwL|EPvHU9U_GA+c!Fpp*W1Fb zPsxH>(Sckr20u{BY0AlR6$%yn6beaDDcx1jNzMZR%;I5A25?RT09SE|0C_c7&5}t? zsex_4g85T6H9gpvAiGz=g&JW|Y<1D&;nQwqfEg9ofh~~<u*`@h*{@32OVP+Om;}n4 zCb=wGpxDAw`92_tQu?7%2-w#Hc+f2UR*?Uli-LXGpna+p`;=Sd6c5k<Gjdj0vO=NV ziOoBe7|4^0#Zw5-Q$CFVKQ(~D^jU{kfsu9Eunnmr`;=kSlukH@H(0~G(@n9Ji6fPi zFW8i8y;;&c9{2Iop5;;ublbiyC^P#MLDCcz&;_@I%UL2szm17Dl@tp=7CU9oJnhx2 z{nf2C%tdel#noJLGPF<mKuie&GYA1Rou&ZYT$T{OGi#S?T~E8!$}5G>kEKNyJl)z2 zrctB8Oo;?UkOG1fQa4f~+jR+M$pDAR)yT!!$^F-WT|vGT-scUa)cq4>tP~nh1_tQJ zS8XODh2E8*z*iZCow?X--BynE*xLWYfB@{?_1z;$RFod2l(O;x|9sR(sz&xz33`<j zL-d+^wOM_&(g^rhEtTDcvjE-0-vrho{8W^YaTG!^1|E3VW{Ok=CJ7>p6D2(e+&~?w z&DcGSQQ`4euEnz+pj`__VI|VIPjMMXd4gidgdo+vS4&}%h*=~FfCX59Z6pu!saZ{h z0N2G^2;I{25`Yt^;UwOno0Al#5tK1VhBGzBk-GyGRpO4An?KRuf<V*{f?Nlv+N%xB zUljr<m?;5x(koVD4yrmuF`GS6R5fVS`c0&GU1N`!9AbeHKDt&hc!ppw<BPI@G`{0P z&L6mw6jaQUAYj$+(cW2-N<;tV2%eObS`DQf$YYC2ffJVGPPQJ#lazAI69;IAW~E~^ za#>I22w9}oP(lC^aDj_j02H8MRkr2mF+EA4PdiC~RB#3^nBZAz+FQnmDUOp+DuEV| zDH1?pVs_@;IoT{3gez!-HIRVcMI+RDW{fyi76zpk=v)9~K%2jdQoC&?XVr;jD<J@G zU;sxTUBvy)a<+(fe3hB)qF0V(i!y)%fLM6u=dfwNPZ`%X@c>J3vZZAu)8%J{d=;r> zq-2(<5UAFEmgv7RK+kOxBG3a5bu<v2=-32kMgnJ<YJn1%=#uuE4*Zlp;1U_AgWf${ zoHW~shQn8h(>_Xo1GwjUask8tGwGf_n;Ddp+0+s(u!J&T*=f38pH9R|?IQ<>0GYyo z7x3w+4x1*F6feCJ1=s*R$OK2l<|eA(lCH~Bv1C1h0JN+p0pI`xrs}pf8ZyjJEa`x2 z_yb3t;kM4qQ;Fy<@&FVlV0R(`4LCu!CTye8LrDQQD~X0>xI2S>Bxt4T-mF(W+JF?0 zsTBC!!q#k}ao<1TgetiJR44>sZa}!9YVrJ(itQo-&;Sx}En42}*d`iNloU0fk~0ti z8}NZ^e%Qh$&{G-gEP4PA(BDDaYuQF_mC;2>d4wskhC*0`c9x}7cIy#c=q`GJiWcW} zOYZJg8E5>IR0R?v5QiE65CF%1q+xDrxK$J|*dlwrC>PLY@1}2*8OKja)*ZQoYM_I) zoh5B9Y)V!XAlM=YQ09vY0jaL<1uvO?L{}X_05NEUt^4XGO5Dw^N+i>wv%V++7-<Fv zagsS_4|xJ`m<8#UC4?qyX8C|Dy6L~Bra`9X5T|j08F38Rg+piruioh7p4L;*i5}X3 zr@kl*;N%)da)t4ePqE?@xd0`Qh3us#?nUn6Mv^Udhu}`36L4*dnq{_5@-UAVPx%y= zl#w$KhQ>Z+G)ijZp4d3a;T?7d4%VRuKmih_CuSD&Jx`cj`4ppEkpakoRgmCyM3L^k zVKgZK02qiK&Y=qb(C&H~XFjKNdGY8t$!rhl0Av`*mu96{?QW=5lmGw#0?#1?(171| zr+nV$N_X{Xu}(>;K@~BDSdik6tm67+??3T{97<*@N8ICn^<m!@2A*Cg?*ntd03N3% zJ5FxKRg|*sppd?(7T|7T$M$W(P)UK`3-N$q*aTPY?FFaQQ*jLsy6K#zr=6bhY<G8G z+0jpNU<>JlYAEP6KO*X`Z*ln`r-o_;fA@fw7BTf^3rT?NcGr4RZ}0xzQ%MF7;&6*n zYcLo1ioX>@{S+sr5Ko|nM%e8NXCVM*a9~H1cDJ6shVf|%Y%RC=mbVqx`II-7kOnA) zJeUL&holSt2XPF(?hUH!%g%I{7y4Rh<3G8&2>F3@SOfY6c@t9c`c8C3spb4(?JlpU zS)Tf#*Lqp;pSY6{B8Y%D2<B(yXb{ihS8-ha8E%qiB?f5bt%rMBITh`BkPE1QOlSk% zZmF0K@l5tW{>g5cihyg6`@&z98()tfScl0pW=LxD8W-?CDPH}7Z;O)eRyX|2cNC(P z6bGS&J?LG0&-X)5a#lW-@Xa3se`tW${MOGDvXzv8zK;Zeg+EAy?xdzY0NbFtfCtcp zAsB)?5P=f_epKiL^(C3cClM@n2mU3Wh_|Q@cm3(d6u^~~pm&cFh=ut@Z{W@KrwRg8 zH~~HXK!SxR06j1RRKR?J>1HI=VP=8`{CROf=4tA;|4IpGMN#SaKmdSnqlpI#cLon4 zOsH@n!-ftYLVU;|&bx{hFJjE7aU;i$9zTK%DRLyqk|s~0OsR4u%a$sMoL~?Up{o-Q zT;j~Bb0^Q9K1BkVDRd~q0ssO4a7W-L)22?JLX9fb;)V!BuVT%56+?xoUcZ73D|Rf| zvS!bsO{;b-+qQ1s!i_6;F5S9z@77JDbuUClc>h}DL+H~Q2}$`PPApVJ5WtQfLyl~b zh=>AOkqo&Yc{AsfH57w3h!g;v&ZbY>JwYNg>(&Stpty;8HtpKBZ{yCbdpGaizJCM% z4=$W1BG-sh4WF7r3W*sXj6>&(IXU&}b+uGZtcQs8?qJJA-<!0C_wv6VpjZ%oeO3}D z%)^f_e?I;C_V44*uYdn=FYK>+!QV+TC;@{25(seEe+x3ChZX`t7~w@jAQ4&tLr9om zMLIBe6%ZPNh*kv{bXa0TDQpm;iYv0%qKhxW7^93c!Uu?n5cNW%Cnx|>(2X}1V1{Ni z5}BI^2N?HWk?^VVV?;$P8Rba`XkdYpKN@g=2U2p`rI%lV8K#(Hl8GB3S2Dzjj00>S zg$o%dh$edsgi)rQaK({FbV}Z-n*wq+^g*9rme7I#fOg0L1cNf#sH2ZU8mXlJlj<i3 zq6n!G;}dt3VZn2ku6ICVl#=>W9hQa1XQ`2m0%}67toq^$A-MWq3l7AZtFF89+N-a> z0&7tYwLSvlF3WskV4SsDct^0$dUV2qxj;Kt2Fx0?RJHmgaDWTgM(2VE2y9!fx#yyr zuDa`XCPuBFxTwMql_W9)1>m;k3U}-Rn+t;zjKQy2!(vN@!0<U>6~4xW@WR0lLmaWh z6I1-~7`0;1q8-Gn@d1L%F1(i+2~@ml7!!1e1PCQZWhJ&9upAr&GKI{V034JMv(7v7 z+_TR=gV;c=ORz`_IRw=V8WME??PwUNcBn_wI(-4I4^!Lb0SX2r9U2M$8fc5P*khAj zw%KR1#jJ`uDA7n8aCVK@9uJ}&rX5h1C`R2T#Q<(3dq=iG3UPymBH)K3p19(R*R3{) ziX8BWbA<0zz#R=RzN81WI5|P)91#Gn0H4!EfCj5k&KGQ3lHR)OufraDsY}#~xr7b$ zp#~PprjFG_vcCv|o>w{>J1*dc0{mJJaByhvS}~xi^3zjaz4h1gN203%N7%tNn`~n5 z^H(v3y@n0wA*TQe!2Tzq1>o(D`D4AH{rFf#fb0DG^WVS!|4YUOwbC1eI<X8-ee8ZS znGOK=vj;?t0(PweQ~(yRfB+mM84Y|20z~jF1rjAoB-<bfOK8IX6QWQjSg2JF1Ox(9 z6v7Wa0%1fPltTI-2~in<-L>9#l*5qghB<LS3us7`5G+cFN?alnoA^H*)JhQi!2>Zq z;RCoC(IG(^k`t{XEl`oCb&+t@XaaDHE~;c^SrkeOa)!n?!ZD6=JewhEMTq^BA`^?4 z+!`A~r#TMii=Zll>wHiv03^i@fDB2uxYoyqSYTX>oFpYHX-RbTqE>*&4;8wxh65$& zkqZ&kC3zDDY_-k<;Icp|HBuE(K7=c+oFy%5X-hl#$5jEk&o0mrg&D#UA(p$PZJvg$ z9gwbX*lM9IRTE5xEPw;DAtp7eY0Ya&C>6Crgnd9z1REg#0gKNxh`z9Cnlr=?RDJjy z0>HJyTB1ii<4lNq!e-8U;xnK6^bI3wm4^Cwz!IY1<2>ClvVB5kbNIr-=aK=g2-0#y z1x<+I5NgqjVl<<7aYL;_Kp!HsLkhf`=h8HammLfbU!TJl`&vmQmrc|iSz?_@YiiS* z;`Av*sFf7t1A;p+pkDVX=-hHDmj)Q4W|@NkxKuIALOCy{iZUuyt7_G&f`kUOVnBSx zK#V1LER^H4ob9lxmIgdfsf>$it#r`JS;h1q`7<kB>uT4U)`|t@L4Ym_K?h)t^LKYe zOIp>cI7xtukeBS%2V*L(5e_!8lAWwA9oL;FG{Xk}J}}Hg%SYL<2-2{LGbFacSjmLN z)gTS~ENffqS~zB*R^F*WGT=baaWe3=UJ0#e57z<FT~dv4y_p+zYuw`^*MD%R6%DF$ zfePs16eAs{4U-EMcM)!JWB^z3CaE<?#?%5}vo3kdYu?v2qE`DF&XN8QzM+m)NatnB z$tb6|b^;213aO;vQtOTsbY;E*9x#E)1|C<rVK@VDKsB6`z`)k2z&ja3Iz!e7#T7?R z6}%uqG`L99p)RJYlQ4-(Y~qQnqE>zhju9Y$0U5@WlqYV92P#B4S}5*PMnTF!$|^_Z zv9+Mln=z4#Y-DI%p;pKN&Lx7;h|Pjbl*2s#a!NdqQo?Z&a76%B8Ql?sMb^*1bEPtw z%WURH<q%Z6><t3yun9-p_L=28Gf5h7<+uqdaX|qUA`L=QICikH6BQwy3vK8_ODPbw z%298=a19uQHOh}XD55`t*5|<rai77~)#OM-|01!{q8>G=H8h7>8KO6FsKOfn`^=J- znj?ixojvz<U}pU-j>3&=8)NP3Ujy4bkf;?7b|Zsl*q{xZB`V#5Z4nWSkDG|&5Vl4K z$3~`BTtRd;x4Z3a+w`GU49yJ~!Xdd&&6BL(<}Ky64Y(#@D~V`)Woj|tuy5l#-}-*c z25Myk+zcQG%gDrZpD9>x`)hn6NL=Xuzy(KV#x<JL+&9H5Zt=A|0b{ob0xT*~3Go%w zv)-=n^NgXmR)7l^Xw;fKV_MIP!#w6P2g}fG6Af+nAkrko5WbE1yaFIIap<m9t(91T z!KJpMGhaH>o30bfo(2SNh@q>4S>11Ypu$}%K!g!TFlK$Zi7!p90Z{N~r=vaXY6pqd zuQVGzu)>PVj&GK`ZRPPzpzDZ(X|2A{M5v~As%sxS;R|08F39#YV$frpgZamN3-5je zOkCBl^&uw0HML_lJm)*V^cA`)37zS}9Sro~ampCq=)0fv4yR0JP5y=n@L;w@09nuD zKKJ{km8+n%nM<gmM=_nUzGt2PIx{e?;mpdj5K)`j)#^U_()YGrT*XYtARq^yK*HR| zIcI&Rxp#ZW-0`rL=^O5Pq5|mk^xN<LSZ5eiQiRMCU@?ov2lJpE2>QD3w+A01j{9Is z(UH)1rIvWP+xsct0-jkefyx~{MjUWJBNSXPl~e*i!VlydyAh5t03hN_5VN4e4fR*j z1sDUOU<w|YjkwAt0mcOkK_Yw{e2r64u|X~*Ah(^;_~ZfqElv+Hi(8!#0YIFHnVkwE zVG^3ynYhXU0LB??L&uz6Fp-r4d_#ieo6q%5Eu3BAj1i}y5c9O$M7f6&n&BA=n5DSN z72w4HK!Q5_l~hs0B``z(7jhdqjZXn6(&vyCvq-`Tg_-812pSS%As*M)UCJul#SYv- zvUT4xl}{?L!M-Wf&*|Obs8Y3=P@s|B0o<M;f?_B})|R=7V$nqn^g<cnpD0a-9VmhR z<Qq!i-6by0>*W{JbXNlv3aH7ODEi_rnpG0;6kRlcAY{Yth!u4`NGT}6Cwd!F-4C^p z4t^oZhGCHWkPrm$9<LP_FnZ%R=G0cr#S?^sdx0F?DL^We0>xe0__W^QI25St7yx(} z0AX8PX&X4|<35^HUdcr#XafQzqvO@dB_KmL=9}?R&ceA4v+!6B?hn1imA&y}MOx%O zK^<EV$ct4SERoXxH?RQ#dK(AE&G@+vQ!xtwgx&uXq54VFMZ#oES`+QK%3E|o6+u}+ z4U-kF7{!rf*Zkk>1R1E<A@;CbYJH7J%H&cq<s#Y7r8L)C3;-%5!X6EsoN)&uut8CJ z8+JWU9(*9<d?B;2lK&i?e<@v4s^wbFkpQ{MdZC3Ki~^)hVg8X!DsaQakzDWO0aq$c zAF@#Yj9pxnonNx$VIn39fgY$}AzBc@D*RGRm6RQ@0Yd5<g^dpv!p?7D%RB84;Kh~T zCFW?7W(q-(s|=!9$N)DuqNF`iQPqJGKqS7^SRS51>}(gdK-BzXUR-TnX#!_({!bmb z$|Rb_4~W43{aqy$UXB$uX2so|CB_alGRpwW&+G|WLAih@3TJnE=lmp@t5||r&;kb# z+(0_s9M&Ps+1dTjBI(3mt*D&&IA2^r-*@6?egcmr)CwDpMFNb&AIxB9HHIX{TsuC` zJCY8*D5dPAUqP*(W$NdIQmEpv0jiC~7{o%()g>!ph%3V4#VI7=DCp<h0l0Y7^%!7W zAz+2N=!+swzqv}Wfdv8-0R|w=MA;BCIwQqF+xR#k@C@apn8Njx;6$Dvj4J7pjtxh- z%D8#O8EAlJJt8b^Q97=p%>882n567%8nav;^$=l*O%!ZQ9FwAHn)1v}xyrwJMGj;_ zb1WzSEd7x|N+`u8-18tpShmis$%%d)gzrs{7$Rkfs_CI3>ceQ&lTO7AD8VOns3?78 zNY30|rVdyt54BN{1zjWaDNi8!W@;wtsFLcz)Cw0!#TF!k@J-ZCenU^joEBcHVP+1z z`4EqtpX_iVVRC1w`s%NyORW?DR49Nhkina{W*?Q4R?;eMwq4C2L9;H7@?FYkD24Lu zV&L^6uySj+0!wVwq*LsGIEX^d#neIJCDTP`?-T&{C=bdV5&)!t@@S)f-HNy3YrgWz za)m2X?7}o83wpv*Ny$JF+-b!{o^(>roFWR$#LhiBmL%!x#8T{}q*v(u1PCZWB}~Hq zIo9BVfIu|NX2q@E_*|dzkRr2m8th19Oi^UT!febk$|KZ@pzg#McmZ7s>?5h$I|w1u zjcD8$s_X0-uEkDELg-7%?9wu=n5aRm=t56K!Y$;ekWqx%g<t9nZR=DXvsjz!9A#W3 zWz&*v*-8l~)Cwf*gbXl)4ZuK^!jj0L-Imr&mr{={y2`d@&RHg%sG9BH0<Mc>EuhSS zPAGyUoLj5%oZ8WC$OL8eP;25%W0j=Vhz0KDVs3~inyUl?PGp}NoM*CT(RK{p4nB__ z@Tu{nT<d_QRBdhM!fx!!$Eh`;OFV%$RKk1dq<pQNtWr)Mtc>*tAhV1t;PhtyO#P<p zD(~{j$FQwoOL#&xfK{aSQ69W!)8XM)N-ODvV6Cj=;$UaC^(ym{Z~1mdxVefVs>BO% zWQ=XE#Z@A^zVGJ%Vc%s=ea6&%n(zMdFL21{AgKfu$(`sL5%H~^EGq2vAfl_3<>EYO zL9t)|O7H~dM#j0yg`LCzES^<P)c36&G(Jz>%@5yQ37{Ut$sW#%hL^-ra0|OIYSc<; zm_!#egX!(;BiUZzA!zT!p7ms+hH>gacxH?u9g@EA5hL+t)JhhZ#2}bMWKI;U6<*MG z&FjJr-j?tW8N_Y^&X`tiY$S0Qi!okwq}z=I0elnp5wH;zmEkq+!XV%O{7@$aArc0) z6yOl5*jn)z^Kl=K1<ioUNc_MNC}*plK<YZ(8{>=JVoyBsSyDLF;ecvPrKKNR@+Fsr z6fjpvNFW8?a3399;d!O_A+qw|%g>_CuEx|%VR9?Ga#(ERrNHGzfItimXvmF<;aMu> zcp(3vB(s<z+GJ~J>g_8V^D+BG^)aSL@PQ#n;U{O&g?Jujex(nZ&yXUDX`M~Irq;b8 z^EZR@PQ)jo`0YgmToqL9Jdtka)#mePCjX3Ot$eN7K<q^2V>sh;KC6TSUW##Mga<UD zvaK-)ZIS1#YwGBs{{Uv*qD{+Al>X{-L`yVCupp?6XGYWjBB&z&!#<Mr;$C|u@cwWn zDxD3|&J%G>bV{o<M=&9%_@_l&fH7h~1$yNC%G?f9jtKitZZeCskxkgT+<2|@P!qKp zs@X-D!Xf0Y$1<nxQE}2pqhR7o@%9Yg##JQ~byiFC0t1S)DZm^ofdJ^7_sufr{b+&$ z&^Uw2_fE}V8lg>VbzEC=%3jJpZNVY<R}SZ%B7+M<{tv!9!PvC!L=Bl-8+JqsqpO5K z9iTyKNipu_srWU}iGrcn9PdOW?_q29H`fXe_*Wa}-Yyf)<Ngme14^znP5AO^k8XBr zyRv_|N&y^l^!YB~U@8E8sXSv1{yuauyY_EmGHhQ;DC1uL*6|=*$Bv&ebkjWWJVh{Y zLw76Fq;Ow}+!ptp5zadUkfvrNT3MG{p<_jn`mQ&M+{NVD`MEW6(32HC270?m=S zY?6|9ee<zfo_C3?bM%!gyI$}9M6Rne=)`z`+PBls9EW`6%iK~LXP*UW$K54?h% z&*ZVooxp%6_=flIX)-u_cy#*>E{U2DN6U%d@ysMo6jpP1i&HRhet39jiTm+2w(PO> z(Df}EM3}~mDi7L>yLgbhaCpYJaTu`l)i|>RX$ckWrgE6gmdr3qm2V4qm6tDn7P)J9 zu=JU(WSdZK-zo*{3^)5`h+6rXo9~5YIcw;3`_*>;-0bNIDR(sjz&gZCJ!@y1qxqhb z@BgkjVm$WrWiMZrGJrEE%Q$pFK{TH;y6igXpYsK1w_p6uDhidK2(pYxj}uBadZ#Nd zn?ib4$abM~9s>7Hw4%`PwpGOdHFyiPr^9;YE^4S>1#wRw2(zoZno#$;3XeyORZ}v3 z$NI1XF0GSKF1sI26AstiQ2n}!FHDSEm+27_d$k9yu?t0dFCc`63<{SJS6|9JKg?hY z*^OKKx#KIiV!K1^w*n@4t(d#{kT9s^;=x>YL1i|&>wC=d>$)$5gD>E_yGp!cPuF%g zyQuamkMF)Se9T^~zb8b9GvFwv4kMos7GH}0PYVohD>{`o{KtDM%|bjv067DSc1e=D zRD+9nZ%cEJ({qD-%;)RVj=Vb@xdKvi@1U*{IdZKSjKF+%p0m8n6Fs7$?Z|Jr0=6?> z2Cop|i^H;ud{5NN7Jb!sYbHUwo-g1*|1NT4&oAq^L9DF06u5{TxYeV*uktgk2l@hn zwEQxWX`6^O8U$*m%Y~C+hNu1B`>Hl!yQDLqvd0axFHt<_*AI#Nxu|$Su{hs5KAQFu zt&e&Vay!20^b##J9Rq;J2aAsvRAD}T=p!onLb|Op;92u<6aBEOB!#+2Ibn0Y=*#|u z`gxXHHwp?os1Q8=U_7GKqq&ed@|yYo>=VC>T5y(YI}%3r@j1~PyGqLI3ZBo?V-<h( zE9siIy9%B>P<D}8UkY18OQO%yqFaCY=Vy@vJQBV+P(ptL;fvQxil#qPgqnZ-Q)n5- zmBc5ZahDuGG<Y|VU_pZi5hhf)kYPiI4<SaBIFVvSix(^2akr6UM~@#th7>uHqYsQH zQKnS6l4U^;C>D^EIg@5hn<Fh~K+uwBPoF=51{FG#Xi=j_ktS8Tlxb6^PoYMYI+bcw zt5>mR)w-2ySFc+c+!Q;OY*~&6JbYEVmTg<NCq3jbJD2XpJUiaz)k{@CUB4hB?G^m9 zLW;kK5r<4sVQ^!|k0D2vJehL;Wy_Z_XV$!#b7#+=lS)ZEnl#4(cR;6Bz4|B!xus!q ztd*8^?Y5F)&lO-BG6D@2at9Z?00nK{$B`#jzMOe;=g*->mp+}k@-o7)i*-e$dUx-F z8|cYCx`3VU=Ue(1e-i?FtR-6XT|eI=i4*Se=hwfVe}Dh~0Sr*U0rgsiz5_iHAprsz zY_Os|5Ui_!FdPI>hX`e=(5M$ez>vNOHqcPS5lJl3#1m0WQN<Neyu!ozkf?*j8TUKj z#j+-#kjCm%xe=sfc04Ho5nS*QI|B|_FvumDY|_amp^Q?>DOa4vNa6O-g32vfJK;*P za^Vs=0>12MCovOpAc8Xga|@w8G~tX>&N=C<)6P5bgy<GFNh{z4f$|LWEid_;={`X> zYsJR`3g{??J0S?GP|{i`0ntk_%~aD(IqlTb$G~`PQok68<I_{03S(4~L_jsN4{i)# zfdvBK$T&G)GGJB2ToB<*SAh*y*kOq+)>t_kNM(v$=@KD`W1(Fsj7FLLXpd;!D#FMD z00;m8cTA#l1H-EI3xgN1O;_D@*=^U|cQtzgotVlMtAHWk%@?6FsI7OSJpk4BDj=@( z_S?YZB;W)R{MC(v2Lz5-;)yA)*y4)|0%ew38>R`0Dnc3K0*ux5pq7r^$s=HrnW~{o z007uc&IdT47iF>kNYH=)mU-^k=bwQNx=C(kxS6H`Qm|BLVRsPK-#l(zdZ_Ezd=t(W zFfe+o6hf5R>#xBMTkNq_J7QU_Wtv499m&qL0b@{}t!<yk<TFkLh(y~a1B#p5@4o>L zT=2n%>IDkDXCi@v6O<+#SqM8W;0(u6!i7&<;DitHni#N}^3OpJUG&j~Mnu=mWm+JF z#TzI6Nyr<X&~=FvDD>AYA?OfwnIdpt_TPaIUijfV9b$ytX;Pha;#nlLW44(`XcRsl z<uZW-PDef@7m|$L`|rUIU;Gh0F+uy9l!pM~@f~!&;X~PfCj&mCj&g%F&krdCbmQ;e z|Nj9Pz|?gALOuDbi2*Qxf)}h$fcg=`&EUtr9Pr5kTw0g`KO%riHIRcH^xy|Uc$E?? z0fRT0LIM{U!s>)!0w_Dc|A51$98l>cHY=e!a&kKr?vRH)^x+R3;)J5z(1a*tAP|o; zhJN|$TK@Y2pE5wD!Vr-o7+?$%v6w|IZqa`Ts00<q;sOkapaS*d;$}R61e76SW$cRq zpGF}i-^7rJ#5v*_@t8+F?h$YZ&>a}ZvV;_n(TseAOk7Z=vj5eMO$vw-eB?t!`xugv zm9*p~FV=uY0CFyZBqSyq(*UQ{3u*wg+>03H5zIk}Lx2PkC}9~(S<cc`4fq5n>tcaH zZa|0swB$+yVCOF+6jFS#nia=3vNI<QsYp~rl9GHGO=(V(no_bQF8@M;7HEK%)x=6L z>s5d;1P}s?>ejd1QN1Rq36P!h<~!jTPkA;70k_2FVYJE3Ud|IKB0!n!0vO2`8LU=c za8jfI*#h73lc5cD=tG$^0DImOG5PEoM2F%&f6Xv}k@ynKaM+|=fw5Qn#OO&;no^Yt zW)l=Gjp7)$(w5``f(<NSnJ&7caRKsNGWF?Cff`h*5W=OfQC>`iN)Z;KEQ0^@02G&` zFosc401r#*Rk4~?t)@f)JwRtsNpsZJZS^42LRk|9_(nFxaYr<>VF`1lOtQ|Eu5~5< zt2J5(*4U))j%4+~66*!91|pzPj-(OR0LeAGE|#&4^{F=WDjWnVu&-A|WXJT-#{VUQ zPtc$d-kMp*zB!h(r8R9lO%d7boRG3vbxk5c(7{5<RYjTuBLkXxTHWrJx0XbJS5>=O zBMLP<i6mzHG{Pozswj7^Txf5h8(ryc(Hg;>j~GAcQ*f560LP7=K(Ay_6<sfTH{>2P zr<-2&uGfR9u!42x<H<6r)JBnmo&a&frV6U)et_H`djT9^0mrWd#Xtmn<2%UtLR6#W z%FzdJ`X!E{=z?I};D9llVGRfG4uD0laC9kxZZfpN<r2dOJHV$8q^O2qw1BVwHXLIa z&zNwzAOSKzoE?jrRGO+{DhSEIr&ge7ieR)Njgg#WC4&tVzc62p=d)vPnzdtQ03jpG zL|YNf5sY?R@|VFJW{h>99L|^@l%u@OoYInCXAPmE*rW;*K@yCU6!V?&oM(68fgLbF z^MPPGR#2MkteR~gtk|T3615VHiq-R@Asy*qJs=R~$Ob09_~-116_!mynK2A4Ky9(9 z3?yPE7?I>%Nw1pKt;W*@#K4M7XnNDDLn<ZTmPovWkYH@8!HC#-ThF<g*u^$Boi5M^ zS<@OjeB~oB<ECo=xr|Lf7!g7({M=)2o7>%%(gjfA1s*V4vctvWcB@tYo*h!HOhwSp zNU2y-Z_k_F_1=*aDiDkale;vmO`#S`%q)P0@Iu?7)`}~%Q!xJ5-VJy7!$%YZR9vCg z{DzIcE33kQ@9M!j?2(UTMJsm<xj|9|V^swWah0!}<@&)lB6?u)*kE_TJA5F@!nDKM zU5Q(@(sF>@T4$ZLoajY2`ga~s2WcEm=B1IZwBxtbj^*}))BBRQ(9s~oHhRrR_xjht zjvP6>;1^A3y3-X5b?_+>Wv%MrnaiZ;0fDy5qYeAr@t$|kJU|J*$m`h?6XFp&RgE1( z>kcPKY697oin!JL;~^jU%Xs1rRro64@u_AWNAI!?6KoIZ_@!U}3#hqZ?49IMpL*5r zr2(BF#4W&!`MO9se4<Qbs6F_^Y72<GsP5kCfggO~Z$$wmI6@3AFZ<c6`FqgrSSfv| z)^-P|zY8Ds@UfqL?K7qI;W&lzE4n=5p_^H9^C6b6gz*1Vn2HzP{`=t{|DnKo+2HpJ zr-A3s$W88trz{i6`=iCE=*2cq{tWN{5pW{tZ`SOuF7R)3Hf~i0&WC2pKZ=Zsjw}H+ za059oBIvK;8qh494RmM<W$ufI%85<Lpg*{biWb1CIxq%ha0UxP;)Y@0LU1f5>)!@P z>fQ&7V$Vl9fIsMritOX(XfO$t@Bk%F-*Rv+FfMSY><5wm$fMXKT=av{sL0WlunWDA z2`7$(p0F&Uux<Xzg|Y|-eMA!U<J6o9Exs@g<uLv_pbn}b=EjgLXin`&rt_F6i=Jvx z`bB2&BiI`6`sOeZ6%qLOuI%!VES}D5UaMo+D2t@eLqd*Y5V1S3jfzfh5kWB&8L{uo z?h(Zz5`m_;o)7m_h_JThoZJCF;EjlS1-(S^7IE?M_|Ec7Q7i<n040X}b_M#dh_ea? zW)Q(W6po4*E*G8g8S$?5#sT?y@g`{RV(P15hG~n~<XeETIZTeKI3VSqu^i2@<ywyr zsIeMr;u<9;0!KxhwkQS5WVxy%=mv1;&T$|4k?7L@@e<ilCM@b5|LFvQC<t$42)$$L zw(yGj@gX4+;u=5<TA>gEvK__mU3{!#CM=8ct4y$vI_S;??Jgos@+9d^1(b~eFOno4 zP+g|bU#Jd<)bK{wusRrzh#U_kd9o+H4c0_}C0kM?Uh-JlZ0gP^#n^-pr=#>dQQLen zDy7oZU~L#ca411y1dD~x3=fZjj7?BuI(qL7ZE-5i@+={(32PE7H)01f&Qm<i@K~{j zT#-$vqxzU}6VY-n`7+GZk}XA|3{NH3Fl#P*=)l+{8Kr~$h{*l=@-ZRPFHr&J05c>6 zb5oqJVe%lh@W^(eLjY+J#v*exNpr~_fE&>Np%g3ABld7pgmG1fk&8yH9;4#|iKwSa zGdFdU#`w-0o@_Nc0u==X9w(){^yn&$gbzWZ1?va~ck?-+GsDh+>{JstH$ph=gg6Uj z0=bCVP-%%mayg1nl1=~#qw_q`bGja29C*<>IpP=V<mMWt<MN2zFeDQ>0%4d#3yFve z)AK(8RJs(v_14in-N7BX#0UN5#Pq1(ZlveFg(;K64T*?vlrumvG(*YiACnI_5j0BJ z4k`EO<3J8(0w5Ha!w_{+FEzA9UDU49@%s#PBL-4R(g<a&Y>&|IMnH-=I+2Jz@kNDn zNEr*(!a*qAGti#I4+G1P;H*r5BspgP(YzFdNUiir>uLdK)E$bFMQl$l4GGc8<QqF< z8HuPFu{2H96sv%8lz_8KPb4$_1=I{F@o4in!jXtHh#c3nPyJM-XaE(4A@r<MD^KJ# zN98UkiBOH?3629Fi71EubW$nRrzGwQ#Lz(9(nR#HVa$(@bPpttgCYCVAuIJ%Q5B;) z02Q2YMlZ8Lw3AQNjgkP;Nc3|xMpCpcG*x-ES7%A$?r=+AH9$%*b_^1acGO2CG&OSa zhV0B&p*33NDd`+>Mq4vL6x6|v6_5PyOIUO>oDxX8PFl&eT%)NGtJ6BMQ$J#|UUH6- zcFrzWV=OE5_ssQP@zs}hu|rq?b6wBl3`Mk(tPV<71250?Tk|zx6?TuL5gY!_J>m0T z-LzWV&XV9RLIMECHiAqkgE4Q&F&8#uMb?lMz!TJwUn}!Np<@y~50k9WLnh#1(<wDT zlS(;uWN|iUdng^T!NXQlWtT%0J<l+?Xf4Mh00ck)aBNo_!!~aSH+42@rIw2n02I7$ zOAnO!o&!-QMUgHk5MLx_y=5czt23DMhN|i<r*>`GR)w^5OO<pvvhit{_J?W}K{D1v z-Jv5jV?3QzAKNx?1(%23)<EG@HDZ-bKGnBA>RY0yGx+m{{Bv+Aw{ktGDv@(F54STC zw@f4lmW;7X*h(`f^oA_|)N)Zbbvq~s^37<m(oj2NBmIRtEvZljU^7(ohTKVYdAD}~ z=u$JcGB=eo+O=G^m5=E0OI9f}e)NWd)OVpbdc_Cdf&mW=bXX_jD5(&Z5b{OLGcu;M zgw9KP$+vvLC+W0->8{t@CW9-t7nDBoOKu@E%=CuP)O_(be}iZ2s?|WR^)ceIVO~g< zTsK0@!!q&|Z9!Il8MuK*2VJ++U*Cc-TUM5ovP{aBG9dMaB-MdE_=82~0g$0R4OD{F zLQd<Y5@qQt%Y<(ugH)f^R6%%#X;^StZxmucW`Q$e*@9~e#cN}!F2Ce)CnHyH$jfRt ziIo^|8o(2d4`l)W6KJubbH5}uVF@usmol0au4ZzHz4(j0CLNstYo&N9sQ5~@k(LT; zGQ!n)#}$m>IF5sc05(7akkmSB^eW_YcE^d9W>a}3gI-P7Ugfxu4H;;F@{T<;Bc&o+ z)9rXIDR{j%G7MIC5%!QVIg=%(aNTorks?GJ#)V<YJHNyp2g74aNTD=&m06i&z|AVR z)RTweMgx|X?DI;%;4x}ed_}XBefgIq<}YUyc8P*X%cYAk$w9v)g9XEBO9*O#Ihv&z zUW8dw*;gpOw1T6FL?x^-&bEZocACX`oZSUjt=B!VmnBfRTt3g2lJ!Q^Z!i27t^k*u z?fIUeCF#unfeD25npwh!`6RQZ=}89)nE+5PBDaJl7oQorp@k(0NO4R5HzhjtX*g4w z#58RG?t8zYbW4ah>eit}dZg{7H+8sQ(+(xh*hs9{kBtOrmDU~POfPb`gm#joaXP0z z#S_>QirLbW#6Te_qF84)r140S4@7L;LGIq7c}wVdbvml0`cgP_OLfT-B7tZN!jT0I zl0hj{LC#xjATPofgT{BN(K@XKrK)FCn~oq3h_-l{g+8b0Zg0dC-lBd>=zi6@ul;&X zx=%*ix&;V<7H|(>8-_ut>78H1+S($4KbBAbda@~dN|LSq2Ai7>!kDWCnPsV4uf*Nh zVuMTnhyW}5v{743fD#MHcyUILW&I^bt0`W;B%Z$lhM!r6Q+v00+euWC6_EOML*NjY zK^@%eod)(x4!SFh_@hxkZF@VqrCUWL&I^KjD1CZV+PRu8_DVR~Dz+Gdo^`s(yS!(F zdJ7n9zl2WT$xgpyroEz#75a_MyT0u^;#f7k)!Rc96`mN?N0@pm1i6G#?Y<5Cz)d6w z?C_lT+ej9-n!xr;O06p@*`_ZU!7)6;`vZa-{6P;Gp6vQXMsF)n8G}?=!%;lN3FHB& zv%@2VcBx5-uf(ynVwcUjmsLE+b$r8-K^-#M#f5{e-zju45ywP3E1VgF_<F~gyvfi1 zV*p5D4hj^=W8+=p$w*?BBP2j8z8Qm1&dI?%%+VtqZ$Sd6yfi#Jnv(ZEla^!FAuHxt zyz5!a>AcRP1Il3`#Lt{8DpsDlmp;VyTfVy~5*mXR+RhO@(Sw#E1$)oS;_%|>Wn;x) zOgSn%8iPPu(KUV3nS+xZy(YFhp7eV?zD1~~qNXwEra67pS=}}~{nJGPh~?>mzl6r8 z!l^L`s#|^6dHpjm7uI9ls4a<wzr+`)qO1+*nR<QMnf)^^HB*7z9UeTMWZX!W)hYB^ z$uGRwxxL#PV^v%A(<gxc7z&HOBrKr<vQt^Iy}jMteJ~^r7v5{nwILL8z)|`CsZgYX zv@yuE-~HbK9x{@k4pNiKB>)LzK?CC8S>h?V%0w}r0=F?J0|UO|EnYBslfm~J01Utx z(qRKkeVYCpLvHpbnj6!d^Ws&0<=X<H`?tdbzyQ+V0O}wKriqlVWCfifybb6GS^npN zel6CMgk5|AY@i+HV8mtVmW?FjlR~}?oxX#9>ZyJz*c!-{#};xKmX!HQ!V@V59D@qH z>dC(Bt%7GyTD?yw5Cp;L`G}h_R%34!DJneGx83aVKJSU5WUuzjPiPo&!0pe7vF9Vp zIpW%jqQnhI*Y&>f9Um!Hd(T~<5Lh7$s9=u>8e`j>BhdXQY}|lq@$p6ffAo{$w-tH6 zJxLH4o{N4wLIQmwlp@IuXvs;x_HExMfbwL{+=O}PkBi(yqtqz6+<?CP_KpAee?kW; zU{Lp5m-GpVu6sT}N~>2Q&J8Fh1|9jefBPq*nt{BG8wjkgq|$++&<$uYxIg{XKP6Z< z+`nJ*R7lS;MA#$Z(hVrn*FXRDzakVIAhelqN3fv5g9sBUT*$DY!-o(fN}R}$M2iz8 z-f7&(v7^V2AVZ2ANwTELlPFWFT*<Pf%a<n!P@GBAoe!8O9Ym<fv!_pj3{K!2O0=la zqezn~UCOkn)2C3QN}Wozs@1DlvufSSwX4^!V8e<XOSY`pvuM-*s$I*rt=qS7<EA|G z;#ZTOc=PJrn|DD74jAPM9=sM8U%io_LSS&X@!kjy2uq$!xw7TUm@{kM%(=7Y&!9t# z9!<Km>C>oFtIqmBiMfG}W6Pf1(=XtRt8-6QK)a@Zryfuk=uI4=fddJ2D__pMx%21H zqf4Joy}I@5*t2Wj&K)z|DgcU$A5Yviga_TzCmlsTA_S)!Qna66FvNTH`19-E&%eL_ z{{RLk;D7`cXyAd9HPFd8w+KMrgAmqa00t<$fF6SXWf0*)O%ZSc2^)^r0&W<VXyS<| zrl{hIEVk(4i!jD0<7f($080$vg{b3>2Tehtg)>r@1CIv(CBxJM94tWOY%Yj^K#)*I zDdm(@R%zvxSZ1l^mRv5SAR#eKu;iE#x<FwC9&~A%1!O*{)C(Ap85;&KsA=b&c;>0+ zo_zM{=bwNEno<Lxq;ra#h_<&x3L>B>C}m%e8G}*?h~Pq^d@aDig^zaX>8GHED(a}D zmTKy$PhB8}2$^8&YHy1+nkK4e#js%j0U$K%Q6;qSs$L|VKme`87HjOW$R?}ovdlKC znyRd{`s=iZS-|K9ZaQlf0wGQyra?C$1wjbZ{*=N7+NP`Sy6m>=?z`~DTdJzV08#F} zcv++Yw(=^K%&h_lkZVDS8I`~R!{JMl0VwR+@52!PM=bHg6jyBV#hwL$N-#bs>@iLH z@{6%bI(i#Gj=veT!A>7j#K3(c$1L;AG}mnN%{Wi2F~=?U43WN(<=hbjI^qfd0J*|E z)Q3Jx1ewrKM=kZ#R99{F)h6!TL(^O<#K3J)JGkS~1QivWl3h2{WO7)y?e^Pn$1V5V zbhq_D9o5{G_TIJyc5@_T;zCpf^6kw~2zA!2_~MK=?)c-7*WH?3hNs;(r!sduX0|RN zpaGkeCnUg#k(X}z>8Pi!`s&8EW)2gfbG^Wim|N_Dq&W2|cI*aOpaJKs2QU2a#20V; z@dhR_4tTu#>|=$sOKj_y4zu(Exy>7tLIueGckli8;D;~%_?mr*WA-gS|3dZsayzC4 zFC}0p`UEY|F!}iBumAr1_wPSW=F1WN@Z|zVIqG4EAX5%pqLTr-BUt~7padsK!3tV1 zbzeG^1MwBB1Hy|;8F0yB92fy~UGRh`OrZ)_$U=&#Djd?<V7WR7ymZ}xOru~)a1w^T z<FKuTKn$V~he*UC{s~$!l;N~2(1Lx{kXgGUk^)u|9|zjUh*->`7PrX7E+XgxeTbG4 z%N4RG9!nB|Q;CN_G(ggM@r`hdqa5c*N7GyY6<*-M7^xL9W@&Co!$Jv?(1yMynX!(D zOr#<g$;d`p#R(PQ*&csI0<axR2e?E337i~ACr5hnlb{TxC`TERo&9l=iRv4PP^Aho zec>dPx)l8cuqjg7@|L*Fr7nr6v1)7$m6%fHsbuoLll01gB+x)0cgf6VI`f&(?B3ld z2h3E40D7cq1(_IOl5sikT+s}tILArOa>i|PdaI_K)E7NLePB#XD9OQim_3HE&z$(o zr#|<|Pk2r4Tk0eeJ3Cc`F#%u*Bw3jQU)IltI`p9sjVP%+aR=rFluTxlRiNy(q!o~a zX#;$kL`O=}lA83SQu@*@BydqOb?}~cs==5Ra0HQ@ZGbL74oY{*)1LbDr~MfKDQ+ad zmhz~BKfF^J#?%Cn5YCE;1FBU2r%KhTS`{@7AVMoNXjCFuAOcRb6ETSdfL?&abD%@t z=vH~vwz~DLaE+^4kl58Fm61z^S&{%~@Dbe&(07NFt6&F9*uomND0HnWkM4RU-Yh8q z#`wtfILW=kTK2M-&8%iS0xgazR!0``8<p6zBo-*5BRZHL{p{Dy&ARrru#GKGH8zY> zeilN)l#+&sv;Zt@L<jE}1UZl?6xka0xX4XzKTUbt5am`zLn2ZDkN}ByG$1lVU`$9& zsNC*)_q*V|rN*vch30O^Hb8<=T6ZLYPrO3~75D}q=-E6UhWEbs&98ptm;}6~)4cQ< zD2pN`-7E-$2He0z;poTz(EU32!4QtH3SIY000)?MDw-aT0I-Qt3;_cbMqdkpCgBpB z_{1m<UlNo+O$*P*Ob75Fg4{=>74U);A=qspos{Ap`}oH|Hr)e|VNn+=%78Eh(7&W> zff#V1sLktSkf%)LDqFc~3L3@vjC^E`5@<{kSi^stN6Xe;`OIievzp}<KrXk(S|SkH ze~2bsLZUC3%UrXb_sr)$C(C?pZVzMm6U9KAi@SbKw4xWyXhAhV46P`Hp~o|5^#E?t zKe1nu8_nrXd-~H*Qb8D#i0Rqri>=$SZK+*WTu{6E)v%5=ic}>6DXh9Te-UkVZg*>% zh*Z|V4z{p|jUN^Nl%ig}md$gmqv2#jB&SIwwzQ{B?P}|Wxz28kdCbfl8fV)fh_kl1 z$4%~XcLv+v-phor8J#7kn;~vAx4h>~?|Q36V~7axyMH3!=InbR7T~eH2Tt&U8{8@n z;08Lz{BNF^2?a7<%?%rV5DZlI;26)i#y1WV*TIJ3J$Y$v3jJ@^a{S~dPr1rFLYH4a z8RRn&`DxGya|o{d<~YxJ!55?slEZu=G%Ss(-wjTk8~x}=w|0$=u;riAgo$AVO$R`J zoJ}YF>R8V@qucCskTp@xn;`?m8?5!RoBiyGR!}&&+I5NmZ8Kxt_lVI>_qyBt%!zHg z%PeUbZSLFukarKf;0KT5yz4z8%O=b_-yLqkJO1&I$1kn(aQKN_jxYsHH!V>e`ObU( z^P8msDu%J%$~$Cs?1qbHosDPEyZ-gCKkRsyVETykdo42kcF|+c``-KBsvX$a&}*NN z+n;5r&ertrm(Tp>?=%Q_(>L)IlF^8Z1(VJWiu1S6{q8#yozr)S%*E2mWdGXx=uf}; zp$Y!*GX$w%aqO+_yZ-vy|NgdYO_AN7kgrC4E2On*SA>5ASbzqoND49z*Z@%chY*!! z6*`7#@pga|Sb-L(MGD{vVDfSeNDzHw714!h0T);oSb`>af)(^7*wBFrQAxT66{Y89 z7KeiWG+2W+NI?qF2W!WI2$6V8L12caDcp90L|BAIXgst=YCPzJN6~Ct7A$#ogi<(# zRLDAp$Aj+R7pZ3yamQu5SA}30hGO_Q^s;(bXnZh{S6o(gW7vjn_=a*51d%j+4Ty#; z5olxwhkCe&d<Zq;WrjQmW7dZfbY^7d*N2Fhh>CbIkd$v&Xb|Iv5<d4?YqN-!c!`+! zFn1#jANPonI1-m;VU3rGq*#ik=qxSAa4cvo{}&Q;XjGebin2J1v`8%N_lOVFM3FE> zAHi$p<vUSWi^4dJ#0V%4usj^tfh4dDY`{KFs94)mjM6xb)R-sc!+<>a0V!|?d=N<g z-lkZ}SB>I0j^tP+4d4k(myF>T03*Nv-Vg>qum{bhedSn>_IQsk@+HoIixMyewa{FL zh>rp}kOWB}1h4@bpoF-1QS?`k4*8G}xgSZmkS#TU5qXgqnUUB5E!stqlQe-E8ImG7 zlFE?)cr*hZDMNrqk}TPhE?FAECrK$8Wl{B#HhGgci5ciNla^CUIr)=78I*F-OVY=a z9s`9!nUqSolxJ}_uVa)S^My<~l~h@kSg~R)29>X3PgdELUip<!(Hg6OjaoS-c?gzh znU-q#5*auSO;?sY5|C>-mvmW|A)$f=0GA<BiFVnSe)*Rgk%1eim-I1;fO(kzh`E+o zwS$CN9BY-BkQte22}WYnn6d#_l9`#B*_E`01(taj(YTqSIhsr<YODZ=pE(oZNSdtK znn0;BUVxgZ`4BeenznhHHwj5HIhzhqLb&;x!0D3X)rq`$5Dgie$eElODF@t;H^pfX z7O9-lIh_!Bi>V2c)R~>yiH{FZ7pe%AE4iKGIiB`7Wa<!sMk!_Fxt{DPjx|yYZ%L75 z)}HiPpVP>7xY&C3xu5)5iy8EYQrVvZI-r^OLJDbmTuGn`x}cbNg@<>R3>u*l%7+g6 zb8<PM7@DDDct^<gbI_)tAR3}>IC~Ulm?C<jC_05P`HGYFm?`?AFnWal_*RsLhM6&X zqd01Vce8M%HiJ3(qd<Cs)@flT7o<jdq!l<h>S$E8iKI^Yr1-ZW``1;z38hwgrR#^E z0d<^M+NECVd@4wmV+5gJTBc^&dl|@>do*`v+NN&WdlR`q;rXU?TBn~^p_QYacDkp0 z3VEFsJM-D6f;y;#M_Vk4FZxNSin^$Ex06wcXp9=ElB#ubxSQp&nv<HTnwoUbClKXA zkDD5*qH1)h_$n7Vs;HW(8#kmp@}a8ws<3);LpG%wVxqBntGG&VSr(u4ft|VftH3I6 zS~?yh7_7#6tn&tF<Kd&o+N{nhZVj*jhSD2F`mEM^t<n~!jnSn4*xIe$Dr<Pk69M|I z<XWztrYdHT4I|JK29N>=V0GpiukzYw4=@VIM-dhP0q{Dn{MxT+mH<Pr3KJ0m7w4}A zd$4;(a}d!3*MP7N`>+rju@XD66kD+td$Aasu^PLv9NV!T`>`M!vLZXOBwMm3d$K5- zvMRf>EZed!`?4?_vobrgG+VPad$Ty3vpT!8JlnHA`?EkBv_d<yL|e2*d$dTKv`V|Q zOxv_h`?OFSwNg8^R9m%Hd$m}bwOYHiT-&u?`?X*jwqiTBWLvgod$wqswrab!Y}>YO z`?hc!w{knTbX&J}d$)L-w|cv`eA~Bv`?r7_xPm*lgj=}(hI_b(o4AU*xQyGlj{CTf z8@ZA@xs+SEmV3FFo4K01xt!a%p8L6=8@i%9x};mWrhB@mo4TsIx~$u}uKT*M8@sYQ zyR=)owtKs{o4dNZyS&@GzWckt8@$3hyu@3)#(TWTo4m@qyv*CY&ilO38@<vyz0_O1 z)_c9!o4wk*z1-Wq-uu1a8@}Q@zT{iJ=6k;Ao4)G1zU<q+?)$#*8^7{9zw}$b_Itnh zo4@+Izx><3{`<cG9KZrRzyw^t27JH>oWKgazzp2L4*b9n9KjMi!4zD<7JR`NoWUBr z!5rMd9{j-|9Ks?z!X#Y6CVavuoWd%+!YtgvF8sp(FdV}&Ji|0x!!~@wIGn>eyu&=) z!#@1OKpezEJj6s?#72C?NSwq<yu?i0#7_LgP#nclJjGO8#a4X9Se(ULyv1DH#a{fy zU>wF`JjP^P#%6rRXq?7syvA(Y#%}z^a2&^SJjZlg$98<jc$~+2yvKap$A0|BfE>tz zJjjGx$cB8#h@8lZyvU5)$d3HTkQ~X9Jjs+?$(DS{n4HO)yvdy0$)5blpd8AgJj$e8 z%BFnEsGQ2GyvnTH%C7v%upG;>Jj=9P%eH*WxSY$nyvw}Y%f9@}z#PoNJj}#g%*K4o z$ehf|yv)qp%+CDG&>YRuJk8Wx&DMO)*qqJ(+Pux&+|Azn&EOo);yljeT+Zfv&gh)Z z>b%bE+|KU&&hQ-1@;uM<T+jA=&-k3r`n=El+|T~}&j20J0zJ?KUC;)7&<LH-3cb(_ z-OvvG&=4Kb5<SrrUC|bO(HNc48okjR-O(QX(I6etB0bV1UD76f(kPwMD!tMy-O?`o z(l8y<GCk8YUDGyw(>R^eI=$08-P1n((?A{6LOs+(UDQT>)JUDwO1;!f-PBI~)KDGO zQa#mFUDZ~7)mWX?TD{d=-PK<G)nFagVm;PmUDjrO)@Ys9YQ5H!-St-->$)!NZrt61 z2lqfAgb*OOySuvwcNz(<!Civ8yEG6aSRlAJ?gV$}!_1s(t$p^{-}%P*1FC+isxj)l zp69-8S7z;>W*y1qocQNl^yb`r=RC6JygKK6R_6R(LL$iK1NrBn!Fux{zVl&O^AVl% zQ7iK?PxEnP3t#yc67?36eHT)*7ScNxGFKL|pB8e-7W4TR3-lI?d>2cy7Rx#pD^?b( zo)&A!mg@MI8uXT$e3x3XmfAX(I#!mto|eF5%f0-|-}ROUe3yr^mWMl+M^~1|pOz=c zR(|oXOzW-8`mW4ptt@t~EU&DrKCM8=RyX)pxAazbd{_6fRu4K?k5*Pso>ouE*3S9Y zF7?)~eb;WY*6usk9#__$pVk265EuanoIV7>4}z2pLFs~^twJ!KAz0+=I0EZ<`s)OK z>qOb>#9iy8tLx;?>y+dhR010``Wtk98w}YSOkEo+s~b?Z=M8r9&9?%ZT>6{bew#em zo4j3{e5;!R&zpkeTfzccqWW9nep`~+Thd)yva4J2&s&P*+sXpls`}gNe%qSa+uB{* zx~tpz&)bINJH`S#rusYPemj=gJJwx0wyQh#&pVFfyG{bTF8aG}e!CvoyIx(pFT3=9 z&$}S<y+DDzVEw%izrC>Ry@;;8sMWog=e;=c{jUQ1iTeA=e*3A}`{`Z#nXCKR&-=OL z2l)aA1^Nd?eg`Gl2W4Fc6{`nT&j&T+hjjvn4f=;oeupjDhizSl9jk|3&xc_0qh5id z@A^jren&&uN5fr5qpL^b&qovF$G-%Qr}d9#{f?pY*~g1r$IGk7tIx*}@{<jLlP&#| z9lw*k?3078lcUv>ljoCD^55qIzc2NFU;F*O&HjDg_4{%4_w(~_0L3ZHr&BnCQw0B0 zq?}Wf?o+h2Qw-=S7R4FPr!zc*GXnoJqMS40?laQ0Gjiw|CB-?_r*j&Eb2|TXhMaSz z?sJy4b2jKXJH^G@PZwMU7u^0AJUJJ<-4}do7Xr`=L5fS^PnV(wm*W1Hk~x>s-Iua! zm-5g{MT#rsPgkl2SL*&(nlFvG-B-G6SNhN^LyBwTPuHdf*XI7$mO0nf-Pg8j*Y?nB zM~WM#Pd6?GH*Wqn9yvE&-8VjKH-69?5XCJt@Y8Lu!EK2DZCK7rhQMvq+HDN<Hjd)% z>!-U!gS%w^yVRV!^zOUNwYzNST`t9a{-^r_gZm=?`;wgdvhMqewfidQeGSD!-KU2J zgNG*nhnAd&w(f_HwTCX~1DN8m_tWEdgU12?$Dy3Z;qJ%Lwa0Pj;{?UiuTM|Y22Zp8 zPxCoXi``GlYfr1tCkVy!#;4~kgXbOpm(behgYM^}wdWJ)^C<=N{1f!j0DA2Yz0HB% zcS9dBv3|p0&}dFTgo2Ur*-Ymr)<wdwY2^zvCpW~RUcIy5nxEX1h<hy-L!<R;ODd63 zt;%%a*S1V5huL_6*3^z%<_Fi4t%WJ*u0pQR7YthM={=<asU$YD#p!*O5~V`<LhYFY zwF<39`|ZV<Lya1v{uo-F*(0q6tC=dZrP*Vhme1Scg*tO5dL5ouC)-PNzYV|v@R)SE z^QT7N!|~skFVCNu48_wb6zMLUn~kQubJ$s4xUiVW6N{zOTfDTIE>){GUs=4enXfhb zS){jgZMWR&`g><(>Ba%l^97S$fBE+F){mq&7OTs5&U=%E3dQ;>_pV0^jSjo3D-Z6c z>;19x2CI*rm-{o-7Hg|d-nVDlKZ_04o_!zhu72;XtwH?(uy~GwFsNLof^fL1jzS0| zE~i3B)QOJ5D9jC~!f2e+jv^Qzp_iv3SR!~Y9f&eqXQFs2s-MLObX?BFh)fbcixb;4 zoQab<Pk)vm_r5%npbWxulB9~{I+vtLP<4``%WyfDV)&NmB+XRba4yYKKkX#L)_!>| z!`_GIEc<qZ>q3@mO4V78d&%WOj%PE`S)TW>;X<D8V%k|j;NkK@K@b+-MNt^_-KC-^ zu9}OIIEm|}k|cGKi?TFx<E64J=ZuSr{Ku<H6-5zzS5;-1cUP*aDr&B3>N>7hYMLfV zuIk!0jaTZr&NHqW`rcPp8iqmmZkooC@2)jX6V%+aUJ4<uwJg6SxoKOMH(qPo*3Y=< z*tcI@>p1q|yX!iQyt~nLnS!dh>$xqt-spL3Cb{c-9X8(R`&`Vp8~8n3-59(C?Ryvo zqH^CF2IH!G7=@6y-5P~aCwmx2FgM*AM{&-2n8bX%zBP#xA@DT)D#Lweny8}gX_l<x zc4wAqlI&@oZqsyUp6NX6X_4)HeP@vyMBrtaAIW`hS&*RaWmS~nc5hYkE!oSuti0*o zx}tv8%ciRR`rf9dkHFiuZiM^6wqZ)$+pcNJ?ZNIPEY;h-?Xc;=zT;xn+o9{>`oRGV zOX%a+i~9c2@jI@D&*uRW_s7pe)G0nr!_3W(PNST2KF;GGZyuc|L<oIde#yLla+y}q z@O7Qlaes21H%akzTeN{TKe;VC&-uEqdfz;`LxKqXJT@ZVKYMH?X!v>VWVk<j?tM$~ z^ExPRe)c-5pY!uRX}@{)KJ6p)_c<SV5B0g6((w1aUUG-}-fpJ&``sTlL;W5v=KTGi zA8uYAL4=p+G#W!7x`!Yfonip0sUa-cOVFmcVjymTAv~*x5SqDS5XqJyBLA(>ORifm zHH{InoQE)8k>VF-QzKNpTVbLB#SqQ{BXm0t5z-yS(2rY2n7+3nln6>;A~eR>(H^2S zbV}herpCBgx1tQ<N)ajr#`u*UVl3uLkvdz(gq^oyFGG=0CNw6m#yrHiij<;lOif5u zZpC>9lwzC<Ovs?e9uj;zO0nKsCKOM%5`qZIaX~buuhBgvMd_5|BTY@I$?ha2#g)G% z6qwSodP>QfD<@=ZnbPy$NhyXXCw`+bW0dohRxMIaDmOJ_*1MC|98gZKFEC@Z^OVuu zQBG;!GJE5DCu4}9lG;aO&Jpb?Yf7h*HezbdnRO>?DXx+}Rbc+E(o@dXTqR>^%lv)k zot$HcO6Dew#fLFZd6y!UtV2_ak1Kcb9s?@b7X=pl$DRs4J1RL3TNa<5?i4@>s=2VV zmO|)WiotZMd8lTVB4qc9VdAR!xP_KttX@h{=BnRFwk;+2@0H?0R12tSt)%3<loN|o z3z^NVWc2Q#%BcgYMVy6Ja&}%SnLDb*AGfU(eD76q5!6aVXswl^y;KY6)JkQ{tW~n^ zRZGOx%2W!i)hfNzD$Lc&b+)ZFI`7qLLewfuXl=B{ywn?t)GBSvY;;!c)msMCs+<dL z^p3qWI(F2my|--)p6)fk2<kOKw6;d*-kRU()N3QnY)!}>G>631>k<lW%~-v)M$Ogh zGq!Cl_#d<;Lev|+(b`$bd23G>sW+CJ+1cnlXwMI*H`N!~+1YvPEbpi{w{P1y_&(@B z5Hwo)Xzf2od+Tn|X|#@***j-F=<bPYv`rP-yH<MZ9hqyiFKyeqcRuKyhG=wb(mHsK zdFx+7i!?e9%^bW}9`tVqG`e2e(tVG;4IXzix*xV3{GT2S0En7kSUSf5bRR=Fdd(hG zbH^aEM?)kD&0gFh$1kitMranAeIz@Mq5O|VSfQHVsp&q4%lR1N6>Ii0n}3efdo(5* z)EwX}`W$WNV?w&CIrwqsbFA;92_>S|kO-Yqe6)`#4ZYS68FQzEtVdG@39Vt3BB!KE zA2SvUtr49ar<Be|GxkueQ4>1nv@suZu41h*8*}H3l}B@)L9KD;BIm4Q9}B)+t)JdI z&N)wy7J`V{6G3z?dFZ~DqV(F6k>)Pn$et`ECA5Df6uA_#`dZ0aXisJAxD@k0St*8U zL#Mydxt7ZLTB{ao&y<_Hmg_xPYYuA9))%=}+WFe(?rP7q@3>a`KG_%|>dg1ixz$Gd z+M3eqER2}D)n`4~T1x0FP8GQ|R{Gl6TIeh-?YK2}KG`{j>MU>4xwnq_+Pf6%tQ?xV zx34_edkpHVUKF`^9{W1@?CPvN?6`M7Jvo37bs@0y9zE!Oj=}W0>!=nUePqv$VG_C< zxWyj*tbU)PEOa+Xc0C69pFhWi>TXffd;XB~b4o1M-DbA%9MOArN*&bQ;VkwXv-5M# z+|}Lvxa;}T_t`lYQEyL#-fJ@2&!vD~Z(qj3Ybxv6r9?vSK&9Agrqa)~!b0y*$86VY zuJhToCRFdpgx-5$%+IZ%Snt@z!h31u*{x+z@5H&-d*#^Ay<=DJxA(61+S9W;_$4Vm zh~8%%-QVLoz5ZFGh0i7#)MH3O|2(1CXPedEbJRlrB4gKQmmlgm5vqS_hl~VxeFuk( z0Qe1Hc}bK4w4k=20+679HDprB|3iEwYxDafi8!tQzr>f_WH?i*zGy6i$N6CSMSOqe z2nL~${XdBBzrlAnOQyMMrTs7P9civ!>juH1lFPQ#toMcCGV71F)NT&OQUBk-SAVRn z@o=u@1$^b&n~s-SoDWyW+M9o`frC&f<U3l<Hir`aNAT@zzxfU6i-b}rbamWa>`j#$ z{Osy{xH;V%$x-O;dV2UD#21OK1QLkGy$1=x5@%Qs##6Uk|3YM5vK~U}wznQi8N#p; zM)QA)Zxq+8<z_U`&Wrf+UGHti3L-FW#fcJFZN*E{m2Q2N<=)>)`0wEBw!fWX7{a)d zYMN}dlV({|x|43(w7-+#IKa4@=`#D@z?W$+H<-YBFE5O)Y%f2G`(W=|oH)~dL87|# zeqpM4*?v*x{|>$-MP&zN6-@^R<uwCPro)PcS?j~fmYuT0s*dY}!)h=B^HI%z72m_7 z`U!F7<A!N<o8!iL^YY`SWw*oQW=IJ0Ny}EU%}MLte-U5i-yN5;HorS>cglai%qSfG z?gk*ToPyy9ZBKiU=qpZp(cT}O_F?@Se2FY7&IU-`kIn`uLs`y;Xi{v?Ujj)g&WBl= zkIqNf{{z0e6&K@tH%Avg1rb><CqxPDE+-}FD=&Y^zCXU4`VaVOT2x-m>bf6a%^8NW zUeBAR*j+DJ7FS*`+WrT8=j?7)Ja#K@R()=u$2V&rM7CQ<FroeJdKi7xzr<I9?QSbk z!~SkN)uQTdC)54pZZ|iS?S8M|-{M=*d~$zSGsyOE)G%lNaNM$6^>EU0bMo*T{BQ9c zqOX2DAASG(@nS;a&C}(yhQrg<yhZiX_42>LcPqu=`EIYc`uYB-`S<g~>EIja<K>(K z^yy#V`!aKYmJ2|X1j7)Yf{<i$VF-u72)w5OSW*9g?`a^>XfDG0p&ksc(;!N;JR}Lp zUYzuQfp0HC+vykfs5~?a$v)!6(-5A~JPh}tKJxq1(7(VJ`j_|;pM^=v=HsLceW&9+ z3s;QF$19fXXVN~4_?P&4okbd=eIpu_9C(|47G){>jd*TofV=Hq;ycK@coyR^`i=Z% zXi(t(EEa@TK#3?dBusoB_b>6~J&%uzDxjg4`XQ}-{xx;9fbRW|AM*bKU#Vf`^z+0L z*+M3bAH(Wx=SekDg)A0QBijFfultV?{rmG2Fj^6NsMM%2@kQ#8Y|-14f511Yh^ts? z%v$>*eSWlvyZOhMz1Kws<R9=&zsTH^E#{s3G49rOk#!nX%(pA`(`)e}`)}}t{`9-Q z$N`|22qH>P1QK87BFU8q6An-OExsk9^wN_N+L!r6V<qD6hbLpaF27N}Eav<pz6^4u z(i+3RlG`o|*`rHkEu^Q?7cYx=#!BV?5nn;{GR08o>3rg=5=pr-<&@#+BHpV~#pp8C zKj3>+ra4xo-aI^0<#knVh+eKaC_P)3epO*9SFSxbJo^v$>h4O<wJly%d5o3o-we-n z-CtFM&@281-|Lz%xe8;#k@*4M>)N>J3R8NSh2ej|_x;GixYu=kE_$V<gv{cv^y`Ka zxk_t|k;U0R;9F^HA+xjyUA%5;8LPB+A6Z(xzitMjS2>2tEN}b~-zuk+k>wrUo7Rcw zDwkrJl>_aYw)wFtx8{+RKjMpC?J+2`dY*pMu_ssUH8-+)-FDM?8eQ$PE3<aL__z4p zjI2H1-*f{oYCwpx5EznMFp_*tAmJzk;o~3h4W^e}N71?MB^s{@c|W?2;eFdjiBTIS zA-nMheC2B+G)6ZF+Hd>WV``%;WH*VIZU=bAYh&C;H~)YyMqON}>=qTt-H@bw-Pe@S zExM0)KNMr?690hj-LU3(U2^m2_Dj_Lh#^LO>Y(h-+l;@#cW!ityZsJ2<``3-xhuQN zyL311G5)vsKHU8TVKn3-%Iyi0+)sr45#K%WkN1;tF%1Rua{JOc_rFrd8;ailExx%J zjU^It2g(`u(<SnaWg24#>VL$yvBE;`P<!cqwq?Ar%6;rm|KWb_kNC<R8IwHB56L&x zrHmb!e|%V&i1{0QbsiSy$D5j($Bym2AC@2(&40i*<6(JEzPW8~?8L48VdXUDZ}44u zSiK!@?z$QK?f3Ao2Ec3q{{i1e2$DieFX8xU$j8TZtk{<C^zvsBI*%KFz<2yC#`|%T z60>zkLjL?~#tZmDU&L2q{5-k+ahpB1b<{%sB7NyE@ogP<AHT?cc-$4lY?}y`zs&zj zd==V$rHo$|eSF$ijBT4PmcJ^~`AdA;W}C;as=S{L4Kds22j#E-5?@P&_QkpJ>!$Xn zW5?L`<=sExd*bo4ef4Jirt9J9H|Q_$Rk-aXc|HwO=-42{)PvLI;lw&>q@4rts0 zzZpurGY0<w-|U-SSQZK+ZWdS)?;$uc^`G~%?W<Re3^4n+nIIIj^=snPFB~Ww;rK0^ zH(<=J(=V9t2&2GPLoNIy<`j^Z_9c8jtUxT;ICvCAN>~6<*L5T2OBNd#jxIG2isd7S zwDaH&Ykm8L!K>!!y1n~Ju_Wm3<^hfr0>YU0?|#1N2EDg6e7<u<KaN8}sPRW=@qaNZ zfTe*N82-*3gw^6Je2Vh126VX%uzFeVYYA9<4?{D7L1-9ob_M8wps9dgRyuqDlmG!o z0M)HNrXsp20FF8?kb4h<82~GB8hCUCJL8DTP6=3W4`M(9;D8X$2ZQ#+0N#QKoPt16 z$zW<lWN2~lwiuvK5lM(ASSd9SAPB6>1*sG1Q?jEeW5FxVe^Igoq$&oOAn8*nA_-6i zTN8Z&)WGmy1v<>@eFGp`YKFS<zy#EUF26%b2gAD{g}t<Tn+t|5K=DzODN*4|!azfC zQhQ<3YQTY0L`=zWYaXBj1dz(3ho6hkksFXL8O}`^@@-xhBNqV#f~QZ7h~No;n}`^@ z0`LHklm&wtO2WvAP$@x?!&d+XEVT5RFWpFC%zLok1*3+pU>U%X3N2CDEieQ%K@*a? zaO~(qB~h~_Vd7y3b<NQ|Vt`%{tg>SCdTInUJ955dOcy*%FC}^+Am&&y+<*wCf+4oG zAB9H|=_oa}VJM_|FSd0Cjl(fETr#fIBQ%sf3du@mEDk1-{l$MHsUh&VS~_`x2&SOe zS5lDxLqPO=e61SL)G^+Q=j-|q+;-U4N;P06{a3cTNL(lY?u;R!Y#YD<LMHM|SZ|5o zOVh?YMVU8D5N?fX(o8JE50an%DzgyN!w@h3N?QOa82v-i`h3(+kEGoGV5J{P)Zx+2 zfaL5iU$k42Oc!FrErA^2$*F1~77R&t`*AGn$h4FxY51YeLtotY;|x4dbigUeGidpz zp#hAE2#WBCR;lqbXlCrNwymjwjKEMpTKpHZMlh_KRT|p|nAP007&SO<!88zZI@^Np zieP%A8t^q3KBqMO{XWd+{q*2%Kn@msl2is;T7q|YM(`D29D-QCpCMd|{Dm<yz%|if zB4fxiK{yvN_D81A6)d(O%;2l6_a9)Cuux|gG~l2h*q>?X%dLrkIG}(d`g*Ab92RPX zXLdj<jErOQv6TiT7Lve3`1wMzgJ;GKvc?h?eAiq~Zdyvut6WETRCaI<f>%mVYbMH~ zx<n1ayW8A`h18i3d6r+$EGdCI;dxjQX{2T9V&Ipq(EP3sF!WmaW@>OTg22~h`2n7x zd60b5ZNN)_92aqx3?P@MO$`$Z=I!FQ<+Ow+q5`ceKq~l~_;42EDXesx+NU@eX7+Ci zDCxo=SQ6es6)}Jp0A6b`XB9bHUt0|hgrvb+be@(i06?|iRihL{w*(hqw!zpqe*27~ zMiqx#Z&_@|1mpu0czeAh3?eY1l$@ufNI|tr#LU9N!U`kG(hb6pl@CfJ;KRT2lu}s( ztS1Un?^V)=!oLoeHdqCxy($w{izv1%;~LH{Ls6|Jiu6Ay!?gZZyQtDO6xn52&UF8+ zwM=E;HhN;eTml6ynz(|UHhQ`xYk(<-5fU=Yq_QGeQFvc5$p{yk8#;BbyjKz<6kbVm zkTpF~`9>`Ex+HPKI(I)D&e6Jx1wIaDzv583$i^}J)JqxVN8Frt^|DoPxZ;;PZDsr) zU!RAI5CCXDcxy<n;$Lf3AbOYMO@yG4C^K2rVA~WU#D(G?DsjDnJxH(RvJMWKuO-<| z5R|H>D$l2w$fvVWl1NL$YOiC`1~5ZG)o+-U6kk<!-2uUZ^;kpjFd6k&NlCBE(-9p3 zg5Dt98YEPi21MFqzQYVs0L*$#0~S%G;*z4ZXG87}VDk`yrZ;GDxKhVk(dAXn?g9*A zE6~ISwB^-=yq&_?o=QYnX?)uBFjw`PsTpo2)OsX~2pnOO+wACF?e|eJPP;kaM=bm# zAf&w+Cl2XjTFX;Gsr+yjL0m2zb}ND<AjYQkk*f?NB9lN7h_v47{joNesqNx>SqVdq zAgB$g7Ot$_9|0@A%3GnHDe{RC@Fo|F$g%z2BAB$b{j#CFGqq%h5kOpn#Vy$JU;(oo z+HuBJ@nfjPlo9x|9ZQq4^B(#hNG;etyCgr_7Q;l6N;QGSW0>|SGA~i5>qxb7VX4~g z2N1&uDS02B0hA{khoHdRy>?l-x0GXeh^1kehUf@nJ<X+tAYxCn!5qo$4OgFgf-#Jc zQ64cqvUfbS20CCNsekBMr>TDF2P2~FL44g5xgYrZ6hLsAi-!fjB-p#rP_1v%47A0v zU+RTb0t$nxUIAczZTgl~Yv|F^gP5^B5Bp$&Ko|(vMzBO&Rt_VhFTe`;(Fg0x;dj_P zU^5diMzK{*SB@~_d$MO69<WuP4~rC(m)qWNmMKdS+3#LDfM44KF9cwutWC}Bb<UJ! zh#ZJy1Z>G*d+B27K(SyPE7}7dWjSmH?e;r}jM@YCdl8giI7X{*96Mr1Wj|(gxl8>Z zTJLcW|AC+cRC>&%Q$)+@kQFcQv|H#T!tP9|z#={cV)6p%9EYl9WtEwS-NU<y&pMkc zu%uDDGap8JrW@;IlZi61kG)5cfiMn_xx$L@IK!jeiA}ve-5^rzdzmq0AwUsJ4rV6$ z`si4LX!G?_GGom+Ry=qs6AM!i=4d#Oc4WK*u4V1zJ~d;+c|8GENEo$1LC0dH36#eU znaGE60P7%jPp^A8Ean+Z`Et>#354r~iKgII1Zfx?GHiaI6iooO;SpF+u%CQPx&U=j z*9s`Ige?d4N#VxAo_p+}fFO-5|Eh#*M~E1toa}cG2Vx5WumOX><EiTD_D13?e#i)U z&wzU?9L^c+u1~hXUaIVv^zc&oG9!Rq5hwWrHalNc>EcXDaOc<2qykwSGk$D*uwN!$ zy0xA3uFOz?)Ci5y4|gqWdP*P>3VfB%+&9r~yRjq&5RTSZl9VDg6)3NRWhSIk3a(<V z&$fxiXvF=;FSPh6gmff+y@gcOo^bx8Nn4x&pOg=V*gHqvi?WNEroB+UB<u>DDW8-; zM{G<m0OJVpfMqEyxbG+5%XU>MBgeSARwuzaAY-}co@F^D_<Lh#qD%+QrB4bd4!f*k zViC%)^3|okzcUey{TG?gL~#W+<5SNo5W)~(HQr@lhBc8uaDY*0(#{i}WU?D$6h0e$ zEl726Q*JFW8i#fzxx5A&jiolma1~G`5yZFlOAErFG-aoSKswpuXj_UIBN@*JdCv&I z!on3@Nmib~wiv5o##$zmm&|)?_c_K<T}eiRU<*dgvI<DnqD{%%0Xd#=B7eY80Q-%O z>OPE1^w{Q>km7zm#y+&mmCY@d=#m&8-IUR4e78Pl_X;PMH3xSB0Z(B2^VS$b`r_Nk zc@-&G%AP^0bR-P69rLa6ryou4dlu}Z;9l1bJwKofq3=2crv{K@xkuubuO!=3;-o{5 zz%-6%=SRDyG-)LZIdi_att-i#cAKv%XC{yL9KNSzTjl0O;tsDQkG#ieJzB|J6)$?V zf8N^qF@D9)3Yj*3^yqlCv`V~&F++%K=WW31ogU6CU)8hkp+!MPht;<5hj#veHB+kz z+Ox$YX&}1%k*R3rfK@K|5EoHCnZOR`repn=^s)X{<_nB}%El#-Pp0?9LGms4C|TIZ z7Mm~4LKyB8RN650oMH%=+-&=KmMylam5tEWCCIUPP=%v_u_FHbTlF$KfIRCvDPH6c zc;?CNbE|MP2eG@>oFTSE^Ap@iEdX=C^w(qmR|;aV+PMhJds<zoECDlA=^%P2g&3N4 z+fZ7sSip|V0uG~nE-ujtXSFE)a7W<74yVzs>D@dF$6N$Ppis9cIZ8eP@4l$gp6T5h z754nya-c%a%OCRPWNE*o(!Oaa>Kp6@_p%^82T^wIf+xmlagGC1WMp=uv&j!JJnh#4 z1>e%jTRWa{Yvhy3R&Z=jz^WxTf?NgmZ*oF9@VexapI32oAWM_vAz^DGvWqv9ce7GG zN4l+Btn14VzdK&lLK~D#x!Pmh(zUmfD@^0H1r8#HOhuSpClc`|x@i#3_|rYoyIM>U zE3bQmN4(qdBqDj-$E=^I&<7T-V%PgziX1$IpGnb*xTrCCL_Z(jOcyIa$Fe4?@gk8C zx%1ZBNh225ghNrTyI%cNu1(c)#9fQY6ZL#%yqx&THX)z4Z5obC0>BbpM*olaN-7R9 z!~CZCe-_{WJNUASyv*F?uD^h9x3Nc@D>Xu`)eM0wiV#@4<uh&!B{piX*8eZ~_RQy? z0k-U8Wb$ndNixMK3gT7!ET@ftNT)(k=l=#@=zkMmjQT)geM#jv29`#BhAg9ExJtu9 z_g6v8EToM8llbx*AzA~B(gMlazn}zvo{v2gXAHo*?ZW^dPcUro{}1BZn@bJ`Vlje< zguvTgL$T~4f~tof3STPfMEAv0zXQ?!5AelqMpQ%+$0dTBh!Puz<LRkkjzfz?FOseS zOHBiEDT9Cd{de%it)@_fI3l2wEXxAWG3vjMg|Jwa1(NUKjR9n-c>f#tLNDLI6uqh& zqP|jP9`BovQ_W+}<XsPv*@Q9tB66bb^1q4iaSXu7F)naSen$9pExI-TP-HR21b!8^ zhpX#<6<-B-AtEb=fJ==Uo)$_DjuKj=_+r5td7T+F_HSDMi0>cpWsSloMaje04dFS( zt>xI0gJpu5$R}i>!*Fr`FW{?|5iX=n4OL?Z^v1RUtzzYSf#AYP(g8?Bul@`8wl<k7 z=bEm@VD>^n2lo1f%g{k#X|GA@bpI>(Mhd?Uin4NN3u77F+cqvETy=sH=Y=wf|3`c? zMo@-4TF1(fjlsM9$$(}+nY_#rW!n+)f5ca(4#hYuZ@+;RX@SGPu@dD=E2?&7WA}f= zSHg)BLDrDX=lh^AY;zeZm1PIz@y?LXzr>f~HbA51^`rG`L4Our$DERb(C;Ml6EFd0 z{{~-YpIqX%eBIgrB)TO`UA$5+!{I4JW23J)>Hh{_vxmHN9ea0T`C)0e=GgMnqg66y zg#{|#e}nIb*I@Ge(56;jkaB_*P77r~60Rh~?}S|tzkyruU*H=p0R<W1_4>+x1laDt zvCSBX!Qs+Oyyp9t_^$sHWJhBZ1qL{8f=U=n7#-nzS=QRtkUEq^{w2N&w1L96l*ZBZ z8n#aGRXFDGf-I&&?=$};zSLjDfrw;o)$oLgvQ6NA<PO^aAg)U&YJ`UPzrfdk6GhI^ zD8ji9jA5Se#<BGE8w`m4jR1kbr+<TQVx>!=w_?UvKllo%Qx$A|GxhzM?O)(aE5;I( zCRvCs)0C${eNEN;fGmV*`%?S&2Yfk$2BqY0SO7m3Cr~kbjC8TTVWArR1HO8MId{<M z;?K7|(Mt_U@LjsO@Heo62tJPJHvfokP|<4)&yvrA6MA-mH|1SNkZfn29vtO8`M<?? zuQu?qM5yaGd>eMw#(f=!lQhT!{vYuTVU)93Tz?=4BU!a72l_351W#`GP0jxi--B%N z*IdaT6TlLmo%!ve*WcK`riZ`0QT`iznd}T{nfE`)!F9&xG<^pU>AF=1cCh>dzKuE) zf%CHN1Hd&dMV*BURBVMg;mUu&*8=8^r|Yzp+7UX>9y~4B_H!ULQHstV@SUy3IAp>v zWg>y|00Z$Y5j&6Yi12G2q40TFe~YhigPFxgG6W3fG`Pf<Pt*h$s2vA`pb2J%3?~{E zhz`;&bJYJ4-*)Lj4%R&RO&T+tc1<Kw06aDl5LUgN(+GLM@8*GM$^LKgm1QBZAeqw{ z40dZM<hQeqUE;CFHdk?x1&$THi0=#dLQ$6?Zta|?Jk9Lgm4bg^<?mmUWDiVH)pQJS zq&{w)f57*#dCXP5>a^0rut7$9Dqp?vUQcoWWwWwV-~#*ye3#!XE}V37Z0;EB*%)jP zr}P@f_Zr=c$vgLM^!)+fsG41}Qx_OZc6IVmJ>*^Yeq$qmF{M{Genmjtd+6Wdt5I3) zOMOE0Smk8AUZgoB5`&8BSXh689fnx<#p#duhL(bO?K6|Uoo^y}r;N-i$<EN-^4}Hx zExxpH!r02KCfs5u$-m1tK4e&ODB+XCvm5Du`Xjzvp7yDI@c#IWjwdI<xW{yBj74cT zoFHO2U8_If>xYI{xHnUsolX}rdtU4+HrtmN^99H8b@?CgC1HO#_ubzs!<9!|n7zzj zGX_aWbfNqWz6mgrLcP4^jB)RzEu+`WK1O3lFJzmh*xLOKzEX6}9h_*X=d?ePom)s! zPzF`O1vinb?SH`6hpKv17HV<9_tk-Van(hZ&4iLtXa{B;0`r&nl3N)w?Yd-hAb0Y2 zI<nosyk(}Te*NYz@$DF$FZj8i3Hvp;n`BEjgxYk}i}y9@hBnh*;;V1y;kGB@%=}rL zkL@CDNjpAn(&k1S3*P!s_eFep?J%Wjgr*{qXG<hU6P{gzL2utW1#{q->bm{~zFI4L z6>nK<xzX0i^1nD1$78tF_#3~CT0SH`sB!xXd|yQ~&NiaETTc`Jj--$=6KCW@rh%CY z`U`w1#=f;>on;u@;^=<^%EuEE;dcA%%lUf=2rz3?Z}}XCqLDyD7AEN=e2?w?AJ}`} zl~(QYe=&l>27Z>G0PxIzIEnW6*>aDosrc=C(f<C|+@ABCu&m!zrT^1~o!ia$uHU8$ zN(S}XZ&=@czq>L2=h^M#yA=!Qc(!%FZ%!3}`S#=evA_T0VP)HrgFp0Ra?k>#6nP`? z$H*sGK0!F$v}^58P#ZxzY`8_khJiGY7-c71halQ0*j0-C*;x?t5ns3@I^$y&UM@d6 zpAepGj~Oxt!lNKzBA#FgIt+Uj^w$Uc4k6M}A=MwX7(PN21qmT4IryK8N~VOU`Gjd6 zaT#rTC~SoZkgFFxD%nQ>^)kZD9l|U}@$U|W=#PZ4*552?vK3#nv#^M8^7SDDx#%v1 zxjQhRsO`~bDD^`hNx3RSK6Z#)v@{sohzN*&B^ZgGPbkys6%l3;6@kOh7-<vG{XWf5 zw+ybyK1dMB6qT;{K4*!bG%q5)EP8bMcEy8Z9Ti`OR7{zrzsEA<Z7NV~OH@4(b=3p( zA)<tmOH8{$OeYw{v;>~qqh0+-Ok)cj5m5iY5rEYpX2K_KiWfmu161SVGw=~_WI$i7 z;oKn(AeRxh9Tm4z4M#x&vO&Zw(FSXBV^-t915$9j%i^xO5^l>#h_}HEnqr?bCBB?u zt`Rk!U<Y#5fZdKH{5$#)9T7eOB)nLLf{EU*O*B%S!$#amg!)LD_<(dQ#e*t_YQW9V zHIF8C+?Nt1IEp~YI5a7dWsq=9AWV&9;$wu?a<o%B1xi?;9hOvDrW98NNDK*-I4Tu_ z)e4z-PZShT|4k~7beOaPB>qdPfDcK8C?@pq<6CO!lBnUw&Gv!{=^!w0gYv@%mtdDf z>FP)6LmQB0gLIusXvXUp>`W3^BGDRKndT0DBnFw*hJX#rwtA-qdvBS}Wtkk<0EW1c zy6>P9%67#^$u2(G?~fmZ0Hbx69VfZcA9R0w&y*d;YcVk#?dJrbPP9y(VJPKO<1&N{ zlgj;iY`*OqRnP&z8UoP50C-qHq!NJhE#WDk6FD7#+cNNLS#DLekzR1@!;~x(A?&4! z5rhi@AbNn{a*<w=HcyehpGXBK9>^V3$V;_TLHNjKOy%Z+$50$WFR3xn04hf*m{WiN zFHRs+-1|dYg&V$lfg$-~Z21i?`7PD)IIz5(=kR)5*O$?d4j%;|*~HZ^_`B)kW81O0 zD7jNSg#^bSe<1i2>C?Iq`T?~f+Smjv=LGBw?mf%+rtJ8(Ei%<DArfBf*YsTcut4<* zMM7VtOQ&xb_;GN@@(Ab(>A3;^jN)fl;QC<@_bojUnKD&Bi)i}f_O0Rro>KO03K320 zPDeU60OpxRnYmNB@|=byI+9p#;`jH-+}jius@R4OV!$mxB2}J6PX)@&%EUGQt48q` zR=+~Q5R8`<>v^gW?^}?EjmoDdm0V>+9<eaCt8oNh6rS7^HJ(@sBH@L4O2KGVsm2oA zMdc5jKd}oV#B)>L3Su&{<m+dsDv_zV^}^n<Op~}O)_cHt-Su5y_0@j`QB$dDSE^Yp z!nJm&(mkQR%O#W$jYZ0*X26ouVO2NLqcxh4QhicZBSVwVB~*~btaK?@=2N%noR#td zp)pA66;Abo<bAYb-^!8fe^+<r*WmjFXP`SPk`yJF`@#_Yx@9nuA{ySEb2N1b;zzTx z(a|4n39VEyHJ6z`@q_^SHG<_dpG)ECO*Pp2(IsyQopfUjY3QM-YMN1FnrKX4Ft_F) zVG3Tg64$u{Ct6A;6Pk%~T9-Y8tIqT0WEf8c$uOd^3@d3)!my@_T3IU#+pQp9n2)iv zv1=X7a7GIQuYhbN%Gr9_MU|P!a3504V*Nc?Zm{SH@&OW%!J-xIs!oz`4UM^SasE9j zH>V29-VIf9I*ltC)rH?mzF-mLrWDG?74w(l111{BbUL5XQ6Q-e$V(`%WUPCn;m>|_ zqRe#4>GtENqu(xQd+HF!!(<r66-6<e>*$V-=_YsrFf>8(z-7|Us@8cj2x+q?MuE;# zx-)uu!LLEMSbD^Ia`5k_LubBnr7k19(kM;?aZkw2KIuUr?^1Ah06lW(6Hhpzam0wV zBYV?}5MTX0G6F;%0NSZ8Taq4$*{t9hj8^~&Vt57A>x);k{yFQKu_p)@0>W|(sOHfZ z0>XK?#wqZVwXthnbQ(OmCgFGl{E7e}39=#}K^Ej@lwSwmy2kxnmZWHzc(gM_<W7Q< z1oS%rP_AcHwPd|G6p(7=Xd(j>d=0TMj4Fl${FSuffO8G43z_&v1olR`Oo9HB@W?_x zJE;T-yNpP?N@#9V5Wiy8cgkovu9A`)Qy~=jV=E)&O-!xh;<6ai`)wHB6C%XKWyZ5? z1R1l88>{1}puW~B&M;=hFyT0%cKAh5mlc=Zs09VKEOXeKyeFU@>`WBv#9DDBrYq@w zKW@UWo*$B*EZ>R6-#PX^b%CGFRAeAGE}uZBH%@%!jS|*|NQ|kJIeBJ&vROp@U4N^F z<%ZOWse*lWQ9gm=S8PpwZ5+$cjR#XTeX|8@=FqS4hH4NFGc)Zfv(eINjb!X8yG(pg z0A`b!A;wPEYXv)G%~z$HF|V<>z$Qla<`xJUsZUAaN!XsQZPJum7USl2`md1CwMbsg zXQOP`ky|*ar{NS5+E&Fy;0wq?ww(MdJlKfHXctM&jMudSm}4w_S9jgg7D=Txvt9w& zcPs+g_Do;tkZ~-wYN2y;TZZ~ss@JMG#>+xq)oSyi5QU9fMhhf~!V@xlkEamGirpWM zX0u8_NR)#oWOvE_c9fm{!74Ro|E-alqo)WN$Fgo9QrfCj_Uc!C_>}ss_+i(!HulkM z0qcU~cnkQH(zAFyd81j!=z?tPvZ^@!J$+W8otViOgDUIlXKT21eXmKJ9lbpm4x<`* zo5trDRUQaAaE;0<zA@XT4FOa9HbwCvURHmPIbf^p*#=yM7S~T+=h;D<{2eTB+g}uI zIh$m@goA;>smO8AUu8R@AC>1y`9^5H6*+n2*>*xciuxKyl7{{>vfZ@&ad+Ito6?;r zF`Jnfy9M)zmVPRBr43}bw1ri>RksM}#!OQB!&j!FZz(5sn*t|!am%7OxZd`e6+-rV zG4@#uuwK~h?7+R4Qj+~u`;(Y(wG!I5lL!8uq%H^c7Xl6mj@t&UrX0woG#B)jF%EYp zNaJ0JO60iFiGAVe4$mhJ;h?ozwuCl*vcz)-*jNWxjMKM_W?j#vu>PmV1BQ+PU2nt9 zl!H`}ex7d98F}3aaC#o#?Yu*$_`Dio<mK7TiR}>1L51V+d1lqf1p#l4Ae+tUGYR6c ze^2=*;4X6AHxlSs|Mjk5fUE=z%sY4|8im6I(@G&J2r^S4O{`Pn4vbfx<=dW<n90JR zBqz4eJ<;c+SPZ-`@)^ZJMQoogpx;h54Yc+JYxfxW=(%E@)1IC5YOREjt@J}2KCE3t zS8W-5Rug{ZSikBZ@Wv$wW82_vM!0AHgwavN|I%08K`&fg<ZQB?@5|X27r8le-68_9 z9;a}|M%FbK<yceWYZo!4&t5|1$_}nZ_D9-34n-Ibzu8%8bh|1fPu6PVwIm-+_q!UV zY*Ei756UNY+GqNqx|w}4Wt|}i*2SZL<J7J1X8m*Bzh_7({OEzP+WPl3_cI~$o5cHp zEWm}E^H1aOS%Peuq+f2l=pWrZ-fYCoCPV0wUMZ{-MY{VAt|!hW7joh+@6gjOxd##& zrOy%^awn}P_i-?LggQWSW(lC3GD$nxBz)c;QE%1?X9;>#@f8hRB}OizC_KkHtsOth zswug8VY_~H@SMRv99PA^Nf!C;>X|XO)THjH_Tx8I-BkwkuBg+-E6-64`|?XRORj=f z71>dy6F!2(wTrq}sf4EHZ#+B;d{p-WluWNGiG|Tw0%TWwtegy-Bd>Z5O<Y!jB*c_V zneBRiZ`+kg<5u^#p}Z~K-nNx?cAm<{>t_^|!X21CI#0*i$nL7Io$hHxdJKG&)a>n$ zFO0(7h7$M&s(l0t?UUq_V-4;m>wSJ2O#QC1GJECBnbrC8lP^`$r8dyT<g>H#h{bfQ zFB+LUztW{ik8?e_<-(dT^Z?G$F3-i3;~wtZbM?*hr0i*`27!3Wr+ZGn-8DJnpJryY zmnXIByWP(}wj3Qf%*_^j9P_|dgMMe2Qn-jIR{F_}h$(dx{?~{yM2Lj(W(3+f8BGrU z4=Ka`p4aC4uJ`a^4AZOFES9H~y}>AiZ*BKZUw;q7p;xZ3Jfj+jB7X05w0A~56i4;4 zk8O2MGn~kzQD?h<PCJ_V*5X%%)dk&nCa?SX(f$SfM6Pfs4y*Mg!><DAS8X;2myFXT z%Eii+2W&IHDzpicYYeZL=WC2}V1__&v$GA>b9Huy*R0DePP@M<ZEo0BJG^erj}LF& zK)`{BxF?#1EF0eyI-z*>KDEM_{a@)d$ZCtiHb>LnJD(igaqdmzOC+$_-E$pGmub}7 z>m{IW&#QU2()nxz9W8$aN;+=ka-TwaLvi2OKk}S!4X1EAoIHNG+}3naaj<^LXM&w+ z4t<BU0lYrl7)*HM@XU9Ac`#T1QkUv`jJ5o7n&giM7kYPJ2$Ks62l)a~cqjwli9IL- zk(pX3gV1@yl!+gdLi&Svut5RAuei;?uPIe;Ux&Sp;GqhqP4}RRU@ViQq9SH8?~7pO z7YvMiI2+K6`f$)f9m{`zOC2YK@_{BE(Nl@qm<Vrw5<!r%GzU4D<pXV!nzkoxvX*r# zZHiu(OMikf>pHYh^bHc$jvH>2A~4Oa?T#+<^Y91yEZ0TPbXv<0*Igmvy;eP{?z0aJ zd0&XV81loJ+Dfu)AMa-J82HLEu&h9X3`J?yZH&cPUiXY8J$CF?YN7gAz|z`ihy)xU z<esUbc9@sBvT@PNM$))|R}Clh8MIy%0i*<z1bBoo*Zp8>XQ?0KePD?*fg`~;4;6sS zG=wW*^}9}ZJ+QW{M|@;!-OisCY*N^cV=QB%hxPW||%^J>xiP1oJQ(${u5<orEk zoXd~N0NWF9_FiP>4)#9upS(4R5fSXCngmD(>;tcCIyeT&yel?vo?v<{{qREj1*<8_ zJKm14wm(AOjy3`_PJmH3ae+UKtO5l``5zuRCxlS>xs-A)z2S>=*yA`gYq6fVrj=y) z-_5AuUP^YCn;rm~WK|l$Wa^Rp+zVzIzSqsxmpUOu_?i3f)Knw`xmR45eBZBncE7}T zDcc^<FRQ>qkSLh;e0es)nY(y4k*|Nffz6aA=JD60oZ{I@v+4S<n^o;r(9YuMC4`zN zgAaf;^626{tZaYgJ<=(B>sb78)V56p@O?t)sPp0Z<7p4-Pi*Q2cV6lf#c0Y=K;K6w z-{quCbt?(%6l5Pkm<BqHBP|Q%zg>^~BrqY0Ci}e@tE02?qyL_;z~kA-r%z8izu0R? za$&}yT_2+p6+Z!9Ms$EU>?*KJf+f-eT`&zGcX%I4IBJF-WCANgTcnw>+uayO(jGOu zM@l3ShF)xfF!-ms@8wODIq)zdXf!^r(M%ZnUJ+YZod_?MxAk^o#^vF1J-)^YV)*_V zMjYkoV77d*zYG6y169<A3hx_3KO;gR+EbZAg?(Q)xyQPf>LV3VAHx8Ly(#`veq2RE z-zQ2mA)u)bHR&dU1XJJ-J@&8oezzJR;alSvzej3H*bhSQicq8L+OVLSxe<xTb@4Gi zG&EU+VSb-qx&=*gkYR+rNIKOeWIt|g>`YX{%$G?$iUcB{Ar7n6)g@KY5Yt3yFms;$ zgkt{mpk;F|9ns^JC9JEMdH(u7fGaLAWq^<FZ31#76<Sn$WBT$n&z7K>a(()22VK!u z_8RMj1Jy^|Kz26J*ypeHnL9L7;MLG_gEI&8ZOhdUn~Xm_e{qV#28q^H^>=@&D9?U= zq!)aFx4sq|jA3Qtb2u!Z1xiC6hA)F?3M`2`ys;M0WDO53FDT5Z;T!prrB%^pRXVGU z@e(Wma|a?GSJzO;=4+*|p2|kbCKJ%|GBl<LoXR?HC>G$C4qh&NXKv=`jT;w8?^iZm z__nc>)hfPyewL-MRsk?GAD~iSHdE>3N|h_4L7m<I?mDXwsK?K&J#{e6TZD=+0d-os zhN(feFKMiD>pYaW*s5ajkb!NHT7|J?f8T-AR1*?i{O$gVRd~Z5hB2<sh?;rf$GMYg z#1#RObaN+sE;uOhiN#WcSyJz6ByysT>>-#PZnCbau?qcL!~K^o2feqR;IKX$=kleM zVJy9;VTzWz=1v$xW7H0QHm3v~Fl>a3ueew!ZX)x_zVeMX0jUPN+<O?A(~7p$CpHfq z!nf{uj=J3M$S^@9t5+|VdbO`KSQ4|r<f7DYlmvKRl&?Lhk6E7dPPX__s!Y8yd?f^V z6Np;@NiiDJ3u8~gNU(r04s-4y=wc7SFXDDDG}1?UmxWpLbsamQ<@@GF2DDvR@C_?n zHCp{UjwlnBO>O>hy$~)!6GnQV7075n;F%+i^J>Oc?W?}0>?&SZ?GH-M)*tf8Q%B2U z!(Ol7dU9Hd5oT9xvpTm*_qW@2k{gOFv*vZ^32>%Qb>trewCZCxDxXWn0p3luj=Q<V z-Q8co`Aoj`+}b<If@R$ks^9f{5~l2`llg#w)ixR9=i-7ei|8wa>wX@{Rm54jzqqVo zuqw*{$IW`6lyJ|fwU;7v)jz(444f?Vdsku7Nyu|qp8xR6BJ&OHq25K?oVAr`w`5y2 zisc(mB5+xCLgkSeY=6YbhG;J(WzAM&ZtrLpcT@c_4riMTItr)Nxgs?8_;W)0GNqAC z6M1dTh4RU-9l!S-n=5goh|Coz%uFXJbT8+DA6FAxQgjH#XSTE|)(}43Hj1^*g+#ye zM4NcmOU-tsJXkk|5>#Hx|M4u^xnt7zcDwhnjbGfoV~ei2-fYE8J#_M;BNfkwQIoE1 zdNf-!qLHI(8b_G4i;i6Z@>Eogkj1Slu%W;w-e0Vv%TY74E(Es*zrL}#-r#WQ5l*K% zCJ+Wv$aWs;7oUhune9Y<c<)(x&$~F4trI`qU=o2r`eTOerd7rbJOy()Fi*zgKGpf# zPr*iU>IxDw>Fy1KbhU<C?NKcJPLJ$571TU;(67>U{*mmwLG`f~inJL6ht<rtC-PfS z@Y2qVqG-8RtonZDAptAS<W=Nn4ZGQ?uIo)a(QeVfy5v5&<t8ZqX>=NFocGbtk4^8> zglZp!ud{k=<xXA9fS=nc-S+`emF?HdZ#f(s&?RaFZu>AL*4jp9SiCQ;)pO;~>bswm z61hh2quLoky-(NOP)x*uu+&a6dj|;bGkh)}aKfW7GOS0oFioD$XBEJm3p<PH1CP4e zinjk<4ZmU<);t#>CKmk?)$Ve1VkNQCjuJT;a#5q#B$)9NqHU7*1-Xk7Z2$w~GP3yz zt=8@*QdHk%KPBch<qnZ>cL~Xa<kB^JPxmb)4&D0tv}T(RG;jh$a?;Ra$oLvx-Dts3 zzlI@vVvlTD7G_%OHBrdxX;H1VsPG90$w?-RU-)a1CZnG|X&30xDE%|clo=$eugTre zGWypi9JBXX1m7$Rl4DT4ek+?@x;$k_dSVKCg_ln)K-EQ*-afxP6{dS01!g#+q_L-> z_d=ZzL;vj=jqlhu?3&M*ZCr;Y`-vZY+?9gFl8R~IrA%VDv~>hqSPsc;l`?UI<vRb3 zF-m2t%y&__DJA)rp-zFP{I_i1@&Fm_QKQqT%I9!^SC>Sb`qbRR;q`?haKh1#Y2$D- zK?J7MACjq495WzVa?qYJa?8vQUDSLC$Zc{Xn`-EUUQjt;a1iAH^{4C2nBa{9OZ^!< z@&`~5(;c-i9ZmS7PTOttyy)t6Dj3@~QCPh|j61BiP-ZJCnj#&8csig_uRt=!6r`%# zwzoQ;sSkkzp)XTOb<xNc4GwB$&gf2a6@du{3gk~rT?%yDGSTq@sow|^C=e7X(IJi{ z%`PlcPsxJGQ)iXL3su_&?lRFY*D>H(M3UubHQWlVAef7e2IFLbXdZ=H*=821dQC?Z zi&(%++E{#25OyxD-fW>^uwD}>WFb))q2?#rXphihp&^F3UM^&1VT?>xP<OkBESSbf zfX=k+%L@Dm;_TQv7O<3AFR?hCg`2rDoPHA}6nlk1kR1Rv#}|I`EV8bmQ{>WbGK^o* z6-2A~31`?-TSI5RV=ia7UbRfLLJ5dKCnVsBw<jq6TnD$mfW0~dLU0-5l7>|xFLsf) zkZj3rw_IQ0669$CK%>BKPJyl=#UAExC#{jMHpT#?0SNFfvbO8dMeoD?{dCfFg#qxc zLgAdHhkew{=epP*2aa>Hc!ecMdm{!Jt;g=UI54D`8`*M&55x_jKT!>2Whwa*V!=rp zL;77XAU%eGX7fu(iM@To#uk7U4gd`X*oQMjRuwTZVZdw&Qduez-zr9~TAC6VHnnW6 zQ-W|t0Z>^GFCK0TL8+lQqzcVsqXa6*n~L?IDEPLeI9|R~!wtg8J&w*Lf_th!@Y3z8 z#F#2yXoL`1!y1F4+t=Vq!E<Vy+Egk(4na4QN3?~7KgA>r3(D9jm50eww34S+6$(`z zr#UUjCMXjgH>r`t-(dh?Tf#u$z!bV!dGbuc2Wlct@)!*P2-`w5ie<&;CdO7YyJ#Rv z%>eRuy?B0QWyaqW<WZ&V<(V$G6Py6#6=jugH_4w1b}a>8-g{(6fa+>lP5#E~gR)&m zkX2nQP&Ww85K<#>NGEOF24}Ow1qNioMi{H|2r)O?8>>}e;A=8IY(WIv%3F6{Yt~^9 zoq`aqz+{QrtpheBv&L<y(41Xc5V9o}j*p1paCtYA5xe&PqUg-Sp?cpie$MQ>vG0s6 z`@Uys>^qYXl7=L*G)W~XXKdNhWT#?CqR5a`B4d|zNF__(A(cu}skHj}{d@j6*LAMz zJ@5NI_w#w~d*MT&?bR<A1qxx8|J~{tU>j!3uF5bQTD%mZsa-k^{rU9NyW3BwZBo8c z9W(tI4X9ZE_RR1P6s~Rr4aH9>%x)OL(HW1zKT)W?u>weHZ+>UP_)B@Jb@tKramhbS zls>4rygDuyv#B4}HoyB51QUv2iE?av6t$nC4mgI7Otg;!BHg$Mn)E2>;MX_<t8@_x zSdRe0zf4Gr*x5j!R-X2}_e=NMk;1=uFpOPGi-3%XjkpYGmJ~UU(s_ONeJf$YAcBWp zW}1wGf(hI?oX+yi{oY>`*2#cM1P{it!9oCN8M}OL>-O_Qb?fn5#RxLq9$2Z>S-7;a zzL|1-$3;Y4%KLGhS@X#DhRSull#j7qs3Dz?|6->v1hhdb>lC|}VpWb{)0gj81Vw!| z2zE_99)LSjrSQX-;G=^cZ*J%EzxJh|9`q^}rhX66{pl(b;ptYkQvfq9{u_XlEK@Ct zoBj-3jv9ErLFQ^jkO4D05-|Jc-=~M4!*3FbHV7%TM`)7qDQ{tVaLs*jwK>(U7j>3z zp?qyTP4rN@mrtblZf4qTpgeIBdr=n|Ek%d-WeHd$H6i$rB8!9nG@De5Kak}$e1rxv zxXextsUQ&YUi(3Y^pkXD{cTB~ID!WQQ-5u(|M){4Xt^k0v?S>C`C5R$PfOs`5#ElK zLXo4*?6V&>IX2Ia@Z{%(#7p$AUf29dww?XrC0BD(va7lH-Ae1st<4Rs`B9ikPqUn< zWPWXSO^?9Nq$Z0#E@ib@0bX`Ld}QX5064vB<Vh8s=~nQH%f0aK_K^4=zRkPxSgl+o zmE^dLZgtaVUdl3hTmId~?%HZiapyiq?tJE@u2zfc=9+OeHUEn{r||yvw9?<8REiQa zaj`}3e986j9O^SKSgZhfxd$e2$MBP1U1%fV%l`obtE>%8K8Y=^xn4rjbXvSH+@mHJ zzsA0P-#Q%wG}D7TApKRCdDopN(Wo|&Et)*nad3y1@E=?6Zo^&4#jWGVK}oojd(WEA zl7auhU8)-)#L-O{SzZRF5&@X5r)V9$h-dT|skb`LJ)Ht+;vIkm59asIR#8;|pOAVm zw$=5xXlM9HjRQ?SItAs?tv2(;^}l#O<m$R7OK7v3chb)FRV(dBp%U8drVEeUz(kqb zN)zwy`Rya@h5up8Lq<R{uSjrbTf<$(dv}RE4tM)yOM{i#glW-m@kjRF_~z8V+FD0J zp6xcEt%qL+Y;WD&Zy_Qa?nd;c!6Ul$>9Hny{QUwZR#?4yi~{C@jne#AkE`&zLMCCC zg(bstI@5U)JSNHmGDn;UJGIqj+#S+}xPsXad-z2F08%{8v>n;=WIlX^aFJy+6)xXs z5~KOV<kK)-9WWf~`COg{X!S~(Ma2l1>Ui94&ZEI=QUx|lUURtmo3^kzgJWK&REfFq zUMyKmuc-9X?QW5TrOhAjdkGfaWBn`=gBoyW0=5a_Hf+$C9|?n|6w!DNLYA;-gHLOg z^XM_LhaVm>g$gdMkAEh71|=Kxw`hP$O^OTzB%#gHl6QZ_tr8r1)%Cu^4%x^_^qRBn zED)(GqoDLMAZTw#RO^8!F@=W!m>Sp5$t>57XQJ^%z@|sbr<H=Hf?C^efxuEoV3VoE z?N+^FtH9a<NgO*hj*a^LZq#az*eW-5(5whg-WiVHF~~BWPN9rsl$Qbo2B>$%mQZJ7 z%!b6dDcWhEntiI+6&o~<ny}aWD*mF*4Oi117VZjHI*Cy-l7VpVmf}JJ{*e5rt(1(N zZY#`ebo(ey5n8duLN?;c5NRGF1X15UGrw^>PxixO{$G}0L+_J+=H(&~f<qN3<%+a| zvO_SjK0wzQj&@HKZ|EgE!{p6uQckuveHeou#_K-e2{3@Omv{Cfs3^T|X=kRCOphqJ z*O;4PX8()Q@lyZ+it@Nf_n%G4+u{L7Utm&FPo+h`9dM_joB?D57b5|PXl;S;zC=;` zZE(KVh-@p%+LVZ}5nAt-l+eB}kTh7zXfvxJFLrBRvFNpPK;=T%R*<~ey<>)}9breo zq)Lu5h3?xZ=Q3sDA=0L9cgdg5K1N&gGP%rF)Tm=b$q_6CWS4C)&Nd1Xsd6+s{TW+z zAF8|_Opw(hX~rZ4LAW{qY`y<j*Q#ZM(bjR3d?LlL!}6(;Bd|T;gyG`s{|MQG0xU?& z$QIWM;K;o@WxBDssoFudM+`gX&btc9{~$AA!G4_!6HZ_*RZI)S0(Lv-Dds^;Nv+fB z{&3}>-vYF5VjXm^tMgSC_A_?3`EvKd-hTyJRADMp)PD;Up)i%`fUXZ*F{oQFAytw} zmCx-Kh^L~>n8NlyUJX7f){7Te0JLa8#=b{u=dpkm7q<c7?QK*>Q-~tAQgv`N*-k&c zW82jYj@bUBd#heu*_%HrdCg?WZjiFMb}D%f4%B1WAnL%K(>pD$aPj_jG6}ZCQkY!b zCb4xhXS>nb>$HF#adWyPSo-h>Jk4U;rd-S@fgEC+j+Zov-y|#c07x;+5X%OJSBpxB z*7)i&TyJ!fkaZ{B)t!V6Z0|V!Qz+cM%rNp<>uKS`o>whSf8Y2i96_tH%MvqA6p8e{ z?p9`U;+Mz~pZY!Zes>c^qx>58JvjO8m*`fsfAhh|#l~mEVgm0*y=XgeS;Wo$!SMzC z#53YYgFDY0MZG9s#?re}vEn94633Rhh5e|Jy-F7gMVc7w^-#wwSFh}4OBZ%1aA5M9 zONq%@sS`(@-U_&P@~_m%=ofb)pSPWrJ{3D}A|md2T{?lW==Si6Fi-k)-0P7t(^H;g zKtv+ynLl5_wV=X(HBV$u#_DAXEv{XeckI;wQWTeQ@6?vuxul<8-#x#VET4St@9&>K zejK&9{Z{VFQWuOE<|Y`OC(P<b$tIC|mVqG%xx<|S5-I<N!decRWge1n>uVkmQ4Pa< z<cjzPUFsLxpCmXSap=mW0jZddW)m4j_qr`{nX`W`)e<=@`k>+kOQFZg(l~0$4lOmM zl#_`HwM9w;KWi~)ck@^0N$q;DG!!ILFlsPnDLiKMG^k+AWFhIev0b4^rm)$^X|Hr| zK88MS{r8VB?KO_fhvWPtx`7?DrD?ssiV3g9?R!GP;fk(2MXdGa3U$=N>aWN&%|W(k z+S|iQ^r;WCz1qvz=d7p+<0apa7Z}qi`n(55rd~6F_|-yYLuNZ9Jg3ydGZhsj5AKn| zK%%n|*RK}O9%<|pn~T14w`Rhr^{<~cf*zpsJZ{WNeBl9(1H)W2P)`$z10rkl4reoz z&<9FCQb4i~1)zWD%9ip|h}IHYi)o_4r6H9wD_;vTRPt^zH3`n*uX2r_NdVbWb_cPP z6$%rS*2|jCiOMqzkx|)BN$k%$R8jV(Jm!()+bbtLV^Xd4XCzmylGyZD)fcR#B2THY z^3Va+E=tlOfxF)zeSU2RDoSxzY|*@we^RTQe!0u5En_6#T<a1ui&a%#h~m5ZuPf%} zu>?*JPK`}YK}-9YzadjI1Z`5|Xp+l0q@9fFRN0C{(qD#DDzAJQ*6#Y#p#P`u&l|&= z0ni%HLH@5FAjW2AscSLpMWprgYH^WuOb4uf#OE-)h0sdj*OzCvWH<Tg@{bl#CaM)7 zj(Y5(jW<`59|dV@R4s4GSk){7NKg9DfeX%-3jKxJ%NScUOo}Y=bK~iO%D>+ilDDjO zoj!kHA0pcy@$1jG|8_mz*1(-%N_3c1!uolG82~TA7|^WSO)#;vBb#T!)hpJ`e(fix zN>1}p<}=;bHX{jg4Pr2E2<+cga=JQV8lk2~9WqKGyfs7VkT`h?D?MOI9Vl-}Ps8`Q zr`d=sk+b~mmBzL3XN7tN4>+WT0Mzu|g-arD5s(}gKv{DD*)MEtFh4~iZDrupqurn) zzY6YXc9Ae`xNFBF!MtOIuVmicS2WvDN1sqGLJv_LcKs7%Ilv&mkB1O;SFkJM*hnd| zajWTd(xO`uy~448y;ZPKLD}^34)b@#jvFrItF3$BJDFY73ZbHUpD9>5kQ&&>mSXDJ zo8{@9S17a<GG^J8)Ug1``@0LfMc(LT1&q2`S9_)Dy(y=1QE~M`<&%ZA5K5gX&_G9u z#)0B|R)z*kN&1a{hF+lp1|9SsjB`$r_2IamdL&%&x$ws8X`U)|^o~20<|t5V>XH0U zm^~2y;N77N$xQ`8E+fM{w3$e}LJ^&y_o?J_n@%nXUz2>g;%NR$!*e5xD%&|p3KUE~ zhZ4E2?puEx#)aX16cHB~8HTaVXrfw`h-fDJha4Gk;3ogT8{v1ftU#Y@az)miE5cif zERAc@X+3DoqW3=a*)jk?hso1nLbi@*dJ$9Tg;^hXGak0jRuSXj`yueftlz!%e*9V2 z-hBaK2wP0m&C^dm1YZ^gaHVWw{7f1#_j7g_=OD?Inof~u&XG#0!W#kLua&@nkzlbq zr5+BIwyXg7X@E@Qe~56|H~X@Ia+JpD5qU|=*jE=S`NRysZSaWU%k(|_8Mfke0Bqu) z*!^zNSXIeMRdvFtT{tzSMmat3t+jZ22A1n9&SG{cGL<d^j!NgYM@tHOPnN86Nn|MK zYlV2{JC6hMzxsf0vrfqTg#P~OeFuKO+^a7+)T8`m{k#!5m8jy(h5p;xM~BNxbQ^ql zamAm--yEV4j;w&^)Pq9s6Ng{{d|QknFGNI!4=6(1Oiex@EMNwb{624^VWDPLiwQcU zylujYsC;Fk$NbsnJb_R^ejfzdtT7N~z!E%H0;Xcpj79|oOYV{!-d)^sHq`RaTpb<n z#6pUko<F3UEU92^0<coAq>%1$hg2m#<K0(*9l|ri$BMsRd6y)<Ymz;FXEz`^PtAZq zl02qZtBn}{pg5uo3}541GKQ8-b^-mTi#KZ2_rI&=u)XX#8&Md&jN^>cyehG8bx6f< z`-Ai$N3qYDru0y-_w<wI;%^O=qmcCj=Cg)Nb|(Mak8B;-l9~zKAqh8I4Iww}d>oS( zf4giU`tU<v+}W0qJ6=lX54Zy}FP?pGbNhSHetU49;@FbEFdufLQhMRtTA1Xo4e1jX zQH0D*;NH9apAvJ*MzgGsmp`9>V|rtA0TkclF5JVhgpzc<FleFG1;+VZ9Xym-eAyo2 zlH<kA$q~oR0rQui+092ht-fsT%cbMBv{n|?_dXc*kPY+E{Waqp`_0_gI_~m+GH<7L zQY#6Uj<?mZQHl&i+uq>#Yx4VNY;;Z{tYwytX-Yq{F8MWGPg16CV9~x#BS0(<d$KSD zVP^en=JBJrq~wRai`E8Ne`8`ByJXjn-4Iatm4<w9dFwSSjt*B01Cby=T|Km2m<6oG zWIF+46hA}6OviHhf3jaLl~^7?OsYz|S7?bRzyvcm#K?IV{7z{fp_Y>pEG+k}UN^B% z_4d(HdHxc4C}CRvz?r%K&S{vhORf#30J5|yIGxv{6CHvIYUn|oquPn_$VeT=BGHl$ z6G-4>$dUJdd-42V+rDwA#EJUU;MBKQrw^R_S}DK7fhPTHWD3GdC}3Rl9I(|k+4CO( zgn^#zx~P68ai&^kiYXjwBfUXEMRNtUs2Dbcq#ph)M~2yHzsrmnDkr@dy6|Vl3vRmp zCZ9cQ#?V4h5y_!I9sQq92sz1ykll^nGUJO+E1=XCMWXov;ar5@_OYD~Lr~TgdFW(v z`?%-O)c8=v_-7&RV=4_>qW9dIh27ozH-e3?00{Y1`~X)xn<6qwMPyWohb~HZDr}F} zgG?S_g4dJA`zG`W5NrB8eBpZqjr5k+eT79jZU@FwFzb+5Fd&l&ir=&mRiqFj^l-%j zxN<u3ABiYEDflD%8`)!$JFz4))<@AMeWD4QHaB|ey5vK`3w9uekBWy--@QmE8*(WK z8>o`bqe_?o(!*?_1OSu7MY8$u#C5?llj2+TzaQ!T@sIgqpf7S!P%<YA|EmU*e{2^D zK%C@b^VujAD72LgNE-10(xSvrw}iEVU@;w+$cI~g7M~E5y&efG8HZiqfd)LuSG(oT zt5FNL(ZXg26d$h>BEH@7o2O#AA=1T*GE;0a2Oxzp@hmQ&%vF$$gC*$8s^%+xbs}~* zVqUCa3dr&nQ%dJm5!81|2g5`TQKcpT0e1zdlM3ikQ0xqdBvncIDIkjJFExZzk565k zrcKW9h;!o-PTp$gw?P0(S*EuKnTxTc;$_&dY^ErUD%BDq8p@R%h7hw{L@9){ri04f zs=eM?7j_5<ToekK5RwIiL6Z91lr|bAxcW|et_Gw+C|WM+9E5pKCzXR@qZFB~TBf)` zm6$ewVsQ}!uFPP*zO-;;O7qf{Jc&phwYO6Sx=%coj(Cy)LznAdEEl^92)F_wJyb#l zL{4PFN2_pGx=|(|rj`pN@bsgenB;`ZYO?;L(BX1y!(`!YmxSfQWn9XgKn#~utswM^ zjfoB+X@TM`Oah0C8s-azG0`n_w5}o?!3MZrOnUcNDkv{G18_4c+yqj(P+&FpgnIvw zr(d^K;~~IN5W)XM5Mhc~GUb0$CDTADG810I6vr{~esoJ=ADg#nh(G|Ablh6W$M)l^ zkT*4i9X_G#X8brC<^Khl$H(O<z+#y~dKAQt5TZL9yX8oQDaP3x5OKuz0(yMJjF8<? z5vOAZy9<}^#}$T)@KGn}=)`)wNH=j{5i`n{npp&j6<{?KK`kz_md|1XdZ8k2cUmc8 z6qpIusY}Ftzf#PbzRn(zXfhww&d0ZMg=OgQUlj2Hri2+J&an|5rU*h5yd#@%ciJna z0AWwJ8Y`sXziAtt?<RbU6WZS1x~1Z5u!V~l|3&h2xBX!oF$ub0gBMIo5iZ8J*z)m_ zZbnjkc6*8X&P|Z^h{lPqK{6HTKDBMxg4h`%zO9WH(q(Iza0XXq2o&b?iFz?UIZx60 zT%Q2nfD%znzoLLFw6g^T>&g}1`bEV$hDfx6{`e|Exhf%ui%g^=41np}r$HZx0hPY{ zpFdS!%iVA2tbUb#uN@%h*btPTN)r}wB%AGvg;)ZhU&TcT30qD)rE3%5ZT$V>#UZJo zScArptV|#t+S<t!i?4#c2VjAV<X|RYd#yRsv9aXeq-SBDHIX`$(7nZnB4O~@#zV&H zpojwDJs>%}i0M!uk17ytsbVGyg3feQ8YF|HgFAqAPru0BIArLv$bj#{zxv!NO$tN+ z5JN?-dI!4E#h0i;5>>D@wrD7bPN>4+CIy4&`X$9NUiGj#vDg=)WpC1mOJdigwzrRU zp$Hp7X^6}gMuFVYEm1>390?JEsF+d+_NXOB`p0Rp?pUS00UshgwQS<D-ovg?Fd~C+ z5vEunA2SmoQM*WHP>FgrBGDXlDTGagV8c(39TeYh#E*-*N85G8GyBQO7sG$geZtD| zg(PeU6j2zxo6Mk~q!a`afbHop@k8Q?@N{f+{Ha@~Y>SR~CXOdgXntCvh!=t~qij)s z1+m~NLFl9)yNSrABdzZObkoFFruyX}XFizP8t-vw89z5Ma-{kDfmlA)S%E}h3dY-z zsXw+EZJ8meuvC?pm<@*Jc}~?|Pbef=*UZc`%5#;JdMy|DauV<VMKXge(JCmb*Nxh; z4-s|-Ff1-kjUJ=!f9^9oH7Y?TC(2W2BIB!;ZZaRe3JDBQ2&LVG4vJ)}jg*fKaf&aH z1|gFgums9>jhAtEI_{K2PWlw_y-v<yBDfld-pR+OZAu1HL<>Vi{6i#TyHP@m<TH@T ztpuN^RXHCd<g?gb_qloIp2&O(nze|z%@j3Lkl=NT+CCGA7DTmhPjnV!zupv_q+e8( zl#FD1;h=oeSb+WwHvI}##|KY_z~k5g2H#0j+tr)`s)mb#LWHy+e}ytdrg}ltY3$Xf z#b-Ui>d$DA5b*}4w0DR|V2H$Qw|C?vv<OSa&9C^bZd#mVc@eo}>)Ow?FgE-gBv7X> zbbk?%28uJ-$b>~1PB*F=!jk&|f4bn}y|Rxn+bOgale)#b^ec>M$XG7M=s8J5L8yW$ zxyBdm1j%_!0;FIPK*^YU@jSk&LR#uabc|>DWL3eWlm-P&frN`e^ah3K86x%)&@Thf zD*UtZ0ab1}RjPs4m2_v{C|}=OE)4HhSrtZ5`LI|v+%^I3DGX~@5UZ)eMMH>cI<c05 zZ(w_Q{d%A*ReL$`!%U1PrMuo(kkDYGW_<^Lj)FZ2irRJyg)-qjRpfOanJTt|%?S#O z4*Efl3KPqz$8NrweM^Y-d_%qcR!^oT6wL_`+*;xqU8GAv-z22QhPDw6Z(y=-wDAU} z;L~igQ><BmeXaZ%?1Huyna;IjkFngPZK8*4DMQZGX7Mxe)liF<^y0}_!`+wRjm+Yw zuzpu=p9%0dHy2Klo($p+=9jmQsYv@v-+!u2{$+nE_4l8MQ^p1l$Aam7p4_1f0^IgY z>zRjMtF!l;9=>?P_F5Kxc>3s`IC#Gtz3q}ag1Xvfp>^-n<#y>lQu|!zA)?T)W!wMe zzBja6)1n_-e#o)VYEO-Be|}l-AM^-)Wh%bPONz<W7nmR+?g&#mJaRj12*?b=q!zym zlu?*c=r&CnpFZlzhkB)@x;z?SN2L3<2o^B%T-Vv$c2z#sR%YPZDEzH5J~ZgIbkH4z zq`sYJdMpU7lH8tvD=A9cft>mN+80Bwcec6A_X+Sje6N7<4;uwe!dfYhn=HFoG9wrE zJ@CkVpuoN(z`t{S-_XIrp?fl8Pc^HQ!n&XQ87`UkP?~?NZaGwQ<=*i)WW)T}kEHv> z$2^TLOu%J#IL?EQ<{wyH?h<}DdZsxNxiG1JORfO%T<+>rlwybJnZDsOZ7VWEPtW`o z>&9yApPtiDej9egN%rZ96rP(5jPw_vb#zJcd-klw>{)o0GpzRR`?FJ4YEpl?WuZGN zNuw5LCtVsRPs_eA)X>p1eR27(8vn}EEd_el9?Q-fL4$hKLs$3D{fA91sJVYncD?{M z_*Htea&GYP{H)6eEZ=xLA)-K0+QoKw;jOF&|4N(FXxp)e<5pJJ6WPz+$@2BF)<tRc zu$TO%>Jj|@E<r2UuYIjK3l|Z51gT=_ZJljV*lmsAR}Yq^URgdFyZl5u3H;#%u+F^l zs>nQP<gye0dS9>>W<Q}qLBd`$S&O^8U+%4GgnLn1>hYIvyA{#D)RMjV|0Ta%`47Fj z$o}HRig!&g(4LF@au}p>;pH#iKOanZQ`6j3@!@hcB9NNwOka9fv6}8QG9vf!_!81p zHnH94<9`*$$K}@EzEr8OeqS{Rkf6k^cNL$;-h{ke?*ARUesJl-H&q0MzAoGq9sF!s zG<p4baB?6UAyfIKd&iNtH3AyRYr=eB?ceDjD$V%7#)<IQBKw<8U8}Mb*ajLN417EA zU%1*{mj>zYjdC!`uhR$!KGXUA%z+TbUY8wnKayX<X_N)0^9UnuN=D^R0o0kIG{ejC zZ%rx44OOJ){$F>J>Fu&E@9lq^Rscp2LM#7$*MEPy98!z=e8;!=^4l)X_fJazpI=n| zYeb$e>f86e^5p^OGuU&L%S7O%EHm}0deRA!j*NAk>b@)y&A^UK{c8gkWGoW@U<_)8 zE-AZ}TV@$tA1>0`*PetmtQ{>g+KQU($TGY!e%12KuRmC$I$o81j?~qa+N!DRL}}Tx zIOChs^**-(JF|^%J!=elnD`ebrU?_&DJ{3kF=@0AM+>E$#hc!qe-Qs+wll}H>1Aiq z?_Yl}7i7+M6BYsMT(jn-{#<E`a|H92usl*A`BAQUOs05&#hHJEovkaAHEx%!FU;y* z7;Qj?yAUnfR$sJ6%{{s>r-48<p835)jqQ*%-<Ko3E6?)5m)E10&;Pyf;=#td>0A4{ z@~nP8M4$=Ot%?^ZD8%f@<y{x8JAZv!ojZfrHPiX$=f;P*F0W)e#O9x;p>@y!2u5<I zGf{GxbeDjQQ+{x)H6|oY$kTao%S)BTrDwQmLp^ZObC}Rf#XRTGtbN^8i{1xIheC67 z9${X^39vcTY!gNM9<2V_(7}t=|1ipDFU$|IBy8le!tz~pu)atMGWIo9Fq#`y<QJTE zs5mgu*Rc@0`@x~o&^(tN7cmiZW{JHN&#x@@5%%zvxY!5T<>+Sp!xf2Zk5x~ov{Im} zCI)~_WrkdKM0Iw>sdP3npe3Rv-_x}|ST~Iyk*!VjiM&y94tJ#Pv@Gi#b#G?&k()Pf z&kCJ7R5V+OS7Z$yX>5C$9d%n73A<$xyn>77^ys|jp6mQ_9z5KuGZKAg{JXhRQ>LX` z%-v`I?$0%^W4X-p&(Gmwx9%_HV_cddb8}+b-#>c`;$BAnmc>euIkBDJU*<HOIJ+Tb z`{>_4JSRrF2GC7Vha?$2INedkLFo+*hh8Bs_s_wI2q>hx>)47-zg#jQZir?zsR>uC z%#9niwc^^arG5`Uc^VV$$Hz>%(3*JDPou{tWINZFM;=)%AD?uT?_6(o)*WjdI@qaU z6czp8Y5Y^a17p!(XXx08=imIqP8_{_+T-MlaIay9Ca)`FC+FJ3rA?xG9(bHuIC(hB zp$YTf*s1@{$Nh+%FA31Q^<Rd3-ezWL&#co@-mcr%&!rsxF27uSAn#{V<i@b`n~LPM zrSyUW16B9fm3fKp2Nb5Fwlr>bkt~>o&&+<&%?I+%thJwc<IvQ#MoL<rF%Pf^LE|qb zeHng&bZ+X@5;(hY_i9=A=g8(4%^R~vC#-g-Z4A5oSh^_iqEcsHvRKt})5N*on%JpZ zQfm`lyY`n<S3ax#_Guz{>(estmeb}@2$7b3YyFg1z~oJc5Y7J5$Ghca#z+xqb!jFi z6gT@aQf2HHBofn^q-;i-5>pyg)YG`gVx()W?t>@ZO%oetWPHTUV<i=J6UP|mEjP-i z5;68T(rSjAc`*56W?%JRy)5^d|N0Fa`_dT=Sw0O*kBfPl=zwE6a|d7itS)7h9y^vB z=Ht(Ey<2T?Q!s%FzqVy(c6Y#Rcz2M=O3|e^nNB>bu?x5m;iq3PLsXpRQO+=vB2Z?= z`K+&?peCXykA3X3$ljZhS);NL-s2z@7F)7fqbhnRGgxq`pr%!dZ*-d6qs=L7h(1)7 zIH^g!A6INyAfrL_HV=FsSK|9#w&C312tCC;{+{v>tX*X^OyjsyJ?oi4Wj*JGXaU81 zO2Mcp%LAw16ZB&BO?#&47*k^M^0L+qC?9s~T-ouf6V<_H$P}xS!^bN=Y~Onn9Ve2O zhLb+UpZ~Ri<w2f@jX4HoQ~})0-`@%%Ffny@$De3kwTiFK+{w2%^vx;zNc^>H0g6t$ z-q+&4?@6U-*SpAW-J$qjjlUi+9Hzf#XsUF$P**KQlo+1<ME)tKa;Z7oGkM$UjDYpC z$K2fQVbpi77N9!C+}v|xO2z-dV!h7=p73w;{+mZm+_J70ZrC~al(RIL^H=1W|3vn) zQX`z-ZMR$do<12!@A=#q-x%fW{LSs*`@1{OB;Anzft%q5rtRe<R?r2aWE>vdxs(~B zMZbpBv@<)|(t0dX-`wTJX!YG7P7gDDms|Os;8q4(yV36lQd6t+<lX${*A@l+voj{& zLO3nV=%be<LNmUW*7i0YJ?LuSpT2&tuix!qg!uRou~QFJ(-n?a;!AL3_xdxbw@=8w zpZsv-p2pgSCa&e)!qz&@CrU%K>2zh!#HoK@J65kAo*kZhx%tb!>Qh)<(x(p|w#6FQ z&5uVtgs8>mLZ`bB8E=+cebZo?r7DX18(PE&i~D15vjlH5u&2L{^Xqs$GCC?B=)R9h zITA`1XKy6<nJ<a#nku<2bv^sQmFZJD-};Ttg?*)~j7Xg-1=_EM`<)<!S)LQ{Lu2C7 z12X0#UycvC=PCW6pSZb0-0b$Z#@mHWLEHX_M@0Pxjvna!`CKQbEZbqlS8`zf<*si} zWOE(vT)tF_$m|U0Ae%AF^ex_6e&U2Bw%v~Ct>;?f12Y6=H{$k7d(KEDPAZM+Tnm_c zRigNHvhX%VY;oVaDY>nCmFA<ZH>48=+!r>Ulozd)54ybf`P!6c?|b*)L;Rah?TOF6 zJvmxi>-vFPYkK9w*xjbbrY`;gKc7clKWg^TZ8hwuZXu_qpydgUUgvTA$i(fojc0)x z&H)w;M3Sn@J!0%)K=t0;BvW7Q99QDyGYi~<c1_A7YuAd+uBhhS>pbW*=Y9J7%Uu_a zRhJEaf+|T@uX{Ig4-Owx`*q(Aef0j@)c}pTo%1!$Z(2up<b56#Y~@RCsTEzcTFuM( z6Wh7eGo<?Kb!5iRWi3_n1{^Og?dF4qyxa$43&m633o`5z!FT?hB*ou(>hsp-@Y~88 z9<$Y&vQc&mpQavXtwd`4dbj0sbXF;`h=22d;ncllzoU0aCoAi#_O@dl8kqha_q=@e zqvb36CQA3o;PUeJV@(go)&p;v&ny&ig3S_skP<Elw)rqImg=XhJnl%H`z)UtU7tOg z;3jpZd?>HuwdBAH@1oydn7M7xT;ETgCgJY&rIwYiGan<*{oZI8-22Gz#G7Y>f(vzh zcUF%!-R2h$tKXM@)p4VK_$B_p{!W9@^;;`P>*0SkN4NZ%f}bQQ?~u7gxcKPXt^Sn8 z{axopy?*!K6Zm&1q;zHR=;GjwtoL7T?b_?T^0e;xf8B-Rh862gTaBx$b=9+7DTaHG zj{OjT>J37!r$m86RIBG+yADHm%$A0{pN7I9w01ncUnD{>f?3oPTDBA|?!0UFUiVvr zOodD})8ZJ#73-jqSQ$>pj-iyZ24UsTQ(mQ>d~B?%ACY?IOW1XoyQzfLan*z5p;Q}* z9f5utPZZOJpPcI7IOsH#7U~_&iPQ0ru*}@+o~@d`w^Zd=v8R8XMZsS8qQUf#`^ufw zfpL_K`d6pVArlV|Ww?09WdI}`FQcL$QGPS|c;<QQDNQ5`oaXO2U24{P!=(+KnZBu5 z;-?`5VGQV*nP1QJizHo8%hC}#lJ^B1;lK-KOds!ce^8TE>8#k`r=dwB$^zN(hG#$Z z?Yl9Qtq>ZO*8&@)qZ<=U7D~2)RM*e9*5zP@qOX4eU$Bu6SB&58b$_RtJLpdt_0zz! zV871idMG8|vrnFIz5q{&DT4tQIZ03bjs6Zsof^8Z=q&&0ndWXiG@O!WoeF(3-urGP z@8e=@XAj~D9q}o`P<WfC55M^PzFbp@I-XB3=3dlz#k_||foHL1Y#1B^_;nUbF*T(e zu}8pVJFW5<Cv;nUKQC&oZ-_}U9=fDpPMht4EkdD+SUqbAPs5CS?H4k$J%|sC{NHAP zaX<l%4G?(%jtXFS0D=u8LVzh7hM*%%sQ{J*XfWXW8K4FgzWXOafVHhp;ZIVL7$~nH zKkZ&?nhtiWc(6*FMn@S+9^V&P0OtY5Spbe*Y+Vl%2MQ@{m^&6mVF5cCa34Cth==rH z0X{r11&fkhN5rkeZ5XJe?L-DXR)B*np}_<B*i;&Pl8mwku<aD=B|7me7Zb`QrqJ<r zT%s-j{>Mff*CW-lK`9zRicjRQ!3-Ym0|S`j;-0Vwb7ai6nXDQ_8e!u)AkqseNsvnN zCBsMG;l?4PKM!M~hvx$5Y8Hk-g~fA`=Qs#GK01mIi|3%MAe1c&w4xw{s9*pU#PeY^ zI-tn{K{|QQI$DB^31`9gQ#5=M-25bp;ej&ddo`>$Bn{eDkV#enoK>*%MFEBiSh)ak zSlCVmNTI?_p%Nni=EwuFe1r`Z>A8-O<s)_hC^{RHw2rLhAmcblV>U*Gk1rt;NdWFD z8QV%m=kw6d*!T$+-tH#CfrUTCMx5Xgm$-xl2BL~bXaw*dxVYyO!nW5>1_VRv5zdhD z%yqmBK-6ZVW!Pw6I;n|<xkp2$Z*xj~f(eAYt%tuuhZDHS78aVy!BkVxySeZPK1>Wk z>|j**kt>DtDv|4;CJn&r!2ke|q>zQ_m21@CsA5SNhmgdgZT?9A=*+&JC~db_Ly3;b zRdZfhVUyYm1a1OC*;{}(y~==GvXfD@pA9!6S3jCXV%HJrk!Tk(LXL$vxeiZYBVDMt zNjlD$fmNa6QmKd%GFqC7&u78S0c<P{XHG-3aZz@9h-en>HJ3mJ@JlpOF@Rs-;$AWk ziVQ%CO32hBTw!4L4}&XYybOyt%Y*qcNJq%<QZ`ASjSZs{Dp^<)8vY`HKFz^i<O1jT zXiE-iHyP>7hac5L>Hu&LD!7M>kmMq06hMiNEXCEYu|OsaIM7#bdTYn`$FSRERG^W1 zBqls6;-+1cw8vfzNiO&=%Q*HYiCA7hdS8HH!!VS)dqxVyDR8+&xRW~Ek-b&uMMgL> z8usfo$T3Re)~f@#=zUaNAhoQ5fqg_pr1J6kd|-YUvlNI(fp8CKxa*IJC)k8~094f@ z4KomFG{SQZX^f6RGl+c<ESQVUB;$h_n6O#c8yfKl4S9rB>kARbsn|jW&Yyz3v5qxi zVXN2CE$e7Y8n*c%Mp+LorUwt8Al&G%0M2%1e1$v>@Zi9Jbx?~82<yRMHWnZNz%JFB zX?8x5HnHTQ!XwpAM6meItqao9d!K89EYyKP<=gLz&404Vu6GS6B|D*822d4+1DF1V z@L|AZ$p~g7T9%H^jYP*WPzSi^gmoZco86;r!BogZ1|G+zBJwHNTn?Da#;5R6c7eE9 zGOixN4e^MsdWd&yf*lX%q=%d1lAO5My=2lH1k2#zN62^{1ef6u%plSfh1f*~1<CMT zS5N~iR3sH!1|h5U@Rc0wWil+8kGadoh;flrI&Akk%8Cz<=fSrP;Ww~IEgE3OgX7mh zAqp9`-XTowj2az?S#^x0XIxUu%(2gW88uj^e{ygMlaVHIyS@0x=|?eHfC0bYel|dX zZke(G0~TPxfS)S^9=%6+($T8F;8{Pr=q!XWm1|7LWm9n#RNO%-f~|*X<$!D|-hqr| zaZxEWa1`3YIp`sV)(Q1Ag03D~icNS(z>n!QIZ+5#=-6q-gS{LyM8?Q4Fy|q77lk-T zLw2m=XCPw7dhIw3L%xi?NQPYi2$yNt94b1Ck3Khy3>bZ=10g)PhzL4>(nBh(*NJTZ z610vrDtM%$K6Z6ti@*af?6P7Y_GPJEEWPM*Y7l=xD)y9?A03-`8ZOR;W1$jRI>JJ) zRB8bXi$cqBN)IqlF6%%X8<|amr;>>(dYDummQBGP18^)Byea@;PC>cSaG`n#T`uuB zh2*M7ast5DJY2>IPJI-MCX+G%%oRS8NydC+6EoSwL<l~}M%|=sjro$nQXVIajV*+* zf|||BP@m;G`VbXu$-;;M$ldJz2zEb>huWBj3$Z&`8lVsWl)fi{tolh!UV6;T`3o~y z+G<EPX%|cFN`l*-L0&<O6sJa8k`B}2!FR0J`EdZ`dId-UB&qddw`Oi!n5}P|y)`!L zwj1y#qtEAOKQxXkjG3#s#B6MwdpI`N`Ejl*M#&HWQH`o?bz%1t<{n!~jUnd8KF&`N z7bZW>`>{wAu4-R`+d$p?oVMhg^1^?_my6mjUyap!Fp#ySs*{<nC`#1)$Cp=a5|_3A z`|9!Ex0wGr4Zv}hW8Bh(tijGtM1Jn##UCDgWb76noyQLs1X{R*$6E3R9dCj<i`i9Y zu(6Bcd5e;sFF`Kcm8`m%>H5oTQE6O4Dt1XVZ%O^ptQH+3X}klO<%)J$GW;j55&OzC z@0Iy@y*z|TR^1`^!1=x7E4w_27dKux<t@A1UQW3K_)=I0moBl)<m^3PL;C03@?Hnr ze!Z_kLFOOfV0He=y$imcZ%$913(9*FdHc=e)%xXc;F0;~Yt;I@6jT*;e(zLK-A2)& z@wX=heWOS#OwvlKHW^?WgY*FytpmnGz$pI*e1s?nTQ0&DLha$9+~}Y+8L7-i=dduz zG;9kE)k20z(BU^&s0$G2OU2%1Z4uwokb|t+SvK(n7gU4bJU%iL!uQZe7a7E027>F3 zInF@XpGCi3hq*G)x)4s6jt`|^&XQ5)JoH>U_=tl~)oYxjlo{)x0wHt)167_|dYFNd zrMEd!+ps{jD}DLo6g-2?4uG-iTEotce>%13n?hO#w+tqKcYst7rVlf2foW1eE#MuB z4%@+l?*ZW34Nxk8aO1+20fZ$7o5#U2XxO_H<kKv$l7_j(CrGer)7fZkGW;e3!<Hs| zT*r6v@Mri)MKU3nLt5n!o61P4dg#wmxDjiF>pJWKmpD&Bh0?&Y9Ize09wVc+c~TO2 z3(a4{7ret}a~=l*C;>LoW*zRr17&HYDKC&lROI(tg$4|`%#mAO0VO_ecXwtL5Z|)} znZ@zPP*ZPIkn6bRhswd*%YN!p&QbB_YU@Y-bujm@1l|FPcY;0p03jBrr3YJE9Tz$Z z)7ieL5D|u4ICB`8!-W?Bgcds7go3Yxz&kvQIs>=eqgAI9rl_Py2H`22G{_%4L;HG$ zhwlb3XwLK%9<G>0N~2=<<fa84;k8~5r2#Qd1Lt@MDPdsGc6*TeIc6OdPY1VySa<W$ z1TOpz4MU*d)Pdim-`IQWICZ@bf)H_qP68%jlX9d?n2p=Xt?MNUf(;$%Zui#8C2hyv z#N+$5MACM;t`)}hdbmsIJ1D-c<3#N(^*ksO<Q<O{sgSA}U!VN)+9}`Ah8w>v;bdLX zv5S<LRInQ)k}0u46hL&_tePlArm@-G5Qsx{yuy87@NYRZR^f2j?_*$F%)+B|>Ah<~ z?cr9yv68)?f*+mz`wuyP%2w3t1X14civQ=(fh^%nhM@nKu;C)@111cL&B5`jR>>&Y zz>SEh>mHSkR|CHtdA3~uWytRP9zA<E=D&ff`+mf}>^!@LdikAuXsQ2#yi-Nc&$u^Z zm*7Jd3P&?wYX)HqRj3DsMfuU_-6>gE@qnNPrb3^S$d<h2j?Z<<Ba^iTmxW$%y|7PI z58kRVvp@?QFsO$`W6Uyv^I^P66w9ARKU7Lh6AY0MoQhPrx|_~)xDx7!RS`LqL8~V1 zt60n++Wb=MFV{mn4iR@&{v1|fHo%A^I9PVuk@mE4>`0d9X6jQ(tL&6)Qiity6H%P6 zFkBmUpNgy}Q`t<dyR*ZZ91)2Rn$HTMZgayQI3QKWhXQ%r;&{{D5CdNfw3<_T4ZW=F z=4=WL3*ZnlsBiub%~Cd#@8uv$1Yvga=|<izs@Ge+-E{kn_IQ}SZr$Ux3u)}L`vg2} z_Z}~Yr&odM98x=04B&6m#S+YPf<F|RzO^GruRG0nmJGx0gs2Avb)J<j3pxo!h85di z>8=)1*Nf~cI-YyXp$IcYdo6x~)Tba8RE$-YNbOijFN*hXwoi=;oCL%Sxi)V|$1)^f zDGI?7DP`UoYAS@N3ap)wjf7;H*nuO!p%U$C$z@P`AORAvjL(PXQdZa5sg#tJ6rAcw zXKtoyBs--3h7JH~Xx{LyVw!d4|CDXy3Kj5nf33NG!KXy{P0H2tJ9gg1;{v`N9xmmv znbno&@Gw+i?QDyfE3`AJ@!p&EsHQHIMRfDvj)&2ACTa^=H=n=3XB^7IoR>J7$D_zH z+Rb4y0wW<iijKN2W|ZOPX^P@oj=y+^#1F(#mhxqiB$e_#<?6Z%l-Jc3LHPoX-3?Nv zkpV{4)<jZWwjw^;wHQkUG_-G(pN1M4wTAAkM@t$}_!%7%T9tve_CX9S%5nt#%M3R? zt*G75Qsu-5QZRq-qr?wQgVtw0-h2D#%%?8&u0MAX%t!ByZztF$ed~R6D``0VUFg}L zhxf3he*6f8N_5{$98VQldn=0y=I(-t@gTH49VU98iZbCbTONZz(GDg&p3f9dnwIob zu;E7ckR%XQK`3%=&4Mm)A=4fcVh0Jcpj01W04>M1m3qd@FzpK=ow#o&_noZckgzym za1Aam_StBg$0z^ZvPEl4=%*FekpK`l?+rc9syGdx#n^p5m#A>W{ZNU1Ge?8s$=t*C z2c>ouAarVn(S7%sQm==KrIl}9I9-NNe&ftFw-<z*Bhqo-)k?(a{Ja~k-6+%pXGfE% zOBd6^lvRG#+f`?iR5M>GPt>Ix^6|#Z^OnCCQe?3@0J4nm+JX#}xoQjpYU@;uL*{OQ z&!&p+^{FWB%ev_>W6OH5S_S(KUA6F}lDYPmDc0O>tW0l8y_OCB<WE(U8LsSkU%1KL z2OhB}4WrLpsjU`b;`9;?(=ZbKVggw3M%nSGV-nqXc|q(|2O*dO=0=$!A2{{>N#zzI zf{NV9+ZtymRNin+qck}4;3PJw2my)L4f4EVx)Cx209(4-%V`H67`Ir73t~%V7f;uy zIz+nq?sV2l+wk#cZznSi5<nSmU@GE<yY{!#1s6Sl3iazMJOC})jm#A!*q%l0KD8!K z>%BTFh`EV3_a%f@(K>_GS+vIoF`~B;t5a;u)tE;tzh2V5q7jE++-+)m+ITcQD(Lm> z<>K0>J~K3g)7zaUXyue!U2~d8<7qkKFbeGVapkYmk$ac?sc>OpbeM`oz_6cRiy6J4 z9>>Wx^f!r)<J+k0pA487cSH^(ga8Km7$-k|a+wMVr9lgvefF&FUVn@!5!|<@aSMXK z8~ONTlauE9D+J%Y-vhqE3Y5sSYl^UkP>I9)hD+lzhWcYq-hH@#?K{J4dVe9dHssmb z$@l0Jol3&a`+|7{KG`PCMw6;H6!A=?qd=h>JM-|szwghxwi;ia`gBW8Arry@k9^QA zyC0hd!MbxlqvFkm(!vlS7j?OBAr)cJ!Fr}w9(63!;g1>^wdrNc0|cFd>hNrKe$?hb z_FDrI<D~#l$Ss$W7nT&>QZc-I=@={BGE7nYw7$yP=Q27S)g%>QilI8G?4prWZ@rcl zQj1nfs&cef`KkM~A+EIFGTb29j2vw8bVoM$!e9^u@+fa)AASx}!iOTaY?ixC;{qM) zs~+fT^ABG}T1D83m$!_q->J9$OfZq&X-qT&)juVqIZB@<yJHlEGnm8r1_Cu%C(mza ze2nlenVr5tsuQEeXlw__PS>G`rp2e70KP3MY=?tbido7Dqo3LT_MHeuV4_0B=Vk`m z4#BI*s}4_Xh2kB*hi2=2FhQ|#w!(&TZNGX5{wcXy@rySPCM-mh%+0@bJSCyPjox!T zWaM3}yI?}n;2sH^QJaKRp}AweO5w+vv%ZI#FIq8D#OL|wXl~StMzwg>694=q`}?0t zVR~ui;I{YzY^=YR5zBv(m6R~#U>%naKZ=j=->il~aPvYLow%7TdzD?gQ#Jmh;v|#P zIxpNGKCL=i*c^YFmu?+jo%~)*-Lwe7pf6Tm>&F(XhvntuLdOefDb!7-;I+rmsFi!~ z4xrD>^p9Uwp#1gmkoYw7-{&-UpL{G^uLZ^kIRSW9Wm$Kq-uY2~^3jilPswN^C=z?p zp^QsLi~SbPPjKGBsTzVyWTctTz!f)m*D5_XoSB4#@l!9qR(g$y5nK}X{DjC?V%rJi z-7cE(*M`FDKL7RSq2+{%UN|GquAS)m{b&~-P+*z8n^-;{J}SP7%S>N>a6g4XmV|wm zy`_CJ^BMh4(U0eY=f3X`P9f$7ZzfmUnInQXzzxOm7{Xx1mQxUjqfg7?@7s|?rK9og zUcY|~CjVRf3w%o6az8BrJ14vo2_dyCl=JiT9V5EFfDp120ssiWKz>|>=b<Jqrn(5z zT%x`4zpq^m-3S}V<kB7}h-R%5h`cJ@Y{P;5z(O#!Du9awJJ>7bI+b={+$*l^a<^QA zfxsWCLp{uy-JOqzABj@h&1Q;Pz$;xE574^sH=F1qy7H|(nteTjXP|0akD*Jdn?(2d z5Ada(%IZJ^8K1(#DIVsUkb5{6KX9}Pd(CTl*IWUj8Dwb*h;X5b4?V8{NP}TkEuCgr zr@ULjo_sCEfu<NR(}A9CrjHQVw|ZT-TKn8a8_@}%^+xY5<vbW4D3@+m&U|3^1@4H^ zC$nx+s#6W)**bU=z23fnn*P8VEste;FUve&J>^^615#<ZT`1`DM-Rq8s%KMIAka0M zZGGzz^-h08;Xvdc4Uc7rylJ|>fdH<<`i?)4-Ar>Whh#Q6sO^-dz-?z|QDHqK`b#Ta z*!W1{;OQEtG7aXoLud4~<6{OhW`@b0V|oe=_^8=_mxBCh)q<I+C|Dc4w=*$qD6`O+ z**=&wKR66APx$xb!<pXZH3DR2idK^!`{8dvK;NIjz_&@{w`avaE=hBVzBxqiaDJQ# zJ9OVT-wvYJ)d0K<wXJzwMyAyd<}TzHQ;k2>r9Q*g!(0R70Ad7_f6Jw-6k#IK#hOFG zJFd|qdjGW`&vwWkb*5azo3NsW@7RyDhAAUvfV#rr`uUsyI*P4qh9sZQ*{LkE>9m!C z7&WW{GSl@o<SOuOm3u~d?MM5xl-lCm?r-EcQjy(8rZ&7`lOEWY&?dJPP~CN~g9~2z zQ_+~?(6ncC%4qD#v_ji9>UrO0F#fzmW<BdT+$HLo>n7!&cbYmt!A|3Y*>3BPAJXS6 zrj^H+jK=X_Ae{f$v$T<D=picyzF=8nY<BzaFHki}Veh)}`U6WBd+sa5#I^<LKbP^> z@napl4E-(40~=Pl>rI5qjIKt)$ZvJH=pOmG<IYi16MvT{{w-I0S+#qv1;p@dQhqc4 zy{b0ZE{WPfGn(Qq?&zngN4|Hgw_17le%@SnKaf5`n1NfHnQ26LT`q52gMk}M6bWE* zy{yak)~>t}o<z~4q-;6yqy7F-AmqMB$_E(Ybu|qbo3(}Zu5TlXBu$#vdNY^aOO-k? zrJ6o<^#zUd#}2!lM3#0Bv6)`s?)uRivQvA!goUtmd7|v}PtDyug;i>Yo|v3?;(i)P z>KiCGVhVF6;^ClRT@AquCGo8Rq+|#ixeR`&P!GEMr+wJeciQ35G{0`hd|^-xK)>2@ zy9bgp{CdD$cN@&v9^2t-w3P}|tr4^6X>a4Fd-^XpUH9Jl4G&v!J)YX(>8ofp<F>rr zYJ{_~W+@-D`g||j`yijuMV~#tKUg>Kgc@SnJG6mn=q{gX5o!ZJ5v5$HsLPY{4>Asr zc^32fSuBw_VC1(yDUFEn_Boz9W~ofS|8V{b(%r4`klNmsV*|d@o=5LKKhyub7kK{j z&m$v7YJ5({4#q=e%xx)_XYMe{<51-rrjuYoUsC!^X3<P5u=mZMM+fRUjvq{md8j0( zMwoX^F>uj#rFPCm4*8xL%JO|tv_Akr^L+NF_h5w6acM-)PGx1a-E%ltvqq)(Rw387 z458&9T_j>kif}1*n62r5{w3{&K*L>_ahtAxzr}k{<4z-Dy`bW3QRRvAl0!S^&0WPm zdS6$WYx(9^d)L246AD>(IA{nv9HC;%X~Z)!^t3BYA|A{sjQF}SuNcpDA%j9Z#)JM? zi>;@~8k<N`%UuHvXBB}HG)3V|RI9?Mui+@Se}2@#SNg9t-2Xhr!B~nsWPyXILoOrU zfG=m?iX>CdOnP$EZ)$q}#r6MDbms9;eQzAUclH@GW5&K4`@Zi>HDe2@#+pQpB}P<3 zNGaW!5wepcQe#b`$dV;}XOJWnrP4m6EZI}h=I8hS{qNk@InQ~{^LfADJAV#*_7yys z=<jnL3}IGd5`7=aK^-EhIBjGzcGt<X{cjF__;S!YFvX{t%a+#O>+KCiF{@o_eFs-k zM`P2l>Hjs&>^ksw*ObM_ZyVK~z8dznOB$hSDT%h~dw}=dx~VT3<bYxb6PE^KZfz3m zE_|_jRZ<8(p?`Pow5P+)8Z_Iqk4VR&JTL3-gSJkOKfa5B9P@_CF45^X=&&C`(S@g% z%<b?4?2q~_TN!M32kyhNdSidS^fS1)W{DKCH4!l`-#@;5YLFFVt<$LMuLg^&e)IYL z4JHKBFio95RiY8p8vJNnD>dZPyH{u7fXCXHw;nhbt%l=u5B!4VpH@M&d)K;oKMH!T z?efXo^07{M8;sA^Gqmv5hQIVq#fR4si$RSE&irXPN2G<5?<cBMSYOys4Z)J>zsKu5 z*Sxk$lk}+D6jr-orULN7jsvhh13Ayn`@9q<cm0^Gc6!Tz1BdvN4rZLT8&!UJ!Pg4d zEc0^M@BvMTQ8D97PtpkgGa2~u;6?mF`uR;M#(jq_woKyzpp!FuUl+!h3`(-95ctub zzYHq+5}D&#bC^MB=EO5>9nZ73Xn*<bc{cmh4HW%7<rieARB{5@db0XULPEreRcPlV z-TWBah7>^a1{0>;<T2s(wgX4QOJQ_Q`H2U<=dZj!J(c1&z4vaA(J{8I^?RB;V8*Q8 z-X2jahN8tQ19?Goo4xcMug^-&<oEXx;$MQ992|YZgp1rusMucnq|FwVoqVM#80o1J zK;L(xazkV0%8y8!QvjxMK;6;rprYBq_Hb-0;?-e2%VOb*4ur--TN*=MvHR%9^pXE& z8otc_He(P(0QtNWU&Gt3!ZFK3ups6Q1)iVyGj3vbVK=h%-u!H5Ta@0PS@2kDQ0=T_ zCQ9W<C6XRhp8;p@H1P0`biW=*?|RpjF!$gkKVx#wSRIEs9YyX!sMM<C8j<aWI?mQn zSR5EuBQf^(Q%>sKsNeit)D9)ot;ZRDre<fik45{nN3(x%Ea(;6ia)x!eTe@u`9f-8 z{K*ze)GhLGY8#<hnU9K@1R9iTiN(>=O;AQ};d1Ne6^(`YFAGm@jQ#!v?e`xs=>j}9 znAHc3XA7T!^1yVf3Fyo(+(6C%3k$#6j{bLS@3*R(NY}IvO1FcLR40%k$~pm4x~ks5 znEPv?(^ui|geA0e*Z$N7G9|^t(v-w!|46-Jz7|k+2s$vlban3qQEiTU`S?)tHq4%7 zNwgg{qTXUU6|}l7!kcziWfKov2dOEf0}_9B_Rq;oy9I~PkA+BCt*9w?PTE5!+HP1; zQ7KZlLH|4M9FX(k`eEKoYm+V57~rZCTDCP*UHY4eR!8ct8&)iCy5Vg#=%d{V7qREM zxQsh$mGkx{VH>KwN#om=sbgHTW0eyeW9SGFnyR+7O1lwtsiG;Xa(4U3WXA?^Ve7?J zw{2F_K`$a<n@#p;M04u!t^vyK>(Z>5D~G|`PqG7cwd|`|^^J&+d-RnHgN)v-Zajk- z->alI9y?r+BC+4meT#&lM+@`F_h79bAvat-i@*8l0(S?$uS~!Vj#P%rtR7xL@NY)C ze|fx@E)deEoI<BU&_7vLtw}y`W#c*+CC!Ow>O9bBCkAbCojdcaZBMG;E{}WoUpD7v z@VwN|<e$eKGE?C~cGxy`AP=Q*vB@l*eZ@R2@<GitZ&m4mw;$K0okV8NJXp&zGLxjI zdN9A8I>hmxjv()V?%P%Ep&UN*j7>hRB3}IY{lJXV+sN!|>m|x&ND^Fsga0Cu12bA$ zL`Ok;D2aeq+L)BKuaBw}<IsopS*J&bO4EMT8r?=Q;PU=#{c8b)_GwXX(4ej=fDcb~ zfPCo{=jR9=yIM3a{A!K(O;!VfDDb=X+S>HgLbNe#81fV26ccMfI`U^Tk$&3L@Af-| z=-<8D|A@lbfq6*y0HE~WRaqI1@VhZm=B(ceD7BEpg#I|6oAuQJ5{3!SQP!io{yg9Q zccp?&PX{}mYHg=;5`P+5j;&L~I8M^Far~18cZ87x*&l!WaNYfPTq}9f9q=DZxpqa< zvoUq`pHVoq!?A?pNvgGzIr#w#g%-y@<1hG3{hUB=EWO%mw7~-5?W>k0NIENVvI1#g zUuA=-Rjob!QvggIAgmJ;eo1ZoojL<0YOyE+4oY-0GR{)zO(iNjWNF8!-p`OCUm4+t za=LPqwsG(}vFZ;CG~Xi=B@XlN7a1Pt$<jHd`M5+hs@VGaF|DV0=Q_vmx^dbg6&Ts< z>FaSb+pQ^Cw)QlR&Wk#~9c?TiUhmb-{r_<YdI|ckZ-+mv*m)zt;BDKHk3HFX#|__i zCM-@ozH!{><GoW+KHS)N)(fPs>-x_6_Ia*VigNCpXQ;`+_Ob$pRD7DtUQunSFrvY) zN)a+fw{lm*NsF&9ZyxB)F-WqUf75pK)02iItHlrIwD%hhj=|>3xw0&K#!OPjgpo>y z_^wg5O?*mX9(9i#0|p$ougPu5Q?*;KliBaH`&ROn-#->U_U0O$+4}d_kHt?<&-l^I z4|@;hwgE)O^d26a76zwy7s<GmD(=uu^a6mmSE&jiDm*rl9P3{IDA*74($xz5E6!<E z6jx;E-5#sRG-`VV8Q!5bIUHBqe*r`b1!EQXTf)QwX~Jr8vA8`VQcP@Lim!tROkGxE zb25`&bzx7)rRt)6v9GHy9^lB<6iZr=Ttpn4A|)ky=ZtHTrEBvwUBS`u@IX^@)oZR2 z%<nHmp3b}u#>tQEtu0SeEvc=@G<{QBnH!GnvD&Z<BTaiT1J46hUsd=IS&?$kBiYgd zXDSZ#pY=o?NxT4I46EvdFzrNYUBjJ;k{dU>R^HsW^`C8LuXgS#aIoIiAf|`FpQsto z<BemumfMV@Bw%-Wa$gaSai6J(2e1J?_C>+In;laXr8hgj-hO*?r+M5r>~`UmFwj)G zy(@q~cI8n-{^N0u-ZLh!sNe$_3$ce}Of@<|UbSiL6ZZ~mx-T7ixv9T<3k@$#yy^tA z@;y?&2TdwmzRnc6%if`ETIi84`>h5C=+RGv0|WOvSWt}#T(M=?Q9P(+WP8NW1Esjl z0?`#OQ4Ty~5rzdK>=fXzFLHJ1p~Xh$7;R+~mtE0X4InDs(dDzIR+%b1tG0K?o(J7| zfBaL~&m>W*W7=D_GO^Urlcm*EG?&%<#ORWK2&~2Gq&Z9!U(0<&E<-fwk0W(FBTK|# zBxriU)hv;YaQ%LVX;9eM@%2`(QrBGb^Zmb_;Kk1zMC;O0u-Y|m7cRi0WtQ*D?p`V% z5Z@NZgTwgGk7Q4IqUgXRxD*>e7iBRl7x(OC1T1|zf8gHwROQuww{XT28Cdf(i#Vm( z=N}~vimT-S)b7`-Fw{p!6kM`a85Cji;i|@LoKG%HJwIC$XjBvPzkgPWNy|u7)p~HU z?`b#(+T+YJZpMuucQAW4#4C)?>TVXO5)e)Y6MXV+D2T)K^+>LO1YrOoH)Nt}^XU}v zsZ)iV$?Q{8H903Z&z7&F6k~FP0F6EY<3d%T9gJjCHo$}YFVH+qvO*NpWFIkI;xrgu zRCB;0i{<itgpVq6kgThRWQx^=fbBO`Upxy6=r+mYD5$H5M7m0OvK1|-X>Ipjp>{DB z@|wH&8><LlfrrEKpoge?_qW#>1F!-G4V@j4gWeS@7Pib(eaJOUZOQ0DVic7Fd*LcI zDb%?BTiyG%>Z1cNv*I2FO_Q`9G?k&1azTc}&p6Qn3V}cv)p>{gr!D(utIXdV)3oZE zd3=<!(OjrOrK#Rrzq8Fgv~*lwmLeB<9bYw}IwAPtC2V_=G+}o2*Sjg?GM_CAn21(G zO54zu8Ql9gK(*F2)zWGAl~c9x$TDqby+b3JIfsFZ^j=kel7s#v^{~v&S0qwEvmU+A zt^Z{0t{U~W{2ucf(=wf%rzHtQo=(c0X{VhJ&*F|v)SfICfh;kDdE1%_wHR|c-lemn z*BrjP>()~73DP~s-kH?3bNZAFPN;?6EmXP5@%7qmsz*I!(Qqh8Z{OPhMae>#xG|)# z2;-r}Ixl!yB!<*SlXj#g-l(@F@7XUBHP)+Y*>n;FtxQ3mYi>fB-Sp`4$wm}QKtpd3 zgNqrvVJ3qd%a#g7gUG`LP{<H0-4AdQ-BDVt6=>oY$bvb>zI<J<*2KN}-r#7`*L@?l z0{IH2+@c4c$otc_-Fyk&&S0dSZJck@z_PW^N4@_VV%4>Uz>z&PzUxB=AAfn|NXC)j z!O&K=D3<o#r^-(3WxmzDl`^B#UF%3P&|66k>>-!z{RksdP(nF@2C1j}!3WDzvww`Z z@^eCT?y|^Rrawj+%xQG6-io85+fDO!aMzx8tC1P0JEAv92#M@O{{4fFOt^-=_5B%H z05>hCjyp&6MbaH;TV4IgXTm^Afk}R5^rYI+U0{A5N>TWr%K<}tIJ$Qu?YteL(?yCQ zfmm0`qp3RKci0StD4AW-umsRPYM00@0+dt0mp2r+z-oUjwSDYhp8og8CqI~7{avqz zSXB}Ko527AX(HPm)xh+qG89zagPR{-=Q5qmtMv}g>^SCzcCU4ihnU3Oi~x&Z$`M{& zK799w4z+T;#f^RQvwJe9Vexqm7knRp20bN4JVs9w3_yRW=~TP=*rF-(@LcG(8WA}L zwc))b``{Sqb=*i#?&reLLd09e>XC+)uKD?++<iv7tl0z<fluzMXdT}rB2&R|^9b)! z`w?i>{q^u-Qto~D_?kbanS$39zSZC5>U7sza%7XhHjX>6=DhKwF~_BTHOavken<95 zp>^^dA?-GBL4RR6m-}u)bPajk*NPj<*PnFkpvsxvj3HJtAl<7rkE09^BciE_Bz(DA zDi2ngl&4^s+)>X&u2!mTnYo||$cK=Y7ykxhTzqYvm>zKo<f7StkG8L}F9R{wp;Kgg zq*cv_?<uUF&wGrXG(KJUai{n6Jv+LC%2uEc(<gWwV}wx|z4v2yGGURUY(F0K8}2_E zGF^A0hq7vz7(TGR$SprIu6K0(k^GM(72}!B++!we&j-Tpi>Jbcnd{Fhw|?LG7p4aR zeOMvGG$ogt>~>Z5aNX9QogcfMqxd<_+8+)hr;+<V9ofh@^fuXeYJAJL(#1clk{%Hf zZX7mNzHpOU{`{fzc;3~;zl+=hMfdzu9m`$uR`<H$e?BDp-c$JZvv=FS6a|ENZ0AQc zpUbmWiHP6-xoWS&832wUrb8vR00+Q4WFa>^rVQsw+b}o_%De}>7{~w~mH?=+fR$yU z;#kkqNJX#;MEvNh3ld^07`T_a;XZ(7u{`ji$BcCDnGRJXPq?e43^ywzuJGojsfvBT zKY*@=_jyL3Qr_|0qW6iK28-K{zlZoF26d@}pphc+?6HSfPT$=v!O|zkrE!l5#XaOc zDPS44sp3IwqCBzC40~L@Cs@I2h%iLk81pReC0&>sxhzv(J|7d9^)Q%%o1mDAV6r&+ ztShqs-&7bdKxX?!mfQ6ysCb2F1Weqtrdg-=NDK^rbOj96*@M~avG>BgK@&O^A-aa{ z=)hjplwmZhM;dx3RV$0d<?Bv_7|yB|tAplYG|WM&S>OTw7O*j&f%x;$Q1_FmX=SE1 z47~(_Yh}I0Z0oFxJ)Sg;JciIB^#769i~%VYHB*CUU8T_To_b|f`7=AzuJe;!{{sNx z$gu>!0lKPo?}68)xY}Oxdza;VLaDe(>WT{-&#?)kss1Ct{o$B5``|)oTfh7QIm|g= z(zzc6PQx@^)w>5AHq?vDT6Fj-+Ug?)$}SaQ?sbzPwSXzpL4HgTuyK^J-hbyDb$i0= zG>MPyD`C5Tg#|jPC}e&3n8!65-e+RIudQQrx9LG|TaAD?s#)Rq&%XWbv=47SzxF=# z*)O)*(;l=d6rhD+k6Bdhlcn;7fpu=es`!KZIzR90Oc9UnRi+;>c6!@157P-R#r7OL z@ayw|t$m_>Fk=sza?Kzn5#FlsHl7(sgnbEh2oD>i84nBmYcjz4-Z06xvK|K-zkB?1 z4rgYB?;}#N3h-Obd6IFCrIP{D9u93W<IKS?(Fvb{H3vi<)g$?-1gqDk?G1tHP}f@S zG!h;ocg<Uuzo8M<d&Y?_;RBrs4uIajR#u9L54g5ll`7){Vppkd3q#6xfnt>a_+8Gy zljL(j5hv@k-0L8VcN`R$Cov79{CEwppc5{`n1-q36)oBaNURV{M!BmMQeE#|QfYr> z@MDT&T5GoenYw~vaTRY7kY<=<#aV8gN+>s$nU?U02=yw<gx7^Za#>)tj-%HK+3F-S zvs2qJSzw&^X;a;3ZeDQ(+mo^)cHkZ}_gAgPAptnx5U?<WSmo$1>{Zv7+p+#E*LLPS zQB|4F?Q*7r3P9`y*<JP$&JK|mPwL3Lge>hj*hH-XD$N#9xb&J$41VsGJX6{eDZY}n zVLk*wgXcsF;fK%dMbmYZXTmPS4)GQ!us(qSCOD?L$3p2fk*TI^P|b5VR24u0C2061 zetJL#vXJ8_C5w@ODIct^%9yR~SB9mt^{H};J}|ZPh;tT@5|FP`FkAoZ(3%FHG#ZI{ z3{xA{O3~q)jzyM)1vQ98HCY}&YjX+wh@dhD1)1qH1i%6jRbXAy6!5k6%6@6cQFWLM zG{AI5!?>5gnwp0ZAzwQx^uEMXZS7%Vwc6bXs$^EixoTL4rdxDP)V<lLcYmpRfS~J{ z2r{fU$W}&o`pXkw@}BNoPizo@2cdTA<roXhwQIO%1qGZej>%kqZ2iVdc8{q~k4W7U zOgdk}LPmR3shbz^;CA$*m+t_4k1kIWI1S124xEkzOF2709)DNo+*6oAuLYp)Do`xZ z(SIQ=V~y&*>o9CP|J?L4E}e#FDg*hDsgu|VPk|=?t1)%{6=%NtI@Qp;r@~o3Cy$B@ zGe~$3NLgo@4>86D=ij-P67N#w`~g1a5k7@>Yo!SHj??SI{`l<hxZKU^8NgH@)}Q=T zf4HYPrwH~=tDDK$s<iMq#IQOZR4Il=Y_rS~VUwJf<daA8JYdZ5BeQi2#iuuy8V;*_ zg6N|X(r<>yI?PNA$XCtGt{hp+crDGON(g1L@AXKfL~StH+z%52c*^xf+r@8Uui>m7 z&50v*5>yd;>7zRAl?049q_oO8y5=wjL<`J$;LjQyk_BBUDzZqgudWBw(-;3dGipib zF>&Rm0CXt@ASy?SOxj#wDtYuMDBqYspc1K{es>b^{ymR5egtYry#(J{VF?-9c+>*2 zkZ>5}?6J{46!MV$MAJtvYzbSr#C!-?`8a&<AC#cLuPOOSx2v`TfQ7<Q+}9;y)C=5s zaIWr&DjpoKc|l0$^eQ;cuPlj~#dy4jtVbRGxeRL+I^3vvfxOJ=&4ZJzVx*Inon>hz z?LBhsjn(!rGAqX0f^TD;MW~;b?v2?{I8Z3g@2O5DDFiwYtzG~MJ+H;KtFGNr5LwxT z5h%)VBqgZeT1<)u6&F|=Alsvw*)QLyp|Wp9gZmt=z*kq8{iqKq89xlrFzPObltNZ? zDsP*;fOPfs7N-ZKr<*)Xdg-%Rk!Ua7PqBvZ^Dt|^%_%;@^){z=(fDPdyh3!Hxgc$3 z#njA9M+Y);b(BIhbBt-GRAX-&2)!9iwm4>$WTrwmjCbY33a|I_sn#jRJ6}MO!;cV9 zuT}3c`%*Ft!?EE528&rpKIiC@QFtEfaU$1VWR<FykHgbc=zMcH2Aj_PoHHt_fB4os zTTDF8d0!kD4?!S#Lpo*3qeD~d!Mt<ks;eGdtA#6?n6Fmo;Ci4Ce@eHzo+EjF)#G{G zI^>|gMj!=4hV)e{G9dqahiuico#OGHXi+i~PWtvlck_cZaVOo?&_7_2T)gkT);Vp+ zg4w(6jHu-(<el^!NTk_pKPO6>^R0{znA$0$z}>%+Gv_z#6bbCrIw$$AHsDkI{@lk% zdq+u+rJtuD-M;Tz<KbJmgOus`5IxIh6i9xl$K=}+4Bqj_thkl&k-B=|hW?N6W0u1t zzM?g^8-)|W_bz<!mZ2u_T&eHk5~8}=?ho@xK9VG?z<BAK6~Un{U=T4Ri2D8GsOS)} zibF_m+qkmEMp?I*je~pkWxRs@JmzTCiJ;k7!{Hk{HK-8Y?zuQ1(M^T>Z$F-xd8bmH zYUty*{WK7yyhDlQD0fv%a@4rJ7Pcez`02M+*ApFVYeCWJ+UKWw%vM)bW~kEl-2ny| z_u)84uf2jo#me;PBa8<mdL+ffLBzG~rb15CTB<ybkS;J9QwBUa>LhRYA5O0|C-T@@ zMsxecI031Omcq@_B~2L-sCG^k!F>MSJBhi!6Z0XOo|8F%<eM^S#)lnc^;~r}63^S6 z$h}Ncz8jb94$nRBWm9XFa|-g@dg5ZziHxuaxq50&1X_dwGm$S4lQ^EBPt`fKzERq{ zp03^~lA4G0=Va{g%6YZ}d`G+dd;RJsw1_EH+;#b9JD<GC0yqJ)<32(l%z2I{t9sFx zNyy|+>nsM;r>s$yLG+tvpzF!n%+8YokXQ;8Rb>Sj^k4_fW!WH}uZKpg)jmJja1Djg z1}$Zvg0F5Ee2hvwWFnO)+0xk{|GVj0Dv{)%k#{12!8RN|E<3{~b9Zb4kz>`8+M?_Z z#({dn0<=t9FB4_}S&<*|;m>v$@D|#dle#iXQH8X2JG|w<qAZyzX+0!HZ|nM&^xxE3 z^lFd%DJXt%NY80V=5JjuMv(tIsn^avXbiLi91nFpRx-XTBZ=R*brCIbYOy!z&x2d{ z;rej*?IZwj_~tc2uD6Lh1(|aHJnFUIn?=K8KqT{2p)1wM=QjB)?3YVAg6=&e@^?51 z3Cn{K|3o1yK$FHrGS)#0odK{!M!ZkI5O;<LIv|Wek%8Y$9_&OFvcYr$PXa>u|9xG# zWv8|*+MoJL`H|cZE%jrb){s6@nc8vf^oOtAH1mY9vm`}rLCsZ?Ox*EX<NQr0>%`O+ zOd|;29HtICQ3qX1lBc6vq}!{gO?v;n9NkJ7Wt+7BZ5o3NDF4>uK*7ik%w3bI=H#y; zDP$7N7#J}yhJC2a#ka#Uyj#D1Oa3Y^0GBrLs>vI5wQ#v25-iWLdEb3}arC0ynXh(i zR5a%)8V4*nm>1IFeb{b_fU#}kr`|n9I$Sgh5ZDdDT7Vx$!$6C8w?FLx_spNgzoIM$ zrFW+a0X`UL4{L%^5iF}b291j*Yx=YgD~h-+Qd|nH^Fy37rA@*|+w()W=PJ`uC2R`9 z+|Fxx*7$T39NclyD7e4S=6v|hQmdFRqaEiXc3<7bMoHQhGCeD|=WF_Q7Djqs+g<K* z!S=$T7gyj*%wvMQs6Dq1U}22Uf<t?oZ6137T}2H7WXO~L3w9Te1a%!>{_>*h;?V>D zodMBO_QkB=-ZZk7-`(QnhhnpD=)iDM?8axVUXN$wU7OkhWD(5_F`RuY^7%E-Yku7& z@lmgC1wSa-Qkro1?VXrSRxc#csZq|p6CV?ncI4AyY#8R=T}soZr{&u(ZY?_*|MgW< z#H)K{NyisI2C0o*a7YKip%J~n$}Cjkb8bo1fh*Ba((j+kQ?LHJdgjc=28gHgLF{A} z6vSc$o36{KW71Wq+QUZnc}!9ZaNCpGL$H|}?iHosJ^RRR`Xhbfo_}iD5rH;Odr)pH zI9uWdt|v{}K#dE?otPVWpv=a54XB*ce>R}D#Yd%Zn@1k7eO)+E4ytFGhMd>Z`R#<# z?U;M^$Vh<q9x{2T|9r?WQv3cTrHw|9#X^NyyJk&UrO5LQ_U7lkpKe*7d;WAANbnh^ zVIQAMwHq|%L&$l21MUFMc?O1;Lq?rbR(<UAe5cL)==0q)g74@XCOtJvQkSqx&cNkG zE&G7icO1?upy9>KeKC)HUj?0*|Nc@j;JW(DVVwUL_I`A6xc^N&rRP;ddA8r1$m<O+ z-$dQ|#*kAgVa4oi^K(rV-G662p<Gnh<M%%P_2F0VkB?{X*<X5(agcmWr;<-HjzdnF zoe~WIE}g&{jtRNsUH;=|!S@v<`apOlN9_tf9&=Pp2?O}cER221r4jc|=DXD#fy6@m z)!=N?g+pg!#2Q;AZ~??e9R(XPPxelgomhB1bv1ipUfTT74_r1~RpA0gJ0n30ax_N- z%wE5K^UdsyrXT)n>yRZjvbDsow&3UylCOwf36Yl}+kE8h{GIWfeG47GofxE83NfkN zEyMMVw~cOez<H5r!*@%)<lTYG_m|-Ug8pjww5VInT#HC>Y0-U5zs=&iZ%=8WL9726 zQc*<B!c2v77wS20Z@EEC66&_gt@l6P#yk!B`QE#eFQwy8S1boYm_gp8%fTIAEba;4 zuTPcd?*BFOX%|(2QR7cLF^>LKo#H{JAN-xQvzGnq+sN(%f4{$uc$I#%aqZ%7&KsLb zI+7^6Z9;Q``Em0Pl%aye4f<|Hp_A&D2olHxyg71^ip&dB9EJl)wg{0X#WVtO8k<(^ zB(6HpO-^JdK(-EGNf8(xop;tCZd@c-#_<(`EqMXh2YWxljkgBrpZWg%01F{Y%ujdT zM9Sw|OK#;c$bKv_Vl$9qzwCy+eq%3yAMaE@lAjs0Iw38<6rd3yV%mM>b{@QxA9D}o zYIOquYf`K6ll+|cmQRXiwUFGB>d}ZmM;#yDwOv`1=t+jW68Vy=vtdDgr8fkB)|f(` z-W}fxOkP?8xQ)SrquHyIS~OXA&mSIO7yZ866Kj(EbjbFwlRff1ZRad<3W{1=J{!bb zH$+f-Bsa_$oIhV8;B+5D4;OymNTTumK*RHw9>;w#!&Y;Qofx=q4+e1A6K;@zMU-IP z%FUs7#^jv8{MkGr&ybhm?Qg~w<M&JPM<Iz#L-0qtsV&QwcAsAG-e#)Zua>gJHcMv6 z*3TBeR!Nq)Va`=T{IsKr+{kNn09FBf`J+iCBzx-Y4Sqz`QJ3?|&nc|Z_?(G;CgA#X zs=?9IunYd=HXy6F%A$2<XH3cSa!5t0bPdo@dj<E4e&YHb6Wj-55y}iNT;CZ#>+L9( z0`~~1-fK-8O7BCl?=1swQ)c%F<oud4R`E%$DcEG~yOvZ&5tY*?o|%BR$+>VdzIEek z(AD+LVJPzpI~eeBXc7`y7@!*Zz6O&^{qIkBg4}^rtluD4L7`y#zUk1%)*b$jj}$eR zWtYQLgR`{x7VLu%;-Keh3SaUt+3EXSRIvQM*A=_LE7lJryks|RU7TXAS(tQ>OB(7) zQTu(1g&4auASzD<N3mCvwKv%#CNPZNOGm^ul?Kfpd38v7U=tOV)DOH15!sI%L28pN zrRF$Y^YM#G<ByDG$0~MR9|DY0^(s)V@Y*kOH023-2Dk}JAALr%a$s;WaZhncwZ-WY zK=!}nD6m|6>8#1+V8U^C^nmq!znC$2a2(Z1wRq_^z~T^Y72h{VST5d3*kqNq2(q!G z!7*E_vXJm-*oVaBT(&}(%C%a!RwFIo?5mVGpvcj&G33z|&G#z1FAe&(nI<Pw@M2C0 zMD{zn&Y?iFNZ0kjgO=YejntQ#2`Qo;46UEK`I!ci+C&e`Tiv^t!?!G6dV1ROF);Y6 z)Te+imr5Acn0Vf@x8=pt?1a@ymF$aNb?m(Be;n0^x|9u4erB9YjI5$59`elX)FBjy zOMDpG5`kBJzIFn}Dh+4<DJXf_+V;I6q5@FugCZxoov{J)R}cfL(H_RyH}lJ)4;sBy z!;DeoJ}@BhSJB`hzT+7xE2Hr{gEaKx#~nd;G;F#@CfYU><rBP-_Lm}*e4g_HS5H22 z;%VuJ{2GB3)Z~Q~LVatpkmb9wI_zY{2c*@S;L&A>J_g{dE-Q=IutR_1g~0aDF(#xd zG1*5i-?wr_D(K(r)NXM=|A=(v>mi}in9H9Hj-N=n&SURxVYj?%2CM_$mf2O=h74nV zJYp-wm217kHs;;W@r{5TG(KU+0b(AHLT}1<m(BW0>&dhQvoHKok?g)tRMQP=*&X+6 z_Mp}8*GD_gh7C9*MfAa}s&<v_;59_HYRkV_zH+?V(TDhasn=aTCSY!9++}BJ-?g7t z67L%+mB8r;VpuRN?bxFD$l8e`9Nxp4^5Dv>pMR!k%I?Swr%FXLR}EmmICVB|d~s(p zN5?@q>GjhOIfSLNwy4Zr*b>L@Sw5T4^Ahpn*_E~XR>@>?9@k-5W%6VxU!?@CDA}$W zEdtCeH(fnFe}In6!qCRVtvQaXZ>=%u)G<w7*8Hujf9LmHB}UU;`1}B*2k-8@P5)2} z(|+;y@6U~mm^9oVD6?V|Qo|?7G+4eY2j<mDo6%1dW0-Urst;s)%@8`-bK#W=nns~T z<16aM2xk`JL_Y>2Ap2#2{WN$mmym})Fxo%t%0fjpqTFgkoTwPTL*#oj)B&y(|JFfs zHu7*ICVL4p^%-9^j`W=prL%|pD#cGWFr7AN6M0LxCS#FX2LTV7Xt8l@Bb7vDnR$SB zN>C`<-6AhogxAJ<P@834IlLo6k`j!U{v?uK6M0+s=1rsM-z8DIgHbobss{w8{3}Hi z*kDs1!X6|kE|XP8cKcA!ZTc4y7X5v=DCkzCI>1+57N?m=bWfu814Ujl@KHt}{S&OE zAySG5b25=S7$bEi1=UIWhN_c(#xj$m5+n{`m?ko3V`OM4sD70pF(y(UT$XbLi)iGl zRlqa0%=IR@hLLR?K<Xa-s0So2Mlw;t$i*N4qEPPfvcgEd-4iO}iXpp#DpPD|!e>u0 zjB}nXD=nKSXFC!@$`z+JBE%LbN(42DY4U*(%F|U770Fl?Uq_-fkD|6+Dq4U>t4SX+ z3^g5Jkcm~ZxvfTqi`JE|t3E(o5qw3!#qgA9O?I07ZH=H6ji0J=jDywY<)U-LhOX@A zhfoA1yyoc@Ep~w}3L<9(SHBa;D1{h50WLhDOLA9q%1w2%9YC32ac?(*EzOt%-OA|4 z$$9DuO!e=ZYRNI+P6BOF@W(#~^a>@~1@P)OHT)cFxCaLIL3%Mv7*C+{a{?wOsJxkL zh&*PDJ+F3zifvht@Z@QIgMp3X8HfsiUv8|^Y-%8`Dh9|FuVnEcxq(GP2_Et$(-g*k zVEE14bHm$k=O(Ro0O2C|_ay|lVsaQZuIc^FGUk{{s6J*Y0#`^=o9U5vTG{6(P(Sv~ zI{&;HmkLici>~0wPu$d}@NCkM;uU5#O=fnBo+3oyLop1|Yuxr4Ow!Oaqzb~cnr(T} zEGMZVd-qtfoPdyZOxF^SHR~tWv$lLcwk?e;nnP3g&skg*#FbYd;=~v*Dy4$)a;=%B zXf6@Om)<igCA_V>MiI@dIi(cmXk#vh2E>$(Rqt2Pxz+<0Yi9cKLEAXzy)B|>3c8A~ zeWUzmMF@JKI&!$$IX-TCQzQ6}CzWL?(=(%Ugo5a)0Y-DTUx;&y%mWbPqN~~B2^*d| zh7=?)>HsiIFU9TXFozjI@(`oipD)kh=|}+RS~K6x>qTeF&i93z)L(@+jA|Z5A$CC< zMIrT|He0{ckE^>ui`7n^jHP%QgQsvWM%x-xy|}rf1aE~~cxm`9*HRSc^e?>R5r@BN zxv1>)zAuA_^>U8)S-uIs3(okYq3LYZGY;5E5@RXF=U}|w2odiu@ZML0&*1Nl?;-p# z2}$IoFysBtSxg^d$k8ogwFR1IRmH>_n5P)7nehSF<3IHS=mOuPbqwj~ZyNo=+X4Lu zpIZSBTLTF>5>Eu$C&tGTC(s_ZBJn(j$MO4TF1$uD@O6x8DXL`uM!Z%h;9mOWzu9;O zR_e8cuxr&qiYcKb#*nI8l*d_yXe5kE0FwVq@7!h6A{>xk9!j>xh0rX+{^G$5VKHkO z{*o;lQ2{0f?{0Pt3$_d&nS;fu;QR&=4AAm`16UWlyOq7?pe6Hc!u=x*3}QYjk3np7 z*CYzv4Z<Y*jxnnf4vFZ447Np#HZB#g4sw8BZlm?*9J-$nZB`G@ffk;mZ(gWX_J&C8 zZ}mjNWZH|OXWEXu)x!j+{AAUNRrP7m*`6=rD4OGD^KC4Gbca1(<esH(BOipM)S2vX zOCv1tPOQP5_5w(bWf3~S-|M3)H`Jgf{Ug@xPMpO?<|aLsRq7(zNzj-C9HYXKsZZk~ z?<9zdNZh8yZw_6p#j4v<JW5@Fc0t0qJBc%c;<i7s5DeLxRW&B%<IMp@fU1yn=VZgH z>k@#(GpfhgICUyt*G!WJG8Av#IraEwjRc=?Ik<YO5R=lXhM}Cu443Qtero<_^8M>z zF&p$dgy<jNW#Ir81jl^tRZx;XL$+pLbwgfZ6a5B}UcufvA@XrnzHv@$6Kn3{a}x2a z;X=j}^9i{RF9V-=b9b(#ls&|JVYITCV)Zo6M-_<=;xwz^NYAy@n8d;aKx$Yj&5}*_ zmsIUzq&{}0g!4`uvp#o0CjSZ*;bnRO+87rzeM}e>X9NOQimWqRWpeqD%xXe1Kq2Vo zswyyWQT+flIP*nfb}t6c2|jkBp47^G-s1wxfU=jZbI)T$S;5tsfTFgv>Lg<qS6b%# zS{~UZH33xgs{>e|cbrhav<7fh%Qsjru$caV8QbO0P>d_Tm*Jvse4^0p1cYKp2P|g+ zjPoOE0INKChfUGJjsy}UW%yG27DkbnSahP}qB9zFR}p7*gdb7yIlW$-zkcxnh)k13 zZ3{kf-lnAb(lJA!yimBe)W%PNt#PfRw0mz12_oyVk-FBUmwM58Yo#wvl)e1|t5+fL zUtEp}!{PJG=GU(@qY&*IDx#g$mp@-Jt!E@GpWtETm`p%2u$;SLvqfxFQP{v!v8^}} zjxJOo3lqy_E6R}&LA|qb%gL}>zSv7D%tfa1HK$;kZM8`jkRU5&$B<Zotag@|;-FK$ zziQs@0OcUSXA_vbsV4|VZKVSK9hcxxa*XZu+#6drLEaetHCl|wGZjQ~e9eCo3LO9I zt-l&c6flemqIlIe@<pwM%!Xfj2vzZ{6E|LWHdNkUJ_6!Qg%zJW%0ItsShl@Y?F`z2 za?`x3rzMm`>cQ`wjfA&;C<<|ahB2k=dn$(-op01gy1l&`RNyN}39f#Y#of%jz2$ea zjdRJa@-+BH7p0zehHBU9n?yeqA$F2+b4Mwq{%C7tSKDvIKioJq!j_gl+IIT)okx9` z1qd;HG8v%?m;>z>k~+Gp;5UN_+SKM-GdNyJN5k(<yS_~zxLCS%DV(>v$?op`uI=`a z_}$c6X<Oh4==Gqh`+ce7Ju2LiW|MJp?=JS?k9Plk@1nYIGDxgSqg1y2OyXnTZCmoi zNb%auTwdbt3KUOmYp2WYlDOCmh%5i;F?naFzfUoRfduSMiThCMDcNRs`*teW$x(=P z0`{%z<yzBy!S?;taPS>KbS+J?4Cs$P_23vc{4aoOYdUDkU?koh$hNmU!owI-@ASF= zLmQht68phDj%Y6xQ4dO|8XCw880@(FNWK?SJTB4L7P<EH(c?cugvx<G)XpXZs!H<l zxc!sgJ#aiozzcil5jbtvC+l~gexDF|SuUk6eV~XU_UF$qx!dp_L*@g7t!v+T6Dk!y z{Y<A@w}pyW5snzB!}qhxb^ku6ZP88qMDkd6LkLBCXhet8FZRCInPbR@k9&QF6Y6*h zYm`I#w!DgeuO$KC`Q=E<@yyp8Y!L-zts*_iXgGfQ^`*aBC*Mn_LUN5NqWTQf8(@<m z52{1R5(c4yLJkqiqy$U6qY@J+H%hm>f1#)?CxlU{=qw0l&&MY4F;oZ`+emu<{q)E6 z?vH=}egr=RT#>^+;fbSyN$w1h%M?%ey>Z2@8dRZ3EJGm`MDH)hg+S6(0@4Bn%>n*X z-a6^5lzfMZtr1B60UFdPfGGo3LJ`pvNY=6mb3p3$e_x#M!Ru9|ww9xnf+&G}RH_O( zj#?k{Z~9d?n9P%%upPiw5b7urGU7AW?~O-MH*21)9U({|AO-7~72NwMFBG{sE?QTj z2NRObh1fc~x%XF|#tRWbz<jgDbD%|h+`8!a7ge<5d3OlX3z8ZRTEzbM6iwL-De6JJ zh?C=wMK+d2x0Hp`1R|<{kVix*uUK4t^dEq1v@z!iajF|h-`td+Aj?Ssd&Ma#A9wus zJw6as0w!L9N0@D5BmV1~7Xo2rHd*Dzk8b=74J0Rz&l&V0_~0w{wsq_&=>doa2*vHo z=P#W3b>=O`Ay{notztc-xOC-L_nEtBK0Hqam9A`#qZZ%W_V?TG*@*FT@>SR&AmzoG zf0vSgLp*8S@~%stBz{R!K42AG8+igQMqD>=ps~C+jily&*|n+Sex{7sp?3pKl@D?$ zju{GWx2qnW*Y>Upe0aP1(M99X!OL#VHIGZJkIlY&*nI8jRVo*!=-yI0Qt5hLH)t@f z^78)k@7&7VTkBrj@V{nBj;Xx<>K3CnLvcr2{p)7t^NqToM{Nyn@31}%mhHH6^L<z1 zx7qhmcY3kgL~i4h^sQ5P;3;vv{X^|dpC06??YQF6ar^V5Vza0ZLmkaiPs6YhF`Deg znde@m3cXyJmanfGLmyq)+0{1xw*A=G50AU<EPmwce4_=!T4Q?b86%h{cRRjK4Oi~C zx~seM``5ANsE<#&Be+NLfP!*vyg<jTq3gzhr}w&l|6Ka?=<4qO?*09}_Vdm7i<G-( zZs@BwJ0~Ngm_jy2vsTE#TTTnPBp3hlxc3+`|BTG87yY(M+LZA$N~-omx_S|F;+%F( z?L>x-TZm(%Y`^t6Q^iK+r)=vlwV!hAe@uVMrJ~M_!qYawSixDcyC`QVSj^1idAf_v z=RzO9$j=x2-_-Pysp)B9Szwr>)5*O>kzXz`Yp#DOiEf+uatS^>F@!jfj6JKe`|kCr zE2n<UOkIUgy3@Q%o-u%U{7W|n8(Y%sbY-54?o3so-=UdmIPJC@crJM_Rkm7&JyTm% zbZGW^ZB5;5-OG7a`o%I;SwQp10Drcj{Y%}~n|FWAe!aD|nuEI5l&r%y%BuzDZVy?0 zoogO;(VORCAdYiWnS%gSQrh)({*EwJZ=rp%Nd7ANkt<8R?LfG|{mPeqy~Vq$FQXQ_ z*LvdNriUBf>HvXRw;k^xq@$Mv7_IuH9?^Wxx&Q8O_{BQx!S9J)zAqC|zubSGLrn+2 zI?U-{8xex#huYWbR|fU(;8kJw#wf8(vZG!@v4&Ii-=5h2ocs2)Nr$n$)9krE(ux2y ztUmLwnqPfRS3CGX+d(4xu=tHp()X8v$LGJlVx*lWVUDE3ZoDX~5V%Q)+?oIJmi55k zXLlKsYuSZVFAxEb{ha^#5kecbSGi<y`rps(B5~EZRtsyN^0ph=<m6Sc+y6r;e8PS_ ze|%wmikD_+n-Bp!`}le87d2ZoEN9`@*Tx5izvnVXSTNDr-}@lt?ff0T7x`$TKTCa^ zT3C4*L{Zm&UUNZzz720T`nx)6mqImvmIeKIt-6s*c`Vhi$LQbM<i(@^ggzw42k+IG zN56~7(NF#Rv-;}j#$S6b-CZ`WVvD1tM57#VXar3XE<zX&9!y&M7Fg^cs!YACy`KSJ zSl0u5SpaNPq(MBn#HHxJkoC_$`)H>MW<p5Y)W)#46!P||WR>G1TzlpGbTC@Ah}lFQ zVB-PD>8-w!ATmtl<(AW3Ju1Z1oZyyYyff+FdSy{8tVQ9{>FtcSVs{4a8=hRweEE=O zX_{vzP9Im4W*{v68Lfc2gThW&rNWf!1KT%bGdSOol5xIEM`lS8&PcH>++)67ftGyS zqe@l!;ebn##%Zem6}u0N3^s)!eFL+>7y*Qv$a{W14_~dl-Oc?H#3p&>RoQ6*C{8U; z^enX$a0Q5$FRT=`4^<l;zfRJv`Xowox-6MtO(Ibl;!HiNQYzrM-}c+3;VexVUlvTv ze<{|XJ%#p!l_HA}-zU4~BvYvIIJV^5<>^2Q1|a~zS}$E7J(VWM$k3yLhh@_t^@5@& z$-ll`1r(Lk8<%$_x>Jd0Pnx-pz~x2*U%_TAl&a-Ek`W-mf~O;l{CMtq?Qn4g<33T+ zGia*}*WWp`N3WjzAhUC|+BjQh_y};$H_+sG;4oME7mu4CyFjrep|ST)v`YDZx@Nkw z&g<gfXv%8`!ouA^#)d*ZG0GlLbt~@QnQ3|UU>xV_PQnfU2kw5%APPFN5$3u4g{XtC z1R1B(am<*^)PQWF>Qd0&pM$UN{gU+7NC%Y3Khylp>r|~6{W>?#S?Q$HD$ZorhiUED zYw?01x6@y*4ZkGP5Zs5Y6mr7t4k8axT5i|wY&f*1s}fWn2VC0~L>KsEJJP2(XA!EJ zWh3q7uOD~#goVvse45@65Ca=Xh1-jzNVVT$?lpGYadyZ1*?^y&Z(buQ`uwrcGBxbu zD%WROja<XH9wT*VWJnw0J`efXy_9|H)L}D7j2e16-J2U>-~jA)>LI<RpWS>t;K+p0 zx>ezT)G3pVk0`q}0jVfU!CLVCk*~^Kl8Mkdk$q05-SNCPEpj9r0Qb49^=a>F${4xL zRZ|Z+p-_w=cr@jBpK9kV<WVJYGWR5ZuRWj=V|Uf&Wsu_TFa^+@!;w6$S|RwrcZP<` zF!55^w?63q#MG^mN;7qThTG0`h1-u1Je?#5eb)J^KQ^rp6yHazoaW0@_IcnOPv$IC zp*sZybK)TRNMoR+IfS#FrHbB_XjUfuc-qCWxRkXNOADf)QYbtWdr82<auM!TaEbJ| zmfGz*4}B!^L9{<YB_^8vS!xp2M!H|KTMe?>JpAE$tv8Q9{@Sfc!``TUQ-6_);B45_ z<hf<7k@XNeW~}_xa86r`-W$+0uw07llK?cb{4M)pTLx>~!L244ayx&&o8EQDu#B4N z$KavIYur_A*@I>eew)j(oOK-<7LtGe{&--Nrc)D>@ei`|L*E+I{1v~rOczSU(9QW; zyOuM~7^5KuP*L>YEOm|c_V_Wj^gYIMLFu2#AHQJ;)BNbsCaO%t8V&E49qKmaC*hoD zJ$U@dw=0isf(IB69(;7m0lO<vzGHFX_F0y=zMgkmb2~?`ZM8vM2FZrn+W2<R(Ksx0 zSf39(ZwQC)@%}r<-2MBl1QovT4@^+d2Rsysg{Guhr2n(N{34HskFEQ=u?UIYeTE@n z{Q$>dBmtlhD<D5i7w_1T6QzhX>4X&m5fXR5SUp|OCQ!jskTd?JG4lvT9Sm<=U%|0b zQ1%olgP(g4TVJogdHe6jS}aG^oCH$Fx_H2JibEXuhjF(OJOVlPm=$6xKmA)D&P{H) z%*QwumZK>y-w^xr@|c%_2d_vNrGEbwcf7-|>D~YRI{F>qis6E<Kbiw|F(g?Zz9{R! z6%@h&Y4q+`IF+~as}+RshjKUog${Ek;d4o61}$Mnj7e=?-no0|BnnBIhsdFud-APO zYix=PC(;zy)(D~*_{^oGpO(lbI_&;1;Y%KPvPfk^jRG|DP+<^uEnWd&5MU-i6<_2v z%7i+M-lEBIElzQ7S975vv>9;OyfcK0p$m<OvS;u(9>JZ8++%^V0q~!KVZSdR9s);I z)ez2&DTmrqqtjL4RAeO;1vBP)4;aFXu@D_Z2NU9~Wp3x4u!Hawl#sdGn`Fp{!^P<t z?db?Fcs(Dk>z_6z2Fx-D?k=R8ji<tR`jlaOxSzQcgqP;0SNUhutSP~lfQQEL3tH#m z#Q+o5Im8IA!Bw&Wa&f0)6_6Q2#u?YvGWjxDBOuI)52jCLIETU>Q8HmMi2f!-&qcW9 zOP4@nM7KuPSaJ3nS9v%Iv2lDD<CUI8dJe;an0^p{iiIVUa^_S;p7M^pmC0SP&dn<a zE^g-1)pIU7qB2;d5{7~T$v?r$OdJARsJWO+dALh5LnOFF<EdZ%TH-8`Q*=@n?<7}% z+pM0<&VvSx2Sj8GRBZ~F<;cf*Xh)g+i=lY>PolPQ9>)ak+n9MAj_eyQP``BEw&T2W z4C-_vdcC&b(I*W42XQkO(>hHA0XWg$oW)AFm%ZR+bHR!RcM=lL4i_>}z<KJie=wwu zn@lc=5Hu{3;4CA~&mlF#l7Ou~>qRWti<%=~+c4}MGC%zj%w(7lF=M1DL~4*EYsoOx zMs_Xx;zqm|s$7^E`?@%1y;x!yKEc3m$t&zo19wme92Pv#*z5#_2s1&o=CNe?`K3ij zG~Xbvqon?I33429d<px&I!c@YJ4nUf<LM^>CdyRo#XO~##t9BKk}wizBRqcd(&fSR zB56LppK+;H4RHb>L@&X+Ka13?YiN=%7fJiMJjY%gNihoYBO~O|i7V4K1-gwQ)58~; zsfcSrWHle1W<k0H8C)>N?}A7LjhJyaP=-$IE4+dT;H{2<J&;{<II@CIB<2Az79<;> ztcC_wFcL5-sBoElR32<-DH<hLp_-A6U=Xeir`4&0M_Cw2eipo`G~NN+XcX?pjf-&3 zWq|<l0Ui8qQ?d0|W#$+tpj@`@hdnXI!AnR=6f;*2u@-P8j-&k2v%FcDQh1erNp)2F zHi;63<}i#%D(_Aq?2lA9IE=RiaxtFZg6z>P#spDHO@QsSxVq$6J}93Nnn}V?W=J(W zR8xf9)?r)~znDxz9HpntokhpLsm;kqHXX*No(n}$aIbjC{D)X|<I=q*X<Jx?0w|rh z4E%h}avdfX|EjI)th;<1%*%rvI$^a5=sRhQ2=E~X^FbDGOV$NUSR<i9{hH{w$W7z3 z>J)svpl-0UKJqwf51&<l0K_S{SwJL|Qb!sA<c$#<FZl3FJP&|^%!P=Re1dN{nbJt0 z$sXB4#g?;f49VSE$%r-Oqnh)|m~dn=k0|8VDh5+C7@O=kRKXHFbcxu;A&2C_V8hiX zbO>_hx5Vt4B<~;}LHjPk0VE080KxnzgwvhkRgHLiDBs-*ud<^_x9j%sOTcjn{pdW% z<l(ZY2pIs7pl<rID$HU~NesBT>`{Bt=4RcXpVZ>IBf^4*Gu~?+)rd9V<JB+XxfeE1 zYby&D@;p>gDuq-X&UKS-3+ZCkUgI5a#!N9#og_qMu}ISck>`@)EfBsNIJ%Y*-dsX# zFmF5c_RgLnmnZa^e<9%X5^ST2mF<&<t~rN#_fu@!65NqOI7nv`q=6g;%6jI``ZI%` zx{fQ4)G`1Jd(aSsK&?jPD{YcCMMeY?k-RRZm<J!v!}9@vwlB?r0yF>B@vQ>bL~@E! zMOpxC8-TlLj3Nj@f-zwKsOyQHsyQEjLD=|D0K3r$ZqX$L3q3hauwn}4&@Zwh9dMe> z@XN!CvQnOk7$Szj5o5%D7BMUjdm#_)Wi0Xqg7>lz$A{6I)+Cp_&aZZS<q51c<MtQ~ zc~Xe|t|e0A3AECQm-NIOc?F;lroh6M?ck3*16)Yx8NNs+fYhgi^l=bke1K0!rVZn> z8oM?W6nb$X9%a}dG#!Q+Clu)*AY%cg38{My)eYcg^?IM)Mt)wxNg0FaJ1{XS%tVNM zIgFH#?(@@Eu3`{5@_PNO|1oqX4lVzG9RGYiyN}k6j#VqGR;|;z*MV)_iPnLlvJQ!g zMF`=uqgsb7LWQh^B+2nh2wMm7jql18!b*}m=Qn4+{R^M%^M1cR&*$^?cp|N|=`zkG zX&%0N3Dt_cY%B}0PmNhr*mrFmc!+0kwjDCsVr|PoWr(3;@WC}BH>P5^Z*RFBP!g+@ z+2}zqBFu``zJq0rxT~jF3sFbg4{v9<Vs(H*1Y&a-J4Dz#QS)BLt&u?>Pe<HT&LXr& zaRSMBF?1lud|15QHpXB#7RV(NE|ae|wmN^WA(sBsXBP=druuTyz`X|S28=sMM%`{F z2lF5^2-qveOgy5D3QIs8VkSj-_WFo(1dmv~pUr`>!6UaP7?!!O4wF40E^jM#5afz) z9S4yo%&14n`);9$-D*te);lL{5avou-&y?yj{IAw)#Ty0O3~&i1H3h&UwiCtD$u3H zg(Oj|)F%#PLa{>Pk|M2s;M_2UO*&w`LPfk!9CDgt;W1^vQ4K@^*wf|YyeXXCbRL+Z zAb4ADbpRZpLBrXhu2^J-YS8^L)MtM$($!)m)4;|SJT64`29mAFSj8&yf3*Kn`RLK_ zm|hhs?#jL6LnsRs>4Jr`rwVj*eUP)w3^@g9{Y!J<i}(iOjXt*>WC_C>I``eNfsD)@ zc~CV3&LnHWCbIrAC#4-^uYwz-e}?zC1BL4QZwCl>Hj%4%I2%t?x9$%840yl?s#X&t z@Q<n+5y3)yU%LUDX|RPuSZd}xM~A9i`MBdfolhn$*=df_VWaEFcpi3TvWxu`;i~FB z(He8Qf(tUiS3=C~txqIlNT~?zs>GFZAp7>b%X6$ul!R2*r(+9Du_{95KW;8$LSD9B zg!6`ARF1OU<P2i=M&qY{W+f^OuBz9*aAo_FF=0G(p!&*xJFTq&{GUU*jd|$vM0Wy* zFt?LzDfX3_591}kYN0XMj?Ly>p?5<!I9OGy4i-FhRbtPS`ILy;SkK00vKxS$_TjS- z>WT0%IuAUN@9PdU8e0=%HHdRCE(k_gZ1O!#M!U^r^HpFC{O@igVmA3%#N3xD4TvpF z4<i*WRr@c#U8_h3Ziy&|n1ps6TEznfrZ83?W;u%xl(3iE*CCpfM4oWy;yL_D;;Suf zM%$P#L}LgC;57b|!Nv7NkuwD^-q``8mJt^w2=RkgUL~d>l^miqfcjkFZ?8t1xV^5w zN(-1GY_zg9QsLJ>B=ai#g@*`Lm1GYc`XsrO{DQbaJa~AG9TLVIQ9`-xBQ3pzxrJ}L z+h|@>2H8TLRI|4Npe$71-Txx=iYEoh!9Eh*`)dQtY!(qd&v}<Ah`y=BT>ZN+QHXhR z=l#SQ8eRu@;@lw}%69wcX=a2_OIpdKc#DDU&m7OSfW?I$63!wv=x?$st5)&wh3`IM zKkDCnQWpF!k)l6cu9F81K7Pe20ZIS>R_dmjM<MpqAa1$c{Rz}L?d0c8z&z1g>uaB9 zH2`arfi6a*KOe~HaQeY1@_8|-ww`T2g;%ORyPUQSXeWfhI1c%P>^fq$`Z@pkS1UfM z7`|RALtS&ESgKZ`7GbT1=clMPE%rp6WMV(2m?40#3zwS&@bE!uLaA<iLjuYh9$7i> zKk^wuo9MH<6x}C$LUsqP!RhDlq#5Z#{Xv4+<L?Pf9hC|{>=^`nwO|AXE#qL*l}Jl5 z;?TnXB2zJWLgJ7TQ?O&LEsyAV`p2=^6s(r$cgO9^g$p!mQdS3=t-igRi4UK#6R5#d z<&Q1yfCm%fr!`mtlirXK?s}Z5mhiM4T**Xa?)b@f2bOCw?|39fdVS<YY^3sv_W2*e zC)6wE+YPa}^jJz$`$V4r946yN7a@>EKDlCSlj@(cJkU^u>{Q_pSAj77bcIY9ZNSy- z#+W{H%^22>1}P|Z3!4%K$3iO1yw{8m555RfT8C7!5{JeksvQ@#Wjq>sIlsnz#hvQ# zKFI|m6Z_5=kM7RAidON9NOnulXTfn6`Pz)f_g=>}#~fXFbm{#!i&_)^x8~*J`)`-D zr}kCaEqn0pQMHFs!+G41<qyre9Gti8p<9gG3v>V4(9sXe4})hJPLjoM0EacgfwK_I z2At0cJM%o$Q!55)z1L2RJo>Uy8)Hl#y}Q#?3Bij_r)>KWJEA?a;@@M*Prm1lT-@++ z;^~wB*6K9gB(3zed-f6aZa5x(u?9BofBPnJi^Oc%>kSJS<*crBnP=Zn22QtFT$i@e zykO<?XMeU%e|i~br<KIJGyKned^Hoto6VV^iFpvgYl?@Y#f$l9i~K1&b5UyJyoLdl zb(87eZU~Dnnc4CJHJ9Vp)}uPxZ;u(K<}gb)Wc<*bCfZwHul{Cr{!=Jp{k^;!#paxD z$%cY6OmAv=#!iw?hAuC{{y_fc2=<Zcb&*adgCivF3*FB;aHGx;S#v!)%Vi5!KN@mC z3{AZqsITETlvtQBbQK$@k8tgPO5Y*xVATFOnujpX*H#*t9mUf_Gu97woUM`x!)^EG z$3{B;?`v$-VfhOA=L#=TH8Qwybl2t22?`m?<b8e&{%k`?gMQ`s*uH=z%a~=WY;fLj zDO<mNdpMkrMPR7*343EQO6wX)NO;5d#H=HGH!fX$vd>GgXgFTBs|w8<Z6h{r#vsMi zi0=cynwc}lG=!1x7y4kUNP`wnPu*Qw_~rhl<z?|&0VBO8{9BT=2m%hxnqE|pT5Pd# zI#pr2ID!~^q3K1fQP8c?*(*$j8X%WYc1<?~-wZ*aF$F-8%g<#%@oH9LWLjNzM`9Rx zoM%@X$)f*QsoE!Od~~4P=Vw;ap2b^UgDW~iGi>eP>y^8k;VqYnd49)A(k19tU{=}d zM!s2f&C$07jx{gMqp6+yS9QMF7jO=JN!v$`QB7@GTW{ZATzwH?S}5)&`2L>S8Ks$s z3R`Erg@wXjEJr$-$Brr-rx))mao#8vl9F24RKRqIgQzA@mTc3j)2m@4Pp>@w`rF6# z{1@4S^$)jgdbahyE0LDhS3T-CY%zP$wBbV?v!dj>LbCC4RL#U7+G3bT3klFO(LKDT zda=;e-`fg5zgR5U74S6yvE^|t8};(@i~T#c|9pF4rqw)+c{ZFH8*!z{{kNSZg<|!q zBGw=}FdY3<2OfYpAWH<(Lz?-f9vkNoGqs5xozdP5jr5P1)&X%qdS=)Q3KmAooHJ4h z$<y7Y&vZxu&tgX%EPHVX3FdarH)ah<(iI#wG#$)ZeNRRDD#)+Et1;m!w1HfM*d<Ff zJ~hcgvC~K`336k!eecyD4b&ZKf$@1h8gyx)Hgm^}pH7Ezug6px1_T+;G{!aUcH~E} z-NOt@Af#cG+-x&o8x4?A!bfb}jqn#20iY<9!6Qbf_|p>w5m8q$#7J(im3drvJyJip z0AcKEGCG3YZ7y!!TjfEnU}nVbJJ+<rHTPl@7}#UDeV`H)Q&iP#$$ow<;AHOsvsme+ zHgd?ObHx$&=Jc9ncr}*#i6H1~keYU_@V&BXAK{+P;%>Xf=-AB*VOJ&Q`_-0^Za-|> zsXI7yB81fY--5!4xWm839WpcYoNK)`u!r0exlt>>{I$_0K!ipI_e+;ekL4PetC{t$ zyaBINS_?;JH2N@FS)6b0r3&$EvMzfh+3i5!_1HtHGnjwpj1%sY)q#n&l2leyQ^3nr z(c6B;DY+oV-i3-0U)UWwa+LC4ML#N145NqEfU#tR@5_vs#~_S5r&BYss^pf1M$PGV zCxi4llT)AwiwOsDQL3SO{q|N=O>jU;9&*jN0E`y(1J}utkOgCAc~04>23r$)Gj|&u z?oZiqR$aU=spnWAzZ>B;1TKpQ8w!8PJnVm}vKB60M1Z?(hJc*`NoknF3v#k^f7qGn zBqq1iD6;}>vA4#%`a`pQ^gdmsN524Rt^z-p^N=nsEvS0Ysq90)k|sk<^9*#Myoe@r z$oVGPferJ)OI20o^fcPmbkIGm>`2Ir&+cuI1hP!BuHe!eE)E@COIV?AP0{hm4!mB+ zOs10jrh`34T;l&&)0Jc+SrE?cj(Ph_gbhpRCJ?%fuMS&#F%d{tYk;$*nPOQju*?FM z647Ulu-xJlkQih%p8*X=R6A+MK79-nO7RDo<X2fp!$N!A{jR;n15;|SH{afII_<i5 z=DIzHevdo;_+J_e0{nniyG0{?n5_f-h@q;IfO-Ntvb{xSLccFSGmn(3kGV}V5yu3H zch>#l)4iBGLlaaOG~ls=PDa>ejCHea@tA3TD}x=D4wmmTguL4A2>C|_98!aw^?|d{ zd={ofx$>;N7!G>dKeJ`{Zmzye0pWN)9lLCpb0j(0(=thbc%##l2S0h$k>!oX&!v%z z+fOdREF12z?@0AmqHRI7F|IHI^INnZi0ZNR0!r9z*X^SMnRk5s5nlGlalmWTkUM=H z!Q(tnJ8qHS%R^!88&Z-?SK(#$RR&put2ew__Wakxh57mJI9qR!?799Xpvv1H3^yU` z;D`GFor2*NfeuOt?t01xttL|$!9b6J_UT$Bq6HDz*|%(MZr)4RHzrF+oBv7vyRK$- zFmA2ukVOuEc)xbc4H8d<qP3D#?EwME>!CDv+M;-RN6MI!k;B=!wnBrQU%C1I<_x4A z{RqxsChQ^>LB?KPn*1)^A)wkqjk86GjJ=hm#H<w4yn<j<q!M+YMpg3C>opXlgC0J@ z0A5)TxnB`XZRWf_>yW}@vZa}qNieXi(BK5KbIf(e=7Bwnn&*8GnqWuewZF&Q+^4XU zI(^5^J;^`we+oRlKG-mmFlrE+Q0x&u|J%T;XTFF|xzE+yPm~1S<fp&A=*6eEjyo*> zQNsYNSPnuWXRUp6=X{#eE((g%_+jN|kO|*pp~iXms*)=K024qkM=6-sy=IpHXk_;C zzlUB6xZ&_R+;6_cPv;%c{UEOJz&wz_gAUF@@lcmk9>LgvS^#{zn&7L$nsaABV_OP7 z0ToVmwyFZfymNmEWzaP2GmTtD1~ZgM4j{>O=9v%)NEK=UeXh`4vOtTrn?jPNdG-3u zHdsEL&1Vt?*74@HO!S9FvdLskEr5yuxR;ga%4sl3cg~ekB;?MudJSs_`A68WRRYpu z66F&PC72032k?ek`1zZ2lp6VRdWpGkx06n=sb9L9d&YAhXwFDb@uMOq=CyazhzN0M zCli%ThvvYDu+EMSmF(7_0yEv?Dgo0b{p=q>>$o2NF8EVY1h2jLmM$nJ2QTE76w6Lp ziQvnRi_Ros^{7<>y?CX0$kNu3WlcuNew2XP?4+8ht5%fHDk!#2K%;BUo-S2a(BWiQ z=6VzG?zeU@gBNnp$DZ`60KIM`^W(~PT@G3M6^jzd7EA?5&q$Xli~RtUHeG?#1zHl} zFc=1Yhi+*N+uBPp=Ssa<RVnPC{>>OOr5w)%ET(0jnK$aQN_I8_R=obkW>jVZ-_i`` zYN^?+1YEz~g@f00h3%4K&9#74tRq4Ptrr%XPu(bLmz6Ul>w%(O6%n-uBc_KX&dt2P z9LZc|c%>E+hGRBlA?NPltEUiqn-msV#Sir<RTX-9;cieNAHURpDFF_dDrO~|1&1T+ zDsIlgB14l-qsY=_Tu7*%nKM^)%cor)_Ac^5;rz}DgMftMxOcmj4MSC8h|DVvDnQK= zms}d(Md4j9*BgP{D}TksHo6E)YsgU*dASC-Ggw4bBLdnHe$A5k!$tEsC=M{|dc{B1 zBM^gm>xu+&!Il`P{S@I+^=~x*BYd^I!PW&&x^A~AW$6VAUMpdQXu(b)6@$gBW+OIn z1-7LD6?CKphic7{Ew0#Y-j6K#t%mxgiQ$rE%~Ge%B03Y{(TPe)K(8&3WDQGZ_1=aU zvL&1aDr*U%Uqavk_3r@dep2uF0V1b_KN<e*cQjxi+&cxNG>4AEl6Aw1Z&Sds8icp# zOh(>}yyHAJufT_j1Jaq0(`LOUDC{q+z|{c2q>=Y8fYn@tO~7C{Qmv72+!nR2|KBUC z5b4+=CNHp9DfyMY(?t!Y=%i5`l_MS9u|CFjPAtoy)U&h5CKd4IUMl6mvz5sC?O>Sr zUlI<;=*QY}frBH4G*QXdkt!A&VfaUQpAFk7B$;XidqM2@6KIY$`1Tp;f?-552dc;d zmL%+?a4>d4I4c}To<v(u4;_w>+hV=Bx$$A!?rq{CBAHb<F&d-BW{NQ0WJ?!2ibqyV z@w9Zg>h9lW<nm_y6O?&|#N7t~H$7xowIKX|ft-Zmc1A5qEQ#o!(OVy(6<GP=J|I>Y zv6Nf91ZfVa<SVECP0U@q^3Y9p?gRZEZ+d@QDIJkrBU{ify<lO+=H9QEl9P^lFo1<@ zYiVTj!o|jTduGX!%@6*00?zJds2mNQ#po0fGW)5*ROb(1i+#TV2{ow4uR#U}Rj?qT z=xD^Uc0hoT<5plHA<X3h#Afbo5V=zb$BN}PH>GLZTUi63L(&pz73`#t`6dtVzYOOo zA7sRMdXbCL6!L`y7~^hiAd{n>Mwc>yOi}3VL|Jxw@V+@qn_l*$buM}>l4jSqJHg2K zX2_Jc@boAc`acC)3$J;(3z$MAH}3|?$X(tuk8Ezj%Y{hcg2!obKm;2(-?rv+0vKyu z62+D4pQxV*fx<RzH=C`7<)xe=GF(4T|N5sd>q{PikYJE-iAo8_7aTweA&+*@U6S;d zUbJ%>%2hmh2LLXe$TRN|72eB^jT9?ZByImCN#Mn+YL(uwgw4UY(4lL4vBAQf1`35T z*ysBhaG5&hfosYO;{bCka??OW|5C*nl=S7(1Cu&wPWVW9zohAsHkYz2qFp<P18%#r zW{D5Jc<D<n01XkgdYCO@YLNm)-VYa+OqntgA}4DBV#5B<PnZ8ab%`J*QEx(Prm0Rf z#fw%{Pu56tw6ZmmK-aw)g(VlH+ESc5rL8-6&!2im=sSgQyXH0g@UN?ntD>mQ*d|bg zMTV;{3uQlcB6D@-)@hRU;^*YHR12$)Sp`K??{Tcjr<;U;4V;+qsFYZMVzeV2bcn<& z*Z?)^<Wob_N%WkM`^6(vw_&skPii=v`n>^2O}Jq}@*$Ivlo&_XW`#3QVJB8>D7Y%9 zgLnnEIQ8lN`_7THa+^=G`N`PxJ&QJR&<sFHN=U9$99#H@kl0@A{<6wlJnT6LQ@PS* zQ!*DN;P!w)?MJOY^}>%JrEx;7ZIa74C^OfxZZ&lk5R6zVTdZ|lxP3*!c230bAn7JD z8zsYq&g_e?Ey_tK4xfZaj7vdS&b*>cXAe1*B2u1E*;vS&Q)J2oa;6cc?HT?D0q;(E zNaaiHd}yOqL}`J`c<_zi1S5_#R*2A|j<B&9zlqF(%9Ur$0W3M~0RVUp@AXPCx}k6K z;+CxABL0aiO==z^xr3f+0Xqh8XBzs%6czDcBv+OkUbIRnb(|DEmFm^<rJIkPL2DsO zvpn|Mfer20WkAKN9ON_P5ugCEQKa5gzp8HHxP=Hc970++MGMqtty3jF?UEF-JUOeB zKrdQxOc_E(WZtKs3M2<V7`{%&BE^u9jV6(cthAF}J#tRMqq?@)P{9l!=$AMDt<7o2 zTGI6_>7{$Auy1FvBPsh*+uOt~(v8zs{$@dT30RS(<)#F1(Ude^_3yF23JYxUzRaC~ z7D=wBqJ+|O&kX0mv9lgQ$sEKwoy53vJcBRG2GTDVbC7hu{BY#q%vn~Q3h~rC<7LPd z%x8o3xsR_No;6)Gd7EUVE8fHg{n@+8&C*rVQe^wHec@6g_HJXfWcD--)sCX47zHU5 zAP+DfhU|3kQW4aac^K+PM<+aa?B-$&6lJQx7@ln8u>~lcEGdxQ%-l&<ExDZthc&l+ zy0i9A$6;1~@$M9Zu<6wcb%}o!(y;y_SFY?>e^GGfOop?lXy(Lj8^y<W{jg^});JvU z!Rn`NAl8^863OhIeSGi+Hm5@i!x8wEG=8T7(K!ym()9{t0*6V|7QMC2vwZ&P{wQKj z!pA>YAdxBM_dmO0g%&p-%=N*Uk#7>d$%F}?Eh)%fD`<}GSTcZEI*DGDfF!TWrBWb+ znry30ZJB-uk2~+BgR*i!M!iFtmr%S=L9ksrE1vnq<KOjjc3C(GQOtiU0k(|8F82MG zL=a1+yAo@$kP&n0FBY&MkIdu4E1TE(3=+zPfZ4Q!0U*)s&>|m|A+}ib?8}4465HwA ztL|V`ks^DN9NAv<<rW$77@65WlNa~zhU8szTdaJZVQ-RX$a589i4KlJWbaYRu+vlT zl)xPJH%Cxnjr9z52M0T_(VXI$?`v}VFDFO4Ea#Ri-~U8$4!c6Naa;r>6)4a;h%yE( zQ+{51c+-{{W3zC~m5E)62_=QT)T+cH|4I1*pVBO~T)5mo-)tf&(Hn9lK@+>KUR4m_ z;*#T*iwfRtnROD$mArp)0Naceh8I(Kn*tkPC!v(Ey(Elg9mYm|x>HcI>qmGD+Np`` zUx1K;zyhp%rKptOFW(Sa>B}qH|8JFByL^2jEL1Dzt6t6}0PA^~wU`!HxERBzwSvDF zB~&dIqxIQ;7sU)<qnNtVy!kt&C`tVB#PY2j7$cNEJ0Dhw5`7O@1rbzo?7<sVK+)It z%5Xy?hspHNL|~a(ffr}*g#bo@uH!$)h-uVMbX|tR(?NyGN|5$-5SDOc**g^F9x4=! zz!pFmYYXqr+je|$@%F=uIhzO`!s2B0w_PHn`aL;ExQvG@%m86)H8!Jp`Y;>*aEuJX z#rjmMGFCD-OHvJ)(>g_|Z29S#@>P?CipeF`KjB0UVlI2z_{{dHdE^Yv*3<VH02dY9 zU$mQyTy&g_Pbf}2Pqo#_AAH0as1+-L?W#$T31ICZpwl^PirFp4o7$hZY5eE1f;!_6 z+nV*s=6Z#>@49!BpKSY;HetJ6R()pOs&-m(Hs|$cyMY>yl|!vRK3^~1m<w^<z5e3R zJ%?({iR+=UV>gBQ+mn@F9pj4$f7@TAe{p)yy7a=j_iw&A54We?*zKDA-R1H5)eq0+ zzWwex(z)){z8ua%!M(06|Ji%B+wVNE2^)2*^R8@mkMTZ#ZEj)A4GE;EYWY0*wr5;= zfOKMg$4#VWfEOW$MyI{r+-q5KZq56j|LeD?C*Br2`Ja|^JPJeLykDXNo|ck7ZYfIn zh1u=<J=cEt?e}$Z=y=@eHGllSzk7UPYkWhL;?vZHGmm03wq!_iqq?JGj!AzlaZ;El z=FQYh3c?(+w=W;`2p=$Jg)e^2uL*Ai3UN-IOqqdyf(d9z?hZmD|7JwFBy`f2=An>7 z6lasniGKg?IR!RljxC)w<*t{eZ7SSvabHCJ%d@trj0VXvU%!fR5JQvyhj#L68JGBV z+~3bPuu2t<AXQy=fmsh(HcdrFK;yxx<Sjq!YEsX70brj}m|BUig_mq|PWWGp!>Z5! z>-S!&*z8ch`OQU#!`puTa8OC=s(XyqnLplRyg9rlJiKgVU3^|3*?KZ$*@$$-Hk*Qs z(1IOA&P&AG{_f0eYuR~LM^Cg|aypr-Z#U#*S=FU`FrKQ$TO&eJ`<d8|pU&+X{7it$ znLhKaE)~WD<oec&HsAOl<(;5!D<j#a5AG|qS#eU&u)sBq=DE|u3|pBgo_Y@?)csC7 zPh?(JSmtu&+hdCy=w<j|>$x%aPe54AWEQW@?VTnZ@t;!{r^g`RH>a0!VX2%jTB}`X z7w0uNI~FwwYTPWmft&VYdk1fx)-TwU6{QvQo-GI`>n(XpqjY}fHI!IwK>hXGQ#-Yx z0qOI5-2k~HI!|5Y9*q*?3(lD<4V=c&+q@qnW?%7sn7no8Zs=A9r5-uE>qxJ$JHz0f zQPEdwY3Or+Vg(!@esqepg3K-o>qx+s2Rl`GhTOT}s*;~x?tGQ|BE@WGwA{;xb>%yM z);*ib!FdZ((?YNCj1hR_fBpH^naC>fixVfW`oBGO`R^7f)=L&z5S2x)BCebkR2rU- zyQ(y{kJ`fx@vq^x=go@$lzH;}Z@y|5!<tu8loWox$Ev@i1bLx->&%?#kIkYRUPeY& zeT<6Q8+f*x7o3Z65<cQ!Nfxhe^|<>De<FPv{WUWWK(N&yNeG5%pRKi576(kH*&Ip; z3)rV4Mg3`G68hyBw{8qc@d}~W(A)DhvY)JO+c0&^*WEBG$@n<=mo1Z+j&(=TNAVw9 zM0{11Of&83lobw#b_098`vK~rnu7-u)NpDSkHlA68y#WK^f|_!Dcf;LO(}F}n^zb` zJT@u7MCyBA<E2P$ei%@v#NUg_01l~;RL{F;&-T1U2JJ<LZ|?4_B&&UGc83Nl)J5D( zG>|e`YfL-Q&)cBG+cz@}dnNsjFWsHq>U-_57nKzHC^{!=`L)FW(VNkL74h!d#GSac z=<M0OZ8`IuluWC7at7*b7Sdk`lw0>pjE+nd7l&`~TG_9&!SX_Edeg!Ee<IOG3Ni{> zd9uob<gmqb7%Jm&KVdcIU$)qBdrBKU#obVLHpKWKtjZWK!kGV%{82){=x-gVca#q7 zQ{jxT(#>PP9rO~VR&td}{iUI7YlYG1nNAz>b2`Mrf+ghMyNT3hAhhd9-<W8$=+rvM zfz7na`TEhuV9K`ArUCXl=o|=gZx~{o?$*x55N{V)-Pm4LzA84DY7`Yo_ZR}-TfQtr zuNn&2Ev!gveUEU?>h<}lrq{*(uVwKSr^P#tVPnQyaEsd|M&dkpNpB<h12?LzUs+{Q zkv8W#2#}6FZkeqcJAT12G)!Q9JhvY(f8<1>6?4wDQajpL=Rr;$qpg(qmo|L*viKD1 z`1JscJ5nd`*d_|K5_?m2iUd|usy0u>5z3C+#?cRi=%B(EAlcm|C*AqUqoIzF=z^l; z^}V#8UK&H5P>%}bK?C%b8O;8Etie#s;FBno>GO>HCh_k7(6QaC=_iT~dR57z>BjES zPXxI=&MCE%Ok#DvF@w8=0!>@bw$+^oF>gm15F1HP6+M=>MoazJFNm{6#SG*i#t(=| zwiFc`Buusvg(4Hz$?Isc=;^1}&Tf;doZ^3^!0P;m!a%-2f1)67x~O`tX(XZKb`tWL zJ;9uwb8@v3BDjwl4`?+Z%v83sD(%QMN5BDpaMYUi$OhLh@ytY_()#~rlQ}To&11~@ z-keRg2tY!8yo`@fGEvXyLFjUq3HLo02Qn+MP^k5g=b9|3oe9N!w~9he3ewc(@%`*u zTarblVbmGUbzD7{lET1K{<&gcG%P&j>FM8<+^pVg_%dxr<TzLoT4tWn2<P$6Ng*D> zEJ1>I&2OmOIoG=-PM_gz(UIoPO$P*fBqNy<_(g3BygV=H&~2TW+Fb3Kl4}jfnT*D# zVBSk4F<@n;iHiNY<;a{kC!<v30edZ0D8!f1C9*BG-BE7sqzm<D49*Hs)~(h{>GLl? z{jlA)E3O2#u29~_JF2mBMPtokjgf`BV77;^Sz_?%MNSDf+6-SR!Y$r}y1fMGW3GAd zEtoRNyl^l_g?3eS8!gwbu6%2Jwm+ZAIGb@Uu0SNq$bzvljugK}PpP=uHQ}>z?+mog z9k<n!g|H*3uS#s-6r(uXm06f=6}E(?juwI|+5TVSZoq(OZMGPW9NL)<$LOXfQliHJ zUW37)<r@QzI`qnq&jxkB0Y;KSFG04WE%c>v=3+p7we7zvU#@&~UCkrqkiX)gZ9%e+ zI0REuWqvS7SBQh{gMXcLl{4SQgkgcD?o|#P^{TPNV0zU1{|0AvVY!OO4GS-u1`lV@ z&tJDjnW)zB*y)&LhdCeCpZ@jqbS81Q{rAf~n-rEg!JtgItYC<T7yTGBs5|eg4~0?! zScQwh&X8xDPycx^*oew7yeeSxX~=OAMfl1u8WKrECiyt!Fz9q)X7<dFyVw4DzUFx( z5dS`jPkX|U$P>-N0Fm_C|H`0hLI3;10rc(=B;p1Vz<bsHS-^atJnWTU2bl+3X?yLe z2S!JgvjPRoCIrhX;&%)ae@umsWn!y)Mly7{LiOw^!!RzuP%bbI?m5lo`JS(aA|(S? zdQ8Lv$ShcSib?gaAZn#PDr4fM9vj}1NTO6X$6BC6S@uhPh(V4yutPqqvTLAMTAMvM zsE_0jlMWc$7a0>}h<Dv~zttq<Xh3-P9OD~MGkEvZErY0@w`U$fY(Z$vo^u?~^PtGg zeyqJ;ZI>kj3z;u}Yu^7)PE_!%TCIb)#t1oVH51iC85dB=&jYj#Hv1YK>(dJSK=*L6 z{f9nGbCUf*gj<#xT?0YY)vS0yfsp52aIb|WaSwcM)+Y^B@~^Q3lMRg?9eA)p<6fbr zl}Tw`ay)CFd529(2534U^&$sRI0CXxV+g}02Q~Ue2->8Y<!T$yaU|gC5Ws_c4lZ}L zN4Z{<;c9qT76O?M{azrqIGB{D-{1{r9`%Bm(;%yOC_7c|!<`Q_g9TS?L%x^ddqKaX z7iM#$lukLtC<uEmJ+`{WFo9>@3Sm@g>+=YktR9a7K6h9^Z%Pk&(6r!L24JSaxpdDe z%ZQCqv*<lu92pbV^PiLSFv9peI*is~PL9AgSE!I#-5dp27}E<T7+EW97H(Xze}sn; zNkbPa-IZhEOg+Y;G<u@X_LSPz3^4N2SlsJ&Mao?BrK@U=F8N@${QHWYDbRabEofUI z(1ln8LT2=CO1RAMFWP88bGiU_nmn8}X(0h%TSgD#UFzbc%U!k7`X5KL>cb&6h~_>s z%ahK}f^EsivYHMfzryS$33fnZR}G6Qj;;A%zZRO0xCi(b9?t%Z;wQi~lM+H<P!>AU zKm<%Zy{@Ohk&+OzrzIR4w2=^U_^Ju2T*#59t}R|EeaCa^@7~a6K+BJgY=-Sr6XFkj z7iW|_tKX1&r-Y$!*gkQ5`<9zPFF3pN)z-&H3KBri{Q0b$ZV^;uW@PyxTx#~ad)C(` z<Ewm>;@S2Tc0L{C#t*&R%a1zMOBQG8zpe-XY@|Z?itUQq*ySC~8;Jtr@JYo)8LmQB z1l<Bu(pd8n>d0gOyIYI~W((`eO;%+iHC{<iU*;k%*Y?sXpcQwr@@mvXy1>BeL{;XA zeQO+($$;%JTwOnimm_Q-JjBrCnUqj7kX}RwR8!BQbtewqDRSWU)SWQ{IK1zNf-wxf zh5UrVNR6zKu{e_lt(+R|TbAf|6PqkmR<|Km&_R5pX;x3do4(kjV9boyvFLStluKP> z@#>{ruq~@uab822ToKj}Ix8lRP_bq?a9o+wsRu2m>Vj{pr6;exX*J>*zjHiV(Ct|B zCOQidsuL(%g1nmFobq`a1@nBd17<kDZ{$@35jNrV9RA!=G$r@!1<(1P?5uQdBmq{< zm<#>{pb)YRPd!XllU<-QKji_5y(R#g*aif^4i~>WFUZ$;V_7eaV9#mk<?YDto$woq z{(y|SWP*&2moR@i_bq<cU<3G_8S62}Te87@e{YiLf(CN<tav#zq7y%mTEH!R9q%Fw zH6HQHuO;w_2|<xL5_8^*wJxxIJkN3jnlpDb@D*^LVKn?><vKKW9O{>Nh&1chxJXnQ z%0P?ipvIkbpg;*XTt$$&R-#q#Z2MEgmBD)I>CvU(Xojq{5s7WqEW0h3)vqQcAiSpF zfw@jV6x3Pi`uuzD@{O=tRM0EFYb6#8$j@l0;NuTEq^Tw28`MsdAy7TVaJ>7*PuGd1 zy|qrP)w$TgTV|2()YeJn%dtE?=I-|I3G#WKnTz@mJ{R~ZEz5L!|KNioNo^7jFy$~R zaOf`eLq>*#<CUTM`pS0F1W_o^{tZUcHD&`EKkTbPq}my7d!O<#I8goi=uNmnjnCj) zWWmfPBorLvEf2F}BJN+6QL-e|8M4fib+;Rx1;%&NMYHuRJ*o{r&lmW$OTC8GHUqP# zCW?NZ>1IKZcdlsu_5mRk610+EZGH<+7C>)jzn_5JMY-FMfMEi_<jK5<nm;YUdJ^&V z(om~+RUvE`$_LpaAZY;ZDOv@D!yYaU=#L!37byrfOe@fT`O8c*1n4L+=um{pQaAm? zVfDzZ<<IIm#4NFt5>Rg2DIxtQ9%_N9YE2gu0sx?k7tF{x6Fv@GDF`m~Qz4UTLq*T* z0q8h-5{gHRtvh4&(fz|5i3z*MBUo({%r}VwGUe{4uS!HmZyD<0rr-ZDQhf?Yf|>HB z20-mRbC1{gIq%w#-pH>lYK488S4NJ*&RuO;TE6o@TWG$N$`IIhs%?98mns<!&pq7k zj_j=x;5Y~*Qs%Fa5`y!np25I?Kw~_c-3i&0W8F8(k4*H}P}jOS<dPY{8;SzO0I?^6 z8CekZEs9uxxV8>yz~xi2VE3+M&lhAvU8eVqbAde;Qdn(J4LBtQdBkfRrqtUxA9_p# zIKnLy2Z4}1f11;a*1Lt+?w5Bw`!))Y_dYE<CBWr)gc4z9@VTt7dZl$;SYa8BC`C8H z*SlUB$%(<Iz2=`@iYe5%_39a25MHgZz-kOGB)adBS^O%cAtB6@W%e@#y{-e1#PF2) z7jh6pzS()tAg#u?+A%y!<Is-5iz6bmT6DX>I7$lW-u~rFSS;_v{oY3?Fzp`fK}L|8 zB+gwDvp*kBx&fH>vxmtNJIr#+{9ZcOI~EBr$Im4GdTYo4tkafp=&W#94?fo`ToN0G zOZacVwF2RlA-(><*1T6E+SIXf<?!)*9(^y5&Ox|z39y_gm(wde+FK8^V7sWcD}&&< ztKE}EJwLa1ockbkBA)}U^91E`5*Dg4#}HIKpU)r-=J01R_{M5Ae)@k6Tq)^I$A;y; zMajHAM?OcSu^@}#SYQvn4AQrZ^-m7ML18s|{r6!QO(EHpcA?P*wusk!E<+=Np-{s< za!qbQFc7<kF{`!5FJAg_t~HP$fdBE8`EpaO_46R)a-L`BqTWWEz!%7}zm!tWL)7pK zc^UjQ%aQiuk#>yzvgdCM#4@7<1&&!6p08nZ_5x`FuW+B?t{_HXk5w0h>jIsYr+~k^ zX-%C~v-}o0s!{h$nIZ%O0F6czad5#kx|%F3Lli>1|H|$1gB`hqDC^CqKJfH^oNan( zJtsHJOJ)mu#~VT6H{_&14YOTCc?bHO=lA7oZd0fg<$fxRzw-&TS%JW<Nx=OIk-|Yl z2A|s_a%G*1z5#_CrVwX-`-P0~GXKE=*dBlU&xW}?4*Ntwpx|IS607b`4U44fxKUh< zL3p>NPHKN1JaO(3HrTBBqyOpSyCEWA0P`@z8YY|X?;>;N@Mx1c&L-0Tr3{i);9gTq zN?!282|TSe=Cth_v=Tf#uMZ>cvG3_#ZCk{Cm%0SzQG>hL$Zp5;56^!@nG(NtJiL4* zE(R0GXN(J+ryx!Z5735nm6QMs_4a=i&~&$L;jdOD+%h4!rj;-mzps2bR@`<eFT4kp zj=Un_8om3L;H3sw8apopX&QWgep4NiXPdCL?^@shO$Y_@EU`U))gZ22{q*w)izg^7 zziBulRu|1wHZ7Mkn%WxzAy;AHKzXJ?mozE*I*|*6!Jx~#z%;Ddei&LhV&h2UGxgzz zPGB47cP_v)M{c@%dd`z;ca9Hh=n4t9smHoi;3`yKubESsp*9wNsc!~6D{`i45n-^} zPS9kpih6Q^4Gm}rczrk@jt}dlwIaUJZy;F$Nm~)IA7l+kd?zLTQ-EPOeCzH`^UmL6 zr{}))ti%KESfzBfx_h=zYTGIyw*o1|-*Lk*>vv&Ip~h)yd#0Kfy#(net^iuQgFF5f zJy3tVA7(e~5(;ZLfpf!-b_eb61H9CR+Rc;-$cElyGajR)^&3~8`!aKS-mkR_Fj}d% z7s7>z@KVZLq96kDe+@Ni2GCo%Nne%jRX|P^6cNmP@~6pZy%K}^TJa`Idgx9Izl~p~ z^IjmsNvC12%|om`L3~z6{ts$qRITT#2j@4_RxUggu=)GfAG9oCLr|%ScgvUS|8rs2 zW_rOdqPj7PB(D{hptzzsWM%AYkwI<4>S}sTO}l#aQbgYx#)e-eYmzRmfBoQpTTR!d zT-o~L`?p`FVv$CMGxaH?=LNUno^75aqicOrtRHt0lqTmw_a;+m3pob7%)wf3ZlH(x zhU;eX#~U~PG2fW;=-jG@9j*!dgMlaJExsfJM$g{r^1a?~jhLvNL57YnY4PuJA%_B+ zm&^_fcIlV}g0=35Zezix7dQ9&?y%an<=fjw7dFjU&HZ7ya9u^Vd%9fyo{8ub9$f)X z%eScZ{oz7D**&g!vQkToat31Z!Duz!wTs+C^d8Zw+{EH3{-(tRb~u?;zkTqg(CL?w z;$}L#j$|&99mw+1qRFJcsu#PwM^1#6bh;HBr!l_HkAdc_)+uk=A1b8YVjn%Y`<BzG zF6#W63?Qh27u&8uGDptXglyWPLRY)k)m0UF%wBC{;vf2}&wAPU^<SEZXRCs4&;9e8 zrsefy^A6g^CH0!%pYxfuWKbcMnLejXTDl(O!TStW_s<mVrPZAnGs#_@I$FgZ`JpN) zx9?{c%^L3xI`mKM!7=O|<Q3zGNgJN-eVDTCkMXd`Qoxf?yXlQ)25FC8Q09ra_btip zm){vtGLR1tj11Q=yG*BaHl9fgr<V%@7f91A$K}cUpKg45dq}eKA1{^Z^=BGH6-AJg zN~1*5rF+*b9SqtTWS$sIqlWUJ((=WfSx<Ham)g5!6h=`14~6c{)5<x2>Ep@}tJ?A1 zs1TKeIX*q1$VgLVl-hA<YD>}ihQ3nKY+ey2kiab&BQ>>`6$Myz_t>nD9urgm3$~lT zX+ByxpX4%vRPUXQWlLlp4uDGeG^(?+wETSe4EK~->*lwZ{E^_s+6Tw#4}7@v{;I{t zu5WIB5{nMD#=vv;4>`$t#PJF2{xo$=Y)tuWOIzJq8krEtRr>ULx83|<iCVhq3oB<@ zuGnW-?Q?=$_Fu}OZx6zbft0|_!$nxe?zwY95WQfkJ;YFkqkN)V@0u-7nrHQ6eDCu5 z9}|a4=1W-Un2EZC7QbRykUX`|Vs%@1vH5DI?s_#r|9ykZe5R(sMp=G4RQesa{kA6e zhWn1L)n2zeg43G)*$f)#0MtF$dh%qHTS6Ey>-s$3GeIbiM}4lt8uyX{0EJ@Tg@#jS zL)*!6Yok$YM1nvcfOcNal`%F>HFnJ8O90D)l1q<|Di*!_mzU3lUXeT$w&#!FGZdhI zLaM<tO)r%+f~6H(2hrwI%3^xUZQxORur-YqdEVxCQg_L+P6W<XyeNp>4KS#$3{sV2 z=8uL$eXmj~^SrDLhGTqucfyGDEFh+(A*4c^%J8aw!Neto%lcvCf|hR3MR$X|jThqz zg6@@HL5rqU)(9<x@em#}RQ8aHjb5@N5+md4se7klB-DN4&@n)5=Eofq8u4&pk6}tx z)JwO`C%V9Dp2?am2zDKa81SQd(^O#8IwpQ+#wd#L8gluqv!|2O_FcI*;dAlPg0<Ue z2eD=VMc3}+`$IQlVa2*-@E6#f{`nZt1&Fw>6Qg%Y)I<Yf3|Ki;88AYs?ZO?M@6RIz zt>~qG6ffoL6P7Eh-|}}Udj;<kW6D#Ej+ougx>v6T@txHAPVrcblzFW3>$@rpb|^IQ zajc63q^*er>CYOF9;j;H`hrrkxi&jz1-CP;I?*p~u_OrW(9wuRZ(?g7#~-i5fI&4- zcpMFw*K6&z6kvxoYHyJF4UDaYZxU|SSs8PVI5`RsuIeM@r^bvtv$G=%T7FQ7<8aAG z7-`>JRu>Z7*eWr8C&DdD=(*EtRI3%$LP8+T#nbIFU>O?4Bdq^w>^Zjp9b)(-@!#)9 z(Ze%SOZ~Ve243n#UZ7Age~K(Ux=IxBQ7GY>zqVhe{d(@={r77&KUtQ722nqwVgS18 z?nTAuLKlVHCRT5iiSAz*-0LQ67NL>FllXO>eJo+Q8K7>oyEi!=5v5N%b@kxR&}U!w zVm^3%)%5D8y&ntTKakk6u+b3ndgQC!W#xq`L;Mtq!B~Na)0%2<nc;|aLY2{L&0<7^ z!1hwMF+jJm!4`z(#@N823=OR#|E~GHW)bZ$z0Yy+r#<;({GMA2shcjM;S~o6eskD} z)AZM6n_ZFvRETpmtAb1MpNnQMu5o;<2*<Uj-Z|!CjrLtQh}2gQS}iyGC-K4OnSBTu z%ou<gt#_-P6V{nJ-_;>~y|oyUa)H}5zjh>C^jdHpsWu4)`O~P~F;tl%si$(4qk2nF z1{6dG@02e7+GzGPtMnk>xYW~>=%vfNoX<nbpWVSusOE?5@IR7T1MLn4<E2D3=^tzs z%`2B`!3#F+d2ucvoQeHUYX0!zgKupwwn~I*X8(~=A)T9T%0b!=FQ|ol%Wh|{%=W}x z#>D{rRZFDsDBdvr-2u0rqQF)i?XDK#h8-}nDloUksis;H9BD@Lmq(xW{nz#SN{nA~ z(31iWja9vRzo*V7gvS<~dz(DP_vahlTyx8Oe2a1xG2QWm+1jDb8J)t>2*NzlsVVE! zM1B<B@S`#`u1>@+>SxmP>%AFiIpY1-7!&TZG7v&gzR6tC8KSdExzk><DxljOx&MbY zqCm0%yJ;Rx5ifYB-@;uPym+EX9TKIrXL7qO4;1vd<d7>7%~CU^zG42Ero@$)5srRs z9tQzy<#On?u@A^)hvZ*=ZuxQZ%0r|rRZi<Ks!Rj!{9|~&VQLS+GpQn9dS-SlF!`WQ zh?}tc6yY;6L3{x>_m;qlrIUHNNC^z)4aeft(hP<*bxa5uM}4}yiFj|E&``W+qLduX zO+Qn(5BB@{wBY%S)wBllz;q#H0uuof5AiM}*Yij-JqMbAT4vGIi5-E4#8XkL*b>1; z4$?>^HMU_&snw}v3p+<~{%lZutE;dysmDo{pdbQOYv+Cep!*MJ{{DEr!{DVVb&3W2 zRY7U9XRFm{K?b-uRrUK{@CX_NGz+#c8BBup5UJVZqkXT&sgrMw28`=TH}O0J#XB&X zjEWPY41zGtnwz&+gm?{uq{F`9QFk-ne`rK!GK1}zW-elstUcLCgdJNm&+WC_I?Z%o zqnA<R#mw6t4^(&MO8iMJ{`8cCf5Rc9*epe2ON22wBIA7$dfBKMZxq9hW}^YBefB&& zld+LRc*PMK!IaQbQK2fcsN5Mhy5?_`jTu#nCg~=0kwBWdb5ck#t)iG!RW5zc{|%cg z);K{-0s};(fO`5UG$JCl8aQN*qb?wTP(H$fVtfc`<ixMKu5b&KGz+B+s?-3=eZW!~ zkJ}q>sxsYL_4B&O1YgC)!?a6k`uB8D%QInvmVks@3{Z{urpb*UQ`C7~^QSPz!g(Cz z@ab^~gZ?(Rt4#gxNg~_eVs#dXGR)F77SAbGFRGqlMWj&Ok2)I~j}KC(^4Uy$=BSBS zWTBQ=jPbJj6$r}^v$HW)7DIu}fa$TeC_ra=P-j#$h7KmP8i5m8Fs+S%-wX~icC+RW z&9MI0ifCc}7mLI(MYRc(wpN(n!M7w!jC&g(w^1A<7sfULS4VB4W7)|vAXbC?K(SLX z>F1f47iol;Zlt)JsenP1^6b)7_PJQ+3m%uyOpF$Aj7~#wH3+oeLF-u{iAk}yc9~;? zm|N-mg6gwcN2?IelLMIiRMra{T3s4)>ean_0M&Vbk^)=5q`K4M+?}1Us#IKQI=Bxs zWV24S#;#JqSd%zUlnm_xvf_I2ElgwHAUn9+5vfMt(u`baX=%(3ADT~koKGAMDQs{u zBhdUcSLW{Vj+2v&Qhj81-L}7`S*;JK<KY*o-<JvQ4_A`0HZ$g#5^n^6PiSx~q6M6b z3kb^sIz)yA>*r0v7IkNR_hy<ziS;EQwg*N}eLrea2_U8G9J(}4k5ifPO!~XCmrYa@ zAKsi98V_-PLx#?R;Syq^18(IoD^!8EkLpD%o^8BCAZ)rY4C+)FU*Z`QjgeZrjUg6M zc*_GNvUsyl5N#9^_ceJOFwgnK|H~wGVu|MW7C-<kJ}hK?yiHfEtzo`FS}O5a40}ZF z#7Jd!-SPlMCO}-+fqM~$;}_^bu?JHv<Fd_JMa&L3bj51&I4v^H3oC|qwCYUDfcYhj z$kuKok4GFK<7?IAwlDKvRWE!S&s(En1bfW{*Qt!S+2oG=&NLOR>)t{{J}|5ni*Eq^ z02JlL4is?$(x7~61H}<nz71tvgV1+xT)^Hye>EY^J=kjW9Wl)m*zkDqsP~-zMf_0V z8Cl3272V~wLzc=TrqR5hy~XXmZMc|--MdJ(D4}GL+cb>$>gf$IP446~^T9>4GN7;U zI)!%#PDh#|Y?`a0R_Y+w*dEKIv_b|IdmI6HiJuLi<srWBUi##I^7C)()jHEVdu^j& z17f>j{e7MXj6fQufL{sya7v5~qEKWJ2pet{fE->qq>A)R2itXBfA^+2KS;}MMBb5{ zX;I%Ij-kG8nCBrfAO1FzcK3_LJ>n)4Sf4on!}mGF^ULi;BJXZw7cghO$;$PMR}#{Q zUOpizz$|MKj<+!YFQO-HT)FZbqF<N#pDkby(B3e+w+QH&4_F>RVoW;7fhkm<Ro6^% zo-861XjUHyu{?I4IRR%aKM~xsn2X~f9>=YM08+2yT0t6i@lX;AMuq0hYZO^B?&o6m ziwWNd1N^n6J;<wk5~k7O!9H$>W;wyv9mAsvR5^xgsp0=PbTeavf&uELdH1X-jt}#r zFGK_YmS=rD^_K|^`pY!+hE%1(C7v3<e585@B*G2A=&o<p9qNw@9oEl=&~>A0a+hr0 zzhsU~G_zqA5@=U_$2S^hY}#lDd)01Y-*u>AI09_IJPJIKBfw1FNGf}1>7g^}h~E0- z;kK3Ma)0|IMvrcwi~+5iys8(8pZ~{N0HWIOSH<$k$G+RI`BFHz$skzd_hY}rVwyEe zg=+Nynsihn8}o6K9SzaO-ycdWV$t;tv3X90OdfyjSbt$AsC{UbuK@yvi<T!?EJ*!V zz@m-uCIeFoJZl{BYI+i-*zz-`Zq%{L5sw9Pvjx!Y6=0o-XPpkP|F7goLfNZ!^g!xk zbBT$`Y$_|)D~d^b0GE!Ibsk$=W)Vy1N~P!`u_V9<3lvZq8P)a`uB|5Z4HX~hGrLX- z2{zMwh)GLYYu(Lz87wn?rr(?95pPN8VimqgM3JjQE}t~$W$qe{0awG8PT;l}DefK* z_fD0U+-*911K)4#jptdc>DaxbcJGOg#JNqoJX48`Mnklp=g(5>3>9Lxik77@ND=90 zB6{1XdGRQqYOoaZ3{oV-ejR0C)4auM>h%kIEvkSim@MGgRN;Ueow=JPJGmRzhSsNM z^Do#E)co+1wTGV6PWtN-8vdgR?pRlIyv2SF+nHoert##XLopQ4UxbYXWIsv>LMCQu zL73*t-rqXISx6Fn^sqx+<MK8FX>`5kkpn*fn|CblA-=<Q(aiT)IboQ$(D^4G!$Ymp znW`S`ddxHI<Tuzhwh35>9OjW28FYSB5%c)?j-PiA0;W-Z|EKLfqv3AXhX4Pj4+f(P z5+kCfkgA5!qL)OJAjuFy^b{qCjNX|f5;cP85xo;e?=89rqjyF`C-cm{_O<uD@Be-O z*LvPO^Lo~-WnSQS9_R7>Tm+I)n3B&ST<84xgv8eq_5HvM#2_Cox>*w1<8DZ9G83_$ zrs34tHjIiEmg|~=clj(mk$MJf@^!?dGYNBQVU&9N$(O%@`pMZ&;BL;U91H5Dmv>)z zojLNbx~G>ReK<xeDD-qH$DK5EiFtzlIqE7wG$p?1yl3qkj`18Pr=Z5!6_0BhRf4XM zU#XeU=!_TX7Jx1(K#P!>*N~7v;wOPr21S2xT0K_Z65e-M;+9Z8eV!(MTfvqOfgdVX z;b*s31i|?-o(WN$Jw0Lhm8Y&ur<}AgqNd%D226@+v<>x$34fR*@GjA`rnS2GZSv_1 zZT7$)0--WjBdZ0Kt8(=}0}SRl?bQ@?GM)W2d&lME3@l@83dF{MkC{~X@)6A_fQaV0 zn%c`XJXXug)9{YgZ8~257m)*Rgt9+%l_5nCOTFl<%+e;=aO4EkFe3sXnZnfH>L6xn z%oC1@D4&J+PQ$9IwJu;zv%5FBCAO}%(|9P<k5ShN2L)`Uu2W};++fBW%=6C}jvFPd ze!UzPpfB%*fmnbp634+xI$MAEo{Nvc-@K~akH_$OM=wuzr3ffkq47%&^U9vUA+9T7 zhW#-Y<*Xx-`9+LmVyxdl%@z+4ZOfJC1t0=3AgyXlnfbu?dJY|*hFKFN2Ix3R{C@r; z!I8*4&T}2WL%Svf$|SGT`o!}qf|^LpC`<5n+=q*&_tC^#X~orsB&N61@KZC)h6=p{ zGfcKb?h4M<2MVJ1?vDojjIbec8*?a5V*fn0;GpFa=m4JZr@~p!s|fm>T1y;#!~mMZ zB`;2NT*WY2Omm0hGD7eymeg}IJi9HHC3FN<#rI?O{-ky=tum=!z5#rL6hW5?#W-DK z<|{ni@N$RidJzdoeKl#W1G2<&*dy8-{2>^=QTiE#UVZ5megN>HHK|YE<EJM`Q>K+3 z%q3((B>7allEH6l_)3yH;%4Y;sWnE-Y3U>hXfmy&$J{0ZYexOlZ94-w5L(Zi?gbH0 zAVN$qCg0D}a+;$Y6$W1V!LH$^o+qt*`SVB`+kZ5Qc&0GVJwpfQzB-N@GF1e<P#8aS zXW8glvFc$dn;xvzM6&xpu2DCqbm*mgXc#)q2~uNZK@3+U0KDTm;uASN12U@M`zrZ~ zV=Bbh^I9x6_5KW9k-}zwC3j5~dENnajfg*QZ{SX11*VZ2L{@b7w-taP@g~2ef>IFQ z$h7)ttlYNsr`?|d)cioUY9qpiPbi$ka%UD|_(k9n33*rkDilBn)>3w79RM;8spvjT zO9aeFtl~bLkr*y5XX@$iYL69i(j0Y-ukGtuNTlmQFYk#b462wy40%Ki)(hPw(QI>k z;y;VRT~W47VJx_L0-E_q^nucG$p(w3Gz6fyrM-}sQ=39q&zsZ)7bdf)^B7hfA+Myh zy*Z~DFMH~(uMDQ>?fc^5+50gp270taKD~SF(XzU5(w058B}F-m>t^V+?C<GX3DU1< zujdSA-~D3pE%f@A;jd=Z9w)Rnaz_g-JL7ML-MDBBwMYH-;${xXOr!0pzj;dQ>=_r( z#-xKqw%>TYKOMJRxMbl>b2zt>1HnI*tuFd}jHQJy&lf&r)*%XLE>EmoqIXh2#PZ-G zoxww%YHxa(vbC`iyC1a?GUXdTYdnws(92ddSf9~PSev#Jp`FF-T*Hq}hXM<NAZ2nI zwqkdEqS}+f;Qf?f=a7}KNkjY?CGg}fj5a0%3wrD6pON5|los{0xABO=h{IEd5I7(B znP8kR?WH!7GGz41eQ%5vCRk77{-Y$plk3V5$xCX&%xJN!K3s@kQm{p+=oMC|q%0oE zuMSjT6;6SW7%nxl#4Y7(m$lHds-T*N*3esLLM-2ETxz#`rz1yW6<s7E-sB|?CTh8A z(iZ|QI9X*ZEDE~Z18qkNTE*MuwLeZ^bxCd#N_lgNVi_srT@oT1l+^(Js3|=CIN6s$ z!zLy0OsGw2=$RbiX*Z3mu0V}>(ub$&ve$^57maBi0q5p$)2XSE8n)Sm0(~^ntS{89 zzwj&c+k!4DKeGK=HW_M{SGCb$mmeUC?)bb2Luc#vC!32X-;ccvi{mfx%gFz(qv=qJ z;KQm&%Caunmgg0bB3OnaH61G#lENITR`O)}0DEUqa}e5QY>?wzn(ML>vd;n%2Xekm z3tnT;a;_J>;T*)O?cV830JQG-6XCjAPn+2vhCglL`oab;XTIdDnx%cpC&21Jjum?L z6rml8P_Rcm@46zB;Y+;(+2`DIaNS&o{wf7UdC{lHsQscp<CdRtI4fQWxJzsK=$SGU zGhk0(v1bl!yXDmFGIFY4&;Od{l2+MMr$n6ph;4qi>kr2|dN=dXeZC7Wyuk#bJ}tp7 zU)j(8?E`{M8bom-kXP<EeYO47uvRPi$nRh#w1U{ohli0b7vh~Bl!y=qyC=W{?xexV zmII!C#uYEDAZ$#z^W|ERsU{Yobo}<(TvZG!9`<}f+>=^r)%DtHDV8D%oIJ?xhG@q* zPGFdqv059K;e<A`R;S*ZDT?%G!5r05Vt2T*+@ib>SMqzkkHYEEs{9InENJ!nGU3V` z%-8W9ygsd?etI_Dub>x5zH0<pNkSCG3yf18M<MHx8qU6~xycG}bjaK0C7wm4j*|-z z|6wgCqixpRa6uy7=so9v3v={rp=gL3(auNO)bAX8w1H>EIY@SGx|c@}*>^dU_Vl$5 zVE=I<+E5uj<L-x!W5G*AE8daIO=TNO_0!Q(LehOs=@Cqhq>jeIEiZgN)te=JhZ?3| zyd20L?F(5D?muhd4qNrL1Z+~CMtP-aK*9kZ(cs=NdL^)A)@ZA;=(9KB_UGJ)<S?WU zl0oHM$C)`{#V|7r+g10}r(klBxa70wv_!RQ9n&b_IEwJXw^2ZYrqj6N*@u$fp-kYX zs_1@m4#}FfYvNL@QcLFVF_a=-ju(2JmLI+&Yl-!&#?2iV1rQIje#Z6ukZyb1=NPDQ zkOmG4leqhwdceD&cL~Fg2+IbdDwM^_X?jmH<LH_&3LKwl_#aqaNjhH3l&4fG!NU1t zm^+AQT2)rmDFpneDHx3P0ZCt1;5>w6sTgtk^G&2OgK+$E`YZu_gr(GT7qiuMrDb4g z4Nn(AfF$)RdnS&cce>WW!T_8Ldar=yz-H@?sp2(xraA4F>Q%E@0G=#zrj|pF{->PF zqH$>D$>e%Hdj+k!*kq_0sQ&6PR!EQs%&2#9mHZ+ZhKzkgP%TBF0&&9?9WHq<=HG*( zaf6)q6~fuuK@<g%0q8oP0L^!D+EYL;%n4JH7k<->eghYNrF2M)dWlYmD{QRG*0orh z3(u)V1#4{{Wix}C?}`-rs$GCVQ?TrDxdkXGXV<d(KNM)3r~PuY%Y^vFA#65u6C_%< zib=i(W<||0&cTwiCVH7x?0rEQgtJ9|m;*3q^@%kTEf8iOevKp!p7Um<Ue*q9?G2m! zoiie?9;;&5txsoy8{s>{X=)1qSs5?t>CStui~lN{1X#iuAC0zL_9FWJ{Ln<W%v9jV zi<(BBw?cT3g<Zyz{hM$3!(Zcic#^>2$NP94YW#|6Qe>KSQ3IEz=gY-Y2-t{n(t7rR zLk%e5vplQDL@3%Pe7o3}pUkGkbX`X>@fK90BorKoS&#grC5j#dc;>R2bSAmAAE;R* z>TMLo)YaUBVR6vQVC*}gRQLi$QPj1fA<DcY*!nkX*Na<&fF(NU=^7s_1gqpLZ;Kbb z3uL%lDoJ5{bqD4=t8_W1CFU%cYu56SD5fBQ--Hb>ib{PJyzwHQnc%NR{Ykz{27z8w z6KTX1PD^1kG9S{f8V}q7sQ`+EYq#ZtiM~?tq#}JdKFHNrQXWpii!7X9wd7qpecBl; z5{UQJ*P4bbGl|79`vj{Q8;nhCl$Ga80{02Tapx@%Kjw~)`JN?<e{C>r2`P|b!9(JR z3kFLwKl8a`4<1mg@MR~QtmDPh7(y}1=dbyIK!i$r#XcorZwxtD(`yDcp>k&M)kEj5 zIKCvwuMa<v{X_K3(Pe$Wr5pftH^?7FOVa?VUCuw{e3nKcqoTWUn@7mY9O7Tmd?6l# zw{`1;*5I2VjsQ8~{HtZH*FPX;d_I`C#&*~N2o?S)K!eL4?uQFRrcI-mFC1U|q}N8R zph2GLX8>Us=uiT~-o}d=7@i7EALGC*zn`ozTPPy^nIcY~ySd>nRx^El7{)Nib}Iw} zQ?e}B9JItn!}@*1nyA;UyBaF94;mH2sh5>XH2~wbfI!Bm!>J_-1{5ybz*I9G;0h?7 z{uCPk43ijuF4cA3WgmX;6lid!_kNSuAL89U`jLh<;1#eBv=MobNM!~MK$+_TnjdpP z8N^KhZ=QeyY-3XwTEyxep#d;@)Q47@vynYo55;6Ni~h9l&!#2*DG|Q$jk<NqU+@&% zZte|H!^48lll5sB22lI~=t3e-ESkYG`PpR)FbV{(FL3|!3*px12w(Ck;A4gKf#~rF z(_}hTH0m-n{3TA8S^y<tXk`nK)Rk*ZJX{V9jx9jV12na}KJrL^1x|s}da$WhmT}A_ z<WmIg0t1+c#t`AoIDhAUh$Kl?k-FRY=Cl`u040!7=6Z;9EYt;0+g89ZQb50|hY~}> zLkR&+$e^deXGO(PoH1N{;z&tWnv--KcMMt`joh0PE5^X(goA>z*q;wy+oVP_`alYJ zfCd8zRttG=6Ef8g%wyCs-{H+9Tj&-nyv1Lv7|qd#xPiA~wg8_chr}#}<|D%jg~NPj z?s@H99>N+z`5-8wKV~`*H4V)rJvB<DF_H{x4GwS53h#8sB;(=w?##{@9jF5RHzc!i z9~vT#EFy#+Fk$^#!>5HKXVoI-Z8#s|Ag(s2^w11n-GSkKs)B&NhDJ3a&jL79kyYeT zThz%?6vdeB8lEmem=8q3(sb@Hr~*+Ncoe-4a1D>L10rOZ0C+MAg(RHHe#71V=JY)@ zEspLrJ3m|;5w_1DRzTn)pdonR76BUGhbqTKVTyn!$x&xQ-brP@laUJZ!UVXyrK#Iz zcw0ai#G>gjkh^54S07C;k)a$7yWJ`-NEKmP-Wi3wznA@f9szzp(7${Zq>9&LEFcV# z8ECN(FAU98GRTNbccTx!g5*ChPXD#yy<14k%j_7C1kj7SDSijIp{I{2AQ%t;0W@te z1}29E{T#hWhk?<T#=KLHd;cU(CPVg55xA|7x2(dH*oR`mfgV=M008v+^SJEn_%H48 zjm?NL3i<KDZQx=b&IyRRKmxPSoCV>)j#%%nG>P>hiH+^L_nl#h2!2_T`=+=cUAx9j zGT2Z(aX|g!(36j8FF>=-Pb|-Zn)~$2Ns0cffEJnl`^%4uAxX>GNf)8=(U_R`Z=Pf% z15a6#uCW4!WN=+&(oy@TljToEv(HjF`EA4*WJs_bbtQlR8zz6EU!e}eQi7BKM>0*- zJ!YVQ)~^qRtir;`@EEofKG9TujZ|?KXdpfjV*wr^qIf#60c0Bi(a%>kK3~_kNKXRT zG=z#V`j>KKK;mGdKA#&JX)3m9s-nWu)a3%2vn<q@<Yx_b4Y{j#Xb(fuj6&1zQF77| z-)Y1Yh4_g<mUjStBKSOY^|J~KB7jDn;ifAYPPCa%S9tI0(c4HfgU|_sg#dM+=*p!H z;J`|_x6d@P0&KH_4!MxY(5q4x7MK7#aT;s^ICA;3q9P~<;}x8fozRi}QIuVmLz|Zf ztPoH}82Z;_qxZJV?xJ*WaY;$EUkXLP6ic&W#2LghW$xiY!pW#`fJPO^@SX_vmcDly z2Gt-1mE`1hcI0+@pw*LUnl#?L(1SJMX`dB9tg+Cx0z_&bG&(1Tj|pG_peY3oJ)wEa zIe8y*z|V<y6n=q9ol&Y-I^t(Q22I~Zf{lsODH1ZLt8$nL2n`A@X4SR;5msPq0x89O z#oPwQoUd$(Q{RgCss}@f!^~+5oNfbJec-o*T$=Mm{F+5)HDEl%tVMHhH+579z^ju{ zk_1F=Nntb-z)M24ks<jeMK@QA<xM|A`;_yT0aO8fI}W0c=cl)eV9|pMIm7*EOY}8M z4SvM?CDYs)6TJ)vwCp0Tg6aEl!G@Y;R(55^>aZrgGe2iazq#|r0j08@WzRLsT{@#^ z(KPXdoa-`jw(*F10^~j}-Bq(9z^)=D7EmR^HrvZ%%fPbE)PKp~4>6@dc9k(<mC=#_ zV;_Uacm)aqP<b({0>o!M+9WiTGp_PWXVq8Aksm!4YCz8a<azTH4lGNc@6ZD)P`89I z<#}{9_2+AxGr_OKX-YcFsFe!?61@}&^j@Z>|NOTB&*u`(^qyfgk?|lsEKRpFjV=K8 z)BHB8SvzlPZAzkb_>u!cSKTat8;C<)#mg3`w1{2Z12{OFR5^CU4(huNCV~|UkWZWe zHUQq|Sx1vgq~kHi;UQWbb;2NkAAq2+3=IU@VG@n2Go-GQ$ct*=lQl(RXo`|+ze$1& z$w(e?1VbN)BN>=E-*8o{@%q|b47K0QQGc$!_JTOXRvenq2g|W*RIzVTH8a#rh8G`I zo-PGnqPC*-Xcd4+HTz~GN_aCl4M@kolHuXvC4o`S3}1;zLTs~jc*_%%?wMrTv+C7U zjnIhzZX%<uqoLDZT3+V1dZIL;MEVy46{oELSuBk(nLgARa;2*^tg9`eMv<D^I5Pc2 zja^<MBP@xa24@7p8Ga?XEfUp{a-n18Gf+(^m6NW2kxaARhpNKTKJ0^C(QE#!)mdua z+4>pWO9V)Vw?SBt6Q0J%8Sw^yCwX<YhIh4x%TZg7vd#^78W{Boq6T%21Ax!uc8%qB z|3FDd>!IwbO#uQ(pMV%cGf0sk$gb|yuAcSW8~2H{EEU)kJK#1R=0QL;;i~%kKr3rK z6jUFGa`EbQXH-)5KT0}^I7p{B!W>JhPKKTCtNwJMkIkW<!{H)Ek2Vvim;RhVUD;_O zK%NnR?XZ5Ki0>i}mrgrF-(lmWK4<8mVSq6tGxNJd#DLVziwT`HvgGek?NC`9s$LIa zDjp&oF{u7^u>3m^T0nm;xzIuy#@EMyCIJr#Kyl5WY4^~5dVzDX3^$0-?;iY$WTXcU z{<aS!xIW~tKJ4`I95vNlmP~sN2h>c|Ign66ICz#g+!rz8b8*x!;@lNI$a6AX5gvL9 zh@c}Q@OrIhsKOn#-``;@CSt7qG9X<5%fh0V2*^k496%o=B$;+b98QDpj-zyse_bE1 z-y-19h|grY7vzDNoEifX%#8rK-Um`X9<RSR(MZoD3c!ca3}1*aI6>c?7WO(B;g6-` z(E`3`PmDzT9Q(;B+6N1zX59h0Nh0mEIIS3lh7kuf`TBFUdvg6N`vnmQ4HkC40CLS4 zw6Z>V@OA2_d+KC;ib72TUm`(tNH9kdB9cUtN22Q?(Ql9#8K#*oO|$4svpG(4L{6W| zo96DBKD{x`%P_-tX@*~CM!<1KC~`(5Z{~c@%*BlvF^1X8mu9c(%wBh#m57{`%A1wx znZ3C&E6*^eaA{6SXHLa&PBn5)J#S94XHI)#PM2Z+_N94!op}R_<GfMi{Jp$+)1LYJ z8}knt7R)a#JknXPa$K;ETzHbVVAr$Yu(9C8u=w=S;&Yuv7so}n$i<g=i=I7;uQnE6 zGc5UBTJqCb3UFKsid+iGTMFx0ir83+Vpx82Y5ASb@_WbSn8@Y0yyb+R<&PW7pBPqB zF0FjlSxI+X$&6gd&RhA?v+{LgC7)rn@X~6r&T6USYI)>pW!`Fa&+500)jEc?`b%q# zI&002Yps!M?RjgRJ!{<?YrPEX{g>7Ubk>I)*GD4P$MV*x)zY6E>r)IH)0Z}8bvEW5 zHx?r|mh(1Ndp6cLHZ~bHw=QjN>ul~gZtg{H9^`Ev^=zJOY*Hu;WRMscqDzK3kr7d3 zntU={FPVOm%*eRKB(}w(yT#_T#Syi2Du0W+ckA@#7BAy3KCxf?y1xXRehEeW63PE{ zzW3L~&0k`S+n2?*uj+1JciNVS+Lp@Smg(KTxw$RR_*+5jx03E}YBxzW>bH9SZ_VD{ z+MB<18Fy}r?da?77&z@1MeW?n-!bjoxxcydka5>sZ1<7wu9efSb=2;Y{9U`=U5CwG zC&s;}VtdbZ_gtLz+@khg=I?p-?!DUFd(F5{twi|g?gu#S2Sx3N<nM>|?ni9yM=>6} z5j%LNd+^@rASUV{F8?5*_u%8^!6(MU6tTn4x`*jbhnZ1_*_8alFTICfHxKg}j|#<( zigk}losP<*jw<tys(X*VZ64Jz9@mQ<H|icYI~})19k=HnclI84ZyxtDp7e{I4CtN= zIh~9|os8w5{OCRTxp^|h_-9(|&#dmBd8a>%QGb^6|E%`@S>OD#$w=7}qipL^cBqh4 z6y+eFa@0!!wsc5XUl{!v<ygIG#X$Pga{ipRXOu(PE<R|Ay*+y?^7Kt_=&3t%YHtO! zla%A`%xiqOc)!;Fl>UNN{B?)Pra1jYour$u{y@3zF6pJJM4VBHzq@=VL;Is#0GGka z-5i6j51Qi*Rt@v+fAfZM8?G4_S#>9=Bp9xnlsWvY4d6D~pqN#;tWP#47;QeNeRc8& z#$!yzH3ZP}-bysyvS^7oEg#5p@0VrA`-=}-67Ow4?)iB0HT<;6Z=3Jw+MjNHG}*Bo z{(8SI@U-c!{dlRvRLe)xJ;%v!uPE>{X8X=F%@Mq+NoEJn7P>#m2c5Zp_+n+~>%-Qh z`$w)DKfk?3@IE+p|25zJN%hl%6OY~XpLIdJ5C3=_?yOI>etJmp{&R9dL5O2Ph;s#4 z2&1yN0*u45Kmoz)FRn-<lvbcfC)OmcL@zN{pu{K-y{ycndah8JMOXQ<3Y(E-p$f-C z|I4>dS*I1=;&y7fta{pQu27ZtHS~%aU(mTCHU22&E9wF<mPHhGp-=u-G(<AfiZssW zH(k-ZSUy*zDOLx)s&%>bT(Q>GUgfLW*GDXiwI!zfuj)uGrWNbRY&Kohy}376tSe7} zUei-R2$bk4F{)g<t-@hda$A)*;MyH^q4bhFnqtk@^tC1COZ0W+Vb|~8Ruw3{tFNna z-N3-es?@;fVZe36d)DcthNe!<*NyJG&6gTId=0x{Y#t;~X8b5h<;Fd$7^|{-)}I1y zm^{f$FEg>rZ@yvbP(EK~>Qo1lFnii6P;U0TS4HB!%ZOF^eYdFqi3cwi)5{-tZZ=Ci ze6=@U{_r&gCW-Sw2v*?y7;j0M2XH*DFc0Dll(YyD%BZji6Kj#AJc^K5sCX1550|oh zqbgWw`A+wil+}Bq$CXww4+Eth$604oK2C6Ik+S~iwoqyP=`~#1CM8I)%I0&_E$Jue zF^{XBWPS>iw$0AWsIvW%-y&`IwS1w<F24>gV_(=RSZ!b2drQWlbmVchL-|yojAP|u zMzv%0W{Zr|x4ngGr#cE;*0~-bRO8&ps4DxknZvr~X)AA#?6Y>E%$jGNVy&{zyCoKD zp7+WlZocSO75esKKv(sq%aD=vH<yuzK{s8;tTVs4{%~r&>GsoY@tfP!YlNKpbdXT3 z`)rh|+{^hG>)Mx#pMvB(mNPSJJy!Eu<viER7i&E?>k#r@TdhKM6tC@GRryytBi41V z_NId5y$=>M>%5OPTjgJ$>@C*4rce+#049kAQ*$K<WgM8T0t>&<=fmiag9=D0&>Hsn zax~%K*DDklT>JcZq2@>xNk!%lef~nq=ClSCitJ^50b>5<C@V=NuHn8wi6(OfmkOmb zyM00OPz!W`r1Dwz{$N#Q3+DF~%7QogLv;NuSkom{L=F2xjhZajODj|^x%P)Wgg)YI zmb`W4Lw~rn@*}RHid#3z`XikDAMwmfs!9*{N4hmVI<r%uD!1Do^%`o4fk~+;vVSK8 zDO;Xpt5myn<NKQ^f6H?MQtBFp-`~bGSqfgSRM&C+{_YdhiXyBcrE%xO_vlPzD^Y_= z4a2hU@ALhwE?7xvnhbycP~K#9$)!^B!S45%I_P8Z04XgC_JP<|<;PdvS86@JF%Z}5 z|M*(El(wzmK>SG4;~S-w+K#RR2~$vO$z~~?XCDR<7nQB0hbnbk%LYDf`diD+OX+$H z4<zk1S<CHI>U!@Ee4;>YurO&oU-rRdgo=$KTa{kmjlmSg02^fi>D!@(gQ*<NHn*-< z-Hvn}{LBk`qNXB!=k15VG$EBI8U|H&K9miniv>K<vXa)1A0Et*XnvyOQl+1?JD4dC zv(*cbzMINEl%=X-d*^-C-HaPU*}4I?chjW}atw!ZjGAo?ODR<bd9FiW9>VO5o23nl zJ`CkrtJs+gRT-9*4SjVAurr&NHmVvP%5!VBd$3bwRJ%Kr{~BhGgUJ{-un!jmsn}bv zRU5b57%q$ou(uSDxz}MhTolu6|M+_Ky&l)$;!iLK8x<Lo?;nOsGF2RG4XRCs%Z5wy z103wFWK740hs(;F9UNV%O(%DU%j;l{&H*xJGwdT3ttyVs-dCF~+!(3s4RCysE^~jy zaHMLa+0nJM`u>LNNc9xV$-P<T!LJV^HH#`v9z)d+cFRV-Z3Z}b&C5JI93H9NYj*P9 zsebrpcchL2bEdA$;lLcD)O5eIFIx=`E-_lq80hRTAZt#cH5zT;XmJj_USrPSHrmJw ze;TYJYrz~d+9Y)AX{bSs1$+5uvsmEMa4XqITqC0`5-m?7U1}bk*&A(@hd(0($XcG| z7;96#_3Z8Y8cRWmv3A|SXVK}hR-#5@9Y!tBK9ts2U2+@id<cIY+bsL|O3YZ7^{wae zLp6_Yl#g{g1wK!lm$jB28S8Otd7iXWV=cEg*83VxJ+;1RqsTGd7j)}ID%&@kTN2~_ zQGqYg1a3ajFdF|J)AAzY`nM-KZsP-=;4WDzH*N34j1Oksa>+6HW@}hJK9nEml52I- z&SYeKxV*(B&*hulgT3*QI=E{=z)gD#jvu3~w_J<ff3trqLHRM(8|Ye+e$&C$=*Rd- zi)&fwHwQ<zA3vtxZWYZp9iPSgm{`2!RyFj^(Y5@?&&@!$n)#bf9wR>{_gdU)cfL7! z@BNsfz}<;3IcHyv2@*opomz!;4wRUfW(;y~5|DcuYBVv!(dyoEz4mFO+r%s{;$@qP z+_Sea6LUhUFFOospM5Bwm=_Cr*<~g7Jbq+iL8A3#k4x?Iq`iqnd4xw_fZU5zj-N}a zsvh6p*S^S*__?eb<T02o=aOUebH%9DW4N@|CC}~W>O+L*XtSJaQOwUZYgNzjp<36n z@}KKYL7o%ya&A>4KR4W3Jtuc+-D>xKZoWo%kzn%f)VMPFWss`Z3|pOhi^SwsRFK!4 zfc(o2qsd<}tzHY)>t6P_O>TceyjoI`_xK(&`8!kf)rvu#$8h=NPJYm<H7j|~@sY{h z^43=yE_I%hdy{*02yb$Lyw?oJ)PAd~_pkSLUJDXa2fabwztiPktr$%mj<kC3me#%6 z7`TD~_zs{ntiUF40ieDr=ql&{Bn6oIf1zNOWDjKOeb)F}!7R4@*-`ps<UbY6{|&+H zEYF{+!$auKXjK$UHwORzBbdobVP~|fN|pz*^uIjlt}6Xs5llZiUY(kXt=YDB=O6xW z2xj%(CaE!u!mC?bbFjTM@IMsH?bWH?x;hF4fD4oG|3kqPp7v)ow3!aze4I5M$m6>7 zKNQRhWlJ+*;w{3n;n#-$KMJPE96_1=$=n+?!R)!WS~vbXg84Xm{)3t8@_Y;~P-G$2 z^1mUN3C=Adi-|9WpDccKU-)kbra!ywQcAF3&QfaljsJ#V#y-wj&Pa4!S<Xxj6kYib z1T(j6W#vmj3q^D_w`ACM^*<C$BK-VXK@+>(T49^um;X>OO9l<?)=Nhpe_1b^aQ!a@ z({7`3DdWpV)mqu=Mm71r6wHM$o3+QgtDAKI;sTlYUkWBlVvXF0R=u#*#QJXplgDjs zs}&P;;aA(a82exULNM2Ub&9uM*zUSEV!z!j`ELXhi@5l^PnpBvcfXp@zY$E;i#vmN zjU0A{jIF=^8^OG|J8Bu@usddx`E_^P{$B{@#ETJ!y`S!jU-u@x_9*{UF!xFR9FF_b z!9scaGvR+Lm<MywMve#bvDSG93yFU#n1@SgF^-4JS($l<E4k(WQZP$K9FNv37W0la zYW6n%rC@S69dES><sbj*lGyy0f@$P*vNLL(f3iE_wt2Eg3i=ztJXp%i|8uxjzWL{f z+$u)-CxW@Zm{0k0yhnXt1W?HULX8OKBL5S?Y$L*@$v)`tWT=o@J*^4Zm$NGwF7Y>l ziAq7Lsx>gjll_IYQfQ6Z8rZAI0pfonnB(L?$*vRzx3<PJhvXnEDiuu$QfoT<w}Khd z)+8vs6`~iO%9^RxENZe9YTT8|{<ngOLw)9KRcpBtzZGty^_gp=t>s45R)ll--wNhd zq<h!rGka~Va)(<{cvKn&q28v*^@|Yvw}L7C>kT11?VON$yN1cHx3OJmf)efRIv&5? z{S(3LxD)>?I!h~E)Tq6~u<F<Qg7EYU*6N)m<9{QV?VS$}f5i|{8R9|eT^3y1v29uz zS7O?`9{+`4W?aiu@3uABjvwvHxKZBT?dY+cKtg3owyO91g<xuBN{_VnxK?d{B!_3p zE~@u>jBh9HcV)`$wNrZkQZVVWun3JlU#{QDNbM{|j*h-S>E9{nh%Dv56wKeLoZVTs zBs%&dJ$`@2&}XZuYJ7hi|2s`sJ6pr3<NJrd6wGWbYmI^U@!uJe-Pt;B9Ro>+zcaD) zIeI}FgQ;9QS!(}OFf*igvh^Zz?q+HX<(TZ`7<cCwmUj&0dF*__{e@r-7sc=7+Gu|< z8R-}<tJ?YM9P!0$QDdZPd?(Mn`^$sB5X_x?Jbf+>p*h;XwObIZoom6-Iocw<TS)i| z!5r%_*)59g&V4M=Io9K`TbxY))kalw{CoUv$zKR&=lF2dZfQZpS9@#CALEqq-Li`A zua0h=KPLZDF!P*)G$&@b_A1)6^Pa_YPAo|8RrW>Xy~zBhf;rlq=UU$RbHih=nna)P z-l{qID}JwLNju+Tq;qn&>YobcqUO}$_+IUPcfR*t=hUCWy*hxQ0FTfjfw}jINSy*- zjxN$)2xeq~zmV26t?7OPXHP+(MAtNf=YAuGp)gogYlb=Dp9rQ=*9?30ezSOFVYs!{ zEZ2|y7RjE%NVl%pGk+nNMT8)&xwG5{ZE8A2Z)3XV1Z57|^&*R+GqvVL|3WZ}K9qOO zU-CTY#4!}dwrVY0NjT`T(J77}=~}o^eL(5{OTpAyl>Twh<K9!8wAZyLcXZH;XDCTV zXfG*pANB?7l%)Pc!IU}dCq$N{3285Dm>zzQ?J3ES=w8<GJRC@7D5WZxD|ZqO2eWia zbBwxI466@^3L;B$t+iK8ejE;0^pyTX!F+IZI6`D7D+tnFv*11&ZPO_$is@c^EORvW z4+Jw)d)?ObXneG%tgO6y-O=;t2Z^D)qE&n2S;AikX4OddhHLfFPjX~=&7$_E$B(1Q z{hspLz3xr#I#v*)GoFahA^WmSOnvqy3Xk57;FLU`Mn_3DeIo<@ujA=Ei7jWYC<H}% z9?xPBFKI(@Tbe@2U?qxLCH%2@xT2N?Y$Ld`%Ub7oypj*-ITn89PEX)lc@GG}Ie^z6 z17)%F0kgINfNjr<3<w@}LEMKX0|VtnH!Oxv;<>!}LeE?~S;bMLSy%8o%JLwDWU}A) z#-80WF%mtu@KH*Bf21;J^18cIwXo<VH$@{KI=kL#Qo<#FqqXEsUso&_L43dE>MQ6u zn^qW_vWOrzoYHr$S+HUNK>H*hdUG3+qX5T*<F>QhT4{04{(Y+lh@lD?3R>`c(C!St zjD?Kdcd`br`Jk>Q<JTSJeKnds?mZVIiql>`8fSdH4J6|)>_;9;_~AJ31pAUd$$LR? zGvpz+VhWOW8Z!R;^*&$>Vi4s0b3F>oFfLCyP(=stetF3nPx3vOryTbr)c>(&r&fmO z+*)7%YK2xK@D_%k7Ba%e8b2Wcav}k=oR8U(;Wb2ev<?0S_7z)&6+<!{kB7yT`y3m& zL&-j-yMQEsyo2))Y<o@Mpu;5l8t($aXjFWk*Ja_?9~U7_I6uQ(h%nVn8u3F{P@jH1 z6osvz;`GvOerj#6D}vzXM*MYe0S$Nvwb!g);lnRZ!x|i*1qU}^=%X<K4{h-M9N;r* zfvPREl6uGo6@h|FuSAeRs>7(uguo-~AnsW2AU!`1HOp=SI9e|V&*{fcf(1|{EmN>? z%jCc?8(#niQ1*i54XG9S;2%aI`fX67tPmMP5QAz+GN&JP(Dg_yRB{2hjHd~W4b>m@ z$#Z|iNTwadhn9@`3A=|~yWv6H3;DJma8)gsxNlJ)<oVh-Tz}tBAvXNdf@kAW`1>sX z=a`5K8D3o@;luj@71p57SrLM+uf|lvr;x!H#AyVukwQ1T=NG+}k-`0Lw5FuUbHmiX zQLnev!r*$am%&lI!ze3p$mD3$Z(&dnhQJ$$DkVaef(glz;7KBZ#}Il0NBAZDCVBtG zPu!bRh9Ev7jH&%i_7Zp&`IdPB_=JWbp1e)22wl&5%e)KpkPreCns+5xG<$0A7(awL zk>5(kg(@Z^K+ErFcOgtzu#{AEwj}sAnog|}2gO4aD&Odgg;6ISa?bSnAvh?S?l|`S zb_H0I5b;nQhe0Fd$au?xi0Rn3PnIA4K*PlMJ}_5CUX_aZ1EUiseQ=M9+!=l6Rryf0 z0G`PaD|is4dM|c20A+E41(W)mVq9;y&wA?k7BQs6lExNQSyBo_3pJ#IVJI|YdU zH4nVg!)HiEYhq$@;vO)f!D$EaI+dYLk_n4DKrAV~VmVrb45^8GAWs0F*Nd+gd83Gj zMBGc9RslQ!Sm(h9J(2f)QV*bbWc$63mX+`20J<^CsRtM=y$$K3PbJun5I?(o|15z< zAUJ7C1SE?|Sig6Fa}S;%^2xF?vijwxfq>VCnTf~kZ~B91nrM=T1gI!%a`Y3xmYhgC zZiZUILsyaoLp<rEQu<tcP6elAEXVPznDI&aZqcOrgv9e#nO#`&6%S5LJe6=h)J&2y zK#}HiB@L7!^|@BX|JG=<q{askz+0BqOxNZ!2UnVs2sDW3tuk(E(iTvhl@?0#evq8@ z%_`8QE$nV+jA;mTCM3N|Am{}$?Y`|tI|AOq#MEmkNZlhtC&V+v*~?DaG-xTrdF3M< zK*^Y7=CFmlbN~D@K9!aH%KOkHF*wsNGzm^A@DA!Q$>4;TRb^#_c<$_FWy8XXY%-!d z;&{n%u^J|o6=A;P*@^dn^T`=0v?dLb>EZ_<A}+_b751VkC#f|2UB?@QGf))o#!`TM zW&7p5N<<#*J01W$-S@>;BCVn7-bCyd=5~-s8@walO=~5s+vMJY<cE7>;FlGkp-?x& z_^&arsPyqDPHdV5I?rJ*-CQH@?T+`vN;D_Q=Mgb)CO(7Abr0;3x4jey>j(D7^Oy<9 zuNC=W&B?^&X!e2_=;Z=;YXAr<2sKE-XTM|D10g|$>n2&u8ihXdDO_qFu*rqULMYD< zSGagE#?)9q!`Dd!5KBgL5{m38L7tJLMZQC+ViljHMF6e>^bK6GgEiPFv-q{aXPKq^ zVPTL$HQE?kVlM&W#}%nn8_A6aBuYn}?L$lA357YaaL-Z?mo&|zjHxydgE<np3=>X{ zRV2XcHOd^=(oK#&d|yEu;Ry(5&_#4CKMBD^E_~5xXtI)F8CT9=PUCgNAfs38H1^U7 zjchZna8k)=?s&tAtw1PzJwbYGk^y#fEGruJ16S!hl+hQO_uLLmI;@1;1}T!#PXUn4 z&?;M(%((M!c0`$0X{#Y15H-1Lhx=4<-Vk3^wQU3X>WSW?t%0O~L_|T6&IPS9h9One z$hbmQzJfj(G!G>?mib4`h^N7uoSNmfZ*2V)Fa<yan-xo}ocA<{&-r#D3>a!Mt(l@t z(cqcRqU|3BpF?Y>kR_ZxMcc?K_-*j#)pTY;F(}vIYgOs84UrR6xtv9W-v%{u#|l#K zA|)DBbd*f(mvCM#p~*#akwHFEAVESM-vxsvjr!%RGA^c4kz90*Xc+@{qwY@bIs1sv z1g3`xjWi(eG<U3`9?XBaQM>f(wZyVt+)Va%O*9Gsr`89b1bY3oCPk|}n<FZ}-i$6R zH%vq`V!;nqUdF66YY61uwvXWKYvQV}*tS736oRmXq}zS8j)`|qxLTfR)iO<2E(b#x zx4@?<#~)Ai!EFv&mD3B{)xrKeO!*0s#sJfIx(Y0=hLEeze!i{822?uERF@EW1I?t) zQ^`w0-aKxX5h!xcuElKCEC+*_6aXen?Q>M;&7C44>FAq4<C*Di%N0=OEy%sZ_x%V$ zZLYrTQK}9#DXGVdlwwLXP3J!Bx{+Q2T?=Q|VjhuYVk5aQn7x_M(!Xa{w{6pK&WE^c z%p`;Xh0?$<i9MIC%BI%Bh4IXtYvJm8OlOm0FKKn{C*E=G?71HP^_)+`@=`mhu){qL zneWvn=u&ZH7OrH^ESVT7g<~>Cm227eiw0CaH4FFq!mN@Q>FdnINCfb!2s5qkLX`9> z1+#EYLbAy1=4JO1_Gy6r_@lknfIxb+(9f`M)y$6*Bk=?#o~~9cwL#4L8i}7_D82U6 z=B=l4nG$#^PvPNhm?7Tx-&D23*m2)P%-g2iVcc6~_)Zx5;xLm-t%1WZJc2pqIO0nI zlecD8B!1{wgx-$nu=2|h;inx_#&DjkikYxvABWozvyp6J0F7oTJC3;1$27K<eqMYa z>f&t{p5l!)=9c3K6p5+mOZTVKxA`x0eA@?oK4Cs-1M~9L4AA9#`Kos{Jcf&hWp<6} zengBGF{$#S9(HZ~n|tncQ128cGqd&wmOgmk{Rs-R*}by=%2sc)8kMoBji$sQ@!CIs zLtC7dze-H^O{qco`s<vJXr(Vs0_joP($UMIET>N*95Ku&RK+=GlqG8FmokCt;Dh=r zmh&eO>EYvHU0q7_q?0)UIwXcAj79b&;-&=idDIX?tuCh&$#Sefrf_h|hDM;U@d5oX zcckuF^|!^cKd+<=+1+PWGfQ{=IJ49A_EN}1iE+`*l;PpvRsp8(4>Ulp9cF)7zLN}z zxw6Xg(jg+)p83hdsIu+c8Z`Rt&9TCdEWr*DabC<GiK#2CeRsWeG}@!xmrJlu$A)7& zgj3oK##<hF>lnOz?><(Fy*+N0$6SALu;TRM4C{yOo6$FTSWntu=eH&-DIs`o9UZ%| z57Iheqw6du#=!ZMPAI)w*d-m8moe@~Q=LDfE~IotSGvXh(e{2>C|y~plJfK0D04zY zOn}6EdZc#Ha`A7j$*Vq-!<>B=ZucBtd|8~NO%RE5zeiGjIyKBWa`tks-SNwMZ|%4z zt4i%PYEMbSS#)BT`<B~1dUdo@UnV%Iciy@^J&dFg_gPZ97mzc)-qjRO*I97s56fA{ zh^PtXN&1SG){UOK2_&5l`_-)CjuFn2%%;GAlH9AqTCLiH4W&~(>eI75qdzW!2Ja-1 z+g>F86dBj<pX+HGzOpr#xSqwXtMy&|qfgwtYT<lO#mLpdMH5*v|EA^-O5B$F5v%P+ zc&Iju<F}SqXSS>ECM}+deUrrMz7Zaw$MWiHZ0N@Jx8F(iYtc&itS3msjr!4xvOZdM zng=55;!-Vl`lIeSv)s;$EsNbLXKjP(wCdDP3<tAti&twL(<V9Yrk`tvMy_J(S4v`8 z$|7P~)%J>5JDk+p4N_Kn+I~t-|61O7*^k`MJJ&g#MAGwF>&cpw^4U<z_P@Qpp9Afh zKC`K5zTOi%CG~XkO@e1f&%sC5ZZokrjp1x_8{uztS=Q()EV2$W=emt*g9j7Ywl~5# z@>q^;&ap%urIhse-w$DMVgqf4pX*_%JrnD0bDWaaTU{3{EYF617=DJ*%OXT<NTeqY z_Nvo-JbpjgYg)h6jI5V6pYiVfGaIGO`RWAU2C{Hu6MYySOlG;tfZl*IoHOntDfrW{ zU1CKN@o{edmkMUuy@3VoL@Aezxv_zNA((?px6{<$U$Xj71al}N*O@h5!DpI^V4ix0 z!Mn_H7Csqb*4mB+0!yFHi(1}kTDxEKa%W@y$H?YGq7RHw&}@`!-W0+n_IP4+>rvYq z0Xj!^KV}pNSa6KwPO+bXC#rCxKs%t2{_JKQU<UWgZuD;ilk%SmW&oqmWZ^wpjr#^- zy1~<kM+>Qi%0Gc~hdX{Z&af^{{ycIcPd7&iJ)As#`FnXN-+C&^R``mgxLwPc(~Yi6 zJG0N;94g}f9QwP@U)`hqPX$u}$sg^kNP8~_A3j$Dc9w#ZAK8b{4~XJK=@r8rq0APb z6h(H^7h5WvkD{O6;<Eb-!8FVD<+O<HZR)?^+<mzM4-FG#4cDRvs8!Wls(&MxCBHN- z6c0YrycF{c1J{bye|D8l6yFti`BdtPFY-I91B`BA>6wo7YRR^a?DpVuUAd#*S91^# z>K9ZcMwlD4+6sgz*HVPC4pZ7xM!;0LbM0{Zj@H$o7y3FfJHPeyl)kR}*tVgs-YJCQ zu~&HXuG{$KoGBm<l^VyUL2o}Faxwacf@y^FV{`4{&8ZB~GdabK^=n6|yC%!!<|GGM zH&WdS{W4BhQ^)F^T~p^qHaD|p*=KQ#`qy&}Qy61Eu7$erRjxp3hN*hFDDr~aL+_)V zy@z-RyF2L;4QB@0a{cBKFnZyhQO_4;z1S3WM!tQE@T<e_k0NDu_h*~1oVP-S2S1Kt z7!184B3vMs!~EWHaMg1Y?8*)vCq5s3X`N)po`UAR5_Zb!mB0_&{lLPrn1B=}Fh0Q1 z<AaB7&X+REp>1w)&r?=O4acfv_RtSn;Vx2@c69Jsxi*+)sq2vgRl)RhtXh?`XVtDi zn>e_MkDA{o$uWS4As)|rVuqbdJ)gF4yB$Am<B#F_td~Y;#y1}AikJ1}ygHXp`=`?k zqh0dx_{E_9KNL*UsWR}RKW%uqQl(L|G8gXtFHQYFnG_id?{j#&&xA?*ai8PMr7r0b z+9trwcBUMW-`?`P@)x#H_x9YV-uvT8ZglGcT?gtdLK{1q=$ovIM^}B>Zy_)c-aICX z_wn|~>(_sdUQ@**K#>;937W#=vwmPj?|F^+fDg)i1+ZPOS<-N@i|z`jj17=5GEk72 zopKdagO#w!F?^`QFRxL0@oxoFkrTd#5Jr=-<I8e?3g?*6FLlEG`(#X2!~&JhSujPo zE1w$<0S1;x2wg#t+j54%5SQOW45q5_{&`dNISY<&`zqprg;*#W&X9&{%m_)A=*juO z`KO_}fBL+;McSj&>+Y(u3va|R=)h~2ip%q#5+%qv?74ryS6NN8qQWdK`A;9Hsr^zu zZ+7|KK-&zrb8Z+t{+`L^#AR@>@}20<=d47uPqlX(zj6JLIBSn4fe?3-Pp=j!<I2#! zlOP-{Mbb*_)qy4szU|xE-Zw4Yr_p{c8Ongi!>Q0Mt2hxH`(>C7st<0YL^#rjvObph zcA)JXIPjGGh7ptC$~#(f<pWw0pgoHQ!}YE{e!$sP;?WxaBjg_nrnUS@NFg2DJEtYD z@GEi4S~k>Jl9v+HT!#$O%^*op(ri>NdfW~V4ONx9ve<WlpxcmD3|@O7B+Id)?p6{Y zjv%K|yNF%kEq61nra#fP`kgLr@clEAHC*AZgE^LTT9NKEOmR|cPkJ*nt!(u_9^T!7 z+UlK-h&wz!d*^NK)g&dhFjmwy`$0b=yPkmEy>1V~lG?z#%Tz4L-Io2+*=t!s^Et+x z&ao_!jxaltmC4DW5fN@!peHh1nB{SW#{~9eeNgoNswf9LCW9g^JO`3Mc;4%JY*?Id zy}fd@qr6E`AP;M>^r-M1Ck1%QjG4E$yMJUdnlXe!%B;1g#zr@Pc=08J{*47GR)rR4 zky<F=_%y<EA~ZDIQu=f}CgRGtKkfVSN49q@ayeA56Im;N%saY$3u~p0rr+m6H5|ER z?i-zAzHHx-4rM*Kzu#h1yDe~bq{g*Ea|K%UTxGK=H9c1KC3Ey|0cRh2FA{lL+iCW+ z32jLN^LBhmozf%dBg^-l_s<$PaxXXs@fuZjS}{N}p0|5z%9z)tr(R~;H{UE<Hs@?L zZn@fXYR$5h6wAaaz%+R=^rm`m3pV+|=SHE32rtWXLNCoaDRvJQ)QIDevBp($-u7Z= z_zQ#oXt$d#Jd633EAlIj@s(FG-b1S4QR|(tlE<E1x33EME18ixpJzP(xUMAt&=T;L z-gYW!iI1=Exj9EI&+VjQBV_)eU_SoscVo0^d_0V1I2joadA024#c;)j?mTnLxQ$+r z$>8UW9+X|%L`bPQa?^N0_cNW1R_h_lTM@I(TLppA1e1~K1($q*Vr8{i$)Q0>r`(7W zHk6j&3t=t)xK}6kHmauMhJ2q-^}E~K>$=h8_XEnaNR+Uy>BOv{TctyTs=V~&AFFxi z?Ttn2NVa1W+Zk@()^EO5e~|F==!~d67F{=a3P3!ob)(eNdy_pf@BBP|?7rZ>9}h1Z zu|j6LH($)NvskH~=3X>qGk-VI{|Xb$A@s6cyT|I;rNr6uQE}XlW*aBjaIi|bm)#ED z&!LFBvlkW*nx2U#ocDN3*VFQ{Kf?R>h~wS)o7RWLP=$o4GmhXeq{R2H-Y&T^Y?(6D zf%X%X;PDEn=OP5R;cjo&l1F!QH1|Ay(7}So(aGB1{I1pyc)Qgs-jB7LuljM4B#0SU zKvZ12mb&BZ-Xv7}Ccx@w>a<g8;5a<t<DZhh5KP|w;#aS|7A4Z|{21N#sOa%p)_#3R z+f%lcWPRci>X8t1#ZxUS^VPaTl<fRu`A#+Bt<iJJ_J-v6#%`mK_m&XHq}uj_1D@~n z$fmq9JM)?PmQ3%Rub+w^2P^J%F3P!{{lZ-UKSqmIdmnVa_Kv##8Ff|7d+%r6sYzLk zgD^_=aQ*e`;~2VAr6f?!6y^2)EIpzia`G~$pi>^Ig@yfof3^U$%W?w<CzdArOsZWx z%k3j)ilv{xG7P?>HYP5S<!N{n3NhfR;HpM-|FKmpyS)NO2{U5fU)V;TIaeXT*>9>M zPeRi#$5Vm#SOF7GJyd|pqZPPi8~n4xr*QeJTaaF)qHwsP$Xx=WA^@SRcmYMnb`$}0 z@(8~4!(!@0c$BVOXxtpdD;D^I+Z1mchf)q#Bj~tK(+2xGh%3p|D9KJl&>H&#HcIkl z$n$gz>~!Zjvub2zm6f%cPPb>s+bjEt`%j~<n3_U5?<i~5C~I8{GkLD8a{<YNVYslZ zNaO6!)}^d3t8!N>6dqfrW3S>C%P`|ES9%$k)>JXAQ8AmKK{~5EDDjyQz9xpsTkce` zxNz&y91<N2e(<8%@;rkMi~METTTc>i+2$e@jBgoD+}IdZzU|d$dwk2etN9V})}yNc zopX}QR;1N=q6Jdb%}e#J{pDwC`7m(+PQ)XzASOJXRvh7Z5b0Pg#L|X!zo6#F(<l_H zI&ei59*k#~#IxW5ggYJ@i)4MlMj->W{pwIYX|<^1HeOk-fUZQ3npUrgR$6B~6pIhX z#kr{aZtj<V$N@7$)Dvpd>DT<;@NfmbPz#P$3x(3W$^D?g6B%sRV9$9g(M%(w<mUa+ zc54xJuR&GsyXqe<&`1=-e1b3%X1N8od_wFr3VAwbJT<ajyi4+G3r=hcwWK*)5R*yA z7(4Jq*alWqqgf++vq-9w{!Pcb+>ZB&G+YHS5L8t1b_2==LertyVy{(0$5U$-S#qpi zHbLX*Q@vHumVXL_5!Pru*6ORN><Q7TBx~kqwG*MVp6c;igyswop3&Jq5~V$!tNm69 z@*Ne{Zq}JB8+yT*!|p62rE>cmg!A$bS)Dm$Ntd>6KXL8o5{*o}pUXYiHfN1lD&9+7 zXMLjQ+4I<m3GHP2&TJch7ZJbhSXom~u?;ib-HGe}hp{{HhBE%+hJVez8e`uX`@Zj6 z%}`NfU$YGfSqf3I&LET}O7=2JLbi}f#SAIQmQb=ZBnb&26!XmQci+$bJkPn$xzBU` z19P1-*SWsm^ZmT9_sitd@$b<7hdP-SZUSGlIp6afEjep@urhRP66y^d>f6NVx)nY* z<BVOGQ3$eNh1wzZwS0HFca99~@?ve=3V)ejx9cxM3HBoP?eMzIh+c{`@9>NhHrtc1 z6+X~7+lx=I7o65O3D8kj278gINlw?-M8qVklV`8l6F3}xHK%>kwqMW6Hf$0=XDPXu zlyR-4oVGh5dD}sWqwZA93*nO|rzp@kO~#fWarf+vraA{LRmXlMSflm`bNDSQnnBub zqW8N~6%4@I^^V5-%3||RRO*Lk1^WUejW&n-D~cs_h-t>APDi3^G2t{f#}Dh4mM4{R zO}>?KF~LLDPSyjXiPy}PCO>R76`qRZ+<9hWu}C^;>g)uoLX%&;iFATIDr81ozn3LF zd&1e{<=DAX&iNaoa9?UP^$28kROJ-4@|E*x({YDdV01^=^;WLj{adysxg={_|9Y2@ zuu2ZHlk4o5Kwfe*wFi=Sgje`kh^p%a*gXW3{WV{Hz<sW+IDQ}NT#f-zxy6SUUb@EX zN`VcimwsBsmGylebx=5-a^4HiFIIvIf+Y95riHm-l&FxH@zJ1<N~Ba)^eiU~^g3I| zIsK>Gbq)yx+r@PIIP&jfXXUWbdUCW-9_-oug4in(`)<Xz-PbQuc$gG?IJJ@HW(-Od z^}=r+QR2>UC{aCiZ~qQ=3@Gp#1(_iSk2yuTHDoQBTJDt_-7lqS%8uoKo<B~3Qe+Xx zNuHniA#BPSW!YZo*x=>S_V}4-Q=ye=F7K5Ntiov9OOF@#pGq|ec*Wq0TOU`v^I(X1 zUa$hk<rN}|otZaaIkKK_5<HK#urqJD4JM)xdTMiu=fLz-Z<r9OSY_9pO8x3NqB?Ep zF@T~vRth_Q2=n@QOLO~jfm=47B<2JneEc}zHLa@=md(3VnafHM6PBYrn`SGR`)b^= z{J$%6XJ0(f2S&eUd;j>RA{NU(U4viVl(7$*`oXSuzf!9h%fIBCM@wjN?Vb8{(r4?6 zl3uWcz*}2+S?a~6=UeqYfA1@rDM<<(w^I-09)IBj;K<iDZ1$t`E+-HK?L0u<WH?;D zu&zKhI*)m~=r{>77e>Yok{vfb_^&$%OxRb}LKnx#+-kGNeSLb_T)WS0UhDb_B+eSe zzKa%`MS(t0x;+I4eZ`L5Wn?)C*?TqedhJd7N~z6Z!Op@p(-lIXaa}+8#JPRym~gSv z;&U&B4nGzC@-KD#=i~G2w<_Cv{WQhDe$5*UzG@<D@5!nO;m|sFTHi%%qmF<09+&Tc z=+BtbCWBvJ*9-+;ekok+A})qE756twECtu|hd<_u;5)^q=x>qeU-N7@nBgXB$ZXv0 zlc)N#y^Gu*S8iRofx07TU{AJDJLAYNc<ZEv*n79ed_X5-(lO_Z`%HmT^(oN^caPFk zhq5!?t7pi*(6|~kF-4!oO3JCtGyXOUp1vQ<Zrpe{Q1<SY!<jn)!FPCYRkv8zxLdcn z_yjwH4+6r+c`WPsU){R#?Ea`4E->0VP&v<2DdLcABy#FZU~I#8(MN@H-rr{SOElU7 zlMcQMt&auo`Y6_TcKBv{!Go@N2O;v@oP1l9K+`kNPP5V)f--IJ=lMicKz<!u__G~B zxwx~l3MtX=Tb1qSZj!j}bDu3Z_v4q_m8thP?Ai(&TO|rR&X&P*{+%pX@42xs_7K^3 zwnBVq(%`#ggoNr3Gy6K;yXS%*6kyApa%?m*pr&=FjB3|o6ESe5$4Z{}_tF67Z_ zX7hA~+UysDzQIS{A#H8fo_Gmd|H^IE;r}N%<atNPgHMyu5zo|$&t54OdVvdN$f3J$ z`x=2}Rgy~>-l4DCtR?Q;<lB~MI~&^9uu?>vGnzeygC$S2h7KL9<hpeSx8DpLEE@rZ zjoSRoVJ1f(|E@~<adY?fb(gTu{3}Z*`E}ZOlxF%@YQk7w8h*~7EHG@iseY_~Z#Qfn z{&TX5?{FKBZX%6lbMD8vm9>)ve_!#`R)tjEIk$>i**;kS*&<%<7k#*T?svfQ?W$YY zv76o4*NzzzzjMw%kYfg}^L)A^2<cVZojLy?k-4|c)9GD!ZT37^U@7DxpYIHh%f*q) zYT<|{i|jPyVaB)N#~%@$;c038fo~TMNiK9>*2Ho~P{aoU?Yj;u{!D>`SNS6Nf1Qb& z=(3tvc%N6z-xv|yCh&2b=iY&EVM&+>Yu#*SE)aFZni}Y_97eE>^wIkoNDZ<kg|=^j z%$*{Y)V~=d7LY#hrnr>8Y+h4hZCEUP4b(h)GH+4k28GoJzMy+)-aN6ueVI4MMa08> zUAOVKSiyYY+1EDD&X?fScG@lw)BS84_`^2y0iVKu+v`N1O_<F$@M?ZJ|Isb~s1qM& zPc1Cj*e@-gT|4nBiUYn7efg>F+f}PU4co)f+yM)LSC?(qmpC8zI$e+6G7Wc{4Y4DI z;O-l_e~AXfzXwj7urCgIENSemzP)wjotNQeaE<Zl^V_Sk{a)0_#|-iA3l~Gwy{U=( z{iC;fk6GJ3zZgE`m7bF?`ipnqqQeO0QndVZR${@_I3MqW<p7UMvFV;S3cmWxUWn5K z!XI8r67VcqJx!kY`7!HB(&3o4ljmKZo%2>)H4yeny&l85H@$9#I`4D&+~Q42d;wdM z{ZyS;u(i$Sz!J_|j=6d1Q+?v54`{wW?-}OM<)Y5<=7aOTXMep%O%)C81}B6dXZRC* z3Ty6NxGk}#G`1YPPWH9m4wk%l_k8S0)s^6g55DeeIXT)7I`@t|7T}TKM_bgIcgHq8 z`5^FzpR;owyR+S78>htgGf?r5cf{7&2S*;4#}Ur_43^wDch!_v>S+6~IK0<6SJ3$R zikLel0iB2cZLhcnaR^AK>;Ev1@Aa`wKI$Klx9z^U&^z?+YwM@rs~^KBBHJ&<4M-$B zirVyl|2tgscfTfa<oy0?rx+*2sEDh-8`(~ARKk?J)t-wzD{^-?+MY4Rd2oO8{EWOn z@_AuNCTZ5^;Ckhj<*a~QXqUWy;!@HZWD<YTl)%Y9CqO`VP#s&rJjP+m@3v5oCsAU^ z`)|#M<tMZ5586(k{{7fb5r3+>-I?TZ<YE$ItDilM<eTAA`JW1=R_NlI<f{zs|DOov z+23-5Wk#1a{)1o+)6CMjRf9JbMk+0)HN%!R6-TQb9yml>SSpU!i5zwMFM?UkFB<f} zA($ieA%E0n*a+sv&*eYr%mS+}ZnYI&JLW4nLzdvVm8Z%nGS}oC8$x%r7Wzx{FRZTY zYA+7owYaGkw%2Nlz3%F0N@>@o^40}5j;AtpSEt%9{a*d~SAUJ!mCmDn?w`TNe0h*| zV63d+7gcPDBSHl8Uj_5Ruho6yowd0)H`UMI`Ezfn#r1aJGCg^3$3bA~?0MFqgMWK} ze*gN#I!pnf4VWi_d;hozL4}>E0K%wul=p^$f#emwQ!$chLcvcZ)5T(|CFMDV<$BT$ z&l2XSAcL-SwCw*xFr~9~KgUSt7>bW#uBB?yq^%S-1tkDC0z~G<aiwQ6H%}Vv%H-Rh z_;EwPJh`VUU&3oR`PLYWP84*%X2_B&K2vg8uH<a(Gr6Fes9nBN-k-G3rTrkhIU?f! zQ83Z9a?;Tkb*s%dbIA%}(nxLKZr%wa#rwBT#VS@6CojP7IlT}60XK{4`^<eJC|0TV zzY1o3`(EwQBUws(Tt#NX%(|TY3QXP0z5gnhYy?w$Bv;w#oPVrTbGEL7*`xO-j8z|x zor+U!E7Dyag_mfxsrtfNa|7GHmBgvF|EPVg_FRJcj#s4Q_4YY8M^O^-`R>wl_0Ijh zzrQL~UWB}@@kk~9a)klXaQgp1Fs)1?u6&^WovM+gr-!>r<i1DsNM@R7y_GGE-w1Sg z5n@@(w@GJ3xGMkKfc5E4#%m86F2B&WIrAbjrB*&3xZrFWv#vOFT=}KWhm*z$zm<OZ zJz4@CafQ9YqfP#+VD9UFVtB7Na6C+2s~@xHv&&HTeZH?Z74gpWPrh@C@m4K#xLD6g zrCLg8nu<AOFndL$!H4iG@_p^yc#AV;1Sio$hTm>^BpNPM46L66HJk%dzuHMwkTQ!) z6OESsgJ3%34*y-kJWZR)ml$eFG+uqS++qAn@W;m9!~Vg+QRvy+5#x=w%AF>^(*#KB z%m%cfi6dOp?A-5(kWSM-(>KeYFOSk=NzhSk*;EaIn9f6ge?Dg&dc3)TUgnJB>^x?e z+ttZB%-a9UVwEq#P(G&Q)1!aQaX>X4rqx8ny|4$(=%)KT>yHO#5I4oE861&KDdM4= z0yBI_@@*n`p)^@CYK_6y+;l}P-uGP7n%YMoQ+X5ua4yhv1vi?~5B-zG|BP(PL}9{O zlmUnx*DG1AM^|m)rEEvm)V84^-lL@yUK3D{YUHC#?|*Yg@#_sxl$8;G-D@1Z`n7KJ zqim}>?x(_}x<5snsHPx_$nWYmrW@-?ry&BO*Lny`Ffz~7qO=qn!92P;$o;F&tW`&& zbyk%Q=k}A4)2?Bk)?{<gl?$fR^r^hP)SFc%vPzDZTR7rxxDlA#Tl^God`&Z}pzVdM z+N3NzR<hphf>t>`E%%)-cT3Uhe`A7+&dO(Xb7JWk-J16l2hKWZ+i}neo2&SgmiPc3 zk7_xCZpFcfLsz}0?~d0uWZ>j;TW+t$%bOS;X^e5UifIv{%AVsHO4w*AKQI|0(~oL| z2x&%{^e!CcsU5ze#cQx_&i}ghC}qQ53$7caa7?@QeRgnwA#(%VmZ<S+LWnFxVk(?) ztR1=aTGo_lcBD<`m?;n5JVE89qRoZc59NYL&$9}yu=MXKPAjd|$4r$RY`LYvuh2cs z?s*Fp6pz;Y2f_40USGY~V3%eC9s#<YyOqWtE%D||o+^7bc<iMj-aOKum7whTwZu-J z`tZW{5s|Hc;cIHWj~f&BLv%4)4N<0azZQ=!BIx0#9<A;CGU3p6QJ{S`j{wSksS=?5 z(8B%YGHU6X*j8_a?ZAz;)+&y<M>ElbQ4`uxq6VsL1=E9b<RRxu$;_IL#^m%y+mkgO z!t-7WQxK8<<h7|<WL_Z*)%GxPl&35Brt<U;hr-Bkyl)5E(v;hT);_bZ7V~91LulzC z_^z-xd_-_&tNF=Gqu)YL4IZf@i^5}6n`+{IKm4+9rV`9_fOLkko6Xjq(BX&H+7F)A zTWmh0<$O?0mR6ZXab`a3y&>IMXJAaVd)h62uvWv3uuLkBh&c_?WL<Nt^E(`d^UU28 z5KDhUS#5awTCZb0-xJ}U#KHZt^_3>uCz%)Cs<^d(LuSj{cwScf*;^sMZ_n3|8W>|6 zs7;4fK}&zR{BQ`CBTjZpCLFB#9|iLO_fl}Y$p_bnfEa3*eN_o$7X9`eD7y`#>3%o; z{cNb>D>kkESr3I`r_G_FbO(#aF3zG%l;}Yf@`pk2<!G6kN>2UKM;aZe;Ve@Ia^9 zJUc&64^zo~LE{TSWy!gveM~=Z&PrbI{Ve~-v9=D~23x6P<qp=BL)qsVQdC!bZC}+5 z1S|FUpKurEc|I|is7C_U)wr*yRJT~Ex3<*(^x&EEI?O%c_>-0SCG6(&seJxd&zp3# zlzwN^7uX8sZW%<{*1CSwG5W>t`tvHkBHu`LFRwxGb|&z=U>ev21X{VcE!EE=;YkLs z?Bh?4l~^~AdNBS;HLPcgJZ+PQ{9LO7&^b3>%&*)RkhXh$w&UgOuw0U1f1b#27#H7} zr?<W2io|~3{yo*oIdH4SwoTT|#W&sbu+fM>NXn(Hu7J=(bI6-&TQ%LfA0}@!4zwzt zaI<^4?EOFqHv?mq78k}!3%;RuHf%qBIEw$}r!lx_Wh#eE{&}%8?pRBEz3rkky(Oeu zc3o|U@#e#)-Y)u}-R-vHi^Xd>N%6Wr+UsRkth-x`dyYyrvh%;3j!n$DVg_;-y%pK9 zS@nJX^x+}xGehS<FP}1goL2vPB$D6LVaEM>U?E7mzvE9w;OSt-w{Mk_mt&*_kA6;S z{P#^=bHM8KrO$Qr>`Cp;z41$uFS)CAG_=b&-gX|^>Hb3hmi%zlDsFGZQUke^*}1>^ z<x4apny+fwFbYJc178|h`;F&cFwLw##N#CMKyK^hAaU9T{bL(c>;q+L#hR!U1OnTz zmDQZ2FpRb7K;Qa+xb-PmA^~ZWldSvBHY|J2{Uj(AvT}uhX(Ka<J`V_!ANosnDds<( z5^xK&j~SoZ>?X%|K3j`X(LV@W{1qdupW5O@J~qv)&{!m~tWvIH6}$ymIboUY(b<nD z$~lU@@LsGCIANW)EAlZPFL|H%H9=CiYPN$|yp)jr<;oy*%}lXIQfyqZJ$&N%=8cbK zg!k5T@x=-;_+7%WOsy*%bPi6K3dDy)N?LEOk$iJf#j{8(8EbG?*86TP@VTwBY!c7# z=eW)%O5q|)DHcfG*AX6IoK*Cu?Do?|r)Y|=@2ad`9lLdEYKj5HJBUw#cn9yQAIufy z3ODO`O?h^Mr|jhX#WmEVwarj<VVHNXvcXUY@XA3l%Tqhxo*wvZLl|bbcYxj4vTF_S zQ|Nkkq>cJAX1}3lUU7g``1E~21C`RI<M+}mSt3vKv!{9~aKYg<C`G5g!W1V%LR&te zV&(=;LQ+#OMc0k9*rq6nWFvEQ3DHi)e0x6th*Hhl&DlnjiA$wrj(<#lso)7|-QK}9 z6^2HZ)bS1(Yri+Y%POZ-Qsi*gQCO<sYZ=>Z|8NTD$=3srpp+AXHnN|RZRPGeEWtPN zIij!VCkJyB=D#?&+;>hsw!>?Kvoiw>{E@^D&T04EypL`3;lT4msVIM8O21p%eUH7K zeqD?J4hL3XU=8M>)!pka*a)Vq*T1Q{exKQDq7gD{*N&)_TIr)EclvJ6$o`l4DWbLx z)jWW~*W`FQpejJ_sHzl(Lo5gF$udvS6g6o25^zT@c=gDqv!Caq=z4Y(^GG%>B^Nfn zaPq0xQ#-D2QD%Hc&MaDYd48@6#|56qA~ff6eNzCqf|AYQbP1$z#IXla$*I!ROimXY zTr0_9fh1%7;8J4Xu^8^B3cla46oMPooS!HS6_06q5T^wd(R;_|ZKKpQ=Nk!#zj%<i z8c3>~X)DWt?^Jy)0uX>yl6ZC0_)O9r9Kz||t{`2vm-1dx;R-r%Ei9AjV8br0GK~6$ zx^H_WtvZ~4?uQ-Ybji>}JuRbQF~Ce}i2~w`^5>i)$u?JKYsu|~VVcei!i$I&QVf0i zTsH29+v_iF#P2`y!J$U1O3wV`v)qdLO7~e|R(|&fxjsGE<?Vta&*ooLv~3@4JCeU7 zN=f&&7q+}rSfyya&8stm1OGF#2msU+s!GNck9M7IiI-j`(DNNQVZ;=Vi5eQW3|8xe zar2<iKazzONSPgqJ)~r`L2g-;UZsG!qbm8Dx^9{&Jvfl!)_YgcJP7bI&{6&({S5rY z+S&s@K0VB-A31Q*d*&S^O<t&A{FmAVCF!);wokWK6(|}8)w^^OR}_Pb0tr~EZPxOO z*TZb6m|G+g#e=#<@l*tJsX1U-V9r-$7032fEYtv@d;p0D+JcqaPxv}++aOfTESibX z%7-s%eO;tj*VT8vu31u)`jtB`R`{N?dcB2{{-?a<Pw&`P?&7ZS)x|hVacUu#r|#Qz z*@R+hu}`gsH?S#`jgx>iRkm88Crt&6KHYF+dgGOu1sl}OPYJwQ_ip2hw%)ryB~GMW z{w~{HHAz8qs0?}g=<8(`DRF}O%`Cta?Rk38R^5o!7o)*z=d^|hL4g(pB>A%C5$~`c zvtQc?fxj1%uV3`%E0Y}0ssAB1-$pLl&ggz^WP^_9ndngc?ls>A<^I!T-gg4PDS)R| ze|{~VZ+jv5hkn+AA3&7xei2`t9`Jt>%n1@S?;D}Y3aZW7G<*bon+qP|q}1&00Ke=T zzB{nQ)a!@XDxk%=WbOpDC2_H<v793L!4?P9pOp<OU1gaKoRYn@<_n;>LA77UJUyk} z<wV+6Yz(MieSV2IGC&K}gqlAz^S*X-EEc?B^Q+@_P>a)#Jv_1e;49RLDrTp?)8P@g zaALTDQ~c@j^ViAHH1)p$lfi1tgCohKMwNV?-BoSs2cLz{`4L$8W@;B@uvzBW3+kXR zB@qiJP^&|_ChFV-C(z-wTIcU=z08BDvR#0r=B5fg-&B6}dt2(#U#wRjm=qq_gpxkh zve5T%gLALg7P+{Bdec<CE8n~m%nG`_3#CH^yVZJ|IERXpjg)~c67trMH64a}5bHgs zdPK2TH6D_yNn^<1>sD3GL0X#pK0+^BLs@GKNxNitI7I!Q`qooGo@~qi;8E_FJBwWm z*#uFo%u{pwwbn$@-@GgQ{n52=K`ozLAX^N%sCnM3E@1hQ<h`OitrdtORYE0LpSdn+ zp_LqVzJXi^;a~_yRZ9D3%Uo(sJ*(DS6bkX8!2hkTXi#K=n&cZdE<LL0KW7InV!SJ| z1yvF+HEXFo7q}yZ89zHLpwj*EwFBBSLQSCM(hsketlMy13cslN(}0vgp%xu!*AF@9 zsfb}gon$VF_lEw9I!P^|$Gux<s(K$t7B&<^qLx9U_SwtcEyMK)FS9HomJ9%xNw#Po z3gK_m!!ToWfw?o2^DV?c7xZ^DMiJ2N1;0wm0aUt$tQUzEtv(UU$qjap$`nqO)~`); z%^frFRO6BKP3QL*OXFNIB;<$pdkH}^K@-N{H63e5=fY>XxNy2k=@57agx(|}h*8$8 zR(t!1hH7`rED7`UT&zu(-jNg|$YaNcqg`Ni>^ew@*<kJf$W|tcQYf~EAG@B<?-5tz zJld@os;wGG5*O??q?sE-Q)K%=BJ%*(5pxcOE=W9;hmA)lP?VA$`$*gbd!Oedb*bd8 z|ArGmDik1|0xF`gTU%7<4EZuM$y^Yw$y}j{r1+EpUtx9euMk~XkAuFCz`*sK?&hi{ z>LJ#2WD$T32Wga<VXH~HG>QN{Sv3`;a3qDljD#4bTU~Dp|NR~`gobqFqRZ$ab@jnR zX;5p1FrC8bMv>?@6BadBZv`9lGsIGpxfjh)6q0}p1vf>(dQzU@p2Qx0zczjxzMace z*L`2_61#R6+QhDMr}MUg#CpN}uK;yR2*Nr=pspKl36?Nm*fi*;{LUS}LBQ_=2&8U; zv^C%l@Vub%Rx>0$L7JWrm5lC7oMz`)M7$k{!;=`KZ;*N6`h>U#{x(R$#o*;)INTC| z)zOiH0Iv!N^6wJg5qA8&TL*6@*2~%w3?gx_F@y|)GY=bX^oF%~KH!{Xs16$x96kzf zy(j`uB|?)qrjqrb$r?orQ3a~VkuJer5@L}!VrE$8k@H0lbNL`w(TP;>{qoZyKy03b zv?NIirij~_Ykp!6qKOh3V6NOQAp<JTlY*`WKr7K@uCX5#8shcr<qcBqTr%>70st=s zsH31-8Qe!eoVgSg9W!(*fW~(li89!bv#Mv8sfSU+udHt_o7_~eQmj$a8w*etkzWOb z0?g&e$%dX(A^(etZV;K=9Zow2M>YN0ccZpt%uA5H;XJ7+>2IzIk%vg-a|7`bsM2IW z-3cP)$<T;N5hAjP5?Kt+C?dju$`c>e_UrGn&__JefQlW(J;j*efdW+M=uHad2uZd- znS<9%xEg}Mn`_dZ$#`}_pj2GGPUj_)hZ;{RpuaeU7$CQ3MtQsh8l;g+f>wi!um;9u zbc~z1Xp9+05m=nL#jz6Y6Zc}M<!z&Mri5`GSHD4@glRLO%`cFi-2(8|fjC3WgyNHV z%h*4ZESZs_N=p`;r$B-jQU@<SEx+9vM9Uwt$FG12q)aD2{DIa1>_>)kp2}NES7uVe zN~zp2FXa`IMNLTHYU0p!)7f`OvF|4aNcI9{=Jstbzb+dBL=d))A?yZlW+clkl2n>l z-CVpWT7+(WBv_%B5mWewgShutpkv9_a^iYlgmIn}+5GF_Lq8G5>_-m6{^;!~APg`h z{FA38Ac$988g9u3ZYhfMTg=8ozrViutB28yd=Doxg2p?xd^#PW6sQgrmQRAVnycf@ zl|>l_@#b6x6vZ;q%S%))3h+k%@IQ$+2YOcO=kw6{U{S2e_OGO$kRu?FghHL5FXedY z@nVO%Yimmacf<Sj@QM|(D2YR2!Y_XBaQR#2NgprJxy*g$#4Tm_|09AK%X`-0zE!ba z^d4`pQ;lPd%i~zS5SMz7XBV?C_prR&9-V$$pc}^@c1qWKqK&O!Hdu$B2Uq^@3Z|SW z5x^*fQNnAW>HUw$Wg~nd4l*M}**eHqTmOWjg5KXdUZ|HK934FN(EZ8(QZRFZ--fSR zv|awQZORL((|vYTKtECRa^$yn#hhwnSZ|e9G1^`VQSE*^@aWY1+WlwdV7wAC-*rvo ze<7HO@w>l&e0-85k#ul3wB+}GCA-yeHkgTq>>1-3P(IIG2K+aeMuE9dz}d1CS_%{% zN|%vRZ!nxojmRe?Ujso+xO#Y<J@b0_z2doE3!W*<do6tRGo8_*(Uiw}BkpcQNfx~# zdZSk=+hjx?O`}i|?uU*`i}0SZUw}F7QK0$4^hGlSpY<kJzebPf&3>%`6P^K`G0&R= zrLTyQSM|Q}uA!oeh}=UaTT?fO4&*fGXk{A33@IM!_N~Yq5IP3s=p&uURX19sU&UQq z3>~!AozDMYW4g~fYIjs@tVeTAhHvciV08fXkXHiVxZ9aA3<ahT<cG$Ha`nKmSv6+D z!DM?g>?xCpt{kY*iCYr^w-fk32i?D2@Hsdzl<5@mI3be@yHvtA72YFu$x~UWVqVm= zau$Hukau5aTbfAr<g3mj%@AN=gY%P#`}+dy$+>tDGugc70?R#x?--gY#V;u^mmzz{ z;0++fOGv@W2vSixF+2CLB29F9v1_$rT6Q4xtt8Ij4n1nN=**qsg_5uiq3>l^yDngF zC)`1S!mVjVi+8gRl`v2Wi$&=s!jfOhPKO(kZ%al+FmDL&tkE+t9sh(@ntH@bSDFV7 zd337e@<M*Lncnpk1akk2U>?Fz#K{x}0<+j_&f^^}nU;GlpR`bl&Y<6eNJl*-rD2>b zKmF`e?G*jpuluF!!gVH5D}Atgo09eX<YBR`(Ooc+!dIf<i`Jo3ze>}Qvb!?vtMa2N zS@X`**^u{FB<}3YWgiy5tSLfr$ej;4N4uHsTz-eOw^aWogepg_mQ4!=Ys!>KF9_b{ zJszC<H62%NNrd;^PLep-`Bq+juy;EadfaS9T@b35_FS9-;-xLQ$x}J&$S@UhGUh3e zuH!@%ozQrrm0E!%88D?dbIrL|XvzBt|5L$yYN$&<;bk{n!TIk~&U4_?H1jK#_~~FC znlC)j5~@+=o8uO04w1L)(H4xjDwFyqMagN7yZF-)_AAe(jCezUW>7EIDuq@ro8^D@ zsb>^Mf$>)#K?=`e1E>5rh3(7~m726Jn-Y*Kj-bn%&PR=BxUOFw{VHzt0V5-se7(P& zq!7<MYA(*57X<+Txiyd+fngTK3bz(g$jdetrSTDjC1jHEmbQu9`4wyh^UNGf<~}u_ zrUjNv&9!vx;4XN80btg{aHG&J`0JRXTAwr#vNSV%)~BN!9m6nT3dN_!X+f)a!a6Wg zjn5Lz(AND1A`&GFCfEw*_ckzz#6Ua7m<ye&xOT?+E1)oJu3wawk{!iBdC|bgYIobX z8J_apD1PZ&8CXK?ageOtQJ$ynb}8cdK_ItzuolrurjCjz1&&E4f;epQ@3|GO(Q)`S z+v|zEm6Cills$?JJS*Q?Dfg8!Hr1}MgSX1^9g$xyFa2;ORWMY61dh4pP=3H$P2yYf z2#=EC$3C{uLZ+~UWATm;4)N7~Eg|wh#U~>@`CteG3X(89hBg4|Oilt0Z%?_j+~KQN zx@^`qf|eG-gM=-I{hWTBa(%w>7P$Nvfb7JMA;XCe5sOOD4zvsBTI;<q=M_JpNjLlE zu}4Y{4E`Jf=Gin~OYxYB_g0@Pypma~id;dp?}3|)m`$eHE5YuQr#^CX+Umsoyvj?2 z>E~7erT;-NA3lK1kHPN1emX-QQW<x)L4LP?Mix(ceurnlETy_GY?)Iu%f2?h99zBk zEUxl}Fug@^Erk5+^B4yu`a$je)!2zi?>}i*L6(u-aX+QgL+9I`?~eUS%-o#DYSL@n z#)2=SSaGMmjj$C=m$l?1X_$;=GGjfjTV0OsgYgmUHs4$I{u}E|4~}lSa#Yn%+SBhp z3Z}Cn<c33@-!=urCDFT<b=LDVBFyb+g;>~G+tSaE+S!{U{*7Gw=4*=FyZW|B1b66^ zzx?6Lq)uI8_^#0ulK0P3^2vtSys0zlNtfHmh7RiVP!Z`*U<{bDQ8F<V08P+;@l|Y% zJe0|R6bcPp9%nZiQe@0m-1U^IsYp?KUwsMT_gB4hl6HleNdM@El6o42Ag{AlKCxHX zyf;qcX9;ME#<QZ(ja;Y=ax51fOJhW&vxMD_ixj-NU9eSmw%*W;fWkZu7=X>w;jAOQ zU^EyY);M~Fo|c$Ye|S)r^Z3LmWD);({`gjFjn~g46!^GaQ(Lgw8dM7FD>CvF1`p7@ zDrD^o+c~=3J~4f61*HGx)mUxB^J`Pa=S9Bkj$bN`q*RLi6wyTvgZPX9xavw5e*nEl zDU^xO@dt6(Gr<Bgbcos-1rf4Ht(cyUxZWZ%7|+-ELORTQb4G-z=(^hna)KH>ir3|M zO5sY*g*xUFge!^TI3fWe&FjgP@`<9_mxr@?WhN4vLFEwj1xXUAu=>57(VBC?#~_~? zbLE;c>~R+wlf+gY9tZn(vm0~E_GKZot^svTq)$eLpf{7QKFS3-QO4?mClyiIe?KVM zjtIPJ*khuGe9rvc>Q3GYzJA*4;+w<b8;+83^OMpSgrjCrWXoj!*UU_*)Gn-);4yW- zh%Cn=6(|Swe@pH@r_XS@whk;rv?f_!p8O*IN3%G76;=s|K|!3YF(88sYG!b?6!>g! z9IrU;id-G>Q+?sV=4ItGO6sNan`xAn_XpyBC4E_5Qgh&@f02UWnQ$W-W9XX(lB59v ze_eddmC68x=2vi=0Lh%5z!gs9ojtG}P@yz0NS<$CFRFus?T!D0he3a`Fu9dTalADg zfL>&xZqVRx5cf4eNQVjFW(9j0f`=rz3drbKCgjz5faNg^^IcjJJ-O^X0BX+xpT{G3 zuo$8|V$vVzU~*q%2z1do@&VB{U!g%s4m1eEWWOc=6qX3C3P;NWfDazilADPe>h=s< zzpMHv)(-n7_mLUpa<7Ktpe<Zu4ZB9?z3VFwNfBCX6tH9BYkm35$S8kn%-><omLFS1 zKY=oi&&RSr@9|tb>%}94BwnslcskOA-StWXU!(Hb5rvz5`TXcYeH7?tI<$xaJ46OG ztZ~|M@j1TPo8tg+68}DJ+!nRx4}7142VDt@I3*0Q``zk-n1~D-`}9|c%)oZ}3dczD zYz%?P0Lq#UxM}d+vln)L0C48MU@fl9<G2K#<cVB;lb<sWv`3JIneZ|?ZjA;dO0t`K zk;n=G1G;D}T_}{yLm{KFgtaPri9hR6ej3Xcv1|wm^eT^lX^wo=Z`nX6Tu1{}2*Oeo zoY(053v}*qNs(Rv6H3F1llWr@7(o5B77;+xd3WE-*f!f%W<fP55FIk4D_rulgIow) zKgXXhz#$OM{70lL3=+9489d2NocSa{8i>n)C>&FPe@cegjVP9Dd0Nt71TrCFM5$4W zyz|wv4^Y;A1AflL1`}{TOk@L7P>RVWKOtsh?r}P_gbbCTqbqKxEjJ&=0uUPl|MMH_ ze{Z;7>$7D2d#i420Xj!UTqGy76S=0yqB(SI162%17Lp>Oxfx(jGMbD)Ythw=KWKwa zgQUn1_)Q(F4~{eQmNtDlUl5>kG)xB(W5NLG(KsW0MKjppLXe0~1(q9xY$ijUerc!Q zG&oL#k|T9*IvT!t<&+g{=&S$=CUDnD3gi=oawvQ_lGu18zdsekPx>kYoYo?PEN>VL z{pR(cDV5(eope0b1Uo+Ec!ie+!V_WR!|ZAjsFAM#`|v!UELKH@gwsWPK|D+*$6bu6 z053+9Z2FDIOj?I{(bjCeTEm!tIzboMBchJ^3brzcm<lfO3T_G=7E6X|5uURI^N;2Y zkd%3kopw6pXLam2iu*R<PCI~ABVijph+t>YI1-0K1%C`psDchHdnDtLe_Rs_X`>yx z=X4_OG^#S>#Lufh6tHMS<&UZWF9G0Fvv{_$r&YmkNk;ADd@ad8`9~S1#ys)W$;K4| znGdl^Q3CNwVwV7+zFFi8NqoN~hZ&JyPm;@$3{NG(U}TUS`O{}!htp`-YQBT=mi8gg z@natxl1_l|6u^lrpxFw&D2bDyaw#!!rzH8qDFU^`T~P*%rs)u<TcAXCJkRIa0#3?F z<%o=aEKGq@esKqputmP2NJ)G%L$Hzn4ff@x5RpX`@QFMZ)<gF35yQ2`*`stWHRly~ z+pTA6bW}3g!Gy>aL_+0I#L|3)aUjGfz;nd+S1bipL_;W$kJdZ;Ts;P%kNL3p6e<@j zdAZ4xRtxY|lsJ=Hkc6$}0h1Z{Z~|Odk~0Q?TQgbP&ZoPtpthUIhxz@zx~}KU51Hxp z#;D>VNkVi6_7s)RZ<bG(VJASH`wXC6C?*(!kA6Ym-+MyV{6Q((G9B+N4NeA8>l_c? zGC9XYSxVvvRIVrzeq@Us(-!R|@(5S(^OKOHb%C9FhTOA3Z!U)3`(YWG9jciPBu8WB z)`Ze%f<(NS1_OS?m&X!7=F-s$L>I>RdDZ}!bHpW_R8XFCWD@@5bNo6Yk&fFTW4kCq z{dCL?l1L?qZ<N4sKt#F`8cXPa7Wp`<?RY0&gw-XFY2c%^>o+`E;1Uhe!Hg)Mg*lLf zj#2pvX8A)2Tt$tD4f`lbXE7(&n21}*+*C~3$G=VlR3spj!xVO-@+5=AJZG)<i7YY! zvl=a9{^!zPJV&lT{I7g?ZY9uF_y<luq)v=fqoBpf0(u0*9@FX<K@1@A`4Q2ffS?=$ z%-b4w|9wKgE5$e83?Yc%V}g^2To)O_PbK+|Rq&-%h_&&sV(34d!cVdaw_;yYjNQyI zpHjr^;YLiv4iO?v6=B&B1;aszQxt(gkVq&2UBo0{DKOgkKwZJHPjaboMW*|g{>8`0 zIWyr|WY3>OE~#0eqFLO+kO;tDO8~)@JlLK~`h>MWs#~V3c1Mms_(_pzeFZoY02}xU zg%dePn7jeA93^?EJsWUTL0qF?OS53suOfA^70VUD>o>LWCVuiH0IK$%)h<k*A|^=_ z@goV>(&3f_^f(#aOh>2Q%+X!W{Ofk}Ok__Elv{5?hd~$iPZoX7MBE??*h%uLNb(yH z`Op>m_IPw<lSz*hAX9l?&9JnWGe54FkiBBLKrcjSi>CS^PPlQ+k;Sf)g|VB0S;|eP zn6)eidP|2@VPJK9x_fB^mt^Mr^(W7iJ=g>f<$(#a6^?;E?rSuoG+NS28h4}a0%hOb zx&C5Be@rOVOH!Vg)tvz9^vF%%Oi0y4izlH`Md(hCtjJn%MUMtPH<c_BEBTjCw{N%A zoA%I#(DV-t`Mi6ZC)PIA{jSAl(0AbYxf_+JNa;}XI&o$>!V20NOlz#AaSB(8yuvx0 zdhn8yt@9{fDiN_TJoIYmuC`H0W9_}&rF-X%^bdgQ^3U5*pyR@z+6enLo76HM`h5nv z>M<JjudhXgTvNQKHd0YL)V|`mYRLrZCre~9gzJ<Dw8tk(q$wr0j2e4Ci^(xjtf|k9 z&gWKgWH1LMO^#9z2Z|p)SGwJ~SNo|L^vbC5xjq<O+Puz@sw~oCb+`O$Yy&5`>Q@N} zYg8B*4Q?g0*p`l~i9B}okW~?`(+~!a>;mHx_oPb=<Vzo45E-s}N@_UuB<Zi5UYy?Z z&n=9S#v>vX_ab1{B2P;v-$|`mR=s=nU{ap>8ASHDHzri`aH7p8+@VI~1vM0L-M^!2 z@<saH`$Nwj`WfBM`uixXWR0JJ8Z7OQ?#Es~;<)V5nb+0+O&Hw#7g#c?5hB;w54ijh zVN7RoUDjoY{8Ma>eJBRpep%A?<@xi{mFHrf-No<tUq*KyexZ~)*(u4a{@Gr|vM7D7 z0oahrdR#MuGG*?1c)o6&Ysxfg({FziBGOaQ2NsWdo%FA+z1XrE*_&CWnkqtjeu9SD zdpa9e8q1_-d-kQ*%4I`yt3=<Kc0X>MtbS|^zVZ3Cx=9+832mP0PdK5R4ZSs3HeezB zGCl6)na?kK_I^}Z01E8`zdg%=7R##RLo5^BIuGm}Nx>$?Xcb@x<n{hGN;exCCLlIq zD~&iIAMHTslNS46QDc}rAEQ0}!4v{ILWenV!AzL!I`Es!50=eBV;%|0CulIIbZFny zScvI$r^)dPVv63(4toooXt7V_$d4(vKgCInT8KqsnSe>#r_%kD+D%K=-sg!2`|@P3 zXfps@?KOG0+Gag&vU6W9#w+?14N9M$`igM8UdcIld)h+^gaamQ-@tNOrkAH<E{<6q znwa^MAR|fuJ0T$6lrM;m3+-c;M@pExV&L|jD0X2`yveL|M;LV6vcr9DVj5ycezTkg z)d2$3#ODVB*z*rjbMYyC0?bJswlO*H;T`H-W@*6qR&$%J;y@kV04EX_E{TWsk6Vr> zf4{m9GN6aprh}SI7jKFOqCZ+*H2-m7AJ#toQH=TH;hg}xKbF;>m+bdHIlh4vBrJD( z`(C?L-!t<;j4<vf4~5RGOnQ@FyEaXWj|d!!hEk@!iT`4q`NaC2`1(u2*B|irc{hI{ z4xie-v&QbmIxvmaV2*HpS-*WWEXTiGqO-@AxnLg%vIFK6%YPsJb|EJ<#kjLa0)X8p zJs04$=~(Vm@ZB=TZA<?Jxbh$>aepi1i=)wmrQ6K*mIz3P4h|Pzx#Y8>4J*p7bWQK< z@O`;>^7~@mm)*%Dz3Hh@<q|J?OruXxmTG+d4!yd=6Z!Y{-|4T@Q43yconQW4p0Bu` z+B;PKcwdY;acBQ)xrOzfWrOE|cIm49n^}F<!T$-t)V%jPThuuA-~U1|uX0PvTvG99 zk4I@&^%v`~K2*NAs{LT_wn^OHKa@`O@c&!EblIeI0R#U-!Mv3U2iyFA70mk2k3%Qh z6GGZJ$Dc)crBO2V8)sg||J~ci7&I{%Df*SwnFf#iN)+|*iCDwt`M3GX9vxYREeiwr z`YH!1j_B|2E3HZoWg9(S8oP&Lmp~b{t<+-dV#xn*1T*}mZNR$#4U=aZ-}+09lW+<1 z5F9wmqjNQfadq*(2<D*|JL~hX(?0!oU+itIOg>NIl=zCleqT<>VG=qH_W%9;FM@e_ zqOgeae<PT@U@3OHOKQ}!a3Twg_0I536F%4Lo8G}knDrFTvGijrn8-U2)zn@;XUP{7 zzbvgm%hTC<GX`7&s;9P~Ifo9A{<&sqFc8F8T*wh4i~YY9%vxXSyi?Bct7i&Mox6M* zjIeY*bBjNN0u%<^xf;M$Fx?%HzJsHP(#XN%fw%j^@QhMtKRfE}!~;|iE%{DS+8s?z zEjEIw))(X<PY(#nd~7-#bics++S#ghN$ww3H9_d$>bp55?;#2*!-|<Qp%%dp8#>S- zb;mE~1zUOd{s+O_a|b0nKJn>OLl@2}^wDcHw6}3}GcvSg@Q?@Fe{-X$P~oECBCVg# zy$gF1z<pPRB|q~Y1@r5zVYBG5@izc;p#yXN#fF+fMssj~=J}4j8{5gH%i|x-694{3 z!GuE!Q<|@f_J?=l%D>5`vi!b-i#h+RU@pt1HJ68CBYUOF=ZSZCPXC$fRch>yd}owh zp#oPMvc50?=DWNR4GwRr95}?nMh$Z)JU=pgOyZ=56M4a;)WuVhBYM<9!t>{-i_gzG zUuzEmm2vMRj*BhM=_fBv6t}~Fj6WJHsGs-`f_cwMVUjp?@ypAFsHIwtl8Z4cju@uL z-l=85WQm-e>%Z4kMG~(b#$BG5`%J47yy26xdj)r*f5-3RsiMn^cdv^}-0EB)#xB*i zJn&<Er(I#LE;SF?#6=n?C|mw)|8+=outB{_=GT7|%z!inE6eph_0Hl#E0*`iqBB~y z30vbWW0}nq&!L1rakHqGe(|xkiMtB|N0%F)++i!2UZ%o_{4n9fn!np$t{=9jQOLAB zIAE3YI94bnM!AoD05a%MrChGQ=Br={Bq?k28YTM2DX4k|Y2z8m{nA?+;;<$DtbJy( z+cTF*Vn!G5cn-3UI~(m&M2z~Go$7p60DC^8d-y%kz4vVe=fp>KVZWY;!zy>VSXFhK zq7hg7GmG%`4w}Q75!akveg0IN(KB&t<*LhZcm7V~>+&-scVCs$3-ND`maNnT287;Y ziRi--XWlcjqyCkSj2Q4?Lht9quShe5D^#R*B658{2#X7SkT+v1m|vArny2W!mf{>? z>1C)%nX7NDxkLE+%<|<9ztwu_>>!s2xvywzSgWkC>{uQ8t%qN~uL%GCR%_ii8je=C zH4$03^Vw6ycf-&deW54>o!VS<wBJAWVRUCaY9${v5M*{1*Qb@L(|A@zNAIRAqq|DK z^Z316|Ii4g%J+w5PX-E{LSq*~9~f)P6#Dqi-rjt{yEF2Z8%wWdBbf3Oli$iBI~Qn_ zWQjxHT@NQKMOA!L9BlM|J)Cg|r3A5l0Fu4-KFcgUNciXCO{H+b`1bB(aW;Z^iFKjp zW^L3lDc%}TXv;`ZU#kvbZ_N6<k(AK2(KLgfHMY|1-ONE$H41&#GVu6lr4pZ7)kA0Q z0<`nK43i|4?dQ~ZZLE3cq07<UTGux%NAqIWANs2*JD{VDT587(KZjNU?a$Z>rn7w6 zp7ZL$HP@LbuJTy_KyMb>?RsUS%UevH@5$4a@l}Mp^su_qvN!5{!hSu<zmElBO9ri6 zF1D1ZBA+HkQwFc`Yka6#)N|GSJnGWs-PxWT?1K?-o6`onCfA3tN}7D?=h|NAW~#3X z_0OO$)gQHU5lYLPYM@zFuEqpJmM@RVwBp-Gb<xna5}T(km!2R0CV8pz9S<vN?!s-R zYNPGVpqb5*`8zwK4`RQFe8}&*)FH%J(YsV&x3?s4?*h+KB1?qp+O^TMfZCcFs<75j zIEH})DPB0<$3#BA8QIBQnJPWy!0g)W64eWIbcDUd3AjDjnXk#P%^H~8uWeJf(`X;4 z+{FLRt@zDfK9PWbGc}RtN_lTc<s`kZaz5zeCaRrxTQ?k+Ql7X~U{?@Q=sDeXuu&hH z+I)-jHZ9oO@LAl+K%XbrfRo@>mwBxAd7je2_2SC|SyMEViGQEpRfUz_Om4Z&hPNp* z?ydL5G#+ka7xh=y2B=kap&yP<nklzu_sw<P<@`Gt1^@Ft|MlHwwB3(RHP)pEkKVOD zC^k68N@Q#CXU@@&Wd}>YwjZq-td03_e8%P7UK-`!m}6jq^LEwc@~5l1Xo-rthP_iY z+tJGVY1yHiwIug;%WYd&mMz#g?lb3nYBPcKv((6~5<l4XWIg?z&%o@Y(m;5CzV&L< z<WNy3I<?*O#9UOt#`NYP30;!M`K%7X_nL!GI-ki8o-*D20vU^NRz9+p>Y;w;@#p%k z-OKY)a=Wv<5;H}P(Nou+JN9*sHoQLUZJa({%SAv07CupYdE?=Wi+#!6eT`Qa!fJQF z>Db<GZnpdF-{)Q#J@{<M{0&&^AigjmXS+N-C#qNI>ezApZxv4_epXrSpJzGbejOzV z{b28{mpl=o7md%%HdsV{kX>#4G<2ZXI<E98NZ!BZXzWtkyO*KS^?aG%4_>?e{^S?) z>-k4`X|2fL>FoBIg;$8{F_lN#T#nep3uc<0xnr2PVfnX?u6X@ukVn+@qF*nD+&q-M zVrMcYT~?+ouJ7IY*5<Nr^^$YoWMI_u#BC|%)kaavzXGr0N`DW&{G}^5?GwHBhcNX= zFYm;^d1Gt$-}xyU>OtX5seikpfo}IWKscDwVJesYi-{+ki3wgtkWmBj&aXG?Zn6LV zt)#mqg~)=A^wRcMjW26E+OYn0Vi>pg=vo(PNees|26Qfff+*8wzK@&1W5X;EqSw^; zlHHpH3Qx7F#JHkzIQAluI_en39}Ql3LY1^sQF2k1$mKXiNbdO^HNYFKxR~7RaQbmG zpoqVyZfWfP(b^+0#W+LR%taYkLuU1))S6%1*iJCdNWC}W-^UHRpaC4WG&+wsZD)Dq z-i<STUC<9?sB?y4>_=;to-4i?iUNg77$#Pikj93t2BKolE~cf-1@vh_?yse#LoPpR zJr-S^e)UFRpC2$lONa~7FG-Iqlg~&Gl20i(GRt($u++O>Xp{LZ<EESZau;-YI3s_D zkD8&}^wGNH{?&>ixn(dcAouFs7#`al9C9s{V5hGX4q}6QI%}x{L>7P^23;dy(<#_v zKyqbs+`wpDwPn^R?%>W5$TAIFQGG4?H;#jrz|oWi35P(4*-A99PB=s<7w`hWHp3v) zFi4z?5T_&92R(&M6lW8L7LLkd!VU58FKZkk6zm)UUcuy;8^-=5fSFB*4>Zs)1!9ql z>!N@ciSP$>sEQ=$fd;xN98&KWKad*VlaXiN9Neh|PSZ%5eQ<4j2ZwITl0ju70Wg{Z zbXdZ?!v8~i*^r?m0z!-i(+!7L*@3I<AkT@=LOb+*JbY*k?3auAO2?{epyk8CQgoCs z9hc68rBNVn*D&8H5KTLnvmMgk4p~BEp<3+VH=9sNOo(R_^biqjN`T5Wflm%YRhj@( z0-q^9N|^{+)c`5exi9~~#n%*SO9G~NOf@mHggfDeUV_luB729B&Kn@nVVJqVjb?)z zXbnIB$kqzagtCRY;cT5;z?KMeA|q_cH$8IMw+Pl9M$zybcj(BLw^%+q&>Ri=EF95e zhfM`I3TU8r8rY9bh|l3{dL8b(hAziLUf992DX6<mNOoE}OaqlfhMi|3R0vRh0-#KR z@&JIlotX6+Xq5;$$(Cf<^Vo_ztGOT*$vdlf0JNqI;9-8WYXu_-p)sl1D4IDqw2vD& zo9lC{>KZkJ1$<5iJl_NQG<KH>KnMpJ=K@B<AR8KlyasWiBjVR!x<s@G4VFhQNx&l_ za!b$Apwo10XfE!89iooOVG#}(kdfZuxO4*e1syZO_7%f%C3bL(B4*GI!{3CG0bnL; z2wn{cmH@cZA)6>j{8=#G50ImClfL6Hc49mfCEXrRM-apU02kg!yw{otTB;&8hmOr5 ztAG2T_EI6V1PBcbAp!yv07-x}R6~vdU^1<O%mg_Ng9yQh2n~275&E8t&cnlx;1N@~ zm}EO_g&k;G1N{ZSm4!ov!;xutoG2ZXM#jz4IG*H!JIRm-MBHOK3n&2)QESL>Iye(R zNHZZ<hoLS_P&+2hoqj(G1@PJd5`fhD4;;+SQ3wE3H0w8y*Q@xJN9EO@X&3w|go(FP z-2P+rXuIm0u*|rNs$DMbL6D2&ZYtVNf6WNsAZMa!5Pb@uLxd29vyTnKBAFnYTxjGP z^f(Q9jfs*&qYVkDBQ(r-E~G*O(Uyx&#iRSeIqqp7Ch?e86pTSQ@Rp3rpo4;QIm&ZU z`83pZJh*{?rrW{Q@GxyAgh&P-%7vMd!7jrP2|Cz;0VM?j@x>sviHdv6t;+}KIy;V) z)Z4zRKg$cSuVM;1TZ_^;@4e9Xn0SL_I;I734u@l|6gLNDk0Z08G;nYnh(KcxoFU<p zFq<{#;bD;N8gLk32MrNbMCctmaQ+Eso*g=m3FrBXy+FYAhC}P@uuMGiBk@)`9y1dD ze{pu-e@XxUzxbceCwr)<pg6;g8)u|u;I7Qj)G*C(o0gHOnOQvn#gXPn&1_*q&6gPs zOKrRmt<0=wnWYsrEgQCNa(Io;`Mf{p`@NhW&ffq$F5K7cs(D`qx>Rdq&``zIxDzxy zpF!9<jorWlSqub+hV)e+tw|{LURVeXe9MC(5&)7p7$Vc*eE{!(EhC0qeX&-zyik`F za2X`nX(d>G<?L)I|4&y$$H5SDgJz3+z{mETu6)E^gVQt?%AJRtU)}5hpiQKxavsJ5 z!0iR_6c$p%QLl&*t}~DeNb0SB&BHugFaslJ5RdQ=DEKHxnudada*?PsqWJh^4xy?V zs+S=mq_~i3%yFe=4h?_d71lrstYLM;D9~?tfS*ifu1v@HwI;*>ua_T@PswK@0Tu(f z(vEJDzf7GNHD{H@j}uOi6o0LiwcfBY#Sb`*g}hjRhNM}8)r4eh^HzefO3;*njRnwq zNE%iEu7ZS_1LHSI2n(i(6b9yjglH(kD|zS+3HT6(`T&g=5<I$4vlP}yrfF<bVv?t^ zA=9`{8B(3@uL~o$tLaz(>Bj*=05c9LM@QO0%ijAr2DsG=&>&z@CS~lqe9!C4k!(#m zm2N+?(6Oz*HPoE=$=Od*vExAb{GSym`_<q7`IVicsG#af6A8kL-{g52W2!iv&BIGr zc!E7HL4g_JX|!>6ol<C2Y}9zbua+y-YBAP)nos~>&yo=BEX|c9#0w?flSj;<5mKb+ zI3+fRgwj)>V=^FzYLtZxY0YRvOFPIUz@U1^<sqF{*_W>`Gg&ewpW1Ll_Tw_{h@wW0 z8kg?N6^j1+6k$^|L|JZ5T<QqQfN_TF+l*8By%Nj$YJL+SFF@^kiHroc=W&{1d6+^z zE+5A1WuVJBkP!)2QBA1efc`WrWg2?KAs(R-rBcm)2`FZ0oFfrRU_`?ie1VKm$HI-m z;E8I?1{u($RAGIT7#{$^nnqh!qx4u{C=F>r1FTsc7P3PIifZ#=omq?{5PW&}S;dAU zclU&X4btMgh@!J!_vtMfHTDw^9S5k&`4@$)`32`Jj<nh-034&)RSCLFpnN6LwHlc= zjqu#Gt(t}Rs8$aN2!S-LP^RHO4LLK^+Z!5Jf!zZN!WbX5rVv#s!87@n+Bw+bX~NEF zToi53iE3>0H0A^c*bHFQO7a@u2t%>gNpdEXCkGhNrVVlj7uKELyN@&;POLV$DG}tF z7ypbNeYwco{HwD;HM+Ic%KR{tVvg8Y4$OSljFceod~_HLEasynF^D`qI)JCbXDe_! zBv_FY6e)oo4!%cm-x($j!9*LrhLS}bP~dNo2un#sV}<5Y3C;z^?xUgpq@l`q#FcQL zrwkf4IkT-ACHF$<Dj}9VNZ<jwG+>rgZae(I|C$^-my+-J@Gk|^)SL@+u6tbk#18Up zc^K7c7HR=-d4y}Dv+};HbN<UyK1dpO0{XOOuj)!Ra9T?Nddo1`3e-F$E}sL{GSFvO zga9RQl7l=XBR0c$677HupgE+#FXds!BpR1l>iBKMIhN)N3C0D$T;!mtcnB97egi<v zWMQ`Pz%??|Y9+#r2Q7h-WGQ6LfOKR?GD8Jg(DuHF0obNbcmC|4`6<v>rygE?`j>(k z#sXQGT3K1faq*wG#nIPZ6OMa;)!3<NRQtrUJKje>;vuX8*mS?uOK~a)cpC<we`nxL z6yQ2vw1|aYZ;IYQ!xd)|cDEx*{3=5UctNW9nxsjG31-_6r7+@8So18b(a6HBBtct< zL|HXX#)1~g5PC2&ryAunjYcaFd2_%;it4O4nmW}F0EyGJcBk{dbvX8~|3WbL-3?V} z#O<|S&s-2W^4epcS^SW@wHh>=-kKz6opn`mf7`&`4G4Wc_-G*_R*A$(QE4pH3blO; zV@`6QfNI1UDWO-Ul2RndVM({}?O`cNvx5&91K8V~`Zp5%Q3*z!qkpvr$5*S&Bvb@| zS=5U|kx*NdnscRl)M>ibtDv}EC_;N`-MI%V?DjeQqhKDT+LMS{tF4Rjw;0MgJ&%3^ zkLO&E$32vy%)(Fcd><8*AH}QnU3jZI3t$6iYCCp)EChI?JLVH=r39e@lfc^*$Ur_J z;UAMUgC)e*Jhk5pT;3<U0%%Yrc!6xUBL^MM!d+9Kt6<y`7GwsG#L3=!{s31ikc4WK z{Wzjf4V>VtPy9G^%L@$A{PqumiTnUQpRP%R$~ZPf|AAnt{+|_0+qZ@PtzhP20yWxA zuvwPf)k+*iD|@rg#EA={{W|5@A+PEzFh`6}aaL3JhhFyZYj)UhgYP&3hDGr?7E4lM zh{TNe%W`2^z>%Oh>-veuFBWT=SrVz-n*%a3{cXV~z71O)<@DB-%*S}ai-EU#6==r& z<u4TnYtH}Q5ll}{U++Eh=9RHTsAqR7omdm#_x~RRQ}vI6xh271>a0y@pKRftIk`<0 z3DSgy#eSofRRKCN1H~Ri>Hb)2`V<?Yhw{^kuh9o(dvKQ1w*J=(n^^Qa+$D>;zK8vv z3g(SdkhCYj*Cf`i83kq-Z!6Nx`%eY)e<PSWhoWGgjDQj8|3om4!~)yH+LO0S^!=E( zPGLRM|Gx-kX0LhJe<GMsYlShia304(m(+&}DREV+RSy3Lf@$>uUi2Rb=G=^0RUCKG zbpbX*1BBxLhk|);576iF-wLLu>BY5q-dJi|SFuj-|4=aBVK00Bmx8&-Wox)0U*B4b z!+@jp16Yz3|Dj-xk&!F@RWMJD0Dd|7jR!R%+9)D@um3<W=U^)SMKHew>Yl9;q*P#; z0^~B3QVH()Zv=C@!~WEN5zOB!@e5hp-ewGw3rFj?(`cFh8^L@dtd;csgJ8yb=lZP{ z#LFZj<jIr&jbKJ)ss2$gSJttN=G+dVEm@{9xQ+i`3g*u<7yeN&|8zuTp9(p1X_*1( z)VlvtF!#_DA%82FJ2ry07g<ISb7iGWaQ|Ng^I@`6{@)7b(MADtI7|t{X}Nv3p8u<0 z?o-DC{Ec9?c2)QeJyb4T=1=V@{1?Goa~=KVZv+!-4GjC~Cr{nGK5${)e<7HG+2_H3 z5X@}648@MjSgCq-zr#Ty5YGP>!EBpnocu3>`B7|^d<3E$prGxfe*YktkDn3E{Qp8Q z4Ulqroyywe)iB=MkC6C}g84qV)9Y^q^Q8xyYV5tNYO}k&S<Jr*W}|~c_FoF7#bbz6 zp=tbPQCHI~!+#abyo@B{zZA@ytB`c8-wnp0!!fz9mTdV~!ECarF8)iwoPX4sbzqzS z$2+f<EuH@lg86JdbZq`#2<8nP*z-K&<eK6u`G@~SF!c@^9Q_NyyxfNRDJMJpxcep9 zL#p%T=HCeBt+wKXzYxry5ooE4Q~f4~<j>nv|3)x_q+qx#^)CdILXqgLr2<3w&rigF z8s*RaK`@`O;XQvLn8ir~Rhnc~rdi#cyYh>R|5h+H;t+9WoWB&zV;c}|VdB~6-fQgt zTfto5ZchKWU#(yU9)K%Sy&SSD>L__9-6H;0FyAaiWYk3L{X$-Em0jr_n(UT5J(bXY zfPxSgE%{r)bR1z6suj!ygf_Op)zY{nO%Rd?NxrefLA+vO2aN#D06LZoh=65dH>(%& ztow>h84|tCG=H<-k}^9W35Q)CuJ>HwGBNSKf%6Z7>1)+o7Ntfommh2zE2g`dK;fmX zik(_KF=`1PLr7H^=+OF1b~Of|16&A}>OWu`8rk>?v+|_s1I|n(%DLs(SdQ91&=2Ne z?90~*z3I)GkEF%a?r?C~Dw)0qRfHfPLoHT<#QYgh!;3FAqV^$#!0N5lJX}f2^@Gw^ z4=oJ-Q80u3SWI79%=eKU9t|c3N?fNczz&&7?b=J&P$`U)!8kxE&?;bI2pwklI6l(k zH?2H)l!j~?9I(BeP=Qs_j3#9lTn<hYvyA-^6Wte?ykpzUh|NX|Nd1It62^s*s9!T3 zxHM#~c-C!zXfor6*{vuxnN*@9y9M|hJ_xDne2sJfBr{<2z(<qlQ?7yPA%lK6&A^+- z{RyM4eQo#~!OY(uUi$si9MMvf_QhGj`}av(+*LYs7HCO=wJKQGqj`Q>^dzB2w+!V| z>Sts<fpxcpsBWY{YwP#8+}-<$&$|PyHE%#kaTEASV8BZVmaZ*IGI3`18QV#asaUxo z1>0|xJ^@6$HaE=Y6xo_8K?bs!V9FP2=CO(igESCJ12jksfK=o-^o}F*t9-S`P&R0M zB9aTO?2@_vjbMIV*hUjt58S)@B5PNVsMkQ_>RpquKPtRKrD?iUCBg?-ZT^r02Mo%Q zK5Ck&gRg1Z4eLkI{XO|4kzHJZf%dc?L!zzUU579ZPIoc-&MAoq@zd`ez2H>Xj0((w zwDJ^wI=iQfF$x)WUbjl7v0JgqWReFUm0W}q|C!y2Ial%?`y0hY!mGw_@n{F@QCPjK zzZJ|&rI0ZXk$WI^dtK$uJ)#BXck<iZ-hC+p{cek`yZbRseh5P%fC!iLp}712BSUS7 z$D^UHseh8@JmTEQC)6t;K@J=SF(FPsHDvg^&^Q%lPt7Th+E`BJF4*NHHbFFfL2p`F zW`j&1m`MCyRI)@)u)4xccioOt0Laju7l@gjp0;X?{(KsA$!Ao<|CE2*-w5V!??`Fo z@mP~hUq8>^?ET3CH@qHYkCj1O8VG!n;0P>8H&lw$=hE<*Aw*ItP!asoOn0Z0O;P1b z+J=U9x=U<jRUghaUGEk_#)jasRs~WQ+lNe7ANMdouY3eyM&vVE<T@w{mI-?;N~nBs zl0rmP0;@~mWF?Z^Ewmt^qdDT-X|Wj$d$Uk3(qi+{q6m^`ArBc5B4l%rj8UN>Q=|!~ z7yJPm)^Q}ul~N5-H~@tPgDim3eO%`QZPdbO2^G`_;nl8G>;3gM`15ur<@P=&*b?NE z{)Rswd`GOtK29YH&;aR`L|a&!3*dMH>2c^P3$o`5W>15<0OSQj)DWa)Bgo_dOd0UO z0>M<bE@&e6(&81g5=00(9xKjdA~UF{H44~F#e}##bSf1}<s&?mXbhFGm<BDT3k+$f zh{5t%lR`JF5XlhYxscPh4wMA;<bwJVkpnCUOjmDi0yLU{I*8C2MBDO<u%)mc2SZjM za(Trm9Fg2eyfEObS)<58S{x}w1+@X0)#|2CamZv5vrS+*UF19o`6xv@`Vl0BfYuEl z>BrZ1gN#ggw*g>Lh@qcx)iR&u%|+OB2-%bRE+3i>$>l|ngT<@tkZq!XQ5~l^ZRY_y z7h=0}oW|`z5<nFIbYPeZ(6Q<Y6jYz_plSfqe33elRgFkHHKI(pMN|@sHiJr{2~t-T z>7`?`l|Yz^i`L|puvkSo$|4JTi8lwGk}u$}#P~ME<*h{_-9_wDkxQE(j8o($6FE<J zT1r4WWv9_3V2}=&%+wJW!c7BBV5954D_A7AxU{YY$0_lmL$gVU6{TY4sJhRBG9MLU zs7TWRkyEvRCKcV9f(s9VD7qi5D73p`?mS2k%GU-N=w;Kvxjh!k?iq>6S8rG@DuqBd z?!2<Im0xa=z7i^3cRM56Dzr(^KCb9mBa+5137`oeKsb+uu%rdhxG39@B60}AC`7cB zhEX>IjoZYCQBfXEj9|jiT#Q?zXl**Wi`Rvx3%v%x6+n;9C~EPjuvWED=*B?VO$wbQ zLgb`Svu%zI4ZbBB&M$JkT+ur8Q!|-y#1IFp=J-|bhg2)IfzhIf^uz074ql!E@3gy$ zJEXu@wzx5Y8ZvzZYo>W@-o9?%^*o`vHnPW7+BP1wf`zzzktYwDmCm4X)oX6TKyFb? zeo@dM(v~J7D~hQ3sN6wuo=mWk2?Q{KyvbsFZb=SM!r_T^d15>jW5pLey^rFQA{Ms^ zn6%=n{USG}$VUC7PQy+Np(aDvS}h;|Ac+Ma0Rb8-w_A5*Ga0K&-tIi=N3&J82@ccR ziu6|^Qn))f3);hvD*{t)2RR-}FNGhAOqnWO?Pi_IF#`(~UfTH$crhh_xB^oNY{~=Q zoDg~dG7qkh&UANT2^RopG#zQ%h%(|}97rflZn51Y%2)~bmln^ZiK8Xxg^i-zMugR* z*n6;8KVM)zDT?D2v9Y4%G}L0XFSV{u-K<m~P8l^WCP_dWmZwSjT+-+qXwU$~Xtzw( zM>UFE+O;e3wxl*xZ>Y9A6Use&XtlRPFlrR0a6SA0tYmIsb4Z0HUbE{qDF!C?kw6}( z{mfOD8;($dmNNia3E~=2Xr3T&5E)DZvuBW|)ne*sk=`IWNe0Hr1ooro0IE0>TeO-f z%mqr+?c}wpK~yXjl|@3vl91sQNXN-5pUxIxW(3Xv!ekQgtp+Wm2m?T1(zt}w4NhFy znP$(KyT~Xo<f>txcrkQ%X}&g{Te8P(N3u@iA*0dm`mr9Ax%VW>y{*?jp>mF!#vJv& z@gx!a>Fhp@Gi^NDl!J-k7ZKInb#>t?6E15*<_;pm+n^+w&~6Z&s}TFMN?1%d1B(v# zhQk>mK2ID87n{*hR#Yg6k4OcI7Y+(^7{y_9fwN2$HY1oNLs&>4Zw8bwB{X6!gt}ou z_Z-`#xhVcapL&`>BibPWeE6fyh%eTUf&XyPU(+<p^}yIP<<a}ql5`fvN#(YksOVq7 zEeZyzNg)EV47O_%QfE+q-a>14Lz>;_H6iFc8d8G^dh*2KtYY&<QQDwDe-!vw*lEZI z9A%<(C8G5W{Ea9yp?VrB1fGlHZI*!a1Gj9K_(`p-%z+Mrvf?AZ=mwl({TM+eeaD9H z2AWFi4;LnkM-tv^i`>)Yt~iiABXnjW7?Y3<7P3<a__=eC-7sm}ap6kW^nTaL<sF1J z$l)@=9DCRyPg|D>Y+BVI`d}!%H{lla#C`7`BPwJxUG1V>?2#~-CR<8vhEo^`g@&+x zUJX$uaN_H2gBDdqJn{2<>aS;P7*aBuzFn)W_)^RuQpHQA?G)I|v=LZHY8i0AzhOs{ ze2D#&qxUS_X_ui4ykf4K4LmI-7R}yUL&O$W8Nzw_H9&~SkgIpFiE_yNS^Sr0D@+ZM zQZ#X<*X5-kn>V<Si=^QI+d+d;dGXn<ZMgKJkijRBwhoWKE#*Cbp7rH<5eTjY#I88l ziZ0CD>_tg08EdXVVG*Sna8yAJiI$w`;*5<tx@P3Xrsrwvj*0k6aOFiETTW52LopXw zo5ULvN5HzQXJvIlW2T<Vu33R^UTnQMSz+Da$O4N@x1(4k=p%B?LA1k8XnY+#EM$Vb z6Ao>IuO(Af@1kVgnru4ta+hhnZ=0}Q^;-wb7Zmr(K_1%arFdmh+rkKKAf(7lW*E=* z(iX<<Zg_RL<(1D%p}M~(K-bRaBZ_|t=6BY(%T9?6GyG7P#vsarD`rziUY*LDI-RGZ z1*7q1x<Fe|fZPu?iE=mwCFiwq_^0)DLWzu5OKSXV@P^&duP>y&HhE9kV6q*N|J?p{ z5mAvr=_~45MdvG5k_`ka6{{j$LR`H-N!IIIL2qvBX+e_+SL`YmZ3xRsYq5aWwI%u0 zPl`XZE)$~}{`J>)*DE65Ojy5t{1As4EDmODcaRhpIY9IGXoICdNqNyV-x{bCRijyt zS$z=e@%A11-E>}=)3g{+S?Rhm#_SFX=F4iWrO9Hy;=A$MdZVI3JxaiXl&yO2em#Hp z`(Y`_L9T1$y1D=f+(|q4BJgNUUt*gXoTV2oa--L8-c$eh{X4>?Y2uDjaIknWL)SV4 zb@I#HCDVMGcJZfcHk|I&<oTc@m2&!-skU^DM(caSqib!LLIZ{_O_^vP2_|;GCffoo zytakY9Q|)a%Sn`Xdnn(Jy|*dJHrxVbU?*K;P-N9PCS#4^9I=6oO$hcVauISiV>PRJ zqTu)hed$M!7w>eKMfpa$pbTW8d`;5LXxhRErOh%~g?=+4R!Vl&GjmJ*=r{Y*L^QaZ zj~dk6PGpJgRVUF-F=AJnR;QT+eKWxtDw(aBb;|eCVoYu~TCf-Q!5{&Mkjk9~AqNm$ zchSas^g~%P%xQdM_deMMdd9i?d3kGw53A_D!*;SPQ)vV^(?9FF0EwfmhNDILY-yrI zFz-f6%tT83=`Wc_S0Z8L+{uqso=BJ9=M3SG1~|a9^h@CfAg7?lHUzWa()LxI)2lCj z+0gnmD;hQr5qyMnE$MB_Okfr7g+Virsj#8&Q}iwi?b9>n_Plue<wHTqOsQ6iAr%vY zonahC#cBG^F3mNVQzF;1v8zT=zrjh=OrPdS>$_{p(!Mn;eKLy)m^g1=mH+P17?{L+ zPEjdlvLVEGSUVm-%&l1&)4X!W?C%F2O)TUfrk?BIu;@2gy&wm@=tzwPuwiAbfc@)R z!qM%m@hxpZ-=+E+djo;k^e?V21rcqz?g)|Zks4PSqA&t%%&5`gU~s2(yY^CQ41S#d z`lEXh;KvnFUepG2K0L~VSA4h?&ixVD3wprXK&fEQ>CZ14<paNe4B!13_zTjQDfVOL zQEP-HX<kcMj||H|hbn6lE0)>^El%HlBdqP_!=Lw0Z@Ni7WvB$@M{6J^v_8!X$wWI` zhNkPSk-Rlj5FNtPRW?v2&i|U+@w=!4zJ%XCd-_wWKgz)tj^)nq4FTso`D_(Oh}fd@ zwt+HKqj;I7`toiri6(a4i44o@rP1POF5nzJ8wwT;^KJOFJ|SAmJhYK<rEI<CEWZl+ zTJsC#dd`W%jW^iHV$*p-qHXp;Z#2n$f9T<Ct1AsoE94cn>#VOfd9Hape0ZJB^}W7Z zAPu`5`i=cTRpyJ@b8K(5gzfXIw9B=-(;j^^@eQX`9b6S3XzeD<b+~stwWQ$5_gu%z zxbAE6O8XtH!jx6-tONEZIE7(}(~xGUs}ONstYs0_k?->4;<j1-+Z;ByJ{xLqPP*1{ zFB`X1IIo0UtJ(MbW((!XdqhE(w_f7n{%uFX1ua0wy`Uazi&GdfIt!uFdhHhg-Md(2 zvADBv&d2B1_W4&iZSwm3s)SPNqFuNV%|>*H)YoQx&A2h}tM*afPU*+x2`39y7x?49 zewi=MKel<EO1<BQph{qb4p$<;EV~Ps`E<|(tG}WeE+ViI`7u-$Yo^{*KXSA=>_9TM zmJ&~1Y6#j?llGURaSA`2shoPC!tEyaK;`VmjR&@QpAYEwstQPuiR=ry<Sy>hjmeR? zHuk}g=z#snwFpkq-tB1i+Cj}jb7g(d(#~`N`r!PSmYr$)ceXTT9>3SJ%L{#Dp;<^F zE_Lb4w&|9=?i##>U|s=vIBR2GK3os?`U?!pSABudrKyd6C{<C!vcrdVBsLvx*_D0& zu>bj=a@s-ja}(m$R>SZMZJ5i)uN+pLleT-;<<}ah*Jf!`8we6*-yeTMMjg_Ao!E|J zmwW?Z9cm*0cj8ez1a(jc-**DB3C4EaUTa~G_TWYP5$>Xc{rt!F@9ONGIzHBU=3N0+ z?rF(UI`p6y!P|7Fn^xip{;zuHV}6=nDqmI_#=+8euu1ZBrvs&6pYD>lV;A(3b|1SK zv`G+RRO0KSz&ET~^#ph^ZqJ@$m6p0t_W;C0IM!S7Woyi~q{=|6<Kri;&qJ7;RQNBs zKi?VzDo)_e6b641T!%ZRENRR)jULAvKwOGZPSM9SmD%pduF<6J%TL`)J8*6%<gZ9T z5w;Y(x#k#q@XajBmeC)pK*C+erA~YcL)alORGc_2>=`}%c&ppP?k83L=WDemd~S-7 zC0it#B{fSh+wz`X^s{~uId}V18*7~XIqBS;4KvI8%Y1uZpSTr&=FMp%0@~b1T7CNN zusi%Cd%jQhQPMK(qex5Vs-Xdo4PMdgO`T7Q1)DD??K}5nY~7<xf`Eg90CeZP$L(KR zv>C(w&F-5va}Ev;4KVQTVi>K**|GyL4xK!&QXv>HWUP!cWNZt>%5n{=<yu(oPQzhk z{L|4Lh;{N(hmIj+zXVDesF(dbQj9cIkIomS%T>Dj8O3%3rMeAfzOUF%(Drc^`1@;} z?db_(mpT2G(HDfPkqIu&d@A;CEmZcBQMMq?TzA(X({WsgyX^+L?Pls{R#e4BDR)v_ z9^+yb@tn)%1D)kF6vU_Ytr>9^Mq`r~SJ%t60DyJ#Ed?+oy{%jtF0g;aw4)ZWt8{Ha zLi8O`qNUg(^=J8f<jcWeKiAsY0d1_DE%Yo@@<E<V-x^n+H9mzfZaipgH{rkL<Qk{V zF$b4opIlxlcWpSn`_Q`GG$@?moCPphuhZw(Sr)!s79$l|ej}k`H2N9mdJOCX9}D+< zb8Wi0+uGv~gB_NWZ0xLQi=I$^i84m@(FUJ>3I7&Fn7>!BD-6$anDN_}`uIh`#BQ6p zQ!B4;97zU*GMI3CgCikbW8a+10@B+H2)yqH%q8O}ptfe{_-=aOG;#jccuU3BME3)R zdtRXGYRn%MI{;0iH-l3Aii00yrdA{SJ_TLa%HDZs;gMZ!!2`Fi)IN4^^?Gnv*IS{f zD`}1|NxJkrzqfWxNKITfe3+&V_K2$d;IM7~$`A&__CTV?AIl!JtH|%m7k2}E<`u|w z@={bqAzSw=By^_rAarJy1ftq5`X9-*zZI@tS%38?=EtkMe?q6$%;EGCv|f~iA@j_! zOnE<%?HAlGqy7QOW<6a;S^Mm>h3feNhcs_>hdur^beKCp9w<M7%>hrot44?ii;Kg& zBGB#2?#x1q>%}P}7TQZ3*KC{`dvx9oJaZ*++)}A=XG1i2ta}G;csj(w!7n<3RU4IY zad_M?AT18*wEoQ0gLey7l18P%mHy%)@3s+e;7$|}B0&V}z{F?gB7h-QL_1&O3~r@m z{*S3gDu~L)av+4$i(V_*yAv8%c3j_pI?cwF)ax1;MQnW}Iw@g*4;dxiuM=Jl!j#NL zS?F3ZVyqyKJXIeBd;+e`){$f$(1B*P$a@J!$h=t(U8**|P8uFGQ{OfF-8KyZGsekM zEzZ?0NP+Bq8Lkc)QSnOy)}jxGXk9`ddsubm^)qLYffJ%MfM6Vct^XKJe_xc0qWQ(a zt?_f^ExKzXK+<R%)!MSmbny3#;q!S2FNM&loECOWs8ceGCVzR2-dk`aW~QfdcQpk- zzb9+G-9R%hd@b>Q^K!B1zLl$VfE>+A5l285$_@!l-+BnbZ+C6QV#OUrve_*}ms^NA ziESI-OszotFqu~>BZr-9&$YaFbcFe_>$Z$NTN9?{oWE%p*-mzSoO}K3hbZZpH*eOg z-=Lq&FF9uR47)tP0bOgg1NC7t$Sw58f|iJK^W5dN>jd79zCT>Qg)%MFt{%&^Ed8{C z!qN0T1>ahA8}3lK%CLtzZa(aMI{Sis*8A(PlvD<<5A);{rU?B7$Dp4s-(Su1)Z}5& z;yRodu1mT9W9Qg8=GDxsk9$U7gip8AwHDbn?pF^3+VVSi?)xAt!zdi$_k=%O`R?bq z&#Q=i-vcSit?rV9^H1?CJ*0M;%nJ}L5(`r9v=M8^TFHTBZRZ};Fx&g*zRmvn3>XR* zn@S#po#;lUMX}17-6Dxu4#gdowCj?=+Yj|f?Bg%q&Rp`3uZ(2Mh#xdtptE%+9!&O~ zi|@Pbl*M`tAJ;%(UFr_sA8W5!F?TBV`haDJ5NFSQ->=6*PlC~!p4da*Mj8>Y2)7cH z9PpOESLN;<zw>Zo?%a>N-W6hQnxlNuM<yOlR}9$6bhMHJ!_PDlywxYUx{U``p9jgq z_cxxnzGB{wv3+x)Q3&D7`qZCK8juC`*FDuiCElf09y}TXCd+n=27yTVVr9d*_f0=s zcnB}rQ-us%B?Je?x~Nd@uX-ZjH$*}xY-?;Jea|W%u>hI<S+3f`IroxydM=O9t0Zi@ zYM_L1IlJ$k?9;YvaK0_+tn1V5&~`-L@}d-(?N%;&y5rn?eWKljj_brlBJA|D4-Y)l z&=z14?`V+a8i$0c8+-R4g%o*F@ylgmj|79J34`-n@g$+eYuYt+Pz$m_hx>378Bj5l zdv$Zwp-@A}w!ZgQ2P$7SZEK#O=_HzIZq*);4_#QKWr;w4iGoh{8Q;Hz-@RM+7qFeZ z002bts{svjA50h|(#s#yqlc(~2<Og59dGnL>Gvdof=RyFMTW6$+O{)r$0x`}9<cY` z*l#Y`7D{5^pX?;EOb!C)x;6FHJsj;mqj7>so1w0idLU44Pg@$wYwBEmpOKw3yWl`2 ziA5h}MO>%^4))c5t0(@H_p<=1df{^#?&yYzmjgO&X*!#dd|y5B)xlB#;j9YSvU3ob zF0#m`*pbOS1FVcWH70d}j#ByX5#%Y`6^8Gh1STd2iA(ev{YeEHDpb*;6}d9Iae{8+ zK3$X`pb~FAzI5U3U7aq#`IS#YZzeA?zoaXM!LyYtF;;6lW`!+_KK*oq5}4~+1C2j! zpJCrS95C?m{=mKD$OX?L<Hd&e0i1guIbIzF&Ry{yG@;gYIckH+6Ya^Yg)PY8mrZ%$ zDY3oJVx598`67*EL9{OcNEbOJQXq~$-9+TwRIOVv);=iI>MXkT(r{GvEYUSJsi9c! zBw&bqI^iI5n=y;7hwbj;h*F7;88AO}zxPwNP8)LU-q_fj)QtA$>fB?X8#FGepQ>ZO zTV0RmsaFLtAzs?nH<yCLHQph>l4SvpU*3P*W1eZArpmUnSwsSuk?IkNA)0Ev^d2<5 zoPY>9h}UNQf!e2zKU=eawKNs^>Sfa_#}^y+rxnNpNCSRa=`Eeik(fE4hwnl_(W1E= zz>MMmEWBY9Z2}X5EcbOf0;;wb0`qj?vH%TrqM7-k@oreT=MH0fcL!Czwn1@OX&sAX zfyB$?^u|ERKF_^yyxnBk{>g0fev8n)KaDjRT*IZ6eg3suXCd2ku8y=T`vNT`osPV6 zXl1o^8YC5I3_qG6v#bLSgbQS#&#(ut4Pge)9xMmPn*t6hmzlEC@GEx|yiDB7rbR-i zRrI1FQQ528s0RzJB}qCiBkc^(e9?ePTb>-U`Q@I+woyVqJOljo;ELhygV9zpue@7B z^c$w5DL_zJKxsk?J7uq5#=#6ri0n@eX`Y&qIj2T-R1*NQF#H;+|ME~j8%ayO&rfbW z*#4?r^NFT0K&rDXYV>b^eA|F;+Vctapx+>o<0*5CY^<&6$6rZx>>2mL^}W|H(teW< zw}Dk6lNxrNrb3(5x;;eZ$wWH8YI4@gJY6tFca<Afz<_0Yhr6I@WxXx8uV2=zsg2nB zjN_Tw)F^p*`u^0pUK+HUWsxk{H4$o2+8XWwc+S`!r2FgC%QuQc>_!h%#Z%7vtr|Gb zgVNzy*vk_Di=cQFbO%(C$G4IlUgG8pJD;*ot-N<?{;Hw&RfylP-3;5|;#KG*)b=)# zlq^4oWtjk}fJR@hYvkC4r$hKR3g1U)p1;!t4U?y&Xbl-1kaVQ?Z#+V>ps~k}3?0x} zJ(BTeT)>(g&<8Zw4@W|M&u;58`_Ih?EQb~PF^>DC&qm~{$0PP=4)~eQz_|sL?x8Qj z%vkn5749KZsz#yw)SEnd%eZ;g<B@SamWZC8JopJVd+p$>%{HsKLVVqZf5wW?bE=WF zJQik63dhvL9=l;!WE`f2Brnzm=8Rv#$Mxgyu&{ZZ<=Fj`kF(zXZh{yH<Fl1hJU`hh z^3kk44w4iVPQZTCj@|Jx>!a7Z)*CEmE*m}2zR`j8{Cyp!v7=KW#MiTo=<ha>>Gyos zd~14FRS8<xHB33M<{&%gZV;Kj!W+aT;WmMcqN5ud7oOX@M)lnp)=)P_*}pBJqW5*? zmIoakrlEexjy!kf|D04Um_}k6@#%0_ZRR)`b_gXrIxp|9K;v(~KYgV<iS~{NKK>8J z`dq-vM@S;S?ouapzl_uzu;}3d2X?E+ON()$Ae~M=iLiD}CEIlxz|E^b)%B;OM(TGv z^{5v?L$kiV2J~j8(|B)4neX)w4G;rD7ZNWnV{3-4Wge;gb7+Afyc=O9dlG+asl-mD zf91XL56U55zhZHP{Yl%f+`fCY1Vc$C?t#qV?EB>`6BCPU^Q0(!03s&CYc6V_kn$hb zZtWUMG$T&{hh^R5<4Ys!%thJsCy}`1eskuB2@b&I9QWAi*JX|;Bxj+l)XB}+OGoSI zPqLk!+yYjyJVT+Ik1GgNMwo}pKHX$Lz<S+4!rt~99XZYlDR)}<(Y@prszRjE4NUkA z*>oHWvK6>_UnaV9P-ZMoAGZ*RgU25qy>8vqdc6&V-CPkuc4{3)cIO;p55hx6*?l6o zZI(A8hqYM8wypnDucoe&7uE;O@x5Ya?5w_7sQmJg{knk_`zdg$2D;s+a`0I_nB2Fx z;kF*rq7(0j@{l<X@NNEd3_6jsFjgCzF8kiAsrh<!&|#LVPpE5QJP`geKzCrGH-|&W z)yV}kY2YQ3Z4@LzHL@LXa-{3F+*L;b<O>#S4ZP6Ijn2%)ZGh%f1D`KkMbbgtN88nV zh3BL!@9M6vuh;q9efuUWH|~lDU<=qC>@z$$(a-cdQWvTD^mE$`Yw-JZ#=%brw|8+C zd5IgfH1ZLQoRcQ!<iA$d5lJ_?+(9EI>Aml|eYSaN8}q(c3g&PHo)$#SoLNCT`_AQO zSf9BLxch&OxZ}C`%c@(RZ@SsmEI}-y96)9V-GM2xFKNl@;|GPx*eCCI5P!A(*KD^i zM4{;S<<!!|I%rzH!heX-@!`#FaQOQ)&h6`Z(fUVJ5aaW~<&l-%?USr?fN9kbahwjg z_?sct=HFVsX{m<kxSaS2-Z1ZqXUAusIRY{~y(ROy8-M-p)MK0MXM|sg+5v!$asFUv zAG&U>yDfroWdXjz4X77h@|6y|<d<&Ezw8be{S@G;JtYiQMdEFJclkM%fQhX(>i%G} zZKm=`_k}_A3-6b(WEq9=G|&wG@?arRapLQw-|x-Y+uSy6KSQ9Z^AAZY#tUU0q<oJ% zz)UTH)X}NR7apLzb@cw$xP49+5wNIZlevPbs&X8;PgTEI7Yd=0(-4{Ks%#Zm6HRG5 zKW^AZScoVUdCh=^^N7X+?4S!^bJY-XRrinAkWQu%zWV6CB?X68EKon)w&?YI0JeUe zGuI42tm@_627w8IQRcmQvESQI^d6!^UZHYNlQ4Cn(8{q}o|Ac{)NiWYpyTP~fu{?k zgde+}!q#!GC-{Q<%gMHIPiG;kVCFiaLxA_YC5`>jbpWTH;lHc+z8VRbunc@X0CVo_ z{SKnrd#h|&1zA^TpE~p7%!^WOz;ExYFmK~;J};q7uka=z>%UUjRyjY~s?E;o7WR!{ zO*uku&btZq0ko{gIh?(H{0ha#=S_})o^GIuGx~XPosW<XJ2D}y*Iy?XU@tDx_ICH4 zpX@UQRVD#<i%s$_UHLhzRZ1j_T#`>rQAN`?x9h$(?UBm7y0tVu@w3)?UbWbC^GC2g zU)YWQnGwSBlx&=93ow1=mRy5*HdRnaPW<IlH$|I9MJ47T?2+*6#*8VSP2h`>wD}vW zh&=x+tJ9;mHa(bq31G<_4*FcyJTccq-aqYkq3W7uq5Mu-h}YPr$M&1EEn$O`;I66# z=t8;attHPME<_jo_(D_<Zhmh<zIiO#Jb4LCsqXK6wADT5gvVi-!_xwBjz}4N4S1UF zX4O48_WRA^i|Ap9(6}t3->>-3S_9^^>I4tM+f-@$xY!GrZ{4<h3>M>y<hBw4kaM1I z+&g!!%%<oj6ZrE9U1l0Nk8gbZ<Mu7z?9o{F{#l>4P4U>zOO_z={mV;2@W`Gok?ffh z=;&Rl-yi3(&gwF&d2A6z+d8tFBf)59x^{18)+7dQ)ptp~-F;&@;DMxy$#ZIx=Wn+O zZ;9-wO<B0Z*<bj$uO@ZTF1;~{uxESP;(hZ3=;hrnQo|1fTP-6ASm{ez7dHphd(~$| z{ju~|>Yd*D%%w+H^oc3n4Xa{Kq}^zVI@7Q^_Vk*Gi}h3WAw+!0`{zgK%2-j)77*ik z7||5p?`|_4L2F$5qz>6>+)zRGSD`NLa7i0EyK`OI^?mFTy}3;}D{r-iw??09>beIm z(A!i^;$^?7+*Q~$a_$F@I`*g4{u}aL`FHFA*yd<Aa6$C=dUNm&-#rDnQ+JQ0-95i& z<N9}x9t?G#T6uB#v&)3hNnr1<`zB`B7NVs`HvL+E=dr!bTKVQJDiuiN$UvNfLWa-| z<@CK4mZGTi>MQSNC#G{1@;z@Qi{xjCz!UikG&RM4EMipIuNxj3et{CR>c$2Ago^Ns z1`F*bsI$xs*B-a>Yu3J~d0(M@)T_|akz%IdrUbOgSKYj9(_9fTWP7;d=8*m3NJ(9A zw1RZ`EWk}7IZ%8oFFCJ{c!qXW8R@1%?p28Z<oUAW)-~_<!%MEu{r39f0u$jeo+tC; z{-XKwrYs<|U#8GpC*WR&_{OefeBkCnm#dMt7R`Bc`_^JMr5!z2F`a#L7k%1K%sH~% zOuS@HA_^IO?iFIBGLBn5vV6mvJ9k$IG@?fnwi?k&f-PM?k5pR1DL`WGlAzKQmyCnx z^h2)>;4&QX6R1^v8cWC5UUs}YzOFxzg_zaC6~s0vx{(iVyzYMXpqxAX_}+%~Q1HDJ zlv0A+jB^@QinPPH6UC>ecvR-`(&>j4w<m=YR}ATCiRG!>cZu8O3}yU0ci`od?crfD z&+22c?mcUm$uAXdncXmnAgiJ`eLJF~cjO)%mlM<`-dHneHhG{XY}w00JF}V=b1DRE zxXEQ%b8zbwKbl@U$OuBUSh1fhpBH-Z{_7Jr!eZZa-P@Z5du255%vhfvvj0t|abqkT z*0>E(wtmC6?{E8X&g0Yl+KbQHS#So0Wm=YdW6g8+atiH8yUTvYvwlVtY}I<WI$_b3 z`OXhM-3nj);3cL32a4US)&~O_$fdtpBUwl9VP4d=u#>Y+bj!X>lsP|~c~X-`AxCu& z&dn=plv;h;vA418RifTPucrAA4<(Jf?9*ED^ZjM#M}CyvW1twdcVDT%ad;jM_0h9a zo^<dH|LJn#>(WQ+Zy=QgYN|NyVM-*zQsG+$02nq+;&)L7wD-UU3&sRzx}TLIeX2z! zpOhFjRo;3VHnvvmei{u_UMnUc?>8FFu`4?16fm*efw~8~w$b0@ZFPz9DwygApnC4C zLS>CE#jc)!+UF#Oh7kO$+X9W|aXU()PClj_YYe<#%OkrRKfdVhf;P^ZphOyh=C!HF zU+O9zWQCccTLR}?tJ#)&(qhO<vCW~IhFDR!17IW|wKV~Qb#8sXa)Mym9y~zc0@(%A z#ol4Hwe=^TT5a%X_u=+cef9GD!os3;hZo^O+~l@A3XCJu0FWopWf&}sxmMfIwL5|; zO+bxa*oILFsmTd#EoB<$H|Xcx^*fqK=vb%iJFn(EcSGcWT&@JOr|_;(sF@!}3THrc z`He{4+>B=SPKEo6IX8BO<+eOmr-k<6tXeCno2!9VI&eq${@e}^8Ty?aU^`;KQAcD; zP|FwE46^?GvJ=pgeBzk|#kiT0%+j&Ufirqif+(x*fXU~{;EnqMPlt)U_?%$9a;aR? z7mSHC5-*4e0`#-DqHZEyE?V2PWREZsb*$R(2RXl-S-=5bhVZURmCZYBWt8dUI<WNQ zlEY#3?NMD;Q!o$8jL1YX2X|t=anS9H*v4K)ve3gQ*m_z0k=40VvFn+zPNW(BOr2^s z&}8PL)lPHuKmfS5(c@sqtK~!RRD$*{?uFVlfO9pZ`|u#k$p=w%k~4V@$+^~GD>IJ0 zQv=A3ac^vEIC&^A4qDb%TzkqHsAoMzI8PJW9eG+_yTr?Fx?r=$hSTRhzgZ*tf{NlM zKsBo$QJ!CBTX7tLP)^2`ZTzE=z>eNKU2k)5JlpCnz0!TmjqT=(MO(#RZ?>Ddcup)> z{<(9<xi`Ne5sl5bc|7T+(7{T~IYw6#Wq-Egn0N_}0%UaWkfA)M1;+vq8bxro^@Sjn z7gfWW<A}&*?pM1HvCJ-4U|+y=3EMbPyR{9WNEdzFJ6q^K`B`8W(x0KS`9feHUxl~= z$&l%{wtm>wcxmpJ_f<V7wk~FXGNUUplc69P-a(MDkmP@*j+1P*NLd5UpsJ7UPH|k* z<ALw)w{bE$6U;3anQ$<7tVsgP1FwyuyD32R62K#_@k;Kgk9*$#+<}x@5Ug`cko5QW z0XrTx!ndB!MVCDa|HH)L+Q$QCCM)N!e+D+C%dznN^V~^T#GXvM>MH>oE=<H9m3%xH zz9%E<=y$8}kUsP7!z_ASC5#|}>+VWL^)BYa+wrgq*JM?K)~-=(jX;Oq9Cf{=7PD8$ zvvCh~oZaDo3Eh^6XD(m0dd;q}sus{iCjsUE?j1%eQuasNDHXBhU<dkGOM^W$wtB<$ zT@THD`%PhG8j#<d2c7L7uO?~KZ+INv*!HzgdoTaX#R)QD2CyGXQ&*y+TNXF=ji0^o zZtH|#<G6XB2E{bHrpo6Swj06t$%Cj1w-Kt$Y2K%z+>DZSQ&vp(pGgkSs(rWn#oR}> z*qdg>Rynitim5HY{9_j@D_Ka}jjW?KpG#hR-~B4;^mngWFv5w-8y|;C4ye`(@`fFC zBUw95%ojL@!#`iGUjJh(X=R7q4DHtSSpP^A7I*AU2WFgQKw(UG(pl8E#j}4-bhQaN z3|^}B=l(8a2qKDe1W1{&>+h9(O4-D!DE<2L1zSt5sZt-l-sp^>3_G!0NWbFAzZy+~ zrk&8ncAvUV|9W%zZdug9bDMOqB^RIAh+>8-O>E8p*1eq;`n$oeSJ(gk7&RM+EES?G zLVh2q=4?}6f@k?C=JZFx8e2YSe1A4u_3fRtDAz}b;T(-Inx@GXc5h62)Z3`-yXc7N z0Ql?ISCy(>jAu3z6T<|W?7Ki4n8<tf5M^?FbwU<U-hBb0X#tMYkV|z!hLYL=Tu3az zaT6Z=zND9UG_{DO?~68hn1Z62A(l_05~Oit9>QAPY<Lsxs@w&%5eCXLZYx3ERG?uZ zew2o;oW|BjmpZ|ehwx|1V7w&`-o}$>sKkV)DG51Ba;NjWbP=k>5!c5cULZwWlc0PU zdDcp5?Ulj|$stcMDsdu_!y^bp{o{isL`mI6zScLX)-g-X<OI*G=}1eZA-ty0Nu~pY zDTrw8utNY+Qh9&S#BNZ_@x6{qcn}$Y0{T$nYmy3OhCqn+_u->03lm5*Ds?6Jw#*Z+ z)KsG*DQoo{ldpT#XfC!wk|(xc0nGCjz0pn{SqZ$#>Zd0n%d7S3*Bb1+;ky^m|E<)u zK?C#`TRdgBo<JQvF_p@XK*A>UPJ;_;jV~W#qS+dufKetIe^#LXh)1e<3XF8{$nTfS z{xE*;GV8O82bP7iR<VKJnv77He%PWyVl(xTm9}_@=ZZFck_6sNm}Ql1Zkz3vBhk0+ zLoSeR8k9g+(ukA1EC;X!D>k^skH9ObA;-;Qj$18vbu<M~$;}#2b`qUO(bO))0@|Tk z(Gjrri((VL%RCYrx#9!8#?`jR4>VR9>oqS7#Y53Lg~$YaTZ_i@HQw(x%UjsC=RVl? zx!RF<ScVKq%FeRx3mCqHYlnMW&8RO>lnk9PJ(_0!2dDS0&arZ=I6>p!`*?_^{gk#D zUzzbmD?!Y&sIt|Sg*lsibTK<Y3juXUSbuT}hRW=Mr%K⁡Rp`98DR|q#0YBa9?!G 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 literal 0 HcmV?d00001 From daca6ef482ee1f82dea1d30e6d6cf03ae7742965 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Thu, 21 Jul 2022 15:33:21 -0600 Subject: [PATCH 075/113] Bonus=>10 --- common/numeric-constants.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/numeric-constants.ts b/common/numeric-constants.ts index 46885668..f399aa5a 100644 --- a/common/numeric-constants.ts +++ b/common/numeric-constants.ts @@ -3,4 +3,4 @@ export const NUMERIC_FIXED_VAR = 0.005 export const NUMERIC_GRAPH_COLOR = '#5fa5f9' export const NUMERIC_TEXT_COLOR = 'text-blue-500' -export const UNIQUE_BETTOR_BONUS_AMOUNT = 5 +export const UNIQUE_BETTOR_BONUS_AMOUNT = 10 From 80b27fdf6ebecd6e22ab88fe02d1a9cace72cede Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Thu, 21 Jul 2022 17:23:55 -0500 Subject: [PATCH 076/113] Put leadeboards back in sidebar --- web/components/nav/sidebar.tsx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/web/components/nav/sidebar.tsx b/web/components/nav/sidebar.tsx index b7117a20..e6ce8575 100644 --- a/web/components/nav/sidebar.tsx +++ b/web/components/nav/sidebar.tsx @@ -40,6 +40,8 @@ function getNavigation() { icon: NotificationsIcon, }, + { name: 'Leaderboards', href: '/leaderboards', icon: TrendingUpIcon }, + ...(IS_PRIVATE_MANIFOLD ? [] : [{ name: 'Get M$', href: '/add-funds', icon: CashIcon }]), @@ -53,7 +55,6 @@ function getMoreNavigation(user?: User | null) { if (!user) { return [ - { name: 'Leaderboards', href: '/leaderboards' }, { name: 'Charity', href: '/charity' }, { name: 'Blog', href: 'https://news.manifold.markets' }, { name: 'Discord', href: 'https://discord.gg/eHQBNBqXuh' }, @@ -62,7 +63,6 @@ function getMoreNavigation(user?: User | null) { } return [ - { name: 'Leaderboards', href: '/leaderboards' }, { name: 'Referrals', href: '/referrals' }, { name: 'Charity', href: '/charity' }, { name: 'Send M$', href: '/links' }, @@ -79,7 +79,6 @@ function getMoreNavigation(user?: User | null) { const signedOutNavigation = [ { name: 'Home', href: '/home', icon: HomeIcon }, { name: 'Explore', href: '/markets', icon: SearchIcon }, - { name: 'Charity', href: '/charity', icon: HeartIcon }, { name: 'About', href: 'https://docs.manifold.markets/$how-to', @@ -99,6 +98,7 @@ const signedOutMobileNavigation = [ ] const signedInMobileNavigation = [ + { name: 'Leaderboards', href: '/leaderboards', icon: TrendingUpIcon }, ...(IS_PRIVATE_MANIFOLD ? [] : [{ name: 'Get M$', href: '/add-funds', icon: CashIcon }]), @@ -111,7 +111,6 @@ const signedInMobileNavigation = [ function getMoreMobileNav() { return [ - { name: 'Leaderboards', href: '/leaderboards' }, ...(IS_PRIVATE_MANIFOLD ? [] : [ From cded3f50ffc0557ef6b28f77259ef9bc2a14a2d3 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Thu, 21 Jul 2022 18:17:02 -0500 Subject: [PATCH 077/113] "question" => "market" (controversial!) --- web/components/create-question-button.tsx | 2 +- web/lib/firebase/groups.ts | 2 +- web/pages/create.tsx | 3 +++ web/pages/group/[...slugs]/index.tsx | 6 +++--- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/web/components/create-question-button.tsx b/web/components/create-question-button.tsx index f2371d11..277816fa 100644 --- a/web/components/create-question-button.tsx +++ b/web/components/create-question-button.tsx @@ -21,7 +21,7 @@ export const CreateQuestionButton = (props: { {user ? ( <Link href={`/create${query ? query : ''}`} passHref> <button className={clsx(gradient, createButtonStyle)}> - {overrideText ? overrideText : 'Create a question'} + {overrideText ? overrideText : 'Create a market'} </button> </Link> ) : ( diff --git a/web/lib/firebase/groups.ts b/web/lib/firebase/groups.ts index fc028642..5a031ca7 100644 --- a/web/lib/firebase/groups.ts +++ b/web/lib/firebase/groups.ts @@ -24,7 +24,7 @@ export function groupPath( groupSlug: string, subpath?: | 'edit' - | 'questions' + | 'markets' | 'about' | typeof GROUP_CHAT_SLUG | 'leaderboards' diff --git a/web/pages/create.tsx b/web/pages/create.tsx index 78ad8d19..1271730f 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -29,6 +29,7 @@ import { User } from 'common/user' import { TextEditor, useTextEditor } from 'web/components/editor' import { Checkbox } from 'web/components/checkbox' import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' +import { Title } from 'web/components/title' export const getServerSideProps = redirectIfLoggedOut('/') @@ -64,6 +65,8 @@ export default function Create() { <Page> <div className="mx-auto w-full max-w-2xl"> <div className="rounded-lg px-6 py-4 sm:py-0"> + <Title className="!mt-0" text="Create a market" /> + <form> <div className="form-control w-full"> <label className="label"> diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index 90f39e83..06f043e7 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -109,7 +109,7 @@ export async function getStaticPaths() { const groupSubpages = [ undefined, GROUP_CHAT_SLUG, - 'questions', + 'markets', 'leaderboards', 'about', ] as const @@ -226,9 +226,9 @@ export default function GroupPage(props: { }, ]), { - title: 'Questions', + title: 'Markets', content: questionsTab, - href: groupPath(group.slug, 'questions'), + href: groupPath(group.slug, 'markets'), }, { title: 'Leaderboards', From 4b4734531fce5b983c18ebb1124c2f7ce7e5b4bb Mon Sep 17 00:00:00 2001 From: Sinclair Chen <abc.sinclair@gmail.com> Date: Thu, 21 Jul 2022 17:08:09 -0700 Subject: [PATCH 078/113] refactor createNotif - put ?: args in object (#681) --- functions/src/create-notification.ts | 24 +++++++++++++------ functions/src/market-close-notifications.ts | 2 +- functions/src/on-create-answer.ts | 2 +- functions/src/on-create-bet.ts | 11 ++++----- .../src/on-create-comment-on-contract.ts | 6 ++--- functions/src/on-create-contract.ts | 2 +- functions/src/on-create-group.ts | 10 ++++---- .../src/on-create-liquidity-provision.ts | 2 +- functions/src/on-follow-user.ts | 4 +--- functions/src/on-update-contract.ts | 4 ++-- 10 files changed, 36 insertions(+), 31 deletions(-) diff --git a/functions/src/create-notification.ts b/functions/src/create-notification.ts index bf2dd28a..7cc05760 100644 --- a/functions/src/create-notification.ts +++ b/functions/src/create-notification.ts @@ -29,12 +29,22 @@ export const createNotification = async ( sourceUser: User, idempotencyKey: string, sourceText: string, - sourceContract?: Contract, - relatedSourceType?: notification_source_types, - relatedUserId?: string, - sourceSlug?: string, - sourceTitle?: string + miscData?: { + contract?: Contract + relatedSourceType?: notification_source_types + relatedUserId?: string + slug?: string + title?: string + } ) => { + const { + contract: sourceContract, + relatedSourceType, + relatedUserId, + slug, + title, + } = miscData ?? {} + const shouldGetNotification = ( userId: string, userToReasonTexts: user_to_reason_texts @@ -70,8 +80,8 @@ export const createNotification = async ( sourceContractCreatorUsername: sourceContract?.creatorUsername, sourceContractTitle: sourceContract?.question, sourceContractSlug: sourceContract?.slug, - sourceSlug: sourceSlug ? sourceSlug : sourceContract?.slug, - sourceTitle: sourceTitle ? sourceTitle : sourceContract?.question, + sourceSlug: slug ? slug : sourceContract?.slug, + sourceTitle: title ? title : sourceContract?.question, } await notificationRef.set(removeUndefinedProps(notification)) }) diff --git a/functions/src/market-close-notifications.ts b/functions/src/market-close-notifications.ts index ee9952bf..f31674a1 100644 --- a/functions/src/market-close-notifications.ts +++ b/functions/src/market-close-notifications.ts @@ -64,7 +64,7 @@ async function sendMarketCloseEmails() { user, 'closed' + contract.id.slice(6, contract.id.length), contract.closeTime?.toString() ?? new Date().toString(), - contract + { contract } ) } } diff --git a/functions/src/on-create-answer.ts b/functions/src/on-create-answer.ts index 78fd1399..af4690b0 100644 --- a/functions/src/on-create-answer.ts +++ b/functions/src/on-create-answer.ts @@ -28,6 +28,6 @@ export const onCreateAnswer = functions.firestore answerCreator, eventId, answer.text, - contract + { contract } ) }) diff --git a/functions/src/on-create-bet.ts b/functions/src/on-create-bet.ts index fc2e0053..4e10875e 100644 --- a/functions/src/on-create-bet.ts +++ b/functions/src/on-create-bet.ts @@ -134,12 +134,11 @@ const updateUniqueBettorsAndGiveCreatorBonus = async ( fromUser, eventId + '-bonus', result.txn.amount + '', - contract, - undefined, - // No need to set the user id, we'll use the contract creator id - undefined, - contract.slug, - contract.question + { + contract, + slug: contract.slug, + title: contract.question, + } ) } } diff --git a/functions/src/on-create-comment-on-contract.ts b/functions/src/on-create-comment-on-contract.ts index f7839b44..8d841ac0 100644 --- a/functions/src/on-create-comment-on-contract.ts +++ b/functions/src/on-create-comment-on-contract.ts @@ -68,7 +68,7 @@ export const onCreateCommentOnContract = functions ? 'answer' : undefined - const relatedUser = comment.replyToCommentId + const relatedUserId = comment.replyToCommentId ? comments.find((c) => c.id === comment.replyToCommentId)?.userId : answer?.userId @@ -79,9 +79,7 @@ export const onCreateCommentOnContract = functions commentCreator, eventId, comment.text, - contract, - relatedSourceType, - relatedUser + { contract, relatedSourceType, relatedUserId } ) const recipientUserIds = uniq([ diff --git a/functions/src/on-create-contract.ts b/functions/src/on-create-contract.ts index 28682793..a43beda7 100644 --- a/functions/src/on-create-contract.ts +++ b/functions/src/on-create-contract.ts @@ -21,6 +21,6 @@ export const onCreateContract = functions.firestore contractCreator, eventId, richTextToString(contract.description as JSONContent), - contract + { contract } ) }) diff --git a/functions/src/on-create-group.ts b/functions/src/on-create-group.ts index 1d041c04..47618d7a 100644 --- a/functions/src/on-create-group.ts +++ b/functions/src/on-create-group.ts @@ -20,11 +20,11 @@ export const onCreateGroup = functions.firestore groupCreator, eventId, group.about, - undefined, - undefined, - memberId, - group.slug, - group.name + { + relatedUserId: memberId, + slug: group.slug, + title: group.name, + } ) } }) diff --git a/functions/src/on-create-liquidity-provision.ts b/functions/src/on-create-liquidity-provision.ts index d55b2be4..ba17f3e7 100644 --- a/functions/src/on-create-liquidity-provision.ts +++ b/functions/src/on-create-liquidity-provision.ts @@ -26,6 +26,6 @@ export const onCreateLiquidityProvision = functions.firestore liquidityProvider, eventId, liquidity.amount.toString(), - contract + { contract } ) }) diff --git a/functions/src/on-follow-user.ts b/functions/src/on-follow-user.ts index ad85f4d3..9a6e6dce 100644 --- a/functions/src/on-follow-user.ts +++ b/functions/src/on-follow-user.ts @@ -30,9 +30,7 @@ export const onFollowUser = functions.firestore followingUser, eventId, '', - undefined, - undefined, - follow.userId + { relatedUserId: follow.userId } ) }) diff --git a/functions/src/on-update-contract.ts b/functions/src/on-update-contract.ts index 4674bd82..2042f726 100644 --- a/functions/src/on-update-contract.ts +++ b/functions/src/on-update-contract.ts @@ -36,7 +36,7 @@ export const onUpdateContract = functions.firestore contractUpdater, eventId, resolutionText, - contract + { contract } ) } else if ( previousValue.closeTime !== contract.closeTime || @@ -62,7 +62,7 @@ export const onUpdateContract = functions.firestore contractUpdater, eventId, sourceText, - contract + { contract } ) } }) From 7474c0a0fd8c77b87caffc290e5526c2792361a8 Mon Sep 17 00:00:00 2001 From: ingawei <46611122+ingawei@users.noreply.github.com> Date: Thu, 21 Jul 2022 18:22:17 -0700 Subject: [PATCH 079/113] Inga/manalinks pagination bug (#678) * manalink pagination fix * also fixed new manalink timing out bug --- web/components/manalink-card.tsx | 106 +++++++++--------- .../manalinks/create-links-button.tsx | 2 +- web/pages/links.tsx | 55 ++++++--- 3 files changed, 94 insertions(+), 69 deletions(-) diff --git a/web/components/manalink-card.tsx b/web/components/manalink-card.tsx index b49e1621..51880f5d 100644 --- a/web/components/manalink-card.tsx +++ b/web/components/manalink-card.tsx @@ -27,10 +27,10 @@ export function ManalinkCard(props: { const { expiresTime, maxUses, uses, amount, message } = info return ( <Col> - <div + <Col className={clsx( className, - 'min-h-20 group flex flex-col rounded-xl bg-gradient-to-br shadow-lg transition-all', + 'min-h-20 group rounded-lg bg-gradient-to-br drop-shadow-sm transition-all', getManalinkGradient(info.amount) )} > @@ -54,20 +54,18 @@ export function ManalinkCard(props: { )} src="/logo-white.svg" /> - <Row className="rounded-b-xl bg-white p-4"> - <Col> - <div - className={clsx( - 'mb-1 text-xl text-indigo-500', - getManalinkAmountColor(amount) - )} - > - {formatMoney(amount)} - </div> - <div>{message}</div> - </Col> + <Row className="rounded-b-lg bg-white p-4"> + <div + className={clsx( + 'mb-1 text-xl text-indigo-500', + getManalinkAmountColor(amount) + )} + > + {formatMoney(amount)} + </div> </Row> - </div> + </Col> + <div className="text-md mt-2 mb-4 text-gray-500">{message}</div> </Col> ) } @@ -79,48 +77,48 @@ export function ManalinkCardFromView(props: { }) { const { className, link, highlightedSlug } = props const { message, amount, expiresTime, maxUses, claims } = link - const [details, setDetails] = useState(false) + const [showDetails, setShowDetails] = useState(false) return ( - <Col - className={clsx( - 'group z-10 rounded-lg drop-shadow-sm transition-all hover:drop-shadow-lg', - className, - link.slug === highlightedSlug ? 'animate-pulse' : '' - )} - > - <div + <Col> + <Col className={clsx( - 'relative flex flex-col rounded-t-lg bg-gradient-to-br transition-all', - getManalinkGradient(link.amount) + 'group z-10 rounded-lg drop-shadow-sm transition-all hover:drop-shadow-lg', + className, + link.slug === highlightedSlug ? 'shadow-md shadow-indigo-400' : '' )} - onClick={() => setDetails(!details)} > - {details && ( - <ClaimsList - className="absolute h-full w-full bg-white opacity-90" - link={link} + <Col + className={clsx( + 'relative rounded-t-lg bg-gradient-to-br transition-all', + getManalinkGradient(link.amount) + )} + onClick={() => setShowDetails(!showDetails)} + > + {showDetails && ( + <ClaimsList + className="absolute h-full w-full bg-white opacity-90" + link={link} + /> + )} + <Col className="mx-4 mt-2 -mb-4 text-right text-xs text-gray-100"> + <div> + {maxUses != null + ? `${maxUses - claims.length}/${maxUses} uses left` + : `Unlimited use`} + </div> + <div> + {expiresTime != null + ? `Expires ${fromNow(expiresTime)}` + : 'Never expires'} + </div> + </Col> + <img + className={clsx('my-auto block w-1/3 select-none self-center py-3')} + src="/logo-white.svg" /> - )} - <Col className="mx-4 mt-2 -mb-4 text-right text-xs text-gray-100"> - <div> - {maxUses != null - ? `${maxUses - claims.length}/${maxUses} uses left` - : `Unlimited use`} - </div> - <div> - {expiresTime != null - ? `Expires ${fromNow(expiresTime)}` - : 'Never expires'} - </div> </Col> - <img - className={clsx('my-auto block w-1/3 select-none self-center py-3')} - src="/logo-white.svg" - /> - </div> - <Col className="w-full rounded-b-lg bg-white px-4 py-2 text-lg"> - <Row className="relative gap-1"> + <Row className="relative w-full gap-1 rounded-b-lg bg-white px-4 py-2 text-lg"> <div className={clsx( 'my-auto mb-1 w-full', @@ -138,10 +136,10 @@ export function ManalinkCardFromView(props: { copyPayload={getManalinkUrl(link.slug)} /> <button - onClick={() => setDetails(!details)} + onClick={() => setShowDetails(!showDetails)} className={clsx( contractDetailsButtonClassName, - details + showDetails ? 'bg-gray-200 text-gray-600 hover:bg-gray-200 hover:text-gray-600' : '' )} @@ -149,8 +147,10 @@ export function ManalinkCardFromView(props: { <DotsHorizontalIcon className="h-[24px] w-5" /> </button> </Row> - <div className="my-2 text-xs md:text-sm">{message || '\n\n'}</div> </Col> + <div className="mt-2 mb-4 text-xs text-gray-500 md:text-sm"> + {message || ''} + </div> </Col> ) } diff --git a/web/components/manalinks/create-links-button.tsx b/web/components/manalinks/create-links-button.tsx index 25b51bb2..656aff29 100644 --- a/web/components/manalinks/create-links-button.tsx +++ b/web/components/manalinks/create-links-button.tsx @@ -37,7 +37,6 @@ export function CreateLinksButton(props: { message: newManalink.message, }) setHighlightedSlug(slug || '') - setTimeout(() => setHighlightedSlug(''), 3700) }} /> </Col> @@ -165,6 +164,7 @@ function CreateManalinkForm(props: { <label className="label">Message</label> <Textarea placeholder={defaultMessage} + maxLength={200} className="input input-bordered resize-none" autoFocus value={newManalink.message} diff --git a/web/pages/links.tsx b/web/pages/links.tsx index 8a2e6767..0f91d70c 100644 --- a/web/pages/links.tsx +++ b/web/pages/links.tsx @@ -20,6 +20,7 @@ import dayjs from 'dayjs' import customParseFormat from 'dayjs/plugin/customParseFormat' import { ManalinkCardFromView } from 'web/components/manalink-card' import { Pagination } from 'web/components/pagination' +import { Manalink } from 'common/manalink' dayjs.extend(customParseFormat) const LINKS_PER_PAGE = 24 @@ -39,10 +40,6 @@ export default function LinkPage() { (l.maxUses == null || l.claimedUserIds.length < l.maxUses) && (l.expiresTime == null || l.expiresTime > Date.now()) ) - const [page, setPage] = useState(0) - const start = page * LINKS_PER_PAGE - const end = start + LINKS_PER_PAGE - const displayedLinks = unclaimedLinks.slice(start, end) if (user == null) { return null @@ -71,15 +68,43 @@ export default function LinkPage() { don't yet have a Manifold account. </p> <Subtitle text="Your Manalinks" /> + <ManalinksDisplay + unclaimedLinks={unclaimedLinks} + highlightedSlug={highlightedSlug} + /> + </Col> + </Page> + ) +} + +function ManalinksDisplay(props: { + unclaimedLinks: Manalink[] + highlightedSlug: string +}) { + const { unclaimedLinks, highlightedSlug } = props + const [page, setPage] = useState(0) + const start = page * LINKS_PER_PAGE + const end = start + LINKS_PER_PAGE + const displayedLinks = unclaimedLinks.slice(start, end) + + if (unclaimedLinks.length === 0) { + return ( + <p className="text-gray-500"> + You don't have any unclaimed manalinks. Send some more to spread the + wealth! + </p> + ) + } else { + return ( + <> <Col className="grid w-full gap-4 md:grid-cols-2"> - {displayedLinks.map((link) => { - return ( - <ManalinkCardFromView - link={link} - highlightedSlug={highlightedSlug} - /> - ) - })} + {displayedLinks.map((link) => ( + <ManalinkCardFromView + key={link.slug + link.createdTime} + link={link} + highlightedSlug={highlightedSlug} + /> + ))} </Col> <Pagination page={page} @@ -89,9 +114,9 @@ export default function LinkPage() { className="mt-4 bg-transparent" scrollToTop /> - </Col> - </Page> - ) + </> + ) + } } // TODO: either utilize this or get rid of it From ca5ca9b2b8981887407a59072ec37a4cc5c9dfe8 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Thu, 21 Jul 2022 21:39:06 -0500 Subject: [PATCH 080/113] Refactor: Move ContractLeaderboard to its own file --- .../contract/contract-leaderboard.tsx | 141 ++++++++++++++++++ web/pages/[username]/[contractSlug].tsx | 140 +---------------- 2 files changed, 147 insertions(+), 134 deletions(-) create mode 100644 web/components/contract/contract-leaderboard.tsx diff --git a/web/components/contract/contract-leaderboard.tsx b/web/components/contract/contract-leaderboard.tsx new file mode 100644 index 00000000..0623b6d7 --- /dev/null +++ b/web/components/contract/contract-leaderboard.tsx @@ -0,0 +1,141 @@ +import { Bet } from 'common/bet' +import { Comment } from 'common/comment' +import { resolvedPayout } from 'common/calculate' +import { Contract } from 'common/contract' +import { formatMoney } from 'common/util/format' +import { groupBy, mapValues, sumBy, sortBy, keyBy } from 'lodash' +import { useState, useMemo, useEffect } from 'react' +import { CommentTipMap } from 'web/hooks/use-tip-txns' +import { useUserById } from 'web/hooks/use-user' +import { listUsers, User } from 'web/lib/firebase/users' +import { FeedBet } from '../feed/feed-bets' +import { FeedComment } from '../feed/feed-comments' +import { Spacer } from '../layout/spacer' +import { Leaderboard } from '../leaderboard' +import { Title } from '../title' + +export function ContractLeaderboard(props: { + contract: Contract + bets: Bet[] +}) { + const { contract, bets } = props + const [users, setUsers] = useState<User[]>() + + const { userProfits, top5Ids } = useMemo(() => { + // Create a map of userIds to total profits (including sales) + const openBets = bets.filter((bet) => !bet.isSold && !bet.sale) + const betsByUser = groupBy(openBets, 'userId') + + const userProfits = mapValues(betsByUser, (bets) => + sumBy(bets, (bet) => resolvedPayout(contract, bet) - bet.amount) + ) + // Find the 5 users with the most profits + const top5Ids = Object.entries(userProfits) + .sort(([_i1, p1], [_i2, p2]) => p2 - p1) + .filter(([, p]) => p > 0) + .slice(0, 5) + .map(([id]) => id) + return { userProfits, top5Ids } + }, [contract, bets]) + + useEffect(() => { + if (top5Ids.length > 0) { + listUsers(top5Ids).then((users) => { + const sortedUsers = sortBy(users, (user) => -userProfits[user.id]) + setUsers(sortedUsers) + }) + } + }, [userProfits, top5Ids]) + + return users && users.length > 0 ? ( + <Leaderboard + title="🏅 Top bettors" + users={users || []} + columns={[ + { + header: 'Total profit', + renderCell: (user) => formatMoney(userProfits[user.id] || 0), + }, + ]} + className="mt-12 max-w-sm" + /> + ) : null +} + +export function ContractTopTrades(props: { + contract: Contract + bets: Bet[] + comments: Comment[] + tips: CommentTipMap +}) { + const { contract, bets, comments, tips } = props + const commentsById = keyBy(comments, 'id') + const betsById = keyBy(bets, 'id') + + // If 'id2' is the sale of 'id1', both are logged with (id2 - id1) of profit + // Otherwise, we record the profit at resolution time + const profitById: Record<string, number> = {} + for (const bet of bets) { + if (bet.sale) { + const originalBet = betsById[bet.sale.betId] + const profit = bet.sale.amount - originalBet.amount + profitById[bet.id] = profit + profitById[originalBet.id] = profit + } else { + profitById[bet.id] = resolvedPayout(contract, bet) - bet.amount + } + } + + // Now find the betId with the highest profit + const topBetId = sortBy(bets, (b) => -profitById[b.id])[0]?.id + const topBettor = useUserById(betsById[topBetId]?.userId) + + // And also the commentId of the comment with the highest profit + const topCommentId = sortBy( + comments, + (c) => c.betId && -profitById[c.betId] + )[0]?.id + + return ( + <div className="mt-12 max-w-sm"> + {topCommentId && profitById[topCommentId] > 0 && ( + <> + <Title text="💬 Proven correct" className="!mt-0" /> + <div className="relative flex items-start space-x-3 rounded-md bg-gray-50 px-2 py-4"> + <FeedComment + contract={contract} + comment={commentsById[topCommentId]} + tips={tips[topCommentId]} + betsBySameUser={[betsById[topCommentId]]} + truncate={false} + smallAvatar={false} + /> + </div> + <div className="mt-2 text-sm text-gray-500"> + {commentsById[topCommentId].userName} made{' '} + {formatMoney(profitById[topCommentId] || 0)}! + </div> + <Spacer h={16} /> + </> + )} + + {/* If they're the same, only show the comment; otherwise show both */} + {topBettor && topBetId !== topCommentId && profitById[topBetId] > 0 && ( + <> + <Title text="💸 Smartest money" className="!mt-0" /> + <div className="relative flex items-start space-x-3 rounded-md bg-gray-50 px-2 py-4"> + <FeedBet + contract={contract} + bet={betsById[topBetId]} + hideOutcome={false} + smallAvatar={false} + /> + </div> + <div className="mt-2 text-sm text-gray-500"> + {topBettor?.name} made {formatMoney(profitById[topBetId] || 0)}! + </div> + </> + )} + </div> + ) +} diff --git a/web/pages/[username]/[contractSlug].tsx b/web/pages/[username]/[contractSlug].tsx index 11d9af9c..43dd0ad7 100644 --- a/web/pages/[username]/[contractSlug].tsx +++ b/web/pages/[username]/[contractSlug].tsx @@ -1,6 +1,5 @@ -import React, { useEffect, useMemo, useState } from 'react' +import React, { useEffect, useState } from 'react' import { ArrowLeftIcon } from '@heroicons/react/outline' -import { keyBy, sortBy, groupBy, sumBy, mapValues } from 'lodash' import { useContractWithPreload } from 'web/hooks/use-contract' import { ContractOverview } from 'web/components/contract/contract-overview' @@ -8,9 +7,7 @@ import { BetPanel } from 'web/components/bet-panel' import { Col } from 'web/components/layout/col' import { useUser } from 'web/hooks/use-user' import { ResolutionPanel } from 'web/components/resolution-panel' -import { Title } from 'web/components/title' import { Spacer } from 'web/components/layout/spacer' -import { listUsers, User } from 'web/lib/firebase/users' import { Contract, getContractFromSlug, @@ -24,28 +21,26 @@ import { Comment, listAllComments } from 'web/lib/firebase/comments' import Custom404 from '../404' import { AnswersPanel } from 'web/components/answers/answers-panel' import { fromPropz, usePropz } from 'web/hooks/use-propz' -import { Leaderboard } from 'web/components/leaderboard' -import { resolvedPayout } from 'common/calculate' -import { formatMoney } from 'common/util/format' -import { useUserById } from 'web/hooks/use-user' import { ContractTabs } from 'web/components/contract/contract-tabs' import { contractTextDetails } from 'web/components/contract/contract-details' import { useWindowSize } from 'web/hooks/use-window-size' import Confetti from 'react-confetti' import { NumericBetPanel } from '../../components/numeric-bet-panel' import { NumericResolutionPanel } from '../../components/numeric-resolution-panel' -import { FeedComment } from 'web/components/feed/feed-comments' -import { FeedBet } from 'web/components/feed/feed-bets' import { useIsIframe } from 'web/hooks/use-is-iframe' import ContractEmbedPage from '../embed/[username]/[contractSlug]' import { useBets } from 'web/hooks/use-bets' import { CPMMBinaryContract } from 'common/contract' import { AlertBox } from 'web/components/alert-box' import { useTracking } from 'web/hooks/use-tracking' -import { CommentTipMap, useTipTxns } from 'web/hooks/use-tip-txns' +import { useTipTxns } from 'web/hooks/use-tip-txns' import { useLiquidity } from 'web/hooks/use-liquidity' import { richTextToString } from 'common/util/parse' import { useSaveReferral } from 'web/hooks/use-save-referral' +import { + ContractLeaderboard, + ContractTopTrades, +} from 'web/components/contract/contract-leaderboard' export const getStaticProps = fromPropz(getStaticPropz) export async function getStaticPropz(props: { @@ -262,129 +257,6 @@ export function ContractPageContent( ) } -function ContractLeaderboard(props: { contract: Contract; bets: Bet[] }) { - const { contract, bets } = props - const [users, setUsers] = useState<User[]>() - - const { userProfits, top5Ids } = useMemo(() => { - // Create a map of userIds to total profits (including sales) - const openBets = bets.filter((bet) => !bet.isSold && !bet.sale) - const betsByUser = groupBy(openBets, 'userId') - - const userProfits = mapValues(betsByUser, (bets) => - sumBy(bets, (bet) => resolvedPayout(contract, bet) - bet.amount) - ) - // Find the 5 users with the most profits - const top5Ids = Object.entries(userProfits) - .sort(([_i1, p1], [_i2, p2]) => p2 - p1) - .filter(([, p]) => p > 0) - .slice(0, 5) - .map(([id]) => id) - return { userProfits, top5Ids } - }, [contract, bets]) - - useEffect(() => { - if (top5Ids.length > 0) { - listUsers(top5Ids).then((users) => { - const sortedUsers = sortBy(users, (user) => -userProfits[user.id]) - setUsers(sortedUsers) - }) - } - }, [userProfits, top5Ids]) - - return users && users.length > 0 ? ( - <Leaderboard - title="🏅 Top bettors" - users={users || []} - columns={[ - { - header: 'Total profit', - renderCell: (user) => formatMoney(userProfits[user.id] || 0), - }, - ]} - className="mt-12 max-w-sm" - /> - ) : null -} - -function ContractTopTrades(props: { - contract: Contract - bets: Bet[] - comments: Comment[] - tips: CommentTipMap -}) { - const { contract, bets, comments, tips } = props - const commentsById = keyBy(comments, 'id') - const betsById = keyBy(bets, 'id') - - // If 'id2' is the sale of 'id1', both are logged with (id2 - id1) of profit - // Otherwise, we record the profit at resolution time - const profitById: Record<string, number> = {} - for (const bet of bets) { - if (bet.sale) { - const originalBet = betsById[bet.sale.betId] - const profit = bet.sale.amount - originalBet.amount - profitById[bet.id] = profit - profitById[originalBet.id] = profit - } else { - profitById[bet.id] = resolvedPayout(contract, bet) - bet.amount - } - } - - // Now find the betId with the highest profit - const topBetId = sortBy(bets, (b) => -profitById[b.id])[0]?.id - const topBettor = useUserById(betsById[topBetId]?.userId) - - // And also the commentId of the comment with the highest profit - const topCommentId = sortBy( - comments, - (c) => c.betId && -profitById[c.betId] - )[0]?.id - - return ( - <div className="mt-12 max-w-sm"> - {topCommentId && profitById[topCommentId] > 0 && ( - <> - <Title text="💬 Proven correct" className="!mt-0" /> - <div className="relative flex items-start space-x-3 rounded-md bg-gray-50 px-2 py-4"> - <FeedComment - contract={contract} - comment={commentsById[topCommentId]} - tips={tips[topCommentId]} - betsBySameUser={[betsById[topCommentId]]} - truncate={false} - smallAvatar={false} - /> - </div> - <div className="mt-2 text-sm text-gray-500"> - {commentsById[topCommentId].userName} made{' '} - {formatMoney(profitById[topCommentId] || 0)}! - </div> - <Spacer h={16} /> - </> - )} - - {/* If they're the same, only show the comment; otherwise show both */} - {topBettor && topBetId !== topCommentId && profitById[topBetId] > 0 && ( - <> - <Title text="💸 Smartest money" className="!mt-0" /> - <div className="relative flex items-start space-x-3 rounded-md bg-gray-50 px-2 py-4"> - <FeedBet - contract={contract} - bet={betsById[topBetId]} - hideOutcome={false} - smallAvatar={false} - /> - </div> - <div className="mt-2 text-sm text-gray-500"> - {topBettor?.name} made {formatMoney(profitById[topBetId] || 0)}! - </div> - </> - )} - </div> - ) -} - const getOpenGraphProps = (contract: Contract) => { const { resolution, From 23b704ffe0460422468573fa5c7bbabc1a6afb95 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Thu, 21 Jul 2022 21:51:20 -0500 Subject: [PATCH 081/113] Fix excessive bottom margin on chart --- web/components/contract/contract-prob-graph.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/components/contract/contract-prob-graph.tsx b/web/components/contract/contract-prob-graph.tsx index bafb84fe..98440ec8 100644 --- a/web/components/contract/contract-prob-graph.tsx +++ b/web/components/contract/contract-prob-graph.tsx @@ -151,7 +151,7 @@ export const ContractProbGraph = memo(function ContractProbGraph(props: { enableGridX={!!width && width >= 800} enableArea areaBaselineValue={isBinary || isLogScale ? 0 : contract.min} - margin={{ top: 20, right: 20, bottom: 65, left: 40 }} + margin={{ top: 20, right: 20, bottom: 25, left: 40 }} animate={false} sliceTooltip={SliceTooltip} /> From 3b953a7c216a9cc57e13d00d0280a89be7fd9c9e Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 00:57:56 -0500 Subject: [PATCH 082/113] Range limit orders (#655) * Prototype range limit order UI * Conditionally show YES or NO max payout * Range bet executes both bets immediately. * Validate lowLimitProb < highLimitProb * Show error if low limit is higher than high limit * Update range order UI * Revert "Validate lowLimitProb < highLimitProb" This reverts commit c261fc274360711baf1033f12907971a96b13548. * Revert "Range bet executes both bets immediately." This reverts commit 30b95d75d9ee52ed2f49ae2af3edced161b21aeb. * Buy panel only non-limit orders * Bet choice => outcome * More iterating on range UI * betChoice => outcome * Lighten placeholder text --- common/calculate-cpmm.ts | 1 + common/new-bet.ts | 28 +- web/components/amount-input.tsx | 2 +- web/components/bet-panel.tsx | 511 +++++++++++++++++++++------ web/components/bucket-input.tsx | 5 +- web/components/number-input.tsx | 11 +- web/components/probability-input.tsx | 51 ++- 7 files changed, 487 insertions(+), 122 deletions(-) diff --git a/common/calculate-cpmm.ts b/common/calculate-cpmm.ts index 493b5fa9..b5153355 100644 --- a/common/calculate-cpmm.ts +++ b/common/calculate-cpmm.ts @@ -123,6 +123,7 @@ export function calculateCpmmAmountToProb( prob: number, outcome: 'YES' | 'NO' ) { + if (prob <= 0 || prob >= 1 || isNaN(prob)) return Infinity if (outcome === 'NO') prob = 1 - prob // First, find an upper bound that leads to a more extreme probability than prob. diff --git a/common/new-bet.ts b/common/new-bet.ts index f484b9f7..ea0b011d 100644 --- a/common/new-bet.ts +++ b/common/new-bet.ts @@ -1,4 +1,4 @@ -import { sortBy, sumBy } from 'lodash' +import { sortBy, sum, sumBy } from 'lodash' import { Bet, fill, LimitBet, MAX_LOAN_PER_CONTRACT, NumericBet } from './bet' import { @@ -239,6 +239,32 @@ export const getBinaryCpmmBetInfo = ( } } +export const getBinaryBetStats = ( + outcome: 'YES' | 'NO', + betAmount: number, + contract: CPMMBinaryContract | PseudoNumericContract, + limitProb: number, + unfilledBets: LimitBet[] +) => { + const { newBet } = getBinaryCpmmBetInfo( + outcome, + betAmount ?? 0, + contract, + limitProb, + unfilledBets as LimitBet[] + ) + const remainingMatched = + ((newBet.orderAmount ?? 0) - newBet.amount) / + (outcome === 'YES' ? limitProb : 1 - limitProb) + const currentPayout = newBet.shares + remainingMatched + + const currentReturn = betAmount ? (currentPayout - betAmount) / betAmount : 0 + + const totalFees = sum(Object.values(newBet.fees)) + + return { currentPayout, currentReturn, totalFees, newBet } +} + export const getNewBinaryDpmBetInfo = ( outcome: 'YES' | 'NO', amount: number, diff --git a/web/components/amount-input.tsx b/web/components/amount-input.tsx index a31957cb..426a9371 100644 --- a/web/components/amount-input.tsx +++ b/web/components/amount-input.tsx @@ -41,7 +41,7 @@ export function AmountInput(props: { <span className="bg-gray-200 text-sm">{label}</span> <input className={clsx( - 'input input-bordered max-w-[200px] text-lg', + 'input input-bordered max-w-[200px] text-lg placeholder:text-gray-400', error && 'input-error', inputClassName )} diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 0cbee7b5..7d2b1e5a 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -13,32 +13,27 @@ import { formatPercent, formatWithCommas, } from 'common/util/format' -import { getBinaryCpmmBetInfo } from 'common/new-bet' +import { getBinaryBetStats, getBinaryCpmmBetInfo } from 'common/new-bet' import { User } from 'web/lib/firebase/users' import { Bet, LimitBet } from 'common/bet' import { APIError, placeBet } from 'web/lib/firebase/api' import { sellShares } from 'web/lib/firebase/api' import { AmountInput, BuyAmountInput } from './amount-input' import { InfoTooltip } from './info-tooltip' -import { BinaryOutcomeLabel } from './outcome-label' +import { BinaryOutcomeLabel, HigherLabel, LowerLabel } from './outcome-label' import { getProbability } from 'common/calculate' import { useFocus } from 'web/hooks/use-focus' import { useUserContractBets } from 'web/hooks/use-user-bets' import { calculateCpmmSale, getCpmmProbability } from 'common/calculate-cpmm' -import { - getFormattedMappedValue, - getPseudoProbability, -} from 'common/pseudo-numeric' +import { getFormattedMappedValue, getMappedValue } from 'common/pseudo-numeric' import { SellRow } from './sell-row' import { useSaveBinaryShares } from './use-save-binary-shares' import { SignUpPrompt } from './sign-up-prompt' import { isIOS } from 'web/lib/util/device' -import { ProbabilityInput } from './probability-input' +import { ProbabilityOrNumericInput } from './probability-input' import { track } from 'web/lib/service/analytics' -import { removeUndefinedProps } from 'common/util/object' import { useUnfilledBets } from 'web/hooks/use-bets' import { LimitBets } from './limit-bets' -import { BucketInput } from './bucket-input' import { PillButton } from './buttons/pill-button' import { YesNoSelector } from './yes-no-selector' @@ -73,12 +68,17 @@ export function BetPanel(props: { setIsLimitOrder={setIsLimitOrder} /> <BuyPanel + hidden={isLimitOrder} + contract={contract} + user={user} + unfilledBets={unfilledBets} + /> + <LimitOrderPanel + hidden={!isLimitOrder} contract={contract} user={user} - isLimitOrder={isLimitOrder} unfilledBets={unfilledBets} /> - <SignUpPrompt /> </Col> {unfilledBets.length > 0 && ( @@ -120,14 +120,20 @@ export function SimpleBetPanel(props: { setIsLimitOrder={setIsLimitOrder} /> <BuyPanel + hidden={isLimitOrder} contract={contract} user={user} unfilledBets={unfilledBets} selected={selected} onBuySuccess={onBetSuccess} - isLimitOrder={isLimitOrder} /> - + <LimitOrderPanel + hidden={!isLimitOrder} + contract={contract} + user={user} + unfilledBets={unfilledBets} + onBuySuccess={onBetSuccess} + /> <SignUpPrompt /> </Col> @@ -142,21 +148,17 @@ function BuyPanel(props: { contract: CPMMBinaryContract | PseudoNumericContract user: User | null | undefined unfilledBets: Bet[] - isLimitOrder?: boolean + hidden: boolean selected?: 'YES' | 'NO' onBuySuccess?: () => void }) { - const { contract, user, unfilledBets, isLimitOrder, selected, onBuySuccess } = - props + const { contract, user, unfilledBets, hidden, selected, onBuySuccess } = props const initialProb = getProbability(contract) const isPseudoNumeric = contract.outcomeType === 'PSEUDO_NUMERIC' - const [betChoice, setBetChoice] = useState<'YES' | 'NO' | undefined>(selected) + const [outcome, setOutcome] = useState<'YES' | 'NO' | undefined>(selected) const [betAmount, setBetAmount] = useState<number | undefined>(undefined) - const [limitProb, setLimitProb] = useState<number | undefined>( - Math.round(100 * initialProb) - ) const [error, setError] = useState<string | undefined>() const [isSubmitting, setIsSubmitting] = useState(false) const [wasSubmitted, setWasSubmitted] = useState(false) @@ -171,7 +173,7 @@ function BuyPanel(props: { }, [selected, focusAmountInput]) function onBetChoice(choice: 'YES' | 'NO') { - setBetChoice(choice) + setOutcome(choice) setWasSubmitted(false) focusAmountInput() } @@ -179,29 +181,22 @@ function BuyPanel(props: { function onBetChange(newAmount: number | undefined) { setWasSubmitted(false) setBetAmount(newAmount) - if (!betChoice) { - setBetChoice('YES') + if (!outcome) { + setOutcome('YES') } } async function submitBet() { if (!user || !betAmount) return - if (isLimitOrder && limitProb === undefined) return - - const limitProbScaled = - isLimitOrder && limitProb !== undefined ? limitProb / 100 : undefined setError(undefined) setIsSubmitting(true) - placeBet( - removeUndefinedProps({ - amount: betAmount, - outcome: betChoice, - contractId: contract.id, - limitProb: limitProbScaled, - }) - ) + placeBet({ + outcome, + amount: betAmount, + contractId: contract.id, + }) .then((r) => { console.log('placed bet. Result:', r) setIsSubmitting(false) @@ -225,21 +220,18 @@ function BuyPanel(props: { slug: contract.slug, contractId: contract.id, amount: betAmount, - outcome: betChoice, - isLimitOrder, - limitProb: limitProbScaled, + outcome, + isLimitOrder: false, }) } const betDisabled = isSubmitting || !betAmount || error - const limitProbFrac = (limitProb ?? 0) / 100 - const { newPool, newP, newBet } = getBinaryCpmmBetInfo( - betChoice ?? 'YES', + outcome ?? 'YES', betAmount ?? 0, contract, - isLimitOrder ? limitProbFrac : undefined, + undefined, unfilledBets as LimitBet[] ) @@ -247,11 +239,7 @@ function BuyPanel(props: { const probStayedSame = formatPercent(resultProb) === formatPercent(initialProb) - const remainingMatched = isLimitOrder - ? ((newBet.orderAmount ?? 0) - newBet.amount) / - (betChoice === 'YES' ? limitProbFrac : 1 - limitProbFrac) - : 0 - const currentPayout = newBet.shares + remainingMatched + const currentPayout = newBet.shares const currentReturn = betAmount ? (currentPayout - betAmount) / betAmount : 0 const currentReturnPercent = formatPercent(currentReturn) @@ -261,14 +249,14 @@ function BuyPanel(props: { const format = getFormattedMappedValue(contract) return ( - <> + <Col className={hidden ? 'hidden' : ''}> <div className="my-3 text-left text-sm text-gray-500"> {isPseudoNumeric ? 'Direction' : 'Outcome'} </div> <YesNoSelector className="mb-4" btnClassName="flex-1" - selected={betChoice} + selected={outcome} onSelect={(choice) => onBetChoice(choice)} isPseudoNumeric={isPseudoNumeric} /> @@ -283,61 +271,21 @@ function BuyPanel(props: { disabled={isSubmitting} inputRef={inputRef} /> - {isLimitOrder && ( - <> - <Row className="my-3 items-center gap-2 text-left text-sm text-gray-500"> - Limit {isPseudoNumeric ? 'value' : 'probability'} - <InfoTooltip - text={`Bet ${betChoice === 'NO' ? 'down' : 'up'} to this ${ - isPseudoNumeric ? 'value' : 'probability' - } and wait to match other bets.`} - /> - </Row> - {isPseudoNumeric ? ( - <BucketInput - contract={contract} - onBucketChange={(value) => - setLimitProb( - value === undefined - ? undefined - : 100 * - getPseudoProbability( - value, - contract.min, - contract.max, - contract.isLogScale - ) - ) - } - isSubmitting={isSubmitting} - /> - ) : ( - <ProbabilityInput - inputClassName="w-full max-w-none" - prob={limitProb} - onChange={setLimitProb} - disabled={isSubmitting} - /> - )} - </> - )} <Col className="mt-3 w-full gap-3"> - {!isLimitOrder && ( - <Row className="items-center justify-between text-sm"> - <div className="text-gray-500"> - {isPseudoNumeric ? 'Estimated value' : 'Probability'} + <Row className="items-center justify-between text-sm"> + <div className="text-gray-500"> + {isPseudoNumeric ? 'Estimated value' : 'Probability'} + </div> + {probStayedSame ? ( + <div>{format(initialProb)}</div> + ) : ( + <div> + {format(initialProb)} + <span className="mx-2">→</span> + {format(resultProb)} </div> - {probStayedSame ? ( - <div>{format(initialProb)}</div> - ) : ( - <div> - {format(initialProb)} - <span className="mx-2">→</span> - {format(resultProb)} - </div> - )} - </Row> - )} + )} + </Row> <Row className="items-center justify-between gap-2 text-sm"> <Row className="flex-nowrap items-center gap-2 whitespace-nowrap text-gray-500"> @@ -346,7 +294,7 @@ function BuyPanel(props: { 'Max payout' ) : ( <> - Payout if <BinaryOutcomeLabel outcome={betChoice ?? 'YES'} /> + Payout if <BinaryOutcomeLabel outcome={outcome ?? 'YES'} /> </> )} </div> @@ -365,6 +313,353 @@ function BuyPanel(props: { <Spacer h={8} /> + {user && ( + <button + className={clsx( + 'btn flex-1', + betDisabled + ? 'btn-disabled' + : outcome === 'YES' + ? 'btn-primary' + : 'border-none bg-red-400 hover:bg-red-500', + isSubmitting ? 'loading' : '' + )} + onClick={betDisabled ? undefined : submitBet} + > + {isSubmitting ? 'Submitting...' : 'Submit bet'} + </button> + )} + + {wasSubmitted && <div className="mt-4">Bet submitted!</div>} + </Col> + ) +} + +function LimitOrderPanel(props: { + contract: CPMMBinaryContract | PseudoNumericContract + user: User | null | undefined + unfilledBets: Bet[] + hidden: boolean + onBuySuccess?: () => void +}) { + const { contract, user, unfilledBets, hidden, onBuySuccess } = props + + const initialProb = getProbability(contract) + const isPseudoNumeric = contract.outcomeType === 'PSEUDO_NUMERIC' + + const [betAmount, setBetAmount] = useState<number | undefined>(undefined) + const [lowLimitProb, setLowLimitProb] = useState<number | undefined>() + const [highLimitProb, setHighLimitProb] = useState<number | undefined>() + const betChoice = 'YES' + const [error, setError] = useState<string | undefined>() + const [isSubmitting, setIsSubmitting] = useState(false) + const [wasSubmitted, setWasSubmitted] = useState(false) + + const rangeError = + lowLimitProb !== undefined && + highLimitProb !== undefined && + lowLimitProb >= highLimitProb + + const outOfRangeError = + (lowLimitProb !== undefined && + (lowLimitProb <= 0 || lowLimitProb >= 100)) || + (highLimitProb !== undefined && + (highLimitProb <= 0 || highLimitProb >= 100)) + + const initialLow = initialProb * 0.9 + const initialHigh = initialProb + (1 - initialProb) * 0.1 + const lowPlaceholder = Math.round( + isPseudoNumeric ? getMappedValue(contract)(initialLow) : initialLow * 100 + ).toString() + const highPlaceholder = Math.round( + isPseudoNumeric ? getMappedValue(contract)(initialHigh) : initialHigh * 100 + ).toString() + + const hasYesLimitBet = lowLimitProb !== undefined && !!betAmount + const hasNoLimitBet = highLimitProb !== undefined && !!betAmount + const hasTwoBets = hasYesLimitBet && hasNoLimitBet + + const betDisabled = + isSubmitting || + !betAmount || + rangeError || + outOfRangeError || + error || + (!hasYesLimitBet && !hasNoLimitBet) + + const yesLimitProb = + lowLimitProb === undefined ? undefined : lowLimitProb / 100 + const noLimitProb = + highLimitProb === undefined ? undefined : highLimitProb / 100 + + const shares = + yesLimitProb !== undefined && noLimitProb !== undefined + ? Math.min( + (betAmount ?? 0) / yesLimitProb, + (betAmount ?? 0) / (1 - noLimitProb) + ) + : (betAmount ?? 0) / (yesLimitProb ?? 1 - (noLimitProb ?? 1)) + + const yesAmount = shares * (yesLimitProb ?? 1) + const noAmount = shares * (1 - (noLimitProb ?? 1)) + + const profitIfBothFilled = shares - (yesAmount + noAmount) + + function onBetChange(newAmount: number | undefined) { + setWasSubmitted(false) + setBetAmount(newAmount) + } + + async function submitBet() { + if (!user || betDisabled) return + + setError(undefined) + setIsSubmitting(true) + + const betsPromise = hasTwoBets + ? Promise.all([ + placeBet({ + outcome: 'YES', + amount: yesAmount, + limitProb: yesLimitProb, + contractId: contract.id, + }), + placeBet({ + outcome: 'NO', + amount: noAmount, + limitProb: noLimitProb, + contractId: contract.id, + }), + ]) + : placeBet({ + outcome: hasYesLimitBet ? 'YES' : 'NO', + amount: betAmount, + contractId: contract.id, + limitProb: hasYesLimitBet ? yesLimitProb : noLimitProb, + }) + + betsPromise + .catch((e) => { + if (e instanceof APIError) { + setError(e.toString()) + } else { + console.error(e) + setError('Error placing bet') + } + setIsSubmitting(false) + }) + .then((r) => { + console.log('placed bet. Result:', r) + setIsSubmitting(false) + setWasSubmitted(true) + setBetAmount(undefined) + if (onBuySuccess) onBuySuccess() + }) + + if (hasYesLimitBet) { + track('bet', { + location: 'bet panel', + outcomeType: contract.outcomeType, + slug: contract.slug, + contractId: contract.id, + amount: yesAmount, + outcome: 'YES', + limitProb: yesLimitProb, + isLimitOrder: true, + isRangeOrder: hasTwoBets, + }) + } + if (hasNoLimitBet) { + track('bet', { + location: 'bet panel', + outcomeType: contract.outcomeType, + slug: contract.slug, + contractId: contract.id, + amount: noAmount, + outcome: 'NO', + limitProb: noLimitProb, + isLimitOrder: true, + isRangeOrder: hasTwoBets, + }) + } + } + + const { + currentPayout: yesPayout, + currentReturn: yesReturn, + totalFees: yesFees, + newBet: yesBet, + } = getBinaryBetStats( + 'YES', + yesAmount, + contract, + Math.min(yesLimitProb ?? initialLow, 0.999), + unfilledBets as LimitBet[] + ) + const yesReturnPercent = formatPercent(yesReturn) + + const { + currentPayout: noPayout, + currentReturn: noReturn, + totalFees: noFees, + newBet: noBet, + } = getBinaryBetStats( + 'NO', + noAmount, + contract, + Math.max(noLimitProb ?? initialHigh, 0.01), + unfilledBets as LimitBet[] + ) + const noReturnPercent = formatPercent(noReturn) + + return ( + <Col className={hidden ? 'hidden' : ''}> + <div className="my-3 text-sm text-gray-500"> + Bet when the {isPseudoNumeric ? 'value' : 'probability'} reaches Low + and/or High limit. + </div> + + <Row className="items-center gap-4"> + <Col className="gap-2"> + <div className="ml-1 text-sm text-gray-500">Low</div> + <ProbabilityOrNumericInput + contract={contract} + prob={lowLimitProb} + setProb={setLowLimitProb} + isSubmitting={isSubmitting} + placeholder={lowPlaceholder} + /> + </Col> + <Col className="gap-2"> + <div className="ml-1 text-sm text-gray-500">High</div> + <ProbabilityOrNumericInput + contract={contract} + prob={highLimitProb} + setProb={setHighLimitProb} + isSubmitting={isSubmitting} + placeholder={highPlaceholder} + /> + </Col> + </Row> + + {rangeError && ( + <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> + Low limit must be less than High limit + </div> + )} + {outOfRangeError && ( + <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> + Limit is out of range + </div> + )} + + <div className="my-3 text-left text-sm text-gray-500"> + Max amount<span className="ml-1 text-red-500">*</span> + </div> + <BuyAmountInput + inputClassName="w-full max-w-none" + amount={betAmount} + onChange={onBetChange} + error={error} + setError={setError} + disabled={isSubmitting} + /> + + <Col className="mt-3 w-full gap-3"> + {(hasTwoBets || (hasYesLimitBet && yesBet.amount !== 0)) && ( + <Row className="items-center justify-between gap-2 text-sm"> + <div className="whitespace-nowrap text-gray-500"> + {isPseudoNumeric ? ( + <HigherLabel /> + ) : ( + <BinaryOutcomeLabel outcome={'YES'} /> + )}{' '} + current fill + </div> + <div className="mr-2 whitespace-nowrap"> + {formatMoney(yesBet.amount)} of{' '} + {formatMoney(yesBet.orderAmount ?? 0)} + </div> + </Row> + )} + {(hasTwoBets || (hasNoLimitBet && noBet.amount !== 0)) && ( + <Row className="items-center justify-between gap-2 text-sm"> + <div className="whitespace-nowrap text-gray-500"> + {isPseudoNumeric ? ( + <LowerLabel /> + ) : ( + <BinaryOutcomeLabel outcome={'NO'} /> + )}{' '} + current fill + </div> + <div className="mr-2 whitespace-nowrap"> + {formatMoney(noBet.amount)} of{' '} + {formatMoney(noBet.orderAmount ?? 0)} + </div> + </Row> + )} + {hasTwoBets && ( + <Row className="items-center justify-between gap-2 text-sm"> + <div className="whitespace-nowrap text-gray-500"> + Profit if both orders filled + </div> + <div className="mr-2 whitespace-nowrap"> + {formatMoney(profitIfBothFilled)} + </div> + </Row> + )} + {hasYesLimitBet && !hasTwoBets && ( + <Row className="items-center justify-between gap-2 text-sm"> + <Row className="flex-nowrap items-center gap-2 whitespace-nowrap text-gray-500"> + <div> + {isPseudoNumeric ? ( + 'Max payout' + ) : ( + <> + Max <BinaryOutcomeLabel outcome={'YES'} /> payout + </> + )} + </div> + <InfoTooltip + text={`Includes ${formatMoneyWithDecimals(yesFees)} in fees`} + /> + </Row> + <div> + <span className="mr-2 whitespace-nowrap"> + {formatMoney(yesPayout)} + </span> + (+{yesReturnPercent}) + </div> + </Row> + )} + {hasNoLimitBet && !hasTwoBets && ( + <Row className="items-center justify-between gap-2 text-sm"> + <Row className="flex-nowrap items-center gap-2 whitespace-nowrap text-gray-500"> + <div> + {isPseudoNumeric ? ( + 'Max payout' + ) : ( + <> + Max <BinaryOutcomeLabel outcome={'NO'} /> payout + </> + )} + </div> + <InfoTooltip + text={`Includes ${formatMoneyWithDecimals(noFees)} in fees`} + /> + </Row> + <div> + <span className="mr-2 whitespace-nowrap"> + {formatMoney(noPayout)} + </span> + (+{noReturnPercent}) + </div> + </Row> + )} + </Col> + + {(hasYesLimitBet || hasNoLimitBet) && <Spacer h={8} />} + {user && ( <button className={clsx( @@ -380,16 +675,12 @@ function BuyPanel(props: { > {isSubmitting ? 'Submitting...' - : isLimitOrder - ? 'Submit order' - : 'Submit bet'} + : `Submit order${hasTwoBets ? 's' : ''}`} </button> )} - {wasSubmitted && ( - <div className="mt-4">{isLimitOrder ? 'Order' : 'Bet'} submitted!</div> - )} - </> + {wasSubmitted && <div className="mt-4">Order submitted!</div>} + </Col> ) } diff --git a/web/components/bucket-input.tsx b/web/components/bucket-input.tsx index 195032dc..19dacd65 100644 --- a/web/components/bucket-input.tsx +++ b/web/components/bucket-input.tsx @@ -9,8 +9,9 @@ export function BucketInput(props: { contract: NumericContract | PseudoNumericContract isSubmitting?: boolean onBucketChange: (value?: number, bucket?: string) => void + placeholder?: string }) { - const { contract, isSubmitting, onBucketChange } = props + const { contract, isSubmitting, onBucketChange, placeholder } = props const [numberString, setNumberString] = useState('') @@ -39,7 +40,7 @@ export function BucketInput(props: { error={undefined} disabled={isSubmitting} numberString={numberString} - label="Value" + placeholder={placeholder} /> ) } diff --git a/web/components/number-input.tsx b/web/components/number-input.tsx index d7159fab..0b48df6e 100644 --- a/web/components/number-input.tsx +++ b/web/components/number-input.tsx @@ -9,8 +9,8 @@ export function NumberInput(props: { numberString: string onChange: (newNumberString: string) => void error: string | undefined - label: string disabled?: boolean + placeholder?: string className?: string inputClassName?: string // Needed to focus the amount input @@ -21,8 +21,8 @@ export function NumberInput(props: { numberString, onChange, error, - label, disabled, + placeholder, className, inputClassName, inputRef, @@ -32,16 +32,17 @@ export function NumberInput(props: { return ( <Col className={className}> <label className="input-group"> - <span className="bg-gray-200 text-sm">{label}</span> <input className={clsx( - 'input input-bordered max-w-[200px] text-lg', + 'input input-bordered max-w-[200px] text-lg placeholder:text-gray-400', error && 'input-error', inputClassName )} ref={inputRef} type="number" - placeholder="0" + pattern="[0-9]*" + inputMode="numeric" + placeholder={placeholder ?? '0'} maxLength={9} value={numberString} disabled={disabled} diff --git a/web/components/probability-input.tsx b/web/components/probability-input.tsx index 15f73799..cc8b9259 100644 --- a/web/components/probability-input.tsx +++ b/web/components/probability-input.tsx @@ -1,4 +1,7 @@ import clsx from 'clsx' +import { CPMMBinaryContract, PseudoNumericContract } from 'common/contract' +import { getPseudoProbability } from 'common/pseudo-numeric' +import { BucketInput } from './bucket-input' import { Col } from './layout/col' import { Spacer } from './layout/spacer' @@ -6,10 +9,12 @@ export function ProbabilityInput(props: { prob: number | undefined onChange: (newProb: number | undefined) => void disabled?: boolean + placeholder?: string className?: string inputClassName?: string }) { - const { prob, onChange, disabled, className, inputClassName } = props + const { prob, onChange, disabled, placeholder, className, inputClassName } = + props const onProbChange = (str: string) => { let prob = parseInt(str.replace(/\D/g, '')) @@ -27,7 +32,7 @@ export function ProbabilityInput(props: { <label className="input-group"> <input className={clsx( - 'input input-bordered max-w-[200px] text-lg', + 'input input-bordered max-w-[200px] text-lg placeholder:text-gray-400', inputClassName )} type="number" @@ -35,7 +40,7 @@ export function ProbabilityInput(props: { min={1} pattern="[0-9]*" inputMode="numeric" - placeholder="0" + placeholder={placeholder ?? '0'} maxLength={2} value={prob ?? ''} disabled={disabled} @@ -47,3 +52,43 @@ export function ProbabilityInput(props: { </Col> ) } + +export function ProbabilityOrNumericInput(props: { + contract: CPMMBinaryContract | PseudoNumericContract + prob: number | undefined + setProb: (prob: number | undefined) => void + isSubmitting: boolean + placeholder?: string +}) { + const { contract, prob, setProb, isSubmitting, placeholder } = props + const isPseudoNumeric = contract.outcomeType === 'PSEUDO_NUMERIC' + + return isPseudoNumeric ? ( + <BucketInput + contract={contract} + onBucketChange={(value) => + setProb( + value === undefined + ? undefined + : 100 * + getPseudoProbability( + value, + contract.min, + contract.max, + contract.isLogScale + ) + ) + } + isSubmitting={isSubmitting} + placeholder={placeholder} + /> + ) : ( + <ProbabilityInput + inputClassName="w-full max-w-none" + prob={prob} + onChange={setProb} + disabled={isSubmitting} + placeholder={placeholder} + /> + ) +} From 08fd27cb26fb38da1e95a68a823ac86f71948bff Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Fri, 22 Jul 2022 00:03:16 -0700 Subject: [PATCH 083/113] Make main login/logout buttons reload server side props (#677) * Set cookies in auth handler before looking up user * Make sidebar logout button trigger SSR reload * Make sidebar login button trigger SSR reload --- web/components/auth-context.tsx | 4 ++-- web/components/create-question-button.tsx | 9 ++++++++- web/components/nav/sidebar.tsx | 13 ++++++++++--- web/lib/firebase/users.ts | 2 +- web/pages/index.tsx | 14 -------------- 5 files changed, 21 insertions(+), 21 deletions(-) diff --git a/web/components/auth-context.tsx b/web/components/auth-context.tsx index fcc3de39..653368b6 100644 --- a/web/components/auth-context.tsx +++ b/web/components/auth-context.tsx @@ -41,6 +41,7 @@ export function AuthProvider({ children }: any) { useEffect(() => { return onIdTokenChanged(auth, async (fbUser) => { if (fbUser) { + setAuthCookies(await fbUser.getIdToken(), fbUser.refreshToken) let user = await getUser(fbUser.uid) if (!user) { const deviceToken = ensureDeviceToken() @@ -51,12 +52,11 @@ export function AuthProvider({ children }: any) { // Note: Cap on localStorage size is ~5mb localStorage.setItem(CACHED_USER_KEY, JSON.stringify(user)) setCachedReferralInfoForUser(user) - setAuthCookies(await fbUser.getIdToken(), fbUser.refreshToken) } else { // User logged out; reset to null + deleteAuthCookies() setAuthUser(null) localStorage.removeItem(CACHED_USER_KEY) - deleteAuthCookies() } }) }, [setAuthUser]) diff --git a/web/components/create-question-button.tsx b/web/components/create-question-button.tsx index 277816fa..1b8ac11e 100644 --- a/web/components/create-question-button.tsx +++ b/web/components/create-question-button.tsx @@ -1,4 +1,5 @@ import Link from 'next/link' +import { useRouter } from 'next/router' import clsx from 'clsx' import { firebaseLogin, User } from 'web/lib/firebase/users' import React from 'react' @@ -16,6 +17,7 @@ export const CreateQuestionButton = (props: { 'from-indigo-500 to-blue-500 hover:from-indigo-700 hover:to-blue-700' const { user, overrideText, className, query } = props + const router = useRouter() return ( <div className={clsx('flex justify-center', className)}> {user ? ( @@ -26,7 +28,12 @@ export const CreateQuestionButton = (props: { </Link> ) : ( <button - onClick={firebaseLogin} + onClick={async () => { + // login, and then reload the page, to hit any SSR redirect (e.g. + // redirecting from / to /home for logged in users) + await firebaseLogin() + router.replace(router.asPath) + }} className={clsx(gradient, createButtonStyle)} > Sign in diff --git a/web/components/nav/sidebar.tsx b/web/components/nav/sidebar.tsx index e6ce8575..581dd5fa 100644 --- a/web/components/nav/sidebar.tsx +++ b/web/components/nav/sidebar.tsx @@ -11,7 +11,7 @@ import { } from '@heroicons/react/outline' import clsx from 'clsx' import Link from 'next/link' -import { useRouter } from 'next/router' +import Router, { useRouter } from 'next/router' import { usePrivateUser, useUser } from 'web/hooks/use-user' import { firebaseLogout, User } from 'web/lib/firebase/users' import { ManifoldLogo } from './manifold-logo' @@ -31,6 +31,13 @@ import { setNotificationsAsSeen } from 'web/pages/notifications' import { PrivateUser } from 'common/user' import { useWindowSize } from 'web/hooks/use-window-size' +const logout = async () => { + // log out, and then reload the page, in case SSR wants to boot them out + // of whatever logged-in-only area of the site they might be in + await withTracking(firebaseLogout, 'sign out')() + await Router.replace(Router.asPath) +} + function getNavigation() { return [ { name: 'Home', href: '/home', icon: HomeIcon }, @@ -71,7 +78,7 @@ function getMoreNavigation(user?: User | null) { { name: 'Sign out', href: '#', - onClick: withTracking(firebaseLogout, 'sign out'), + onClick: logout, }, ] } @@ -122,7 +129,7 @@ function getMoreMobileNav() { { name: 'Sign out', href: '#', - onClick: withTracking(firebaseLogout, 'sign out'), + onClick: logout, }, ] } diff --git a/web/lib/firebase/users.ts b/web/lib/firebase/users.ts index 481f86de..4f618586 100644 --- a/web/lib/firebase/users.ts +++ b/web/lib/firebase/users.ts @@ -179,7 +179,7 @@ export async function firebaseLogin() { } export async function firebaseLogout() { - auth.signOut() + await auth.signOut() } const storage = getStorage(app) diff --git a/web/pages/index.tsx b/web/pages/index.tsx index fd5cf382..c7e81d97 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -1,6 +1,3 @@ -import React, { useEffect } from 'react' -import { useRouter } from 'next/router' -import { useUser } from 'web/hooks/use-user' import { Contract, getContractsBySlugs } from 'web/lib/firebase/contracts' import { Page } from 'web/components/page' import { LandingPagePanel } from 'web/components/landing-page-panel' @@ -29,19 +26,8 @@ export const getServerSideProps = redirectIfLoggedIn('/home', async (_) => { export default function Home(props: { hotContracts: Contract[] }) { const { hotContracts } = props - // for now this redirect in the component is how we handle the case where they are - // on this page and they log in -- in the future we will make some cleaner way - const user = useUser() - const router = useRouter() - useSaveReferral() - useEffect(() => { - if (user != null) { - router.replace('/home') - } - }, [router, user]) - return ( <Page> <div className="px-4 pt-2 md:mt-0 lg:hidden"> From bfb11339ca4272a3858624ae9492c64a9a0ca332 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 08:12:40 -0600 Subject: [PATCH 084/113] Convert world and culture categories --- common/categories.ts | 2 -- functions/src/scripts/convert-categories.ts | 24 +++++++++++++-------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/common/categories.ts b/common/categories.ts index 672f3200..f302e3f2 100644 --- a/common/categories.ts +++ b/common/categories.ts @@ -31,10 +31,8 @@ export const EXCLUDED_CATEGORIES: category[] = [ 'manifold', 'personal', 'covid', - 'culture', 'gaming', 'crypto', - 'world', ] export const DEFAULT_CATEGORIES = difference(CATEGORY_LIST, EXCLUDED_CATEGORIES) diff --git a/functions/src/scripts/convert-categories.ts b/functions/src/scripts/convert-categories.ts index 8fe90807..7b291202 100644 --- a/functions/src/scripts/convert-categories.ts +++ b/functions/src/scripts/convert-categories.ts @@ -1,13 +1,8 @@ import * as admin from 'firebase-admin' import { initAdmin } from './script-init' -initAdmin() - import { getValues, isProd } from '../utils' -import { - CATEGORIES_GROUP_SLUG_POSTFIX, - DEFAULT_CATEGORIES, -} from 'common/categories' +import { CATEGORIES_GROUP_SLUG_POSTFIX } from 'common/categories' import { Group } from 'common/group' import { uniq } from 'lodash' import { Contract } from 'common/contract' @@ -18,9 +13,11 @@ import { HOUSE_LIQUIDITY_PROVIDER_ID, } from 'common/antes' +initAdmin() + const adminFirestore = admin.firestore() -async function convertCategoriesToGroups() { +const addGroupIdToContracts = async () => { const groups = await getValues<Group>(adminFirestore.collection('groups')) const contracts = await getValues<Contract>( adminFirestore.collection('contracts') @@ -38,8 +35,10 @@ async function convertCategoriesToGroups() { }) } } +} - for (const category of Object.values(DEFAULT_CATEGORIES)) { +const convertCategoriesToGroupsInternal = async (categories: string[]) => { + for (const category of categories) { const markets = await getValues<Contract>( adminFirestore .collection('contracts') @@ -77,7 +76,7 @@ async function convertCategoriesToGroups() { createdTime: Date.now(), anyoneCanJoin: true, memberIds: [manifoldAccount], - about: 'Official group for all things related to ' + category, + about: 'Default group for all things related to ' + category, mostRecentActivityTime: Date.now(), contractIds: markets.map((market) => market.id), chatDisabled: true, @@ -103,6 +102,13 @@ async function convertCategoriesToGroups() { } } +async function convertCategoriesToGroups() { + // await addGroupIdToContracts() + // const defaultCategories = Object.values(DEFAULT_CATEGORIES) + const moreCategories = ['world', 'culture'] + await convertCategoriesToGroupsInternal(moreCategories) +} + if (require.main === module) { convertCategoriesToGroups() .then(() => process.exit()) From 83cb0a61304a5473bbebfc51d8abe590c174ac14 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 08:19:06 -0600 Subject: [PATCH 085/113] Allow clickable username in welcome message --- functions/src/create-user.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/src/create-user.ts b/functions/src/create-user.ts index 1fd23894..1f413b6d 100644 --- a/functions/src/create-user.ts +++ b/functions/src/create-user.ts @@ -159,7 +159,7 @@ const addUserToDefaultGroups = async (user: User) => { id: welcomeCommentDoc.id, groupId: group.id, userId: manifoldAccount, - text: `Welcome, ${user.name} (@${user.username})!`, + text: `Welcome, @${user.username} aka ${user.name}!`, createdTime: Date.now(), userName: 'Manifold Markets', userUsername: MANIFOLD_USERNAME, From 87170894e2245fc733a2dbcda3721df242036cbe Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Fri, 22 Jul 2022 09:12:01 -0700 Subject: [PATCH 086/113] Suppress eslint warning for script --- functions/src/scripts/convert-categories.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/functions/src/scripts/convert-categories.ts b/functions/src/scripts/convert-categories.ts index 7b291202..d559bf92 100644 --- a/functions/src/scripts/convert-categories.ts +++ b/functions/src/scripts/convert-categories.ts @@ -17,6 +17,7 @@ initAdmin() const adminFirestore = admin.firestore() +// eslint-disable-next-line @typescript-eslint/no-unused-vars const addGroupIdToContracts = async () => { const groups = await getValues<Group>(adminFirestore.collection('groups')) const contracts = await getValues<Contract>( From 7cace82b83a6ebb2bae29f4aab643502fef497ca Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Fri, 22 Jul 2022 09:12:23 -0700 Subject: [PATCH 087/113] Render iframes inside the rich text editor (#682) * Try embedding iframes in tiptap * When iframe code is pasted, inject it into the editor * Code cleanups and comments * Remove clsx dependency Cuz it doesn't exist in `common` anyways * Rename to tiptap-iframe --- common/util/parse.ts | 2 + common/util/tiptap-iframe.ts | 92 ++++++++++++++++++++++++++++++++++++ web/components/editor.tsx | 18 +++++-- 3 files changed, 108 insertions(+), 4 deletions(-) create mode 100644 common/util/tiptap-iframe.ts diff --git a/common/util/parse.ts b/common/util/parse.ts index 30dcb952..cdaa6a6c 100644 --- a/common/util/parse.ts +++ b/common/util/parse.ts @@ -20,6 +20,7 @@ import { Text } from '@tiptap/extension-text' // other tiptap extensions import { Image } from '@tiptap/extension-image' import { Link } from '@tiptap/extension-link' +import Iframe from './tiptap-iframe' export function parseTags(text: string) { const regex = /(?:^|\s)(?:[#][a-z0-9_]+)/gi @@ -80,6 +81,7 @@ export const exhibitExts = [ Image, Link, + Iframe, ] // export const exhibitExts = [StarterKit as unknown as Extension, Image] diff --git a/common/util/tiptap-iframe.ts b/common/util/tiptap-iframe.ts new file mode 100644 index 00000000..5af63d2f --- /dev/null +++ b/common/util/tiptap-iframe.ts @@ -0,0 +1,92 @@ +// Adopted from https://github.com/ueberdosis/tiptap/blob/main/demos/src/Experiments/Embeds/Vue/iframe.ts + +import { Node } from '@tiptap/core' + +export interface IframeOptions { + allowFullscreen: boolean + HTMLAttributes: { + [key: string]: any + } +} + +declare module '@tiptap/core' { + interface Commands<ReturnType> { + iframe: { + setIframe: (options: { src: string }) => ReturnType + } + } +} + +// These classes style the outer wrapper and the inner iframe; +// Adopted from css in https://github.com/ueberdosis/tiptap/blob/main/demos/src/Experiments/Embeds/Vue/index.vue +const wrapperClasses = 'relative h-auto w-full overflow-hidden' +const iframeClasses = 'absolute top-0 left-0 h-full w-full' + +export default Node.create<IframeOptions>({ + name: 'iframe', + + group: 'block', + + atom: true, + + addOptions() { + return { + allowFullscreen: true, + HTMLAttributes: { + class: 'iframe-wrapper' + ' ' + wrapperClasses, + // Tailwind JIT doesn't seem to pick up `pb-[20rem]`, so we hack this in: + style: 'padding-bottom: 20rem;', + }, + } + }, + + addAttributes() { + return { + src: { + default: null, + }, + frameborder: { + default: 0, + }, + allowfullscreen: { + default: this.options.allowFullscreen, + parseHTML: () => this.options.allowFullscreen, + }, + } + }, + + parseHTML() { + return [{ tag: 'iframe' }] + }, + + renderHTML({ HTMLAttributes }) { + return [ + 'div', + this.options.HTMLAttributes, + [ + 'iframe', + { + ...HTMLAttributes, + class: HTMLAttributes.class + ' ' + iframeClasses, + }, + ], + ] + }, + + addCommands() { + return { + setIframe: + (options: { src: string }) => + ({ tr, dispatch }) => { + const { selection } = tr + const node = this.type.create(options) + + if (dispatch) { + tr.replaceRangeWith(selection.from, selection.to, node) + } + + return true + }, + } + }, +}) diff --git a/web/components/editor.tsx b/web/components/editor.tsx index 7063fa42..d64dcc78 100644 --- a/web/components/editor.tsx +++ b/web/components/editor.tsx @@ -19,6 +19,7 @@ import { useMutation } from 'react-query' import { exhibitExts } from 'common/util/parse' import { FileUploadButton } from './file-upload-button' import { linkClass } from './site-link' +import Iframe from 'common/util/tiptap-iframe' const proseClass = clsx( 'prose prose-p:my-0 prose-li:my-0 prose-blockquote:not-italic max-w-none prose-quoteless leading-relaxed', @@ -56,6 +57,7 @@ export function useTextEditor(props: { class: clsx('no-underline !text-indigo-700', linkClass), }, }), + Iframe, ], content: defaultValue, }) @@ -69,12 +71,20 @@ export function useTextEditor(props: { (file) => file.type.startsWith('image') ) - if (!imageFiles.length) { - return // if no files pasted, use default paste handler + if (imageFiles.length) { + event.preventDefault() + upload.mutate(imageFiles) } - event.preventDefault() - upload.mutate(imageFiles) + // If the pasted content is iframe code, directly inject it + const text = event.clipboardData?.getData('text/plain').trim() ?? '' + const isValidIframe = /^<iframe.*<\/iframe>$/.test(text) + if (isValidIframe) { + editor.chain().insertContent(text).run() + return true // Prevent the code from getting pasted as text + } + + return // Otherwise, use default paste handler }, }, }) From 624df763931543fa0d628f2815cb47f2b04bcad9 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Fri, 22 Jul 2022 11:24:15 -0500 Subject: [PATCH 088/113] search: sort by liquidity; remove oldest --- web/components/contract-search.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 8eb7df6e..fca1b272 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -39,11 +39,12 @@ const indexPrefix = ENV === 'DEV' ? 'dev-' : '' const sortIndexes = [ { label: 'Newest', value: indexPrefix + 'contracts-newest' }, - { label: 'Oldest', value: indexPrefix + 'contracts-oldest' }, + // { label: 'Oldest', value: indexPrefix + 'contracts-oldest' }, { label: 'Most popular', value: indexPrefix + 'contracts-score' }, { label: 'Most traded', value: indexPrefix + 'contracts-most-traded' }, { label: '24h volume', value: indexPrefix + 'contracts-24-hour-vol' }, { label: 'Last updated', value: indexPrefix + 'contracts-last-updated' }, + { label: 'Subsidy', value: indexPrefix + 'contracts-liquidity' }, { label: 'Close date', value: indexPrefix + 'contracts-close-date' }, { label: 'Resolve date', value: indexPrefix + 'contracts-resolve-date' }, ] From de53a13c8479dba76934e3410ba611d038a8e2bf Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Fri, 22 Jul 2022 11:25:48 -0500 Subject: [PATCH 089/113] fix referrals seo --- web/pages/referrals.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/web/pages/referrals.tsx b/web/pages/referrals.tsx index c879afaa..f50c2e2b 100644 --- a/web/pages/referrals.tsx +++ b/web/pages/referrals.tsx @@ -21,7 +21,12 @@ export default function ReferralsPage() { return ( <Page> - <SEO title="Referrals" description="" url="/add-funds" /> + <SEO + title="Referrals" + description={`Manifold's referral program. Invite new users to Manifold and get M${REFERRAL_AMOUNT} if they + sign up!`} + url="/referrals" + /> <Col className="items-center"> <Col className="h-full rounded bg-white p-4 py-8 sm:p-8 sm:shadow-md"> From 2c80133856de6c8362d02d80ae03935800da785f Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Fri, 22 Jul 2022 11:56:03 -0500 Subject: [PATCH 090/113] add SEO tags to everything --- web/pages/charity/[charitySlug].tsx | 11 +++++++++-- web/pages/charity/index.tsx | 6 ++++++ web/pages/create.tsx | 6 ++++++ web/pages/groups.tsx | 6 ++++++ web/pages/leaderboards.tsx | 6 ++++++ web/pages/markets.tsx | 2 +- 6 files changed, 34 insertions(+), 3 deletions(-) diff --git a/web/pages/charity/[charitySlug].tsx b/web/pages/charity/[charitySlug].tsx index 2cefa13b..da3141d2 100644 --- a/web/pages/charity/[charitySlug].tsx +++ b/web/pages/charity/[charitySlug].tsx @@ -1,6 +1,9 @@ import { sortBy, sumBy, uniqBy } from 'lodash' import clsx from 'clsx' import React, { useEffect, useRef, useState } from 'react' +import Image from 'next/image' +import Confetti from 'react-confetti' + import { Col } from 'web/components/layout/col' import { Row } from 'web/components/layout/row' import { Page } from 'web/components/page' @@ -16,11 +19,10 @@ import { useRouter } from 'next/router' import Custom404 from '../404' import { useCharityTxns } from 'web/hooks/use-charity-txns' import { useWindowSize } from 'web/hooks/use-window-size' -import Confetti from 'react-confetti' import { Donation } from 'web/components/charity/feed-items' -import Image from 'next/image' import { manaToUSD } from '../../../common/util/format' import { track } from 'web/lib/service/analytics' +import { SEO } from 'web/components/SEO' export default function CharityPageWrapper() { const router = useRouter() @@ -63,6 +65,11 @@ function CharityPage(props: { charity: Charity }) { /> } > + <SEO + title={name} + description={description} + url="/groups" + /> {showConfetti && ( <Confetti width={width ? width : 500} diff --git a/web/pages/charity/index.tsx b/web/pages/charity/index.tsx index b1cfc353..d416726b 100644 --- a/web/pages/charity/index.tsx +++ b/web/pages/charity/index.tsx @@ -23,6 +23,7 @@ import { searchInAny } from 'common/util/parse' import { getUser } from 'web/lib/firebase/users' import { SiteLink } from 'web/components/site-link' import { User } from 'common/user' +import { SEO } from 'web/components/SEO' export async function getStaticProps() { const txns = await getAllCharityTxns() @@ -114,6 +115,11 @@ export default function Charity(props: { return ( <Page> + <SEO + title="Manifold for Charity" + description="Donate your prediction market earnings to charity on Manifold." + url="/charity" + /> <Col className="w-full rounded px-4 py-6 sm:px-8 xl:w-[125%]"> <Col className=""> <Title className="!mt-0" text="Manifold for Charity" /> diff --git a/web/pages/create.tsx b/web/pages/create.tsx index 1271730f..00e49f80 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -30,6 +30,7 @@ import { TextEditor, useTextEditor } from 'web/components/editor' import { Checkbox } from 'web/components/checkbox' import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth' import { Title } from 'web/components/title' +import { SEO } from 'web/components/SEO' export const getServerSideProps = redirectIfLoggedOut('/') @@ -63,6 +64,11 @@ export default function Create() { return ( <Page> + <SEO + title="Create a market" + description="Create a play-money prediction market on any question." + url="/create" + /> <div className="mx-auto w-full max-w-2xl"> <div className="rounded-lg px-6 py-4 sm:py-0"> <Title className="!mt-0" text="Create a market" /> diff --git a/web/pages/groups.tsx b/web/pages/groups.tsx index c87f801b..d1eed970 100644 --- a/web/pages/groups.tsx +++ b/web/pages/groups.tsx @@ -18,6 +18,7 @@ import { Avatar } from 'web/components/avatar' import { JoinOrLeaveGroupButton } from 'web/components/groups/groups-button' import { UserLink } from 'web/components/user-page' import { searchInAny } from 'common/util/parse' +import { SEO } from 'web/components/SEO' export async function getStaticProps() { const groups = await listAllGroups().catch((_) => []) @@ -100,6 +101,11 @@ export default function Groups(props: { return ( <Page> + <SEO + title="Groups" + description="Manifold Groups are communities centered around a collection of prediction markets. Discuss and compete on questions with your friends." + url="/groups" + /> <Col className="items-center"> <Col className="w-full max-w-2xl px-4 sm:px-2"> <Row className="items-center justify-between"> diff --git a/web/pages/leaderboards.tsx b/web/pages/leaderboards.tsx index 7ee13172..6ce5ca01 100644 --- a/web/pages/leaderboards.tsx +++ b/web/pages/leaderboards.tsx @@ -13,6 +13,7 @@ import { useEffect, useState } from 'react' import { Title } from 'web/components/title' import { Tabs } from 'web/components/layout/tabs' import { useTracking } from 'web/hooks/use-tracking' +import { SEO } from 'web/components/SEO' export async function getStaticProps() { const props = await fetchProps() @@ -123,6 +124,11 @@ export default function Leaderboards(_props: { return ( <Page> + <SEO + title="Leaderboards" + description="Manifold's leaderboards show the top traders and market creators." + url="/leaderboards" + /> <Title text={'Leaderboards'} className={'hidden md:block'} /> <Tabs currentPageForAnalytics={'leaderboards'} diff --git a/web/pages/markets.tsx b/web/pages/markets.tsx index a3e851fc..2d3346c1 100644 --- a/web/pages/markets.tsx +++ b/web/pages/markets.tsx @@ -8,7 +8,7 @@ export default function Markets() { <Page> <SEO title="Explore" - description="Discover what's new, trending, or soon-to-close. Or search among our hundreds of markets." + description="Discover what's new, trending, or soon-to-close. Or search thousands of prediction markets." url="/markets" /> <ContractSearch /> From e13f4d3d4de3260d6d27793a18286154048e40e3 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Fri, 22 Jul 2022 11:59:25 -0500 Subject: [PATCH 091/113] charity description --- web/pages/charity/index.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web/pages/charity/index.tsx b/web/pages/charity/index.tsx index d416726b..80003c81 100644 --- a/web/pages/charity/index.tsx +++ b/web/pages/charity/index.tsx @@ -134,6 +134,9 @@ export default function Charity(props: { </SiteLink> ! </span> */} + <span className="text-gray-600"> + Convert your M$ earnings into real charitable donations. + </span> <DonatedStats stats={[ { From c3a0326b1ec9d1b960271e63e025872b3c3c96b4 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Fri, 22 Jul 2022 12:01:52 -0500 Subject: [PATCH 092/113] homepage seo --- web/pages/index.tsx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/web/pages/index.tsx b/web/pages/index.tsx index c7e81d97..473189aa 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -5,6 +5,7 @@ import { Col } from 'web/components/layout/col' import { ManifoldLogo } from 'web/components/nav/manifold-logo' import { redirectIfLoggedIn } from 'web/lib/firebase/server-auth' import { useSaveReferral } from 'web/hooks/use-save-referral' +import { SEO } from 'web/components/SEO' export const getServerSideProps = redirectIfLoggedIn('/home', async (_) => { // These hardcoded markets will be shown in the frontpage for signed-out users: @@ -30,6 +31,11 @@ export default function Home(props: { hotContracts: Contract[] }) { return ( <Page> + <SEO + title="Manifold Markets" + description="Create a play-money prediction market on any topic you care about + and bet with your friends on what will happen!" + /> <div className="px-4 pt-2 md:mt-0 lg:hidden"> <ManifoldLogo /> </div> From 163c990e9d57b92ffc349afbdb43ce49e3a93c95 Mon Sep 17 00:00:00 2001 From: mantikoros <sgrugett@gmail.com> Date: Fri, 22 Jul 2022 12:03:33 -0500 Subject: [PATCH 093/113] "bettors" => "traders" --- web/components/contract/contract-leaderboard.tsx | 2 +- web/pages/group/[...slugs]/index.tsx | 4 ++-- web/pages/leaderboards.tsx | 2 +- web/pages/notifications.tsx | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/web/components/contract/contract-leaderboard.tsx b/web/components/contract/contract-leaderboard.tsx index 0623b6d7..deb9b857 100644 --- a/web/components/contract/contract-leaderboard.tsx +++ b/web/components/contract/contract-leaderboard.tsx @@ -49,7 +49,7 @@ export function ContractLeaderboard(props: { return users && users.length > 0 ? ( <Leaderboard - title="🏅 Top bettors" + title="🏅 Top traders" users={users || []} columns={[ { diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index 06f043e7..c27d998e 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -492,7 +492,7 @@ function GroupLeaderboards(props: { <SortedLeaderboard users={members} scoreFunction={(user) => traderScores[user.id] ?? 0} - title="🏅 Top bettors" + title="🏅 Top traders" header="Profit" maxToShow={maxToShow} /> @@ -508,7 +508,7 @@ function GroupLeaderboards(props: { <> <Leaderboard className="max-w-xl" - title="🏅 Top bettors" + title="🏅 Top traders" users={topTraders} columns={[ { diff --git a/web/pages/leaderboards.tsx b/web/pages/leaderboards.tsx index 6ce5ca01..45c484c4 100644 --- a/web/pages/leaderboards.tsx +++ b/web/pages/leaderboards.tsx @@ -79,7 +79,7 @@ export default function Leaderboards(_props: { <> <Col className="mx-4 items-center gap-10 lg:flex-row"> <Leaderboard - title="🏅 Top bettors" + title="🏅 Top traders" users={topTraders} columns={[ { diff --git a/web/pages/notifications.tsx b/web/pages/notifications.tsx index 3db345ef..72754d32 100644 --- a/web/pages/notifications.tsx +++ b/web/pages/notifications.tsx @@ -391,7 +391,7 @@ function IncomeNotificationItem(props: { reasonText = !simple ? `Bonus for ${ parseInt(sourceText) / UNIQUE_BETTOR_BONUS_AMOUNT - } unique bettors` + } unique traders` : 'bonus on' } else if (sourceType === 'tip') { reasonText = !simple ? `tipped you` : `in tips on` From 6fb984900787234ef4062388e7e2b759b854819f Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 11:34:10 -0600 Subject: [PATCH 094/113] Allow to add/remove from groups on market page (#685) * Allow to add/remove from groups on market page * remove lib * Fix Sinclair's relative import from May * Clean --- web/components/button.tsx | 3 +- web/components/contract/contract-details.tsx | 79 ++++++++++--------- .../groups/contract-groups-list.tsx | 66 ++++++++++++++++ web/components/groups/group-selector.tsx | 30 ++++--- web/hooks/use-group.ts | 15 ++-- web/lib/firebase/groups.ts | 29 ++++++- web/pages/charity/[charitySlug].tsx | 8 +- web/pages/create.tsx | 4 +- 8 files changed, 168 insertions(+), 66 deletions(-) create mode 100644 web/components/groups/contract-groups-list.tsx diff --git a/web/components/button.tsx b/web/components/button.tsx index d279d9a0..8877c023 100644 --- a/web/components/button.tsx +++ b/web/components/button.tsx @@ -6,7 +6,7 @@ export function Button(props: { onClick?: () => void children?: ReactNode size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' - color?: 'green' | 'red' | 'blue' | 'indigo' | 'yellow' | 'gray' + color?: 'green' | 'red' | 'blue' | 'indigo' | 'yellow' | 'gray' | 'gray-white' type?: 'button' | 'reset' | 'submit' disabled?: boolean }) { @@ -40,6 +40,7 @@ export function Button(props: { color === 'blue' && 'bg-blue-400 text-white hover:bg-blue-500', color === 'indigo' && 'bg-indigo-500 text-white hover:bg-indigo-600', color === 'gray' && 'bg-gray-100 text-gray-600 hover:bg-gray-200', + color === 'gray-white' && 'bg-white text-gray-500 hover:bg-gray-200', className )} disabled={disabled} diff --git a/web/components/contract/contract-details.tsx b/web/components/contract/contract-details.tsx index 036311fe..0f5a1d42 100644 --- a/web/components/contract/contract-details.tsx +++ b/web/components/contract/contract-details.tsx @@ -26,8 +26,6 @@ import NewContractBadge from '../new-contract-badge' import { CATEGORY_LIST } from 'common/categories' import { TagsList } from '../tags-list' import { UserFollowButton } from '../follow-button' -import { groupPath } from 'web/lib/firebase/groups' -import { SiteLink } from 'web/components/site-link' import { DAY_MS } from 'common/util/time' import { useGroupsWithContract } from 'web/hooks/use-group' import { ShareIconButton } from 'web/components/share-icon-button' @@ -35,6 +33,10 @@ import { useUser } from 'web/hooks/use-user' import { Editor } from '@tiptap/react' import { exhibitExts } from 'common/util/parse' import { ENV_CONFIG } from 'common/envs/constants' +import { Button } from 'web/components/button' +import { Modal } from 'web/components/layout/modal' +import { Col } from 'web/components/layout/col' +import { ContractGroupsList } from 'web/components/groups/contract-groups-list' export type ShowTime = 'resolve-date' | 'close-date' @@ -135,31 +137,11 @@ export function ContractDetails(props: { const { closeTime, creatorName, creatorUsername, creatorId } = contract const { volumeLabel, resolvedDate } = contractMetrics(contract) - const groups = (useGroupsWithContract(contract.id) ?? []).sort((g1, g2) => { - return g2.createdTime - g1.createdTime - }) + const groups = useGroupsWithContract(contract) + const groupToDisplay = groups[0] ?? null const user = useUser() + const [open, setOpen] = useState(false) - const groupsUserIsMemberOf = groups - ? groups.filter((g) => g.memberIds.includes(contract.creatorId)) - : [] - const groupsUserIsCreatorOf = groups - ? groups.filter((g) => g.creatorId === contract.creatorId) - : [] - - // Priorities for which group the contract belongs to: - // In order of created most recently - // Group that the contract owner created - // Group the contract owner is a member of - // Any group the contract is in - const groupToDisplay = - groupsUserIsCreatorOf.length > 0 - ? groupsUserIsCreatorOf[0] - : groupsUserIsMemberOf.length > 0 - ? groupsUserIsMemberOf[0] - : groups - ? groups[0] - : undefined return ( <Row className="flex-1 flex-wrap items-center gap-x-4 gap-y-2 text-sm text-gray-500"> <Row className="items-center gap-2"> @@ -180,16 +162,34 @@ export function ContractDetails(props: { )} {!disabled && <UserFollowButton userId={creatorId} small />} </Row> - {groupToDisplay ? ( - <Row className={'line-clamp-1 mt-1 max-w-[200px]'}> - <SiteLink href={`${groupPath(groupToDisplay.slug)}`}> - <UserGroupIcon className="mx-1 mb-1 inline h-5 w-5" /> - <span>{groupToDisplay.name}</span> - </SiteLink> - </Row> - ) : ( - <div /> - )} + <Row> + <Button + size={'xs'} + className={'max-w-[200px]'} + color={'gray-white'} + onClick={() => setOpen(!open)} + > + <Row> + <UserGroupIcon className="mx-1 inline h-5 w-5 shrink-0" /> + <span className={'line-clamp-1'}> + {contract.groupSlugs && !groupToDisplay + ? '' + : groupToDisplay + ? groupToDisplay.name + : 'No group'} + </span> + </Row> + </Button> + </Row> + <Modal open={open} setOpen={setOpen} size={'md'}> + <Col + className={ + 'max-h-[70vh] min-h-[20rem] overflow-auto rounded bg-white p-6' + } + > + <ContractGroupsList groups={groups} contract={contract} user={user} /> + </Col> + </Modal> {(!!closeTime || !!resolvedDate) && ( <Row className="items-center gap-1"> @@ -326,12 +326,13 @@ function EditableCloseDate(props: { Done </button> ) : ( - <button - className="btn btn-xs btn-ghost" + <Button + size={'xs'} + color={'gray-white'} onClick={() => setIsEditingCloseTime(true)} > - <PencilIcon className="mr-2 inline h-4 w-4" /> Edit - </button> + <PencilIcon className="mr-0.5 inline h-4 w-4" /> Edit + </Button> ))} </> ) diff --git a/web/components/groups/contract-groups-list.tsx b/web/components/groups/contract-groups-list.tsx new file mode 100644 index 00000000..b52179b1 --- /dev/null +++ b/web/components/groups/contract-groups-list.tsx @@ -0,0 +1,66 @@ +import { Group } from 'common/group' +import { Col } from 'web/components/layout/col' +import { Row } from 'web/components/layout/row' +import clsx from 'clsx' +import { GroupLink } from 'web/pages/groups' +import { XIcon } from '@heroicons/react/outline' +import { Button } from 'web/components/button' +import { GroupSelector } from 'web/components/groups/group-selector' +import { + addContractToGroup, + removeContractFromGroup, +} from 'web/lib/firebase/groups' +import { User } from 'common/user' +import { Contract } from 'common/contract' + +export function ContractGroupsList(props: { + groups: Group[] + contract: Contract + user: User | null | undefined +}) { + const { groups, user, contract } = props + + return ( + <Col className={'gap-2'}> + {user && ( + <Row className={'ml-2 items-center justify-between'}> + <span>Add to group: </span> + <GroupSelector + options={{ + showSelector: true, + showLabel: false, + ignoreGroupIds: groups.map((g) => g.id), + }} + setSelectedGroup={(group) => addContractToGroup(group, contract)} + selectedGroup={undefined} + creator={user} + /> + </Row> + )} + {groups.length === 0 && ( + <Col className="ml-2 h-full justify-center text-gray-500"> + No groups yet... + </Col> + )} + {groups.map((group) => ( + <Row + key={group.id} + className={clsx('items-center justify-between gap-2 p-2')} + > + <Row className="line-clamp-1 items-center gap-2"> + <GroupLink group={group} /> + </Row> + {user && group.memberIds.includes(user.id) && ( + <Button + color={'gray-white'} + size={'xs'} + onClick={() => removeContractFromGroup(group, contract)} + > + <XIcon className="h-4 w-4 text-gray-500" /> + </Button> + )} + </Row> + ))} + </Col> + ) +} diff --git a/web/components/groups/group-selector.tsx b/web/components/groups/group-selector.tsx index c7b4cb39..e6270a4d 100644 --- a/web/components/groups/group-selector.tsx +++ b/web/components/groups/group-selector.tsx @@ -14,16 +14,22 @@ import { User } from 'common/user' import { searchInAny } from 'common/util/parse' export function GroupSelector(props: { - selectedGroup?: Group + selectedGroup: Group | undefined setSelectedGroup: (group: Group) => void creator: User | null | undefined - showSelector?: boolean + options: { + showSelector: boolean + showLabel: boolean + ignoreGroupIds?: string[] + } }) { - const { selectedGroup, setSelectedGroup, creator, showSelector } = props + const { selectedGroup, setSelectedGroup, creator, options } = props const [isCreatingNewGroup, setIsCreatingNewGroup] = useState(false) - + const { showSelector, showLabel, ignoreGroupIds } = options const [query, setQuery] = useState('') - const memberGroups = useMemberGroups(creator?.id) ?? [] + const memberGroups = (useMemberGroups(creator?.id) ?? []).filter( + (group) => !ignoreGroupIds?.includes(group.id) + ) const filteredGroups = memberGroups.filter((group) => searchInAny(query, group.name) ) @@ -55,16 +61,18 @@ export function GroupSelector(props: { > {() => ( <> - <Combobox.Label className="label justify-start gap-2 text-base"> - Add to Group - <InfoTooltip text="Question will be displayed alongside the other questions in the group." /> - </Combobox.Label> + {showLabel && ( + <Combobox.Label className="label justify-start gap-2 text-base"> + Add to Group + <InfoTooltip text="Question will be displayed alongside the other questions in the group." /> + </Combobox.Label> + )} <div className="relative mt-2"> <Combobox.Input - className="w-full rounded-md border border-gray-300 bg-white p-3 pl-4 pr-20 text-sm shadow-sm focus:border-indigo-500 focus:outline-none focus:ring-1 focus:ring-indigo-500 " + className="w-60 rounded-md border border-gray-300 bg-white p-3 pl-4 pr-20 text-sm shadow-sm focus:border-indigo-500 focus:outline-none focus:ring-1 focus:ring-indigo-500 " onChange={(event) => setQuery(event.target.value)} displayValue={(group: Group) => group && group.name} - placeholder={'None'} + placeholder={'E.g. Science, Politics'} /> <Combobox.Button className="absolute inset-y-0 right-0 flex items-center rounded-r-md px-2 focus:outline-none"> <SelectorIcon diff --git a/web/hooks/use-group.ts b/web/hooks/use-group.ts index 892efda0..84913962 100644 --- a/web/hooks/use-group.ts +++ b/web/hooks/use-group.ts @@ -2,13 +2,15 @@ import { useEffect, useState } from 'react' import { Group } from 'common/group' import { User } from 'common/user' import { - getGroupsWithContractId, listenForGroup, listenForGroups, listenForMemberGroups, + listGroups, } from 'web/lib/firebase/groups' import { getUser, getUsers } from 'web/lib/firebase/users' import { filterDefined } from 'common/util/array' +import { Contract } from 'common/contract' +import { uniq } from 'lodash' export const useGroup = (groupId: string | undefined) => { const [group, setGroup] = useState<Group | null | undefined>() @@ -103,12 +105,15 @@ export async function listMembers(group: Group, max?: number) { return await Promise.all(group.memberIds.slice(0, numToRetrieve).map(getUser)) } -export const useGroupsWithContract = (contractId: string | undefined) => { - const [groups, setGroups] = useState<Group[] | null | undefined>() +export const useGroupsWithContract = (contract: Contract) => { + const [groups, setGroups] = useState<Group[]>([]) useEffect(() => { - if (contractId) getGroupsWithContractId(contractId, setGroups) - }, [contractId]) + if (contract.groupSlugs) + listGroups(uniq(contract.groupSlugs)).then((groups) => + setGroups(filterDefined(groups)) + ) + }, [contract.groupSlugs]) return groups } diff --git a/web/lib/firebase/groups.ts b/web/lib/firebase/groups.ts index 5a031ca7..dc096f4e 100644 --- a/web/lib/firebase/groups.ts +++ b/web/lib/firebase/groups.ts @@ -44,6 +44,10 @@ export async function listAllGroups() { return getValues<Group>(groups) } +export async function listGroups(groupSlugs: string[]) { + return Promise.all(groupSlugs.map(getGroupBySlug)) +} + export function listenForGroups(setGroups: (groups: Group[]) => void) { return listenForValues(groups, setGroups) } @@ -86,12 +90,12 @@ export function listenForMemberGroups( }) } -export async function getGroupsWithContractId( +export async function listenForGroupsWithContractId( contractId: string, setGroups: (groups: Group[]) => void ) { const q = query(groups, where('contractIds', 'array-contains', contractId)) - setGroups(await getValues<Group>(q)) + return listenForValues<Group>(q, setGroups) } export async function addUserToGroupViaId(groupId: string, userId: string) { @@ -134,6 +138,27 @@ export async function addContractToGroup(group: Group, contract: Contract) { }) } +export async function removeContractFromGroup( + group: Group, + contract: Contract +) { + const newGroupSlugs = contract.groupSlugs?.filter( + (slug) => slug !== group.slug + ) + await updateContract(contract.id, { + groupSlugs: uniq(newGroupSlugs ?? []), + }) + const newContractIds = group.contractIds.filter((id) => id !== contract.id) + return await updateGroup(group, { + contractIds: uniq(newContractIds), + }) + .then(() => group) + .catch((err) => { + console.error('error removing contract from group', err) + return err + }) +} + export async function setContractGroupSlugs(group: Group, contractId: string) { await updateContract(contractId, { groupSlugs: [group.slug] }) return await updateGroup(group, { diff --git a/web/pages/charity/[charitySlug].tsx b/web/pages/charity/[charitySlug].tsx index da3141d2..89d2d3a3 100644 --- a/web/pages/charity/[charitySlug].tsx +++ b/web/pages/charity/[charitySlug].tsx @@ -20,7 +20,7 @@ import Custom404 from '../404' import { useCharityTxns } from 'web/hooks/use-charity-txns' import { useWindowSize } from 'web/hooks/use-window-size' import { Donation } from 'web/components/charity/feed-items' -import { manaToUSD } from '../../../common/util/format' +import { manaToUSD } from 'common/util/format' import { track } from 'web/lib/service/analytics' import { SEO } from 'web/components/SEO' @@ -65,11 +65,7 @@ function CharityPage(props: { charity: Charity }) { /> } > - <SEO - title={name} - description={description} - url="/groups" - /> + <SEO title={name} description={description} url="/groups" /> {showConfetti && ( <Confetti width={width ? width : 500} diff --git a/web/pages/create.tsx b/web/pages/create.tsx index 00e49f80..9fa340f5 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -19,7 +19,7 @@ import { import { formatMoney } from 'common/util/format' import { removeUndefinedProps } from 'common/util/object' import { ChoicesToggleGroup } from 'web/components/choices-toggle-group' -import { setContractGroupSlugs, getGroup } from 'web/lib/firebase/groups' +import { getGroup, setContractGroupSlugs } from 'web/lib/firebase/groups' import { Group } from 'common/group' import { useTracking } from 'web/hooks/use-tracking' import { useWarnUnsavedChanges } from 'web/hooks/use-warn-unsaved-changes' @@ -353,7 +353,7 @@ export function NewContract(props: { selectedGroup={selectedGroup} setSelectedGroup={setSelectedGroup} creator={creator} - showSelector={showGroupSelector} + options={{ showSelector: showGroupSelector, showLabel: true }} /> </div> From d3d472f5d2d47931eb43a1de463ac9a2d2d1ae28 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 14:50:29 -0500 Subject: [PATCH 095/113] Hide "Your bets" when signed out. "For you" becomes "Featured" when signed out. --- web/components/contract-search.tsx | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index fca1b272..383aa99c 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -238,16 +238,18 @@ export function ContractSearch(props: { selected={pillFilter === 'personal'} onSelect={selectFilter('personal')} > - For you + {user ? 'For you' : 'Featured' } </PillButton> - <PillButton - key={'your-bets'} - selected={pillFilter === 'your-bets'} - onSelect={selectFilter('your-bets')} - > - Your bets - </PillButton> + {user && ( + <PillButton + key={'your-bets'} + selected={pillFilter === 'your-bets'} + onSelect={selectFilter('your-bets')} + > + Your bets + </PillButton> + )} {pillGroups.map(({ name, slug }) => { return ( From 63d8e6739b7884e7ec4616e3bb7d108d401b4bf0 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 13:53:19 -0600 Subject: [PATCH 096/113] Add title, mobile flex --- web/components/groups/contract-groups-list.tsx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/web/components/groups/contract-groups-list.tsx b/web/components/groups/contract-groups-list.tsx index b52179b1..7fab42d8 100644 --- a/web/components/groups/contract-groups-list.tsx +++ b/web/components/groups/contract-groups-list.tsx @@ -12,6 +12,7 @@ import { } from 'web/lib/firebase/groups' import { User } from 'common/user' import { Contract } from 'common/contract' +import { SiteLink } from 'web/components/site-link' export function ContractGroupsList(props: { groups: Group[] @@ -22,20 +23,25 @@ export function ContractGroupsList(props: { return ( <Col className={'gap-2'}> + <span className={'text-xl text-indigo-700'}> + <SiteLink href={'/groups/'}>Groups</SiteLink> + </span> {user && ( - <Row className={'ml-2 items-center justify-between'}> - <span>Add to group: </span> + <Col className={'ml-2 items-center justify-between sm:flex-row'}> + <span>Add to: </span> <GroupSelector options={{ showSelector: true, showLabel: false, ignoreGroupIds: groups.map((g) => g.id), }} - setSelectedGroup={(group) => addContractToGroup(group, contract)} + setSelectedGroup={(group) => + group && addContractToGroup(group, contract) + } selectedGroup={undefined} creator={user} /> - </Row> + </Col> )} {groups.length === 0 && ( <Col className="ml-2 h-full justify-center text-gray-500"> From d319b654cea9d0568e50789469c7358c916d1557 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 14:15:42 -0600 Subject: [PATCH 097/113] Add creator id to unique bettor ids --- functions/src/on-create-bet.ts | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/functions/src/on-create-bet.ts b/functions/src/on-create-bet.ts index 4e10875e..d33e71dd 100644 --- a/functions/src/on-create-bet.ts +++ b/functions/src/on-create-bet.ts @@ -64,10 +64,7 @@ const updateUniqueBettorsAndGiveCreatorBonus = async ( if (!previousUniqueBettorIds) { const contractBets = ( - await firestore - .collection(`contracts/${contractId}/bets`) - .where('userId', '!=', contract.creatorId) - .get() + await firestore.collection(`contracts/${contractId}/bets`).get() ).docs.map((doc) => doc.data() as Bet) if (contractBets.length === 0) { @@ -82,9 +79,7 @@ const updateUniqueBettorsAndGiveCreatorBonus = async ( ) } - const isNewUniqueBettor = - !previousUniqueBettorIds.includes(bettorId) && - bettorId !== contract.creatorId + const isNewUniqueBettor = !previousUniqueBettorIds.includes(bettorId) const newUniqueBettorIds = uniq([...previousUniqueBettorIds, bettorId]) // Update contract unique bettors @@ -96,7 +91,9 @@ const updateUniqueBettorsAndGiveCreatorBonus = async ( uniqueBettorCount: newUniqueBettorIds.length, }) } - if (!isNewUniqueBettor) return + + // No need to give a bonus for the creator's bet + if (!isNewUniqueBettor || bettorId == contract.creatorId) return // Create combined txn for all new unique bettors const bonusTxnDetails = { From f800570845806da5e90cd5339e89f0aedbac3f4a Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 16:03:52 -0500 Subject: [PATCH 098/113] Improve range limit order UI --- web/components/bet-panel.tsx | 37 ++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 7d2b1e5a..064be0be 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -20,7 +20,13 @@ import { APIError, placeBet } from 'web/lib/firebase/api' import { sellShares } from 'web/lib/firebase/api' import { AmountInput, BuyAmountInput } from './amount-input' import { InfoTooltip } from './info-tooltip' -import { BinaryOutcomeLabel, HigherLabel, LowerLabel } from './outcome-label' +import { + BinaryOutcomeLabel, + HigherLabel, + LowerLabel, + NoLabel, + YesLabel, +} from './outcome-label' import { getProbability } from 'common/calculate' import { useFocus } from 'web/hooks/use-focus' import { useUserContractBets } from 'web/hooks/use-user-bets' @@ -366,12 +372,12 @@ function LimitOrderPanel(props: { (highLimitProb !== undefined && (highLimitProb <= 0 || highLimitProb >= 100)) - const initialLow = initialProb * 0.9 - const initialHigh = initialProb + (1 - initialProb) * 0.1 - const lowPlaceholder = Math.round( + const initialLow = initialProb * 0.85 + const initialHigh = initialProb + (1 - initialProb) * 0.15 + const lowPlaceholder = Math.floor( isPseudoNumeric ? getMappedValue(contract)(initialLow) : initialLow * 100 ).toString() - const highPlaceholder = Math.round( + const highPlaceholder = Math.ceil( isPseudoNumeric ? getMappedValue(contract)(initialHigh) : initialHigh * 100 ).toString() @@ -514,14 +520,11 @@ function LimitOrderPanel(props: { return ( <Col className={hidden ? 'hidden' : ''}> - <div className="my-3 text-sm text-gray-500"> - Bet when the {isPseudoNumeric ? 'value' : 'probability'} reaches Low - and/or High limit. - </div> - - <Row className="items-center gap-4"> + <Row className="mt-1 items-center gap-4"> <Col className="gap-2"> - <div className="ml-1 text-sm text-gray-500">Low</div> + <div className="relative ml-1 text-sm text-gray-500"> + Bet <YesLabel /> at + </div> <ProbabilityOrNumericInput contract={contract} prob={lowLimitProb} @@ -531,7 +534,9 @@ function LimitOrderPanel(props: { /> </Col> <Col className="gap-2"> - <div className="ml-1 text-sm text-gray-500">High</div> + <div className="ml-1 text-sm text-gray-500"> + Bet <NoLabel /> at + </div> <ProbabilityOrNumericInput contract={contract} prob={highLimitProb} @@ -544,7 +549,7 @@ function LimitOrderPanel(props: { {rangeError && ( <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> - Low limit must be less than High limit + YES limit must be less than NO limit </div> )} {outOfRangeError && ( @@ -574,7 +579,7 @@ function LimitOrderPanel(props: { ) : ( <BinaryOutcomeLabel outcome={'YES'} /> )}{' '} - current fill + filled now </div> <div className="mr-2 whitespace-nowrap"> {formatMoney(yesBet.amount)} of{' '} @@ -590,7 +595,7 @@ function LimitOrderPanel(props: { ) : ( <BinaryOutcomeLabel outcome={'NO'} /> )}{' '} - current fill + filled now </div> <div className="mr-2 whitespace-nowrap"> {formatMoney(noBet.amount)} of{' '} From a1d51e377877c306d6aec2bee324d60701090350 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 16:07:59 -0500 Subject: [PATCH 099/113] Update labels for numeric market outcomes --- web/components/bet-panel.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 064be0be..db021382 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -523,7 +523,7 @@ function LimitOrderPanel(props: { <Row className="mt-1 items-center gap-4"> <Col className="gap-2"> <div className="relative ml-1 text-sm text-gray-500"> - Bet <YesLabel /> at + Bet {isPseudoNumeric ? <HigherLabel /> : <YesLabel />} at </div> <ProbabilityOrNumericInput contract={contract} @@ -535,7 +535,7 @@ function LimitOrderPanel(props: { </Col> <Col className="gap-2"> <div className="ml-1 text-sm text-gray-500"> - Bet <NoLabel /> at + Bet {isPseudoNumeric ? <LowerLabel /> : <NoLabel />} at </div> <ProbabilityOrNumericInput contract={contract} @@ -549,7 +549,8 @@ function LimitOrderPanel(props: { {rangeError && ( <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> - YES limit must be less than NO limit + {isPseudoNumeric ? 'HIGHER' : 'YES'} limit must be less than{' '} + {isPseudoNumeric ? 'LOWER' : 'NO'} limit </div> )} {outOfRangeError && ( @@ -558,7 +559,7 @@ function LimitOrderPanel(props: { </div> )} - <div className="my-3 text-left text-sm text-gray-500"> + <div className="mt-1 mb-3 text-left text-sm text-gray-500"> Max amount<span className="ml-1 text-red-500">*</span> </div> <BuyAmountInput From 135160dd924741cc4a680a777ec7727f64cf24e2 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 16:18:36 -0500 Subject: [PATCH 100/113] Remove custom placeholders. Just show '0' for limit inputs --- web/components/bet-panel.tsx | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index db021382..987a394e 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -372,15 +372,6 @@ function LimitOrderPanel(props: { (highLimitProb !== undefined && (highLimitProb <= 0 || highLimitProb >= 100)) - const initialLow = initialProb * 0.85 - const initialHigh = initialProb + (1 - initialProb) * 0.15 - const lowPlaceholder = Math.floor( - isPseudoNumeric ? getMappedValue(contract)(initialLow) : initialLow * 100 - ).toString() - const highPlaceholder = Math.ceil( - isPseudoNumeric ? getMappedValue(contract)(initialHigh) : initialHigh * 100 - ).toString() - const hasYesLimitBet = lowLimitProb !== undefined && !!betAmount const hasNoLimitBet = highLimitProb !== undefined && !!betAmount const hasTwoBets = hasYesLimitBet && hasNoLimitBet @@ -499,7 +490,7 @@ function LimitOrderPanel(props: { 'YES', yesAmount, contract, - Math.min(yesLimitProb ?? initialLow, 0.999), + Math.min(yesLimitProb ?? initialProb, 0.999), unfilledBets as LimitBet[] ) const yesReturnPercent = formatPercent(yesReturn) @@ -513,7 +504,7 @@ function LimitOrderPanel(props: { 'NO', noAmount, contract, - Math.max(noLimitProb ?? initialHigh, 0.01), + Math.max(noLimitProb ?? initialProb, 0.01), unfilledBets as LimitBet[] ) const noReturnPercent = formatPercent(noReturn) @@ -530,7 +521,6 @@ function LimitOrderPanel(props: { prob={lowLimitProb} setProb={setLowLimitProb} isSubmitting={isSubmitting} - placeholder={lowPlaceholder} /> </Col> <Col className="gap-2"> @@ -542,7 +532,6 @@ function LimitOrderPanel(props: { prob={highLimitProb} setProb={setHighLimitProb} isSubmitting={isSubmitting} - placeholder={highPlaceholder} /> </Col> </Row> From 5899c1f3c07d99a9b217ecc1b1280553462a2da4 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 16:30:07 -0500 Subject: [PATCH 101/113] Fix lints --- web/components/bet-panel.tsx | 2 +- web/components/contract-search.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 987a394e..902b0040 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -31,7 +31,7 @@ import { getProbability } from 'common/calculate' import { useFocus } from 'web/hooks/use-focus' import { useUserContractBets } from 'web/hooks/use-user-bets' import { calculateCpmmSale, getCpmmProbability } from 'common/calculate-cpmm' -import { getFormattedMappedValue, getMappedValue } from 'common/pseudo-numeric' +import { getFormattedMappedValue } from 'common/pseudo-numeric' import { SellRow } from './sell-row' import { useSaveBinaryShares } from './use-save-binary-shares' import { SignUpPrompt } from './sign-up-prompt' diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index 383aa99c..cf59b573 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -238,7 +238,7 @@ export function ContractSearch(props: { selected={pillFilter === 'personal'} onSelect={selectFilter('personal')} > - {user ? 'For you' : 'Featured' } + {user ? 'For you' : 'Featured'} </PillButton> {user && ( From 5f074206de42cf6241daada18cd1da9183c52537 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 16:28:53 -0600 Subject: [PATCH 102/113] Backfill and forward fill contracts with group info (#686) * Backfill and forward fill contracts with group info * No nested queries :( * Fix filter * Pass empty arrays instead of undefined --- common/contract.ts | 2 + common/group.ts | 8 +++ firestore.rules | 2 +- functions/src/on-delete-group.ts | 11 ++-- functions/src/scripts/convert-categories.ts | 39 ++++++-------- .../src/scripts/link-contracts-to-groups.ts | 52 +++++++++++++++++++ web/components/contract/contract-details.tsx | 50 +++++++++++------- .../groups/contract-groups-list.tsx | 17 +++--- web/components/groups/groups-button.tsx | 4 +- web/lib/firebase/contracts.ts | 17 +++--- web/lib/firebase/groups.ts | 52 ++++++++++++++++--- web/pages/create.tsx | 4 +- web/pages/group/[...slugs]/index.tsx | 12 ++--- web/pages/groups.tsx | 4 +- 14 files changed, 191 insertions(+), 83 deletions(-) create mode 100644 functions/src/scripts/link-contracts-to-groups.ts diff --git a/common/contract.ts b/common/contract.ts index b1242ab9..177af862 100644 --- a/common/contract.ts +++ b/common/contract.ts @@ -1,6 +1,7 @@ import { Answer } from './answer' import { Fees } from './fees' import { JSONContent } from '@tiptap/core' +import { GroupLink } from 'common/group' export type AnyMechanism = DPM | CPMM export type AnyOutcomeType = Binary | PseudoNumeric | FreeResponse | Numeric @@ -46,6 +47,7 @@ export type Contract<T extends AnyContractType = AnyContractType> = { collectedFees: Fees groupSlugs?: string[] + groupLinks?: GroupLink[] uniqueBettorIds?: string[] uniqueBettorCount?: number popularityScore?: number diff --git a/common/group.ts b/common/group.ts index e367ded7..7d3215ae 100644 --- a/common/group.ts +++ b/common/group.ts @@ -19,3 +19,11 @@ export const MAX_ABOUT_LENGTH = 140 export const MAX_ID_LENGTH = 60 export const NEW_USER_GROUP_SLUGS = ['updates', 'bugs', 'welcome'] export const GROUP_CHAT_SLUG = 'chat' + +export type GroupLink = { + slug: string + name: string + groupId: string + createdTime: number + userId?: string +} diff --git a/firestore.rules b/firestore.rules index 96378d8b..0f28ca80 100644 --- a/firestore.rules +++ b/firestore.rules @@ -74,7 +74,7 @@ service cloud.firestore { match /contracts/{contractId} { allow read; allow update: if request.resource.data.diff(resource.data).affectedKeys() - .hasOnly(['tags', 'lowercaseTags', 'groupSlugs']); + .hasOnly(['tags', 'lowercaseTags', 'groupSlugs', 'groupLinks']); allow update: if request.resource.data.diff(resource.data).affectedKeys() .hasOnly(['description', 'closeTime', 'question']) && resource.data.creatorId == request.auth.uid; diff --git a/functions/src/on-delete-group.ts b/functions/src/on-delete-group.ts index ca833254..e5531d7b 100644 --- a/functions/src/on-delete-group.ts +++ b/functions/src/on-delete-group.ts @@ -3,6 +3,7 @@ import * as admin from 'firebase-admin' import { Group } from 'common/group' import { Contract } from 'common/contract' + const firestore = admin.firestore() export const onDeleteGroup = functions.firestore @@ -15,17 +16,21 @@ export const onDeleteGroup = functions.firestore .collection('contracts') .where('groupSlugs', 'array-contains', group.slug) .get() + console.log("contracts with group's slug:", contracts) for (const doc of contracts.docs) { const contract = doc.data() as Contract + const newGroupLinks = contract.groupLinks?.filter( + (link) => link.slug !== group.slug + ) + // remove the group from the contract await firestore .collection('contracts') .doc(contract.id) .update({ - groupSlugs: (contract.groupSlugs ?? []).filter( - (groupSlug) => groupSlug !== group.slug - ), + groupSlugs: contract.groupSlugs?.filter((s) => s !== group.slug), + groupLinks: newGroupLinks ?? [], }) } }) diff --git a/functions/src/scripts/convert-categories.ts b/functions/src/scripts/convert-categories.ts index d559bf92..3436bcbc 100644 --- a/functions/src/scripts/convert-categories.ts +++ b/functions/src/scripts/convert-categories.ts @@ -3,7 +3,7 @@ import * as admin from 'firebase-admin' import { initAdmin } from './script-init' import { getValues, isProd } from '../utils' import { CATEGORIES_GROUP_SLUG_POSTFIX } from 'common/categories' -import { Group } from 'common/group' +import { Group, GroupLink } from 'common/group' import { uniq } from 'lodash' import { Contract } from 'common/contract' import { User } from 'common/user' @@ -17,27 +17,6 @@ initAdmin() const adminFirestore = admin.firestore() -// eslint-disable-next-line @typescript-eslint/no-unused-vars -const addGroupIdToContracts = async () => { - const groups = await getValues<Group>(adminFirestore.collection('groups')) - const contracts = await getValues<Contract>( - adminFirestore.collection('contracts') - ) - for (const group of groups) { - const groupContracts = contracts.filter((contract) => - group.contractIds.includes(contract.id) - ) - for (const contract of groupContracts) { - await adminFirestore - .collection('contracts') - .doc(contract.id) - .update({ - groupSlugs: uniq([...(contract.groupSlugs ?? []), group.slug]), - }) - } - } -} - const convertCategoriesToGroupsInternal = async (categories: string[]) => { for (const category of categories) { const markets = await getValues<Contract>( @@ -93,18 +72,30 @@ const convertCategoriesToGroupsInternal = async (categories: string[]) => { }) for (const market of markets) { + if (market.groupLinks?.map((l) => l.groupId).includes(newGroup.id)) + continue // already in that group + + const newGroupLinks = [ + ...(market.groupLinks ?? []), + { + groupId: newGroup.id, + createdTime: Date.now(), + slug: newGroup.slug, + name: newGroup.name, + } as GroupLink, + ] await adminFirestore .collection('contracts') .doc(market.id) .update({ - groupSlugs: uniq([...(market?.groupSlugs ?? []), newGroup.slug]), + groupSlugs: uniq([...(market.groupSlugs ?? []), newGroup.slug]), + groupLinks: newGroupLinks, }) } } } async function convertCategoriesToGroups() { - // await addGroupIdToContracts() // const defaultCategories = Object.values(DEFAULT_CATEGORIES) const moreCategories = ['world', 'culture'] await convertCategoriesToGroupsInternal(moreCategories) diff --git a/functions/src/scripts/link-contracts-to-groups.ts b/functions/src/scripts/link-contracts-to-groups.ts new file mode 100644 index 00000000..feda249e --- /dev/null +++ b/functions/src/scripts/link-contracts-to-groups.ts @@ -0,0 +1,52 @@ +import { getValues } from 'functions/src/utils' +import { Group } from 'common/group' +import { Contract } from 'common/contract' +import { initAdmin } from 'functions/src/scripts/script-init' +import * as admin from 'firebase-admin' +import { filterDefined } from 'common/util/array' +import { uniq } from 'lodash' + +initAdmin() + +const adminFirestore = admin.firestore() + +const addGroupIdToContracts = async () => { + const groups = await getValues<Group>(adminFirestore.collection('groups')) + const contracts = await getValues<Contract>( + adminFirestore.collection('contracts') + ) + for (const group of groups) { + const groupContracts = contracts.filter((contract) => + group.contractIds.includes(contract.id) + ) + for (const contract of groupContracts) { + const oldGroupLinks = contract.groupLinks?.filter( + (l) => l.slug != group.slug + ) + const newGroupLinks = filterDefined([ + ...(oldGroupLinks ?? []), + group.id + ? { + slug: group.slug, + name: group.name, + groupId: group.id, + createdTime: Date.now(), + } + : undefined, + ]) + await adminFirestore + .collection('contracts') + .doc(contract.id) + .update({ + groupSlugs: uniq([...(contract.groupSlugs ?? []), group.slug]), + groupLinks: newGroupLinks, + }) + } + } +} + +if (require.main === module) { + addGroupIdToContracts() + .then(() => process.exit()) + .catch(console.log) +} diff --git a/web/components/contract/contract-details.tsx b/web/components/contract/contract-details.tsx index 0f5a1d42..544e9c27 100644 --- a/web/components/contract/contract-details.tsx +++ b/web/components/contract/contract-details.tsx @@ -23,11 +23,8 @@ import { useState } from 'react' import { ContractInfoDialog } from './contract-info-dialog' import { Bet } from 'common/bet' import NewContractBadge from '../new-contract-badge' -import { CATEGORY_LIST } from 'common/categories' -import { TagsList } from '../tags-list' import { UserFollowButton } from '../follow-button' import { DAY_MS } from 'common/util/time' -import { useGroupsWithContract } from 'web/hooks/use-group' import { ShareIconButton } from 'web/components/share-icon-button' import { useUser } from 'web/hooks/use-user' import { Editor } from '@tiptap/react' @@ -37,6 +34,8 @@ import { Button } from 'web/components/button' import { Modal } from 'web/components/layout/modal' import { Col } from 'web/components/layout/col' import { ContractGroupsList } from 'web/components/groups/contract-groups-list' +import { SiteLink } from 'web/components/site-link' +import { groupPath } from 'web/lib/firebase/groups' export type ShowTime = 'resolve-date' | 'close-date' @@ -50,15 +49,16 @@ export function MiscDetails(props: { volume, volume24Hours, closeTime, - tags, isResolved, createdTime, resolutionTime, + groupLinks, } = contract + // Show at most one category that this contract is tagged by - const categories = CATEGORY_LIST.filter((category) => - tags.map((t) => t.toLowerCase()).includes(category) - ).slice(0, 1) + // const categories = CATEGORY_LIST.filter((category) => + // tags.map((t) => t.toLowerCase()).includes(category) + // ).slice(0, 1) const isNew = createdTime > Date.now() - DAY_MS && !isResolved return ( @@ -80,13 +80,24 @@ export function MiscDetails(props: { {fromNow(resolutionTime || 0)} </Row> ) : volume > 0 || !isNew ? ( - <Row>{contractPool(contract)} pool</Row> + <Row className={'shrink-0'}>{contractPool(contract)} pool</Row> ) : ( <NewContractBadge /> )} - {categories.length > 0 && ( - <TagsList className="text-gray-400" tags={categories} noLabel /> + {/*{categories.length > 0 && (*/} + {/* <TagsList className="text-gray-400" tags={categories} noLabel />*/} + {/*)}*/} + {groupLinks && groupLinks.length > 0 && ( + <SiteLink + href={groupPath(groupLinks[0].slug)} + className="text-sm text-gray-400" + > + <Row className={'line-clamp-1 flex-wrap items-center '}> + <UserGroupIcon className="mx-1 mb-0.5 inline h-4 w-4 shrink-0" /> + {groupLinks[0].name} + </Row> + </SiteLink> )} </Row> ) @@ -134,11 +145,12 @@ export function ContractDetails(props: { disabled?: boolean }) { const { contract, bets, isCreator, disabled } = props - const { closeTime, creatorName, creatorUsername, creatorId } = contract + const { closeTime, creatorName, creatorUsername, creatorId, groupLinks } = + contract const { volumeLabel, resolvedDate } = contractMetrics(contract) - const groups = useGroupsWithContract(contract) - const groupToDisplay = groups[0] ?? null + const groupToDisplay = + groupLinks?.sort((a, b) => a.createdTime - b.createdTime)[0] ?? null const user = useUser() const [open, setOpen] = useState(false) @@ -172,11 +184,7 @@ export function ContractDetails(props: { <Row> <UserGroupIcon className="mx-1 inline h-5 w-5 shrink-0" /> <span className={'line-clamp-1'}> - {contract.groupSlugs && !groupToDisplay - ? '' - : groupToDisplay - ? groupToDisplay.name - : 'No group'} + {groupToDisplay ? groupToDisplay.name : 'No group'} </span> </Row> </Button> @@ -187,7 +195,11 @@ export function ContractDetails(props: { 'max-h-[70vh] min-h-[20rem] overflow-auto rounded bg-white p-6' } > - <ContractGroupsList groups={groups} contract={contract} user={user} /> + <ContractGroupsList + groupLinks={groupLinks ?? []} + contract={contract} + user={user} + /> </Col> </Modal> diff --git a/web/components/groups/contract-groups-list.tsx b/web/components/groups/contract-groups-list.tsx index 7fab42d8..423cbb97 100644 --- a/web/components/groups/contract-groups-list.tsx +++ b/web/components/groups/contract-groups-list.tsx @@ -1,8 +1,7 @@ -import { Group } from 'common/group' import { Col } from 'web/components/layout/col' import { Row } from 'web/components/layout/row' import clsx from 'clsx' -import { GroupLink } from 'web/pages/groups' +import { GroupLinkItem } from 'web/pages/groups' import { XIcon } from '@heroicons/react/outline' import { Button } from 'web/components/button' import { GroupSelector } from 'web/components/groups/group-selector' @@ -13,14 +12,16 @@ import { import { User } from 'common/user' import { Contract } from 'common/contract' import { SiteLink } from 'web/components/site-link' +import { GroupLink } from 'common/group' +import { useGroupsWithContract } from 'web/hooks/use-group' export function ContractGroupsList(props: { - groups: Group[] + groupLinks: GroupLink[] contract: Contract user: User | null | undefined }) { - const { groups, user, contract } = props - + const { groupLinks, user, contract } = props + const groups = useGroupsWithContract(contract) return ( <Col className={'gap-2'}> <span className={'text-xl text-indigo-700'}> @@ -33,10 +34,10 @@ export function ContractGroupsList(props: { options={{ showSelector: true, showLabel: false, - ignoreGroupIds: groups.map((g) => g.id), + ignoreGroupIds: groupLinks.map((g) => g.groupId), }} setSelectedGroup={(group) => - group && addContractToGroup(group, contract) + group && addContractToGroup(group, contract, user.id) } selectedGroup={undefined} creator={user} @@ -54,7 +55,7 @@ export function ContractGroupsList(props: { className={clsx('items-center justify-between gap-2 p-2')} > <Row className="line-clamp-1 items-center gap-2"> - <GroupLink group={group} /> + <GroupLinkItem group={group} /> </Row> {user && group.memberIds.includes(user.id) && ( <Button diff --git a/web/components/groups/groups-button.tsx b/web/components/groups/groups-button.tsx index 39c75d40..bb94c9ed 100644 --- a/web/components/groups/groups-button.tsx +++ b/web/components/groups/groups-button.tsx @@ -11,7 +11,7 @@ import { Modal } from 'web/components/layout/modal' import { Col } from 'web/components/layout/col' import { joinGroup, leaveGroup } from 'web/lib/firebase/groups' import { firebaseLogin } from 'web/lib/firebase/users' -import { GroupLink } from 'web/pages/groups' +import { GroupLinkItem } from 'web/pages/groups' import toast from 'react-hot-toast' export function GroupsButton(props: { user: User }) { @@ -77,7 +77,7 @@ function GroupItem(props: { group: Group; className?: string }) { return ( <Row className={clsx('items-center justify-between gap-2 p-2', className)}> <Row className="line-clamp-1 items-center gap-2"> - <GroupLink group={group} /> + <GroupLinkItem group={group} /> </Row> <JoinOrLeaveGroupButton group={group} /> </Row> diff --git a/web/lib/firebase/contracts.ts b/web/lib/firebase/contracts.ts index 63efa53b..14594803 100644 --- a/web/lib/firebase/contracts.ts +++ b/web/lib/firebase/contracts.ts @@ -1,17 +1,17 @@ import dayjs from 'dayjs' import { - doc, - setDoc, - deleteDoc, - where, collection, - query, - getDocs, - orderBy, + deleteDoc, + doc, getDoc, - updateDoc, + getDocs, limit, + orderBy, + query, + setDoc, startAfter, + updateDoc, + where, } from 'firebase/firestore' import { sortBy, sum } from 'lodash' @@ -129,6 +129,7 @@ export async function listContractsByGroupSlug( ): Promise<Contract[]> { const q = query(contracts, where('groupSlugs', 'array-contains', slug)) const snapshot = await getDocs(q) + console.log(snapshot.docs.map((doc) => doc.data())) return snapshot.docs.map((doc) => doc.data()) } diff --git a/web/lib/firebase/groups.ts b/web/lib/firebase/groups.ts index dc096f4e..151e7fa1 100644 --- a/web/lib/firebase/groups.ts +++ b/web/lib/firebase/groups.ts @@ -7,7 +7,7 @@ import { where, } from 'firebase/firestore' import { sortBy, uniq } from 'lodash' -import { Group, GROUP_CHAT_SLUG } from 'common/group' +import { Group, GROUP_CHAT_SLUG, GroupLink } from 'common/group' import { updateContract } from './contracts' import { coll, @@ -124,9 +124,27 @@ export async function leaveGroup(group: Group, userId: string): Promise<void> { return await updateGroup(group, { memberIds: uniq(newMemberIds) }) } -export async function addContractToGroup(group: Group, contract: Contract) { +export async function addContractToGroup( + group: Group, + contract: Contract, + userId: string +) { + if (contract.groupLinks?.map((l) => l.groupId).includes(group.id)) return // already in that group + + const newGroupLinks = [ + ...(contract.groupLinks ?? []), + { + groupId: group.id, + createdTime: Date.now(), + slug: group.slug, + userId, + name: group.name, + } as GroupLink, + ] + await updateContract(contract.id, { - groupSlugs: [...(contract.groupSlugs ?? []), group.slug], + groupSlugs: uniq([...(contract.groupSlugs ?? []), group.slug]), + groupLinks: newGroupLinks, }) return await updateGroup(group, { contractIds: uniq([...group.contractIds, contract.id]), @@ -142,11 +160,15 @@ export async function removeContractFromGroup( group: Group, contract: Contract ) { - const newGroupSlugs = contract.groupSlugs?.filter( - (slug) => slug !== group.slug + if (!contract.groupLinks?.map((l) => l.groupId).includes(group.id)) return // not in that group + + const newGroupLinks = contract.groupLinks?.filter( + (link) => link.slug !== group.slug ) await updateContract(contract.id, { - groupSlugs: uniq(newGroupSlugs ?? []), + groupSlugs: + contract.groupSlugs?.filter((slug) => slug !== group.slug) ?? [], + groupLinks: newGroupLinks ?? [], }) const newContractIds = group.contractIds.filter((id) => id !== contract.id) return await updateGroup(group, { @@ -159,8 +181,22 @@ export async function removeContractFromGroup( }) } -export async function setContractGroupSlugs(group: Group, contractId: string) { - await updateContract(contractId, { groupSlugs: [group.slug] }) +export async function setContractGroupLinks( + group: Group, + contractId: string, + userId: string +) { + await updateContract(contractId, { + groupLinks: [ + { + groupId: group.id, + name: group.name, + slug: group.slug, + userId, + createdTime: Date.now(), + } as GroupLink, + ], + }) return await updateGroup(group, { contractIds: uniq([...group.contractIds, contractId]), }) diff --git a/web/pages/create.tsx b/web/pages/create.tsx index 9fa340f5..ec86a277 100644 --- a/web/pages/create.tsx +++ b/web/pages/create.tsx @@ -19,7 +19,7 @@ import { import { formatMoney } from 'common/util/format' import { removeUndefinedProps } from 'common/util/object' import { ChoicesToggleGroup } from 'web/components/choices-toggle-group' -import { getGroup, setContractGroupSlugs } from 'web/lib/firebase/groups' +import { getGroup, setContractGroupLinks } from 'web/lib/firebase/groups' import { Group } from 'common/group' import { useTracking } from 'web/hooks/use-tracking' import { useWarnUnsavedChanges } from 'web/hooks/use-warn-unsaved-changes' @@ -226,7 +226,7 @@ export function NewContract(props: { isFree: false, }) if (result && selectedGroup) { - await setContractGroupSlugs(selectedGroup, result.id) + await setContractGroupLinks(selectedGroup, result.id, creator.id) } await router.push(contractPath(result as Contract)) diff --git a/web/pages/group/[...slugs]/index.tsx b/web/pages/group/[...slugs]/index.tsx index c27d998e..eebf0619 100644 --- a/web/pages/group/[...slugs]/index.tsx +++ b/web/pages/group/[...slugs]/index.tsx @@ -1,4 +1,4 @@ -import { take, sortBy, debounce } from 'lodash' +import { debounce, sortBy, take } from 'lodash' import PlusSmIcon from '@heroicons/react/solid/PlusSmIcon' import { Group, GROUP_CHAT_SLUG } from 'common/group' @@ -6,11 +6,11 @@ import { Page } from 'web/components/page' import { listAllBets } from 'web/lib/firebase/bets' import { Contract, listContractsByGroupSlug } from 'web/lib/firebase/contracts' import { - groupPath, - getGroupBySlug, - updateGroup, - joinGroup, addContractToGroup, + getGroupBySlug, + groupPath, + joinGroup, + updateGroup, } from 'web/lib/firebase/groups' import { Row } from 'web/components/layout/row' import { UserLink } from 'web/components/user-page' @@ -543,7 +543,7 @@ function AddContractButton(props: { group: Group; user: User }) { const [open, setOpen] = useState(false) async function addContractToCurrentGroup(contract: Contract) { - await addContractToGroup(group, contract) + await addContractToGroup(group, contract, user.id) setOpen(false) } diff --git a/web/pages/groups.tsx b/web/pages/groups.tsx index d1eed970..521742b2 100644 --- a/web/pages/groups.tsx +++ b/web/pages/groups.tsx @@ -1,4 +1,4 @@ -import { sortBy, debounce } from 'lodash' +import { debounce, sortBy } from 'lodash' import Link from 'next/link' import React, { useEffect, useState } from 'react' import { Group } from 'common/group' @@ -238,7 +238,7 @@ function GroupMembersList(props: { group: Group }) { ) } -export function GroupLink(props: { group: Group; className?: string }) { +export function GroupLinkItem(props: { group: Group; className?: string }) { const { group, className } = props return ( From abde013ab6339dd3517e27fc4cadb42ad39da8c9 Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 16:40:37 -0600 Subject: [PATCH 103/113] Re-get contracts to get updated links --- functions/src/scripts/link-contracts-to-groups.ts | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/functions/src/scripts/link-contracts-to-groups.ts b/functions/src/scripts/link-contracts-to-groups.ts index feda249e..a61c6c6c 100644 --- a/functions/src/scripts/link-contracts-to-groups.ts +++ b/functions/src/scripts/link-contracts-to-groups.ts @@ -12,13 +12,21 @@ const adminFirestore = admin.firestore() const addGroupIdToContracts = async () => { const groups = await getValues<Group>(adminFirestore.collection('groups')) - const contracts = await getValues<Contract>( - adminFirestore.collection('contracts') - ) + for (const group of groups) { + const contracts = await getValues<Contract>( + adminFirestore + .collection('contracts') + .where('groupSlugs', 'array-contains', group.slug) + ) const groupContracts = contracts.filter((contract) => group.contractIds.includes(contract.id) ) + if (groupContracts.length !== contracts.length) + console.log( + `Found ${groupContracts.length} contracts for group ${group.slug}` + ) + for (const contract of groupContracts) { const oldGroupLinks = contract.groupLinks?.filter( (l) => l.slug != group.slug From 56a579ff910d81830a9821133df85c6cbc30074b Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Fri, 22 Jul 2022 16:44:03 -0600 Subject: [PATCH 104/113] Don't filter for group contract ids --- functions/src/scripts/link-contracts-to-groups.ts | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/functions/src/scripts/link-contracts-to-groups.ts b/functions/src/scripts/link-contracts-to-groups.ts index a61c6c6c..e3296160 100644 --- a/functions/src/scripts/link-contracts-to-groups.ts +++ b/functions/src/scripts/link-contracts-to-groups.ts @@ -14,18 +14,11 @@ const addGroupIdToContracts = async () => { const groups = await getValues<Group>(adminFirestore.collection('groups')) for (const group of groups) { - const contracts = await getValues<Contract>( + const groupContracts = await getValues<Contract>( adminFirestore .collection('contracts') .where('groupSlugs', 'array-contains', group.slug) ) - const groupContracts = contracts.filter((contract) => - group.contractIds.includes(contract.id) - ) - if (groupContracts.length !== contracts.length) - console.log( - `Found ${groupContracts.length} contracts for group ${group.slug}` - ) for (const contract of groupContracts) { const oldGroupLinks = contract.groupLinks?.filter( From 2116b86aecfa546039979c13cd77ce5b1b1b4540 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 21:03:07 -0500 Subject: [PATCH 105/113] Fix infinite loop in numeric limit bet --- common/new-bet.ts | 7 +++++++ common/pseudo-numeric.ts | 3 +++ web/components/bet-panel.tsx | 36 +++++++++++++++++++----------------- 3 files changed, 29 insertions(+), 17 deletions(-) diff --git a/common/new-bet.ts b/common/new-bet.ts index ea0b011d..1f5c0340 100644 --- a/common/new-bet.ts +++ b/common/new-bet.ts @@ -142,6 +142,13 @@ export const computeFills = ( limitProb: number | undefined, unfilledBets: LimitBet[] ) => { + if (isNaN(betAmount)) { + throw new Error('Invalid bet amount: ${betAmount}') + } + if (isNaN(limitProb ?? 0)) { + throw new Error('Invalid limitProb: ${limitProb}') + } + const sortedBets = sortBy( unfilledBets.filter((bet) => bet.outcome !== outcome), (bet) => (outcome === 'YES' ? bet.limitProb : -bet.limitProb), diff --git a/common/pseudo-numeric.ts b/common/pseudo-numeric.ts index 73f9fd01..ca62a80e 100644 --- a/common/pseudo-numeric.ts +++ b/common/pseudo-numeric.ts @@ -37,6 +37,9 @@ export const getPseudoProbability = ( max: number, isLogScale = false ) => { + if (value < min) return 0 + if (value > max) return 1 + if (isLogScale) { return Math.log10(value - min + 1) / Math.log10(max - min + 1) } diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 902b0040..1d9f128c 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx' import React, { useEffect, useState } from 'react' -import { partition, sum, sumBy } from 'lodash' +import { clamp, partition, sum, sumBy } from 'lodash' import { useUser } from 'web/hooks/use-user' import { CPMMBinaryContract, PseudoNumericContract } from 'common/contract' @@ -385,20 +385,22 @@ function LimitOrderPanel(props: { (!hasYesLimitBet && !hasNoLimitBet) const yesLimitProb = - lowLimitProb === undefined ? undefined : lowLimitProb / 100 + lowLimitProb === undefined ? undefined : clamp(lowLimitProb, 0.001, 0.999) const noLimitProb = - highLimitProb === undefined ? undefined : highLimitProb / 100 + highLimitProb === undefined ? undefined : clamp(highLimitProb, 0.001, 0.999) + const amount = betAmount ?? 0 const shares = yesLimitProb !== undefined && noLimitProb !== undefined - ? Math.min( - (betAmount ?? 0) / yesLimitProb, - (betAmount ?? 0) / (1 - noLimitProb) - ) - : (betAmount ?? 0) / (yesLimitProb ?? 1 - (noLimitProb ?? 1)) + ? Math.min(amount / yesLimitProb, amount / (1 - noLimitProb)) + : yesLimitProb !== undefined + ? amount / yesLimitProb + : noLimitProb !== undefined + ? amount / (1 - noLimitProb) + : 0 const yesAmount = shares * (yesLimitProb ?? 1) - const noAmount = shares * (1 - (noLimitProb ?? 1)) + const noAmount = shares * (1 - (noLimitProb ?? 0)) const profitIfBothFilled = shares - (yesAmount + noAmount) @@ -490,7 +492,7 @@ function LimitOrderPanel(props: { 'YES', yesAmount, contract, - Math.min(yesLimitProb ?? initialProb, 0.999), + yesLimitProb ?? initialProb, unfilledBets as LimitBet[] ) const yesReturnPercent = formatPercent(yesReturn) @@ -504,7 +506,7 @@ function LimitOrderPanel(props: { 'NO', noAmount, contract, - Math.max(noLimitProb ?? initialProb, 0.01), + noLimitProb ?? initialProb, unfilledBets as LimitBet[] ) const noReturnPercent = formatPercent(noReturn) @@ -536,17 +538,17 @@ function LimitOrderPanel(props: { </Col> </Row> - {rangeError && ( - <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> - {isPseudoNumeric ? 'HIGHER' : 'YES'} limit must be less than{' '} - {isPseudoNumeric ? 'LOWER' : 'NO'} limit - </div> - )} {outOfRangeError && ( <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> Limit is out of range </div> )} + {rangeError && !outOfRangeError && ( + <div className="mb-2 mr-auto self-center whitespace-nowrap text-xs font-medium tracking-wide text-red-500"> + {isPseudoNumeric ? 'HIGHER' : 'YES'} limit must be less than{' '} + {isPseudoNumeric ? 'LOWER' : 'NO'} limit + </div> + )} <div className="mt-1 mb-3 text-left text-sm text-gray-500"> Max amount<span className="ml-1 text-red-500">*</span> From 408027dd6a15abcd83ced44f6c86328242eb58c7 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Fri, 22 Jul 2022 22:44:21 -0500 Subject: [PATCH 106/113] Fix bug --- web/components/bet-panel.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/web/components/bet-panel.tsx b/web/components/bet-panel.tsx index 1d9f128c..c638fcde 100644 --- a/web/components/bet-panel.tsx +++ b/web/components/bet-panel.tsx @@ -385,9 +385,13 @@ function LimitOrderPanel(props: { (!hasYesLimitBet && !hasNoLimitBet) const yesLimitProb = - lowLimitProb === undefined ? undefined : clamp(lowLimitProb, 0.001, 0.999) + lowLimitProb === undefined + ? undefined + : clamp(lowLimitProb / 100, 0.001, 0.999) const noLimitProb = - highLimitProb === undefined ? undefined : clamp(highLimitProb, 0.001, 0.999) + highLimitProb === undefined + ? undefined + : clamp(highLimitProb / 100, 0.001, 0.999) const amount = betAmount ?? 0 const shares = From 71880dfc989d406060f113b7991e43569f83de2c Mon Sep 17 00:00:00 2001 From: Austin Chen <akrolsmir@gmail.com> Date: Sat, 23 Jul 2022 09:19:49 -0700 Subject: [PATCH 107/113] Add a toolbar for images and iframes (#688) * Add a toolbar for images and iframes * Insert embed code via modal --- web/components/editor.tsx | 122 +++++++++++++++++++++++++++++++++++--- 1 file changed, 115 insertions(+), 7 deletions(-) diff --git a/web/components/editor.tsx b/web/components/editor.tsx index d64dcc78..4dfddac9 100644 --- a/web/components/editor.tsx +++ b/web/components/editor.tsx @@ -12,7 +12,7 @@ import StarterKit from '@tiptap/starter-kit' import { Image } from '@tiptap/extension-image' import { Link } from '@tiptap/extension-link' import clsx from 'clsx' -import { useEffect } from 'react' +import { useEffect, useState } from 'react' import { Linkify } from './linkify' import { uploadImage } from 'web/lib/firebase/storage' import { useMutation } from 'react-query' @@ -20,6 +20,12 @@ import { exhibitExts } from 'common/util/parse' import { FileUploadButton } from './file-upload-button' import { linkClass } from './site-link' import Iframe from 'common/util/tiptap-iframe' +import { CodeIcon, PhotographIcon } from '@heroicons/react/solid' +import { Modal } from './layout/modal' +import { Col } from './layout/col' +import { Button } from './button' +import { Row } from './layout/row' +import { Spacer } from './layout/spacer' const proseClass = clsx( 'prose prose-p:my-0 prose-li:my-0 prose-blockquote:not-italic max-w-none prose-quoteless leading-relaxed', @@ -36,7 +42,7 @@ export function useTextEditor(props: { const editorClass = clsx( proseClass, - 'box-content min-h-[6em] textarea textarea-bordered text-base' + 'min-h-[6em] resize-none outline-none border-none pt-3 px-4 focus:ring-0' ) const editor = useEditor({ @@ -78,8 +84,7 @@ export function useTextEditor(props: { // If the pasted content is iframe code, directly inject it const text = event.clipboardData?.getData('text/plain').trim() ?? '' - const isValidIframe = /^<iframe.*<\/iframe>$/.test(text) - if (isValidIframe) { + if (isValidIframe(text)) { editor.chain().insertContent(text).run() return true // Prevent the code from getting pasted as text } @@ -96,16 +101,21 @@ export function useTextEditor(props: { return { editor, upload } } +function isValidIframe(text: string) { + return /^<iframe.*<\/iframe>$/.test(text) +} + export function TextEditor(props: { editor: Editor | null upload: ReturnType<typeof useUploadMutation> }) { const { editor, upload } = props + const [iframeOpen, setIframeOpen] = useState(false) return ( <> {/* hide placeholder when focused */} - <div className="w-full [&:focus-within_p.is-empty]:before:content-none"> + <div className="relative w-full [&:focus-within_p.is-empty]:before:content-none"> {editor && ( <FloatingMenu editor={editor} @@ -121,7 +131,46 @@ export function TextEditor(props: { images! </FloatingMenu> )} - <EditorContent editor={editor} /> + <div className="overflow-hidden rounded-lg border border-gray-300 shadow-sm focus-within:border-indigo-500 focus-within:ring-1 focus-within:ring-indigo-500"> + <EditorContent editor={editor} /> + {/* Spacer element to match the height of the toolbar */} + <div className="py-2" aria-hidden="true"> + {/* Matches height of button in toolbar (1px border + 36px content height) */} + <div className="py-px"> + <div className="h-9" /> + </div> + </div> + </div> + + {/* Toolbar, with buttons for image and embeds */} + <div className="absolute inset-x-0 bottom-0 flex justify-between py-2 pl-3 pr-2"> + <div className="flex items-center space-x-5"> + <div className="flex items-center"> + <FileUploadButton + onFiles={upload.mutate} + className="-m-2.5 flex h-10 w-10 items-center justify-center rounded-full text-gray-400 hover:text-gray-500" + > + <PhotographIcon className="h-5 w-5" aria-hidden="true" /> + <span className="sr-only">Upload an image</span> + </FileUploadButton> + </div> + <div className="flex items-center"> + <button + type="button" + onClick={() => setIframeOpen(true)} + className="-m-2.5 flex h-10 w-10 items-center justify-center rounded-full text-gray-400 hover:text-gray-500" + > + <IframeModal + editor={editor} + open={iframeOpen} + setOpen={setIframeOpen} + /> + <CodeIcon className="h-5 w-5" aria-hidden="true" /> + <span className="sr-only">Embed an iframe</span> + </button> + </div> + </div> + </div> </div> {upload.isLoading && <span className="text-xs">Uploading image...</span>} {upload.isError && ( @@ -131,6 +180,65 @@ export function TextEditor(props: { ) } +function IframeModal(props: { + editor: Editor | null + open: boolean + setOpen: (open: boolean) => void +}) { + const { editor, open, setOpen } = props + const [embedCode, setEmbedCode] = useState('') + const valid = isValidIframe(embedCode) + + return ( + <Modal open={open} setOpen={setOpen}> + <Col className="gap-2 rounded bg-white p-6"> + <label + htmlFor="embed" + className="block text-sm font-medium text-gray-700" + > + Embed a market, Youtube video, etc. + </label> + <input + type="text" + name="embed" + id="embed" + className="block w-full rounded-md border-gray-300 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 sm:text-sm" + placeholder='e.g. <iframe src="..."></iframe>' + value={embedCode} + onChange={(e) => setEmbedCode(e.target.value)} + /> + + {/* Preview the embed if it's valid */} + {valid ? <RichContent content={embedCode} /> : <Spacer h={2} />} + + <Row className="gap-2"> + <Button + disabled={!valid} + onClick={() => { + if (editor && valid) { + editor.chain().insertContent(embedCode).run() + setEmbedCode('') + setOpen(false) + } + }} + > + Embed + </Button> + <Button + color="gray" + onClick={() => { + setEmbedCode('') + setOpen(false) + }} + > + Cancel + </Button> + </Row> + </Col> + </Modal> + ) +} + const useUploadMutation = (editor: Editor | null) => useMutation( (files: File[]) => @@ -149,7 +257,7 @@ const useUploadMutation = (editor: Editor | null) => } ) -function RichContent(props: { content: JSONContent }) { +function RichContent(props: { content: JSONContent | string }) { const { content } = props const editor = useEditor({ editorProps: { attributes: { class: proseClass } }, From 7f42796724e26eba160c08c38e447f44fb2343a4 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Sat, 23 Jul 2022 15:02:06 -0500 Subject: [PATCH 108/113] Update algolia filters to use groupLinks.slug isntead of deprecated groupSlugs field. --- web/components/contract-search.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/web/components/contract-search.tsx b/web/components/contract-search.tsx index cf59b573..45145c54 100644 --- a/web/components/contract-search.tsx +++ b/web/components/contract-search.tsx @@ -130,15 +130,15 @@ export function ContractSearch(props: { : '', additionalFilter?.tag ? `lowercaseTags:${additionalFilter.tag}` : '', additionalFilter?.groupSlug - ? `groupSlugs:${additionalFilter.groupSlug}` + ? `groupLinks.slug:${additionalFilter.groupSlug}` : '', pillFilter && pillFilter !== 'personal' && pillFilter !== 'your-bets' - ? `groupSlugs:${pillFilter}` + ? `groupLinks.slug:${pillFilter}` : '', pillFilter === 'personal' ? // Show contracts in groups that the user is a member of memberGroupSlugs - .map((slug) => `groupSlugs:${slug}`) + .map((slug) => `groupLinks.slug:${slug}`) // Show contracts created by users the user follows .concat(follows?.map((followId) => `creatorId:${followId}`) ?? []) // Show contracts bet on by users the user follows From 71b20eb61af177dfc222ce43557ac7dfa094acde Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Sat, 23 Jul 2022 15:10:54 -0500 Subject: [PATCH 109/113] Tweak visually hidden style --- web/components/page.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/web/components/page.tsx b/web/components/page.tsx index 40cbf7f7..1913eb7a 100644 --- a/web/components/page.tsx +++ b/web/components/page.tsx @@ -62,4 +62,6 @@ const visuallyHiddenStyle = { position: 'absolute', width: 1, whiteSpace: 'nowrap', + userSelect: 'none', + visibility: 'hidden', } as const From f43df424492f8fd6ca51190b683b8e62b2afcfc4 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Sat, 23 Jul 2022 15:23:47 -0500 Subject: [PATCH 110/113] Change card to show volume instead of pool --- web/components/contract/contract-details.tsx | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/web/components/contract/contract-details.tsx b/web/components/contract/contract-details.tsx index 544e9c27..f581519b 100644 --- a/web/components/contract/contract-details.tsx +++ b/web/components/contract/contract-details.tsx @@ -55,10 +55,6 @@ export function MiscDetails(props: { groupLinks, } = contract - // Show at most one category that this contract is tagged by - // const categories = CATEGORY_LIST.filter((category) => - // tags.map((t) => t.toLowerCase()).includes(category) - // ).slice(0, 1) const isNew = createdTime > Date.now() - DAY_MS && !isResolved return ( @@ -80,14 +76,11 @@ export function MiscDetails(props: { {fromNow(resolutionTime || 0)} </Row> ) : volume > 0 || !isNew ? ( - <Row className={'shrink-0'}>{contractPool(contract)} pool</Row> + <Row className={'shrink-0'}>{formatMoney(contract.volume)} bet</Row> ) : ( <NewContractBadge /> )} - {/*{categories.length > 0 && (*/} - {/* <TagsList className="text-gray-400" tags={categories} noLabel />*/} - {/*)}*/} {groupLinks && groupLinks.length > 0 && ( <SiteLink href={groupPath(groupLinks[0].slug)} From 64f2dbbe7172944f592e222fa8e594a5f6704675 Mon Sep 17 00:00:00 2001 From: James Grugett <jahooma@gmail.com> Date: Sat, 23 Jul 2022 15:26:08 -0500 Subject: [PATCH 111/113] Fix unused var --- web/components/contract/contract-details.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/web/components/contract/contract-details.tsx b/web/components/contract/contract-details.tsx index f581519b..83c291c7 100644 --- a/web/components/contract/contract-details.tsx +++ b/web/components/contract/contract-details.tsx @@ -12,7 +12,6 @@ import { Contract, contractMetrics, contractPath, - contractPool, updateContract, } from 'web/lib/firebase/contracts' import dayjs from 'dayjs' From 6c8c0683279820503f3bbe1b6b8fd2f5f69b959f Mon Sep 17 00:00:00 2001 From: Marshall Polaris <marshall@pol.rs> Date: Sat, 23 Jul 2022 13:48:28 -0700 Subject: [PATCH 112/113] Write script to fix old comments without IDs and user IDs (#680) --- functions/src/scripts/backfill-comment-ids.ts | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 functions/src/scripts/backfill-comment-ids.ts diff --git a/functions/src/scripts/backfill-comment-ids.ts b/functions/src/scripts/backfill-comment-ids.ts new file mode 100644 index 00000000..e6bb6902 --- /dev/null +++ b/functions/src/scripts/backfill-comment-ids.ts @@ -0,0 +1,55 @@ +// We have some old comments without IDs and user IDs. Let's fill them in. +// Luckily, this was back when all comments had associated bets, so it's possible +// to retrieve the user IDs through the bets. + +import * as admin from 'firebase-admin' +import { QueryDocumentSnapshot } from 'firebase-admin/firestore' +import { initAdmin } from './script-init' +import { log, writeAsync } from '../utils' +import { Bet } from '../../../common/bet' + +initAdmin() +const firestore = admin.firestore() + +const getUserIdsByCommentId = async (comments: QueryDocumentSnapshot[]) => { + const bets = await firestore.collectionGroup('bets').get() + log(`Loaded ${bets.size} bets.`) + const betsById = Object.fromEntries( + bets.docs.map((b) => [b.id, b.data() as Bet]) + ) + return Object.fromEntries( + comments.map((c) => [c.id, betsById[c.data().betId].userId]) + ) +} + +if (require.main === module) { + const commentsQuery = firestore.collectionGroup('comments') + commentsQuery.get().then(async (commentSnaps) => { + log(`Loaded ${commentSnaps.size} comments.`) + const needsFilling = commentSnaps.docs.filter((ct) => { + return !('id' in ct.data()) || !('userId' in ct.data()) + }) + log(`${needsFilling.length} comments need IDs.`) + const userIdNeedsFilling = needsFilling.filter((ct) => { + return !('userId' in ct.data()) + }) + log(`${userIdNeedsFilling.length} comments need user IDs.`) + const userIdsByCommentId = + userIdNeedsFilling.length > 0 + ? await getUserIdsByCommentId(userIdNeedsFilling) + : {} + const updates = needsFilling.map((ct) => { + const fields: { [k: string]: unknown } = {} + if (!ct.data().id) { + fields.id = ct.id + } + if (!ct.data().userId && userIdsByCommentId[ct.id]) { + fields.userId = userIdsByCommentId[ct.id] + } + return { doc: ct.ref, fields } + }) + log(`Updating ${updates.length} comments.`) + await writeAsync(firestore, updates) + log(`Updated all comments.`) + }) +} From f4e45829137c681867a44bd6846f4eff715fc76b Mon Sep 17 00:00:00 2001 From: Ian Philips <iansphilips@gmail.com> Date: Sat, 23 Jul 2022 15:04:11 -0600 Subject: [PATCH 113/113] Add group slug during create --- web/lib/firebase/groups.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/web/lib/firebase/groups.ts b/web/lib/firebase/groups.ts index 151e7fa1..f782f6a8 100644 --- a/web/lib/firebase/groups.ts +++ b/web/lib/firebase/groups.ts @@ -187,6 +187,7 @@ export async function setContractGroupLinks( userId: string ) { await updateContract(contractId, { + groupSlugs: [group.slug], groupLinks: [ { groupId: group.id,