24 November 2008

Opera Mini 3 disappointment

As you know, I own a Nokia 5310, a recent S40 5th edition mobile phone.
You'll be surprised to know I received it with Opera Mini 3 installed (and not the latest one, Opera Mini 4).
Perhaps, like Apple, Nokia doesn't think Opera Mini 4 will fit on their OS and will consume too much battery.

Anyway, I'm currently making a mobile version on my upcoming website.
Of course, I test it under my phone and others simulator/emulator/SDK.
My websites use XHTML+CSS, which is very common (I should say mandatory!) for mobile website, and Opera is known for its great support on CSS.

Well...I must say I was VERY disappointed to see Opera Mini 3 is not like that...
I can't believe what I saw on my mobile screen :
- partial backround color
- wrongly interpreted CSS
- bad support of HR (yes...this old HTML keyword)
Give it a try :
just open 'Mobile test by Cameron Moll' on Opera Mini 3. It's dismaying!
Note this 'Mobile test' is a reference for Opera...when they talk about Opera Mini 4.

Opera Mini 3 is NOT a browser : Opera proxy gets your page, optimizes it for mobile (and from what I saw, VERY badly) and sends this optimized page to Opera Mini.

Some will say 'hey, update to Opera Mini 4'
I'm sorry but I won't be able to say people browsing my mobile site : 'hey, update to Opera Mini 4'

The last hope would be Opera Mini 3 bundled with french Nokia 5310 is a bugged version.

Yes, this post is here because I'm angry...

19 November 2008

'Get Flash Lite Player'

Via Dale & Biskero, Flash Lite 3.1 player will be distributable and installable like the classic Flash Player.

coming soon, the Get Flash Lite Player button to add on mobile site.

Perhaps we could think Adobe want to make a first step with this deployment mode before the final one : Flash Player classic on mobile.
So, in 2010, you should be able to install the 'same' Flash Player everywhere the 'same' way : clicking the button !

18 November 2008

Warning, Rabbits did it again !

Rayman Raving Rabbids TV Party is now available...I can't wait to play with it!!!!!

ps: sorry, it's not Flash Lite related....but it's a so fun game!!

17 November 2008

Flash Player 10 and AIR on mobile end 2009

Via Adobe, Adobe and ARM team up to produce Flash Player optimized for ARM processors.
According press release, we should see this "in the second half of 2009".
Since a lot of mobiles are based on ARM, can we expect the end of Flash Lite for 2010 ?

It's another step of the Adobe's OpenScreenProject initiative where ARM is one of the partners

14 November 2008

Strange preview with DC3 update 7

After reinstall Vista (for the 8th times!), I forgot to update Device Central upto update #7.
It's when I wanted to try under Sony Ericsson phones that I noticed it.

So I updated to update 7 and I so lost my mind.
Until now I tested my games under 3110, 5200, 7373, 5310 and N95 without problems.
But with this update, preview under 5310, N95 and 6300i became like preview under Sony Ericsson, in browser mode.
Don't know why....and I must say I have a real 5310 where my games work like under update #6
I'll see with DC4 when I'll get it.

See my logo screen

5200, no problem


N95 under FlashLite 2

N95 under FLash Lite 3, no problem

SE C902 (browser mode)

12 November 2008

Chumby on the news

It's fun...while I'm looking at Chumby, it comes in the news!

Via Dale, Chumby is now available on Australia throught Internode. Also coming soon on Japan.

Internode also sells 'skins' for Chumby

At the same times, I discover the Chumby 2009.
The most noticeable change is the long awaited 'reboot after power outage'.

05 November 2008

Thanks Chumby !

Yesterday I won 12 months of free access to the Lynda.com Online Training Library.
It's so great! I already know which trainings I'll see first!

How did I win this ? Dale launched a caption competition 1 week ago and I won...thanks to the Chumby!

When I said that to my wife she asked me about the Chumby.
I so linked her to some reviews on the Web and.... I hope DC4 has the Chumby template because she really liked it :)

I just need to find a way to buy them...since I'm out of USA, I can't buy them from Chumby's store...too bad :(
It seems I'll have to add a favorite search on eBay...
Contact me if you know how to import them in France !

16 October 2008

Why you shouldn't use setInterval

Some days ago, I was finishing a title screen for my coming game.
It's pretty simple : wait 3 sec then jump to next frame.

