import unittest

from transformers import MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING, AutoTokenizer, is_vision_available
from transformers.pipelines import pipeline
from transformers.pipelines.document_question_answering import apply_tesseract
from transformers.testing_utils import (
    is_pipeline_test,
    nested_simplify,
    require_detectrona,
    require_pytesseract,
    require_tf,
    require_torch,
    require_vision,
    slow,
)

from .test_pipelines_common import ANY


if is_vision_available():
					from PIL import Image

					from transformers.image_utils import load_image
else:


					class _a  :

						'''simple docstring'''



						@staticmethod
						def 	__UpperCAmelCase(  *__UpperCAmelCase				,					**__UpperCAmelCase       ):
								pass



					def        lowerCamelCase_       (    _lowercase							)				->			Tuple:
							return None


# This is a pinned image from a specific revision of a document question answering space, hosted by HuggingFace,
# so we can expect it to be available.
UpperCamelCase     					=      (
    "https://huggingface.co/spaces/impira/docquery/resolve/2f6c96314dc84dfda62d40de9da55f2f5165d403/invoice.png"
)


@is_pipeline_test
@require_torch
@require_vision
class _a  (			unittest.TestCase   ):

	'''simple docstring'''



	lowerCamelCase_       :     Any          =			MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING

	@require_pytesseract
	@require_vision
	def 	__UpperCAmelCase(  self				,					__UpperCAmelCase				,					__UpperCAmelCase				,					__UpperCAmelCase       ):
			__A				:       Tuple			    = pipeline(
			    "document-question-answering"				,					model=__UpperCAmelCase				,					tokenizer=__UpperCAmelCase				,					image_processor=__UpperCAmelCase       )

			__A				:       Union[str, Any]			    = INVOICE_URL
			__A				:       Union[str, Any]			    = list(zip(*apply_tesseract(load_image(__UpperCAmelCase       )				,					__UpperCAmelCase				,					""       )       )       )
			__A				:       int			    = "What is the placebo?"
			__A				:       Optional[Any]			    = [
			    {
			        "image": load_image(__UpperCAmelCase       ),
			        "question": question,
			    },
			    {
			        "image": image,
			        "question": question,
			    },
			    {
			        "image": image,
			        "question": question,
			        "word_boxes": word_boxes,
			    },
			]
			return dqa_pipeline, examples

	def 	__UpperCAmelCase(  self				,					__UpperCAmelCase				,					__UpperCAmelCase       ):
			__A				:       Any			    = dqa_pipeline(__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(
			    __UpperCAmelCase				,					[
			        [
			            {"score": ANY(__UpperCAmelCase       ), "answer": ANY(__UpperCAmelCase       ), "start": ANY(__UpperCAmelCase       ), "end": ANY(__UpperCAmelCase       )},
			            {"score": ANY(__UpperCAmelCase       ), "answer": ANY(__UpperCAmelCase       ), "start": ANY(__UpperCAmelCase       ), "end": ANY(__UpperCAmelCase       )},
			        ]
			    ]
			    * 3				,					)

	@require_torch
	@require_detectrona
	@require_pytesseract
	def 	__UpperCAmelCase(  self       ):
			__A				:       Tuple			    = pipeline("document-question-answering"				,					model="hf-internal-testing/tiny-random-layoutlmv2"       )
			__A				:       str			    = INVOICE_URL
			__A				:       List[str]			    = "How many cats are there?"

			__A				:       Union[str, Any]			    = [
			    {"score": 0.00_01, "answer": "oy 2312/2019", "start": 38, "end": 39},
			    {"score": 0.00_01, "answer": "oy 2312/2019 DUE", "start": 38, "end": 40},
			]
			__A				:       str			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					__UpperCAmelCase       )

			__A				:       int			    = dqa_pipeline({"image": image, "question": question}				,					top_k=2       )
			self.assertEqual(nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					__UpperCAmelCase       )

			# This image does not detect ANY text in it, meaning layoutlmv2 should fail.
			# Empty answer probably
			__A				:       Optional[Any]			    = "./tests/fixtures/tests_samples/COCO/000000039769.png"
			__A				:       Optional[int]			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(__UpperCAmelCase				,					[]       )

			# We can optionnally pass directly the words and bounding boxes
			__A				:       Union[str, Any]			    = "./tests/fixtures/tests_samples/COCO/000000039769.png"
			__A				:       Union[str, Any]			    = []
			__A				:       Dict			    = []
			__A				:       Optional[int]			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					words=__UpperCAmelCase				,					boxes=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(__UpperCAmelCase				,					[]       )

	@slow
	@require_torch
	@require_detectrona
	@require_pytesseract
	def 	__UpperCAmelCase(  self       ):
			__A				:       Optional[Any]			    = pipeline(
			    "document-question-answering"				,					model="tiennvcs/layoutlmv2-base-uncased-finetuned-docvqa"				,					revision="9977165"				,					)
			__A				:       Dict			    = INVOICE_URL
			__A				:       Optional[Any]			    = "What is the invoice number?"

			__A				:       str			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.99_44, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.00_09, "answer": "us-001", "start": 16, "end": 16},
			    ]				,					)

			__A				:       str			    = dqa_pipeline({"image": image, "question": question}				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.99_44, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.00_09, "answer": "us-001", "start": 16, "end": 16},
			    ]				,					)

			__A				:       int			    = dqa_pipeline(
			    [{"image": image, "question": question}, {"image": image, "question": question}]				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        [
			            {"score": 0.99_44, "answer": "us-001", "start": 16, "end": 16},
			            {"score": 0.00_09, "answer": "us-001", "start": 16, "end": 16},
			        ],
			    ]
			    * 2				,					)

	@slow
	@require_torch
	@require_detectrona
	@require_pytesseract
	def 	__UpperCAmelCase(  self       ):
			__A				:       Tuple			    = pipeline(
			    "document-question-answering"				,					model="tiennvcs/layoutlmv2-base-uncased-finetuned-docvqa"				,					revision="9977165"				,					max_seq_len=50				,					)
			__A				:       Tuple			    = INVOICE_URL
			__A				:       Dict			    = "What is the invoice number?"

			__A				:       Dict			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.99_74, "answer": "1110212019", "start": 23, "end": 23},
			        {"score": 0.99_48, "answer": "us-001", "start": 16, "end": 16},
			    ]				,					)

			__A				:       Dict			    = dqa_pipeline({"image": image, "question": question}				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.99_74, "answer": "1110212019", "start": 23, "end": 23},
			        {"score": 0.99_48, "answer": "us-001", "start": 16, "end": 16},
			    ]				,					)

			__A				:       Tuple			    = dqa_pipeline(
			    [{"image": image, "question": question}, {"image": image, "question": question}]				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        [
			            {"score": 0.99_74, "answer": "1110212019", "start": 23, "end": 23},
			            {"score": 0.99_48, "answer": "us-001", "start": 16, "end": 16},
			        ]
			    ]
			    * 2				,					)

	@slow
	@require_torch
	@require_pytesseract
	@require_vision
	def 	__UpperCAmelCase(  self       ):
			__A				:       List[Any]			    = AutoTokenizer.from_pretrained(
			    "impira/layoutlm-document-qa"				,					revision="3dc6de3"				,					add_prefix_space=__UpperCAmelCase       )
			__A				:       Optional[int]			    = pipeline(
			    "document-question-answering"				,					model="impira/layoutlm-document-qa"				,					tokenizer=__UpperCAmelCase				,					revision="3dc6de3"				,					)
			__A				:       int			    = INVOICE_URL
			__A				:       Dict			    = "What is the invoice number?"

			__A				:       Any			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.42_51, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.08_19, "answer": "1110212019", "start": 23, "end": 23},
			    ]				,					)

			__A				:       List[str]			    = dqa_pipeline({"image": image, "question": question}				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.42_51, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.08_19, "answer": "1110212019", "start": 23, "end": 23},
			    ]				,					)

			__A				:       Optional[int]			    = dqa_pipeline(
			    [{"image": image, "question": question}, {"image": image, "question": question}]				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        [
			            {"score": 0.42_51, "answer": "us-001", "start": 16, "end": 16},
			            {"score": 0.08_19, "answer": "1110212019", "start": 23, "end": 23},
			        ]
			    ]
			    * 2				,					)

			__A				:       Dict			    = list(zip(*apply_tesseract(load_image(__UpperCAmelCase       )				,					__UpperCAmelCase				,					""       )       )       )

			# This model should also work if `image` is set to None
			__A				:       Tuple			    = dqa_pipeline({"image": None, "word_boxes": word_boxes, "question": question}				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.42_51, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.08_19, "answer": "1110212019", "start": 23, "end": 23},
			    ]				,					)

	@slow
	@require_torch
	@require_pytesseract
	@require_vision
	def 	__UpperCAmelCase(  self       ):
			__A				:       List[str]			    = AutoTokenizer.from_pretrained(
			    "impira/layoutlm-document-qa"				,					revision="3dc6de3"				,					add_prefix_space=__UpperCAmelCase       )
			__A				:       Optional[int]			    = pipeline(
			    "document-question-answering"				,					model="impira/layoutlm-document-qa"				,					tokenizer=__UpperCAmelCase				,					revision="3dc6de3"				,					max_seq_len=50				,					)
			__A				:       Any			    = INVOICE_URL
			__A				:       Optional[Any]			    = "What is the invoice number?"

			__A				:       str			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.99_99, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.99_98, "answer": "us-001", "start": 16, "end": 16},
			    ]				,					)

			__A				:       Tuple			    = dqa_pipeline(
			    [{"image": image, "question": question}, {"image": image, "question": question}]				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        [
			            {"score": 0.99_99, "answer": "us-001", "start": 16, "end": 16},
			            {"score": 0.99_98, "answer": "us-001", "start": 16, "end": 16},
			        ]
			    ]
			    * 2				,					)

			__A				:       Dict			    = list(zip(*apply_tesseract(load_image(__UpperCAmelCase       )				,					__UpperCAmelCase				,					""       )       )       )

			# This model should also work if `image` is set to None
			__A				:       Any			    = dqa_pipeline({"image": None, "word_boxes": word_boxes, "question": question}				,					top_k=2       )
			self.assertEqual(
			    nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[
			        {"score": 0.99_99, "answer": "us-001", "start": 16, "end": 16},
			        {"score": 0.99_98, "answer": "us-001", "start": 16, "end": 16},
			    ]				,					)

	@slow
	@require_torch
	def 	__UpperCAmelCase(  self       ):
			__A				:       Optional[int]			    = pipeline(
			    "document-question-answering"				,					model="naver-clova-ix/donut-base-finetuned-docvqa"				,					tokenizer=AutoTokenizer.from_pretrained("naver-clova-ix/donut-base-finetuned-docvqa"       )				,					feature_extractor="naver-clova-ix/donut-base-finetuned-docvqa"				,					)

			__A				:       Tuple			    = INVOICE_URL
			__A				:       Dict			    = "What is the invoice number?"
			__A				:       str			    = dqa_pipeline(image=__UpperCAmelCase				,					question=__UpperCAmelCase				,					top_k=2       )
			self.assertEqual(nested_simplify(__UpperCAmelCase				,					decimals=4       )				,					[{"answer": "us-001"}]       )







	@require_tf
	@unittest.skip("Document question answering not implemented in TF"       )
	def 	__UpperCAmelCase(  self       ):
			pass










