def render_with_pymol(parsed_file, output_path=None, width=1200, **kwargs):
    """Render ESIGenReport with PyMol"""
    import pymol
    pymol.cmd.reinitialize()
    pymol.cmd.read_pdbstr(parsed_file.data.pdb_block, parsed_file.name)
    pymol.cmd.bg_color('white')
    pymol.preset.ball_and_stick()
    pymol.cmd.set('sphere_scale', 0.2, 'symbol H')
    pymol.cmd.set('float_labels', 'on')
    pymol.cmd.set('label_position', (0, 0, 5))
    pymol.cmd.alter('not symbol C+H+O+N+P+S', 'vdw=3')
    pymol.util.cbag()
    pymol.cmd.color('grey', 'symbol C')
    pymol.cmd.label('not symbol C+H+O+N+P+S', 'name')
    if output_path is None:
        output_path = parsed_file.path + '.png'
    pymol.cmd.png(output_path, width, ray=1, quiet=2, **kwargs)
    pymol.cmd.refresh()
    pymol.cmd.sync(2.5)
    return output_path
