refacto mod0 for better maintenane + future filtring use