basic require define functionality