code: def precipitation(self, val):
          Precipitation is a value in [-1,1]"""
          try:
              data, thresholds = val
          except ValueError:
              raise ValueError("Pass an iterable: (data, thresholds)")
          else:
              if data.shape[0] != self.height:
                  raise Exception("Setting data with wrong height")
              if data.shape[1] != self.width:
                  raise Exception("Setting data with wrong width")
              self.layers['precipitation'] = LayerWithThresholds(data, thresholds)
docs: Precipitation is a value in [-1,1]