make PIL optional