do not call unnecessary functions