infos from Asla with some fixes from Alexandre