diff --git a/eslint.config.mjs b/eslint.config.mjs index 27b40443..19078871 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -49,7 +49,12 @@ export default [ ignoreRestSiblings: true, }, ], - + 'no-console': [ + 'warn', + { + allow: ['error', 'warn'], + }, + ], 'no-underscore-dangle': 0, curly: 'error', '@typescript-eslint/no-explicit-any': 0, diff --git a/package.json b/package.json index 3e4d93bf..4abfcfb4 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ ], "scripts": { "test": "jest", - "lint": "eslint src test", + "lint": "eslint --report-unused-disable-directives --max-warnings 0 src test", "docs": "documentation readme --shallow src/indexedCramFile.ts --section=IndexedCramFile; documentation readme --shallow src/cramFile/file.ts --section=CramFile; documentation readme --shallow src/craiIndex.ts --section=CraiIndex; documentation readme --shallow errors.ts '--section=Exception Classes'; documentation readme --shallow src/cramFile/file.ts --section=CramFile; documentation readme --shallow src/cramFile/record.ts --section=CramRecord", "prebuild": "npm run clean", "clean": "rimraf dist esm", @@ -43,7 +43,6 @@ ], "dependencies": { "@gmod/abortable-promise-cache": "^2.0.0", - "@gmod/binary-parser": "^1.3.5", "@jkbonfield/htscodecs": "^0.5.1", "buffer-crc32": "^1.0.0", "bzip2": "^0.1.1", @@ -59,18 +58,18 @@ "@types/long": "^4.0.0", "@types/md5": "^2.3.2", "@types/pako": "^1.0.3", - "@typescript-eslint/eslint-plugin": "^7.0.2", - "@typescript-eslint/parser": "^7.0.2", + "@typescript-eslint/eslint-plugin": "^8.0.0", + "@typescript-eslint/parser": "^8.0.0", "buffer": "^6.0.3", "documentation": "^14.0.3", - "eslint": "^9.0.0", + "eslint": "^9.8.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-prettier": "^5.1.3", - "eslint-plugin-unicorn": "^54.0.0", + "eslint-plugin-unicorn": "^55.0.0", "jest": "^29.3.1", "mock-fs": "^5.2.0", "prettier": "^3.2.5", - "rimraf": "^5.0.1", + "rimraf": "^6.0.1", "ts-jest": "^29.1.2", "typescript": "^5.0.3", "webpack": "^5.90.3", diff --git a/src/cramFile/codecs/byteArrayLength.ts b/src/cramFile/codecs/byteArrayLength.ts index ca30df21..6dc1ff04 100644 --- a/src/cramFile/codecs/byteArrayLength.ts +++ b/src/cramFile/codecs/byteArrayLength.ts @@ -1,5 +1,3 @@ -import { tinyMemoize } from '../util' - import CramCodec, { Cursors } from './_base' import { ByteArrayLengthEncoding, CramEncoding } from '../encoding' import CramSlice from '../slice' @@ -71,7 +69,3 @@ export default class ByteArrayStopCodec extends CramCodec< return this.instantiateCodec(encodingParams, 'byte') } } - -'_getLengthCodec _getDataCodec' - .split(' ') - .forEach(method => tinyMemoize(ByteArrayStopCodec, method)) diff --git a/src/cramFile/codecs/external.ts b/src/cramFile/codecs/external.ts index b9be8474..be4c3187 100644 --- a/src/cramFile/codecs/external.ts +++ b/src/cramFile/codecs/external.ts @@ -39,10 +39,14 @@ export default class ExternalCodec extends CramCodec< cursors: Cursors, ) { const { blockContentId } = this.parameters + // console.log({ + // blocksByContentId: Object.keys(blocksByContentId), + // blockContentId, + // }) const contentBlock = blocksByContentId[blockContentId] if (!contentBlock) { throw new CramMalformedError( - `no block found with content ID ${blockContentId}`, + `no block found with content ID ${blockContentId}: available ${Object.keys(blocksByContentId)}`, ) } const cursor = cursors.externalBlocks.getCursor(blockContentId) diff --git a/src/cramFile/codecs/huffman.ts b/src/cramFile/codecs/huffman.ts index 1d71748b..4161bacb 100644 --- a/src/cramFile/codecs/huffman.ts +++ b/src/cramFile/codecs/huffman.ts @@ -46,7 +46,8 @@ export default class HuffmanIntCodec extends CramCodec< this.buildCodes() this.buildCaches() - // if this is a degenerate zero-length huffman code, special-case the decoding + // if this is a degenerate zero-length huffman code, special-case the + // decoding if (this.sortedCodes[0].bitLength === 0) { this._decode = this._decodeZeroLengthCode } diff --git a/src/cramFile/container/compressionScheme.ts b/src/cramFile/container/compressionScheme.ts index 12c4f8a7..a73f109f 100644 --- a/src/cramFile/container/compressionScheme.ts +++ b/src/cramFile/container/compressionScheme.ts @@ -1,6 +1,6 @@ import { instantiateCodec } from '../codecs' import CramCodec from '../codecs/_base' -import { CramCompressionHeader, CramPreservationMap } from '../sectionParsers' +import { CramCompressionHeader } from '../sectionParsers' import { CramEncoding } from '../encoding' import { CramMalformedError } from '../../errors' import { @@ -95,12 +95,8 @@ export default class CramContainerCompressionScheme { public tagCodecCache: Record = {} public tagEncoding: Record = {} public dataSeriesEncoding: DataSeriesEncodingMap - private preservation: CramPreservationMap - private _endPosition: number - private _size: number constructor(content: CramCompressionHeader) { - // Object.assign(this, content) // interpret some of the preservation map tags for convenient use this.readNamesIncluded = content.preservation.RN this.APdelta = content.preservation.AP @@ -109,9 +105,6 @@ export default class CramContainerCompressionScheme { this.substitutionMatrix = parseSubstitutionMatrix(content.preservation.SM) this.dataSeriesEncoding = content.dataSeriesEncoding this.tagEncoding = content.tagEncoding - this.preservation = content.preservation - this._size = content._size - this._endPosition = content._endPosition } /** diff --git a/src/cramFile/container/index.ts b/src/cramFile/container/index.ts index 92fcd88e..80c12d3c 100644 --- a/src/cramFile/container/index.ts +++ b/src/cramFile/container/index.ts @@ -4,6 +4,7 @@ import { itf8Size, parseItem, tinyMemoize } from '../util' import CramSlice from '../slice' import CramContainerCompressionScheme from './compressionScheme' import CramFile from '../file' +import { getSectionParsers } from '../sectionParsers' export default class CramContainer { constructor( @@ -11,20 +12,21 @@ export default class CramContainer { public filePosition: number, ) {} - // memoize getHeader() { return this._readContainerHeader(this.filePosition) } - // memoize async getCompressionHeaderBlock() { const containerHeader = await this.getHeader() - // if there are no records in the container, there will be no compression header - if (!containerHeader.numRecords) { + // if there are no records in the container, there will be no compression + // header + if (!containerHeader?.numRecords) { return null } - const sectionParsers = await this.file.getSectionParsers() + const { majorVersion } = await this.file.getDefinition() + const sectionParsers = getSectionParsers(majorVersion) + const block = await this.getFirstBlock() if (block === undefined) { return undefined @@ -34,6 +36,7 @@ export default class CramContainer { `invalid content type ${block.contentType} in what is supposed to be the compression header block`, ) } + const content = parseItem( block.content, sectionParsers.cramCompressionHeader.parser, @@ -48,16 +51,20 @@ export default class CramContainer { async getFirstBlock() { const containerHeader = await this.getHeader() + if (!containerHeader) { + return undefined + } return this.file.readBlock(containerHeader._endPosition) } - // parses the compression header data into a CramContainerCompressionScheme object - // memoize + // parses the compression header data into a CramContainerCompressionScheme + // object async getCompressionScheme() { const header = await this.getCompressionHeaderBlock() if (!header) { return undefined } + return new CramContainerCompressionScheme(header.parsedContent) } @@ -68,11 +75,15 @@ export default class CramContainer { } async _readContainerHeader(position: number) { - const sectionParsers = await this.file.getSectionParsers() + const { majorVersion } = await this.file.getDefinition() + const sectionParsers = getSectionParsers(majorVersion) const { cramContainerHeader1, cramContainerHeader2 } = sectionParsers const { size: fileSize } = await this.file.stat() if (position >= fileSize) { + console.warn( + `position:${position}>=fileSize:${fileSize} in cram container`, + ) return undefined } @@ -80,11 +91,11 @@ export default class CramContainer { // how much to buffer until you read numLandmarks const bytes1 = Buffer.allocUnsafe(cramContainerHeader1.maxLength) await this.file.read(bytes1, 0, cramContainerHeader1.maxLength, position) - const header1 = parseItem(bytes1, cramContainerHeader1.parser) as any + const header1 = parseItem(bytes1, cramContainerHeader1.parser) const numLandmarksSize = itf8Size(header1.numLandmarks) if (position + header1.length >= fileSize) { console.warn( - `${this.file}: container header at ${position} indicates that the container has length ${header1.length}, which extends beyond the length of the file. Skipping this container.`, + `container header at ${position} indicates that the container has length ${header1.length}, which extends beyond the length of the file. Skipping this container.`, ) return undefined } diff --git a/src/cramFile/file.ts b/src/cramFile/file.ts index c7c0761a..c437b627 100644 --- a/src/cramFile/file.ts +++ b/src/cramFile/file.ts @@ -2,7 +2,6 @@ import { unzip } from '../unzip' import crc32 from 'buffer-crc32' import QuickLRU from 'quick-lru' import htscodecs from '@jkbonfield/htscodecs' -import { Parser } from '@gmod/binary-parser' // @ts-expect-error import bzip2 from 'bzip2' import { XzReadableStream } from 'xz-decompress' @@ -11,7 +10,7 @@ import ransuncompress from '../rans' import { BlockHeader, CompressionMethod, - cramFileDefinition as cramFileDefinitionParser, + cramFileDefinition, getSectionParsers, } from './sectionParsers' @@ -32,25 +31,20 @@ function bufferToStream(buf: Buffer) { }) } -//source:https://abdulapopoola.com/2019/01/20/check-endianness-with-javascript/ +// source:https://abdulapopoola.com/2019/01/20/check-endianness-with-javascript/ function getEndianness() { const uInt32 = new Uint32Array([0x11223344]) const uInt8 = new Uint8Array(uInt32.buffer) if (uInt8[0] === 0x44) { - return 0 //little-endian + return 0 // little-endian } else if (uInt8[0] === 0x11) { - return 1 //big-endian + return 1 // big-endian } else { - return 2 //mixed-endian? + return 2 // mixed-endian? } } -// export type CramFileSource = -// | { url: string; path?: undefined; filehandle?: undefined } -// | { path: string; url?: undefined; filehandle?: undefined } -// | { filehandle: Filehandle; url?: undefined; path?: undefined } - export interface CramFileSource { filehandle?: Filehandle url?: string @@ -110,15 +104,7 @@ export default class CramFile { } // can just read this object like a filehandle - read( - buffer: Buffer, - offset: number, - length: number, - position: number, - ): Promise<{ - bytesRead: number - buffer: Buffer - }> { + read(buffer: Buffer, offset: number, length: number, position: number) { return this.file.read(buffer, offset, length, position) } @@ -129,10 +115,10 @@ export default class CramFile { // memoized async getDefinition() { - const headbytes = Buffer.allocUnsafe(cramFileDefinitionParser.maxLength) - await this.file.read(headbytes, 0, cramFileDefinitionParser.maxLength, 0) - const definition = cramFileDefinitionParser.parser.parse(headbytes) - .result as any + const { maxLength, parser } = cramFileDefinition() + const headbytes = Buffer.allocUnsafe(maxLength) + await this.file.read(headbytes, 0, maxLength, 0) + const definition = parser(headbytes).value if (definition.majorVersion !== 2 && definition.majorVersion !== 3) { throw new CramUnimplementedError( `CRAM version ${definition.majorVersion} not supported`, @@ -169,21 +155,16 @@ export default class CramFile { return this.header } - // memoize - async getSectionParsers() { - const { majorVersion } = await this.getDefinition() - return getSectionParsers(majorVersion) - } - async getContainerById(containerNumber: number) { - const sectionParsers = await this.getSectionParsers() + const { majorVersion } = await this.getDefinition() + const sectionParsers = getSectionParsers(majorVersion) let position = sectionParsers.cramFileDefinition.maxLength const { size: fileSize } = await this.file.stat() const { cramContainerHeader1 } = sectionParsers // skip with a series of reads to the proper container let currentContainer - for (let i = 0; i <= containerNumber; i += 1) { + for (let i = 0; i <= containerNumber; i++) { // if we are about to go off the end of the file // and have not found that container, it does not exist if (position + cramContainerHeader1.maxLength + 8 >= fileSize) { @@ -197,13 +178,12 @@ export default class CramFile { `container ${containerNumber} not found in file`, ) } - // if this is the first container, read all the blocks in the - // container to determine its length, because we cannot trust - // the container header's given length due to a bug somewhere - // in htslib + // if this is the first container, read all the blocks in the container + // to determine its length, because we cannot trust the container + // header's given length due to a bug somewhere in htslib if (i === 0) { position = currentHeader._endPosition - for (let j = 0; j < currentHeader.numBlocks; j += 1) { + for (let j = 0; j < currentHeader.numBlocks; j++) { const block = await this.readBlock(position) if (block === undefined) { return undefined @@ -239,7 +219,8 @@ export default class CramFile { * @returns {Promise[number]} the number of containers in the file */ async containerCount(): Promise { - const sectionParsers = await this.getSectionParsers() + const { majorVersion } = await this.getDefinition() + const sectionParsers = getSectionParsers(majorVersion) const { size: fileSize } = await this.file.stat() const { cramContainerHeader1 } = sectionParsers @@ -256,7 +237,7 @@ export default class CramFile { // header's given length due to a bug somewhere in htslib if (containerCount === 0) { position = currentHeader._endPosition - for (let j = 0; j < currentHeader.numBlocks; j += 1) { + for (let j = 0; j < currentHeader.numBlocks; j++) { const block = await this.readBlock(position) if (block === undefined) { return undefined @@ -278,7 +259,8 @@ export default class CramFile { } async readBlockHeader(position: number) { - const sectionParsers = await this.getSectionParsers() + const { majorVersion } = await this.getDefinition() + const sectionParsers = getSectionParsers(majorVersion) const { cramBlockHeader } = sectionParsers const { size: fileSize } = await this.file.stat() @@ -292,7 +274,10 @@ export default class CramFile { } async _parseSection( - section: { parser: Parser; maxLength: number }, + section: { + maxLength: number + parser: (buffer: Buffer, offset: number) => { offset: number; value: T } + }, position: number, size = section.maxLength, preReadBuffer = undefined, @@ -363,9 +348,9 @@ export default class CramFile { } } - async readBlock(position: number): Promise { + async readBlock(position: number) { const { majorVersion } = await this.getDefinition() - const sectionParsers = await this.getSectionParsers() + const sectionParsers = getSectionParsers(majorVersion) const blockHeader = await this.readBlockHeader(position) if (blockHeader === undefined) { return undefined diff --git a/src/cramFile/record.ts b/src/cramFile/record.ts index 093075e2..b433a9da 100644 --- a/src/cramFile/record.ts +++ b/src/cramFile/record.ts @@ -1,6 +1,6 @@ import Constants from './constants' import CramContainerCompressionScheme from './container/compressionScheme' -import decodeRecord from './slice/decodeRecord' +import type decodeRecord from './slice/decodeRecord' export interface RefRegion { start: number diff --git a/src/cramFile/sectionParsers.ts b/src/cramFile/sectionParsers.ts index ef04105b..2fef39bb 100644 --- a/src/cramFile/sectionParsers.ts +++ b/src/cramFile/sectionParsers.ts @@ -1,117 +1,160 @@ -import { Parser } from '@gmod/binary-parser' import { TupleOf } from '../typescript' -import { ParsedItem } from './util' +import { parseItf8, parseLtf8 } from './util' import { DataSeriesEncodingMap } from './codecs/dataSeriesTypes' import { CramEncoding } from './encoding' -const singleItf8 = new Parser().itf8() - -const cramFileDefinition = { - parser: new Parser() - .string('magic', { length: 4 }) - .uint8('majorVersion') - .uint8('minorVersion') - .string('fileId', { length: 20, stripNull: true }), - maxLength: 26, +export function cramFileDefinition() { + return { + parser: (buffer: Buffer, _startOffset = 0) => { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + let offset = 0 + const magic = buffer.subarray(offset, offset + 4).toString() + offset += 4 + const majorVersion = dataView.getUint8(offset) + offset += 1 + const minorVersion = dataView.getUint8(offset) + offset += 1 + const fileId = b + .subarray(offset, offset + 20) + .toString() + .replaceAll('\0', '') + offset += 20 + return { + value: { + magic, + majorVersion, + minorVersion, + fileId, + }, + offset, + } + }, + maxLength: 26, + } } - -const cramBlockHeader = { - parser: new Parser() - .uint8('compressionMethod', { - formatter: /* istanbul ignore next */ b => { - const method = [ - 'raw', - 'gzip', - 'bzip2', - 'lzma', - 'rans', - 'rans4x16', - 'arith', - 'fqzcomp', - 'tok3', - ][b] - if (!method) { - throw new Error(`compression method number ${b} not implemented`) - } - return method - }, - }) - .uint8('contentType', { - formatter: /* istanbul ignore next */ b => { - const type = [ - 'FILE_HEADER', - 'COMPRESSION_HEADER', - 'MAPPED_SLICE_HEADER', - 'UNMAPPED_SLICE_HEADER', // < only used in cram v1 - 'EXTERNAL_DATA', - 'CORE_DATA', - ][b] - if (!type) { - throw new Error(`invalid block content type id ${b}`) - } - return type +export function cramBlockHeader() { + const parser = (buffer: Buffer, _startOffset = 0) => { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + let offset = 0 + const d = dataView.getUint8(offset) + const compressionMethod = [ + 'raw', + 'gzip', + 'bzip2', + 'lzma', + 'rans', + 'rans4x16', + 'arith', + 'fqzcomp', + 'tok3', + ][d] + if (!compressionMethod) { + throw new Error(`compression method number ${d} not implemented`) + } + offset += 1 + + const c = dataView.getUint8(offset) + const contentType = [ + 'FILE_HEADER', + 'COMPRESSION_HEADER', + 'MAPPED_SLICE_HEADER', + 'UNMAPPED_SLICE_HEADER', // < only used in cram v1 + 'EXTERNAL_DATA', + 'CORE_DATA', + ][c] + if (!contentType) { + throw new Error(`invalid block content type id ${c}`) + } + offset += 1 + + const [contentId, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [compressedSize, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + const [uncompressedSize, newOffset3] = parseItf8(buffer, offset) + offset += newOffset3 + return { + offset, + value: { + uncompressedSize, + compressedSize, + contentId, + contentType: contentType as + | 'FILE_HEADER' + | 'COMPRESSION_HEADER' + | 'MAPPED_SLICE_HEADER' + | 'UNMAPPED_SLICE_HEADER' // < only used in cram v1 + | 'EXTERNAL_DATA' + | 'CORE_DATA', + compressionMethod: compressionMethod as CompressionMethod, }, - }) - .itf8('contentId') - .itf8('compressedSize') - .itf8('uncompressedSize'), - maxLength: 17, + } + } + return { parser, maxLength: 17 } } -const cramBlockCrc32 = { - parser: new Parser().uint32('crc32'), - maxLength: 4, +export function cramBlockCrc32() { + return { + parser: (buffer: Buffer, offset: number) => { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + const crc32 = dataView.getUint32(offset, true) + offset += 4 + return { + offset, + value: { + crc32, + }, + } + }, + maxLength: 4, + } } -// const ENCODING_NAMES = [ -// 'NULL', // 0 -// 'EXTERNAL', // 1 -// 'GOLOMB', // 2 -// 'HUFFMAN_INT', // 3 -// 'BYTE_ARRAY_LEN', // 4 -// 'BYTE_ARRAY_STOP', // 5 -// 'BETA', // 6 -// 'SUBEXP', // 7 -// 'GOLOMB_RICE', // 8 -// 'GAMMA', // 9 -// ] - export type CramTagDictionary = string[][] -const cramTagDictionary = new Parser().itf8('size').buffer('ents', { - length: 'size', - formatter: /* istanbul ignore next */ buffer => { - function makeTagSet(stringStart: number, stringEnd: number) { - const str = buffer.toString('utf8', stringStart, stringEnd) - const tags = [] - for (let i = 0; i < str.length; i += 3) { - tags.push(str.slice(i, i + 3)) - } - return tags - } +function makeTagSet(buffer: Buffer, stringStart: number, stringEnd: number) { + const str = buffer.toString('utf8', stringStart, stringEnd) + const tags = [] + for (let i = 0; i < str.length; i += 3) { + tags.push(str.slice(i, i + 3)) + } + return tags +} - /* eslint-disable */ - var tagSets = [] - var stringStart = 0 - var i - /* eslint-enable */ - for (i = 0; i < buffer.length; i += 1) { - if (!buffer[i]) { - tagSets.push(makeTagSet(stringStart, i)) - stringStart = i + 1 +export function cramTagDictionary() { + return { + parser: (buffer: Buffer, offset: number) => { + const [size, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const subbuf = buffer.subarray(offset, offset + size) + offset += size + + const tagSets = [] + let stringStart = 0 + let i = 0 + for (; i < subbuf.length; i++) { + if (!subbuf[i]) { + tagSets.push(makeTagSet(subbuf, stringStart, i)) + stringStart = i + 1 + } + } + if (i > stringStart) { + tagSets.push(makeTagSet(subbuf, stringStart, i)) } - } - if (i > stringStart) { - tagSets.push(makeTagSet(stringStart, i)) - } - return tagSets - }, -}) -// const cramPreservationMapKeys = 'XX RN AP RR SM TD'.split(' ') -const parseByteAsBool = new Parser().uint8(null, { - formatter: /* istanbul ignore next */ val => !!val, -}) + return { + value: { + size, + ents: tagSets, + }, + offset, + } + }, + } +} export interface CramPreservationMap { MI: boolean @@ -124,38 +167,72 @@ export interface CramPreservationMap { TD: CramTagDictionary } -const cramPreservationMap = new Parser() - .itf8('mapSize') - .itf8('mapCount') - .array('ents', { - length: 'mapCount', - type: new Parser() - .string('key', { - length: 2, - stripNull: false, - // formatter: val => cramPreservationMapKeys[val] || 0, - }) - .choice('value', { - tag: 'key', - choices: { - MI: parseByteAsBool, - UI: parseByteAsBool, - PI: parseByteAsBool, - RN: parseByteAsBool, - AP: parseByteAsBool, - RR: parseByteAsBool, - SM: new Parser().array(null, { type: 'uint8', length: 5 }), - TD: new Parser().nest(null, { - type: cramTagDictionary, - formatter: /* istanbul ignore next */ data => data.ents, - }), +export function cramPreservationMap() { + return { + parser: (buffer: Buffer, offset: number) => { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + const [mapSize, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [mapCount, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + const ents = [] + for (let i = 0; i < mapCount; i++) { + const key = + String.fromCharCode(buffer[offset]) + + String.fromCharCode(buffer[offset + 1]) + offset += 2 + + if ( + key === 'MI' || + key === 'UI' || + key === 'PI' || + key === 'RN' || + key === 'AP' || + key === 'RR' + ) { + ents.push({ + key, + value: !!dataView.getUint8(offset), + }) + offset += 1 + } else if (key === 'SM') { + ents.push({ + key, + value: [ + dataView.getUint8(offset), + dataView.getUint8(offset + 1), + dataView.getUint8(offset + 2), + dataView.getUint8(offset + 3), + dataView.getUint8(offset + 4), + ], + }) + offset += 5 + } else if (key === 'TD') { + const { offset: offsetRet, value } = cramTagDictionary().parser( + buffer, + offset, + ) + ents.push({ key, value: value.ents }) + offset = offsetRet + } else { + throw new Error(`unknown key ${key}`) + } + } + return { + value: { + mapSize, + mapCount, + ents, }, - }), - }) + offset, + } + }, + } +} -/* istanbul ignore next */ -function formatMap(data: { ents: { key: string; value: T }[] }) { - const map: Record = {} +function formatMap(data: { ents: { key: string; value: unknown }[] }) { + const map: Record = {} for (const { key, value } of data.ents) { if (map[key]) { console.warn(`duplicate key ${key} in map`) @@ -165,12 +242,6 @@ function formatMap(data: { ents: { key: string; value: T }[] }) { return map } -const unversionedParsers = { - cramFileDefinition, - cramBlockHeader, - cramBlockCrc32, -} - export interface MappedSliceHeader { refSeqId: number refSeqStart: number @@ -181,7 +252,7 @@ export interface MappedSliceHeader { numContentIds: number contentIds: number[] refBaseBlockId: number - md5: TupleOf + md5?: TupleOf } export interface UnmappedSliceHeader { @@ -190,227 +261,477 @@ export interface UnmappedSliceHeader { numBlocks: number numContentIds: number contentIds: number[] - md5: TupleOf + md5?: TupleOf } export function isMappedSliceHeader( - header: MappedSliceHeader | UnmappedSliceHeader, + header: unknown, ): header is MappedSliceHeader { return typeof (header as any).refSeqId === 'number' } -// each of these is a function of the major and minor version -const versionedParsers = { - // assemble a section parser for the unmapped slice header, with slight - // variations depending on the major version of the cram file - cramUnmappedSliceHeader(majorVersion: number) { - let maxLength = 0 - let parser = new Parser().itf8('numRecords') - maxLength += 5 +interface Value { + codecId: number + parametersBytes: number + parameters: Record +} +// assemble a section parser for the unmapped slice header, with slight +// variations depending on the major version of the cram file +function cramUnmappedSliceHeader(majorVersion: number) { + let maxLength = 0 + maxLength += 5 + maxLength += 9 + maxLength += 5 * 2 + maxLength += 16 + + const parser = (buffer: Buffer, offset: number) => { + const [numRecords, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + let recordCounter = 0 // recordCounter is itf8 in a CRAM v2 file, absent in CRAM v1 if (majorVersion >= 3) { - parser = parser.ltf8('recordCounter') - maxLength += 9 + const [rc, newOffset2] = parseLtf8(buffer, offset) + offset += newOffset2 + recordCounter = rc } else if (majorVersion === 2) { - parser = parser.itf8('recordCounter') - maxLength += 5 + const [rc, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + recordCounter = rc + } else { + console.warn('recordCounter=0') } - parser = parser - .itf8('numBlocks') - .itf8('numContentIds') - .array('contentIds', { - type: singleItf8, - length: 'numContentIds', - }) - maxLength += 5 * 2 // + numContentIds*5 + const [numBlocks, newOffset3] = parseItf8(buffer, offset) + offset += newOffset3 + const [numContentIds, newOffset4] = parseItf8(buffer, offset) + offset += newOffset4 + const contentIds = [] + for (let i = 0; i < numContentIds; i++) { + const [id, newOffset5] = parseItf8(buffer, offset) + offset += newOffset5 + contentIds.push(id) + } // the md5 sum is missing in cram v1 + let md5 if (majorVersion >= 2) { - parser = parser.array('md5', { type: 'uint8', length: 16 }) - maxLength += 16 + md5 = [...buffer.subarray(offset, offset + 16)] as TupleOf + offset += 16 } - const maxLengthFunc = (numContentIds: number) => - maxLength + numContentIds * 5 + return { + value: { + recordCounter, + md5, + contentIds, + numContentIds, + numBlocks, + numRecords, + }, + offset, + } + } + return { + parser, + maxLength: (numContentIds: number) => maxLength + numContentIds * 5, + } +} - return { parser, maxLength: maxLengthFunc } // : p, maxLength: numContentIds => 5 + 9 + 5 * 2 + 5 * numContentIds + 16 } - }, +// assembles a section parser for the unmapped slice header, with slight +// variations depending on the major version of the cram file +function cramMappedSliceHeader(majorVersion: number) { + let maxLength = 0 + maxLength += 5 * 4 // EL0 + maxLength += 9 // EL1 + maxLength += 5 * 3 // EL2 ITF8s + maxLength += 16 // MD5 + + return { + parser: (buffer: Buffer, offset: number) => { + // L0 + const [refSeqId, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [refSeqStart, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + const [refSeqSpan, newOffset3] = parseItf8(buffer, offset) + offset += newOffset3 + const [numRecords, newOffset4] = parseItf8(buffer, offset) + offset += newOffset4 + // EL0 + + // L1 + let recordCounter = 0 + if (majorVersion >= 3) { + const [rc, newOffset5] = parseLtf8(buffer, offset) + offset += newOffset5 + recordCounter = rc + } else if (majorVersion === 2) { + const [rc, newOffset5] = parseItf8(buffer, offset) + offset += newOffset5 + recordCounter = rc + } else { + console.warn('majorVersion is <2, recordCounter set to 0') + } + // EL1 + + // L2 + const [numBlocks, newOffset6] = parseItf8(buffer, offset) + offset += newOffset6 + const [numContentIds, newOffset7] = parseItf8(buffer, offset) + offset += newOffset7 + const contentIds = [] + for (let i = 0; i < numContentIds; i++) { + const [id, newOffset5] = parseItf8(buffer, offset) + offset += newOffset5 + contentIds.push(id) + } + const [refBaseBlockId, newOffset8] = parseItf8(buffer, offset) + offset += newOffset8 + // EL2 + + // the md5 sum is missing in cram v1 + let md5 + if (majorVersion >= 2) { + md5 = [...buffer.subarray(offset, offset + 16)] as TupleOf + offset += 16 + } - // assembles a section parser for the unmapped slice header, with slight - // variations depending on the major version of the cram file - cramMappedSliceHeader(majorVersion: number) { - let parser = new Parser() - .itf8('refSeqId') - .itf8('refSeqStart') - .itf8('refSeqSpan') - .itf8('numRecords') - let maxLength = 5 * 4 + return { + value: { + md5, + numBlocks, + numRecords, + numContentIds, + refSeqSpan, + refSeqId, + refSeqStart, + recordCounter, + refBaseBlockId, + contentIds, + }, + offset, + } + }, + maxLength: (numContentIds: number) => maxLength + numContentIds * 5, + } +} - if (majorVersion >= 3) { - parser = parser.ltf8('recordCounter') - maxLength += 9 - } else if (majorVersion === 2) { - parser = parser.itf8('recordCounter') - maxLength += 5 +function cramEncoding() { + return { + parser: (buffer: Buffer, offset: number) => cramEncodingSub(buffer, offset), + } +} + +function cramEncodingSub( + buffer: Buffer, + offset: number, +): { value: Value; offset: number } { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + const [codecId, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [parametersBytes, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + + const parameters = {} as Record + + if (codecId === 0) { + // NULL + } else if (codecId === 1) { + // EXTERNAL + const [bc, newOffset3] = parseItf8(buffer, offset) + parameters.blockContentId = bc + offset += newOffset3 + } else if (codecId === 2) { + // GOLUMB + const [off, newOffset3] = parseItf8(buffer, offset) + parameters.offset = off + offset += newOffset3 + const [M2, newOffset4] = parseItf8(buffer, offset) + parameters.M = M2 + offset += newOffset4 + } else if (codecId === 3) { + // HUFFMAN_INT + const val = parseItf8(buffer, offset) + const numCodes = val[0] + offset += val[1] + const symbols = [] as number[] + for (let i = 0; i < numCodes; i++) { + const code = parseItf8(buffer, offset) + symbols.push(code[0]) + offset += code[1] } + parameters.symbols = symbols + const val2 = parseItf8(buffer, offset) + const numLengths = val[0] + parameters.numLengths = numLengths + parameters.numCodes = numCodes + parameters.numLengths = numLengths + offset += val2[1] + const bitLengths = [] as number[] + for (let i = 0; i < numLengths; i++) { + const len = parseItf8(buffer, offset) + offset += len[1] + bitLengths.push(len[0]) + } + parameters.bitLengths = bitLengths + } else if (codecId === 4) { + // BYTE_ARRAY_LEN + const { value: lengthsEncoding, offset: newOffset1 } = cramEncodingSub( + buffer, + offset, + ) + parameters.lengthsEncoding = lengthsEncoding + offset = newOffset1 + const { value: valuesEncoding, offset: newOffset2 } = cramEncodingSub( + buffer, + offset, + ) + parameters.valuesEncoding = valuesEncoding + offset = newOffset2 + } else if (codecId === 5) { + // BYTE_ARRAY_STOP + parameters.stopByte = dataView.getUint8(offset) + offset += 1 + const [blockContentId, newOffset1] = parseItf8(buffer, offset) + parameters.blockContentId = blockContentId + offset += newOffset1 + } else if (codecId === 6) { + // BETA + const [off, newOffset1] = parseItf8(buffer, offset) + parameters.offset = off + offset += newOffset1 + const [len, newOffset2] = parseItf8(buffer, offset) + parameters.length = len + offset += newOffset2 + } else if (codecId === 7) { + // SUBEXP + const [off, newOffset1] = parseItf8(buffer, offset) + parameters.offset = off + offset += newOffset1 + const [K, newOffset2] = parseItf8(buffer, offset) + parameters.K = K + offset += newOffset2 + } else if (codecId === 8) { + // GOLOMB_RICE + const [off, newOffset1] = parseItf8(buffer, offset) + parameters.offset = off + offset += newOffset1 + const [l2m, newOffset2] = parseItf8(buffer, offset) + parameters.log2m = l2m + offset += newOffset2 + } else if (codecId === 9) { + // GAMMA + const [off, newOffset1] = parseItf8(buffer, offset) + parameters.offset = off + offset += newOffset1 + } else { + throw new Error(`unknown codecId ${codecId}`) + } - parser = parser - .itf8('numBlocks') - .itf8('numContentIds') - .array('contentIds', { - type: singleItf8, - length: 'numContentIds', - }) - .itf8('refBaseBlockId') - maxLength += 5 * 3 + return { + value: { + codecId, + parametersBytes, + parameters, + }, + offset, + } +} - // the md5 sum is missing in cram v1 - if (majorVersion >= 2) { - parser = parser.array('md5', { type: 'uint8', length: 16 }) - maxLength += 16 - } +function cramDataSeriesEncodingMap() { + return { + parser: (buffer: Buffer, offset: number) => { + const [mapSize, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [mapCount, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + const ents = [] + for (let i = 0; i < mapCount; i++) { + const key = + String.fromCharCode(buffer[offset]) + + String.fromCharCode(buffer[offset + 1]) + offset += 2 + + const { value, offset: newOffset4 } = cramEncodingSub(buffer, offset) + offset = newOffset4 + ents.push({ key, value }) + } + return { + value: { + mapSize, + ents, + mapCount, + }, + offset, + } + }, + } +} - const maxLengthFunc = (numContentIds: number) => - maxLength + numContentIds * 5 - - return { parser, maxLength: maxLengthFunc } - }, - - cramEncoding(_majorVersion: number) { - const parser = new Parser() - .namely('cramEncoding') - .itf8('codecId') - .itf8('parametersBytes') - .choice('parameters', { - tag: 'codecId', - choices: { - 0: new Parser(), // NULL - 1: new Parser().itf8('blockContentId'), // EXTERNAL - 2: new Parser().itf8('offset').itf8('M'), // GOLOMB, - // HUFFMAN_INT - 3: Parser.start() - .itf8('numCodes') - .array('symbols', { length: 'numCodes', type: singleItf8 }) - .itf8('numLengths') - .array('bitLengths', { length: 'numLengths', type: singleItf8 }), - 4: Parser.start() // BYTE_ARRAY_LEN - .nest('lengthsEncoding', { type: 'cramEncoding' }) - .nest('valuesEncoding', { type: 'cramEncoding' }), - // BYTE_ARRAY_STOP is a little different for CRAM v1 - 5: new Parser().uint8('stopByte').itf8('blockContentId'), - 6: new Parser().itf8('offset').itf8('length'), // BETA - 7: new Parser().itf8('offset').itf8('K'), // SUBEXP - 8: new Parser().itf8('offset').itf8('log2m'), // GOLOMB_RICE - 9: new Parser().itf8('offset'), // GAMMA +function cramTagEncodingMap() { + return { + parser: (buffer: Buffer, offset: number) => { + const [mapSize, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [mapCount, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + const ents = [] + for (let i = 0; i < mapCount; i++) { + const [k0, newOffset3] = parseItf8(buffer, offset) + offset += newOffset3 + const key = + String.fromCharCode((k0 >> 16) & 0xff) + + String.fromCharCode((k0 >> 8) & 0xff) + + String.fromCharCode(k0 & 0xff) + + const { value, offset: newOffset4 } = cramEncodingSub(buffer, offset) + offset = newOffset4 + ents.push({ key, value }) + } + return { + value: { + mapSize, + ents, + mapCount, }, - }) - - return { parser } - }, - - cramDataSeriesEncodingMap(majorVersion: number) { - return new Parser() - .itf8('mapSize') - .itf8('mapCount') - .array('ents', { - length: 'mapCount', - type: new Parser() - .string('key', { length: 2, stripNull: false }) - .nest('value', { type: this.cramEncoding(majorVersion).parser }), - }) - }, - - cramTagEncodingMap(majorVersion: number) { - return new Parser() - .itf8('mapSize') - .itf8('mapCount') - .array('ents', { - length: 'mapCount', - type: new Parser() - .itf8('key', { - formatter: /* istanbul ignore next */ integerRepresentation => - /* istanbul ignore next */ - String.fromCharCode((integerRepresentation >> 16) & 0xff) + - String.fromCharCode((integerRepresentation >> 8) & 0xff) + - String.fromCharCode(integerRepresentation & 0xff), - }) - .nest('value', { type: this.cramEncoding(majorVersion).parser }), - }) - }, - - cramCompressionHeader(majorVersion: number) { - let parser = new Parser() - // TODO: if we want to support CRAM v1, we will need to refactor - // compression header into 2 parts to parse the landmarks, - // like the container header - parser = parser - .nest('preservation', { - type: cramPreservationMap, - formatter: formatMap, - }) - .nest('dataSeriesEncoding', { - type: this.cramDataSeriesEncodingMap(majorVersion), - formatter: formatMap, - }) - .nest('tagEncoding', { - type: this.cramTagEncodingMap(majorVersion), - formatter: formatMap, - }) - return { parser } - }, - - cramContainerHeader1(majorVersion: number) { - let parser = new Parser() - .int32('length') // byte size of the container data (blocks) - .itf8('refSeqId') // reference sequence identifier, -1 for unmapped reads, -2 for multiple reference sequences - .itf8('refSeqStart') // the alignment start position or 0 for unmapped reads - .itf8('alignmentSpan') // the length of the alignment or 0 for unmapped reads - .itf8('numRecords') // number of records in the container - let maxLength = 4 + 5 * 4 + offset, + } + }, + } +} - if (majorVersion >= 3) { - parser = parser.ltf8('recordCounter') // 1-based sequential index of records in the file/stream. - maxLength += 9 - } else if (majorVersion === 2) { - parser = parser.itf8('recordCounter') - maxLength += 5 - } +function cramCompressionHeader() { + return { + parser: (buffer: Buffer, offset: number) => { + // TODO: if we want to support CRAM v1, we will need to refactor + // compression header into 2 parts to parse the landmarks, like the + // container header + const { value: preservation, offset: newOffset1 } = + cramPreservationMap().parser(buffer, offset) + offset = newOffset1 + + const { value: dataSeriesEncoding, offset: newOffset2 } = + cramDataSeriesEncodingMap().parser(buffer, offset) + offset = newOffset2 + + const { value: tagEncoding, offset: newOffset3 } = + cramTagEncodingMap().parser(buffer, offset) + offset = newOffset3 + + return { + value: { + dataSeriesEncoding: formatMap( + dataSeriesEncoding, + ) as DataSeriesEncodingMap, + preservation: formatMap( + preservation, + ) as unknown as CramPreservationMap, + tagEncoding: formatMap(tagEncoding) as Record, + }, + offset, + } + }, + } +} - if (majorVersion > 1) { - parser = parser.ltf8('numBases') // number of read bases - maxLength += 9 - } - parser = parser - .itf8('numBlocks') // the number of blocks - .itf8('numLandmarks') // the number of landmarks - maxLength += 5 + 5 - - return { parser, maxLength } - }, - - cramContainerHeader2(majorVersion: number) { - let parser = new Parser() - .itf8('numLandmarks') // the number of blocks - // Each integer value of this array is a byte offset - // into the blocks byte array. Landmarks are used for - // random access indexing. - .array('landmarks', { - type: new Parser().itf8(), - length: 'numLandmarks', - }) - - let crcLength = 0 - if (majorVersion >= 3) { - parser = parser.uint32('crc32') - crcLength = 4 - } - return { - parser, - maxLength: (numLandmarks: number) => 5 + numLandmarks * 5 + crcLength, - } - }, +function cramContainerHeader1(majorVersion: number) { + let maxLength = 4 + maxLength += 5 * 4 + maxLength += 9 + maxLength += 9 + maxLength += 5 + 5 + return { + maxLength, + parser: (buffer: Buffer, offset: number) => { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + // byte size of the container data (blocks) + const length = dataView.getInt32(offset, true) + offset += 4 + // reference sequence identifier, -1 for unmapped reads, -2 for multiple + // reference sequences + const [refSeqId, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const [refSeqStart, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + const [alignmentSpan, newOffset3] = parseItf8(buffer, offset) + offset += newOffset3 + const [numRecords, newOffset4] = parseItf8(buffer, offset) + offset += newOffset4 + + let recordCounter = 0 + if (majorVersion >= 3) { + const [rc, newOffset5] = parseLtf8(buffer, offset) + recordCounter = rc + offset += newOffset5 + } else if (majorVersion === 2) { + const [rc, newOffset5] = parseItf8(buffer, offset) + recordCounter = rc + offset += newOffset5 + } else { + console.warn('setting recordCounter=0') + } + + let numBases + if (majorVersion > 1) { + const [n, newOffset5] = parseLtf8(buffer, offset) + numBases = n + offset += newOffset5 + } + const [numBlocks, newOffset6] = parseItf8(buffer, offset) + offset += newOffset6 + const [numLandmarks, newOffset7] = parseItf8(buffer, offset) + offset += newOffset7 + return { + value: { + length, + refSeqId, + refSeqStart, + alignmentSpan, + numBlocks, + numLandmarks, + numBases, + recordCounter, + numRecords, + }, + offset, + } + }, + } +} + +function cramContainerHeader2(majorVersion: number) { + return { + parser: (buffer: Buffer, offset: number) => { + const b = buffer + const dataView = new DataView(b.buffer, b.byteOffset, b.length) + const [numLandmarks, newOffset1] = parseItf8(buffer, offset) + offset += newOffset1 + const landmarks = [] + for (let i = 0; i < numLandmarks; i++) { + const [landmark, newOffset2] = parseItf8(buffer, offset) + offset += newOffset2 + landmarks.push(landmark) + } + + let crc32 + if (majorVersion >= 3) { + crc32 = dataView.getUint32(offset, true) + offset += 4 + } + return { + value: { + ...(crc32 === undefined ? {} : { crc32 }), + numLandmarks, + landmarks, + }, + offset, + } + }, + maxLength: (numLandmarks: number) => 5 + 5 * numLandmarks + 4, + } } export type CompressionMethod = @@ -438,69 +759,26 @@ export interface BlockHeader { uncompressedSize: number } -export type CramCompressionHeader = ParsedItem<{ +export interface CramCompressionHeader { preservation: CramPreservationMap dataSeriesEncoding: DataSeriesEncodingMap tagEncoding: Record -}> - -function getSectionParsers(majorVersion: number): { - cramFileDefinition: { - parser: Parser<{ - magic: string - majorVersion: number - minorVersion: number - fileId: string - }> - maxLength: number - } - cramContainerHeader1: { - parser: Parser<{ - length: number - refSeqId: number - refSeqStart: number - alignmentSpan: number - numRecords: number - recordCounter: number - numBases: number - numBlocks: number - numLandmarks: number - }> - maxLength: number - } - cramContainerHeader2: { - parser: Parser<{ - numLandmarks: number - landmarks: number[] - crc32: number - }> - maxLength: (x: number) => number - } - cramBlockHeader: { - parser: Parser - maxLength: number - } - cramBlockCrc32: { - parser: Parser<{ crc32: number }> - maxLength: number - } - cramCompressionHeader: { - parser: Parser - } - cramMappedSliceHeader: { - parser: Parser - maxLength: (numContentIds: number) => number - } - cramUnmappedSliceHeader: { - parser: Parser - maxLength: (numContentIds: number) => number - } -} { - const parsers: any = Object.assign({}, unversionedParsers) - Object.keys(versionedParsers).forEach(parserName => { - parsers[parserName] = (versionedParsers as any)[parserName](majorVersion) - }) - return parsers + _size: number + _endPosition: number } -export { cramFileDefinition, getSectionParsers } +export function getSectionParsers(majorVersion: number) { + return { + cramFileDefinition: cramFileDefinition(), + cramBlockHeader: cramBlockHeader(), + cramBlockCrc32: cramBlockCrc32(), + cramDataSeriesEncodingMap: cramDataSeriesEncodingMap(), + cramTagEncodingMap: cramTagEncodingMap(), + cramCompressionHeader: cramCompressionHeader(), + cramEncoding: cramEncoding(), + cramUnmappedSliceHeader: cramUnmappedSliceHeader(majorVersion), + cramMappedSliceHeader: cramMappedSliceHeader(majorVersion), + cramContainerHeader1: cramContainerHeader1(majorVersion), + cramContainerHeader2: cramContainerHeader2(majorVersion), + } +} diff --git a/src/cramFile/slice/index.ts b/src/cramFile/slice/index.ts index ad2ab2d9..9b76e2b2 100644 --- a/src/cramFile/slice/index.ts +++ b/src/cramFile/slice/index.ts @@ -7,6 +7,7 @@ import CramRecord from '../record' import CramContainer from '../container' import CramFile, { CramFileBlock } from '../file' import { + getSectionParsers, isMappedSliceHeader, MappedSliceHeader, UnmappedSliceHeader, @@ -191,10 +192,15 @@ export default class CramSlice { } // memoize - async getHeader(): Promise { + async getHeader() { // fetch and parse the slice header - const sectionParsers = await this.file.getSectionParsers() + const { majorVersion } = await this.file.getDefinition() + const sectionParsers = getSectionParsers(majorVersion) const containerHeader = await this.container.getHeader() + if (!containerHeader) { + throw new Error('wow') + } + const header = await this.file.readBlock( containerHeader._endPosition + this.containerPosition, ) @@ -230,7 +236,7 @@ export default class CramSlice { // read all the blocks into memory and store them let blockPosition = header._endPosition const blocks: CramFileBlock[] = new Array(header.parsedContent.numBlocks) - for (let i = 0; i < blocks.length; i += 1) { + for (let i = 0; i < blocks.length; i++) { const block = await this.file.readBlock(blockPosition) if (block === undefined) { throw new Error('block undefined') @@ -363,14 +369,14 @@ export default class CramSlice { this.file.options.checkSequenceMD5 && isMappedSliceHeader(sliceHeader.parsedContent) && sliceHeader.parsedContent.refSeqId >= 0 && - sliceHeader.parsedContent.md5.join('') !== '0000000000000000' + sliceHeader.parsedContent.md5?.join('') !== '0000000000000000' ) { const refRegion = await this.getReferenceRegion() if (refRegion) { const { seq, start, end } = refRegion const seqMd5 = sequenceMD5(seq) const storedMd5 = sliceHeader.parsedContent.md5 - .map(byte => (byte < 16 ? '0' : '') + byte.toString(16)) + ?.map(byte => (byte < 16 ? '0' : '') + byte.toString(16)) .join('') if (seqMd5 !== storedMd5) { throw new CramMalformedError( diff --git a/src/cramFile/util.ts b/src/cramFile/util.ts index 8cfef9bd..eb91e39f 100644 --- a/src/cramFile/util.ts +++ b/src/cramFile/util.ts @@ -1,5 +1,5 @@ import md5 from 'md5' -import { Parser } from '@gmod/binary-parser' +import Long from 'long' import { CramBufferOverrunError } from './codecs/getBits' export function itf8Size(v: number) { @@ -18,10 +18,7 @@ export function itf8Size(v: number) { return 5 } -export function parseItf8( - buffer: Uint8Array, - initialOffset: number, -): [number, number] { +export function parseItf8(buffer: Uint8Array, initialOffset: number) { let offset = initialOffset const countFlags = buffer[offset] let result @@ -60,106 +57,108 @@ export function parseItf8( 'Attempted to read beyond end of buffer; this file seems truncated.', ) } - return [result, offset - initialOffset] + return [result, offset - initialOffset] as const } -// parseLtf8(buffer, initialOffset) { -// let offset = initialOffset -// const countFlags = buffer[offset] -// let result -// if (countFlags < 0x80) { -// result = countFlags -// offset += 1 -// } else if (countFlags < 0xc0) { -// result = ((buffer[offset] << 8) | buffer[offset + 1]) & 0x3fff -// offset += 2 -// } else if (countFlags < 0xe0) { -// result = -// ((buffer[offset] << 16) | -// (buffer[offset + 1] << 8) | -// buffer[offset + 2]) & -// 0x1fffff -// offset += 3 -// } else if (countFlags < 0xf0) { -// result = -// ((buffer[offset] << 24) | -// (buffer[offset + 1] << 16) | -// (buffer[offset + 2] << 8) | -// buffer[offset + 3]) & -// 0x0fffffff -// offset += 4 -// } else if (countFlags < 0xf8) { -// result = -// ((buffer[offset] & 15) * Math.pow(2,32) + (buffer[offset + 1] << 24)) | -// ((buffer[offset + 2] << 16) | -// (buffer[offset + 3] << 8) | -// buffer[offset + 4]) -// // TODO *val_p = uv < 0x80000000UL ? uv : -((int32_t) (0xffffffffUL - uv)) - 1; -// offset += 5 -// } else if (countFlags < 0xfc) { -// result = -// ((((buffer[offset] & 7) << 8) | buffer[offset + 1]) * Math.pow(2,32) + -// (buffer[offset + 2] << 24)) | -// ((buffer[offset + 3] << 16) | -// (buffer[offset + 4] << 8) | -// buffer[offset + 5]) -// offset += 6 -// } else if (countFlags < 0xfe) { -// result = -// ((((buffer[offset] & 3) << 16) | -// (buffer[offset + 1] << 8) | -// buffer[offset + 2]) * -// Math.pow(2,32) + -// (buffer[offset + 3] << 24)) | -// ((buffer[offset + 4] << 16) | -// (buffer[offset + 5] << 8) | -// buffer[offset + 6]) -// offset += 7 -// } else if (countFlags < 0xff) { -// result = Long.fromBytesBE(buffer.slice(offset + 1, offset + 8)) -// if ( -// result.greaterThan(Number.MAX_SAFE_INTEGER) || -// result.lessThan(Number.MIN_SAFE_INTEGER) -// ) -// throw new CramUnimplementedError('integer overflow') -// result = result.toNumber() -// offset += 8 -// } else { -// result = Long.fromBytesBE(buffer.slice(offset + 1, offset + 9)) -// if ( -// result.greaterThan(Number.MAX_SAFE_INTEGER) || -// result.lessThan(Number.MIN_SAFE_INTEGER) -// ) -// throw new CramUnimplementedError('integer overflow') -// result = result.toNumber() -// offset += 9 -// } -// return [result, offset - initialOffset] -// }, - -export type ParsedItem = T & { - _endPosition: number - _size: number +export function parseLtf8(buffer: Buffer, initialOffset: number) { + let offset = initialOffset + const countFlags = buffer[offset] + let n + if (countFlags < 0x80) { + n = countFlags + offset += 1 + } else if (countFlags < 0xc0) { + n = ((buffer[offset] << 8) | buffer[offset + 1]) & 0x3fff + offset += 2 + } else if (countFlags < 0xe0) { + n = + ((buffer[offset] << 16) | + (buffer[offset + 1] << 8) | + buffer[offset + 2]) & + 0x1fffff + n = ((countFlags & 63) << 16) | buffer.readUInt16LE(offset + 1) + offset += 3 + } else if (countFlags < 0xf0) { + n = + ((buffer[offset] << 24) | + (buffer[offset + 1] << 16) | + (buffer[offset + 2] << 8) | + buffer[offset + 3]) & + 0x0fffffff + offset += 4 + } else if (countFlags < 0xf8) { + n = + ((buffer[offset] & 15) * Math.pow(2, 32) + (buffer[offset + 1] << 24)) | + ((buffer[offset + 2] << 16) | + (buffer[offset + 3] << 8) | + buffer[offset + 4]) + // TODO *val_p = uv < 0x80000000UL ? uv : -((int32_t) (0xffffffffUL - uv)) - 1; + offset += 5 + } else if (countFlags < 0xfc) { + n = + ((((buffer[offset] & 7) << 8) | buffer[offset + 1]) * Math.pow(2, 32) + + (buffer[offset + 2] << 24)) | + ((buffer[offset + 3] << 16) | + (buffer[offset + 4] << 8) | + buffer[offset + 5]) + offset += 6 + } else if (countFlags < 0xfe) { + n = + ((((buffer[offset] & 3) << 16) | + (buffer[offset + 1] << 8) | + buffer[offset + 2]) * + Math.pow(2, 32) + + (buffer[offset + 3] << 24)) | + ((buffer[offset + 4] << 16) | + (buffer[offset + 5] << 8) | + buffer[offset + 6]) + offset += 7 + } else if (countFlags < 0xff) { + n = Long.fromBytesBE( + buffer.slice(offset + 1, offset + 8) as unknown as number[], + ) + if ( + n.greaterThan(Number.MAX_SAFE_INTEGER) || + n.lessThan(Number.MIN_SAFE_INTEGER) + ) { + throw new Error('integer overflow') + } + n = n.toNumber() + offset += 8 + } else { + n = Long.fromBytesBE( + buffer.slice(offset + 1, offset + 9) as unknown as number[], + ) + if ( + n.greaterThan(Number.MAX_SAFE_INTEGER) || + n.lessThan(Number.MIN_SAFE_INTEGER) + ) { + throw new Error('integer overflow') + } + n = n.toNumber() + offset += 9 + } + return [n, offset - initialOffset] as const } export function parseItem( buffer: Buffer, - parser: Parser, + parser: (buffer: Buffer, offset: number) => { offset: number; value: T }, startBufferPosition = 0, startFilePosition = 0, -): ParsedItem { - const { offset, result } = parser.parse(buffer) +) { + const { offset, value } = parser(buffer, startBufferPosition) return { - ...result, + ...value, _endPosition: offset + startFilePosition, _size: offset - startBufferPosition, } } -// this would be nice as a decorator, but i'm a little worried about -// babel support for it going away or changing. -// memoizes a method in the stupidest possible way, with no regard for the -// arguments. actually, this only works on methods that take no arguments +// this would be nice as a decorator, but i'm a little worried about babel +// support for it going away or changing. memoizes a method in the stupidest +// possible way, with no regard for the arguments. actually, this only works +// on methods that take no arguments export function tinyMemoize(_class: any, methodName: any) { const method = _class.prototype[methodName] const memoAttrName = `_memo_${methodName}` diff --git a/src/typings/binary-parser.d.ts b/src/typings/binary-parser.d.ts deleted file mode 100644 index 4de8b1ab..00000000 --- a/src/typings/binary-parser.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -declare module '@gmod/binary-parser' { - export interface Options { - stripNull?: boolean - formatter?: (item: any) => any - length?: number | string | ((this: { $parent: unknown }) => void) - } - - export class Parser { - public static start(): Parser - - public uint8(name?: string | null, options?: Options): Parser - - public itf8(name?: string | null, options?: Options): Parser - - public ltf8(name?: string | null, options?: Options): Parser - - public uint32(name?: string | null, options?: Options): Parser - - public int32(name?: string | null, options?: Options): Parser - - public buffer(name?: string | null, options?: Options): Parser - - public string(name?: string | null, options?: Options): Parser - - public namely(name: string): Parser - - public nest( - name?: string | null, - options?: { type: Parser | string } & Options, - ): Parser - - public choice( - name?: string | null, - options?: { tag: string; choices: any } & Options, - ): Parser - - public array( - name?: string | null, - options?: { type: string | Parser } & Options, - ): Parser - - parse(bytes: Buffer): { result: T; offset: number } - } -} diff --git a/test/__snapshots__/dump1.test.ts.snap b/test/__snapshots__/dump1.test.ts.snap index 0598d3c1..3042a271 100644 --- a/test/__snapshots__/dump1.test.ts.snap +++ b/test/__snapshots__/dump1.test.ts.snap @@ -102,8 +102,6 @@ exports[`dumping cram files t1 can dump the whole amb#amb.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10392, - "_size": 185, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -353,20 +351,6 @@ exports[`dumping cram files t1 can dump the whole amb#amb.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -16316,8 +16300,6 @@ exports[`dumping cram files t1 can dump the whole amb#amb.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 513, - "_size": 195, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -16587,20 +16569,6 @@ exports[`dumping cram files t1 can dump the whole amb#amb.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -32490,8 +32458,6 @@ exports[`dumping cram files t1 can dump the whole auxf#test.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 2201, - "_size": 1111, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -32905,66 +32871,6 @@ exports[`dumping cram files t1 can dump the whole auxf#test.cram without error 1 "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "BCB", - "BIB", - "BSB", - "BcB", - "BiB", - "BsB", - ], - [ - "A!A", - "ACA", - "AcA", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0B", - "H1B", - "I0c", - "I1c", - "I2c", - "I3C", - "I4C", - "I5s", - "I6s", - "I7S", - "I8S", - "I9i", - "IAi", - "Z0Z", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -34275,8 +34181,6 @@ exports[`dumping cram files t1 can dump the whole auxf#values.2.1.cram without e { "compressionScheme": { "APdelta": true, - "_endPosition": 11075, - "_size": 869, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -34500,64 +34404,6 @@ exports[`dumping cram files t1 can dump the whole auxf#values.2.1.cram without e "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "A!A", - "AcA", - "ACA", - "I0C", - "I1C", - "I2C", - "I3C", - "I4C", - "I5S", - "I6S", - "I7S", - "I8S", - "I9I", - "IAI", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0H", - "H1H", - "Z0Z", - ], - [ - "BCB", - "BcB", - "BSB", - "BsB", - "BIB", - "BiB", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -36055,8 +35901,6 @@ exports[`dumping cram files t1 can dump the whole auxf#values.3.0.cram without e { "compressionScheme": { "APdelta": true, - "_endPosition": 1198, - "_size": 879, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -36300,64 +36144,6 @@ exports[`dumping cram files t1 can dump the whole auxf#values.3.0.cram without e "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "A!A", - "AcA", - "ACA", - "I0C", - "I1C", - "I2C", - "I3C", - "I4C", - "I5S", - "I6S", - "I7S", - "I8S", - "I9I", - "IAI", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0H", - "H1H", - "Z0Z", - ], - [ - "BCB", - "BcB", - "BSB", - "BsB", - "BIB", - "BiB", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -37858,8 +37644,6 @@ exports[`dumping cram files t1 can dump the whole auxf#values.tmp.cram without e { "compressionScheme": { "APdelta": true, - "_endPosition": 1351, - "_size": 1031, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -38067,68 +37851,6 @@ exports[`dumping cram files t1 can dump the whole auxf#values.tmp.cram without e "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "A!A", - "AcA", - "ACA", - "I0C", - "I1C", - "I2C", - "I3C", - "I4C", - "I5S", - "I6S", - "I7S", - "I8S", - "I9I", - "IAI", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0H", - "H1H", - "Z0Z", - "ZnZ", - "HnH", - ], - [ - "BCB", - "BcB", - "BSB", - "BsB", - "BIB", - "BiB", - "HnH", - "ZnZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -39791,8 +39513,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds.2.1.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 10355, - "_size": 195, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -40062,20 +39782,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds.2.1.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -40449,8 +40155,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds.3.0.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 461, - "_size": 205, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -40740,20 +40444,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds.3.0.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -41130,8 +40820,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds.tmp.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 470, - "_size": 214, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -41374,24 +41062,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds.tmp.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "MDZ", - "NMI", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -41805,8 +41475,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds2_.2.1.cram without e { "compressionScheme": { "APdelta": true, - "_endPosition": 10366, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -42029,24 +41697,6 @@ exports[`dumping cram files t1 can dump the whole c1#bounds2_.2.1.cram without e "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "MDZ", - "NMI", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -42457,8 +42107,6 @@ exports[`dumping cram files t1 can dump the whole c1#clip.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10383, - "_size": 223, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -42762,20 +42410,6 @@ exports[`dumping cram files t1 can dump the whole c1#clip.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -43306,8 +42940,6 @@ exports[`dumping cram files t1 can dump the whole c1#clip.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 489, - "_size": 233, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -43631,20 +43263,6 @@ exports[`dumping cram files t1 can dump the whole c1#clip.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -44178,8 +43796,6 @@ exports[`dumping cram files t1 can dump the whole c1#clip.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 439, - "_size": 183, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -44429,20 +44045,6 @@ exports[`dumping cram files t1 can dump the whole c1#clip.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -44959,8 +44561,6 @@ exports[`dumping cram files t1 can dump the whole c1#noseq.2.1.cram without erro { "compressionScheme": { "APdelta": true, - "_endPosition": 10397, - "_size": 237, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -45248,24 +44848,6 @@ exports[`dumping cram files t1 can dump the whole c1#noseq.2.1.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "MDZ", - "NMC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -45828,8 +45410,6 @@ exports[`dumping cram files t1 can dump the whole c1#noseq.3.0.cram without erro { "compressionScheme": { "APdelta": true, - "_endPosition": 505, - "_size": 249, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -46139,24 +45719,6 @@ exports[`dumping cram files t1 can dump the whole c1#noseq.3.0.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "MDZ", - "NMC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -46722,8 +46284,6 @@ exports[`dumping cram files t1 can dump the whole c1#noseq.tmp.cram without erro { "compressionScheme": { "APdelta": true, - "_endPosition": 444, - "_size": 186, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -46980,20 +46540,6 @@ exports[`dumping cram files t1 can dump the whole c1#noseq.tmp.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -47723,8 +47269,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad1.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10385, - "_size": 225, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -48030,20 +47574,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad1.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -48674,8 +48204,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad1.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 491, - "_size": 235, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -49001,20 +48529,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad1.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -49648,8 +49162,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad1.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 441, - "_size": 183, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -49899,20 +49411,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad1.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -50952,8 +50450,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad2.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10400, - "_size": 239, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -51273,20 +50769,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad2.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -52068,8 +51550,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad2.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 506, - "_size": 249, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -52409,20 +51889,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad2.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -53207,8 +52673,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad2.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 439, - "_size": 180, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -53451,20 +52915,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad2.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -54690,8 +54140,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad3.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10424, - "_size": 231, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -55007,20 +54455,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad3.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -55870,8 +55304,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad3.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 543, - "_size": 241, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -56207,20 +55639,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad3.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -57073,8 +56491,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad3.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 488, - "_size": 179, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -57324,20 +56740,6 @@ exports[`dumping cram files t1 can dump the whole c1#pad3.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -58631,8 +58033,6 @@ exports[`dumping cram files t1 can dump the whole c1#unknown.2.1.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 10538, - "_size": 253, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -58942,24 +58342,6 @@ exports[`dumping cram files t1 can dump the whole c1#unknown.2.1.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "MDZ", - "NMC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -59513,8 +58895,6 @@ exports[`dumping cram files t1 can dump the whole c1#unknown.3.0.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 666, - "_size": 265, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -59846,24 +59226,6 @@ exports[`dumping cram files t1 can dump the whole c1#unknown.3.0.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "MDZ", - "NMC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -60420,8 +59782,6 @@ exports[`dumping cram files t1 can dump the whole c1#unknown.tmp.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 589, - "_size": 188, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -60678,20 +60038,6 @@ exports[`dumping cram files t1 can dump the whole c1#unknown.tmp.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -61258,8 +60604,6 @@ exports[`dumping cram files t1 can dump the whole c2#pad.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10829, - "_size": 249, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -61601,20 +60945,6 @@ exports[`dumping cram files t1 can dump the whole c2#pad.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -62712,8 +62042,6 @@ exports[`dumping cram files t1 can dump the whole c2#pad.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 790, - "_size": 259, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -63075,20 +62403,6 @@ exports[`dumping cram files t1 can dump the whole c2#pad.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -64189,8 +63503,6 @@ exports[`dumping cram files t1 can dump the whole c2#pad.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 732, - "_size": 199, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -64468,20 +63780,6 @@ exports[`dumping cram files t1 can dump the whole c2#pad.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -65850,8 +65148,6 @@ exports[`dumping cram files t1 can dump the whole ce#1.2.1.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 10493, - "_size": 318, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -66131,28 +65427,6 @@ exports[`dumping cram files t1 can dump the whole ce#1.2.1.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -66770,8 +66044,6 @@ exports[`dumping cram files t1 can dump the whole ce#1.3.0.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 606, - "_size": 328, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -67071,28 +66343,6 @@ exports[`dumping cram files t1 can dump the whole ce#1.3.0.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -67713,8 +66963,6 @@ exports[`dumping cram files t1 can dump the whole ce#1.tmp.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 613, - "_size": 335, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -67992,28 +67240,6 @@ exports[`dumping cram files t1 can dump the whole ce#1.tmp.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -68640,8 +67866,6 @@ exports[`dumping cram files t1 can dump the whole ce#2.2.1.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 10530, - "_size": 354, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -68935,37 +68159,6 @@ exports[`dumping cram files t1 can dump the whole ce#2.2.1.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -69743,8 +68936,6 @@ exports[`dumping cram files t1 can dump the whole ce#2.3.0.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 643, - "_size": 364, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -70058,37 +69249,6 @@ exports[`dumping cram files t1 can dump the whole ce#2.3.0.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -70869,8 +70029,6 @@ exports[`dumping cram files t1 can dump the whole ce#2.tmp.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 621, - "_size": 342, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -71113,37 +70271,6 @@ exports[`dumping cram files t1 can dump the whole ce#2.tmp.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -72024,8 +71151,6 @@ exports[`dumping cram files t1 can dump the whole ce#5.2.1.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 10924, - "_size": 338, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -72321,29 +71446,6 @@ exports[`dumping cram files t1 can dump the whole ce#5.2.1.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -73981,8 +73083,6 @@ exports[`dumping cram files t1 can dump the whole ce#5.3.0.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 797, - "_size": 348, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -74298,29 +73398,6 @@ exports[`dumping cram files t1 can dump the whole ce#5.3.0.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -75961,8 +75038,6 @@ exports[`dumping cram files t1 can dump the whole ce#5.tmp.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 772, - "_size": 321, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -76205,29 +75280,6 @@ exports[`dumping cram files t1 can dump the whole ce#5.tmp.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -77800,8 +76852,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.2.1.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 10901, - "_size": 318, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -78081,28 +77131,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.2.1.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -78619,8 +77647,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.2.1.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 11452, - "_size": 324, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -78906,28 +77932,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.2.1.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -79900,8 +78904,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.2.1.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 12022, - "_size": 317, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -80162,29 +79164,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.2.1.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -83649,8 +82628,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.3.0.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 774, - "_size": 328, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -83950,28 +82927,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.3.0.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -84491,8 +83446,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.3.0.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 1367, - "_size": 334, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -84798,28 +83751,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.3.0.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -85795,8 +84726,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.3.0.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 1981, - "_size": 329, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -86079,29 +85008,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.3.0.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -89569,8 +88475,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.tmp.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 783, - "_size": 335, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -89848,28 +88752,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.tmp.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -90424,8 +89306,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.tmp.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 1612, - "_size": 332, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -90696,28 +89576,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.tmp.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -91730,8 +90588,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.tmp.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 2521, - "_size": 319, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -91968,29 +90824,6 @@ exports[`dumping cram files t1 can dump the whole ce#5b.tmp.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "XSc", - "ASc", - "YTZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -95497,8 +94330,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 846, - "_size": 385, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -95749,37 +94580,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -102788,8 +101588,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 5956, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -103026,37 +101824,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -109721,8 +108488,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 11294, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -109959,37 +108724,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -115789,8 +114523,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 15818, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -116020,37 +114752,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -122533,8 +121234,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 20465, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -122771,37 +121470,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -128889,8 +127557,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 25391, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -129127,37 +127793,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -136239,8 +134874,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 30450, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -136477,37 +135110,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -142994,8 +141596,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 35827, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -143225,37 +141825,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -149751,8 +148320,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 40961, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -149989,37 +148556,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -157019,8 +155555,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 46080, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -157250,37 +155784,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -164631,8 +163134,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 51161, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -164869,37 +163370,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -170843,8 +169313,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 55657, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -171081,37 +169549,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -177140,8 +175577,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 60339, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -177378,37 +175813,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -184105,8 +182509,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 65461, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -184343,37 +182745,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -190363,8 +188734,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 70169, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -190601,37 +188970,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -196711,8 +195049,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 74814, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -196949,37 +195285,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -203927,8 +202232,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 80115, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -204165,37 +202468,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -211015,8 +209287,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 84875, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -211246,37 +209516,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -217658,8 +215897,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 90015, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -217889,37 +216126,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -223825,8 +222031,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 94529, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -224063,37 +222267,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -230901,8 +229074,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 99046, - "_size": 369, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -231125,37 +229296,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -237536,8 +235676,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 104193, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -237774,37 +235912,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -243692,8 +241799,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 108654, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -243923,37 +242028,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -251349,8 +249423,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 113842, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -251580,37 +249652,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -258465,8 +256506,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 118806, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -258703,37 +256742,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -265373,8 +263381,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 123193, - "_size": 377, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -265611,37 +263617,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -272775,8 +270750,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 128395, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -273006,37 +270979,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -280254,8 +278196,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 133373, - "_size": 372, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -280485,37 +278425,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -287077,8 +284986,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 138438, - "_size": 375, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -287315,37 +285222,6 @@ exports[`dumping cram files t1 can dump the whole ce#1000.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "ASC", - "XSC", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - [ - "ASc", - "XSc", - "XNC", - "XMC", - "XOC", - "XGC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -291462,8 +289338,6 @@ exports[`dumping cram files t1 can dump the whole ce#large_seq.2.1.cram without { "compressionScheme": { "APdelta": true, - "_endPosition": 10378, - "_size": 199, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -291724,20 +289598,6 @@ exports[`dumping cram files t1 can dump the whole ce#large_seq.2.1.cram without "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -1749618,8 +1747478,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 3354, - "_size": 1425, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -1750298,123 +1748156,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 310, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -1836745,8 +1834486,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 14684, - "_size": 1419, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -1837364,145 +1835103,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 307, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -1928759,8 +1926359,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 27444, - "_size": 1381, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -1929384,146 +1926982,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 259, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2019149,8 +2016607,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 40524, - "_size": 1121, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2019672,132 +2017128,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 160, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "OQZ", - "XTA", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2071201,8 +2068531,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 3354, - "_size": 1425, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2071881,123 +2069209,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 310, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2158328,8 +2155539,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 14684, - "_size": 1419, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2158947,145 +2156156,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 307, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2250342,8 +2247412,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 27444, - "_size": 1381, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2250967,146 +2248035,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 259, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2340732,8 +2337660,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 40524, - "_size": 1121, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2341255,132 +2338181,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 160, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "OQZ", - "XTA", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2391577,8 +2388377,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 47437, - "_size": 186, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2391820,22 +2388618,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2393350,8 +2390132,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 3356, - "_size": 1425, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2394030,123 +2390810,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 310, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2480477,8 +2477140,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 14686, - "_size": 1419, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2481096,145 +2477757,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 307, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2572491,8 +2569013,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 27446, - "_size": 1381, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2573116,146 +2569636,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 259, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2662881,8 +2659261,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 40526, - "_size": 1121, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2663404,132 +2659782,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 160, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "OQZ", - "XTA", - ], - [ - "OQZ", - ], - [ - "X0C", - "X1C", - "XAZ", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XAZ", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2713726,8 +2709978,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 47458, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2713960,26 +2710210,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "OQZ", - ], - [ - "XCC", - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2726864,8 +2723094,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 53760, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2727098,26 +2723326,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2740006,8 +2736214,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 60178, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2740240,26 +2736446,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2753141,8 +2749327,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 67129, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2753375,26 +2749559,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2766293,8 +2762457,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 { "compressionScheme": { "APdelta": true, - "_endPosition": 71661, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2766527,26 +2762689,6 @@ exports[`dumping cram files t1 can dump the whole human_g1k_v37.20.21.1-100#NA12 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XCC", - "OQZ", - ], - [ - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ diff --git a/test/__snapshots__/dump2.test.ts.snap b/test/__snapshots__/dump2.test.ts.snap index dda05def..4a7915bc 100644 --- a/test/__snapshots__/dump2.test.ts.snap +++ b/test/__snapshots__/dump2.test.ts.snap @@ -98,8 +98,6 @@ exports[`dumping cram files can dump the whole auxf#test2.cram without error 1`] { "compressionScheme": { "APdelta": true, - "_endPosition": 2201, - "_size": 1111, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -513,66 +511,6 @@ exports[`dumping cram files can dump the whole auxf#test2.cram without error 1`] "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "BCB", - "BIB", - "BSB", - "BcB", - "BiB", - "BsB", - ], - [ - "A!A", - "ACA", - "AcA", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0B", - "H1B", - "I0c", - "I1c", - "I2c", - "I3C", - "I4C", - "I5s", - "I6s", - "I7S", - "I8S", - "I9i", - "IAi", - "Z0Z", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -1886,8 +1824,6 @@ exports[`dumping cram files can dump the whole ce#large_seq.3.0.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 491, - "_size": 209, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2168,20 +2104,6 @@ exports[`dumping cram files can dump the whole ce#large_seq.3.0.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -1458959,8 +1458881,6 @@ exports[`dumping cram files can dump the whole ce#large_seq.tmp.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 461, - "_size": 179, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -1459196,20 +1459116,6 @@ exports[`dumping cram files can dump the whole ce#large_seq.tmp.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2915977,8 +2915883,6 @@ exports[`dumping cram files can dump the whole ce#supp.2.1.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 10421, - "_size": 205, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2916254,20 +2916158,6 @@ exports[`dumping cram files can dump the whole ce#supp.2.1.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2916962,8 +2916852,6 @@ exports[`dumping cram files can dump the whole ce#supp.3.0.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 549, - "_size": 215, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2917259,20 +2917147,6 @@ exports[`dumping cram files can dump the whole ce#supp.3.0.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2917970,8 +2917844,6 @@ exports[`dumping cram files can dump the whole ce#supp.tmp.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 509, - "_size": 175, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -2918207,20 +2918079,6 @@ exports[`dumping cram files can dump the whole ce#supp.tmp.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2918913,8 +2918771,6 @@ exports[`dumping cram files can dump the whole ce#tag_depadded.2.1.cram without { "compressionScheme": { "APdelta": true, - "_endPosition": 10470, - "_size": 232, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2919189,26 +2919045,6 @@ exports[`dumping cram files can dump the whole ce#tag_depadded.2.1.cram without "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "PTZ", - ], - [], - [ - "CTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2922350,8 +2922186,6 @@ exports[`dumping cram files can dump the whole ce#tag_depadded.3.0.cram without { "compressionScheme": { "APdelta": true, - "_endPosition": 597, - "_size": 244, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2922648,26 +2922482,6 @@ exports[`dumping cram files can dump the whole ce#tag_depadded.3.0.cram without "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "PTZ", - ], - [], - [ - "CTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2925812,8 +2925626,6 @@ exports[`dumping cram files can dump the whole ce#tag_depadded.tmp.cram without { "compressionScheme": { "APdelta": true, - "_endPosition": 560, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -2926042,26 +2925854,6 @@ exports[`dumping cram files can dump the whole ce#tag_depadded.tmp.cram without "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "PTZ", - ], - [], - [ - "CTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2930713,8 +2930505,6 @@ exports[`dumping cram files can dump the whole ce#tag_padded.2.1.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 10487, - "_size": 249, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2931018,26 +2930808,6 @@ exports[`dumping cram files can dump the whole ce#tag_padded.2.1.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "PTZ", - ], - [], - [ - "CTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2932280,8 +2932050,6 @@ exports[`dumping cram files can dump the whole ce#tag_padded.3.0.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 614, - "_size": 261, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2932607,26 +2932375,6 @@ exports[`dumping cram files can dump the whole ce#tag_padded.3.0.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "PTZ", - ], - [], - [ - "CTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2933872,8 +2933620,6 @@ exports[`dumping cram files can dump the whole ce#tag_padded.tmp.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 560, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -2934102,26 +2933848,6 @@ exports[`dumping cram files can dump the whole ce#tag_padded.tmp.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "PTZ", - ], - [], - [ - "CTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2936118,8 +2935844,6 @@ exports[`dumping cram files can dump the whole ce#unmap.2.1.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 10236, - "_size": 160, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2936328,20 +2936052,6 @@ exports[`dumping cram files can dump the whole ce#unmap.2.1.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2937267,8 +2936977,6 @@ exports[`dumping cram files can dump the whole ce#unmap.3.0.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 302, - "_size": 170, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2937497,20 +2937205,6 @@ exports[`dumping cram files can dump the whole ce#unmap.3.0.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2938439,8 +2938133,6 @@ exports[`dumping cram files can dump the whole ce#unmap.tmp.cram without error 1 { "compressionScheme": { "APdelta": true, - "_endPosition": 302, - "_size": 170, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2938669,20 +2938361,6 @@ exports[`dumping cram files can dump the whole ce#unmap.tmp.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2939795,8 +2939473,6 @@ exports[`dumping cram files can dump the whole ce#unmap1.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 11055, - "_size": 171, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2940005,22 +2939681,6 @@ exports[`dumping cram files can dump the whole ce#unmap1.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2941829,8 +2941489,6 @@ exports[`dumping cram files can dump the whole ce#unmap1.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 816, - "_size": 181, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2942059,22 +2941717,6 @@ exports[`dumping cram files can dump the whole ce#unmap1.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2943886,8 +2943528,6 @@ exports[`dumping cram files can dump the whole ce#unmap1.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 821, - "_size": 184, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2944116,22 +2943756,6 @@ exports[`dumping cram files can dump the whole ce#unmap1.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2947495,8 +2947119,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 11271, - "_size": 391, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2947796,37 +2947418,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASC", - "XSC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2949583,8 +2949174,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 11978, - "_size": 171, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2949793,22 +2949382,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2951498,8 +2951071,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 1032, - "_size": 401, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2951819,37 +2951390,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASC", - "XSC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2953609,8 +2953149,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 1781, - "_size": 181, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2953839,22 +2953377,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2955547,8 +2955069,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 1009, - "_size": 376, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -2955784,37 +2955304,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASC", - "XSC", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2958469,8 +2957958,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.tmp.cram without error { "compressionScheme": { "APdelta": false, - "_endPosition": 2872, - "_size": 182, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -2958693,22 +2958180,6 @@ exports[`dumping cram files can dump the whole ce#unmap2.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2961974,8 +2961445,6 @@ exports[`dumping cram files can dump the whole cram_query_sorted.cram without er { "compressionScheme": { "APdelta": false, - "_endPosition": 11665, - "_size": 220, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -2962249,20 +2961718,6 @@ exports[`dumping cram files can dump the whole cram_query_sorted.cram without er "parametersBytes": 21, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2964780,8 +2964235,6 @@ exports[`dumping cram files can dump the whole cram_query_sorted.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 12383, - "_size": 164, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2965005,20 +2964458,6 @@ exports[`dumping cram files can dump the whole cram_query_sorted.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2965307,8 +2964746,6 @@ exports[`dumping cram files can dump the whole cram_query_sorted.cram without er { "compressionScheme": { "APdelta": false, - "_endPosition": 12882, - "_size": 229, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -2965614,20 +2965051,6 @@ exports[`dumping cram files can dump the whole cram_query_sorted.cram without er "parametersBytes": 11, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -2969868,8 +2969291,6 @@ exports[`dumping cram files can dump the whole grc37-1#HG03297.mapped.ILLUMINA.b { "compressionScheme": { "APdelta": true, - "_endPosition": 38743, - "_size": 1876, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -2970736,311 +2970157,6 @@ exports[`dumping cram files can dump the whole grc37-1#HG03297.mapped.ILLUMINA.b "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": false, - "RR": true, - "SM": [ - 27, - 99, - 39, - 135, - 75, - ], - "TD": [ - [], - [ - "XCc", - ], - [ - "X0c", - "X1c", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "XTA", - ], - [ - "AMc", - "SMc", - "X0s", - "XTA", - ], - [ - "X0c", - "X1c", - "XAZ", - "XTA", - ], - [ - "X0c", - "X1c", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0C", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0s", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "XAZ", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1s", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0s", - "XCc", - "XTA", - ], - [ - "X0c", - "X1c", - "XAZ", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0C", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1C", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1c", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1s", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0s", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "XAZ", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XAZ", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XNc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1s", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1C", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1c", - "XAZ", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1c", - "XCc", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1s", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XAZ", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XCc", - "XNc", - "XTA", - ], - [ - "AMc", - "MQc", - "OCZ", - "OPS", - "SMc", - "X0c", - "X1c", - "XTA", - ], - [ - "AMc", - "MQc", - "OCZ", - "SMc", - "X0c", - "X1c", - "XAZ", - "XTA", - ], - [ - "AMc", - "MQc", - "SMc", - "X0c", - "X1c", - "XAZ", - "XCc", - "XTA", - ], - [ - "AMc", - "SMc", - "X0c", - "X1c", - "XAZ", - "XCc", - "XNc", - "XTA", - ], - ], - }, "readNamesIncluded": false, "referenceRequired": true, "substitutionMatrix": [ @@ -4351210,8 +4350326,6 @@ exports[`dumping cram files can dump the whole headernul.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 613, - "_size": 335, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4351489,28 +4350603,6 @@ exports[`dumping cram files can dump the whole headernul.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XGC", - "XMC", - "XNC", - "XOC", - "ASc", - "XSc", - "YTZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4352205,8 +4351297,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram { "compressionScheme": { "APdelta": true, - "_endPosition": 1331, - "_size": 238, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4352553,21 +4351643,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4356281,8 +4355356,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram { "compressionScheme": { "APdelta": true, - "_endPosition": 2188, - "_size": 235, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4356627,21 +4355700,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4358937,8 +4357995,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram { "compressionScheme": { "APdelta": true, - "_endPosition": 2979, - "_size": 233, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4359281,21 +4358337,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4360882,8 +4359923,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram { "compressionScheme": { "APdelta": true, - "_endPosition": 3730, - "_size": 231, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4361224,21 +4360263,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_bai_index.cram "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4362265,8 +4361289,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra { "compressionScheme": { "APdelta": true, - "_endPosition": 1331, - "_size": 238, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4362613,21 +4361635,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4366341,8 +4365348,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra { "compressionScheme": { "APdelta": true, - "_endPosition": 2188, - "_size": 235, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4366687,21 +4365692,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4368997,8 +4367987,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra { "compressionScheme": { "APdelta": true, - "_endPosition": 2979, - "_size": 233, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4369341,21 +4368329,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4370942,8 +4369915,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra { "compressionScheme": { "APdelta": true, - "_endPosition": 3730, - "_size": 231, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4371284,21 +4370255,6 @@ exports[`dumping cram files can dump the whole hg19mini#cram_with_crai_index.cra "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4372342,8 +4371298,6 @@ exports[`dumping cram files can dump the whole hg19mini#cramQueryTest.cram witho { "compressionScheme": { "APdelta": true, - "_endPosition": 1350, - "_size": 170, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4372545,21 +4371499,6 @@ exports[`dumping cram files can dump the whole hg19mini#cramQueryTest.cram witho "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 30, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4381372,8 +4380311,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c { "compressionScheme": { "APdelta": true, - "_endPosition": 5129, - "_size": 582, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4381575,84 +4380512,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 99, - 99, - 147, - 99, - 27, - ], - "TD": [ - [], - [ - "OQZ", - "XCc", - ], - [ - "AMc", - "MDZ", - "MQc", - "NMc", - "OQZ", - "SMc", - "X0c", - "X1c", - "XGc", - "XMc", - "XOc", - "XTA", - ], - [ - "AMc", - "BQZ", - "MDZ", - "MQc", - "NMc", - "OQZ", - "SMc", - "X0c", - "X1c", - "XGc", - "XMc", - "XOc", - "XTA", - ], - [ - "AMc", - "BQZ", - "MDZ", - "NMc", - "OQZ", - "SMc", - "X0c", - "X1c", - "XCc", - "XGc", - "XMc", - "XOc", - "XTA", - ], - [ - "AMc", - "MDZ", - "MQc", - "NMc", - "OQZ", - "SMc", - "X0c", - "X1c", - "XCc", - "XGc", - "XMc", - "XOc", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4386284,8 +4385143,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c { "compressionScheme": { "APdelta": true, - "_endPosition": 7838, - "_size": 213, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4386487,25 +4385344,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "OQZ", - "XCc", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4388641,8 +4387479,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c { "compressionScheme": { "APdelta": true, - "_endPosition": 2562, - "_size": 581, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4388977,74 +4387813,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c "parametersBytes": 22, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "MQC", - "OQZ", - "XTA", - ], - [ - "XCC", - "OQZ", - ], - [ - "X0C", - "X1C", - "XCC", - "XGC", - "AMC", - "SMC", - "XMC", - "XOC", - "BQZ", - "OQZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4393475,8 +4392243,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c { "compressionScheme": { "APdelta": true, - "_endPosition": 3818, - "_size": 198, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4393707,23 +4392473,6 @@ exports[`dumping cram files can dump the whole human_g1k_v37.20.21.10M-10M200k#c "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "XCC", - "OQZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4394698,8 +4393447,6 @@ exports[`dumping cram files can dump the whole md#1.tmp.cram without error 1`] = { "compressionScheme": { "APdelta": true, - "_endPosition": 535, - "_size": 243, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4394984,24 +4393731,6 @@ exports[`dumping cram files can dump the whole md#1.tmp.cram without error 1`] = "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "NMC", - "MDZ", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4400404,8 +4399133,6 @@ exports[`dumping cram files can dump the whole nm_tag_validation.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 1667, - "_size": 420, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4400626,74 +4399353,6 @@ exports[`dumping cram files can dump the whole nm_tag_validation.cram without er "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "AMC", - "BQZ", - "MQC", - "SMC", - "XTA", - ], - [ - "AMC", - "BQZ", - "MQC", - "SMC", - "X0C", - "X1C", - "XTA", - ], - [ - "AMC", - "BQZ", - "MQC", - "SMC", - "XCC", - "XTA", - ], - [ - "AMC", - "BQZ", - "MQC", - "SMC", - "X0C", - "X1C", - "XCC", - "XTA", - ], - [ - "AMC", - "BQZ", - "SMC", - "X0C", - "X1C", - "XTA", - ], - [ - "XCC", - ], - [ - "AMC", - "BQZ", - "MQC", - "SMC", - "X0C", - "X1C", - "XAZ", - "XTA", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4472094,8 +4470753,6 @@ exports[`dumping cram files can dump the whole sam_alignment.tmp.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 459, - "_size": 181, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4472345,20 +4471002,6 @@ exports[`dumping cram files can dump the whole sam_alignment.tmp.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4472885,8 +4471528,6 @@ exports[`dumping cram files can dump the whole samtoolsSliceMD5WithAmbiguityCode { "compressionScheme": { "APdelta": true, - "_endPosition": 1266, - "_size": 881, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4473122,64 +4471763,6 @@ exports[`dumping cram files can dump the whole samtoolsSliceMD5WithAmbiguityCode "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "A!A", - "ACA", - "AcA", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0B", - "H1B", - "I0c", - "I1c", - "I2c", - "I3C", - "I4C", - "I5s", - "I6s", - "I7S", - "I8S", - "I9i", - "IAi", - "Z0Z", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - ], - [ - "BCB", - "BIB", - "BSB", - "BcB", - "BiB", - "BsB", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4474703,8 +4473286,6 @@ exports[`dumping cram files can dump the whole testContigNotInRef#one.cram witho { "compressionScheme": { "APdelta": true, - "_endPosition": 2201, - "_size": 1111, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4475118,66 +4473699,6 @@ exports[`dumping cram files can dump the whole testContigNotInRef#one.cram witho "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "RR": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - [ - "BCB", - "BIB", - "BSB", - "BcB", - "BiB", - "BsB", - ], - [ - "A!A", - "ACA", - "AcA", - "F0f", - "F1f", - "F2f", - "F3f", - "F4f", - "F5f", - "F6f", - "H0B", - "H1B", - "I0c", - "I1c", - "I2c", - "I3C", - "I4C", - "I5s", - "I6s", - "I7S", - "I8S", - "I9i", - "IAi", - "Z0Z", - "i1c", - "i2c", - "i3c", - "i4s", - "i5s", - "i6s", - "i7s", - "i8i", - "i9i", - "iAi", - "iBi", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": true, "substitutionMatrix": [ @@ -4476626,8 +4475147,6 @@ exports[`dumping cram files can dump the whole xx#large_aux.2.1.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 20285, - "_size": 10125, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4476847,791 +4475366,6 @@ exports[`dumping cram files can dump the whole xx#large_aux.2.1.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - "akC", - "alC", - "amC", - "anC", - "aoC", - "apC", - "aqC", - "arC", - "asC", - "atC", - "auC", - "avC", - "awC", - "axC", - "ayC", - "azC", - "baC", - "bbC", - "bcC", - "bdC", - "beC", - "bfC", - "bgC", - "bhC", - "biC", - "bjC", - "bkC", - "blC", - "bmC", - "bnC", - "boC", - "bpC", - "bqC", - "brC", - "bsC", - "btC", - "buC", - "bvC", - "bwC", - "bxC", - "byC", - "bzC", - "caC", - "cbC", - "ccC", - "cdC", - "ceC", - "cfC", - "cgC", - "chC", - "ciC", - "cjC", - "ckC", - "clC", - "cmC", - "cnC", - "coC", - "cpC", - "cqC", - "crC", - "csC", - "ctC", - "cuC", - "cvC", - "cwC", - "cxC", - "cyC", - "czC", - "daC", - "dbC", - "dcC", - "ddC", - "deC", - "dfC", - "dgC", - "dhC", - "diC", - "djC", - "dkC", - "dlC", - "dmC", - "dnC", - "doC", - "dpC", - "dqC", - "drC", - "dsC", - "dtC", - "duC", - "dvC", - "dwC", - "dxC", - "dyC", - "dzC", - "eaC", - "ebC", - "ecC", - "edC", - "eeC", - "efC", - "egC", - "ehC", - "eiC", - "ejC", - "ekC", - "elC", - "emC", - "enC", - "eoC", - "epC", - "eqC", - "erC", - "esC", - "etC", - "euC", - "evC", - "ewC", - "exC", - "eyC", - "ezC", - "faC", - "fbC", - "fcC", - "fdC", - "feC", - "ffC", - "fgC", - "fhC", - "fiC", - "fjC", - "fkC", - "flC", - "fmC", - "fnC", - "foC", - "fpC", - "fqC", - "frC", - "fsC", - "ftC", - "fuC", - "fvC", - "fwC", - "fxC", - "fyC", - "fzC", - "gaC", - "gbC", - "gcC", - "gdC", - "geC", - "gfC", - "ggC", - "ghC", - "giC", - "gjC", - "gkC", - "glC", - "gmC", - "gnC", - "goC", - "gpC", - "gqC", - "grC", - "gsC", - "gtC", - "guC", - "gvC", - "gwC", - "gxC", - "gyC", - "gzC", - "haC", - "hbC", - "hcC", - "hdC", - "heC", - "hfC", - "hgC", - "hhC", - "hiC", - "hjC", - "hkC", - "hlC", - "hmC", - "hnC", - "hoC", - "hpC", - "hqC", - "hrC", - "hsC", - "htC", - "huC", - "hvC", - "hwC", - "hxC", - "hyC", - "hzC", - "iaC", - "ibC", - "icC", - "idC", - "ieC", - "ifC", - "igC", - "ihC", - "iiC", - "ijC", - "ikC", - "ilC", - "imC", - "inC", - "ioC", - "ipC", - "iqC", - "irC", - "isC", - "itC", - "iuC", - "ivC", - "iwC", - "ixC", - "iyC", - "izC", - "jaC", - "jbC", - "jcC", - "jdC", - "jeC", - "jfC", - "jgC", - "jhC", - "jiC", - "jjC", - "jkC", - "jlC", - "jmC", - "jnC", - "joC", - "jpC", - "jqC", - "jrC", - "jsC", - "jtC", - "juC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - "akC", - "alC", - "amC", - "anC", - "aoC", - "apC", - "aqC", - "arC", - "asC", - "atC", - "auC", - "avC", - "awC", - "axC", - "ayC", - "azC", - "baC", - "bbC", - "bcC", - "bdC", - "beC", - "bfC", - "bgC", - "bhC", - "biC", - "bjC", - "bkC", - "blC", - "bmC", - "bnC", - "boC", - "bpC", - "bqC", - "brC", - "bsC", - "btC", - "buC", - "bvC", - "bwC", - "bxC", - "byC", - "bzC", - "caC", - "cbC", - "ccC", - "cdC", - "ceC", - "cfC", - "cgC", - "chC", - "ciC", - "cjC", - "ckC", - "clC", - "cmC", - "cnC", - "coC", - "cpC", - "cqC", - "crC", - "csC", - "ctC", - "cuC", - "cvC", - "cwC", - "cxC", - "cyC", - "czC", - "daC", - "dbC", - "dcC", - "ddC", - "deC", - "dfC", - "dgC", - "dhC", - "diC", - "djC", - "dkC", - "dlC", - "dmC", - "dnC", - "doC", - "dpC", - "dqC", - "drC", - "dsC", - "dtC", - "duC", - "dvC", - "dwC", - "dxC", - "dyC", - "dzC", - "eaC", - "ebC", - "ecC", - "edC", - "eeC", - "efC", - "egC", - "ehC", - "eiC", - "ejC", - "ekC", - "elC", - "emC", - "enC", - "eoC", - "epC", - "eqC", - "erC", - "esC", - "etC", - "euC", - "evC", - "ewC", - "exC", - "eyC", - "ezC", - "faC", - "fbC", - "fcC", - "fdC", - "feC", - "ffC", - "fgC", - "fhC", - "fiC", - "fjC", - "fkC", - "flC", - "fmC", - "fnC", - "foC", - "fpC", - "fqC", - "frC", - "fsC", - "ftC", - "fuC", - "fvC", - "fwC", - "fxC", - "fyC", - "fzC", - "gaC", - "gbC", - "gcC", - "gdC", - "geC", - "gfC", - "ggC", - "ghC", - "giC", - "gjC", - "gkC", - "glC", - "gmC", - "gnC", - "goC", - "gpC", - "gqC", - "grC", - "gsC", - "gtC", - "guC", - "gvC", - "gwC", - "gxC", - "gyC", - "gzC", - "haC", - "hbC", - "hcC", - "hdC", - "heC", - "hfC", - "hgC", - "hhC", - "hiC", - "hjC", - "hkC", - "hlC", - "hmC", - "hnC", - "hoC", - "hpC", - "hqC", - "hrC", - "hsC", - "htC", - "huC", - "hvC", - "hwC", - "hxC", - "hyC", - "hzC", - "iaC", - "ibC", - "icC", - "idC", - "ieC", - "ifC", - "igC", - "ihC", - "iiC", - "ijC", - "ikC", - "ilC", - "imC", - "inC", - "ioC", - "ipC", - "iqC", - "irC", - "isC", - "itC", - "iuC", - "ivC", - "iwC", - "ixC", - "iyC", - "izC", - "jaC", - "jbC", - "jcC", - "jdC", - "jeC", - "jfC", - "jgC", - "jhC", - "jiC", - "jjC", - "jkC", - "jlC", - "jmC", - "jnC", - "joC", - "jpC", - "jqC", - "jrC", - "jsC", - "jtC", - "juC", - "AaC", - "AbC", - "AcC", - "AdC", - "AeC", - "AfC", - "AgC", - "AhC", - "AiC", - "AjC", - "AkC", - "AlC", - "AmC", - "AnC", - "AoC", - "ApC", - "AqC", - "ArC", - "AsC", - "AtC", - "AuC", - "AvC", - "AwC", - "AxC", - "AyC", - "AzC", - "BaC", - "BbC", - "BcC", - "BdC", - "BeC", - "BfC", - "BgC", - "BhC", - "BiC", - "BjC", - "BkC", - "BlC", - "BmC", - "BnC", - "BoC", - "BpC", - "BqC", - "BrC", - "BsC", - "BtC", - "BuC", - "BvC", - "BwC", - "BxC", - "ByC", - "BzC", - "CaC", - "CbC", - "CcC", - "CdC", - "CeC", - "CfC", - "CgC", - "ChC", - "CiC", - "CjC", - "CkC", - "ClC", - "CmC", - "CnC", - "CoC", - "CpC", - "CqC", - "CrC", - "CsC", - "CtC", - "CuC", - "CvC", - "CwC", - "CxC", - "CyC", - "CzC", - "DaC", - "DbC", - "DcC", - "DdC", - "DeC", - "DfC", - "DgC", - "DhC", - "DiC", - "DjC", - "DkC", - "DlC", - "DmC", - "DnC", - "DoC", - "DpC", - "DqC", - "DrC", - "DsC", - "DtC", - "DuC", - "DvC", - "DwC", - "DxC", - "DyC", - "DzC", - "EaC", - "EbC", - "EcC", - "EdC", - "EeC", - "EfC", - "EgC", - "EhC", - "EiC", - "EjC", - "EkC", - "ElC", - "EmC", - "EnC", - "EoC", - "EpC", - "EqC", - "ErC", - "EsC", - "EtC", - "EuC", - "EvC", - "EwC", - "ExC", - "EyC", - "EzC", - "FaC", - "FbC", - "FcC", - "FdC", - "FeC", - "FfC", - "FgC", - "FhC", - "FiC", - "FjC", - "FkC", - "FlC", - "FmC", - "FnC", - "FoC", - "FpC", - "FqC", - "FrC", - "FsC", - "FtC", - "FuC", - "FvC", - "FwC", - "FxC", - "FyC", - "FzC", - "GaC", - "GbC", - "GcC", - "GdC", - "GeC", - "GfC", - "GgC", - "GhC", - "GiC", - "GjC", - "GkC", - "GlC", - "GmC", - "GnC", - "GoC", - "GpC", - "GqC", - "GrC", - "GsC", - "GtC", - "GuC", - "GvC", - "GwC", - "GxC", - "GyC", - "GzC", - "HaC", - "HbC", - "HcC", - "HdC", - "HeC", - "HfC", - "HgC", - "HhC", - "HiC", - "HjC", - "HkC", - "HlC", - "HmC", - "HnC", - "HoC", - "HpC", - "HqC", - "HrC", - "HsC", - "HtC", - "HuC", - "HvC", - "HwC", - "HxC", - "HyC", - "HzC", - "IaC", - "IbC", - "IcC", - "IdC", - "IeC", - "IfC", - "IgC", - "IhC", - "IiC", - "IjC", - "IkC", - "IlC", - "ImC", - "InC", - "IoC", - "IpC", - "IqC", - "IrC", - "IsC", - "ItC", - "IuC", - "IvC", - "IwC", - "IxC", - "IyC", - "IzC", - "JaC", - "JbC", - "JcC", - "JdC", - "JeC", - "JfC", - "JgC", - "JhC", - "JiC", - "JjC", - "JkC", - "JlC", - "JmC", - "JnC", - "JoC", - "JpC", - "JqC", - "JrC", - "JsC", - "JtC", - "JuC", - ], - [ - "ZZZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4493297,8 +4491031,6 @@ exports[`dumping cram files can dump the whole xx#large_aux.3.0.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 10393, - "_size": 10135, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4493538,791 +4491270,6 @@ exports[`dumping cram files can dump the whole xx#large_aux.3.0.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - "akC", - "alC", - "amC", - "anC", - "aoC", - "apC", - "aqC", - "arC", - "asC", - "atC", - "auC", - "avC", - "awC", - "axC", - "ayC", - "azC", - "baC", - "bbC", - "bcC", - "bdC", - "beC", - "bfC", - "bgC", - "bhC", - "biC", - "bjC", - "bkC", - "blC", - "bmC", - "bnC", - "boC", - "bpC", - "bqC", - "brC", - "bsC", - "btC", - "buC", - "bvC", - "bwC", - "bxC", - "byC", - "bzC", - "caC", - "cbC", - "ccC", - "cdC", - "ceC", - "cfC", - "cgC", - "chC", - "ciC", - "cjC", - "ckC", - "clC", - "cmC", - "cnC", - "coC", - "cpC", - "cqC", - "crC", - "csC", - "ctC", - "cuC", - "cvC", - "cwC", - "cxC", - "cyC", - "czC", - "daC", - "dbC", - "dcC", - "ddC", - "deC", - "dfC", - "dgC", - "dhC", - "diC", - "djC", - "dkC", - "dlC", - "dmC", - "dnC", - "doC", - "dpC", - "dqC", - "drC", - "dsC", - "dtC", - "duC", - "dvC", - "dwC", - "dxC", - "dyC", - "dzC", - "eaC", - "ebC", - "ecC", - "edC", - "eeC", - "efC", - "egC", - "ehC", - "eiC", - "ejC", - "ekC", - "elC", - "emC", - "enC", - "eoC", - "epC", - "eqC", - "erC", - "esC", - "etC", - "euC", - "evC", - "ewC", - "exC", - "eyC", - "ezC", - "faC", - "fbC", - "fcC", - "fdC", - "feC", - "ffC", - "fgC", - "fhC", - "fiC", - "fjC", - "fkC", - "flC", - "fmC", - "fnC", - "foC", - "fpC", - "fqC", - "frC", - "fsC", - "ftC", - "fuC", - "fvC", - "fwC", - "fxC", - "fyC", - "fzC", - "gaC", - "gbC", - "gcC", - "gdC", - "geC", - "gfC", - "ggC", - "ghC", - "giC", - "gjC", - "gkC", - "glC", - "gmC", - "gnC", - "goC", - "gpC", - "gqC", - "grC", - "gsC", - "gtC", - "guC", - "gvC", - "gwC", - "gxC", - "gyC", - "gzC", - "haC", - "hbC", - "hcC", - "hdC", - "heC", - "hfC", - "hgC", - "hhC", - "hiC", - "hjC", - "hkC", - "hlC", - "hmC", - "hnC", - "hoC", - "hpC", - "hqC", - "hrC", - "hsC", - "htC", - "huC", - "hvC", - "hwC", - "hxC", - "hyC", - "hzC", - "iaC", - "ibC", - "icC", - "idC", - "ieC", - "ifC", - "igC", - "ihC", - "iiC", - "ijC", - "ikC", - "ilC", - "imC", - "inC", - "ioC", - "ipC", - "iqC", - "irC", - "isC", - "itC", - "iuC", - "ivC", - "iwC", - "ixC", - "iyC", - "izC", - "jaC", - "jbC", - "jcC", - "jdC", - "jeC", - "jfC", - "jgC", - "jhC", - "jiC", - "jjC", - "jkC", - "jlC", - "jmC", - "jnC", - "joC", - "jpC", - "jqC", - "jrC", - "jsC", - "jtC", - "juC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - "akC", - "alC", - "amC", - "anC", - "aoC", - "apC", - "aqC", - "arC", - "asC", - "atC", - "auC", - "avC", - "awC", - "axC", - "ayC", - "azC", - "baC", - "bbC", - "bcC", - "bdC", - "beC", - "bfC", - "bgC", - "bhC", - "biC", - "bjC", - "bkC", - "blC", - "bmC", - "bnC", - "boC", - "bpC", - "bqC", - "brC", - "bsC", - "btC", - "buC", - "bvC", - "bwC", - "bxC", - "byC", - "bzC", - "caC", - "cbC", - "ccC", - "cdC", - "ceC", - "cfC", - "cgC", - "chC", - "ciC", - "cjC", - "ckC", - "clC", - "cmC", - "cnC", - "coC", - "cpC", - "cqC", - "crC", - "csC", - "ctC", - "cuC", - "cvC", - "cwC", - "cxC", - "cyC", - "czC", - "daC", - "dbC", - "dcC", - "ddC", - "deC", - "dfC", - "dgC", - "dhC", - "diC", - "djC", - "dkC", - "dlC", - "dmC", - "dnC", - "doC", - "dpC", - "dqC", - "drC", - "dsC", - "dtC", - "duC", - "dvC", - "dwC", - "dxC", - "dyC", - "dzC", - "eaC", - "ebC", - "ecC", - "edC", - "eeC", - "efC", - "egC", - "ehC", - "eiC", - "ejC", - "ekC", - "elC", - "emC", - "enC", - "eoC", - "epC", - "eqC", - "erC", - "esC", - "etC", - "euC", - "evC", - "ewC", - "exC", - "eyC", - "ezC", - "faC", - "fbC", - "fcC", - "fdC", - "feC", - "ffC", - "fgC", - "fhC", - "fiC", - "fjC", - "fkC", - "flC", - "fmC", - "fnC", - "foC", - "fpC", - "fqC", - "frC", - "fsC", - "ftC", - "fuC", - "fvC", - "fwC", - "fxC", - "fyC", - "fzC", - "gaC", - "gbC", - "gcC", - "gdC", - "geC", - "gfC", - "ggC", - "ghC", - "giC", - "gjC", - "gkC", - "glC", - "gmC", - "gnC", - "goC", - "gpC", - "gqC", - "grC", - "gsC", - "gtC", - "guC", - "gvC", - "gwC", - "gxC", - "gyC", - "gzC", - "haC", - "hbC", - "hcC", - "hdC", - "heC", - "hfC", - "hgC", - "hhC", - "hiC", - "hjC", - "hkC", - "hlC", - "hmC", - "hnC", - "hoC", - "hpC", - "hqC", - "hrC", - "hsC", - "htC", - "huC", - "hvC", - "hwC", - "hxC", - "hyC", - "hzC", - "iaC", - "ibC", - "icC", - "idC", - "ieC", - "ifC", - "igC", - "ihC", - "iiC", - "ijC", - "ikC", - "ilC", - "imC", - "inC", - "ioC", - "ipC", - "iqC", - "irC", - "isC", - "itC", - "iuC", - "ivC", - "iwC", - "ixC", - "iyC", - "izC", - "jaC", - "jbC", - "jcC", - "jdC", - "jeC", - "jfC", - "jgC", - "jhC", - "jiC", - "jjC", - "jkC", - "jlC", - "jmC", - "jnC", - "joC", - "jpC", - "jqC", - "jrC", - "jsC", - "jtC", - "juC", - "AaC", - "AbC", - "AcC", - "AdC", - "AeC", - "AfC", - "AgC", - "AhC", - "AiC", - "AjC", - "AkC", - "AlC", - "AmC", - "AnC", - "AoC", - "ApC", - "AqC", - "ArC", - "AsC", - "AtC", - "AuC", - "AvC", - "AwC", - "AxC", - "AyC", - "AzC", - "BaC", - "BbC", - "BcC", - "BdC", - "BeC", - "BfC", - "BgC", - "BhC", - "BiC", - "BjC", - "BkC", - "BlC", - "BmC", - "BnC", - "BoC", - "BpC", - "BqC", - "BrC", - "BsC", - "BtC", - "BuC", - "BvC", - "BwC", - "BxC", - "ByC", - "BzC", - "CaC", - "CbC", - "CcC", - "CdC", - "CeC", - "CfC", - "CgC", - "ChC", - "CiC", - "CjC", - "CkC", - "ClC", - "CmC", - "CnC", - "CoC", - "CpC", - "CqC", - "CrC", - "CsC", - "CtC", - "CuC", - "CvC", - "CwC", - "CxC", - "CyC", - "CzC", - "DaC", - "DbC", - "DcC", - "DdC", - "DeC", - "DfC", - "DgC", - "DhC", - "DiC", - "DjC", - "DkC", - "DlC", - "DmC", - "DnC", - "DoC", - "DpC", - "DqC", - "DrC", - "DsC", - "DtC", - "DuC", - "DvC", - "DwC", - "DxC", - "DyC", - "DzC", - "EaC", - "EbC", - "EcC", - "EdC", - "EeC", - "EfC", - "EgC", - "EhC", - "EiC", - "EjC", - "EkC", - "ElC", - "EmC", - "EnC", - "EoC", - "EpC", - "EqC", - "ErC", - "EsC", - "EtC", - "EuC", - "EvC", - "EwC", - "ExC", - "EyC", - "EzC", - "FaC", - "FbC", - "FcC", - "FdC", - "FeC", - "FfC", - "FgC", - "FhC", - "FiC", - "FjC", - "FkC", - "FlC", - "FmC", - "FnC", - "FoC", - "FpC", - "FqC", - "FrC", - "FsC", - "FtC", - "FuC", - "FvC", - "FwC", - "FxC", - "FyC", - "FzC", - "GaC", - "GbC", - "GcC", - "GdC", - "GeC", - "GfC", - "GgC", - "GhC", - "GiC", - "GjC", - "GkC", - "GlC", - "GmC", - "GnC", - "GoC", - "GpC", - "GqC", - "GrC", - "GsC", - "GtC", - "GuC", - "GvC", - "GwC", - "GxC", - "GyC", - "GzC", - "HaC", - "HbC", - "HcC", - "HdC", - "HeC", - "HfC", - "HgC", - "HhC", - "HiC", - "HjC", - "HkC", - "HlC", - "HmC", - "HnC", - "HoC", - "HpC", - "HqC", - "HrC", - "HsC", - "HtC", - "HuC", - "HvC", - "HwC", - "HxC", - "HyC", - "HzC", - "IaC", - "IbC", - "IcC", - "IdC", - "IeC", - "IfC", - "IgC", - "IhC", - "IiC", - "IjC", - "IkC", - "IlC", - "ImC", - "InC", - "IoC", - "IpC", - "IqC", - "IrC", - "IsC", - "ItC", - "IuC", - "IvC", - "IwC", - "IxC", - "IyC", - "IzC", - "JaC", - "JbC", - "JcC", - "JdC", - "JeC", - "JfC", - "JgC", - "JhC", - "JiC", - "JjC", - "JkC", - "JlC", - "JmC", - "JnC", - "JoC", - "JpC", - "JqC", - "JrC", - "JsC", - "JtC", - "JuC", - ], - [ - "ZZZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4509991,8 +4506938,6 @@ exports[`dumping cram files can dump the whole xx#large_aux.tmp.cram without err { "compressionScheme": { "APdelta": true, - "_endPosition": 11918, - "_size": 11661, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4510221,791 +4507166,6 @@ exports[`dumping cram files can dump the whole xx#large_aux.tmp.cram without err "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - "akC", - "alC", - "amC", - "anC", - "aoC", - "apC", - "aqC", - "arC", - "asC", - "atC", - "auC", - "avC", - "awC", - "axC", - "ayC", - "azC", - "baC", - "bbC", - "bcC", - "bdC", - "beC", - "bfC", - "bgC", - "bhC", - "biC", - "bjC", - "bkC", - "blC", - "bmC", - "bnC", - "boC", - "bpC", - "bqC", - "brC", - "bsC", - "btC", - "buC", - "bvC", - "bwC", - "bxC", - "byC", - "bzC", - "caC", - "cbC", - "ccC", - "cdC", - "ceC", - "cfC", - "cgC", - "chC", - "ciC", - "cjC", - "ckC", - "clC", - "cmC", - "cnC", - "coC", - "cpC", - "cqC", - "crC", - "csC", - "ctC", - "cuC", - "cvC", - "cwC", - "cxC", - "cyC", - "czC", - "daC", - "dbC", - "dcC", - "ddC", - "deC", - "dfC", - "dgC", - "dhC", - "diC", - "djC", - "dkC", - "dlC", - "dmC", - "dnC", - "doC", - "dpC", - "dqC", - "drC", - "dsC", - "dtC", - "duC", - "dvC", - "dwC", - "dxC", - "dyC", - "dzC", - "eaC", - "ebC", - "ecC", - "edC", - "eeC", - "efC", - "egC", - "ehC", - "eiC", - "ejC", - "ekC", - "elC", - "emC", - "enC", - "eoC", - "epC", - "eqC", - "erC", - "esC", - "etC", - "euC", - "evC", - "ewC", - "exC", - "eyC", - "ezC", - "faC", - "fbC", - "fcC", - "fdC", - "feC", - "ffC", - "fgC", - "fhC", - "fiC", - "fjC", - "fkC", - "flC", - "fmC", - "fnC", - "foC", - "fpC", - "fqC", - "frC", - "fsC", - "ftC", - "fuC", - "fvC", - "fwC", - "fxC", - "fyC", - "fzC", - "gaC", - "gbC", - "gcC", - "gdC", - "geC", - "gfC", - "ggC", - "ghC", - "giC", - "gjC", - "gkC", - "glC", - "gmC", - "gnC", - "goC", - "gpC", - "gqC", - "grC", - "gsC", - "gtC", - "guC", - "gvC", - "gwC", - "gxC", - "gyC", - "gzC", - "haC", - "hbC", - "hcC", - "hdC", - "heC", - "hfC", - "hgC", - "hhC", - "hiC", - "hjC", - "hkC", - "hlC", - "hmC", - "hnC", - "hoC", - "hpC", - "hqC", - "hrC", - "hsC", - "htC", - "huC", - "hvC", - "hwC", - "hxC", - "hyC", - "hzC", - "iaC", - "ibC", - "icC", - "idC", - "ieC", - "ifC", - "igC", - "ihC", - "iiC", - "ijC", - "ikC", - "ilC", - "imC", - "inC", - "ioC", - "ipC", - "iqC", - "irC", - "isC", - "itC", - "iuC", - "ivC", - "iwC", - "ixC", - "iyC", - "izC", - "jaC", - "jbC", - "jcC", - "jdC", - "jeC", - "jfC", - "jgC", - "jhC", - "jiC", - "jjC", - "jkC", - "jlC", - "jmC", - "jnC", - "joC", - "jpC", - "jqC", - "jrC", - "jsC", - "jtC", - "juC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - "akC", - "alC", - "amC", - "anC", - "aoC", - "apC", - "aqC", - "arC", - "asC", - "atC", - "auC", - "avC", - "awC", - "axC", - "ayC", - "azC", - "baC", - "bbC", - "bcC", - "bdC", - "beC", - "bfC", - "bgC", - "bhC", - "biC", - "bjC", - "bkC", - "blC", - "bmC", - "bnC", - "boC", - "bpC", - "bqC", - "brC", - "bsC", - "btC", - "buC", - "bvC", - "bwC", - "bxC", - "byC", - "bzC", - "caC", - "cbC", - "ccC", - "cdC", - "ceC", - "cfC", - "cgC", - "chC", - "ciC", - "cjC", - "ckC", - "clC", - "cmC", - "cnC", - "coC", - "cpC", - "cqC", - "crC", - "csC", - "ctC", - "cuC", - "cvC", - "cwC", - "cxC", - "cyC", - "czC", - "daC", - "dbC", - "dcC", - "ddC", - "deC", - "dfC", - "dgC", - "dhC", - "diC", - "djC", - "dkC", - "dlC", - "dmC", - "dnC", - "doC", - "dpC", - "dqC", - "drC", - "dsC", - "dtC", - "duC", - "dvC", - "dwC", - "dxC", - "dyC", - "dzC", - "eaC", - "ebC", - "ecC", - "edC", - "eeC", - "efC", - "egC", - "ehC", - "eiC", - "ejC", - "ekC", - "elC", - "emC", - "enC", - "eoC", - "epC", - "eqC", - "erC", - "esC", - "etC", - "euC", - "evC", - "ewC", - "exC", - "eyC", - "ezC", - "faC", - "fbC", - "fcC", - "fdC", - "feC", - "ffC", - "fgC", - "fhC", - "fiC", - "fjC", - "fkC", - "flC", - "fmC", - "fnC", - "foC", - "fpC", - "fqC", - "frC", - "fsC", - "ftC", - "fuC", - "fvC", - "fwC", - "fxC", - "fyC", - "fzC", - "gaC", - "gbC", - "gcC", - "gdC", - "geC", - "gfC", - "ggC", - "ghC", - "giC", - "gjC", - "gkC", - "glC", - "gmC", - "gnC", - "goC", - "gpC", - "gqC", - "grC", - "gsC", - "gtC", - "guC", - "gvC", - "gwC", - "gxC", - "gyC", - "gzC", - "haC", - "hbC", - "hcC", - "hdC", - "heC", - "hfC", - "hgC", - "hhC", - "hiC", - "hjC", - "hkC", - "hlC", - "hmC", - "hnC", - "hoC", - "hpC", - "hqC", - "hrC", - "hsC", - "htC", - "huC", - "hvC", - "hwC", - "hxC", - "hyC", - "hzC", - "iaC", - "ibC", - "icC", - "idC", - "ieC", - "ifC", - "igC", - "ihC", - "iiC", - "ijC", - "ikC", - "ilC", - "imC", - "inC", - "ioC", - "ipC", - "iqC", - "irC", - "isC", - "itC", - "iuC", - "ivC", - "iwC", - "ixC", - "iyC", - "izC", - "jaC", - "jbC", - "jcC", - "jdC", - "jeC", - "jfC", - "jgC", - "jhC", - "jiC", - "jjC", - "jkC", - "jlC", - "jmC", - "jnC", - "joC", - "jpC", - "jqC", - "jrC", - "jsC", - "jtC", - "juC", - "AaC", - "AbC", - "AcC", - "AdC", - "AeC", - "AfC", - "AgC", - "AhC", - "AiC", - "AjC", - "AkC", - "AlC", - "AmC", - "AnC", - "AoC", - "ApC", - "AqC", - "ArC", - "AsC", - "AtC", - "AuC", - "AvC", - "AwC", - "AxC", - "AyC", - "AzC", - "BaC", - "BbC", - "BcC", - "BdC", - "BeC", - "BfC", - "BgC", - "BhC", - "BiC", - "BjC", - "BkC", - "BlC", - "BmC", - "BnC", - "BoC", - "BpC", - "BqC", - "BrC", - "BsC", - "BtC", - "BuC", - "BvC", - "BwC", - "BxC", - "ByC", - "BzC", - "CaC", - "CbC", - "CcC", - "CdC", - "CeC", - "CfC", - "CgC", - "ChC", - "CiC", - "CjC", - "CkC", - "ClC", - "CmC", - "CnC", - "CoC", - "CpC", - "CqC", - "CrC", - "CsC", - "CtC", - "CuC", - "CvC", - "CwC", - "CxC", - "CyC", - "CzC", - "DaC", - "DbC", - "DcC", - "DdC", - "DeC", - "DfC", - "DgC", - "DhC", - "DiC", - "DjC", - "DkC", - "DlC", - "DmC", - "DnC", - "DoC", - "DpC", - "DqC", - "DrC", - "DsC", - "DtC", - "DuC", - "DvC", - "DwC", - "DxC", - "DyC", - "DzC", - "EaC", - "EbC", - "EcC", - "EdC", - "EeC", - "EfC", - "EgC", - "EhC", - "EiC", - "EjC", - "EkC", - "ElC", - "EmC", - "EnC", - "EoC", - "EpC", - "EqC", - "ErC", - "EsC", - "EtC", - "EuC", - "EvC", - "EwC", - "ExC", - "EyC", - "EzC", - "FaC", - "FbC", - "FcC", - "FdC", - "FeC", - "FfC", - "FgC", - "FhC", - "FiC", - "FjC", - "FkC", - "FlC", - "FmC", - "FnC", - "FoC", - "FpC", - "FqC", - "FrC", - "FsC", - "FtC", - "FuC", - "FvC", - "FwC", - "FxC", - "FyC", - "FzC", - "GaC", - "GbC", - "GcC", - "GdC", - "GeC", - "GfC", - "GgC", - "GhC", - "GiC", - "GjC", - "GkC", - "GlC", - "GmC", - "GnC", - "GoC", - "GpC", - "GqC", - "GrC", - "GsC", - "GtC", - "GuC", - "GvC", - "GwC", - "GxC", - "GyC", - "GzC", - "HaC", - "HbC", - "HcC", - "HdC", - "HeC", - "HfC", - "HgC", - "HhC", - "HiC", - "HjC", - "HkC", - "HlC", - "HmC", - "HnC", - "HoC", - "HpC", - "HqC", - "HrC", - "HsC", - "HtC", - "HuC", - "HvC", - "HwC", - "HxC", - "HyC", - "HzC", - "IaC", - "IbC", - "IcC", - "IdC", - "IeC", - "IfC", - "IgC", - "IhC", - "IiC", - "IjC", - "IkC", - "IlC", - "ImC", - "InC", - "IoC", - "IpC", - "IqC", - "IrC", - "IsC", - "ItC", - "IuC", - "IvC", - "IwC", - "IxC", - "IyC", - "IzC", - "JaC", - "JbC", - "JcC", - "JdC", - "JeC", - "JfC", - "JgC", - "JhC", - "JiC", - "JjC", - "JkC", - "JlC", - "JmC", - "JnC", - "JoC", - "JpC", - "JqC", - "JrC", - "JsC", - "JtC", - "JuC", - ], - [ - "ZZZ", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4529200,8 +4525360,6 @@ exports[`dumping cram files can dump the whole xx#large_aux2.2.1.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 10664, - "_size": 504, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4529435,94 +4525593,6 @@ exports[`dumping cram files can dump the whole xx#large_aux2.2.1.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "aaC", - ], - [ - "aaC", - "abC", - ], - [ - "aaC", - "abC", - "acC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4530376,8 +4526446,6 @@ exports[`dumping cram files can dump the whole xx#large_aux2.3.0.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 772, - "_size": 514, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4530631,94 +4526699,6 @@ exports[`dumping cram files can dump the whole xx#large_aux2.3.0.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "aaC", - ], - [ - "aaC", - "abC", - ], - [ - "aaC", - "abC", - "acC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4531575,8 +4527555,6 @@ exports[`dumping cram files can dump the whole xx#large_aux2.tmp.cram without er { "compressionScheme": { "APdelta": true, - "_endPosition": 781, - "_size": 523, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4531805,94 +4527783,6 @@ exports[`dumping cram files can dump the whole xx#large_aux2.tmp.cram without er "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "aaC", - ], - [ - "aaC", - "abC", - ], - [ - "aaC", - "abC", - "acC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - ], - [ - "aaC", - "abC", - "acC", - "adC", - "aeC", - "afC", - "agC", - "ahC", - "aiC", - "ajC", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4533174,8 +4529064,6 @@ exports[`dumping cram files can dump the whole xx#minimal.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10456, - "_size": 207, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4533463,20 +4529351,6 @@ exports[`dumping cram files can dump the whole xx#minimal.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4533746,8 +4529620,6 @@ exports[`dumping cram files can dump the whole xx#minimal.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10837, - "_size": 207, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4534041,20 +4529913,6 @@ exports[`dumping cram files can dump the whole xx#minimal.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4534470,8 +4530328,6 @@ exports[`dumping cram files can dump the whole xx#minimal.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 491, - "_size": 217, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4534779,20 +4530635,6 @@ exports[`dumping cram files can dump the whole xx#minimal.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4535065,8 +4530907,6 @@ exports[`dumping cram files can dump the whole xx#minimal.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 910, - "_size": 217, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4535380,20 +4531220,6 @@ exports[`dumping cram files can dump the whole xx#minimal.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4535812,8 +4531638,6 @@ exports[`dumping cram files can dump the whole xx#minimal.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 488, - "_size": 211, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4536049,24 +4531873,6 @@ exports[`dumping cram files can dump the whole xx#minimal.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "MDZ", - "NMI", - ], - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4536387,8 +4532193,6 @@ exports[`dumping cram files can dump the whole xx#minimal.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 1118, - "_size": 204, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4536624,23 +4532428,6 @@ exports[`dumping cram files can dump the whole xx#minimal.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [ - "MDZ", - "NMI", - ], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4537018,8 +4532805,6 @@ exports[`dumping cram files can dump the whole xx#pair.2.1.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 10297, - "_size": 137, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4537199,20 +4532984,6 @@ exports[`dumping cram files can dump the whole xx#pair.2.1.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4537678,8 +4533449,6 @@ exports[`dumping cram files can dump the whole xx#pair.3.0.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 405, - "_size": 147, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4537879,20 +4533648,6 @@ exports[`dumping cram files can dump the whole xx#pair.3.0.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4538361,8 +4534116,6 @@ exports[`dumping cram files can dump the whole xx#pair.tmp.cram without error 1` { "compressionScheme": { "APdelta": true, - "_endPosition": 387, - "_size": 131, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4538535,20 +4534288,6 @@ exports[`dumping cram files can dump the whole xx#pair.tmp.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4539023,8 +4534762,6 @@ exports[`dumping cram files can dump the whole xx#repeated.tmp.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 388, - "_size": 132, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4539198,20 +4534935,6 @@ exports[`dumping cram files can dump the whole xx#repeated.tmp.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4539753,8 +4535476,6 @@ exports[`dumping cram files can dump the whole xx#rg.2.1.cram without error 1`] { "compressionScheme": { "APdelta": true, - "_endPosition": 10480, - "_size": 165, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4539976,20 +4535697,6 @@ exports[`dumping cram files can dump the whole xx#rg.2.1.cram without error 1`] "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4540609,8 +4536316,6 @@ exports[`dumping cram files can dump the whole xx#rg.3.0.cram without error 1`] { "compressionScheme": { "APdelta": true, - "_endPosition": 603, - "_size": 175, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4540852,20 +4536557,6 @@ exports[`dumping cram files can dump the whole xx#rg.3.0.cram without error 1`] "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4541488,8 +4537179,6 @@ exports[`dumping cram files can dump the whole xx#rg.tmp.cram without error 1`] { "compressionScheme": { "APdelta": true, - "_endPosition": 589, - "_size": 159, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4541711,20 +4537400,6 @@ exports[`dumping cram files can dump the whole xx#rg.tmp.cram without error 1`] "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4542281,8 +4537956,6 @@ exports[`dumping cram files can dump the whole xx#tlen.2.1.cram without error 1` { "compressionScheme": { "APdelta": false, - "_endPosition": 10786, - "_size": 133, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4542454,20 +4538127,6 @@ exports[`dumping cram files can dump the whole xx#tlen.2.1.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4542860,8 +4538519,6 @@ exports[`dumping cram files can dump the whole xx#tlen.2.1.cram without error 1` { "compressionScheme": { "APdelta": false, - "_endPosition": 11138, - "_size": 190, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4543105,20 +4538762,6 @@ exports[`dumping cram files can dump the whole xx#tlen.2.1.cram without error 1` "parametersBytes": 18, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4543918,8 +4539561,6 @@ exports[`dumping cram files can dump the whole xx#tlen.3.0.cram without error 1` { "compressionScheme": { "APdelta": false, - "_endPosition": 708, - "_size": 143, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4544111,20 +4539752,6 @@ exports[`dumping cram files can dump the whole xx#tlen.3.0.cram without error 1` "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4544520,8 +4540147,6 @@ exports[`dumping cram files can dump the whole xx#tlen.3.0.cram without error 1` { "compressionScheme": { "APdelta": false, - "_endPosition": 1094, - "_size": 200, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4544785,20 +4540410,6 @@ exports[`dumping cram files can dump the whole xx#tlen.3.0.cram without error 1` "parametersBytes": 18, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4545601,8 +4541212,6 @@ exports[`dumping cram files can dump the whole xx#tlen.tmp.cram without error 1` { "compressionScheme": { "APdelta": false, - "_endPosition": 725, - "_size": 156, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4545811,20 +4541420,6 @@ exports[`dumping cram files can dump the whole xx#tlen.tmp.cram without error 1` "parametersBytes": 1, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4546550,8 +4542145,6 @@ exports[`dumping cram files can dump the whole xx#tlen.tmp.cram without error 1` { "compressionScheme": { "APdelta": false, - "_endPosition": 1531, - "_size": 156, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4546760,20 +4542353,6 @@ exports[`dumping cram files can dump the whole xx#tlen.tmp.cram without error 1` "parametersBytes": 1, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4547760,8 +4543339,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.2.1.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 10854, - "_size": 133, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4547933,20 +4543510,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.2.1.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4548339,8 +4543902,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.2.1.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 11206, - "_size": 190, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4548584,20 +4544145,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.2.1.cram without error 1 "parametersBytes": 18, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4549433,8 +4544980,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.3.0.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 771, - "_size": 143, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4549626,20 +4545171,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.3.0.cram without error 1 "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4550035,8 +4545566,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.3.0.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 1157, - "_size": 200, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4550300,20 +4545829,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.3.0.cram without error 1 "parametersBytes": 18, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4551152,8 +4546667,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.tmp.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 788, - "_size": 156, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4551362,20 +4546875,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.tmp.cram without error 1 "parametersBytes": 1, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4552104,8 +4547603,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.tmp.cram without error 1 { "compressionScheme": { "APdelta": false, - "_endPosition": 1594, - "_size": 156, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4552314,20 +4547811,6 @@ exports[`dumping cram files can dump the whole xx#tlen2.tmp.cram without error 1 "parametersBytes": 1, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4553165,8 +4548648,6 @@ exports[`dumping cram files can dump the whole xx#triplet.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10423, - "_size": 174, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4553396,20 +4548877,6 @@ exports[`dumping cram files can dump the whole xx#triplet.2.1.cram without error "parametersBytes": 10, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4553669,8 +4549136,6 @@ exports[`dumping cram files can dump the whole xx#triplet.2.1.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 10704, - "_size": 136, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4553850,20 +4549315,6 @@ exports[`dumping cram files can dump the whole xx#triplet.2.1.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4554235,8 +4549686,6 @@ exports[`dumping cram files can dump the whole xx#triplet.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 458, - "_size": 184, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4554486,20 +4549935,6 @@ exports[`dumping cram files can dump the whole xx#triplet.3.0.cram without error "parametersBytes": 10, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4554762,8 +4550197,6 @@ exports[`dumping cram files can dump the whole xx#triplet.3.0.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 773, - "_size": 146, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4554963,20 +4550396,6 @@ exports[`dumping cram files can dump the whole xx#triplet.3.0.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4555351,8 +4550770,6 @@ exports[`dumping cram files can dump the whole xx#triplet.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 426, - "_size": 149, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4555553,20 +4550970,6 @@ exports[`dumping cram files can dump the whole xx#triplet.tmp.cram without error "parametersBytes": 1, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4555839,8 +4551242,6 @@ exports[`dumping cram files can dump the whole xx#triplet.tmp.cram without error { "compressionScheme": { "APdelta": true, - "_endPosition": 878, - "_size": 131, "dataSeriesEncoding": { "AP": { "codecId": 1, @@ -4556013,20 +4551414,6 @@ exports[`dumping cram files can dump the whole xx#triplet.tmp.cram without error "parametersBytes": 4, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4556357,8 +4551744,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.2.1.cram without erro { "compressionScheme": { "APdelta": true, - "_endPosition": 10409, - "_size": 160, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4556574,20 +4551959,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.2.1.cram without erro "parametersBytes": 8, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4556781,8 +4552152,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.2.1.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 10658, - "_size": 133, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4556954,20 +4552323,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.2.1.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4557196,8 +4552551,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.2.1.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 10973, - "_size": 170, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4557429,20 +4552782,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.2.1.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4557851,8 +4553190,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.3.0.cram without erro { "compressionScheme": { "APdelta": true, - "_endPosition": 444, - "_size": 170, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4558088,20 +4553425,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.3.0.cram without erro "parametersBytes": 8, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4558298,8 +4553621,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.3.0.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 727, - "_size": 143, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4558491,20 +4553812,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.3.0.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4558736,8 +4554043,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.3.0.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 1076, - "_size": 180, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4558989,20 +4554294,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.3.0.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4559414,8 +4554705,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.tmp.cram without erro { "compressionScheme": { "APdelta": true, - "_endPosition": 447, - "_size": 170, "dataSeriesEncoding": { "AP": { "codecId": 3, @@ -4559651,20 +4554940,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.tmp.cram without erro "parametersBytes": 8, }, }, - "preservation": { - "AP": true, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4559861,8 +4555136,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.tmp.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 719, - "_size": 132, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4560036,20 +4555309,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.tmp.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ @@ -4560285,8 +4555544,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.tmp.cram without erro { "compressionScheme": { "APdelta": false, - "_endPosition": 1114, - "_size": 162, "dataSeriesEncoding": { "AP": { "codecId": 6, @@ -4560509,20 +4555766,6 @@ exports[`dumping cram files can dump the whole xx#unsorted.tmp.cram without erro "parametersBytes": 4, }, }, - "preservation": { - "AP": false, - "RN": true, - "SM": [ - 27, - 27, - 27, - 27, - 27, - ], - "TD": [ - [], - ], - }, "readNamesIncluded": true, "referenceRequired": false, "substitutionMatrix": [ diff --git a/test/binary-parser.test.ts b/test/binary-parser.test.ts deleted file mode 100644 index b7645905..00000000 --- a/test/binary-parser.test.ts +++ /dev/null @@ -1,60 +0,0 @@ -//@ts-nocheck -import { Parser } from '@gmod/binary-parser' - -import { parseItf8 } from '../src/cramFile/util' - -describe('binary-parser fork', () => { - describe('itf8', () => { - const ip = new Parser().itf8('val') - ;[ - [[0], { result: { val: 0 }, offset: 1 }], - [[0x80, 0xff], { result: { val: 255 }, offset: 2 }], - [[0xff, 0xff, 0xff, 0xff, 0x0f], { result: { val: -1 }, offset: 5 }], - [[0xff, 0xff, 0xff, 0xff, 0xff], { result: { val: -1 }, offset: 5 }], - [[0xff, 0xff, 0xff, 0xff, 0xfe], { result: { val: -2 }, offset: 5 }], - [[192, 170, 130, 140, 174], { result: { val: 43650 }, offset: 3 }], - ].forEach(([input, output]) => { - it(`can parse itf8 [${input.map(n => `0x${n.toString(16)}`)}] - -> ${output.result.val}`, () => { - expect(ip.parse(Buffer.from(input))).toEqual(output) - - const otherParseResult = parseItf8(Buffer.from(input), 0) - expect(otherParseResult[0]).toEqual(output.result.val) - expect(otherParseResult[1]).toEqual(output.offset) - }) - }) - it('can parse several itf8 numbers in a row', () => { - const p = new Parser().itf8('val1').itf8('val2').itf8('val3') - const data = [0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0] - expect(p.parse(Buffer.from(data))).toEqual({ - offset: 8, - result: { val1: 255, val2: -1, val3: 0 }, - }) - }) - }) - - describe('ltf8', () => { - const lp = new Parser().ltf8('val') - ;[ - [ - [0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff], - { result: { val: -1 }, offset: 9 }, - ], - [ - [0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe], - { result: { val: -2 }, offset: 9 }, - ], - [[0x0], { result: { val: 0 }, offset: 1 }], - ].forEach(([input, output]) => { - it(`can parse ltf8 [${input.map(n => `0x${n.toString(16)}`)}] - -> ${output.result.val}`, () => { - expect(lp.parse(Buffer.from(input))).toEqual(output) - }) - }) - }) - - // describe('itf8 extended', () => { - // it('can parse several itf8 numbers in a row') - - // }) -}) diff --git a/test/cram2sam.ts b/test/cram2sam.ts index 1aee5523..3b3cd9b3 100644 --- a/test/cram2sam.ts +++ b/test/cram2sam.ts @@ -228,14 +228,15 @@ async function run() { qual += String.fromCharCode(q + 33) }) - //eslint-disable-next-line @typescript-eslint/no-unused-vars + // eslint-disable-next-line @typescript-eslint/no-unused-vars const _rnext = record.sequenceId == record.mate!.sequenceId ? '=' : seqList[record.sequenceId] - //eslint-disable-next-line @typescript-eslint/no-unused-vars + // eslint-disable-next-line @typescript-eslint/no-unused-vars const _tlen = record.templateSize // only if detached const tags = tags2str(record, RG) + // eslint-disable-next-line no-console console.log( `${record.readName}\t${record.flags}\t${seqList[record.sequenceId]}\t${ record.alignmentStart diff --git a/test/indexedfile.test.ts b/test/indexedfile.test.ts index ad09ba70..f702aef2 100644 --- a/test/indexedfile.test.ts +++ b/test/indexedfile.test.ts @@ -195,7 +195,7 @@ test('duplicate IDs test', async () => { totalMap[feature.uniqueId] !== feature.readName ) { noCollisions = false - console.log('collision', totalMap[feature.uniqueId], feature.readName) + console.error('collision', totalMap[feature.uniqueId], feature.readName) } else { totalMap[feature.uniqueId] = feature.readName } diff --git a/test/lib/md5.ts b/test/lib/md5.ts deleted file mode 100644 index 169d8a60..00000000 --- a/test/lib/md5.ts +++ /dev/null @@ -1,7 +0,0 @@ -import fs from 'fs' -import { sequenceMD5 } from '../../src/cramFile/util' - -const seq = fs.readFileSync(process.argv[2]).toString() - -// console.log(process.argv) -console.log(seq.replaceAll(/\s/g, '').length, sequenceMD5(seq)) diff --git a/test/lib/syncLocalFile.ts b/test/lib/syncLocalFile.ts index 37a55cf7..20bb7df7 100644 --- a/test/lib/syncLocalFile.ts +++ b/test/lib/syncLocalFile.ts @@ -1,6 +1,5 @@ //@ts-nocheck -// don't load fs native module if running in webpacked code -const fs = typeof __webpack_require__ !== 'function' ? require('fs') : null +import fs from 'fs' const fsOpen = fs.openSync const fsRead = fs.readSync diff --git a/test/parse.test.ts b/test/parse.test.ts index d75a87ed..62c0690b 100644 --- a/test/parse.test.ts +++ b/test/parse.test.ts @@ -147,7 +147,6 @@ describe('CRAM reader', () => { expect(Object.keys(compressionBlockData).includes(['dataSeriesEncoding'])) expect(Object.keys(compressionBlockData).includes(['_size'])) expect(Object.keys(compressionBlockData).includes(['_endPosition'])) - // console.log(JSON.stringify(compressionBlockData.preservation, null, ' ')) expect(compressionBlockData.preservation).toEqual({ TD: [ ['ASC', 'XSC', 'XNC', 'XMC', 'XOC', 'XGC', 'YTZ'], @@ -158,14 +157,8 @@ describe('CRAM reader', () => { AP: false, }) expect(Object.keys(compressionBlockData.tagEncoding).length).toEqual(9) - // console.log(JSON.stringify(compressionBlockData.tagEncoding, null, ' ')) - expect(Object.keys(compressionBlockData.dataSeriesEncoding).length).toEqual( 21, ) - - // console.log( - // JSON.stringify(compressionBlockData.dataSeriesEncoding, null, ' '), - // ) }) }) diff --git a/test/retry.test.ts b/test/retry.test.ts index a3ca8d88..eca21dfe 100644 --- a/test/retry.test.ts +++ b/test/retry.test.ts @@ -19,8 +19,8 @@ describe('retry nonexist file', () => { }) await cram.cram.getSamHeader() - } catch (e) { - /* console.error('initial error', e) */ + // eslint-disable-next-line @typescript-eslint/no-unused-vars + } catch (_e) { exception = 1 } expect(exception).toEqual(1) @@ -43,7 +43,8 @@ describe('retry nonexist file', () => { }) await cram.getRecordsForRange(0, 2, 200) - } catch (e) { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + } catch (_e) { exception = 1 } expect(exception).toEqual(1) diff --git a/yarn.lock b/yarn.lock index 15168eec..573c7521 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18,75 +18,53 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" -"@babel/compat-data@^7.24.8": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.9.tgz#53eee4e68f1c1d0282aa0eb05ddb02d033fc43a0" - integrity sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng== +"@babel/compat-data@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.2.tgz#e41928bd33475305c586f6acbbb7e3ade7a6f7f5" + integrity sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ== "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.18.10", "@babel/core@^7.23.9": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.9.tgz#dc07c9d307162c97fa9484ea997ade65841c7c82" - integrity sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg== + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.2.tgz#ed8eec275118d7613e77a352894cd12ded8eba77" + integrity sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.9" - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-module-transforms" "^7.24.9" - "@babel/helpers" "^7.24.8" - "@babel/parser" "^7.24.8" - "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.8" - "@babel/types" "^7.24.9" + "@babel/generator" "^7.25.0" + "@babel/helper-compilation-targets" "^7.25.2" + "@babel/helper-module-transforms" "^7.25.2" + "@babel/helpers" "^7.25.0" + "@babel/parser" "^7.25.0" + "@babel/template" "^7.25.0" + "@babel/traverse" "^7.25.2" + "@babel/types" "^7.25.2" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.18.10", "@babel/generator@^7.24.8", "@babel/generator@^7.24.9", "@babel/generator@^7.7.2": - version "7.24.10" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.10.tgz#a4ab681ec2a78bbb9ba22a3941195e28a81d8e76" - integrity sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg== +"@babel/generator@^7.18.10", "@babel/generator@^7.25.0", "@babel/generator@^7.7.2": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.0.tgz#f858ddfa984350bc3d3b7f125073c9af6988f18e" + integrity sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw== dependencies: - "@babel/types" "^7.24.9" + "@babel/types" "^7.25.0" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" -"@babel/helper-compilation-targets@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.8.tgz#b607c3161cd9d1744977d4f97139572fe778c271" - integrity sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw== +"@babel/helper-compilation-targets@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz#e1d9410a90974a3a5a66e84ff55ef62e3c02d06c" + integrity sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw== dependencies: - "@babel/compat-data" "^7.24.8" + "@babel/compat-data" "^7.25.2" "@babel/helper-validator-option" "^7.24.8" browserslist "^4.23.1" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-environment-visitor@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" - integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== - dependencies: - "@babel/types" "^7.24.7" - -"@babel/helper-function-name@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" - integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== - dependencies: - "@babel/template" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-hoist-variables@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" - integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== - dependencies: - "@babel/types" "^7.24.7" - "@babel/helper-module-imports@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" @@ -95,16 +73,15 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-transforms@^7.24.9": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.9.tgz#e13d26306b89eea569180868e652e7f514de9d29" - integrity sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw== +"@babel/helper-module-transforms@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz#ee713c29768100f2776edf04d4eb23b8d27a66e6" + integrity sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" "@babel/helper-module-imports" "^7.24.7" "@babel/helper-simple-access" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" "@babel/helper-validator-identifier" "^7.24.7" + "@babel/traverse" "^7.25.2" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.8.0": version "7.24.8" @@ -119,13 +96,6 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-split-export-declaration@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" - integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== - dependencies: - "@babel/types" "^7.24.7" - "@babel/helper-string-parser@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" @@ -141,13 +111,13 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== -"@babel/helpers@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.8.tgz#2820d64d5d6686cca8789dd15b074cd862795873" - integrity sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ== +"@babel/helpers@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.0.tgz#e69beb7841cb93a6505531ede34f34e6a073650a" + integrity sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw== dependencies: - "@babel/template" "^7.24.7" - "@babel/types" "^7.24.8" + "@babel/template" "^7.25.0" + "@babel/types" "^7.25.0" "@babel/highlight@^7.24.7": version "7.24.7" @@ -159,10 +129,12 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.10.5", "@babel/parser@^7.14.7", "@babel/parser@^7.18.11", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7", "@babel/parser@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.8.tgz#58a4dbbcad7eb1d48930524a3fd93d93e9084c6f" - integrity sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w== +"@babel/parser@^7.1.0", "@babel/parser@^7.10.5", "@babel/parser@^7.14.7", "@babel/parser@^7.18.11", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.7", "@babel/parser@^7.25.0", "@babel/parser@^7.25.3": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.3.tgz#91fb126768d944966263f0657ab222a642b82065" + integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw== + dependencies: + "@babel/types" "^7.25.2" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -262,35 +234,32 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" -"@babel/template@^7.24.7", "@babel/template@^7.3.3": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.7.tgz#02efcee317d0609d2c07117cb70ef8fb17ab7315" - integrity sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig== +"@babel/template@^7.25.0", "@babel/template@^7.3.3": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.0.tgz#e733dc3134b4fede528c15bc95e89cb98c52592a" + integrity sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q== dependencies: "@babel/code-frame" "^7.24.7" - "@babel/parser" "^7.24.7" - "@babel/types" "^7.24.7" + "@babel/parser" "^7.25.0" + "@babel/types" "^7.25.0" -"@babel/traverse@^7.10.5", "@babel/traverse@^7.18.11", "@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.8.tgz#6c14ed5232b7549df3371d820fbd9abfcd7dfab7" - integrity sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ== +"@babel/traverse@^7.10.5", "@babel/traverse@^7.18.11", "@babel/traverse@^7.24.7", "@babel/traverse@^7.25.2": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.3.tgz#f1b901951c83eda2f3e29450ce92743783373490" + integrity sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ== dependencies: "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.8" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-hoist-variables" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" - "@babel/parser" "^7.24.8" - "@babel/types" "^7.24.8" + "@babel/generator" "^7.25.0" + "@babel/parser" "^7.25.3" + "@babel/template" "^7.25.0" + "@babel/types" "^7.25.2" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.24.9", "@babel/types@^7.3.3": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.9.tgz#228ce953d7b0d16646e755acf204f4cf3d08cc73" - integrity sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ== +"@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.3.3": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125" + integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q== dependencies: "@babel/helper-string-parser" "^7.24.8" "@babel/helper-validator-identifier" "^7.24.7" @@ -318,7 +287,7 @@ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== -"@eslint/config-array@^0.17.0": +"@eslint/config-array@^0.17.1": version "0.17.1" resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.17.1.tgz#d9b8b8b6b946f47388f32bedfd3adf29ca8f8910" integrity sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA== @@ -327,7 +296,7 @@ debug "^4.3.1" minimatch "^3.1.2" -"@eslint/eslintrc@^3.0.2", "@eslint/eslintrc@^3.1.0": +"@eslint/eslintrc@^3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.1.0.tgz#dbd3482bfd91efa663cbe7aa1f506839868207b6" integrity sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ== @@ -342,10 +311,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.7.0": - version "9.7.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.7.0.tgz#b712d802582f02b11cfdf83a85040a296afec3f0" - integrity sha512-ChuWDQenef8OSFnvuxv0TCVxEwmu3+hPNKvM9B34qpM0rDRbjL8t5QkQeHHeAfsKQjuH9wS82WeCi1J/owatng== +"@eslint/js@9.8.0": + version "9.8.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.8.0.tgz#ae9bc14bb839713c5056f5018bcefa955556d3a4" + integrity sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA== "@eslint/object-schema@^2.1.4": version "2.1.4" @@ -367,13 +336,6 @@ long "^4.0.0" pako "^1.0.11" -"@gmod/binary-parser@^1.3.5": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@gmod/binary-parser/-/binary-parser-1.4.2.tgz#54f50e7b3437cc0882bd8ba6ef7c8e664ae3e892" - integrity sha512-X/UI86z2l6+qhy3Biai9Mog5/PPT3HR8+xo6qALijQ6FpRovkd/OPWOgy2fZX3vMRuMcyZKUva7V24Iir8HfhQ== - dependencies: - long "^4.0.0" - "@gmod/indexedfasta@^2.1.0": version "2.1.1" resolved "https://registry.yarnpkg.com/@gmod/indexedfasta/-/indexedfasta-2.1.1.tgz#aa8eaf6be21f634f11da90dd8494f3df5ed7e50d" @@ -644,7 +606,7 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== @@ -842,11 +804,11 @@ integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== "@types/node@*": - version "20.14.11" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.11.tgz#09b300423343460455043ddd4d0ded6ac579b74b" - integrity sha512-kprQpL8MMeszbz6ojB5/tU8PLN4kesnN8Gjzw349rDlNgsSzg90lAVj3llK99Dh7JON+t9AuscPPFW6mPbTnSA== + version "22.0.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.0.2.tgz#9fb1a2b31970871e8bf696f0e8a40d2e6d2bd04e" + integrity sha512-yPL6DyFwY5PiMVEwymNeqUTKsDczQBJ/5T7W/46RwLU/VH+AA8aT5TZkvBviLKLbbm0hlfftEkGrNzfRk/fofQ== dependencies: - undici-types "~5.26.4" + undici-types "~6.11.1" "@types/normalize-package-data@^2.4.0", "@types/normalize-package-data@^2.4.1": version "2.4.4" @@ -890,62 +852,62 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^7.0.2": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.17.0.tgz#c8ed1af1ad2928ede5cdd207f7e3090499e1f77b" - integrity sha512-pyiDhEuLM3PuANxH7uNYan1AaFs5XE0zw1hq69JBvGvE7gSuEoQl1ydtEe/XQeoC3GQxLXyOVa5kNOATgM638A== +"@typescript-eslint/eslint-plugin@^8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.0.0.tgz#0fee96f6b691e4bfb9c260fd77d1c86bfbac4f56" + integrity sha512-STIZdwEQRXAHvNUS6ILDf5z3u95Gc8jzywunxSNqX00OooIemaaNIA0vEgynJlycL5AjabYLLrIyHd4iazyvtg== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "7.17.0" - "@typescript-eslint/type-utils" "7.17.0" - "@typescript-eslint/utils" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/scope-manager" "8.0.0" + "@typescript-eslint/type-utils" "8.0.0" + "@typescript-eslint/utils" "8.0.0" + "@typescript-eslint/visitor-keys" "8.0.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^1.3.0" -"@typescript-eslint/parser@^7.0.2": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.17.0.tgz#be8e32c159190cd40a305a2121220eadea5a88e7" - integrity sha512-puiYfGeg5Ydop8eusb/Hy1k7QmOU6X3nvsqCgzrB2K4qMavK//21+PzNE8qeECgNOIoertJPUC1SpegHDI515A== +"@typescript-eslint/parser@^8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.0.0.tgz#5a5030cf8123176b5a0abd966f99e5f9f110652d" + integrity sha512-pS1hdZ+vnrpDIxuFXYQpLTILglTjSYJ9MbetZctrUawogUsPdz31DIIRZ9+rab0LhYNTsk88w4fIzVheiTbWOQ== dependencies: - "@typescript-eslint/scope-manager" "7.17.0" - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/typescript-estree" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/scope-manager" "8.0.0" + "@typescript-eslint/types" "8.0.0" + "@typescript-eslint/typescript-estree" "8.0.0" + "@typescript-eslint/visitor-keys" "8.0.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.17.0.tgz#e072d0f914662a7bfd6c058165e3c2b35ea26b9d" - integrity sha512-0P2jTTqyxWp9HiKLu/Vemr2Rg1Xb5B7uHItdVZ6iAenXmPo4SZ86yOPCJwMqpCyaMiEHTNqizHfsbmCFT1x9SA== +"@typescript-eslint/scope-manager@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.0.0.tgz#d14df46c9e43c53af7699dfa800cd615d7dfc118" + integrity sha512-V0aa9Csx/ZWWv2IPgTfY7T4agYwJyILESu/PVqFtTFz9RIS823mAze+NbnBI8xiwdX3iqeQbcTYlvB04G9wyQw== dependencies: - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/types" "8.0.0" + "@typescript-eslint/visitor-keys" "8.0.0" -"@typescript-eslint/type-utils@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.17.0.tgz#c5da78feb134c9c9978cbe89e2b1a589ed22091a" - integrity sha512-XD3aaBt+orgkM/7Cei0XNEm1vwUxQ958AOLALzPlbPqb8C1G8PZK85tND7Jpe69Wualri81PLU+Zc48GVKIMMA== +"@typescript-eslint/type-utils@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.0.0.tgz#facecaf0736bfe8394b9290382f300554cf90884" + integrity sha512-mJAFP2mZLTBwAn5WI4PMakpywfWFH5nQZezUQdSKV23Pqo6o9iShQg1hP2+0hJJXP2LnZkWPphdIq4juYYwCeg== dependencies: - "@typescript-eslint/typescript-estree" "7.17.0" - "@typescript-eslint/utils" "7.17.0" + "@typescript-eslint/typescript-estree" "8.0.0" + "@typescript-eslint/utils" "8.0.0" debug "^4.3.4" ts-api-utils "^1.3.0" -"@typescript-eslint/types@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.17.0.tgz#7ce8185bdf06bc3494e73d143dbf3293111b9cff" - integrity sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A== +"@typescript-eslint/types@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.0.0.tgz#7195ea9369fe5ee46b958d7ffca6bd26511cce18" + integrity sha512-wgdSGs9BTMWQ7ooeHtu5quddKKs5Z5dS+fHLbrQI+ID0XWJLODGMHRfhwImiHoeO2S5Wir2yXuadJN6/l4JRxw== -"@typescript-eslint/typescript-estree@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.17.0.tgz#dcab3fea4c07482329dd6107d3c6480e228e4130" - integrity sha512-72I3TGq93t2GoSBWI093wmKo0n6/b7O4j9o8U+f65TVD0FS6bI2180X5eGEr8MA8PhKMvYe9myZJquUT2JkCZw== +"@typescript-eslint/typescript-estree@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.0.0.tgz#d172385ced7cb851a038b5c834c245a97a0f9cf6" + integrity sha512-5b97WpKMX+Y43YKi4zVcCVLtK5F98dFls3Oxui8LbnmRsseKenbbDinmvxrWegKDMmlkIq/XHuyy0UGLtpCDKg== dependencies: - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/visitor-keys" "7.17.0" + "@typescript-eslint/types" "8.0.0" + "@typescript-eslint/visitor-keys" "8.0.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -953,70 +915,70 @@ semver "^7.6.0" ts-api-utils "^1.3.0" -"@typescript-eslint/utils@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.17.0.tgz#815cd85b9001845d41b699b0ce4f92d6dfb84902" - integrity sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw== +"@typescript-eslint/utils@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.0.0.tgz#1794d6f4b37ec253172a173dc938ae68651b9b99" + integrity sha512-k/oS/A/3QeGLRvOWCg6/9rATJL5rec7/5s1YmdS0ZU6LHveJyGFwBvLhSRBv6i9xaj7etmosp+l+ViN1I9Aj/Q== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "7.17.0" - "@typescript-eslint/types" "7.17.0" - "@typescript-eslint/typescript-estree" "7.17.0" + "@typescript-eslint/scope-manager" "8.0.0" + "@typescript-eslint/types" "8.0.0" + "@typescript-eslint/typescript-estree" "8.0.0" -"@typescript-eslint/visitor-keys@7.17.0": - version "7.17.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.17.0.tgz#680465c734be30969e564b4647f38d6cdf49bfb0" - integrity sha512-RVGC9UhPOCsfCdI9pU++K4nD7to+jTcMIbXTSOcrLqUEW6gF2pU1UUbYJKc9cvcRSK1UDeMJ7pdMxf4bhMpV/A== +"@typescript-eslint/visitor-keys@8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.0.0.tgz#224a67230190d267e6e78586bd7d8dfbd32ae4f3" + integrity sha512-oN0K4nkHuOyF3PVMyETbpP5zp6wfyOvm7tWhTMfoqxSSsPmJIh6JNASuZDlODE8eE+0EB9uar+6+vxr9DBTYOA== dependencies: - "@typescript-eslint/types" "7.17.0" + "@typescript-eslint/types" "8.0.0" eslint-visitor-keys "^3.4.3" -"@vue/compiler-core@3.4.33": - version "3.4.33" - resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.33.tgz#0b6013f9300822fd6cb7c8f7683c0483fa456165" - integrity sha512-MoIREbkdPQlnGfSKDMgzTqzqx5nmEjIc0ydLVYlTACGBsfvOJ4tHSbZXKVF536n6fB+0eZaGEOqsGThPpdvF5A== +"@vue/compiler-core@3.4.35": + version "3.4.35" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.4.35.tgz#421922a75ecabf1aabc6b7a2ce98b5acb2fc2d65" + integrity sha512-gKp0zGoLnMYtw4uS/SJRRO7rsVggLjvot3mcctlMXunYNsX+aRJDqqw/lV5/gHK91nvaAAlWFgdVl020AW1Prg== dependencies: "@babel/parser" "^7.24.7" - "@vue/shared" "3.4.33" + "@vue/shared" "3.4.35" entities "^4.5.0" estree-walker "^2.0.2" source-map-js "^1.2.0" -"@vue/compiler-dom@3.4.33": - version "3.4.33" - resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.33.tgz#1ceea5408a0e06c857a78d7a2be7fe3b63cf9f64" - integrity sha512-GzB8fxEHKw0gGet5BKlpfXEqoBnzSVWwMnT+dc25wE7pFEfrU/QsvjZMP9rD4iVXHBBoemTct8mN0GJEI6ZX5A== +"@vue/compiler-dom@3.4.35": + version "3.4.35" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.4.35.tgz#cd0881f1b4ed655cd96367bce4845f87023a5a2d" + integrity sha512-pWIZRL76/oE/VMhdv/ovZfmuooEni6JPG1BFe7oLk5DZRo/ImydXijoZl/4kh2406boRQ7lxTYzbZEEXEhj9NQ== dependencies: - "@vue/compiler-core" "3.4.33" - "@vue/shared" "3.4.33" + "@vue/compiler-core" "3.4.35" + "@vue/shared" "3.4.35" "@vue/compiler-sfc@^3.2.37": - version "3.4.33" - resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.33.tgz#6ea43dee6bb341967be26b47786f1f73a8e089a2" - integrity sha512-7rk7Vbkn21xMwIUpHQR4hCVejwE6nvhBOiDgoBcR03qvGqRKA7dCBSsHZhwhYUsmjlbJ7OtD5UFIyhP6BY+c8A== + version "3.4.35" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.4.35.tgz#16f87dd3bdab64cef14d3a6fcf53f8673e404071" + integrity sha512-xacnRS/h/FCsjsMfxBkzjoNxyxEyKyZfBch/P4vkLRvYJwe5ChXmZZrj8Dsed/752H2Q3JE8kYu9Uyha9J6PgA== dependencies: "@babel/parser" "^7.24.7" - "@vue/compiler-core" "3.4.33" - "@vue/compiler-dom" "3.4.33" - "@vue/compiler-ssr" "3.4.33" - "@vue/shared" "3.4.33" + "@vue/compiler-core" "3.4.35" + "@vue/compiler-dom" "3.4.35" + "@vue/compiler-ssr" "3.4.35" + "@vue/shared" "3.4.35" estree-walker "^2.0.2" magic-string "^0.30.10" - postcss "^8.4.39" + postcss "^8.4.40" source-map-js "^1.2.0" -"@vue/compiler-ssr@3.4.33": - version "3.4.33" - resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.33.tgz#59ed58f97abb691e6c3973616bb27a12b8c5b135" - integrity sha512-0WveC9Ai+eT/1b6LCV5IfsufBZ0HP7pSSTdDjcuW302tTEgoBw8rHVHKPbGUtzGReUFCRXbv6zQDDgucnV2WzQ== +"@vue/compiler-ssr@3.4.35": + version "3.4.35" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.4.35.tgz#0774c9a0afed74d71615209904b38f3fa9711adb" + integrity sha512-7iynB+0KB1AAJKk/biENTV5cRGHRdbdaD7Mx3nWcm1W8bVD6QmnH3B4AHhQQ1qZHhqFwzEzMwiytXm3PX1e60A== dependencies: - "@vue/compiler-dom" "3.4.33" - "@vue/shared" "3.4.33" + "@vue/compiler-dom" "3.4.35" + "@vue/shared" "3.4.35" -"@vue/shared@3.4.33": - version "3.4.33" - resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.33.tgz#2c4f2cfa988bb81e05372f6de556b254ff13e92a" - integrity sha512-aoRY0jQk3A/cuvdkodTrM4NMfxco8n55eG4H7ML/CRy7OryHfiqvug4xrCBBMbbN+dvXAetDDwZW9DXWWjBntA== +"@vue/shared@3.4.35": + version "3.4.35" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.4.35.tgz#5432f4b1c79e763fcf78cc830faf59ff01248968" + integrity sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ== "@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": version "1.12.1" @@ -1435,9 +1397,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001640: - version "1.0.30001643" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz#9c004caef315de9452ab970c3da71085f8241dbd" - integrity sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg== + version "1.0.30001645" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001645.tgz#4c4b7427683dea1170a152cd1654be8d0da7bd71" + integrity sha512-GFtY2+qt91kzyMk6j48dJcwJVq5uTkk71XxE3RtScx7XWRLsO7bU44LOFkOZYR8w9YMS0UhPSYpN/6rAMImmLw== ccount@^2.0.0: version "2.0.1" @@ -1655,9 +1617,9 @@ de-indent@^1.0.2: integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.5" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" - integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== + version "4.3.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== dependencies: ms "2.1.2" @@ -1776,9 +1738,9 @@ ejs@^3.1.10: jake "^10.8.5" electron-to-chromium@^1.4.820: - version "1.4.832" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.832.tgz#d25882ce0a9237577b039bffa124ecef1822003b" - integrity sha512-cTen3SB0H2SGU7x467NRe1eVcQgcuS6jckKfWJHia2eo0cHIGOqHoAxevIYZD4eRHcWjkvFzo93bi3vJ9W+1lA== + version "1.5.4" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.4.tgz#cd477c830dd6fca41fbd5465c1ff6ce08ac22343" + integrity sha512-orzA81VqLyIGUEA77YkVA1D+N+nNfl2isJVjjmOyrlxuooZ19ynb+dOlaDTqd/idKRS9lDCSBmtzM+kyCsMnkA== emittery@^0.13.1: version "0.13.1" @@ -1796,9 +1758,9 @@ emoji-regex@^9.2.2: integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== enhanced-resolve@^5.17.0: - version "5.17.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz#d037603789dd9555b89aaec7eb78845c49089bc5" - integrity sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA== + version "5.17.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" + integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -1873,18 +1835,18 @@ eslint-plugin-prettier@^5.1.3: prettier-linter-helpers "^1.0.0" synckit "^0.9.1" -eslint-plugin-unicorn@^54.0.0: - version "54.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-54.0.0.tgz#ce3ea853e8fd7ca2bda2fd6065bf065adb5d8b6d" - integrity sha512-XxYLRiYtAWiAjPv6z4JREby1TAE2byBC7wlh0V4vWDCpccOSU1KovWV//jqPXF6bq3WKxqX9rdjoRQ1EhdmNdQ== +eslint-plugin-unicorn@^55.0.0: + version "55.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-55.0.0.tgz#e2aeb397914799895702480970e7d148df5bcc7b" + integrity sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA== dependencies: "@babel/helper-validator-identifier" "^7.24.5" "@eslint-community/eslint-utils" "^4.4.0" - "@eslint/eslintrc" "^3.0.2" ci-info "^4.0.0" clean-regexp "^1.0.0" core-js-compat "^3.37.0" esquery "^1.5.0" + globals "^15.7.0" indent-string "^4.0.0" is-builtin-module "^3.2.1" jsesc "^3.0.2" @@ -1921,16 +1883,16 @@ eslint-visitor-keys@^4.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb" integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw== -eslint@^9.0.0: - version "9.7.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.7.0.tgz#bedb48e1cdc2362a0caaa106a4c6ed943e8b09e4" - integrity sha512-FzJ9D/0nGiCGBf8UXO/IGLTgLVzIxze1zpfA8Ton2mjLovXdAPlYDv+MQDcqj3TmrhAGYfOpz9RfR+ent0AgAw== +eslint@^9.8.0: + version "9.8.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.8.0.tgz#a4f4a090c8ea2d10864d89a6603e02ce9f649f0f" + integrity sha512-K8qnZ/QJzT2dLKdZJVX6W4XOwBzutMYmt0lqUS+JdXgd+HTYFlonFgkJ8s44d/zMPPCnOOk0kMWCApCPhiOy9A== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.11.0" - "@eslint/config-array" "^0.17.0" + "@eslint/config-array" "^0.17.1" "@eslint/eslintrc" "^3.1.0" - "@eslint/js" "9.7.0" + "@eslint/js" "9.8.0" "@humanwhocodes/module-importer" "^1.0.1" "@humanwhocodes/retry" "^0.3.0" "@nodelib/fs.walk" "^1.2.8" @@ -2257,17 +2219,17 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^10.3.7: - version "10.4.5" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" - integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== +glob@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-11.0.0.tgz#6031df0d7b65eaa1ccb9b29b5ced16cea658e77e" + integrity sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g== dependencies: foreground-child "^3.1.0" - jackspeak "^3.1.2" - minimatch "^9.0.4" + jackspeak "^4.0.1" + minimatch "^10.0.0" minipass "^7.1.2" package-json-from-dist "^1.0.0" - path-scurry "^1.11.1" + path-scurry "^2.0.0" glob@^7.1.3, glob@^7.1.4: version "7.2.3" @@ -2307,6 +2269,11 @@ globals@^14.0.0: resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== +globals@^15.7.0: + version "15.8.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-15.8.0.tgz#e64bb47b619dd8cbf32b3c1a0a61714e33cbbb41" + integrity sha512-VZAJ4cewHTExBWDHR6yptdIBlx9YSSZuwojj9Nt5mBRXQzrKakDsVKQ1J63sklLvzAJm0X5+RpO4i3Y2hcOnFw== + globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" @@ -2713,10 +2680,10 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jackspeak@^3.1.2: - version "3.4.3" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" - integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== +jackspeak@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-4.0.1.tgz#9fca4ce961af6083e259c376e9e3541431f5287b" + integrity sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog== dependencies: "@isaacs/cliui" "^8.0.2" optionalDependencies: @@ -3258,10 +3225,10 @@ longest-streak@^3.0.0: resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== -lru-cache@^10.2.0: - version "10.4.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" - integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== +lru-cache@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-11.0.0.tgz#15d93a196f189034d7166caf9fe55e7384c98a21" + integrity sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA== lru-cache@^5.1.1: version "5.1.1" @@ -3278,11 +3245,11 @@ lru-cache@^6.0.0: yallist "^4.0.0" magic-string@^0.30.10: - version "0.30.10" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.10.tgz#123d9c41a0cb5640c892b041d4cfb3bd0aa4b39e" - integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ== + version "0.30.11" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.11.tgz#301a6f93b3e8c2cb13ac1a7a673492c0dfd12954" + integrity sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A== dependencies: - "@jridgewell/sourcemap-codec" "^1.4.15" + "@jridgewell/sourcemap-codec" "^1.5.0" make-dir@^4.0.0: version "4.0.0" @@ -3798,6 +3765,13 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +minimatch@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.0.1.tgz#ce0521856b453c86e25f2c4c0d03e6ff7ddc440b" + integrity sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -3819,7 +3793,7 @@ minimatch@^9.0.4: dependencies: brace-expansion "^2.0.1" -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: +minipass@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== @@ -4061,13 +4035,13 @@ path-root@^0.1.1: dependencies: path-root-regex "^0.1.0" -path-scurry@^1.11.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" - integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== +path-scurry@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-2.0.0.tgz#9f052289f23ad8bf9397a2a0425e7b8615c58580" + integrity sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg== dependencies: - lru-cache "^10.2.0" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + lru-cache "^11.0.0" + minipass "^7.1.2" path-type@^4.0.0: version "4.0.0" @@ -4106,10 +4080,10 @@ pluralize@^8.0.0: resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== -postcss@^8.4.39: - version "8.4.39" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.39.tgz#aa3c94998b61d3a9c259efa51db4b392e1bde0e3" - integrity sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw== +postcss@^8.4.40: + version "8.4.40" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.40.tgz#eb81f2a4dd7668ed869a6db25999e02e9ad909d8" + integrity sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q== dependencies: nanoid "^3.3.7" picocolors "^1.0.1" @@ -4363,12 +4337,13 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^5.0.1: - version "5.0.9" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.9.tgz#c3baa1b886eadc2ec7981a06a593c3d01134ffe9" - integrity sha512-3i7b8OcswU6CpU8Ej89quJD4O98id7TtVM5U4Mybh84zQXdrFmDLouWBEEaD/QfO3gDDfH+AGFCGsR7kngzQnA== +rimraf@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.0.1.tgz#ffb8ad8844dd60332ab15f52bc104bc3ed71ea4e" + integrity sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A== dependencies: - glob "^10.3.7" + glob "^11.0.0" + package-json-from-dist "^1.0.0" run-parallel@^1.1.9: version "1.2.0" @@ -4792,10 +4767,10 @@ unc-path-regex@^0.1.2: resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== -undici-types@~5.26.4: - version "5.26.5" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" - integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +undici-types@~6.11.1: + version "6.11.1" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.11.1.tgz#432ea6e8efd54a48569705a699e62d8f4981b197" + integrity sha512-mIDEX2ek50x0OlRgxryxsenE5XaQD4on5U2inY7RApK3SOJpofyw7uW2AyfMKkhAxXIceo2DeWGVGwyvng1GNQ== unified@^10.0.0: version "10.1.2"