can't really cater for undefined functions.