A new switching-level approach to multiple-output functions synthesis