



'''simple docstring'''





def lowerCAmelCase    (__A    ,      __A):



     """simple docstring"""



     _a           =    ''''''
     for i in table:
          res += inp[i - 1]
     return res




def lowerCAmelCase    (__A):



     """simple docstring"""



     return data[1:] + data[0]




def lowerCAmelCase    (__A    ,      __A):



     """simple docstring"""



     _a           =    ''''''
     for i in range(len(__A)):
          if a[i] == b[i]:
               res += "0"
          else:
               res += "1"
     return res




def lowerCAmelCase    (__A    ,      __A):



     """simple docstring"""



     _a           =    int('''0b''' + data[0] + data[-1]    ,      2)
     _a           =    int('''0b''' + data[1:3]    ,      2)
     return bin(s[row][col])[2:]




def lowerCAmelCase    (__A    ,      __A    ,      __A    ,      __A    ,      __A):



     """simple docstring"""



     _a           =    message[:4]
     _a           =    message[4:]
     _a           =    apply_table(__A    ,      __A)
     _a           =    xor(__A    ,      __A)
     _a           =    apply_sbox(__A    ,      temp[:4])  # noqa: E741
     _a           =    apply_sbox(__A    ,      temp[4:])
     _a           =    '''0''' * (2 - len(__A)) + l  # noqa: E741
     _a           =    '''0''' * (2 - len(__A)) + r
     _a           =    apply_table(l + r    ,      __A)
     _a           =    xor(__A    ,      __A)
     return temp + right


if __name__ == "__main__":
  lowercase_									=    input("Enter 10 bit key: ")
  lowercase_									=    input("Enter 8 bit message: ")

  lowercase_									=    [6, 3, 7, 4, 8, 5, 10, 9]
  lowercase_									=    [3, 5, 2, 7, 4, 10, 1, 9, 8, 6]
  lowercase_									=    [2, 4, 3, 1]
  lowercase_									=    [2, 6, 3, 1, 4, 8, 5, 7]
  lowercase_									=    [4, 1, 3, 5, 7, 2, 8, 6]
  lowercase_									=    [4, 1, 2, 3, 2, 3, 4, 1]
  lowercase_									=    [[1, 0, 3, 2], [3, 2, 1, 0], [0, 2, 1, 3], [3, 1, 3, 2]]
  lowercase_									=    [[0, 1, 2, 3], [2, 0, 1, 3], [3, 0, 1, 0], [2, 1, 0, 3]]

  # key generation
  lowercase_									=    apply_table(key, paa_table)
  lowercase_									=    temp[:5]
  lowercase_									=    temp[5:]
  lowercase_									=    left_shift(left)
  lowercase_									=    left_shift(right)
  lowercase_									=    apply_table(left + right, pa_table)
  lowercase_									=    left_shift(left)
  lowercase_									=    left_shift(right)
  lowercase_									=    left_shift(left)
  lowercase_									=    left_shift(right)
  lowercase_									=    apply_table(left + right, pa_table)

  # encryption
  lowercase_									=    apply_table(message, IP)
  lowercase_									=    function(expansion, sa, sa, keya, temp)
  lowercase_									=    temp[4:] + temp[:4]
  lowercase_									=    function(expansion, sa, sa, keya, temp)
  lowercase_									=    apply_table(temp, IP_inv)
  print("Cipher text is:", CT)

  # decryption
  lowercase_									=    apply_table(CT, IP)
  lowercase_									=    function(expansion, sa, sa, keya, temp)
  lowercase_									=    temp[4:] + temp[:4]
  lowercase_									=    function(expansion, sa, sa, keya, temp)
  lowercase_									=    apply_table(temp, IP_inv)
  print("Plain text after decypting is:", PT)











def      _snake_case     (__lowercase):
   UpperCamelCase_						=  1
   for i in range(1     ,   num + 1):
      fact *= i
   return fact






def      _snake_case     (__lowercase):
   UpperCamelCase_						=  0
   while number > 0:
      UpperCamelCase_						=  number % 10
      sum_of_digits += last_digit
      UpperCamelCase_						=  number // 10  # Removing the last_digit from the given number
   return sum_of_digits






def      _snake_case     (__lowercase = 100):
   UpperCamelCase_						=  factorial(__lowercase)
   UpperCamelCase_						=  split_and_add(__lowercase)
   return result


if __name__ == "__main__":
 print(solution(int(input("""Enter the Number: """).strip())))





