collision intelligente et refonte du code