Synthesis of "correct" adaptors for protocol enhancement in component based systems