def forward(self, inputs):
        '''
            Whiten reward to have zero-mean, unit variance.
            Also clamps output to be within 5 standard deviations
            Args:
                inputs -- batched reward input. batch size at dim 0
            Returns:
                0 mean std 1 weightened batch of observation
        '''
        mean = (self.running_sum / self.count)
        std  = torch.clamp((self.running_sumsq / self.count \
                                  - mean.pow(2)).pow(0.5), min=self.eps)
        normed = torch.clamp((inputs - mean) / std, -5.0, 5.0)
        return normed

            Whiten reward to have zero-mean, unit variance.
            Also clamps output to be within 5 standard deviations
            Args:
                inputs -- batched reward input. batch size at dim 0
            Returns:
                0 mean std 1 weightened batch of observation
        
surreal/model/reward_filter.py