Slashdot Mirror


Smokescreen, a JavaScript-Based Flash Player

Tumbleweed writes "How to make Steve Jobs your mortal enemy: Smokescreen, a 175KB, 8,000-line JavaScript-based Flash player written by Chris Smoak at RevShock, a mobile ad startup, and to be open-sourced 'in the near future.' From Simon's blog: 'It runs entirely in the browser, reads in SWF binaries, unzips them (in native JS), extracts images and embedded audio, and turns them into base64 encoded data: URIs, then stitches the vector graphics back together as animated SVG. ... Smokescreen even implements its own ActionScript bytecode interpreter.' Badass!"

66 of 356 comments (clear)

  1. Impressive by Dan+East · · Score: 5, Insightful

    Very impressive! However, given Flash's performance issues even when compiled natively for mobile devices, this is more of a proof of concept then something usable.

    --
    Better known as 318230.
    1. Re:Impressive by Monkeedude1212 · · Score: 3, Insightful

      Hey, now those flash ads can bog you down EVEN MORE, and just in case you left Javascript on with flash uninstalled, you get the benefit of it as well!

      Honestly, I think this will force most people to turn Javascript off if nothing else.

    2. Re:Impressive by Anonymous Coward · · Score: 3, Interesting

      However, given Flash's performance issues even when compiled natively for mobile devices, this is more of a proof of concept then something usable.

      What performance issues are they?

      However wrong your claim might be, it is absolutely true that dynamic HTML 5 performance (e.g. SVG/ Canvas) is horrific on the iPhone / iPad, where such a technology would have the most utility. Which is why it's a bit humorous that Jobs talks it up, while delivering a replacement technology (he was talking up HTML5, right?) that is dramatically slower than the Android implementation.

    3. Re:Impressive by bsDaemon · · Score: 5, Insightful

      most people or most nerds? I don't think most people even get ABP, even if they run Firefox, let alone actually know what Javascript is or that its something that can be disabled. Turn off JS these days, and practically nothing works. better would be a plug-in which just prevents Smokescreen from being loaded in particular.

    4. Re:Impressive by Dan+East · · Score: 5, Informative

      Unfortunately, you're exactly right. From the blog:

      (sic)"It’s stated intention is to allow Flash banner ads to execute on the iPad and iPhone, but there are plenty of other interesting applications (such as news site infographics)."

      There would be a lot of money to be made in cajoling those flash-based banner ads onto iPad / iPhone. Yep, lots o' money...

      --
      Better known as 318230.
    5. Re:Impressive by Demonantis · · Score: 4, Informative

      Adblock seems to make smokescreen stop working.

    6. Re:Impressive by JackAxe · · Score: 5, Interesting

      Flash 10.1 runs quite well on my Nexus One. Overall its performance is excellent for being beta and for me it's been a non-issue.

      The mobile player uses the GPU for both animation(vector, bitmap, etc.) and video playback. JavaScript also runs fast on my Nexus, but when compared to Flash 10.1, it's downright slow.

    7. Re:Impressive by nine-times · · Score: 4, Insightful

      On a side note, why are people suddenly so in love with the term "infographic"? Can't we call it a "graph" or "chart"?

    8. Re:Impressive by Twillerror · · Score: 2, Insightful

      Bog down? And an 8000 line JS program isn't?

      Are you running a lappy 386 like in the video?

      I don't know about you, but I go to sites with lots of flash and it doesn't bog me down...maybe your on dialup or something....

      You can be annoyed with Flash ads sure...but on a free content site like this one STFU...it's free...just ignore them. Bunch of cry babies out there.

      And like it our not Flash has brought me and millions countless hours of enjoyment thru YouTube, Hulu, etc. Even strongbad was cool in it's day. In the words of John Kimble....stop whining!

      Btw, I don't see the webcam tag in HTML 5...or microphone tag....so Flash isn't going anywhere at least for a few years. Heck HTML is barely out.

    9. Re:Impressive by jmorris42 · · Score: 5, Interesting

      > Honestly, I think this will force most people to turn Javascript off if nothing else.

      Which just might be the point. Turn JS off and the browsing experience is degraded to the point of unusability on most of the current net. So now the choice is Flash delivered via the plugin or Flash delivered via this JS thing which will be REALLY slow and make i* products look underpowered when compared to competing products viewing the same content. Game, Set and Match. Flash is now going to run on Apple products, His Steveness's only remaining choice is does he want it to run well or not.

      --
      Democrat delenda est
    10. Re:Impressive by God'sDuck · · Score: 4, Insightful

      On a side note, why are people suddenly so in love with the term "infographic"? Can't we call it a "graph" or "chart"?

      It is because your boss's nephew knows how to make graphs and charts. Never word anything in a way that might cause you to be replaced by your boss's nephew.

    11. Re:Impressive by xfurious · · Score: 2, Interesting

      Op, just got one of the ad demos to work on my phone and it runs just fine, no slowdown in scrolling, a very slight slowdown when zooming. 20MB of free memory though, with one tab in Safari, Phone, and Springboard running.

    12. Re:Impressive by truthsearch · · Score: 4, Informative

      it is absolutely true that dynamic HTML 5 performance (e.g. SVG/ Canvas) is horrific on the iPhone / iPad

      It is absolutely not true. We're developing an HTML5 replacement for a flash app on a major brand's website and it's working perfectly on the iPad and iPhone. It's got moving images, videos, downloaded fonts (CSS3), etc. We haven't run into a single performance problem.

      (Can't speak for SVG, though. Never tried it).

    13. Re:Impressive by RulerOf · · Score: 3, Informative

      "Turn off JS these days, and practically nothing works."

      Um, Nope, that is wrong. I run both noscript and adblock plus and after giving my bank and the biggies like youtube permissions through both the only sites that don't work are the ones that are a bit dodgy in the first place.

      It's much, much simpler to just install Chrome and not have to worry about javascript performance.

      --
      Boot Windows, Linux, and ESX over the network for free.
    14. Re:Impressive by oasisbob · · Score: 4, Insightful

      On a side note, why are people suddenly so in love with the term "infographic"? Can't we call it a "graph" or "chart"?

      First, infographics isn't a new term, it's a been around since the early 1990s, at least.

      Second, infographics is a more inclusive category than charts or graphs. Charts and graphs tend to be quantitative in nature. A good example of an infographic is a map: calling a subway map a chart is a stretch. (Yes, I'm aware of nautical and aeronautical charts.)

      So, when Dan suggests that Flash has legitimate uses for infographics, I think that's a perfectly legitimate use of the term.

    15. Re:Impressive by Anonymous Coward · · Score: 2, Insightful

      This is true... there's so much good stuff on the Internet these days that uses JS, it's not something that anyone would want to turn off, unless they're some kind of paranoid nerd who's probably only surfing on his text-only internet browser anyways.

    16. Re:Impressive by aliquis · · Score: 4, Insightful

      Times I've used a webcam or mic on flash: 0

    17. Re:Impressive by BluBrick · · Score: 2, Funny

      First, infographics isn't a new term, it's a been around since the early 1990s, at least.

      Since the early 1990s? That's like, ancient! Did they even have English back then?

      --
      Ahh - My eye!
      The doctor said I'm not supposed to get Slashdot in it!
    18. Re:Impressive by clone53421 · · Score: 2, Interesting

      I don’t use noscript. I use ABP.

      When confronted with an annoying script, I’ll identify the script and block it in particular... and if I’m feeling particularly cranky, I’ll smack their entire site with a ##script, like this:

      snopes.com##script (god damn you Snopes, for your copy protection script...)

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    19. Re:Impressive by nine-times · · Score: 2, Insightful

      Maps are considered "infographics"? That's crazy. Why aren't maps just "maps"?

    20. Re:Impressive by mike260 · · Score: 2, Insightful

      It dares to have different key bindings to Firefox, and it actually renders pages as intended?

      Unacceptable!

    21. Re:Impressive by Spewns · · Score: 2, Insightful

      most people or most nerds? I don't think most people even get ABP, even if they run Firefox, let alone actually know what Javascript is or that its something that can be disabled. Turn off JS these days, and practically nothing works. better would be a plug-in which just prevents Smokescreen from being loaded in particular.

      Disabling javascript at the user's will? Forget ABP, that's where noscript comes in! And who doesn't use noscript?

      I used NoScript for awhile, but it became annoying and I couldn't really identify any real benefits for myself to use it. ABP is enough for me in terms of making the web bearable. Whatever security benefits I allegedly get from running NoScript become meaningless when confronted with the fact that I don't browse around bizarre and obscure websites in the first place.

    22. Re:Impressive by nine-times · · Score: 5, Funny

      Oh, thanks helpfriendinator. Without your inforeply I wouldn't have been able to think outside the box to architect a synergistic model of Web 2.0 paradigms that enable me to comprehend the emergent properties of the cloud.

    23. Re:Impressive by 10101001+10101001 · · Score: 2, Insightful

      It's much, much simpler to just install Chrome and not have to worry about javascript performance.

      The day one doesn't have to worry about javascript performance is the day we all have infinite computing resources. Until then, there's always someone out there writing either too much or too badly javascript, most often for a pointless (to me) reason. This latter part is a big reason to disable javascript. The other two? Annoying ads and malware (which might well be residing in said annoying ad). Of course noscript. flashbock, cookie safe, etc aren't silver bullets--there's still visited site tracking, meta-refresh, and lots of other possibly nasties (like buggy image, video (with html5), or html processing code). But, reasonably, even if I had infinite resources to run whatever random javascript (or flash or java) some web site wants ran, why would I aid what is still overly heavily used as a mechanism to spam myself?

      --
      Eurohacker European paranoia, gun rights, and h
    24. Re:Impressive by 10101001+10101001 · · Score: 2, Informative

      Because people have a strong obsession with infornography on the internet.

      --
      Eurohacker European paranoia, gun rights, and h
    25. Re:Impressive by nicknamesarefunny · · Score: 2, Informative

      Or Opera 10.6, which supposedly outperformed Chrome in the PeaceKeeper benchmark tests (http://www.downloadsquad.com/2010/05/31/forget-the-potato-opera-10-6-speeds-past-google-chrome-6/)

    26. Re:Impressive by nine-times · · Score: 2, Insightful

      Yeah, but even that is mostly a graph, I think. A clever graph. A graph with funny little things thrown in.

  2. Flash without the memory leak !?!? by opencity · · Score: 2, Insightful

    This sounds better than the actual Flash player! I've been playing with canvas in an effort to get away from Actionscript but this, especially open sourced, sounds like the best of both worlds.

    --
    Physics is like sex: sure, it may give some practical results, but that's not why we do it.
    1. Re:Flash without the memory leak !?!? by JackAxe · · Score: 3, Informative

      The problem with a JS based player, besides being very limited, is performance and of course cross-browser/cross-platform inconstancies. HTML 5 AJAX is way slower than Flash Player 10.1 on my Nexus One. It's slower across the board when compared to Flash, weather it's a newer PC, or old Mac.

      What memory leak? From my experience, especially in recent years, it's been the developer's inexperienced bloat that's been an issue. It's up to you to manage your loops, listeners, objects created, and so on, as to keep memory and cpu usage low. It just takes competence and experience, which most of these so called Flash guys lack.

      Flash Player 10.1 mobile actually prevents the poorly developed bloat from using up too many resources, even on the pages that have more than one SWF running at once. The desktop version will hopefully implement this soon.

      Your comment about canvas to me says you're not that experienced with Flash. ActionScript 3's drawing API is a huge step up from Canvas. It's years ahead of SVG, or canvas, and it's not at the mercy of the browser for what it can do.

    2. Re:Flash without the memory leak !?!? by opencity · · Score: 2

      As far as I know Flash Player 10.1 has not fixed the graphics memory leak which was not caused by delveloper bloat. Flash was not releasing memory from loaded graphics according to Macromedia/Adobe. This was a big problem for developing browser based state pages. That may, however, be fixed in 10.1. Were you aware of that problem? Curious why my comment says I'm not experienced. The main problem I have with Actionscript is mobile penetration, and if canvas allows me to port client games and animations to iPhone/Pad it would be a big plus right now. jQuery takes the ugly out of javascript and makes lots of client friendly dynamic menu fades and swooshes easy that I used to push for Flash (to avoid javascript). That allows all updatable content in the html for easy (client?) update eliminating an XML import. I don't think Actionscript is going away and I do think html5 will eventually catch on, I just find it better for me as little guy to play both sides of some when-megacorps-rumble holy war.

      --
      Physics is like sex: sure, it may give some practical results, but that's not why we do it.
  3. Apple just updated its EUA... by Anonymous Coward · · Score: 5, Funny

    Apple just updated its EUA to exclude javascript, Steve Jobs reports that this will improve the user experience

    1. Re:Apple just updated its EUA... by v1 · · Score: 2, Insightful

      If apple was being honest about the reasons for not including flash, things like problems with sandboxing and concurrent app access etc, this probably inciodentally solves those problems so Steve may not actually care.

      And it's a EULA btw.

      --
      I work for the Department of Redundancy Department.
    2. Re:Apple just updated its EUA... by ChefInnocent · · Score: 3, Insightful

      Like others have said, you are confused about JS. It is a beautiful language that has been cursed by the browser. The only features I'd like to add would be (explicit) multi-threading, and typing beyond var. JS is a truly object oriented language that offers dynamic scoping and functions as first class objects. I understand there are some command-line interpreters that actually allow those, but I've only used it in the browser. If any of those languages you mentioned had made their introduction via the browser, you'd hate them equally or more so.

    3. Re:Apple just updated its EUA... by Anonymous Coward · · Score: 2, Interesting

      Ah yes. Python, where instead of optional semicolons, we get non-optional intelligent whitespace.

      Last incomprehensible python bug was caused by a mix of tab and spaces in just the wrong line causing indentation to apply to the wrong portion, causing a switch to fail, causing a DOS of our server.

      Thanks Python and your arrogant refusal to even support a braces mode.

      Thankfully, this idiocy can be handled to some extent with a wrapper.

  4. I only wonder how the speed will be by gearloos · · Score: 3, Insightful

    I just wonder how efficient it will be for the rendering times. Some flash is already bordering on bloatware. Add in taking it apart and re-rendering and I start to wonder if its worth it to wait that long.

    --
    "Computers are a lot like Air Conditioners" "They both work great until you start opening Windows"
    1. Re:I only wonder how the speed will be by Shikaku · · Score: 2, Informative

      http://smokescreen.us/demos/sb45demo.html

      Just open it in Chrome. I can't tell the difference between the flash and the javascript version.

      (Also oddly enough the source code is right here? http://smokescreen.us/demos/js/smokescreen.0.1.3-min.js or did he mean he'll clean it up...)

    2. Re:I only wonder how the speed will be by Shikaku · · Score: 2, Interesting

      http://pastebin.com/vuRxVfbx

      Here it is after running it through a javascript beautifier. ... From what I see, yeah, he implemented it.

  5. No, they'll be Steve Jobs' Best Friend by mveloso · · Score: 5, Insightful

    Jobs doesn't care about flash content, he cares about flash. If the flash content can be used without flash itself, well, that'd be great.

    Not sure why, but slashdot's headline writers are starting to sound more and more like tabloid writers. Why not say "Smokescreen to Adobe: flash off!"

    1. Re:No, they'll be Steve Jobs' Best Friend by famanz · · Score: 5, Insightful

      Jobs doesn't care about flash content, he cares about flash.

      Sorry but that's just not true. Did you miss the recent uproar about the new iPhone SDK agreement? The new agreement bans any applications that were not natively written in C/C++/Objective C. This updated agreement was released only weeks before Adobe CS5 was to debut with advanced tools that would allow the porting of flash apps to the iPhone. If flash itself was the problem then such a clause would not have been added.

    2. Re:No, they'll be Steve Jobs' Best Friend by mini+me · · Score: 2, Interesting

      Who says it has anything to do with Adobe or Flash?

    3. Re:No, they'll be Steve Jobs' Best Friend by GreyLurk · · Score: 2, Interesting

      No, it was compiling to native ARM bytecode from AVM3 bytecode. Very different. Apple does have a problem with Flash Content, because it threatens their API Lockin. All of the fluff about user experience and running slowly is just a smokescreen for the lockin problem. If it was a performance problem, due to bad software development, then they would catch it in their App Review process before putting it on the store.

    4. Re:No, they'll be Steve Jobs' Best Friend by Achromatic1978 · · Score: 3, Informative

      No he doesn't. Steve cares that Flash provides the end user a rich framework for applications or games that would be easy to circumvent the App Store with.

  6. Javascript trumps Flash? by RLBrown · · Score: 4, Insightful

    My take is that this proves, perhaps to a significant degree if not completely, that Javascript/HTML5 can do anything that a native Flash engine could do . So why build in Flash? Go straight to Javascript/HTML5. I do not think Steve Jobs will be unhappy about this at all.

    --
    -- Perhaps I see less than some, but more than many.
    1. Re:Javascript trumps Flash? by JackAxe · · Score: 3, Interesting

      HTML 5 AJAX can do what Flash was doing years back. It can't do what Flash does now.

  7. the iPad needs this by Lord+Ender · · Score: 3, Insightful

    A certain sort of video (the kind you can't find on Youtube) comes primarily in Flash format. This sort of video seems to drive the adoption of new technology. If this can bring said video to the iPad, sales are certain to engorge.

    --
    A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
  8. Good test of 'open platform' by DavidR1991 · · Score: 4, Interesting

    Adobe insisted Flash is an open platform: This will be a good test of their claims. Will they compete admirably against a JS re-implementation of their own wares (and improve their own runtime - hence Smokescreen as competition to foster improvement) or will they fight dirty?

    1. Re:Good test of 'open platform' by TeknoHog · · Score: 2, Interesting

      There are already other open-source Flash players, notably Gnash, and the GPU-powered one that was discussed on /. recently. None of these is a complete implementation, but I like to think that competition between different OS projects will make things better.

      --
      Escher was the first MC and Giger invented the HR department.
    2. Re:Good test of 'open platform' by Jer · · Score: 3, Insightful

      Why should Adobe care? As far as their history goes, I think Adobe would love it if they didn't need to support a flash plug-in. They certainly don't seem to want to invest a lot of time/money into keeping it up-to-date.

      Adobe makes their money on Flash development tools. They give the plug-ins away for free to sell more dev kits. I could see them kicking up a fuss over open source compilers, but not interpreters.

  9. Slow on Firefox by maccodemonkey · · Score: 4, Informative

    This is running like a dream on my Mac running Safari, but I tried it on a co-workers Mac running Firefox, and it crawled...

    Just for reference if you're trying this on Firefox.

    1. Re:Slow on Firefox by Anonymous Coward · · Score: 2, Informative

      Slow on Firefox at initial attempt.
      Then I turned off AdBlock (as it visibly recommends), refreshed and it's as fast as it gets.
      So it's possibly some anti-adblock check, not a problem with Firefox.
      Which makes sense because those guys are advertisers and would like to see adblock go away.

    2. Re:Slow on Firefox by BZ · · Score: 2, Informative

      It also uses broken browser-sniffing, so it's not possible to easily test what it would behave like on development Firefox versions....

    3. Re:Slow on Firefox by tralfaz2001 · · Score: 3, Informative

      I had the same experience the first time I attempted to load the page. It was absolutely glacial. Then ,I tried to load the page a second time and it seemed to run just fine. I'm guessing some timing was altered when certain chunks of data got cached on the client. Try letting the page begin rendering, then reload the page. It worked for me on FF 3.6.3 on a MacBookPro3,1 2.6GHz. Curious if anyone else has similar results.

  10. Gordon? by Jorl17 · · Score: 5, Informative

    What about Gordon? That one *is* open-source. Is it different from what TFS refers to in terms of goals (not current state)?

    --
    Have you heard about SoylentNews?
  11. Why on apple.*? by The+MAZZTer · · Score: 4, Insightful

    Other than Apple's non-support of Flash on the iPad, this has nothing to do with Apple. This is an Adobe Flash emulator written in JavaScript.

  12. Re:Great news for Intel and AMD. by Pharmboy · · Score: 4, Funny

    Crap like this is why we need to buy a new computer with a faster processor every year, just to do the same shit we were able to do last year.

    But this is a NEW way to watch those 15 year old videos! That alone makes it better.

    --
    Tequila: It's not just for breakfast anymore!
  13. Re:Too slow or just me? by pushing-robot · · Score: 4, Informative

    Runs fine for me (OS X 10.6.3/Safari 4.0.5).

    CPU usage averages 15% (of one core) on the Strong Bad demo, except during the first bit with the Cheat, where it spikes to ~40%.

    Using Flash 10, CPU usage averages 8-9%, but during the same scene jumps to ~30%.

    Which is pretty damn impressive for an emulator. And proves that there's really nothing Flash can do that HTML 5 can't.

    --
    How can I believe you when you tell me what I don't want to hear?
  14. Rube Goldberg by MrTripps · · Score: 5, Funny

    It opens SWF binaries, unzips them (in native JS),follows a little ball down a wire track, knocks over domino that begins a chain of falling dominoes, the last of which frightens a chicken into laying an egg, which rolls down a ramp, cracks into a frying pan, flipped by a spring loaded spatula onto a plate with bacon attached to a remote control car, that drives it to the kitchen table. Then a counter weight pulls up the plate, puts on the table, then extracts images and embedded audio and turns them into base64 encoded data. That is a lot of trouble just because Jobs is being prissy about what runs on his over priced under powered eye candy.

    --
    "I'm not a quack, I'm a mad scientist! There's a difference." - Dr. Cockroach
  15. I'm not so sure about that... by N0Man74 · · Score: 3, Insightful

    I don't buy your take on things.

    I think it has a lot more to do with being the gatekeepers for content (and continuing to get a cut of the profit) than with flash content itself. They don't want people using apps and games on their platform that you didn't buy from the app store, hence no Flash or Java on the i-devices.

    1. Re:I'm not so sure about that... by Theaetetus · · Score: 2, Informative

      I don't buy your take on things.

      I think it has a lot more to do with being the gatekeepers for content (and continuing to get a cut of the profit) than with flash content itself. They don't want people using apps and games on their platform that you didn't buy from the app store, hence no Flash or Java on the i-devices.

      ... except that they built in the ability to turn a web page into an app that sits on the home screen. So, for example, I have a Google Latitude app, and a Google Calendar app. Furthermore, it's not about profit, because there are many, many free apps in the Apple App Store. Flash does seem to be the clincher.

  16. Re:no. by Shikaku · · Score: 4, Interesting

    The point was to prove HTML5+Javascript can do everything Flash can do.

    Now the next step is to do it better.

  17. And Adobe can't do this, why? by tk77 · · Score: 5, Interesting

    This works pretty well under the released version of Safari for OSX 10.6. In fact, in some of the samples where the flash version is provided as well, the Flash ones use more CPU then the HTML5 ones.

    There is a bit of degradation in some of the graphics, but hey its better then not seeing the graphics (ok, that really depends ... if its an ad and you prefer not to see it ... whatever).

    Now the question is, why can't Adobe add a feature to the Flash authoring tool to just output the HTML5 and whatever is needed, that smokescreen does in the browser?

    From some of the samples it would seem like you could just "drop in" the converted version with minimal loss of quality and reach a much larger audience.

    I would still prefer Flash, for the most part, go away, and this won't help that too much (initially anyway). But it seems like this would be a good way for many web sites to start using HTML5 now, while support and implementations mature, as well as giving all the Flash devs time to learn to write natively in HTML5.

  18. Re:Too slow or just me? by JackAxe · · Score: 4, Informative

    And proves that there's really nothing Flash can do that HTML 5 can't.

    No it doesn't. These are simple animation examples from years back . StrongBad was originally created in Flash 4. It's 2010, we're now using Flash 10.1. Flash has evolved quite a bit.

    Here's a list of what Flash can do, that HTML 5 can not; http://www.wirelust.com/2010/05/21/10-things-flash-can-do-today-that-html5-cant/

  19. Awesome! by Weezul · · Score: 2, Funny

    So you're saying iPhone will get piss slow JavaScript based Flash while the Flash Blocker on my N900 functions normally? Awesome! :)

    --
    The Christian religion has been and still is the principal enemy of moral progress in the world. -- Bertrand Russell
  20. Size by fsterman · · Score: 2, Interesting

    Using Packer (with variable renaming and 64bit encoding) it get's down to 105,177 -over 30% reduction in size. Using Gzip, it could easily get below 50K.

    --
    Is there anything better than clicking through Microsoft ads on Slashdot?
  21. Re:More efficient?? by clone53421 · · Score: 2, Interesting

    I noticed the same thing on Windows XP, 1.8 GHz... although it was a much less drastic 2-3 sec. difference.

    --
    Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
  22. Comment removed by account_deleted · · Score: 4, Insightful

    Comment removed based on user account deletion