func pointers actually don't work - needs fix