def METHOD_NAME(self):
    """
    Make all public-facing function of the underlying hier block implementation available as members.
    Does not take the __getattr__ route, as that doesn't permit autocompletion to work.
    """
    for member in dir(self._impl):
        # can't necessarily use hasattr on an object that hasn't finished going through the __init__ chain
        if member.startswith("_") or member in dir(self):
            continue
        setattr(self, member, getattr(self._impl, member))