code: def from_bstr(x):
      man, exp = str_to_man_exp(x, base=2)
      man = MPZ(man)
      sign = 0
      if man < 0:
          man = -man
          sign = 1
      bc = bitcount(man)
      return normalize(sign, man, exp, bc, bc, round_floor)
  
imports: import math
  from bisect import bisect
  import sys
  from .backend import MPZ, MPZ_TYPE, MPZ_ZERO, MPZ_ONE, MPZ_TWO, MPZ_FIVE, BACKEND, STRICT, HASH_MODULUS, HASH_BITS, gmpy, sage, sage_utils
  from .libintmath import giant_steps, trailtable, bctable, lshift, rshift, bitcount, trailing, sqrt_fixed, numeral, isqrt, isqrt_fast, sqrtrem, bin_to_radix
label_desc: Use image node_id 57 for calling a global function with example usage: from_bstr(x) and returns: normalize