To do that I mainly use setInterval on web based Flash :
idInterval = setInterval( myFunc, 3000)
and, on myFunc :
idInterval = null
delete idInterval

Well...as you should know, it's really important to clean everything not wanted when you finished a job. Since AS's object haven't a destructor, I do it on onUnload.
It works! ... but not when you use an interval.

Yes, I don't know why (a internal listener not cleaned ?) but onUnload isn't called when you have an interval EVEN when you nulled and deleted it (see below).

So, I replace my setInterval with
onLoad :
initTimer = getTimer( )
onEnterFrame :
if ( (getTimer()- initTimer) >= 3000 ) gotoAndPlay(nextone)

As always, if you have some hints, I'm here!

03 October 2008

Flash Lite will have access to S60 OS !

...Well soon ;)

From Biskero, Nokia released a new document on S60 5th Ed with some API for Flash Lite.
I quickly downloaded the SDK but, unfortunatly, the S60FlashLiteExamples folder is empty.

Wait and see...
With NFL and this, I really start to think SE's Capuchin made Nokia move !

NFL and cache issue

With my new phone and Mocket's SWF2NFL, I tested NFL deployment.

2 ways to do it under Apache :

  1. add 'application/vnd.nokia.flashlite-archive[insert_tab]nfl' on the file 'mime.types' (see TypesConfig in your 'httpd.conf' to know where it is) then restart apache with apachectl restart

  2. create/update a '.htaccess' file on the folder when you uploaded the NFL and add 'AddType application/vnd.nokia.flashlite-archive nfl' inside (works only if .htaccess are authorized via 'AllowOverride All' in the 'httpd.conf')

I uploaded 'test.nfl' on the correct folder of my server and downloaded it to my mobile throught Opera Mini.
After some tests, I found a bug and so updated 'test.nfl'.
I then tried to download the new version to my mobile but I was unable to overwrite the previous one, I so gave it a new name 'test1'.

Problem step 1 :
I don't have 'test' and 'test1' but 2 'test' files.
I so thought it was because I used the same version number.
So I made a new 'test.nfl' with a new icon and a new version number.

Problem step 2:
Download, call it 'test2' and....3 'test' files on the folder with the same icon !

Problem step 3:
Ok...I deleted these 3 files, cleared cache from Opera and restarted download to another folder...Still the old one!
I'm lost : old one was 12ko, new one is 23ko...Opera tell me it is about to download a 23ko file and...I have the old 12ko on my mobile ?!

Answer :
After some googling, I found a link to clear 'nokia cache'
I followed the instructions, restart the download and....finally got my 23ko file !

I must say I'm a bit disappointed...
1/ an user can't update (overwrite) a file
2/ if cache isn't cleared, user still download the old one

Note, I don't know the life time of the cache but it can be an issue.
I wasn't aware of download caching, it's my first experience : always delete a file and clear cache before downloading the new version.
It still strange for me to have to clear Opera cache AND Nokia cache to download the right file.

I also know why the files kept 'test' as name, it's the FL-Name which is used, not the filename...but I must say it's strange to have 3 differents files with the same name !
Why not use this FL-name and FL-version to update the file, not create a new one ? or use a FL-UID ?

Well, first step to easier deployment....for easier ONE SHOT deployment. Forget about update.

If your phone doesn't work the same way, tell me !

My new phone

Yesterday I finally received my 5310 XpressMusic (the E71 was too expensive for me, hélas).

I choose this one because it's a S40 5ed FP1 of course.

I took a 500mb limit plan so I'll finally be able to test XML feature from Flash Lite on the web.

I like this phone, especially its weight!
But I must say its keyboard is very different from my N70's one : I first thought it was a toy !
We'll see how long I will use it !

01 October 2008

Garbage collector

I was trying to optimizing my MobileCairngorm (more info soon) when I googled to a very useful article on Adobe's Mobile Developer Center : Memory management and optimizations in Flash Lite
So bad I missed this one (from June 2007!)
Of course, others parts of the article are interesting but I was fighting with memory so...

Note some parts of this article can also be found in Flash Lite Help (link to LiveDoc)

The two things I noticed are
  1. GCollector runs every 60secondes...I was unable to see it works on Device Central's memory monitor.
  2. You can delete classes for unloaded SWF.

