Copyright (C) 2010 - Pierre-Henri Trivier