if(empty()) throw exception()