developing new swithcing mode