@Override
 public void writeLong(int position, long v, ByteOrder byteOrder) throws IOException {
   Bits.writeLong(buffer, position, v, byteOrder == ByteOrder.BIG_ENDIAN);
 }
 @Override
 public void writeLong(int position, final long v) throws IOException {
   Bits.writeLong(buffer, position, v, isBigEndian);
 }
 @Override
 public void writeLong(long v, ByteOrder byteOrder) throws IOException {
   ensureAvailable(LONG_SIZE_IN_BYTES);
   Bits.writeLong(buffer, pos, v, byteOrder == ByteOrder.BIG_ENDIAN);
   pos += LONG_SIZE_IN_BYTES;
 }
 @Override
 public void writeLong(final long v) throws IOException {
   ensureAvailable(LONG_SIZE_IN_BYTES);
   Bits.writeLong(buffer, pos, v, isBigEndian);
   pos += LONG_SIZE_IN_BYTES;
 }