class_docstr: Beta Torch probability distribution.
  
  :param logits: the logits for both mean and standard deviation.
  :param action_space: the underlying gym.spaces action space.
docstr: implementation of :class:`~maze.distributions.torch_dist.TorchProbabilityDistribution` interface
          
docstr_tok: ["implementation","of",":","class",":","`","~maze.distributions.torch_dist.TorchProbabilityDistribution","`","interface"]
code: def sample(self) -> torch.Tensor:
      """implementation of :class:`~maze.distributions.torch_dist.TorchProbabilityDistribution` interface"""
      normal_sample = self.dist.rsample()
      return self._squash(normal_sample)
  
imports: import math
  from typing import Sequence
  import numpy
  import gym
  import torch
  from gym import spaces
  from torch.distributions import Beta, kl_divergence
  from maze.core.annotations import override
  from maze.distributions.torch_dist import TorchProbabilityDistribution
  from maze.distributions.utils import EPSILON
  from maze.perception.perception_utils import convert_to_torch
label_desc: Use image node_id 5 for calling the BetaProbabilityDistribution obj's underlying member method code with example usage: obj.sample() and returns: self