added variable, broadened to support.function