implement the pdf viewer