


def       _lowerCAmelCase    (				lowerCAmelCase_				:int		,    lowerCAmelCase_				:int				)->str:
   '''simple docstring'''






   if a < 0 or b < 0:
      raise ValueError("the value of both inputs must be positive"				)

   snake_case_            =       str(bin(lowerCAmelCase_				)				)[2:]  # remove the leading "0b"
   snake_case_            =       str(bin(lowerCAmelCase_				)				)[2:]  # remove the leading "0b"

   snake_case_            =       max(len(lowerCAmelCase_				)		,    len(lowerCAmelCase_				)				)

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


if __name__ == "__main__":
   import doctest

   doctest.testmod()








from __future__ import annotations



def       _lowerCAmelCase    (				lowerCAmelCase_				:int		,    lowerCAmelCase_				:int				)->list[str]:
   '''simple docstring'''






   if partitions <= 0:
      raise ValueError("partitions must be a positive number!"				)
   if partitions > number_of_bytes:
      raise ValueError("partitions can not > number_of_bytes!"				)
   snake_case_            =       number_of_bytes // partitions
   snake_case_            =       []
   for i in range(lowerCAmelCase_				):
      snake_case_            =       i * bytes_per_partition + 1
      snake_case_            =       (
          number_of_bytes if i == partitions - 1 else (i + 1) * bytes_per_partition
      )
      allocation_list.append(F'''{start_bytes}-{end_bytes}'''				)
   return allocation_list


if __name__ == "__main__":
   import doctest

   doctest.testmod()




