Gossip & News

Chris Evans and His Dog Dodger: A Timeline of Their


master mentalism tricks

[]

Man’s best friend! There is no stronger bond than that of a human and their pup — and Chris Evans and his dog, Dodger, are prime examples of this dynamic.

The Avengers star first met his sweet mixed-breed boxer around the time he was filming his 2017’s Gifted. He shared a video of their initial introduction to Twitter in April 2018, in which Evans — who was off-camera — approached the pen where the rescue pup was being held.

The Knives Out actor says, “Hi dude,” to Dodger as he bends down to put his hand out for the pup, in an effort to become better acquainted. The dog, in turn, shows his affection for Evans by licking and pawing at his hand repeatedly.

Since adopting the Dodger, Evans has sprinkled several adorable posts across his Twitter profile starring his loveable pup. He’s paid tribute to the pet by posting an adorable snap of the duo on International Dog Day in August 2019, and he’s also shared a few videos of Dodger showing off his singing skills. The dog is even featured in the Nanny Diaries star’s Twitter header photo.

{ let bidders = [‘a9’, ‘ix’, ‘iris’]; // create a requestManager to keep track of bidder state to determine when to send ad server // request and what amazonSlots to request from the ad server var requestManager = { adserverRequestSent: false, }; //loop through bidder array and add the bidders to the request manager: bidders.forEach( function( bidder ) { requestManager[bidder] = false; } ); // return true if all bidders have returned function allBiddersBack() { var allBiddersBack = bidders // get the booleans from the object .map( function( bidder ) { return requestManager[bidder]; } ) // get rid of false values – indicates that the bidder has responded .filter( Boolean ) // if length is equal to bidders, all bidders are back .length === bidders.length; return allBiddersBack; } // handler for header bidder responses function headerBidderBack( bidder ) { // return early if request to adserver is already sent if ( requestManager.adserverRequestSent === true ) { return; } // flip bidder back flag if ( bidder === ‘a9’ ) { requestManager.a9 = true; console.log(‘second promise a9 ready’); } else if ( bidder === ‘ix’ ) { requestManager.ix = true; console.log(‘second promise ix ready’); } else if ( bidder === ‘iris’ ) { requestManager.iris = true; console.log(‘second promise iris ready’); } // if all bidders are back, send the request to the ad server if ( allBiddersBack() ) { resolve( url ); } } if ( typeof apstag == ‘object’ && apstag ) { apstag.fetchBids({ slots: [{ slotID: window.prerollTag[vHash], mediaType: ‘video’ }] }, function( bids ) { console.log( “AMI jwp amazon bid callback”, new Date().getTime(), bids ); window.jwpBids[vHash].amazon = true; if ( bids.length > 0 ) { //If we have received any bids back try { console.log(“AMI jwp amazon bid request ad”, bids[0].encodedQsParams); url = url + ‘&scp=’ + bids[0].encodedQsParams; } catch ( e ) { console.log(e); } } else { console.log(“AMI jwp amazon no bids”); } headerBidderBack(‘a9’); }); } else { headerBidderBack(‘a9’); } headertag.cmd.push( function() { headertag.retrieveVideoDemand( [{‘htSlotName’: ‘preroll’}], function( demand ) { console.log( “AMI jwp IX callback”, demand ); if ( ‘undefined’ !== typeof demand.preroll && demand.preroll.length ){ window.jwpBids[vHash].ixBids = demand.preroll[0].targeting.price; console.log( ‘AMI jwp IX Bids’, new Date().getTime(), demand.preroll[0].targeting ); var vastURL = new URL( url ); var vastParams = new URLSearchParams( vastURL.search ); if ( vastParams.has( ‘cust_params’ ) ) { var custParams = new URLSearchParams( vastParams.get( ‘cust_params’ ) ); } else { var custParams = new URLSearchParams(); } var keys = Object.keys( demand.preroll[0].targeting.price ); for ( var key of keys ) { custParams.set( key, demand.preroll[0].targeting.price[key][0]); } vastParams.set( ‘cust_params’, custParams.toString() ); vastURL.search = vastParams.toString(); url = vastURL.toString(); } headerBidderBack(‘ix’); } ); } ); // Get main item context data window.irisContext.getContext(jwplayer(el).getPlaylistItem().mediaid).then(function(data) { // Encode the context data console.log( ‘AMI jwp IrisTV Bids’, new Date().getTime(), data.context ); // Replace the server url with the context data (this is for simple ad requests), // If you have the serverUrl dynamically configured, then you will need to append the context data // under cust_params, so this is just for testing purpose if ( data.context && Object.keys( data.context ).length ) { var vastURL = new URL( url ); var vastParams = new URLSearchParams( vastURL.search ); if ( vastParams.has( ‘cust_params’ ) ) { var custParams = new URLSearchParams( vastParams.get( ‘cust_params’ ) ); } else { var custParams = new URLSearchParams(); } custParams.set( ‘iris_context’, data.context.join(‘,’)); vastParams.set( ‘cust_params’, decodeURIComponent( custParams.toString() ) ); vastURL.search = vastParams.toString(); url = vastURL.toString(); } headerBidderBack(‘iris’); }); setTimeout(function(){ resolve( url ); }, 10000); }); } var player_jwplayer_Zo2zIa1W_zhNYySv2_div = jwplayer(el).setup(videoParams).on(“ready”, function(){ var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var playerInstance = jwplayer(el); ns_.StreamingAnalytics.JWPlayer( playerInstance, { publisherId: “6036076”, labelmapping: “ns_st_pu=”AMI”, c3=”Us Weekly”, ns_st_ge=”” + decodeURIComponent( “%2Anull” ) + “”, ns_st_ia=”” + decodeURIComponent( “%2Anull” ) + “”, ns_st_ce=”” + decodeURIComponent( “1” ) + “”, ns_st_ddt=”” + decodeURIComponent( “%2Anull” ) + “”, ns_st_tdt=”” + decodeURIComponent( “%2Anull” ) + “””, }); }).on(‘adsManager’, (e) => { var vHash = ‘ami’ + decodeURIComponent( ‘Zo2zIa1W’ ); const { adsManager, videoElement } = e; const iasConfig = { anId: ‘928572’, campId: `${jwplayer().getWidth()}x${jwplayer().getHeight()}`, // This is dynamic based on player dimensions, but can be hard coded chanId: window.prerollTag[vHash], placementId: ‘Open Auction’, pubOrder: ‘Video’, pubId: ‘Direct’ }; if (googleImaVansAdapter) { googleImaVansAdapter.init(window.google, adsManager, videoElement, iasConfig); } }).on( ‘time’, function( e ) { var id = this.id; var pct = Math.round( e.position ); if ( ! window.amiPlayersData ) { window.amiPlayersData = {}; } if ( ! window.amiPlayersData[id] ) { window.amiPlayersData[id] = { m3: false, m10: false }; } if ( window.amiPlayersData[id][‘m3’] === false && pct >= 3 ) { window.amiPlayersData[id][‘m3’] = true; console.log( ‘3sec played: ‘, id ); window.dataLayer = window.dataLayer || []; dataLayer.push( {event: ‘JWPlayEvent’, jwTime: ‘3s played’} ); } if ( window.amiPlayersData[id][‘m10’] === false && pct >= 10 ) { window.amiPlayersData[id][‘m10’] = true; console.log( ’10sec played: ‘, id ); window.dataLayer = window.dataLayer || []; dataLayer.push( {event: ‘JWPlayEvent’, jwTime: ’10s played’} ); } }).on( ‘complete’, function( e ) { if ( window.amiPlayersData && window.amiPlayersData[ this.id ] ) { window.amiPlayersData[ this.id ][‘m3’] = false; window.amiPlayersData[ this.id ][‘m10’] = false; console.log( ‘clear played: ‘, this.id ); } }).once(“play”, function(){ var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var playerInstance = jwplayer(el); loadIrisPlugin(playerInstance, playerInstance.getConfig().plugins[“https://ovp.iris.tv/plugins/jwplayer/v2/iris-jwplayer8.adaptive.min.js”]) }).on(‘play’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); // skip if the video was paused and trying to resume if (jwplayer(el).getState() !== ‘idle’ && jwplayer(el).getState() !== ‘complete’) { return; } window.permutive.track(“VideoPlay”, { play_id: el, //this will stay constant for all of the events emitted during the same video play video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language:”English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video play”); }).on(‘complete’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); // skip if the video was paused and trying to resume if (jwplayer(el).getState() !== ‘idle’ && jwplayer(el).getState() !== ‘complete’) { return; } window.permutive.track(“VideoComplete”, { play_id: el, //this will stay constant for all of the events emitted during the same video play video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video event:”, e); window.lock_25 = false; window.lock_50 = false; window.lock_75 = false; window.lock_100 = false; }).on(‘time’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); var progress = (e.currentTime/e.duration).toFixed(2); if ( (0.25 === progress && false === window.lock_25) || (0.5 === progress && false === window.lock_50) || (0.75 === progress && false === window.lock_75) || (100 === progress && false === window.lock_100) ) { window.permutive.track(“VideoProgress”, { play_id: el, //this will stay constant for all of the events emitted during the same video play progress: Number(progress), video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); if ( 0.25 === progress ) { window.lock_25 = true; } if ( 0.5 === progress ) { window.lock_50 = true; } if ( 0.75 === progress ) { window.lock_75 = true; } if ( 1 === progress ) { window.lock_100 = true; } console.log(“Permutive video play progress ” + progress); } }).on(‘mute’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.permutive.track(“VideoEvent”, { play_id: el, //this will stay constant for all of the events emitted during the same video play event: (e.mute) ? “sound off” : “sound on”, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() } }); console.log(“Permutive video event:”, e); }).on(‘fullscreen’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.permutive.track(“VideoEvent”, { play_id: el, //this will stay constant for all of the events emitted during the same video play event: (e.fullscreen) ? “fullscreen on” : “fullscreen off”, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() } }); console.log(“Permutive video event:”, e); }).on(‘ready’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); console.log(jwInfo); window.lock_25 = false; window.lock_50 = false; window.lock_75 = false; window.lock_100 = false; window.permutive.track(“VideoLoad”, { play_id: el, //this will stay constant for all of the events emitted during the same video play video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video load event”); }).on(‘adPlay’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); window.adInfo = e; var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.adlock_25 = false; window.adlock_50 = false; window.adlock_75 = false; window.adlock_100 = false; window.permutive.track(“VideoAdPlay”, { play_id: el, //this will stay constant for all of the events emitted during the same video play ad: { duration: Math.round(window.adInfo.duration), creative_name: window.adInfo.adtitle, ad_id: window.adInfo.adId, title: window.adInfo.adtitle, video_type: “instream” //outstream }, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video ad play”); }).on(‘adClick’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); window.permutive.track(“VideoAdClick”, { play_id: el, //this will stay constant for all of the events emitted during the same video play ad: { duration: Math.round(window.adInfo.duration), creative_name: window.adInfo.adtitle, ad_id: window.adInfo.adId, title: window.adInfo.adtitle, video_type: “instream” //outstream }, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); console.log(“Permutive video ad click”); }).on(‘adTime’, (e) => { var el = decodeURIComponent( “jwplayer_Zo2zIa1W_zhNYySv2_div” ); var vHash = “ami” + decodeURIComponent( “Zo2zIa1W” ); var jwInfo = jwplayer(el).getPlaylistItem(jwplayer(el).getPlaylistIndex()); var progress = (e.position/e.duration).toFixed(2); if ( (0.25 >= progress && false === window.adlock_25) || (0.5 >= progress && false === window.adlock_50) || (0.75 >= progress && false === window.adlock_75) || (0.95 >= progress && false === window.adlock_100) ) { window.permutive.track(“VideoAdProgress”, { play_id: el, //this will stay constant for all of the events emitted during the same video play progress: Number(progress), ad: { duration: Math.round(window.adInfo.duration), creative_name: window.adInfo.adtitle, ad_id: window.adInfo.adId, title: window.adInfo.adtitle, video_type: “instream” //outstream }, video: { duration: Math.round(jwInfo.duration), // in seconds name: jwInfo.title, video_id: decodeURIComponent( “Zo2zIa1W” ), description: jwInfo.description, published_at: new Date(jwInfo.pubdate).toISOString() }, enriched_data:{ tvchannel: decodeURIComponent( “Us%20Weekly” ), //tv channel name language: “English”, //language of the content type: “video”, keywords: jwInfo.tags.split(“,”), //keywords for the page } }); if ( 0.25 >= progress ) { window.adlock_25 = true; } if ( 0.5 >= progress ) { window.adlock_50 = true; } if ( 0.75 >= progress ) { window.adlock_75 = true; } if ( 0.95 >= progress ) { window.adlock_100 = true; } console.log(“Permutive video ad progress ” + progress); } }).setPlaylistItemCallback(function(item, index) { return waitForAmazon // Wait until Amazon is loaded. .then(() => performAsyncBidding( player_jwplayer_Zo2zIa1W_zhNYySv2_div, item, index ), () => { console.log(“AMI JWP bidding FAILER”); }) // External bidding. .then(tag => { // Update the playlist item. console.log(“AMI jwp new headerbid”, tag); return Object.assign({}, item, { adschedule: [{ tag, offset: “pre” }] }); }).catch(function(e){ console.log(“AMI jwp bidding failed”, e); return item; }); // If bidding fails, use unmodified playlist item. });; clearInterval(checkJWReady); } }, 500); })(); ]]>

Evans isn’t the only one to fall in love with Dodger, as fans have also carved out a place for the pup in their hearts. The internet’s interest in the dog nearly caused many to lose it when Evans shared a picture that some thought indicated the pet had passed on.

“Really missing this guy right now,” he captioned a Twitter pic of the duo in 2017, where the actor was shown softly smiling as he cuddled up with Dodger. After his post attracted worried responses from fans, the Fantastic Four star clarified his initial statement.

“To be clear, he’s alive and well,” Evans wrote. “Just thousands of miles away for the next couple months.”

Seth Rogen was among those who freaked out over Evans’ earlier remark, tweeting at the Marvel star: “F–k dude. I was, like, crying.”

The Lightyear voice actor’s connection with his sweet pup even inspired one of his chest tattoos.

“I mean that’s probably one of the purest relationships I have,” Evans said during an appearance on Jimmy Kimmel Live! in October 2020. “[Getting my tattoo of his name] didn’t take much convincing. I’ll never regret that tattoo. I’ve regretted a few in my life, not that one.”

Scroll down below to see some highlights from Evans and Dodger’s friendship through the years:

Read The Full Article Here


trick photography
No One Born After 1990 Has Seen 30/42 Of These Iconic Classic Movies
No One Born After 1990 Has Seen 30/42 Of These Iconic Classic Movies
Kelly Rutherford Greets Her Followers With a White Heart and Coffee
Kelly Rutherford Greets Her Followers With a White Heart and Coffee
Bindi Irwins Mom Terri Gives Health Update on Her Daughter After She Skipped Family Gala
Bindi Irwins Mom Terri Gives Health Update on Her Daughter After She Skipped Family Gala
Who Dies in The Devil Wears Prada 2? See Movie Spoilers
Who Dies in The Devil Wears Prada 2? See Movie Spoilers
Watch Star Wars Hayden Christensen Embrace His Inner Anakin for May the 4th
Watch Star Wars Hayden Christensen Embrace His Inner Anakin for May the 4th
10 Huge Blockbusters That People Hate
10 Huge Blockbusters That People Hate
Ive Seen All I Need To See review – grief in a rearview mirror
Ive Seen All I Need To See review – grief in a rearview mirror
These Dungeons & Dragons Movies Are the Best Gateway to the TTRPG
These Dungeons & Dragons Movies Are the Best Gateway to the TTRPG
American Idols Top 3 Revealed — Are The Right Singers Going To The Season 24 Finale? – TVLine
American Idols Top 3 Revealed — Are The Right Singers Going To The Season 24 Finale? – TVLine
Watson: What Wouldve Happened in Season 3
Watson: What Wouldve Happened in Season 3
The Pitts Biggest Season 2 Plotline Is Something That Happens A Lot, Says A Real ER Doctor – TVLine
The Pitts Biggest Season 2 Plotline Is Something That Happens A Lot, Says A Real ER Doctor – TVLine
Gilmore Girls Star Scott Patterson Makes Blunt Confession About Rorys Boyfriends
Gilmore Girls Star Scott Patterson Makes Blunt Confession About Rorys Boyfriends
Greta Van Fleet Share Cryptic Video + Fans Think They Might Have Broken Up
Greta Van Fleet Share Cryptic Video + Fans Think They Might Have Broken Up
Iron Blossom Reveals 2026 Lineup with LCD Soundsystem and Jack White
Iron Blossom Reveals 2026 Lineup with LCD Soundsystem and Jack White
Shakira Brings Her Biggest Hits To Free Rio de Janeiro Show
Shakira Brings Her Biggest Hits To Free Rio de Janeiro Show
ARIA Hall of Fame 2026 Inductees Revealed as Awards Mark 40th Anniversary
ARIA Hall of Fame 2026 Inductees Revealed as Awards Mark 40th Anniversary
The Winners of the 2026 Pulitzer Prizes
The Winners of the 2026 Pulitzer Prizes
THE NEW YORK TIMES Selects the Best Books of 2026 So Far
THE NEW YORK TIMES Selects the Best Books of 2026 So Far
Summary, Spoilers + Review: The Crash by Freida McFadden – The Bibliofile
Summary, Spoilers + Review: The Crash by Freida McFadden – The Bibliofile
No Preview
The Crash: Recap, Summary & Spoilers – The Bibliofile
Kendall Jenner's  Dog Accessory Was the Highlight of Her Coachella Outfit
Kendall Jenner's $58 Dog Accessory Was the Highlight of Her Coachella Outfit
We Channeled the '90s in Guess For Coachella Weekend – Starting at
We Channeled the '90s in Guess For Coachella Weekend – Starting at $29
I Spent an Afternoon With an Aritzia Stylist—My Spring Wardrobe Has Never Looked Better
I Spent an Afternoon With an Aritzia Stylist—My Spring Wardrobe Has Never Looked Better
Pretty Dresses, Tops, and Sandals From Nordys End of Season Sale
Pretty Dresses, Tops, and Sandals From Nordys End of Season Sale
DANCES WITH BLOOD 2026 KICKOFF ANNOUNCEMENT SPONSORED BY JOYHORROR ENTERTAINMENT | HNN
DANCES WITH BLOOD 2026 KICKOFF ANNOUNCEMENT SPONSORED BY JOYHORROR ENTERTAINMENT | HNN
CINEMA EPOCH UNLEASHES SASQUATCH WITHIN, A PSYCHOLOGICAL HORROR THRILLER — NOW STREAMING ON YOUTUBE, COMING SOON TO TUBI AND FAWESOME | HNN
CINEMA EPOCH UNLEASHES SASQUATCH WITHIN, A PSYCHOLOGICAL HORROR THRILLER — NOW STREAMING ON YOUTUBE, COMING SOON TO TUBI AND FAWESOME | HNN
Bayview Entertainment Invites Audiences into a Blurred Reality with the Release of Nightmare Symphony This May | HNN
Bayview Entertainment Invites Audiences into a Blurred Reality with the Release of Nightmare Symphony This May | HNN
Michael Joys DEAD Afterlife Enters Final Kickstarter Week: Only ,500 Needed to Bring Macabre Vision to Life | HNN
Michael Joys DEAD Afterlife Enters Final Kickstarter Week: Only $1,500 Needed to Bring Macabre Vision to Life | HNN