refactor foireux