'''simple docstring'''






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

from ..features import Features, Sequence, Value
from .base import TaskTemplate





@dataclass(frozen=lowerCamelCase__   )
class     A__							(       lowerCamelCase__   ):





   """simple docstring"""





   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     :		Tuple			)       ->    List[str]:







      """simple docstring"""




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




'''simple docstring'''




def 				lowerCAmelCase_   (	_lowerCamelCase:   list					):
		if any(not isinstance(_lowerCamelCase       ,      _lowerCamelCase					) or x < 0 for x in sequence					):
				raise TypeError("""Sequence must be list of non-negative integers"""					)
		for _ in range(len(_lowerCamelCase					)					):
				for i, (rod_upper, rod_lower) in enumerate(zip(_lowerCamelCase       ,      sequence[1:]					)					):
						if rod_upper > rod_lower:
								sequence[i] -= rod_upper - rod_lower
								sequence[i + 1] += rod_upper - rod_lower
		return sequence


if __name__ == "__main__":
						assert bead_sort([5, 4, 3, 2, 1]) == [1, 2, 3, 4, 5]
						assert bead_sort([7, 9, 4, 3, 5]) == [3, 4, 5, 7, 9]