"""simple docstring"""



from dataclasses import dataclass, field
from typing import ClassVar, Dict

from ..features import Features, Sequence, Value
from .base import TaskTemplate
@dataclass(frozen=__A     )
class 						__UpperCAmelCase    (__A     ):







			'''simple docstring'''
			# `task` is not a ClassVar since we want it to be part of the `asdict` output for JSON serialization
			_UpperCamelCase  :						str					     =				field(default='question-answering-extractive'							,   metadata={'include_in_asdict_even_if_is_default': True}     )
			_UpperCamelCase  :						ClassVar[Features]					     =				Features({'question': Value('string'     ), 'context': Value('string'     )}     )
			_UpperCamelCase  :						ClassVar[Features]					     =				Features(
			    {
			        'answers': Sequence(
			            {
			                'text': Value('string'     ),
			                'answer_start': Value('int32'     ),
			            }     )
			    }     )
			_UpperCamelCase  :						str					     =				"question"
			_UpperCamelCase  :						str					     =				"context"
			_UpperCamelCase  :						str					     =				"answers"





			@property
			def 		lowerCamelCase					(			self							):







										'''simple docstring'''


										return {self.question_column: "question", self.context_column: "context", self.answers_column: "answers"}






"""simple docstring"""



def  _A(		lowerCAmelCase			,  lowerCAmelCase							):
							A__       :     List[Any]								=			[1]
							for i in range(2			,  lowerCAmelCase							):
														factorials.append(factorials[-1] * i							)
							assert 0 <= k < factorials[-1] * n, "k out of bounds"

							A__       :     Union[str, Any]								=			[]
							A__       :     int								=			list(range(lowerCAmelCase							)							)

							# Find permutation
							while factorials:
														A__       :     Optional[int]								=			factorials.pop()
														A__				,							A__       :     Union[str, Any]								=			divmod(lowerCAmelCase			,  lowerCAmelCase							)
														permutation.append(elements[number]							)
														elements.remove(elements[number]							)
							permutation.append(elements[0]							)

							return permutation


if __name__ == "__main__":
				import doctest

				doctest.testmod()





