public override String ToString() {
StringBuilder result = new StringBuilder(sizeInBits);
for (int i = 0; i < sizeInBits; ++i) {
if (At(i) == 0) {
result.Append('0');
}
else if (At(i) == 1) {
result.Append('1');
}
else {
throw new ArgumentException("Byte isn't 0 or 1");
}
}
return result.ToString();
}