return NULL when bag is empty