add untested shade method