updated gfx switcher to include proper acknowledgement that most the code is not mine