code: def _sign_input(cls, input_, message, key_pairs):
          
          if isinstance(input_.fulfillment, Ed25519Sha256):
              return cls._sign_simple_signature_fulfillment(input_, message,
                                                            key_pairs)
          elif isinstance(input_.fulfillment, ThresholdSha256):
              return cls._sign_threshold_signature_fulfillment(input_, message,
                                                               key_pairs)
          else:
              raise ValueError("Fulfillment couldn't be matched to "
                               'Cryptocondition fulfillment type.')
docs: Signs a single Input.
  
              Note:
                  This method works only for the following Cryptoconditions
                  currently:
                      - Ed25519Fulfillment
                      - ThresholdSha256.
  
              Args:
                  input_ (:class:`~bigchaindb.common.transaction.
                      Input`) The Input to be signed.
                  message (str): The message to be signed
                  key_pairs (dict): The keys to sign the Transaction with.