the point 2 is very interesting so I made some tests

  • delete class B which inherits from class A will only delete class B
  • it seems object of deleted class B will still have class A properties, events, functions (read will become something like an object of class A)
  • article talk about loaded SWF, so I tried with movieclips inside my main swf, to see if it works the same : if I delete a class on movieclip 1 (on unload) and then attach movieClip 2, this new movieclip doesn't reload the class. It seems a deleted class is lost for ever...in the SWF.

18 September 2008

NFL on S40 5th FP1

According yesterday news, NFL is supported on Nokia S40 5th edition FP1 and newer.
I was browsing which phones will be interested to buy and only found ONE with the required MIME type : the Nokia 5220 XpressMusic
I browsed others phones' UAprofile and no vnd.nokia.flashlite-archive.
Perhaps Nokia will release an update for these phones...

EDIT (080922) : From Bill Perry and Biskero, it seems NFL works on more than only the 5220...so it's strange UAProfiles aren't correct.

17 September 2008

Nokia Flash Lite package

From Mariam, it seems Nokia finally released a way to distribute Flash Lite application on Serie 40!
Their NFL (forget football) is no more than a zip file.
Easy to make but a so big step on games/applications releasing!
Of course, this package format is only supported by newly phones (S40 5th FP1+).

From comment on FL-Root, it also seems it handles multiple SWFs...cool!

Can't wait to test it!! I hope Nokia's emulator handles it! I can't buy one phone every month (and SE C905 is already waiting).

I only have the regret they don't use a JAR file (like SE's capuchin). How many times before distributers will add support to .NFL file ? Perhaps we'll see soon a www.getNFL.com !
And you'll also need to make a .NFL for S40 and a .SIS for S60 (using Kuneri online SWFPack?)
Minor points but perhaps Nokia will add .NFL support on S60 one day (my next dream!!)

09 September 2008

Screen sizes

Last week, I finally found some times to look a recorder eSeminar of Dale Rankine (Mocket) : Tips and Tricks for Effective Adobe Flash Lite.

In this cool eSeminar, Dale gave this tips :
Set Stage to minimum screen size, then bleed visual assets around the stage to allow for screen resizing

I'm actually using fsCommand2("FullScreen", true) to avoid problem with screensize but Dale came again with an alert
SE devices will not scale up but will scale down

So the first tips is finally a great idea but when you see all the different screen sizes existing....wait a minute...which screen sizes EXACTLY ?

I so jumped to Bill Perry's Flash Lite enable phones sheet
I only develop for FL2.0+, since I'm not an AS1 guy so I looked to all FL2.0+ phones screen size and, well, screen sizes do not change as much as I though.
It seems I kept FL1.x phones enable screen sizes in memory.

Let's see which screen sizes exist

  • 800x352 : 1 phone (Nokia E90)*

  • 320x240 : 1 phone (Nokia E71...my future phone ? to replace my Samsung I320)

  • 320x239 : 2 phones (BREW LG)

  • 240x320 : 73 phones (56 Nokia + 17 SE)

  • 240x300 : 8 phones (BREW)

  • 240x266 : 9 phones (SE Cxxx phones ...even on the C905-capuchin inside)*

  • 176x220 : 1 phone (SE V640i)

  • 176x204 : 9 phones (BREW)

  • 128x160 : 6 phones (only Nokia S40 3rd FP2 phones)

*E90 also has a secondary display which is 240x320

So...what does this mean ? What I see is that a lot of phones are 240x320 (or near)...
Personnaly, I'll try now to make applications in 240x320 with a 240x266 effective view (27 pixels up and down for other phones)
"Wait! you loose 20 phones!"
Well, if you really want to support the others size, just use some math ;)
128x160 is a 240x300 scaled down
176x204 is a 240x278 scaled down
176x220 is a 240x300 scaled down
320x240 is a 240x320 flipped...you'll need to handle that (and the controls!)
320x239 is near a 320x240, no ? ;)
for the E90...I don't know if FL applications could be launched on the secondary display. If so, it's a 240x320!

This post is what I'm actually testing...I don't know if you should do the same.
I just point out some details which could give you some ideas for your futur development. It's up to you and the main goal of your application.

oh...and the Chumby need a 320x240 SWF ;)

04 September 2008

Summer ending !

