The basic function.