code: def secret_hex(self, secret_hex):
          
          if secret_hex is None:
              raise ValueError("Invalid value for `secret_hex`, must not be `None`")
          if secret_hex is not None and not re.search('^(0[xX])?[0-9a-fA-F]{32,64}$', secret_hex):
              raise ValueError("Invalid value for `secret_hex`, must be a follow pattern or equal to `/^(0[xX])?[0-9a-fA-F]{32,64}$/`")
  
          self._secret_hex = secret_hex
docs: Sets the secret_hex of this PreSharedKey.
          The secret of the pre-shared key in hexadecimal. It is not case sensitive; 4a is same as 4A, and it is allowed with or without 0x in the beginning. The minimum length of the secret is 128 bits and maximum 256 bits.
  
          :param secret_hex: The secret_hex of this PreSharedKey.
          :type: str