add func loading