import argparse
parser = argparse.ArgumentParser()
parser.add_argument("size", type=str, help="Input string representing size")
args = parser.parse_args()
size = args.size.strip().lower()
if size.startswith("0x"):
if size[-1] != "b":
raise ValueError("Hexadecimal size must end with 'b' or 'B'")
number = int(size[:-1], 16)
multiplier = 1
else:
if size[-1].isdigit():
size += "m"
suffixes = {
"b": 0,
"k": 1,
"m": 2,
"g": 3,
"t": 4,
"p": 5,
"e": 6,
}
if size[-1] not in suffixes:
raise ValueError("Invalid size suffix. Use one of b, k, m, g, t, p, e")
multiplier = 1024 ** suffixes[size[-1]]
number = float(size[:-1])
print(int(number * multiplier))