

import logging

from transformers import PretrainedConfig


_SCREAMING_SNAKE_CASE  :						int         =    logging.getLogger(__name__)


_SCREAMING_SNAKE_CASE  :						Optional[int]         =    {
    '''bertabs-finetuned-cnndm''': '''https://huggingface.co/remi/bertabs-finetuned-cnndm-extractive-abstractive-summarization/resolve/main/config.json''',
}






class  UpperCAmelCase__	( A__ ):






  """simple docstring"""


  a     =      "bertabs"






  def __init__(							self		:	str			,     __lowerCamelCase		:	List[str]=3_0522			,     __lowerCamelCase		:	Optional[int]=512			,     __lowerCamelCase		:	Dict=6			,     __lowerCamelCase		:	Any=512			,     __lowerCamelCase		:	Union[str, Any]=8			,     __lowerCamelCase		:	List[Any]=512			,     __lowerCamelCase		:	Union[str, Any]=0.2			,     __lowerCamelCase		:	Tuple=6			,     __lowerCamelCase		:	Any=768			,     __lowerCamelCase		:	int=8			,     __lowerCamelCase		:	Optional[Any]=2048			,     __lowerCamelCase		:	Dict=0.2			,     **__lowerCamelCase		:	Dict			,     )	->							Dict:
       super().__init__(**__lowerCamelCase      )

       SCREAMING_SNAKE_CASE__					=					vocab_size
       SCREAMING_SNAKE_CASE__					=					max_pos

       SCREAMING_SNAKE_CASE__					=					enc_layers
       SCREAMING_SNAKE_CASE__					=					enc_hidden_size
       SCREAMING_SNAKE_CASE__					=					enc_heads
       SCREAMING_SNAKE_CASE__					=					enc_ff_size
       SCREAMING_SNAKE_CASE__					=					enc_dropout

       SCREAMING_SNAKE_CASE__					=					dec_layers
       SCREAMING_SNAKE_CASE__					=					dec_hidden_size
       SCREAMING_SNAKE_CASE__					=					dec_heads
       SCREAMING_SNAKE_CASE__					=					dec_ff_size
       SCREAMING_SNAKE_CASE__					=					dec_dropout





from collections.abc import Callable

import numpy as np
def        UpperCAmelCase_     (		_A   ,	_A   ,	_A   ,	_A   ,	_A       ):





     '''simple docstring'''




     SCREAMING_SNAKE_CASE__					=					int(np.ceil((x_end - xa) / step_size       )       )
     SCREAMING_SNAKE_CASE__					=					np.zeros((n + 1,)       )
     SCREAMING_SNAKE_CASE__					=					ya
     SCREAMING_SNAKE_CASE__					=					xa

     for k in range(_A       ):
          SCREAMING_SNAKE_CASE__					=					y[k] + step_size * ode_func(_A   ,	y[k]       )
          SCREAMING_SNAKE_CASE__					=					y[k] + (
              (step_size / 2) * (ode_func(_A   ,	y[k]       ) + ode_func(x + step_size   ,	_A       ))
          )
          x += step_size

     return y


if __name__ == "__main__":
       import doctest

       doctest.testmod()


