code really written on stage of ngeurope :p