add initfuncs