from functools import reduce
from itertools import zip_longest
def grouper(iterable, n, fillvalue=None):
"Collect data into fixed-length chunks or blocks"
# grouper('ABCDEFG', 3, 'x') --> ABC DEF Gxx"
args = [iter(iterable)] * n
return zip_longest(*args, fillvalue=fillvalue)
import ast, sys
for bits in map(ast.literal_eval, sys.stdin):
bytes = [reduce(lambda byte, bit: byte << 1 | bit, eight_bits)
for eight_bits in grouper(bits, 8, fillvalue=0)]
print("{bits} -> {bytes}".format(**vars()))
ZnJvbSBmdW5jdG9vbHMgaW1wb3J0IHJlZHVjZQpmcm9tIGl0ZXJ0b29scyBpbXBvcnQgemlwX2xvbmdlc3QKCmRlZiBncm91cGVyKGl0ZXJhYmxlLCBuLCBmaWxsdmFsdWU9Tm9uZSk6CiAgICAiQ29sbGVjdCBkYXRhIGludG8gZml4ZWQtbGVuZ3RoIGNodW5rcyBvciBibG9ja3MiCiAgICAjIGdyb3VwZXIoJ0FCQ0RFRkcnLCAzLCAneCcpIC0tPiBBQkMgREVGIEd4eCIKICAgIGFyZ3MgPSBbaXRlcihpdGVyYWJsZSldICogbgogICAgcmV0dXJuIHppcF9sb25nZXN0KCphcmdzLCBmaWxsdmFsdWU9ZmlsbHZhbHVlKQoKCmltcG9ydCBhc3QsIHN5cwoKZm9yIGJpdHMgaW4gbWFwKGFzdC5saXRlcmFsX2V2YWwsIHN5cy5zdGRpbik6CiAgICBieXRlcyA9IFtyZWR1Y2UobGFtYmRhIGJ5dGUsIGJpdDogYnl0ZSA8PCAxIHwgYml0LCBlaWdodF9iaXRzKQogICAgICAgICAgICAgZm9yIGVpZ2h0X2JpdHMgaW4gZ3JvdXBlcihiaXRzLCA4LCBmaWxsdmFsdWU9MCldCiAgICBwcmludCgie2JpdHN9IC0+IHtieXRlc30iLmZvcm1hdCgqKnZhcnMoKSkp
W10KWzFdClsxLDFdClsxLDAsMCwwLDAsMCwwLDAsMV0=
[]
[1]
[1,1]
[1,0,0,0,0,0,0,0,1]
[] -> []
[1] -> [128]
[1, 1] -> [192]
[1, 0, 0, 0, 0, 0, 0, 0, 1] -> [128, 128]