Finally, I get back my web access.
This summer I moved to a better place, with forest and river.
A very good place to work when I'm at home!
The hardest part was...to get my Net connection back!
But it's now there and so, I was finally able to look at the eSiminar I was waiting for ages : Project Capuchin !

I can't wait to see Capuchin everywhere!
I'm a great lover of Nokia phones (and their Symbian OS) but I must admit I'll probably change my phone for a SE C905!!

Nokia, please! make a Capuchin for S40 & S60 !!!! :)
Java is far easier for Actionscript developer than this ugly Symbian C++.
And I still can accept there isn't an easy way to deploy FLite application on S40 phones, the most sold platform (at least, here in France)

Side note : I didn't receive feedback on my Flash Lite Phones Browser, so I'll probably won't update it anymore, it's useless.

12 June 2008

Flash Lite Phones Browser

Some times ago, I talked about the application I made to retrieve and sort Nokia phones. It's an AIR application I was finally able to clean for a first release.

Look at the right, you should see the 'badge' to install and launch it.
I'm waiting for your comments if you find some bugs or simply if you find it unuseful.

I plan to add support WURFL, following Alessandro's hint.
Hope you'll like it.

30 May 2008

Nec's Flash Lite player

From EETimes.com, Nec has developed a Flash Lite player alternative.
Perhaps another project borns from Adobe Open Screen ? I don't think so, it seems too much finalized for me...I doubt they made it in 1 month.

We'll see in august.

28 May 2008

BlueStreak on Open Screen Project

Bluestreak, one of the two compagnies I tried to work with last year, see the Open Screen Project like a great opportunity

It will propel the development of Flash content for mobile devices

I really need to find a phone with their MachBlue Mobile platform.
It's an alternative to Flash Lite for Symbian S60, Windows Mobile 5/6, Linux, Brew and Java.

Samples here

Mobitween on Verizon

From Biskero, Mobitween will now sell their Flash Lite content throught their portal Mobigamz on Verizon.

Cool news for Mobitween, I really liked the contact I had with Mobitween some times ago.

First step with Jarpa

Here are the steps to successfully compile Jarpa.
It's very basic and I assume you already know it but, for people like me who fought so many hours with the security domain issue, I could be interesting...
I currently use JarpaDebug and not newly Jarpa_105 since Felipe removed web support on this last release...and S40 3rd FP2 only support web ;)

First download Netbeans mobility or full edition.
Unzip the file where you want to install it

Like I don't like wher software make a lot of folders in My Document folder, I personnaly created an 'user' folder where I unzipped Netbeans and modified netbeans/etc/netbeans.conf to define my userdir :

To run, Netbeans needs JDK not the JRE, so you have to download and install it.

You can now run Netbeans.

If problem occurs like a message box talking about JDK Home (like I had the first time I tried, because another JRE version was installed), you'll have to modify netbeans/etc/netbeans.conf to define JDK home :

Now, you have to download a S40 or S60 Java SDK.
Note : you'll have to sign the Forum Nokia to download it, and after 15 days, you'll have to request a free serial number to continue.
I personnaly used S40 3rd edition FP 2 because it's Nokia 5200's one (a common S40 here in France).

Relaunch Netbeans to add this SDK to your Netbeans.
Select Tools> Java Platforms
Click the Add Plaform... button
We want to use a Java ME MIDP Plaform emulator
Netbeans automatically detects the SDK
Finish platform installation
You're now ready to develop for S40 3rd Edition FP2

I created a folder 'projects' when I'll add my future projet

Download JarpaDebug and unzip to your own projects folder

On Netbeans, File > Open project... and choose Jarpa folder
Don't be afraid by the Error dialog box, Jarpa was made for the Sun Java Wireless Toolkit, not a Nokia SDK so it complains it doesn't found the Wireless Toolkit platform. Let's change that !
Right click on Jarpa project you just opened, Properties.
On platform, select the Emulator Platform you want, like Series 40 SDK 3rd Edition Feature Pack 2
Ok, it's now done, you could launch Jarpa using F6 or the big green arrow or Run>Run main project

