code: def version(self):
      assert (
          self._version is not None
      ), "bug: singularity version accessed before check() has been called"
      return self._version
  
imports: from pathlib import Path
  import subprocess
  import shutil
  import os
  import hashlib
  from snakemake.common import get_snakemake_searchpaths, is_local_file, parse_uri
  from snakemake.exceptions import WorkflowError
  from snakemake.logging import logger
  from snakemake_interface_common.utils import lazy_property
label_desc: Use image node_id 3 for calling the Singularity obj's underlying member method code with example usage: obj.version() and returns: self