






def        _a  (     UpperCamelCase_					:				Any    ,   UpperCamelCase_					:				Optional[int]   ) ->   Tuple:
      """simple docstring"""







      lowerCAmelCase__       =						""
      for i in table:
            res += inp[i - 1]
      return res


def        _a  (     UpperCamelCase_					:				Any   ) ->   Optional[int]:
      """simple docstring"""







      return data[1:] + data[0]


def        _a  (     UpperCamelCase_					:				Any    ,   UpperCamelCase_					:				Optional[int]   ) ->   Dict:
      """simple docstring"""







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


def        _a  (     UpperCamelCase_					:				Dict    ,   UpperCamelCase_					:				Union[str, Any]   ) ->   str:
      """simple docstring"""







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


def        _a  (     UpperCamelCase_					:				str    ,   UpperCamelCase_					:				List[Any]    ,   UpperCamelCase_					:				List[str]    ,   UpperCamelCase_					:				Tuple    ,   UpperCamelCase_					:				Any   ) ->   List[str]:
      """simple docstring"""







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


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

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

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

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

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














from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_tokenizers_available,
    is_torch_available,
)


a_							=    {'''configuration_plbart''': ['''PLBART_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''PLBartConfig''']}

try:
	if not is_sentencepiece_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	a_							=    ['''PLBartTokenizer''']

try:
	if not is_torch_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	a_							=    [
	    '''PLBART_PRETRAINED_MODEL_ARCHIVE_LIST''',
	    '''PLBartForCausalLM''',
	    '''PLBartForConditionalGeneration''',
	    '''PLBartForSequenceClassification''',
	    '''PLBartModel''',
	    '''PLBartPreTrainedModel''',
	]


if TYPE_CHECKING:
	from .configuration_plbart import PLBART_PRETRAINED_CONFIG_ARCHIVE_MAP, PLBartConfig

	try:
		if not is_sentencepiece_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .tokenization_plbart import PLBartTokenizer

	try:
		if not is_torch_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_plbart import (
		    PLBART_PRETRAINED_MODEL_ARCHIVE_LIST,
		    PLBartForCausalLM,
		    PLBartForConditionalGeneration,
		    PLBartForSequenceClassification,
		    PLBartModel,
		    PLBartPreTrainedModel,
		)


else:
	import sys

	a_							=    _LazyModule(__name__, globals()['''__file__'''], _import_structure)