"Application is not from a trusted supplier. Continue anyway ?"
Welcome in the great world of Security Domain ;)
Since your JAR file isn't signed, you're allowed to do a lot of thing : if you continue ("yes"), you'll see some "Application access set to not allowed".
Like I said, it's security issue : Nokia doesn't want you to launch malicious software without to be sure what's you're doing.
To resolve this, follow my post according Security Domain.
For this S40 3rd Edition FP 2 emulator
- exit Jarpa
- go to "Menu"
- go to "Apps"
- highlight "JarpaDebug"
- use left soft key "Options"
- On the menu, select "Application access"
- then "Data access"
- then "Add and edit data"
- select "Ask every time"

You problably saw some options like "Ask first time only" and "Always allowed" are greyed : they are disabled because Jarpa isn't signed.
Note : since I don't tried to sign a JAR yet, I don't know if you can automatically define to "Always allowed" after that. Let me know if you try!

To avoid this, you could also (on emulator only), set the Trusted domain to "maximum" on emulator preferences.

Still on the emulator, relaunch "JarpaDebug", you're now able, with "Options" left soft key, to open it from the Web : you'll have to exit Jarpa to launch Web
From memory and from phone memory doesn't work on emulator and I didn't tried them on a real device yet.

These settings are saved so you won't have to redefine then every launch.

23 May 2008

Flash Lite 2 on Sony Ericsson phones

I was reading latest white paper on Projet Capuchin when I saw SE had a Flash Lite dedicated page

You should read Developers' Guidelines - Flash Lite 2.0 , it's very interesting...well, sort of...

I think the most important to read is

There are two main implementations in Flash Lite enabled Sony Ericsson phones:
• The “stand alone” model. Flash Lite exists as a separate media application in the phone. In some Sony Ericsson phones, this model is used for wallpaper or screensaver applications.
• The “browser based” model. Flash Lite essentially runs as a plugin within the resident browser of the phone.
This model allows a user to access Flash Lite content via an Internet connection without needing to open a separate application for viewing. It is also the default way of viewing Flash content via the phone file manager. This model is implemented in all Flash-enabled Sony Ericsson phones.


Network access from Flash Lite is only permitted for Flash files running in the browser plugin.

So, if I understood correclty, Flash Lite 2 applications will be launched throught SE's browser Acces Netfront 3.5

Something came to my mind :
Capuchin....It's pure assumption but it could be a Netfront embedded on a midlet. It's what every Flash(Lite) wrapper do, so you only have to make call to localhost (raw method) from the Flash file and pseudo browser will intercept it and respond.
It's also what I'm trying to do on Jarpa

After sandbox, MIDP2 security domains!

I was fighting with Jarpa not working on my phone (N70) nor emulator (5300) when I found the Java Security Domains page at Forum Nokia.

In fact, my code was working but, as it's not signed (Netbeans's own certificate doesn't seems to work on S40), no writing (Edit user data) was able.

I so followed the 2 tutorials on Forum nokia (S60 or S40) and I'm now happy to make Jarpa work on my phone and emulator! So let's try to add some cool features !

After Kuneri great post on FLite3 sand box problem, I thought it was impossible to make something more than graphical application or wallpaper on mobile with FLite!

29 April 2008

Flash Lite vs Platform

I just finished my little application (coming soon) which retrieves Nokia phones data from Nokia web site
My first try gave me strange informations.
I always throught platform version defined the Flash Lite version.
I found some cases it's not true :
  • 6131, 6131 NFC, 6234 aren't Flash Lite enable while others S40 3rd Ed FP1
    don't know why but 6131 are Flash Lite enabled for FlashLite4Nokia
  • 2680 Slide isn't Flash Lite enabled while others S40 5th Ed FP1 are
  • 6300i is 3.0 while others than 2680 slide S40 5th Ed FP1 are 2.1
  • 6210 Navigator is 2.1 only while others S60 3rd Ed FP2 are 3.0

Don't know if Nokia made mistake, which I doubt.
From now, I'll always check FlashLite version, not platform version

Edit : Alessandro replied to my post in his blog, sorry for that my setup was wrong about comments

18 April 2008


2 years ago, I tried to understand Java for mobile.
My plan was to add functionalites to the FL player throught a proxy.
I quickly stopped because Java was a mess for me.
I saw SWF2GO, Kiss60, etc.. but nothing for Java (Symbian C++ is insame!), so for 'any' phones.

Then I learnt AS3 throught Flex (yeah, not throught Flash).
I know see what a class is, what an event is and I must say J2ME doesn't afraid me anymore.

