add requirement: PIL