public void CheckUInt64Array()
        {
            MemoryStream buffer = new MemoryStream();
            IFieldWriter writer = new FieldWriter(buffer);
            IFieldReader reader = new FieldReader(buffer);

            UInt64[] array1 = new UInt64[] {};
            UInt64[] array2 = new UInt64[] { 1 };
            UInt64[] array3 = new UInt64[] { 0, 0, 0, 0, 0, 0 };
            UInt64[] array4 = new UInt64[] { 0, 1, 2, 3, 4, 5 };
            UInt64[] array5 = new UInt64[] { 0, 1, 1, 2, 2, 2 };
            UInt64[] array6 = new UInt64[] { 0, 1, 1, 2, 2, 2, 3 };
            writer.Write(array1);
            writer.Write(array2);
            writer.Write(array3);
            writer.Write(array4);
            writer.Write(array5);
            writer.Write(array6);
            buffer.Position = 0;
            array1.CompareArray(reader.ReadUInt64Array());
            array2.CompareArray(reader.ReadUInt64Array());
            array3.CompareArray(reader.ReadUInt64Array());
            array4.CompareArray(reader.ReadUInt64Array());
            array5.CompareArray(reader.ReadUInt64Array());
            array6.CompareArray(reader.ReadUInt64Array());
        }