handles empty case