new function registration method - still in transition