add System switch function