why can't it be empty ?