def __init__(self, name: str, genesis_txn_path: str, cfg: dict = None) -> None:
LOGGER.debug('<STR_LIT>', name, genesis_txn_path, cfg)<EOL>self._cfg = cfg or {}<EOL>validate_config('<STR_LIT>', self._cfg)<EOL>self._auto_remove = self._cfg.pop('<STR_LIT>') if self._cfg and '<STR_LIT>' in self._cfg else False<EOL>if '<STR_LIT>' not in self._cfg:<EOL><INDENT>self._cfg['<STR_LIT>'] = True<EOL><DEDENT>if '<STR_LIT>' not in self._cfg:<EOL><INDENT>self._cfg['<STR_LIT>'] = <NUM_LIT:0><EOL><DEDENT>self._name = name<EOL>self._genesis_txn_path = genesis_txn_path<EOL>self._handle = None<EOL>LOGGER.debug('<STR_LIT>')<EOL>
Initializer for node pool. Does not open the pool, only retains input parameters.

:param name: name of the pool
:param genesis_txn_path: path to genesis transaction file
:param cfg: configuration, None for default;
    i.e., {
        'auto-remove': bool (default False), whether to remove serialized indy configuration data on close
    }