Then Jarpa appeared some times ago...I noticed it but, at this moment, I didn't have time to play with (see my posts, you'll see I wasn't really 'here' for a long time)

So I downloaded NetBeans, Sun's Wireless Kit and still trying to download Nokia's SDK (got a problem registering!)
It's hard because it's not the same world : I'm more from a "look how well it's animated"-world than "look how much lines I used to print Hello World"-world.

I don't plan to code in pure J2ME, I only would like to contribute to Jarpa project.
See you in Jarpa's Google group ;)

17 April 2008

With sound, at last!

Yeah! I'm happy!
After some hours of works, I was finally able to add sounds to Poulpy game

Actually, it only works on S60 because I was unable to use 3GP like it sould be used : I used native sound objects.

So, this is what I discovered
1/ convert
Don't let Flash convert your sound for you, convert it yourself to 11KHz mono.
I got better results. Perhaps it's because of my source files, I don't know.

2/ short sound
Don't think a short sound would be a good idea.
I first tried to use very short song (some milliseconds) for blop, beep and others sounds like that.
I was very disappointed to hear all sounds but the short ones!
I remembered the problems my wife has with her samsung phone : 1 or 2 sec are always skeeped at the start and the end of her mp3.
So I added 100 ms blank at the start of the sound. Same problem.
So, I tried to add 100 ms blank at the end of the sound...Problem solved!
My (short) sounds are now with 100ms at the start and at the end.
Don't know if the blanks are needed or if the sound must be at least some ms.
I use the freeware Audacity for this.

remember ? NOTHING is easy to do on Flash Lite ;)
note I used a N70 with installed FL2 player, so perhaps it's different on others phones.
If you're not agree with this, just tell me.

16 April 2008

Sound, another nightmare with Flash Lite!

5 days ago, Flash Lite 2.0 : Sound for Nokia S60 and Serie 40 devices document was released.
I was happy because 2 days before I was looking how to add sound on Poulpy.
So I donwloaded and read it...10 minutes later, I was very sad : even sound isn't as easy as it should!

(click to enlarge)

Q: what do you need to do to have Music and Sound on S60 AND S40 ?
A: Midi and bundled 3GP !

Sure...no problem for MIDI but, for 3GP it's another story, like I discovered in the document :

First, 3GP is a ....video format! cool, let play a video for its sound... who said memory problem ?
Second, a video must be on the screen, visible, to be loaded and played by FL player. Cool, I need to make a 3GP 1x1 pixels...err...which tool ?!

my my my...why everything must be so difficult ? ;)
at this time, my game has sound only on S60 since I didn't find a suitable tool to make a 3GP from a bmp and a wav...
I'll try MikSoft Media Converter since it's use FFMpeg or make a batch to access FFMpeg directly.

14 April 2008

Adobe Aligns Mobile and Platform Operations

[from Adobe press]

I think you should read this press release from Adobe.

The introduction is the most important part :
an integrated technology platform and runtime environment for personal computers (PCs), mobile handsets and consumer devices

Some times ago, I write a post on an Richard Legget's article 'Future of Flash Lite'.

Add to this an old post of Ted Patrick on Tamarin :

tamarin-tracing is a VM for constrained environments (read mobile and devices) so that just about anything with a CPU and memory can execute ActionScript 3 Bytecode under low memory and low CPU conditions

I'm now sure Flash Lite will 'soon' disappear to be replaced by Flash.
We'll see what 'soon' is for Adobe ;)

Flash Lite contest 2007 results

The results for the Playyoo Flash Lite contest are finally known!

I'm really happy to see Bog Frog from Ekleptica won!
I really liked this game ! I even think it should be sold !
And it seems I'm not the only one if I read the comments ;)

Congratulations Ekleptica !

For info, these results are from the 2nd part of the contest.
The 1st part was for 'the most downloaded games' which I really disliked but learnt a lot. I planned to write a post about this but I think it will deserve me ;)
The 2nd part is from professional judges, I was really waiting for it. Not for my poor little game but to see what professionnals see as good/great games.

So, I'm very happy to see who is the winner of the America contest : the game I personally liked the much!

12 February 2008

My first game!

It's here! my first Flash lite game !

I finally uploaded it on Playyoo for the contest I talked about some...months ago!

You can even preview it.

Thanks to Nadia, a great friend, for the gfx ;)