updates for function pointers