function-ized it.