switch extention