modified isEmpty()