Copyright (C) 2009, 2010, 2011  Stéphane Sire