added method to derive function handle