started to add 6 shaders to handle most default cases