public double ReadDouble(Stream Stream)
{
long bits = (Stream.ReadByte() & 0xffL) |
(Stream.ReadByte() & 0xffL) << 8 |
(Stream.ReadByte() & 0xffL) << 16 |
(Stream.ReadByte() & 0xffL) << 24 |
(Stream.ReadByte() & 0xffL) << 32 |
(Stream.ReadByte() & 0xffL) << 40 |
(Stream.ReadByte() & 0xffL) << 48 |
(Stream.ReadByte() & 0xffL) << 56;
return BitConverter.Int64BitsToDouble(bits);
}