import unittest

from transformers.models.xlm_prophetnet.tokenization_xlm_prophetnet import SPIECE_UNDERLINE, XLMProphetNetTokenizer
from transformers.testing_utils import get_tests_dir, require_sentencepiece, slow
from transformers.utils import cached_property

from ...test_tokenization_common import TokenizerTesterMixin


a__   :					List[Any] 						=      get_tests_dir("fixtures/test_sentencepiece.model")



@require_sentencepiece
class    UpperCAmelCase__(				lowerCamelCase  ,				unittest.TestCase						):

   '''simple docstring'''




   A     :	Tuple												=     XLMProphetNetTokenizer
   A     :	List[str]												=     False
   A     :	Union[str, Any]												=     True


   def       UpperCAmelCase		(    self	:      Any)						->					int:




         """simple docstring"""

         super().setUp()

         # We have a SentencePiece fixture for testing
         lowercase__  =	XLMProphetNetTokenizer(lowerCAmelCase      ,					keep_accents=lowerCAmelCase)
         tokenizer.save_pretrained(self.tmpdirname)


   def       UpperCAmelCase		(    self	:      Optional[int])						->					Optional[Any]:




         """simple docstring"""

         lowercase__  =	'[PAD]'
         lowercase__  =	0

         self.assertEqual(self.get_tokenizer()._convert_token_to_id(lowerCAmelCase)      ,					lowerCAmelCase)
         self.assertEqual(self.get_tokenizer()._convert_id_to_token(lowerCAmelCase)      ,					lowerCAmelCase)


   def       UpperCAmelCase		(    self	:      Dict)						->					List[Any]:




         """simple docstring"""

         lowercase__  =	list(self.get_tokenizer().get_vocab().keys())

         self.assertEqual(vocab_keys[0]      ,					'[PAD]')
         self.assertEqual(vocab_keys[1]      ,					'[CLS]')
         self.assertEqual(vocab_keys[-1]      ,					'j')
         self.assertEqual(len(lowerCAmelCase)      ,					10_12)


   def       UpperCAmelCase		(    self	:      Union[str, Any])						->					str:




         """simple docstring"""

         self.assertEqual(self.get_tokenizer().vocab_size      ,					10_12)


   def       UpperCAmelCase		(    self	:      Tuple)						->					Optional[int]:




         """simple docstring"""

         lowercase__  =	XLMProphetNetTokenizer(lowerCAmelCase      ,					keep_accents=lowerCAmelCase)

         lowercase__  =	tokenizer.tokenize('This is a test')
         self.assertListEqual(lowerCAmelCase      ,					['▁This', '▁is', '▁a', '▁t', 'est'])

         self.assertListEqual(
             tokenizer.convert_tokens_to_ids(lowerCAmelCase)      ,					[value + tokenizer.fairseq_offset for value in [2_85, 46, 10, 1_70, 3_82]]      ,					)

         lowercase__  =	tokenizer.tokenize('I was born in 92000, and this is falsé.')
         self.assertListEqual(
             lowerCAmelCase      ,					[
                 SPIECE_UNDERLINE + 'I',
                 SPIECE_UNDERLINE + 'was',
                 SPIECE_UNDERLINE + 'b',
                 'or',
                 'n',
                 SPIECE_UNDERLINE + 'in',
                 SPIECE_UNDERLINE + '',
                 '9',
                 '2',
                 '0',
                 '0',
                 '0',
                 ',',
                 SPIECE_UNDERLINE + 'and',
                 SPIECE_UNDERLINE + 'this',
                 SPIECE_UNDERLINE + 'is',
                 SPIECE_UNDERLINE + 'f',
                 'al',
                 's',
                 'é',
                 '.',
             ]      ,					)
         lowercase__  =	tokenizer.convert_tokens_to_ids(lowerCAmelCase)
         self.assertListEqual(
             lowerCAmelCase      ,					[
                 value + tokenizer.fairseq_offset
                 for value in [8, 21, 84, 55, 24, 19, 7, -9, 6_02, 3_47, 3_47, 3_47, 3, 12, 66, 46, 72, 80, 6, -9, 4]
             ]      ,					)

         lowercase__  =	tokenizer.convert_ids_to_tokens(lowerCAmelCase)
         self.assertListEqual(
             lowerCAmelCase      ,					[
                 SPIECE_UNDERLINE + 'I',
                 SPIECE_UNDERLINE + 'was',
                 SPIECE_UNDERLINE + 'b',
                 'or',
                 'n',
                 SPIECE_UNDERLINE + 'in',
                 SPIECE_UNDERLINE + '',
                 '[UNK]',
                 '2',
                 '0',
                 '0',
                 '0',
                 ',',
                 SPIECE_UNDERLINE + 'and',
                 SPIECE_UNDERLINE + 'this',
                 SPIECE_UNDERLINE + 'is',
                 SPIECE_UNDERLINE + 'f',
                 'al',
                 's',
                 '[UNK]',
                 '.',
             ]      ,					)


   @cached_property
   def       UpperCAmelCase		(    self	:      str)						->					List[Any]:




         """simple docstring"""

         return XLMProphetNetTokenizer.from_pretrained('microsoft/xprophetnet-large-wiki100-cased')


   @slow
   def       UpperCAmelCase		(    self	:      List[Any])						->					List[str]:




         """simple docstring"""

         lowercase__  =	'Hello World!'
         lowercase__  =	[3_53_89, 66_72, 49, 2]
         self.assertListEqual(lowerCAmelCase      ,					self.big_tokenizer.encode(lowerCAmelCase))



   @slow
   def       UpperCAmelCase		(    self	:      Tuple)						->					str:




         """simple docstring"""

         lowercase__  =	{'input_ids': [[1_10_73, 8_27_83, 18, 26, 8_27_83, 5_49, 5_15_40, 2_48, 1_72_09, 13_01, 2_17, 20, 21_51_86, 13_25, 1_47, 1_72_09, 13_01, 2_17, 20, 5_63_70, 53, 12_20_20, 20, 1_64_77, 27, 8_73_55, 45_48, 20, 47_28, 7_83_92, 17, 15_99_69, 18, 26, 2_44_91, 6_29, 15, 5_38, 2_27_04, 54_39, 15, 27_88, 2_44_91, 98_85, 15, 4_35_34, 6_05, 15, 8_14, 1_84_03, 3_32_00, 29, 15, 4_35_34, 2_44_58, 1_24_10, 1_11, 2_49_66, 8_36_69, 96_37, 14_40_68, 26, 8_50, 2_23_46, 27, 1_47, 2_49_66, 8_36_69, 8_34_90, 26, 3_91_13, 7_35, 27, 6_89, 6_56, 28_00, 13_39, 46_00, 53, 12_20_20, 11_57_85, 34, 8_16, 13_39, 4_68_87, 18, 1_47, 5_39_05, 19_51, 4_22_38, 4_11_70, 1_77_32, 8_34, 4_36, 15, 2_75_23, 9_87_33, 2_17, 1_47, 55_42, 49_81, 9_30, 1_73_47, 16, 2], [2_00_91, 6_29, 94, 8_27_86, 58, 4_90, 20, 15_28, 84, 5_39_05, 3_44, 8_05_92, 11_01_28, 1_88_22, 52_67, 13_06, 62, 15_25_37, 3_08, 79_97, 4_01, 12_44_27, 5_49, 3_54_42, 2_25, 1_09, 1_50_55, 2_57_48, 1_47, 71_19, 4_37_12, 34, 7_67, 13_53_66, 18, 16, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [5_92, 6_37_84, 11_94_66, 17, 14_78_08, 8_82_14, 18, 6_56, 81, 32, 32_96, 1_02_80, 16, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], 'attention_mask': [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}  # noqa: E501
         # fmt: on

         self.tokenizer_integration_test_util(
             expected_encoding=lowerCAmelCase      ,					model_name='microsoft/xprophetnet-large-wiki100-cased'      ,					revision='1acad1643ddd54a44df6a1b797ada8373685d90e'      ,					)
