code: def calculable(self):
          
          self._mode = ""
          if self.kwargs["T"] and self.kwargs["P"]:
              self._mode = "TP"
          elif self.kwargs["T"] and self.kwargs["rho"]:
              self._mode = "Trho"
          elif self.kwargs["T"] and self.kwargs["h"] is not None:
              self._mode = "Th"
          elif self.kwargs["T"] and self.kwargs["s"] is not None:
              self._mode = "Ts"
          elif self.kwargs["T"] and self.kwargs["u"] is not None:
              self._mode = "Tu"
          elif self.kwargs["P"] and self.kwargs["rho"]:
              self._mode = "Prho"
          elif self.kwargs["P"] and self.kwargs["h"] is not None:
              self._mode = "Ph"
          elif self.kwargs["P"] and self.kwargs["s"] is not None:
              self._mode = "Ps"
          elif self.kwargs["P"] and self.kwargs["u"] is not None:
              self._mode = "Pu"
          elif self.kwargs["rho"] and self.kwargs["h"] is not None:
              self._mode = "rhoh"
          elif self.kwargs["rho"] and self.kwargs["s"] is not None:
              self._mode = "rhos"
          elif self.kwargs["rho"] and self.kwargs["u"] is not None:
              self._mode = "rhou"
          elif self.kwargs["h"] is not None and self.kwargs["s"] is not None:
              self._mode = "hs"
          elif self.kwargs["h"] is not None and self.kwargs["u"] is not None:
              self._mode = "hu"
          elif self.kwargs["s"] is not None and self.kwargs["u"] is not None:
              self._mode = "su"
          elif self.kwargs["T"] and self.kwargs["x"] is not None:
              self._mode = "Tx"
          elif self.kwargs["P"] and self.kwargs["x"] is not None:
              self._mode = "Px"
          return bool(self._mode)
docs: Check if inputs are enough to define state