def ins_bin(lista):
""""""
assert type(lista) == list
for i in range(len(lista)):
key = lista[i]
l = 0
r = i-1
while l <= r:
m = abs((l+r)/2)
if key < lista[m]:
r = m-1
else:
l = m+1
for j in range(i, l, -1):
lista[j] = lista[j-1]
lista[l] = key
return lista
print ins_bin([8, 3, 4, 5, 1, 2, 6, 9, 10, 7])
ZGVmIGluc19iaW4obGlzdGEpOgogICAgIiIiIiIiCiAgICBhc3NlcnQgdHlwZShsaXN0YSkgPT0gbGlzdAogICAgZm9yIGkgaW4gcmFuZ2UobGVuKGxpc3RhKSk6CiAgICAgICAga2V5ID0gbGlzdGFbaV0KICAgICAgICBsID0gMAogICAgICAgIHIgPSBpLTEKICAgICAgICB3aGlsZSBsIDw9IHI6CiAgICAgICAgICAgIG0gPSBhYnMoKGwrcikvMikKICAgICAgICAgICAgaWYga2V5IDwgbGlzdGFbbV06CiAgICAgICAgICAgICAgICByID0gbS0xCiAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICBsID0gbSsxCiAgICAgICAgZm9yIGogaW4gcmFuZ2UoaSwgbCwgLTEpOgogICAgICAgICAgICBsaXN0YVtqXSA9IGxpc3RhW2otMV0KICAgICAgICBsaXN0YVtsXSA9IGtleQogICAgcmV0dXJuIGxpc3RhCiAgICAKcHJpbnQgaW5zX2JpbihbOCwgMywgNCwgNSwgMSwgMiwgNiwgOSwgMTAsIDddKQo=