






def  a__ (__lowercase							:int					,  __lowercase							:int   )		-> str:
				if a < 0 or b < 0:
								raise ValueError('''the value of both inputs must be positive'''   )

				_A	:				Optional[int]   =      str(bin(__lowercase   )   )[2:]  # remove the leading "0b"
				_A	:				Optional[Any]   =      str(bin(__lowercase   )   )[2:]  # remove the leading "0b"

				_A	:				str   =      max(len(__lowercase   )					,  len(__lowercase   )   )

				return "0b" + "".join(
				    str(int(char_a != char_b   )   )
				    for char_a, char_b in zip(a_binary.zfill(__lowercase   )					,  b_binary.zfill(__lowercase   )   )   )


if __name__ == "__main__":
	import doctest

	doctest.testmod()











from arguments import InitializationArguments

from transformers import AutoConfig, AutoModelForCausalLM, AutoTokenizer, HfArgumentParser


# Configuration
_UpperCamelCase			:	List[str]								=HfArgumentParser(InitializationArguments)
_UpperCamelCase			:	Dict								=parser.parse_args()

# Load codeparrot tokenizer trained for Python code tokenization
_UpperCamelCase			:	List[Any]								=AutoTokenizer.from_pretrained(args.tokenizer_name)

# Config: "scale_attn_by_layer_idx" and "reorder_and_upcast_attn" are Mistral stability tweaks
_UpperCamelCase			:	str								={
    'vocab_size': len(tokenizer),
    'scale_attn_by_inverse_layer_idx': True,
    'reorder_and_upcast_attn': True,
}

# Load model config (GPT-2 large in this case)
_UpperCamelCase			:	int								=AutoConfig.from_pretrained(args.config_name, **config_kwargs)

# Initialize new model with config
_UpperCamelCase			:	List[str]								=AutoModelForCausalLM.from_config(config)

# Save model to the hub
model.save_pretrained(args.model_name, push_to_hub=args.push_to_hub)



