bp: support any number of arguments for custom functions