code: def propose(self):
          
      
          prop_dist = self.proposal_distribution.lower()
          if  prop_dist == "normal":
              self.stochastic.value = rnormal(
                  self.stochastic.value,
                  self.adaptive_scale_factor *
                  self.proposal_sd,
                  size=self.stochastic.value.shape)
          elif prop_dist == "prior":
              self.stochastic.random()
docs: This method is called by step() to generate proposed values
          if self.proposal_distribution is "Normal" (i.e. no proposal specified).