public static void Ebml_Write_Num(this BinaryWriter writer, ulong num, int length=0) { int i; if (length == 0) length = NumSize(num); num |= 1UL << length * 7; for (i = length - 1; i >= 0; i--) writer.Write((byte)(num >> (i * 8))); }