diff --git a/.gitignore b/.gitignore index 15201ac..70b213c 100644 --- a/.gitignore +++ b/.gitignore @@ -169,3 +169,6 @@ cython_debug/ # PyPI configuration file .pypirc + +# WFDB test input data (add back after approved PR to avoid large diffs while reviewing) +tests/data/input/mitdb_wfdb/ diff --git a/pyproject.toml b/pyproject.toml index cc50a66..68fee40 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -25,6 +25,7 @@ dependencies = [ "mlcroissant >= 1.0.0", "pandas >= 1.3.0", "rich >= 13.0.0", + "wfdb >= 4.0.0", ] # Optional dependencies, installed via `pip install '.[test]'` diff --git a/src/croissant_maker/handlers/registry.py b/src/croissant_maker/handlers/registry.py index 7c42298..69c35bd 100644 --- a/src/croissant_maker/handlers/registry.py +++ b/src/croissant_maker/handlers/registry.py @@ -58,8 +58,10 @@ def register_all_handlers() -> None: """ # Import and register all handlers here from croissant_maker.handlers.csv_handler import CSVHandler + from croissant_maker.handlers.wfdb_handler import WFDBHandler register_handler(CSVHandler()) + register_handler(WFDBHandler()) # Future handlers go here. Example: # from croissant_maker.handlers.parquet_handler import ParquetHandler diff --git a/src/croissant_maker/handlers/wfdb_handler.py b/src/croissant_maker/handlers/wfdb_handler.py new file mode 100644 index 0000000..428a42d --- /dev/null +++ b/src/croissant_maker/handlers/wfdb_handler.py @@ -0,0 +1,104 @@ +"""WFDB file handler for physiological waveform data.""" + +from pathlib import Path +import wfdb + +from croissant_maker.handlers.base_handler import FileTypeHandler +from croissant_maker.handlers.utils import compute_file_hash + + +class WFDBHandler(FileTypeHandler): + """ + Handler for WFDB format files (PhysioNet waveform databases). + + WFDB records consist of multiple related files: + - .hea: Header file (text, contains metadata) + - .dat: Data file (binary, contains signals) + - .atr: Annotation file (optional, contains beat/event annotations) + + The 'related_files' pattern in extract_metadata() allows handlers to indicate + that multiple physical files form a single logical record. This is a general + capability that other multi-file formats (DICOM series, HDF5 with external + links, Parquet partitions) can also use. Each related file becomes a separate + cr:FileObject in the Croissant metadata, but they all describe one RecordSet. + """ + + def can_handle(self, file_path: Path) -> bool: + return file_path.suffix.lower() == ".hea" + + def extract_metadata(self, file_path: Path) -> dict: + if not file_path.exists(): + raise FileNotFoundError(f"WFDB header file not found: {file_path}") + + record_path = file_path.with_suffix("") + record = wfdb.rdheader(str(record_path)) + + dat_file = file_path.with_suffix(".dat") + if not dat_file.exists(): + raise ValueError(f"WFDB data file missing for header: {file_path}") + + # Build list of related files that form this logical WFDB record. + # Each becomes a separate cr:FileObject in Croissant metadata. + related_files = [ + { + "path": str(dat_file), + "name": dat_file.name, + "type": "data", + "encoding": "application/x-wfdb-data", + "size": dat_file.stat().st_size, + "sha256": compute_file_hash(dat_file), + } + ] + + atr_file = file_path.with_suffix(".atr") + if atr_file.exists(): + related_files.append( + { + "path": str(atr_file), + "name": atr_file.name, + "type": "annotation", + "encoding": "application/x-wfdb-annotation", + "size": atr_file.stat().st_size, + "sha256": compute_file_hash(atr_file), + } + ) + + signal_types = {sig: "sc:Float" for sig in record.sig_name} + duration_seconds = record.sig_len / record.fs if record.fs > 0 else 0 + + metadata = { + "file_path": str(file_path), + "file_name": file_path.name, + "file_size": file_path.stat().st_size, + "sha256": compute_file_hash(file_path), + "encoding_format": "application/x-wfdb-header", + "record_name": record.record_name, + "related_files": related_files, + "signal_names": record.sig_name, + "signal_types": signal_types, + "units": record.units, + "sampling_frequency": record.fs, + "num_samples": record.sig_len, + "num_signals": record.n_sig, + "duration_seconds": duration_seconds, + "comments": record.comments if record.comments else [], + } + + if hasattr(record, "base_datetime") and record.base_datetime: + metadata["base_datetime"] = record.base_datetime.isoformat() + if hasattr(record, "base_date") and record.base_date: + metadata["base_date"] = str(record.base_date) + if hasattr(record, "base_time") and record.base_time: + metadata["base_time"] = str(record.base_time) + if hasattr(record, "adc_gain") and record.adc_gain: + metadata["adc_gain"] = record.adc_gain + if hasattr(record, "baseline") and record.baseline: + metadata["baseline"] = record.baseline + if hasattr(record, "init_value") and record.init_value: + metadata["init_value"] = record.init_value + if hasattr(record, "checksum") and record.checksum: + metadata["checksum"] = record.checksum + if hasattr(record, "fmt") and record.fmt: + metadata["fmt"] = record.fmt + + return metadata diff --git a/src/croissant_maker/metadata_generator.py b/src/croissant_maker/metadata_generator.py index 2eeaaf5..eb9b589 100644 --- a/src/croissant_maker/metadata_generator.py +++ b/src/croissant_maker/metadata_generator.py @@ -208,9 +208,15 @@ def generate_metadata(self) -> dict: file_objects = [] record_sets = [] + # Use a counter instead of enumerate(i) to ensure unique FileObject IDs. + # Some formats (e.g., WFDB) create multiple FileObjects per iteration via + # related_files, so enumerate(i) would cause ID conflicts. The counter + # increments for every FileObject created, not just per iteration. + file_counter = 0 for i, file_meta in enumerate(file_metadata): - file_id = f"file_{i}" + file_id = f"file_{file_counter}" + file_counter += 1 # Create FileObject for each file # What this section does well: @@ -228,6 +234,28 @@ def generate_metadata(self) -> dict: ) file_objects.append(file_obj) + # Handle multi-file records (e.g., WFDB: .hea + .dat + .atr) + # Some formats like WFDB have multiple physical files per logical record + related_file_ids = [] + if "related_files" in file_meta: + for related in file_meta["related_files"]: + related_id = f"file_{file_counter}" + file_counter += 1 + related_file_ids.append(related_id) + + rel_path = Path(related["path"]) + relative_path = str(rel_path.relative_to(self.dataset_path)) + + related_obj = mlc.FileObject( + id=related_id, + name=related["name"], + content_url=relative_path, + encoding_formats=[related["encoding"]], + content_size=str(related["size"]), + sha256=related["sha256"], + ) + file_objects.append(related_obj) + # Create RecordSet and Fields for files with structured data that have column types # What this section does well: # - Creates a cr:RecordSet for each file with structured data. @@ -263,6 +291,35 @@ def generate_metadata(self) -> dict: ) record_sets.append(record_set) + # Create RecordSet for signal data (e.g., WFDB physiological waveforms) + # Signal data has continuous time-series rather than discrete columns + elif "signal_types" in file_meta: + fields = [] + for signal_name, signal_type in file_meta["signal_types"].items(): + field = mlc.Field( + id=f"{file_id}_{signal_name}", + name=signal_name, + description=f"Signal '{signal_name}' from {file_meta['record_name']}", + data_types=[signal_type], + source=mlc.Source( + id=f"{file_id}_source_{signal_name}", + file_object=file_id, + ), + ) + fields.append(field) + + duration = file_meta.get("duration_seconds", 0) + num_samples = file_meta.get("num_samples", 0) + sampling_freq = file_meta.get("sampling_frequency", 0) + + record_set = mlc.RecordSet( + id=f"recordset_{i}", + name=file_meta["record_name"], + description=f"WFDB record {file_meta['record_name']}: {file_meta.get('num_signals', 0)} signals at {sampling_freq} Hz, {num_samples} samples ({duration:.2f} seconds)", + fields=fields, + ) + record_sets.append(record_set) + metadata.distribution = file_objects metadata.record_sets = record_sets diff --git a/tests/data/output/mitdb_wfdb_croissant.jsonld b/tests/data/output/mitdb_wfdb_croissant.jsonld new file mode 100644 index 0000000..bdd8341 --- /dev/null +++ b/tests/data/output/mitdb_wfdb_croissant.jsonld @@ -0,0 +1,4395 @@ +{ + "@context": { + "@language": "en", + "@vocab": "https://schema.org/", + "citeAs": "cr:citeAs", + "column": "cr:column", + "conformsTo": "dct:conformsTo", + "cr": "http://mlcommons.org/croissant/", + "rai": "http://mlcommons.org/croissant/RAI/", + "data": { + "@id": "cr:data", + "@type": "@json" + }, + "dataType": { + "@id": "cr:dataType", + "@type": "@vocab" + }, + "dct": "http://purl.org/dc/terms/", + "examples": { + "@id": "cr:examples", + "@type": "@json" + }, + "extract": "cr:extract", + "field": "cr:field", + "fileProperty": "cr:fileProperty", + "fileObject": "cr:fileObject", + "fileSet": "cr:fileSet", + "format": "cr:format", + "includes": "cr:includes", + "isLiveDataset": "cr:isLiveDataset", + "jsonPath": "cr:jsonPath", + "key": "cr:key", + "md5": "cr:md5", + "parentField": "cr:parentField", + "path": "cr:path", + "recordSet": "cr:recordSet", + "references": "cr:references", + "regex": "cr:regex", + "repeated": "cr:repeated", + "replace": "cr:replace", + "sc": "https://schema.org/", + "separator": "cr:separator", + "source": "cr:source", + "subField": "cr:subField", + "transform": "cr:transform" + }, + "@type": "sc:Dataset", + "name": "MIT-BIH Arrhythmia Database", + "description": "MIT-BIH Arrhythmia Database containing 48 ECG recordings with annotations", + "conformsTo": "http://mlcommons.org/croissant/1.0", + "citeAs": "Moody GB, Mark RG. The impact of the MIT-BIH Arrhythmia Database. IEEE Eng in Med and Biol 20(3):45-50 (May-June 2001).", + "creator": { + "@type": "sc:Person", + "name": "MIT-BIH" + }, + "datePublished": "1992-07-30T00:00:00", + "license": "https://physionet.org/content/mitdb/1.0.0/LICENSE.txt", + "url": "https://physionet.org/content/mitdb/1.0.0/", + "version": "1.0.0", + "distribution": [ + { + "@type": "cr:FileObject", + "@id": "file_0", + "name": "209.hea", + "contentSize": "157", + "contentUrl": "209.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "9ac1abedc17f898bf6a1db9c64c38ccf4f065ebc3989ee7740f4c0796655e590" + }, + { + "@type": "cr:FileObject", + "@id": "file_1", + "name": "209.dat", + "contentSize": "1950000", + "contentUrl": "209.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "e2516dd126ea85529d9a0e8442fef5d880a492d41f0692a76e648c8437f15c5f" + }, + { + "@type": "cr:FileObject", + "@id": "file_2", + "name": "209.atr", + "contentSize": "6288", + "contentUrl": "209.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "c0697b176e7caf49e34f93e28eaeeff7167e2de380a8698f6cb3fb3a5fcb1c84" + }, + { + "@type": "cr:FileObject", + "@id": "file_3", + "name": "221.hea", + "contentSize": "228", + "contentUrl": "221.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "09afd18974ee6e0cfa8b5b6ce80112c4df0cfbb8c8d01d3d085ecdf7790ada7b" + }, + { + "@type": "cr:FileObject", + "@id": "file_4", + "name": "221.dat", + "contentSize": "1950000", + "contentUrl": "221.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "274d17c6a35f7adcbb10a59ea34350e5ad299c2d69e4fa579d8863213e1fe9ae" + }, + { + "@type": "cr:FileObject", + "@id": "file_5", + "name": "221.atr", + "contentSize": "5874", + "contentUrl": "221.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "92549b966cc17bcf2edf00a97237d1e350a761d9ffe20065b5ed303848aad7ae" + }, + { + "@type": "cr:FileObject", + "@id": "file_6", + "name": "220.hea", + "contentSize": "132", + "contentUrl": "220.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "af40adc6deb9c0e942432e69a7153e41ac252eb6c15a24a715ef258469cda2e5" + }, + { + "@type": "cr:FileObject", + "@id": "file_7", + "name": "220.dat", + "contentSize": "1950000", + "contentUrl": "220.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "c01ca1a76fb3a89e96134a08f2e5aa6e760eda59ea9086ba8aaa13ba0cca9cff" + }, + { + "@type": "cr:FileObject", + "@id": "file_8", + "name": "220.atr", + "contentSize": "4262", + "contentUrl": "220.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "9cf9f330823e2a9850d51a7fce1f8ecfe5bb84e80e89412bd9f4de6a67f9ccc7" + }, + { + "@type": "cr:FileObject", + "@id": "file_9", + "name": "234.hea", + "contentSize": "156", + "contentUrl": "234.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "91c94c803d05f637cc29a3f353d88e1c25b20a25957c8cc25f7cbbf9fe2627c9" + }, + { + "@type": "cr:FileObject", + "@id": "file_10", + "name": "234.dat", + "contentSize": "1950000", + "contentUrl": "234.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "89f826307bfc91a554021da87c17b88b843ed3d26aa9ea237fc6f7c8af00da6d" + }, + { + "@type": "cr:FileObject", + "@id": "file_11", + "name": "234.atr", + "contentSize": "5560", + "contentUrl": "234.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "e829a3e4131fbe9420c1740bfb5000b3f4f64a2b40aa5f739ed6420f75be6785" + }, + { + "@type": "cr:FileObject", + "@id": "file_12", + "name": "208.hea", + "contentSize": "308", + "contentUrl": "208.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "5a27efda1bea972440a0b5f40a1c322898693e9602d5ce4722fe750b7dea46e9" + }, + { + "@type": "cr:FileObject", + "@id": "file_13", + "name": "208.dat", + "contentSize": "1950000", + "contentUrl": "208.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "22873623623c44ee413a5b60cacb15d4af2723734836fb3ae45d9ff96bdb36e7" + }, + { + "@type": "cr:FileObject", + "@id": "file_14", + "name": "208.atr", + "contentSize": "8578", + "contentUrl": "208.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "33878519ee34d00cb233fdb15b11c2b8da0b0aea2e643d31b07105cc3392edf4" + }, + { + "@type": "cr:FileObject", + "@id": "file_15", + "name": "222.hea", + "contentSize": "333", + "contentUrl": "222.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "a395bf5e58492e6724616532aae1cca7c50626fd66fe61f843a92adadc27293d" + }, + { + "@type": "cr:FileObject", + "@id": "file_16", + "name": "222.dat", + "contentSize": "1950000", + "contentUrl": "222.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "0510bf39ed2925a83debd249492bdfe77c575148376aaabeba4c7b7a2451ac5d" + }, + { + "@type": "cr:FileObject", + "@id": "file_17", + "name": "222.atr", + "contentSize": "6230", + "contentUrl": "222.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "a0206b778a9f073d451023e802e52059754648e83fe1dc669395b4884ccad356" + }, + { + "@type": "cr:FileObject", + "@id": "file_18", + "name": "223.hea", + "contentSize": "258", + "contentUrl": "223.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "bbd414e57b6eafa53204fb7eeb1212c9d47f598f36e8838b103bfb68a316ca85" + }, + { + "@type": "cr:FileObject", + "@id": "file_19", + "name": "223.dat", + "contentSize": "1950000", + "contentUrl": "223.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "1d42aa9e13f7349287ae5f0f00b40078c01aadd39e2cad1001ab42d3b7484594" + }, + { + "@type": "cr:FileObject", + "@id": "file_20", + "name": "223.atr", + "contentSize": "5468", + "contentUrl": "223.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "beaa5cb3eb5fb64a5f9e1dfcac9297f9564b379c9c354cbf8f9f927d9b81ccf1" + }, + { + "@type": "cr:FileObject", + "@id": "file_21", + "name": "233.hea", + "contentSize": "162", + "contentUrl": "233.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "d5ef73b3b4a98bec6e3d853db08ff18b0a1a9173c95327bcb15b2cfecee99b85" + }, + { + "@type": "cr:FileObject", + "@id": "file_22", + "name": "233.dat", + "contentSize": "1950000", + "contentUrl": "233.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "6ccd6b1fa0cafc052369e7ec0a99cc6c3b56b3c12afff26db800c55a826211b4" + }, + { + "@type": "cr:FileObject", + "@id": "file_23", + "name": "233.atr", + "contentSize": "6770", + "contentUrl": "233.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "c9ce42ecefa9a92e2ec69f9d237d8a53c67c60b31a25d579356ea8910bcc368a" + }, + { + "@type": "cr:FileObject", + "@id": "file_24", + "name": "232.hea", + "contentSize": "389", + "contentUrl": "232.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "5ff480450238ffc957abde76687b7e3d728c4b7b19063c8a0b1d08469a2228ea" + }, + { + "@type": "cr:FileObject", + "@id": "file_25", + "name": "232.dat", + "contentSize": "1950000", + "contentUrl": "232.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "3d74a21f848766c9607bc5eead7e4b2655f09586adb5561f02fd8fcb0e9da6d0" + }, + { + "@type": "cr:FileObject", + "@id": "file_26", + "name": "232.atr", + "contentSize": "3914", + "contentUrl": "232.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "be0e236cb883c669128da01beae0ec0efc39fdfaa5c1e878a3cef5443db8c934" + }, + { + "@type": "cr:FileObject", + "@id": "file_27", + "name": "230.hea", + "contentSize": "133", + "contentUrl": "230.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "5738bb479316dcc324b27807bbbffd8878da6156707c6cfbc08dcd0fa4771671" + }, + { + "@type": "cr:FileObject", + "@id": "file_28", + "name": "230.dat", + "contentSize": "1950000", + "contentUrl": "230.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "fba09ea54d9caa342c54c46e0df247335345b02444f7d15162906adfef55d057" + }, + { + "@type": "cr:FileObject", + "@id": "file_29", + "name": "230.atr", + "contentSize": "6386", + "contentUrl": "230.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "403d0d4842ba7135b1e14b9e5c50cba214753a0e17bf979090b2c6a8018f7eae" + }, + { + "@type": "cr:FileObject", + "@id": "file_30", + "name": "219.hea", + "contentSize": "276", + "contentUrl": "219.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "d14f0ffbf19f9842dbaa15f82bcedbc7b9b96f00f422b7e4da31112a1d1b2b67" + }, + { + "@type": "cr:FileObject", + "@id": "file_31", + "name": "219.dat", + "contentSize": "1950000", + "contentUrl": "219.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "7fc27b77e313aaa40da9f39783f8fb29a6a910be148e67463e5093793644751a" + }, + { + "@type": "cr:FileObject", + "@id": "file_32", + "name": "219.atr", + "contentSize": "4798", + "contentUrl": "219.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "271928544ce78772669c50b26cf4de163a53f5b90187b5d8080928def79f0e6a" + }, + { + "@type": "cr:FileObject", + "@id": "file_33", + "name": "231.hea", + "contentSize": "333", + "contentUrl": "231.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "733195a792e806a897531475eabcdec71e96f7b6cd7bcf57f9f1b2538cb13503" + }, + { + "@type": "cr:FileObject", + "@id": "file_34", + "name": "231.dat", + "contentSize": "1950000", + "contentUrl": "231.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "7d4f56d6c4b1d50322154381c1d8761457c2f2696973e915a3c19d8a5b789595" + }, + { + "@type": "cr:FileObject", + "@id": "file_35", + "name": "231.atr", + "contentSize": "7516", + "contentUrl": "231.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "b82cc005618eab81b3a246ca5c5a61903f3c0f40c191d7fb953adf054ea691de" + }, + { + "@type": "cr:FileObject", + "@id": "file_36", + "name": "108.hea", + "contentSize": "311", + "contentUrl": "108.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "1c461d963db1883589a975daa80b4104eee6cabb2f5cfec3e0d63b78e7a6a405" + }, + { + "@type": "cr:FileObject", + "@id": "file_37", + "name": "108.dat", + "contentSize": "1950000", + "contentUrl": "108.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "229a4ef62679dc5c6ea781bfbaec2bd784151fc9f9517f4cdecd533a9431eb20" + }, + { + "@type": "cr:FileObject", + "@id": "file_38", + "name": "108.atr", + "contentSize": "3742", + "contentUrl": "108.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "ea227008ac3bc4ada87807117909e77ae0643d5a8bc09f32b9096a35f140cbf3" + }, + { + "@type": "cr:FileObject", + "@id": "file_39", + "name": "121.hea", + "contentSize": "150", + "contentUrl": "121.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "1838d38ff54fed9b831207761d7321682dad0b693f944e4c3a4e6388c46ca6ff" + }, + { + "@type": "cr:FileObject", + "@id": "file_40", + "name": "121.dat", + "contentSize": "1950000", + "contentUrl": "121.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "679f374a7b2557fed04a4bc5648301ce9bdd38e5a4f13b2e63ebbcf7cb3fb482" + }, + { + "@type": "cr:FileObject", + "@id": "file_41", + "name": "121.atr", + "contentSize": "3774", + "contentUrl": "121.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "dbda472aa08eeb6bbbf775b8123e466a7ee57638caecd156407de3141c9fa71c" + }, + { + "@type": "cr:FileObject", + "@id": "file_42", + "name": "109.hea", + "contentSize": "195", + "contentUrl": "109.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "3b21402a9a096acb6a2199b25681e40b0dd201494cb023ded514cd9726bb7fad" + }, + { + "@type": "cr:FileObject", + "@id": "file_43", + "name": "109.dat", + "contentSize": "1950000", + "contentUrl": "109.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "267afd6ced7a1fd5a8bcd21fcc2b83287e37e3ef57f32e8a0fe39a6e021951cd" + }, + { + "@type": "cr:FileObject", + "@id": "file_44", + "name": "109.atr", + "contentSize": "5080", + "contentUrl": "109.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "2eef456587bab17263a126063321c040affa29bc4ccfdf2a2bc7fe50709fa1b8" + }, + { + "@type": "cr:FileObject", + "@id": "file_45", + "name": "123.hea", + "contentSize": "183", + "contentUrl": "123.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "aab5351e9da6f4beb22392f1a469df4a9e4b8017fea820432cf7d1846244d094" + }, + { + "@type": "cr:FileObject", + "@id": "file_46", + "name": "123.dat", + "contentSize": "1950000", + "contentUrl": "123.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "8a685a846b82d72aac4dd86171ad0fe5b19c0bd9ce51ddc1e6f015f73b2d8c3a" + }, + { + "@type": "cr:FileObject", + "@id": "file_47", + "name": "123.atr", + "contentSize": "3046", + "contentUrl": "123.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "061bfd2590fd9d6040d32741a19697491dedb65cbbc5b3865a5c50d49f52d709" + }, + { + "@type": "cr:FileObject", + "@id": "file_48", + "name": "122.hea", + "contentSize": "221", + "contentUrl": "122.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "b43ca64ed2c6e69d15def2c30f8cb2cbf25cb807f9530b1e7d5cfed2fd496f70" + }, + { + "@type": "cr:FileObject", + "@id": "file_49", + "name": "122.dat", + "contentSize": "1950000", + "contentUrl": "122.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "a700c794bfe23565603d75dc5706915f5436e522802d260e758683d11f5b9e13" + }, + { + "@type": "cr:FileObject", + "@id": "file_50", + "name": "122.atr", + "contentSize": "4970", + "contentUrl": "122.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "34966d92a94c72126253c0297407cff78e53be1f72c6814e28676bcda8be90de" + }, + { + "@type": "cr:FileObject", + "@id": "file_51", + "name": "119.hea", + "contentSize": "158", + "contentUrl": "119.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "658f01382d7280a06e2f4c06363569d477394a6898c69ee788bb383f6092df63" + }, + { + "@type": "cr:FileObject", + "@id": "file_52", + "name": "119.dat", + "contentSize": "1950000", + "contentUrl": "119.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "02a286a28e69b441568add915f16a2856b22bab893bf8729ee9654411ed3a5aa" + }, + { + "@type": "cr:FileObject", + "@id": "file_53", + "name": "119.atr", + "contentSize": "4812", + "contentUrl": "119.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "fd919c8ea20eed4a22fb37984977f30ce48d382eefd2d90934bf947a88e0fd7b" + }, + { + "@type": "cr:FileObject", + "@id": "file_54", + "name": "118.hea", + "contentSize": "167", + "contentUrl": "118.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "48a3d0c4e7742ca0e39a2cbb3ea5142a4d41261adbd0bb25651e0fcd9c6aef2b" + }, + { + "@type": "cr:FileObject", + "@id": "file_55", + "name": "118.dat", + "contentSize": "1950000", + "contentUrl": "118.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "66ea4b70b7d64abd0f49089ae1b8f0f577664c46e5b29ac23b291934e063df15" + }, + { + "@type": "cr:FileObject", + "@id": "file_56", + "name": "118.atr", + "contentSize": "4622", + "contentUrl": "118.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "77afd5400648d128223d5029a49c442f5abd65ba997f732489cb8eed39d71551" + }, + { + "@type": "cr:FileObject", + "@id": "file_57", + "name": "124.hea", + "contentSize": "219", + "contentUrl": "124.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "2200f917fe7a1fa817b79069a274d3291a6fa66289521af5e7d38edeb3e82bce" + }, + { + "@type": "cr:FileObject", + "@id": "file_58", + "name": "124.dat", + "contentSize": "1950000", + "contentUrl": "124.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "296988e49d2653eb499ad0b17c46826b4296b7eaf94df3f76f1ba2dcdf6bc48b" + }, + { + "@type": "cr:FileObject", + "@id": "file_59", + "name": "124.atr", + "contentSize": "3360", + "contentUrl": "124.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "f9c8cac368f1f6ba8895ae47f5771c82597374c1e6b030385ca2eb186454677c" + }, + { + "@type": "cr:FileObject", + "@id": "file_60", + "name": "101.hea", + "contentSize": "131", + "contentUrl": "101.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "d5f02fbe8673fa05465442191b98ca0d28a1670e7ef0e83fb9ef8723113a311c" + }, + { + "@type": "cr:FileObject", + "@id": "file_61", + "name": "101.dat", + "contentSize": "1950000", + "contentUrl": "101.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "698d1ea6f472d23ca50317c72c96cda2698badd8578220ed0380cdf241e39006" + }, + { + "@type": "cr:FileObject", + "@id": "file_62", + "name": "101.atr", + "contentSize": "3768", + "contentUrl": "101.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "441cdd6486cfdf4c53e344d1048ab81296773e7058d53069022adc68543a0663" + }, + { + "@type": "cr:FileObject", + "@id": "file_63", + "name": "115.hea", + "contentSize": "126", + "contentUrl": "115.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "3212847a692bf3bc5e1dde0343d272e7d56735983276031420060d51d0cdd41c" + }, + { + "@type": "cr:FileObject", + "@id": "file_64", + "name": "115.dat", + "contentSize": "1950000", + "contentUrl": "115.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "34185efe9889608c76ebfbf5a467d3457970c6d11b77a2bf81b94bcf46e07c41" + }, + { + "@type": "cr:FileObject", + "@id": "file_65", + "name": "115.atr", + "contentSize": "3946", + "contentUrl": "115.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "4980667b19b7a637729d40762f071b483d69f5431db818cbddc9a8ae64cc4da2" + }, + { + "@type": "cr:FileObject", + "@id": "file_66", + "name": "114.hea", + "contentSize": "160", + "contentUrl": "114.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "830ba89cebf60945db0c78332e3cc6c64acbe218f6f16594660d4f17423ee889" + }, + { + "@type": "cr:FileObject", + "@id": "file_67", + "name": "114.dat", + "contentSize": "1950000", + "contentUrl": "114.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "2ae83463edcfec256b79ce93716dcb40f289bacbe9e5e7a66cd00d0a31099d4b" + }, + { + "@type": "cr:FileObject", + "@id": "file_68", + "name": "114.atr", + "contentSize": "3878", + "contentUrl": "114.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "5280acb082b654d64944137987a00fbc2105b3a3fcdda75d0bf11d4644e40d9f" + }, + { + "@type": "cr:FileObject", + "@id": "file_69", + "name": "100.hea", + "contentSize": "143", + "contentUrl": "100.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "60ebc904c7bf3e04d142638d3fd5c903e8dc9f10f1ea3264e07926aa089ee75e" + }, + { + "@type": "cr:FileObject", + "@id": "file_70", + "name": "100.dat", + "contentSize": "1950000", + "contentUrl": "100.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "b2ea3c250e56e48f4b7b90697832b8ecd1afa1e0bb31f2dcfea4ed6e1075a639" + }, + { + "@type": "cr:FileObject", + "@id": "file_71", + "name": "100.atr", + "contentSize": "4558", + "contentUrl": "100.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "8d8a5349fb16638ebbf649f1779d12e96d91b736b2aafe59db43719ae583d471" + }, + { + "@type": "cr:FileObject", + "@id": "file_72", + "name": "116.hea", + "contentSize": "158", + "contentUrl": "116.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "5553273cafa68c106468ddfaa3bd1d6a30daec53cff1642d3592a20110b2edad" + }, + { + "@type": "cr:FileObject", + "@id": "file_73", + "name": "116.dat", + "contentSize": "1950000", + "contentUrl": "116.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "0ab38cfca76d816673213dcd570504bb3ab02ef76d51540fd7a6075bc580ad85" + }, + { + "@type": "cr:FileObject", + "@id": "file_74", + "name": "116.atr", + "contentSize": "4858", + "contentUrl": "116.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "abd31e2c878073e67319d5a6fa34923fe117cca02e5c80318378405c853ccbef" + }, + { + "@type": "cr:FileObject", + "@id": "file_75", + "name": "102.hea", + "contentSize": "204", + "contentUrl": "102.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "a22f09934ee1cfe339d1502f68eb3f0175815f47273b81ea55f75aeb5584cb0d" + }, + { + "@type": "cr:FileObject", + "@id": "file_76", + "name": "102.dat", + "contentSize": "1950000", + "contentUrl": "102.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "2b56039f9ece83b53511e0fc24e95f23b90712c8017fe4d915e040e78713c38e" + }, + { + "@type": "cr:FileObject", + "@id": "file_77", + "name": "102.atr", + "contentSize": "4424", + "contentUrl": "102.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "24e29031c081806ff6d4ec20fb386e28d8f885f0dca5f74dc29c881e8b196d09" + }, + { + "@type": "cr:FileObject", + "@id": "file_78", + "name": "103.hea", + "contentSize": "142", + "contentUrl": "103.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "3da9706fc27cc5d627a31b04b74b908ac0b6e061843a87cbd57801e5ea0fed7b" + }, + { + "@type": "cr:FileObject", + "@id": "file_79", + "name": "103.dat", + "contentSize": "1950000", + "contentUrl": "103.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "f7994f0bd196730779998b4bddf26cb47f396599fb370a08b5cb29a3ac4d555d" + }, + { + "@type": "cr:FileObject", + "@id": "file_80", + "name": "103.atr", + "contentSize": "4196", + "contentUrl": "103.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "392ce37fbc7e89b3f14998e197a844f23cce6a3db6edaa71b4b49bf3ca5b6596" + }, + { + "@type": "cr:FileObject", + "@id": "file_81", + "name": "117.hea", + "contentSize": "127", + "contentUrl": "117.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "452e70b5eb3fe3ebc3fc61284f70b788dbf83bb98f951c2b0bb5f0b95156d06a" + }, + { + "@type": "cr:FileObject", + "@id": "file_82", + "name": "117.dat", + "contentSize": "1950000", + "contentUrl": "117.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "2ce7de6f20baf4cfef0369f9a13fa53784d18e2da78c11afa1e4c55e8ad1900e" + }, + { + "@type": "cr:FileObject", + "@id": "file_83", + "name": "117.atr", + "contentSize": "3090", + "contentUrl": "117.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "232beaacf4a4eb4b6d2f2242f01ecae3d2842be1dd0afe890037ae050f91ce63" + }, + { + "@type": "cr:FileObject", + "@id": "file_84", + "name": "113.hea", + "contentSize": "235", + "contentUrl": "113.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "848ed5243adaf3b53c72b36b1a5a8b5b8cf585a1d78a02e7b25c1d38818d4343" + }, + { + "@type": "cr:FileObject", + "@id": "file_85", + "name": "113.dat", + "contentSize": "1950000", + "contentUrl": "113.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "f5509b71dabaaa11c53f687ee17aab0071bce3d471e2ab77c71a6434f5b7aacf" + }, + { + "@type": "cr:FileObject", + "@id": "file_86", + "name": "113.atr", + "contentSize": "3600", + "contentUrl": "113.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "39527d597a246410d2c16f062600c73271a73a7503d49cafd1d17508af4cd432" + }, + { + "@type": "cr:FileObject", + "@id": "file_87", + "name": "107.hea", + "contentSize": "193", + "contentUrl": "107.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "7c9c70b4ccfd3e503b6d4d20eeb508aa89cfd3a5d2b530bc873aba6a2a503dd4" + }, + { + "@type": "cr:FileObject", + "@id": "file_88", + "name": "107.dat", + "contentSize": "1950000", + "contentUrl": "107.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "ea2254006bb0503926bfb7f6ca3ccf0b3e1ae6bfa8f5eb702bab5d8e960af728" + }, + { + "@type": "cr:FileObject", + "@id": "file_89", + "name": "107.atr", + "contentSize": "4406", + "contentUrl": "107.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "559453fc0454d2aa2b744224fd301007b8e41585c6b6f239709c8c2cdbe207f4" + }, + { + "@type": "cr:FileObject", + "@id": "file_90", + "name": "106.hea", + "contentSize": "158", + "contentUrl": "106.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "ad5ed3ee5603926a07a09f0d0c9e2a7ff10a705dbafcde3d185317730a8839ab" + }, + { + "@type": "cr:FileObject", + "@id": "file_91", + "name": "106.dat", + "contentSize": "1950000", + "contentUrl": "106.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "c017bc18b95b1f970bca143a044ee5d54168648b541e47aa656f2737a59c1202" + }, + { + "@type": "cr:FileObject", + "@id": "file_92", + "name": "106.atr", + "contentSize": "5476", + "contentUrl": "106.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "585347e6d1bd3ad89cdb52cb80945878a5e51026d81f871a376bb6e13936f7fa" + }, + { + "@type": "cr:FileObject", + "@id": "file_93", + "name": "112.hea", + "contentSize": "198", + "contentUrl": "112.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "a78dc4b0907b3db806395cff76b3a2e9a70e889b9dc3702c7de55aa8b41abd7d" + }, + { + "@type": "cr:FileObject", + "@id": "file_94", + "name": "112.dat", + "contentSize": "1950000", + "contentUrl": "112.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "3c7af9758687314255b5d946a58d9509d53ecf2a300230684fa8ecf00b774bdb" + }, + { + "@type": "cr:FileObject", + "@id": "file_95", + "name": "112.atr", + "contentSize": "5118", + "contentUrl": "112.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "69cf7ee24d65a5430162ae9b6452be9d4855c2af47f91976b7f02038ea115002" + }, + { + "@type": "cr:FileObject", + "@id": "file_96", + "name": "104.hea", + "contentSize": "378", + "contentUrl": "104.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "46b5d09e2cae7caaf48f61fc7d0f20962035cf057cf675097fc7d64c4796748f" + }, + { + "@type": "cr:FileObject", + "@id": "file_97", + "name": "104.dat", + "contentSize": "1950000", + "contentUrl": "104.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "aeb19bd805996167c6edd8f1b1a659486c0cbad101f06f1426548784d9634354" + }, + { + "@type": "cr:FileObject", + "@id": "file_98", + "name": "104.atr", + "contentSize": "4948", + "contentUrl": "104.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "4f945bef6a4e30b588d7ebdb0763f5294322aa5632b4bb128ee140c7035463c9" + }, + { + "@type": "cr:FileObject", + "@id": "file_99", + "name": "111.hea", + "contentSize": "285", + "contentUrl": "111.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "9e635a715d6cc44a716a7a73c6dd365bd94099f94e63accb2a65c5b25b4b69b5" + }, + { + "@type": "cr:FileObject", + "@id": "file_100", + "name": "111.dat", + "contentSize": "1950000", + "contentUrl": "111.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "8372d98ae59fbfd023502a9d0fc03fb5383083da92584b964484e18593e08485" + }, + { + "@type": "cr:FileObject", + "@id": "file_101", + "name": "111.atr", + "contentSize": "4284", + "contentUrl": "111.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "372ed78bb0bbe7d5d9dc7e676c03d72530729775b5cfa94501485329fc47b8cb" + }, + { + "@type": "cr:FileObject", + "@id": "file_102", + "name": "105.hea", + "contentSize": "258", + "contentUrl": "105.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "9a024eebf8e9baf630308815e689d7e3eab471ab0069db6aded127c396418d48" + }, + { + "@type": "cr:FileObject", + "@id": "file_103", + "name": "105.dat", + "contentSize": "1950000", + "contentUrl": "105.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "fcd0153dfea69c749194bb73de7db124588857cfa2f6aecb72754894c8afde02" + }, + { + "@type": "cr:FileObject", + "@id": "file_104", + "name": "105.atr", + "contentSize": "5638", + "contentUrl": "105.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "278d534c1ad952a6d41db963b6b2b00be070d8dd5fa66545caa5c18edcc36497" + }, + { + "@type": "cr:FileObject", + "@id": "file_105", + "name": "228.hea", + "contentSize": "302", + "contentUrl": "228.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "b4a2796ca39816b32d5b24c2c1d0a2aa355d159aafd7ecbfb1cdf11a695a14d8" + }, + { + "@type": "cr:FileObject", + "@id": "file_106", + "name": "228.dat", + "contentSize": "1950000", + "contentUrl": "228.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "b2421f15447772bb7a38f5073e4e07d5d9be50d875441a4a0821c9e22b78fdac" + }, + { + "@type": "cr:FileObject", + "@id": "file_107", + "name": "228.atr", + "contentSize": "5198", + "contentUrl": "228.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "7e08ee90f668800fb3e1a66193fb8f8b4b91c3ec2f52f384756bab826e019d1d" + }, + { + "@type": "cr:FileObject", + "@id": "file_108", + "name": "214.hea", + "contentSize": "270", + "contentUrl": "214.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "beb6b379e93cbe94eb9f1461cccaa0131940e14322df4abbc07665b722ed9206" + }, + { + "@type": "cr:FileObject", + "@id": "file_109", + "name": "214.dat", + "contentSize": "1950000", + "contentUrl": "214.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "a886b1ceb56e950858dedf5b56d3fdb5f26aef3667f8effcb880c1c000ee0cd3" + }, + { + "@type": "cr:FileObject", + "@id": "file_110", + "name": "214.atr", + "contentSize": "4790", + "contentUrl": "214.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "09c588b0623f6dc6138928ce2006f294c4ef3da143eec2cdba6eddb9b1597214" + }, + { + "@type": "cr:FileObject", + "@id": "file_111", + "name": "200.hea", + "contentSize": "306", + "contentUrl": "200.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "9e0c2ff5b790cf624deab0ccb8a9f211a9e29a748d8197da3c1ee7c5b596b40c" + }, + { + "@type": "cr:FileObject", + "@id": "file_112", + "name": "200.dat", + "contentSize": "1950000", + "contentUrl": "200.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "a9e203b3807b9fcd3647cde03444437cb8eec7f5128a8eb413edafb394272e0f" + }, + { + "@type": "cr:FileObject", + "@id": "file_113", + "name": "200.atr", + "contentSize": "8114", + "contentUrl": "200.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "f9624a11696760427d75314a78c31f89ca3c446af855890c8f8b66cddd8b3a3f" + }, + { + "@type": "cr:FileObject", + "@id": "file_114", + "name": "201.hea", + "contentSize": "284", + "contentUrl": "201.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "dba34d6252879af28c1d10cde200989a4f6507d98df4395f5cba5f81af5b7e5a" + }, + { + "@type": "cr:FileObject", + "@id": "file_115", + "name": "201.dat", + "contentSize": "1950000", + "contentUrl": "201.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "16610ae46eff900794597503d15af4572a8b1518f18dbed2843b7e68c81f3898" + }, + { + "@type": "cr:FileObject", + "@id": "file_116", + "name": "201.atr", + "contentSize": "4322", + "contentUrl": "201.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "df1276b6c6952b177ec6eea2be3edc7a96888454107a3ee56be880b0afaf6f35" + }, + { + "@type": "cr:FileObject", + "@id": "file_117", + "name": "215.hea", + "contentSize": "256", + "contentUrl": "215.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "a326c25698a0773a6be986f2cae499981224d3c61d8fdcddfbb3beaf3ff0bcbd" + }, + { + "@type": "cr:FileObject", + "@id": "file_118", + "name": "215.dat", + "contentSize": "1950000", + "contentUrl": "215.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "9e28799b5733a2d60470653e6f6ca26610143303233a1b7559cff54e2ad26ef9" + }, + { + "@type": "cr:FileObject", + "@id": "file_119", + "name": "215.atr", + "contentSize": "6878", + "contentUrl": "215.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "94968307b89eb0be766cbb88617f08571ed41b3b25b294d19a72b7ffd2525aee" + }, + { + "@type": "cr:FileObject", + "@id": "file_120", + "name": "203.hea", + "contentSize": "423", + "contentUrl": "203.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "25b3a3107dd00221b245ef5c23ffdfbd07caaf58e2cf377734f3a947361b26a5" + }, + { + "@type": "cr:FileObject", + "@id": "file_121", + "name": "203.dat", + "contentSize": "1950000", + "contentUrl": "203.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "5ba7d2237fc838438efd8bb0a3baeffc5de2e70c76e3ab7e401e811ad82f43e0" + }, + { + "@type": "cr:FileObject", + "@id": "file_122", + "name": "203.atr", + "contentSize": "7094", + "contentUrl": "203.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "2573f948e54a538983a44bf946e3e61cdda60e898b4c65ca8559b57c4877c706" + }, + { + "@type": "cr:FileObject", + "@id": "file_123", + "name": "217.hea", + "contentSize": "178", + "contentUrl": "217.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "5320a16d3a7d1dea32cdf905b7f5140772a01bf6b11065e0ab937cc6775c5ce6" + }, + { + "@type": "cr:FileObject", + "@id": "file_124", + "name": "217.dat", + "contentSize": "1950000", + "contentUrl": "217.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "de29975a2a476eaa1a3f07b90134cec70830b2d7932b213354ba175914a6040a" + }, + { + "@type": "cr:FileObject", + "@id": "file_125", + "name": "217.atr", + "contentSize": "5262", + "contentUrl": "217.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "196ad0989b837b5d51784e13bef1242549ca7266f0da21743f208302e3e3f5e1" + }, + { + "@type": "cr:FileObject", + "@id": "file_126", + "name": "202.hea", + "contentSize": "277", + "contentUrl": "202.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "6822216d1bc51f7014637c53e543cdc3863fea4ee3fec3aa99fb0762aece0cba" + }, + { + "@type": "cr:FileObject", + "@id": "file_127", + "name": "202.dat", + "contentSize": "1950000", + "contentUrl": "202.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "0c990e4142de6be898de4b21bd6e6705cd567e5d97cb731a994dc5aee9c7142d" + }, + { + "@type": "cr:FileObject", + "@id": "file_128", + "name": "202.atr", + "contentSize": "4388", + "contentUrl": "202.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "16d59e44564844c39a648164580a69e71f1657e951e6ad121b64eb1a11db037d" + }, + { + "@type": "cr:FileObject", + "@id": "file_129", + "name": "212.hea", + "contentSize": "248", + "contentUrl": "212.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "f67d7c99a8ba055941e8aa98fd1f31dfd7dd1d957c85f40b488237eecba61aad" + }, + { + "@type": "cr:FileObject", + "@id": "file_130", + "name": "212.dat", + "contentSize": "1950000", + "contentUrl": "212.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "6b63d3e20c40073be852e8121196d5de2ede502168fcb6c10ca5af841418cc5c" + }, + { + "@type": "cr:FileObject", + "@id": "file_131", + "name": "212.atr", + "contentSize": "5550", + "contentUrl": "212.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "dc4d0bec7e3ced82f67ef9d5264bcdb3d167c2214125eb04891040fbbb340816" + }, + { + "@type": "cr:FileObject", + "@id": "file_132", + "name": "213.hea", + "contentSize": "327", + "contentUrl": "213.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "6b64b05c7a28630acf3ffb5e541d635e3fc854ea3602b1b355762f94c6058f17" + }, + { + "@type": "cr:FileObject", + "@id": "file_133", + "name": "213.dat", + "contentSize": "1950000", + "contentUrl": "213.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "0cb13cd9299b0ab68f8f3064b2ab72f853d155abb277b68daef0a26cbc173b0d" + }, + { + "@type": "cr:FileObject", + "@id": "file_134", + "name": "213.atr", + "contentSize": "6852", + "contentUrl": "213.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "44349e22176aad3f688ca9a62f283a993927a0b9ef6d97f473cde3b16cfabc9a" + }, + { + "@type": "cr:FileObject", + "@id": "file_135", + "name": "207.hea", + "contentSize": "546", + "contentUrl": "207.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "7645d488d4c304760aae0a709193ffa13692c317b551bcbdcbb37011032178d8" + }, + { + "@type": "cr:FileObject", + "@id": "file_136", + "name": "207.dat", + "contentSize": "1950000", + "contentUrl": "207.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "139f99250366fbf347cba4d8ea1fbe788f98cb1b93b70f50ccba70122d908605" + }, + { + "@type": "cr:FileObject", + "@id": "file_137", + "name": "207.atr", + "contentSize": "4958", + "contentUrl": "207.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "cceb64d68033a277d2d5669458d49258295102dd3e20614a0ca7d63b67009404" + }, + { + "@type": "cr:FileObject", + "@id": "file_138", + "name": "205.hea", + "contentSize": "222", + "contentUrl": "205.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "739f76bbcbbfdad1f260a043a5f7106f6e912894065b15ea75bee42af0380a2a" + }, + { + "@type": "cr:FileObject", + "@id": "file_139", + "name": "205.dat", + "contentSize": "1950000", + "contentUrl": "205.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "8a513c39e6d9a1d732de0b3909a87aa1fcfd4bd55ab5f59a5b810967d252af36" + }, + { + "@type": "cr:FileObject", + "@id": "file_140", + "name": "205.atr", + "contentSize": "5436", + "contentUrl": "205.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "0ae55e31175b9ba36e09c3b556b15e3e70f254936a2634d5ff341dfb86a74ea9" + }, + { + "@type": "cr:FileObject", + "@id": "file_141", + "name": "210.hea", + "contentSize": "158", + "contentUrl": "210.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "9d6a422834435fb8d267256f4fd01bfd8158b511f662c4b5dd8c60059944a322" + }, + { + "@type": "cr:FileObject", + "@id": "file_142", + "name": "210.dat", + "contentSize": "1950000", + "contentUrl": "210.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "76e971fba03c0ae2ab261c7446240987ecde82f45dad1d4f36e290b950eb464b" + }, + { + "@type": "cr:FileObject", + "@id": "file_143", + "name": "210.atr", + "contentSize": "5824", + "contentUrl": "210.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "5a46bef3d185c903b1ce099a988898fc829cea7e6c5bc1984532efd694fa8db6" + }, + { + "@type": "cr:FileObject", + "@id": "file_144", + "name": "x_228.hea", + "contentSize": "367", + "contentUrl": "x_mitdb/x_228.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "8e209b01fa2b8f08f77e4b7bb08d239f2b6097dba797b68945ce1a39931a9eda" + }, + { + "@type": "cr:FileObject", + "@id": "file_145", + "name": "x_228.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_228.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "a5188a0ca497bdaf7d995803f3073c6d1477817cf8aac0bef8ab2a775b55c689" + }, + { + "@type": "cr:FileObject", + "@id": "file_146", + "name": "x_228.atr", + "contentSize": "1872", + "contentUrl": "x_mitdb/x_228.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "f4c58d7f0fc7e3255f6cfa8e4a12220da9bc611c81066522ac5c4d073735a4f6" + }, + { + "@type": "cr:FileObject", + "@id": "file_147", + "name": "x_112.hea", + "contentSize": "265", + "contentUrl": "x_mitdb/x_112.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "04e79d636ea6acfe028c48c3ae240e9416d15617dd4de8b3dead5682b81b8d94" + }, + { + "@type": "cr:FileObject", + "@id": "file_148", + "name": "x_112.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_112.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "127930be6d3301e718f43f35e927b600950c91f6dc922297828615daa6327531" + }, + { + "@type": "cr:FileObject", + "@id": "file_149", + "name": "x_112.atr", + "contentSize": "1718", + "contentUrl": "x_mitdb/x_112.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "7cddcc362a8fe5380a87ba349468390fd45fab13a880f6f7d37544d7ec627465" + }, + { + "@type": "cr:FileObject", + "@id": "file_150", + "name": "x_113.hea", + "contentSize": "300", + "contentUrl": "x_mitdb/x_113.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "b28db3cb99089c6d9bf2df2666c45ddef6ddd5b9a30f8ce9031bdf5ae8ba1eaa" + }, + { + "@type": "cr:FileObject", + "@id": "file_151", + "name": "x_113.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_113.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "34c6846c16eb6f7b5326c519747856b1818a38ca97d2f1ae5aa13add229f19e3" + }, + { + "@type": "cr:FileObject", + "@id": "file_152", + "name": "x_113.atr", + "contentSize": "1172", + "contentUrl": "x_mitdb/x_113.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "d66be35049e8eb3b51e4f47ecc6704e60bf4e0db84840911ad686a080a066a1d" + }, + { + "@type": "cr:FileObject", + "@id": "file_153", + "name": "x_111.hea", + "contentSize": "351", + "contentUrl": "x_mitdb/x_111.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "fca6545b50cb7441cb02ba301791c25f55834003e88ad3346ab8444d11e42b7f" + }, + { + "@type": "cr:FileObject", + "@id": "file_154", + "name": "x_111.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_111.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "949f751501c3c57a5b6ec42a9d513c675f589fd8a88aa633f10f34675e6cc460" + }, + { + "@type": "cr:FileObject", + "@id": "file_155", + "name": "x_111.atr", + "contentSize": "1420", + "contentUrl": "x_mitdb/x_111.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "35475944b83b62db36bcb9e78e74b35640c6081fc6e1e18dda263c1577f3672e" + }, + { + "@type": "cr:FileObject", + "@id": "file_156", + "name": "x_114.hea", + "contentSize": "225", + "contentUrl": "x_mitdb/x_114.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "7446cad2bf6dd0adf8614390ee46280f6ce175ffc807a5b473b1d1b1c065f1ad" + }, + { + "@type": "cr:FileObject", + "@id": "file_157", + "name": "x_114.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_114.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "ee4495456c5744cfc3f3fc741f45371b7a994ec08b5fbec68f2ee69cb318d2b3" + }, + { + "@type": "cr:FileObject", + "@id": "file_158", + "name": "x_114.atr", + "contentSize": "1180", + "contentUrl": "x_mitdb/x_114.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "59325b23b3c84f8fa60e3a59b747e6324d056a9da9886c18a3cc29537d9a87b9" + }, + { + "@type": "cr:FileObject", + "@id": "file_159", + "name": "x_115.hea", + "contentSize": "194", + "contentUrl": "x_mitdb/x_115.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "4814a1ea72561eb337e12c49553c24859bb2b13257723f520c154875f7cd835e" + }, + { + "@type": "cr:FileObject", + "@id": "file_160", + "name": "x_115.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_115.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "f2553b963ce8437cd7181ad78b0e65cd7c609a60de93f81af97f8c1cf02156dc" + }, + { + "@type": "cr:FileObject", + "@id": "file_161", + "name": "x_115.atr", + "contentSize": "1280", + "contentUrl": "x_mitdb/x_115.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "9ea5f1d1352210958a18fe524238c2de927eaeb77ab243620ae9f569eae80d6d" + }, + { + "@type": "cr:FileObject", + "@id": "file_162", + "name": "x_117.hea", + "contentSize": "194", + "contentUrl": "x_mitdb/x_117.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "01759377f2c8b68fc5565ba2719a24fc9eb3536b5dd114a0b76d14a888c971d3" + }, + { + "@type": "cr:FileObject", + "@id": "file_163", + "name": "x_117.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_117.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "4fa2668f29d2180be8e1f3203e771751040fc61458a175e09cdb5ee219ef5b88" + }, + { + "@type": "cr:FileObject", + "@id": "file_164", + "name": "x_117.atr", + "contentSize": "1020", + "contentUrl": "x_mitdb/x_117.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "036908fac76d95804557333ff7e21a266b007e4f7496778aff489b4f7059d9d4" + }, + { + "@type": "cr:FileObject", + "@id": "file_165", + "name": "x_116.hea", + "contentSize": "224", + "contentUrl": "x_mitdb/x_116.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "8bd043de635a66f99ab5f27ba9e139d8f50f7c7fda228f22552ec072e6bf2e08" + }, + { + "@type": "cr:FileObject", + "@id": "file_166", + "name": "x_116.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_116.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "73e61b31d0a3720bda63337756d7acada6803a535250d2846e58ff379873369d" + }, + { + "@type": "cr:FileObject", + "@id": "file_167", + "name": "x_116.atr", + "contentSize": "1604", + "contentUrl": "x_mitdb/x_116.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "b7a159629c7c16a9da49d23dd0bd1f3d2343b8c4441e71fb5bc45fe0c7f7a550" + }, + { + "@type": "cr:FileObject", + "@id": "file_168", + "name": "x_124.hea", + "contentSize": "287", + "contentUrl": "x_mitdb/x_124.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "64b5eef211fe146950ef1a330250f0e79793230ec8f2e47cf8a05041a63ff188" + }, + { + "@type": "cr:FileObject", + "@id": "file_169", + "name": "x_124.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_124.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "098a028f3f425bcb89eeda0c7d183c621d2c2809b70859174afe0a4653ded388" + }, + { + "@type": "cr:FileObject", + "@id": "file_170", + "name": "x_124.atr", + "contentSize": "1102", + "contentUrl": "x_mitdb/x_124.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "997d699d6b3f0617feba03337524017ecd5eb4d9806fa1b729e162fe8c1ea2cc" + }, + { + "@type": "cr:FileObject", + "@id": "file_171", + "name": "x_109.hea", + "contentSize": "263", + "contentUrl": "x_mitdb/x_109.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "f5107f6062d3f11803c4bdf0ce47c8ca4729a9fa18455699f556a78d687b822b" + }, + { + "@type": "cr:FileObject", + "@id": "file_172", + "name": "x_109.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_109.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "3b98c3040a30477560865deccd9d525001833d43ec4951dbd0199fefd0943a1e" + }, + { + "@type": "cr:FileObject", + "@id": "file_173", + "name": "x_109.atr", + "contentSize": "1724", + "contentUrl": "x_mitdb/x_109.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "409b3024be4a57be62dd3b81c5bed6408b89662c0a16baccd3f18a1dc291e205" + }, + { + "@type": "cr:FileObject", + "@id": "file_174", + "name": "x_121.hea", + "contentSize": "220", + "contentUrl": "x_mitdb/x_121.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "e3246d733475f8ed23eb6b6a99d74740d0b1bc967ef39bcdf1dc6c4db57d4d17" + }, + { + "@type": "cr:FileObject", + "@id": "file_175", + "name": "x_121.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_121.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "297cf68737bf8823240d8d7053570f57291667f17b32a20a0fd8f300b0ef540f" + }, + { + "@type": "cr:FileObject", + "@id": "file_176", + "name": "x_121.atr", + "contentSize": "1234", + "contentUrl": "x_mitdb/x_121.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "f711def649e7bd7acf567fab4efdcb638a90bfa8f6e9a0bab3ce5c49f13011c7" + }, + { + "@type": "cr:FileObject", + "@id": "file_177", + "name": "x_108.hea", + "contentSize": "373", + "contentUrl": "x_mitdb/x_108.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "354b97862b4afcc50139704842866a0aaa91f346cc298cab0ff36a29ddc04b32" + }, + { + "@type": "cr:FileObject", + "@id": "file_178", + "name": "x_108.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_108.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "8f9110a49111fbdc765ce8be48cc895d86f518eb4eb4b023f6e90c6bfc675a0b" + }, + { + "@type": "cr:FileObject", + "@id": "file_179", + "name": "x_108.atr", + "contentSize": "1200", + "contentUrl": "x_mitdb/x_108.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "eac2a284290d813fa0ec062750c3c44778b0b7a41225e4a9fe945ce8778b6207" + }, + { + "@type": "cr:FileObject", + "@id": "file_180", + "name": "x_122.hea", + "contentSize": "288", + "contentUrl": "x_mitdb/x_122.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "8b61f307f845d2c892e5ed5ccf7f3418e69ec97669268e02404529f0d7d728c4" + }, + { + "@type": "cr:FileObject", + "@id": "file_181", + "name": "x_122.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_122.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "5a980ad3bd5567801407d9b207927d7793b20fc4567ee72701efcaed6dfa1dc8" + }, + { + "@type": "cr:FileObject", + "@id": "file_182", + "name": "x_122.atr", + "contentSize": "1692", + "contentUrl": "x_mitdb/x_122.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "fe0139d295dbdef20aadb0f50511acb7bba924147a0131635c64e7e26da35f99" + }, + { + "@type": "cr:FileObject", + "@id": "file_183", + "name": "x_123.hea", + "contentSize": "246", + "contentUrl": "x_mitdb/x_123.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "3aeac5dfbe6acd2ed87a1265c590ae3779563e2cb84f59b348a303544bb28ba0" + }, + { + "@type": "cr:FileObject", + "@id": "file_184", + "name": "x_123.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_123.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "823015fd5ca46a4f3d3e6265d2d4adaca53905d86afe82a7ace7b9dfa982d7e3" + }, + { + "@type": "cr:FileObject", + "@id": "file_185", + "name": "x_123.atr", + "contentSize": "1022", + "contentUrl": "x_mitdb/x_123.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "1d7c9559b7edad62a8e54a68b5b03176f80e1d5ba7a08580e68e38c75bf95934" + }, + { + "@type": "cr:FileObject", + "@id": "file_186", + "name": "x_232.hea", + "contentSize": "453", + "contentUrl": "x_mitdb/x_232.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "ea9b1f42203c9e4410fa2fbec775a5f9195c4bf793420a2fc2f54470b0317f0a" + }, + { + "@type": "cr:FileObject", + "@id": "file_187", + "name": "x_232.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_232.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "9e0b6430b1ec0d925ee7e9cb701b6d58a32ad978980a92cf215a28556d1aaa42" + }, + { + "@type": "cr:FileObject", + "@id": "file_188", + "name": "x_232.atr", + "contentSize": "1294", + "contentUrl": "x_mitdb/x_232.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "3b2e11256cba8f50a22f93fa788cc8dc733009f7effd2e0dc9f45d29869e39f8" + }, + { + "@type": "cr:FileObject", + "@id": "file_189", + "name": "x_233.hea", + "contentSize": "229", + "contentUrl": "x_mitdb/x_233.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "c4f44c1f4dd686b32250cfc357670d958785f68b8cd3040ad99f41c30d36c07d" + }, + { + "@type": "cr:FileObject", + "@id": "file_190", + "name": "x_233.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_233.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "90150febe9d16d72180baf2ba3142c46aaf2ec2c884a5450b7a6bf5cc0639556" + }, + { + "@type": "cr:FileObject", + "@id": "file_191", + "name": "x_233.atr", + "contentSize": "2272", + "contentUrl": "x_mitdb/x_233.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "975a50f7c1c856d95c7dab2cbd51362e454faec730ce5b9b3fb54c18a86037ed" + }, + { + "@type": "cr:FileObject", + "@id": "file_192", + "name": "x_231.hea", + "contentSize": "397", + "contentUrl": "x_mitdb/x_231.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "787f75e1d913a40eeda88ad04e1e2a19045403bf9eb32005d057dcf96217ac84" + }, + { + "@type": "cr:FileObject", + "@id": "file_193", + "name": "x_231.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_231.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "74874742a9d716bc70cc370284e0bcfe2ad729a1548f9b6c344ffe1fea3f3b01" + }, + { + "@type": "cr:FileObject", + "@id": "file_194", + "name": "x_231.atr", + "contentSize": "2760", + "contentUrl": "x_mitdb/x_231.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "ade951b60c086361dcf7210667e2cd36ba35f11204648fa71f8dbf997da1bc15" + }, + { + "@type": "cr:FileObject", + "@id": "file_195", + "name": "x_230.hea", + "contentSize": "198", + "contentUrl": "x_mitdb/x_230.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "a9dccc971e78a28583070b83e689842e69f7273af46bde779f86452e0c8561e1" + }, + { + "@type": "cr:FileObject", + "@id": "file_196", + "name": "x_230.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_230.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "43fd159453d1abb365d90754b7c073b2829b4216ececf1406672ba3f6f596fd9" + }, + { + "@type": "cr:FileObject", + "@id": "file_197", + "name": "x_230.atr", + "contentSize": "2288", + "contentUrl": "x_mitdb/x_230.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "4a561320560de1c44d18e07a84b873193f08588600925efb2d7937dca7831623" + }, + { + "@type": "cr:FileObject", + "@id": "file_198", + "name": "x_234.hea", + "contentSize": "223", + "contentUrl": "x_mitdb/x_234.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "5b4bd4f030a88b3684df4e97e0a6481e28f51099f17954ad7059364979b6cde6" + }, + { + "@type": "cr:FileObject", + "@id": "file_199", + "name": "x_234.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_234.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "8f497c9b94b1fe55687773382d7abed6228e4208671da4717cd02507d393bad6" + }, + { + "@type": "cr:FileObject", + "@id": "file_200", + "name": "x_234.atr", + "contentSize": "1866", + "contentUrl": "x_mitdb/x_234.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "545c1774ea50ebd8d45f672ee9bdd892c5ee3d1b88cf27fc08c7ed2a9ffad385" + }, + { + "@type": "cr:FileObject", + "@id": "file_201", + "name": "x_220.hea", + "contentSize": "197", + "contentUrl": "x_mitdb/x_220.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "832a6ab053def2033cb75cb38199135ba335f7c733b85d41316fdf31109af521" + }, + { + "@type": "cr:FileObject", + "@id": "file_202", + "name": "x_220.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_220.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "62f5b5eb470685c7caa73dd40f910352749a58a454fddeb1384489a423991e25" + }, + { + "@type": "cr:FileObject", + "@id": "file_203", + "name": "x_220.atr", + "contentSize": "1504", + "contentUrl": "x_mitdb/x_220.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "723e41ff08da8327168a210c83d9039f71b4ed5c1728f59f87d86c749937532a" + }, + { + "@type": "cr:FileObject", + "@id": "file_204", + "name": "x_221.hea", + "contentSize": "294", + "contentUrl": "x_mitdb/x_221.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "4417a842e7e55a6c45f09cc58d7ad82671dc6437122a07b80f34286bdd90d058" + }, + { + "@type": "cr:FileObject", + "@id": "file_205", + "name": "x_221.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_221.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "68bc9f032995ed1da42aa4d9c240553732ad8208dd38c277228745fb1a0c4de2" + }, + { + "@type": "cr:FileObject", + "@id": "file_206", + "name": "x_221.atr", + "contentSize": "2052", + "contentUrl": "x_mitdb/x_221.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "f8cf6fdcbe5167b238a92df883ec63ebb290ae400bbabad12ceff146851c3bfb" + }, + { + "@type": "cr:FileObject", + "@id": "file_207", + "name": "x_223.hea", + "contentSize": "323", + "contentUrl": "x_mitdb/x_223.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "e2170c5f57c210f72c07169ea3f72ec1206d4027eb05d44a525e3dbd2c16dad4" + }, + { + "@type": "cr:FileObject", + "@id": "file_208", + "name": "x_223.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_223.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "a9b5b9f1c0ba5ac9d7910c03edd299c6e233bc78055dbfc86332d7deb6fe65c4" + }, + { + "@type": "cr:FileObject", + "@id": "file_209", + "name": "x_223.atr", + "contentSize": "1724", + "contentUrl": "x_mitdb/x_223.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "3a9481855a8f4029ee823735280fcd563934489a2837f5e82d468ac6ed25caa3" + }, + { + "@type": "cr:FileObject", + "@id": "file_210", + "name": "x_222.hea", + "contentSize": "397", + "contentUrl": "x_mitdb/x_222.hea", + "encodingFormat": "application/x-wfdb-header", + "sha256": "c57ab6347cad76196ff198552eb5bd49cca04dee426b55d1dbc01a3ac4ed0fe1" + }, + { + "@type": "cr:FileObject", + "@id": "file_211", + "name": "x_222.dat", + "contentSize": "648000", + "contentUrl": "x_mitdb/x_222.dat", + "encodingFormat": "application/x-wfdb-data", + "sha256": "a2d866b7c7256c017ccff9316febaaab9658c2348db17550503216ac5f845e0c" + }, + { + "@type": "cr:FileObject", + "@id": "file_212", + "name": "x_222.atr", + "contentSize": "1552", + "contentUrl": "x_mitdb/x_222.atr", + "encodingFormat": "application/x-wfdb-annotation", + "sha256": "5d108dee1690dc8be5af6ab4db29fed3fd1c505295d1dc641c4e41ba96839608" + } + ], + "recordSet": [ + { + "@type": "cr:RecordSet", + "@id": "recordset_0", + "name": "209", + "description": "WFDB record 209: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_0_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 209", + "dataType": "sc:Float", + "source": { + "@id": "file_0_source_MLII", + "fileObject": { + "@id": "file_0" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_0_V1", + "name": "V1", + "description": "Signal 'V1' from 209", + "dataType": "sc:Float", + "source": { + "@id": "file_0_source_V1", + "fileObject": { + "@id": "file_0" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_1", + "name": "221", + "description": "WFDB record 221: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_3_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 221", + "dataType": "sc:Float", + "source": { + "@id": "file_3_source_MLII", + "fileObject": { + "@id": "file_3" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_3_V1", + "name": "V1", + "description": "Signal 'V1' from 221", + "dataType": "sc:Float", + "source": { + "@id": "file_3_source_V1", + "fileObject": { + "@id": "file_3" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_2", + "name": "220", + "description": "WFDB record 220: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_6_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 220", + "dataType": "sc:Float", + "source": { + "@id": "file_6_source_MLII", + "fileObject": { + "@id": "file_6" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_6_V1", + "name": "V1", + "description": "Signal 'V1' from 220", + "dataType": "sc:Float", + "source": { + "@id": "file_6_source_V1", + "fileObject": { + "@id": "file_6" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_3", + "name": "234", + "description": "WFDB record 234: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_9_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 234", + "dataType": "sc:Float", + "source": { + "@id": "file_9_source_MLII", + "fileObject": { + "@id": "file_9" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_9_V1", + "name": "V1", + "description": "Signal 'V1' from 234", + "dataType": "sc:Float", + "source": { + "@id": "file_9_source_V1", + "fileObject": { + "@id": "file_9" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_4", + "name": "208", + "description": "WFDB record 208: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_12_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 208", + "dataType": "sc:Float", + "source": { + "@id": "file_12_source_MLII", + "fileObject": { + "@id": "file_12" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_12_V1", + "name": "V1", + "description": "Signal 'V1' from 208", + "dataType": "sc:Float", + "source": { + "@id": "file_12_source_V1", + "fileObject": { + "@id": "file_12" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_5", + "name": "222", + "description": "WFDB record 222: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_15_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 222", + "dataType": "sc:Float", + "source": { + "@id": "file_15_source_MLII", + "fileObject": { + "@id": "file_15" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_15_V1", + "name": "V1", + "description": "Signal 'V1' from 222", + "dataType": "sc:Float", + "source": { + "@id": "file_15_source_V1", + "fileObject": { + "@id": "file_15" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_6", + "name": "223", + "description": "WFDB record 223: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_18_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 223", + "dataType": "sc:Float", + "source": { + "@id": "file_18_source_MLII", + "fileObject": { + "@id": "file_18" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_18_V1", + "name": "V1", + "description": "Signal 'V1' from 223", + "dataType": "sc:Float", + "source": { + "@id": "file_18_source_V1", + "fileObject": { + "@id": "file_18" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_7", + "name": "233", + "description": "WFDB record 233: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_21_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 233", + "dataType": "sc:Float", + "source": { + "@id": "file_21_source_MLII", + "fileObject": { + "@id": "file_21" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_21_V1", + "name": "V1", + "description": "Signal 'V1' from 233", + "dataType": "sc:Float", + "source": { + "@id": "file_21_source_V1", + "fileObject": { + "@id": "file_21" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_8", + "name": "232", + "description": "WFDB record 232: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_24_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 232", + "dataType": "sc:Float", + "source": { + "@id": "file_24_source_MLII", + "fileObject": { + "@id": "file_24" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_24_V1", + "name": "V1", + "description": "Signal 'V1' from 232", + "dataType": "sc:Float", + "source": { + "@id": "file_24_source_V1", + "fileObject": { + "@id": "file_24" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_9", + "name": "230", + "description": "WFDB record 230: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_27_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 230", + "dataType": "sc:Float", + "source": { + "@id": "file_27_source_MLII", + "fileObject": { + "@id": "file_27" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_27_V1", + "name": "V1", + "description": "Signal 'V1' from 230", + "dataType": "sc:Float", + "source": { + "@id": "file_27_source_V1", + "fileObject": { + "@id": "file_27" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_10", + "name": "219", + "description": "WFDB record 219: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_30_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 219", + "dataType": "sc:Float", + "source": { + "@id": "file_30_source_MLII", + "fileObject": { + "@id": "file_30" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_30_V1", + "name": "V1", + "description": "Signal 'V1' from 219", + "dataType": "sc:Float", + "source": { + "@id": "file_30_source_V1", + "fileObject": { + "@id": "file_30" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_11", + "name": "231", + "description": "WFDB record 231: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_33_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 231", + "dataType": "sc:Float", + "source": { + "@id": "file_33_source_MLII", + "fileObject": { + "@id": "file_33" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_33_V1", + "name": "V1", + "description": "Signal 'V1' from 231", + "dataType": "sc:Float", + "source": { + "@id": "file_33_source_V1", + "fileObject": { + "@id": "file_33" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_12", + "name": "108", + "description": "WFDB record 108: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_36_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 108", + "dataType": "sc:Float", + "source": { + "@id": "file_36_source_MLII", + "fileObject": { + "@id": "file_36" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_36_V1", + "name": "V1", + "description": "Signal 'V1' from 108", + "dataType": "sc:Float", + "source": { + "@id": "file_36_source_V1", + "fileObject": { + "@id": "file_36" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_13", + "name": "121", + "description": "WFDB record 121: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_39_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 121", + "dataType": "sc:Float", + "source": { + "@id": "file_39_source_MLII", + "fileObject": { + "@id": "file_39" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_39_V1", + "name": "V1", + "description": "Signal 'V1' from 121", + "dataType": "sc:Float", + "source": { + "@id": "file_39_source_V1", + "fileObject": { + "@id": "file_39" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_14", + "name": "109", + "description": "WFDB record 109: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_42_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 109", + "dataType": "sc:Float", + "source": { + "@id": "file_42_source_MLII", + "fileObject": { + "@id": "file_42" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_42_V1", + "name": "V1", + "description": "Signal 'V1' from 109", + "dataType": "sc:Float", + "source": { + "@id": "file_42_source_V1", + "fileObject": { + "@id": "file_42" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_15", + "name": "123", + "description": "WFDB record 123: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_45_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 123", + "dataType": "sc:Float", + "source": { + "@id": "file_45_source_MLII", + "fileObject": { + "@id": "file_45" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_45_V5", + "name": "V5", + "description": "Signal 'V5' from 123", + "dataType": "sc:Float", + "source": { + "@id": "file_45_source_V5", + "fileObject": { + "@id": "file_45" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_16", + "name": "122", + "description": "WFDB record 122: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_48_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 122", + "dataType": "sc:Float", + "source": { + "@id": "file_48_source_MLII", + "fileObject": { + "@id": "file_48" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_48_V1", + "name": "V1", + "description": "Signal 'V1' from 122", + "dataType": "sc:Float", + "source": { + "@id": "file_48_source_V1", + "fileObject": { + "@id": "file_48" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_17", + "name": "119", + "description": "WFDB record 119: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_51_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 119", + "dataType": "sc:Float", + "source": { + "@id": "file_51_source_MLII", + "fileObject": { + "@id": "file_51" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_51_V1", + "name": "V1", + "description": "Signal 'V1' from 119", + "dataType": "sc:Float", + "source": { + "@id": "file_51_source_V1", + "fileObject": { + "@id": "file_51" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_18", + "name": "118", + "description": "WFDB record 118: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_54_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 118", + "dataType": "sc:Float", + "source": { + "@id": "file_54_source_MLII", + "fileObject": { + "@id": "file_54" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_54_V1", + "name": "V1", + "description": "Signal 'V1' from 118", + "dataType": "sc:Float", + "source": { + "@id": "file_54_source_V1", + "fileObject": { + "@id": "file_54" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_19", + "name": "124", + "description": "WFDB record 124: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_57_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 124", + "dataType": "sc:Float", + "source": { + "@id": "file_57_source_MLII", + "fileObject": { + "@id": "file_57" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_57_V4", + "name": "V4", + "description": "Signal 'V4' from 124", + "dataType": "sc:Float", + "source": { + "@id": "file_57_source_V4", + "fileObject": { + "@id": "file_57" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_20", + "name": "101", + "description": "WFDB record 101: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_60_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 101", + "dataType": "sc:Float", + "source": { + "@id": "file_60_source_MLII", + "fileObject": { + "@id": "file_60" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_60_V1", + "name": "V1", + "description": "Signal 'V1' from 101", + "dataType": "sc:Float", + "source": { + "@id": "file_60_source_V1", + "fileObject": { + "@id": "file_60" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_21", + "name": "115", + "description": "WFDB record 115: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_63_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 115", + "dataType": "sc:Float", + "source": { + "@id": "file_63_source_MLII", + "fileObject": { + "@id": "file_63" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_63_V1", + "name": "V1", + "description": "Signal 'V1' from 115", + "dataType": "sc:Float", + "source": { + "@id": "file_63_source_V1", + "fileObject": { + "@id": "file_63" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_22", + "name": "114", + "description": "WFDB record 114: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_66_V5", + "name": "V5", + "description": "Signal 'V5' from 114", + "dataType": "sc:Float", + "source": { + "@id": "file_66_source_V5", + "fileObject": { + "@id": "file_66" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_66_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 114", + "dataType": "sc:Float", + "source": { + "@id": "file_66_source_MLII", + "fileObject": { + "@id": "file_66" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_23", + "name": "100", + "description": "WFDB record 100: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_69_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 100", + "dataType": "sc:Float", + "source": { + "@id": "file_69_source_MLII", + "fileObject": { + "@id": "file_69" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_69_V5", + "name": "V5", + "description": "Signal 'V5' from 100", + "dataType": "sc:Float", + "source": { + "@id": "file_69_source_V5", + "fileObject": { + "@id": "file_69" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_24", + "name": "116", + "description": "WFDB record 116: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_72_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 116", + "dataType": "sc:Float", + "source": { + "@id": "file_72_source_MLII", + "fileObject": { + "@id": "file_72" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_72_V1", + "name": "V1", + "description": "Signal 'V1' from 116", + "dataType": "sc:Float", + "source": { + "@id": "file_72_source_V1", + "fileObject": { + "@id": "file_72" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_25", + "name": "102", + "description": "WFDB record 102: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_75_V5", + "name": "V5", + "description": "Signal 'V5' from 102", + "dataType": "sc:Float", + "source": { + "@id": "file_75_source_V5", + "fileObject": { + "@id": "file_75" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_75_V2", + "name": "V2", + "description": "Signal 'V2' from 102", + "dataType": "sc:Float", + "source": { + "@id": "file_75_source_V2", + "fileObject": { + "@id": "file_75" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_26", + "name": "103", + "description": "WFDB record 103: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_78_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 103", + "dataType": "sc:Float", + "source": { + "@id": "file_78_source_MLII", + "fileObject": { + "@id": "file_78" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_78_V2", + "name": "V2", + "description": "Signal 'V2' from 103", + "dataType": "sc:Float", + "source": { + "@id": "file_78_source_V2", + "fileObject": { + "@id": "file_78" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_27", + "name": "117", + "description": "WFDB record 117: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_81_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 117", + "dataType": "sc:Float", + "source": { + "@id": "file_81_source_MLII", + "fileObject": { + "@id": "file_81" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_81_V2", + "name": "V2", + "description": "Signal 'V2' from 117", + "dataType": "sc:Float", + "source": { + "@id": "file_81_source_V2", + "fileObject": { + "@id": "file_81" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_28", + "name": "113", + "description": "WFDB record 113: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_84_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 113", + "dataType": "sc:Float", + "source": { + "@id": "file_84_source_MLII", + "fileObject": { + "@id": "file_84" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_84_V1", + "name": "V1", + "description": "Signal 'V1' from 113", + "dataType": "sc:Float", + "source": { + "@id": "file_84_source_V1", + "fileObject": { + "@id": "file_84" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_29", + "name": "107", + "description": "WFDB record 107: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_87_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 107", + "dataType": "sc:Float", + "source": { + "@id": "file_87_source_MLII", + "fileObject": { + "@id": "file_87" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_87_V1", + "name": "V1", + "description": "Signal 'V1' from 107", + "dataType": "sc:Float", + "source": { + "@id": "file_87_source_V1", + "fileObject": { + "@id": "file_87" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_30", + "name": "106", + "description": "WFDB record 106: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_90_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 106", + "dataType": "sc:Float", + "source": { + "@id": "file_90_source_MLII", + "fileObject": { + "@id": "file_90" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_90_V1", + "name": "V1", + "description": "Signal 'V1' from 106", + "dataType": "sc:Float", + "source": { + "@id": "file_90_source_V1", + "fileObject": { + "@id": "file_90" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_31", + "name": "112", + "description": "WFDB record 112: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_93_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 112", + "dataType": "sc:Float", + "source": { + "@id": "file_93_source_MLII", + "fileObject": { + "@id": "file_93" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_93_V1", + "name": "V1", + "description": "Signal 'V1' from 112", + "dataType": "sc:Float", + "source": { + "@id": "file_93_source_V1", + "fileObject": { + "@id": "file_93" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_32", + "name": "104", + "description": "WFDB record 104: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_96_V5", + "name": "V5", + "description": "Signal 'V5' from 104", + "dataType": "sc:Float", + "source": { + "@id": "file_96_source_V5", + "fileObject": { + "@id": "file_96" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_96_V2", + "name": "V2", + "description": "Signal 'V2' from 104", + "dataType": "sc:Float", + "source": { + "@id": "file_96_source_V2", + "fileObject": { + "@id": "file_96" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_33", + "name": "111", + "description": "WFDB record 111: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_99_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 111", + "dataType": "sc:Float", + "source": { + "@id": "file_99_source_MLII", + "fileObject": { + "@id": "file_99" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_99_V1", + "name": "V1", + "description": "Signal 'V1' from 111", + "dataType": "sc:Float", + "source": { + "@id": "file_99_source_V1", + "fileObject": { + "@id": "file_99" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_34", + "name": "105", + "description": "WFDB record 105: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_102_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 105", + "dataType": "sc:Float", + "source": { + "@id": "file_102_source_MLII", + "fileObject": { + "@id": "file_102" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_102_V1", + "name": "V1", + "description": "Signal 'V1' from 105", + "dataType": "sc:Float", + "source": { + "@id": "file_102_source_V1", + "fileObject": { + "@id": "file_102" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_35", + "name": "228", + "description": "WFDB record 228: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_105_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 228", + "dataType": "sc:Float", + "source": { + "@id": "file_105_source_MLII", + "fileObject": { + "@id": "file_105" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_105_V1", + "name": "V1", + "description": "Signal 'V1' from 228", + "dataType": "sc:Float", + "source": { + "@id": "file_105_source_V1", + "fileObject": { + "@id": "file_105" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_36", + "name": "214", + "description": "WFDB record 214: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_108_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 214", + "dataType": "sc:Float", + "source": { + "@id": "file_108_source_MLII", + "fileObject": { + "@id": "file_108" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_108_V1", + "name": "V1", + "description": "Signal 'V1' from 214", + "dataType": "sc:Float", + "source": { + "@id": "file_108_source_V1", + "fileObject": { + "@id": "file_108" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_37", + "name": "200", + "description": "WFDB record 200: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_111_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 200", + "dataType": "sc:Float", + "source": { + "@id": "file_111_source_MLII", + "fileObject": { + "@id": "file_111" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_111_V1", + "name": "V1", + "description": "Signal 'V1' from 200", + "dataType": "sc:Float", + "source": { + "@id": "file_111_source_V1", + "fileObject": { + "@id": "file_111" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_38", + "name": "201", + "description": "WFDB record 201: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_114_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 201", + "dataType": "sc:Float", + "source": { + "@id": "file_114_source_MLII", + "fileObject": { + "@id": "file_114" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_114_V1", + "name": "V1", + "description": "Signal 'V1' from 201", + "dataType": "sc:Float", + "source": { + "@id": "file_114_source_V1", + "fileObject": { + "@id": "file_114" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_39", + "name": "215", + "description": "WFDB record 215: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_117_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 215", + "dataType": "sc:Float", + "source": { + "@id": "file_117_source_MLII", + "fileObject": { + "@id": "file_117" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_117_V1", + "name": "V1", + "description": "Signal 'V1' from 215", + "dataType": "sc:Float", + "source": { + "@id": "file_117_source_V1", + "fileObject": { + "@id": "file_117" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_40", + "name": "203", + "description": "WFDB record 203: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_120_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 203", + "dataType": "sc:Float", + "source": { + "@id": "file_120_source_MLII", + "fileObject": { + "@id": "file_120" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_120_V1", + "name": "V1", + "description": "Signal 'V1' from 203", + "dataType": "sc:Float", + "source": { + "@id": "file_120_source_V1", + "fileObject": { + "@id": "file_120" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_41", + "name": "217", + "description": "WFDB record 217: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_123_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 217", + "dataType": "sc:Float", + "source": { + "@id": "file_123_source_MLII", + "fileObject": { + "@id": "file_123" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_123_V1", + "name": "V1", + "description": "Signal 'V1' from 217", + "dataType": "sc:Float", + "source": { + "@id": "file_123_source_V1", + "fileObject": { + "@id": "file_123" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_42", + "name": "202", + "description": "WFDB record 202: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_126_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 202", + "dataType": "sc:Float", + "source": { + "@id": "file_126_source_MLII", + "fileObject": { + "@id": "file_126" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_126_V1", + "name": "V1", + "description": "Signal 'V1' from 202", + "dataType": "sc:Float", + "source": { + "@id": "file_126_source_V1", + "fileObject": { + "@id": "file_126" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_43", + "name": "212", + "description": "WFDB record 212: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_129_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 212", + "dataType": "sc:Float", + "source": { + "@id": "file_129_source_MLII", + "fileObject": { + "@id": "file_129" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_129_V1", + "name": "V1", + "description": "Signal 'V1' from 212", + "dataType": "sc:Float", + "source": { + "@id": "file_129_source_V1", + "fileObject": { + "@id": "file_129" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_44", + "name": "213", + "description": "WFDB record 213: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_132_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 213", + "dataType": "sc:Float", + "source": { + "@id": "file_132_source_MLII", + "fileObject": { + "@id": "file_132" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_132_V1", + "name": "V1", + "description": "Signal 'V1' from 213", + "dataType": "sc:Float", + "source": { + "@id": "file_132_source_V1", + "fileObject": { + "@id": "file_132" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_45", + "name": "207", + "description": "WFDB record 207: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_135_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 207", + "dataType": "sc:Float", + "source": { + "@id": "file_135_source_MLII", + "fileObject": { + "@id": "file_135" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_135_V1", + "name": "V1", + "description": "Signal 'V1' from 207", + "dataType": "sc:Float", + "source": { + "@id": "file_135_source_V1", + "fileObject": { + "@id": "file_135" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_46", + "name": "205", + "description": "WFDB record 205: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_138_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 205", + "dataType": "sc:Float", + "source": { + "@id": "file_138_source_MLII", + "fileObject": { + "@id": "file_138" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_138_V1", + "name": "V1", + "description": "Signal 'V1' from 205", + "dataType": "sc:Float", + "source": { + "@id": "file_138_source_V1", + "fileObject": { + "@id": "file_138" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_47", + "name": "210", + "description": "WFDB record 210: 2 signals at 360 Hz, 650000 samples (1805.56 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_141_MLII", + "name": "MLII", + "description": "Signal 'MLII' from 210", + "dataType": "sc:Float", + "source": { + "@id": "file_141_source_MLII", + "fileObject": { + "@id": "file_141" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_141_V1", + "name": "V1", + "description": "Signal 'V1' from 210", + "dataType": "sc:Float", + "source": { + "@id": "file_141_source_V1", + "fileObject": { + "@id": "file_141" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_48", + "name": "x_228", + "description": "WFDB record x_228: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_144_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_228", + "dataType": "sc:Float", + "source": { + "@id": "file_144_source_MLII", + "fileObject": { + "@id": "file_144" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_144_V1", + "name": "V1", + "description": "Signal 'V1' from x_228", + "dataType": "sc:Float", + "source": { + "@id": "file_144_source_V1", + "fileObject": { + "@id": "file_144" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_49", + "name": "x_112", + "description": "WFDB record x_112: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_147_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_112", + "dataType": "sc:Float", + "source": { + "@id": "file_147_source_MLII", + "fileObject": { + "@id": "file_147" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_147_V1", + "name": "V1", + "description": "Signal 'V1' from x_112", + "dataType": "sc:Float", + "source": { + "@id": "file_147_source_V1", + "fileObject": { + "@id": "file_147" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_50", + "name": "x_113", + "description": "WFDB record x_113: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_150_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_113", + "dataType": "sc:Float", + "source": { + "@id": "file_150_source_MLII", + "fileObject": { + "@id": "file_150" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_150_V1", + "name": "V1", + "description": "Signal 'V1' from x_113", + "dataType": "sc:Float", + "source": { + "@id": "file_150_source_V1", + "fileObject": { + "@id": "file_150" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_51", + "name": "x_111", + "description": "WFDB record x_111: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_153_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_111", + "dataType": "sc:Float", + "source": { + "@id": "file_153_source_MLII", + "fileObject": { + "@id": "file_153" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_153_V1", + "name": "V1", + "description": "Signal 'V1' from x_111", + "dataType": "sc:Float", + "source": { + "@id": "file_153_source_V1", + "fileObject": { + "@id": "file_153" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_52", + "name": "x_114", + "description": "WFDB record x_114: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_156_V5", + "name": "V5", + "description": "Signal 'V5' from x_114", + "dataType": "sc:Float", + "source": { + "@id": "file_156_source_V5", + "fileObject": { + "@id": "file_156" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_156_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_114", + "dataType": "sc:Float", + "source": { + "@id": "file_156_source_MLII", + "fileObject": { + "@id": "file_156" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_53", + "name": "x_115", + "description": "WFDB record x_115: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_159_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_115", + "dataType": "sc:Float", + "source": { + "@id": "file_159_source_MLII", + "fileObject": { + "@id": "file_159" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_159_V1", + "name": "V1", + "description": "Signal 'V1' from x_115", + "dataType": "sc:Float", + "source": { + "@id": "file_159_source_V1", + "fileObject": { + "@id": "file_159" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_54", + "name": "x_117", + "description": "WFDB record x_117: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_162_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_117", + "dataType": "sc:Float", + "source": { + "@id": "file_162_source_MLII", + "fileObject": { + "@id": "file_162" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_162_V2", + "name": "V2", + "description": "Signal 'V2' from x_117", + "dataType": "sc:Float", + "source": { + "@id": "file_162_source_V2", + "fileObject": { + "@id": "file_162" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_55", + "name": "x_116", + "description": "WFDB record x_116: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_165_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_116", + "dataType": "sc:Float", + "source": { + "@id": "file_165_source_MLII", + "fileObject": { + "@id": "file_165" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_165_V1", + "name": "V1", + "description": "Signal 'V1' from x_116", + "dataType": "sc:Float", + "source": { + "@id": "file_165_source_V1", + "fileObject": { + "@id": "file_165" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_56", + "name": "x_124", + "description": "WFDB record x_124: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_168_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_124", + "dataType": "sc:Float", + "source": { + "@id": "file_168_source_MLII", + "fileObject": { + "@id": "file_168" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_168_V4", + "name": "V4", + "description": "Signal 'V4' from x_124", + "dataType": "sc:Float", + "source": { + "@id": "file_168_source_V4", + "fileObject": { + "@id": "file_168" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_57", + "name": "x_109", + "description": "WFDB record x_109: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_171_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_109", + "dataType": "sc:Float", + "source": { + "@id": "file_171_source_MLII", + "fileObject": { + "@id": "file_171" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_171_V1", + "name": "V1", + "description": "Signal 'V1' from x_109", + "dataType": "sc:Float", + "source": { + "@id": "file_171_source_V1", + "fileObject": { + "@id": "file_171" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_58", + "name": "x_121", + "description": "WFDB record x_121: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_174_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_121", + "dataType": "sc:Float", + "source": { + "@id": "file_174_source_MLII", + "fileObject": { + "@id": "file_174" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_174_V1", + "name": "V1", + "description": "Signal 'V1' from x_121", + "dataType": "sc:Float", + "source": { + "@id": "file_174_source_V1", + "fileObject": { + "@id": "file_174" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_59", + "name": "x_108", + "description": "WFDB record x_108: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_177_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_108", + "dataType": "sc:Float", + "source": { + "@id": "file_177_source_MLII", + "fileObject": { + "@id": "file_177" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_177_V1", + "name": "V1", + "description": "Signal 'V1' from x_108", + "dataType": "sc:Float", + "source": { + "@id": "file_177_source_V1", + "fileObject": { + "@id": "file_177" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_60", + "name": "x_122", + "description": "WFDB record x_122: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_180_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_122", + "dataType": "sc:Float", + "source": { + "@id": "file_180_source_MLII", + "fileObject": { + "@id": "file_180" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_180_V1", + "name": "V1", + "description": "Signal 'V1' from x_122", + "dataType": "sc:Float", + "source": { + "@id": "file_180_source_V1", + "fileObject": { + "@id": "file_180" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_61", + "name": "x_123", + "description": "WFDB record x_123: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_183_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_123", + "dataType": "sc:Float", + "source": { + "@id": "file_183_source_MLII", + "fileObject": { + "@id": "file_183" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_183_V5", + "name": "V5", + "description": "Signal 'V5' from x_123", + "dataType": "sc:Float", + "source": { + "@id": "file_183_source_V5", + "fileObject": { + "@id": "file_183" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_62", + "name": "x_232", + "description": "WFDB record x_232: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_186_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_232", + "dataType": "sc:Float", + "source": { + "@id": "file_186_source_MLII", + "fileObject": { + "@id": "file_186" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_186_V1", + "name": "V1", + "description": "Signal 'V1' from x_232", + "dataType": "sc:Float", + "source": { + "@id": "file_186_source_V1", + "fileObject": { + "@id": "file_186" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_63", + "name": "x_233", + "description": "WFDB record x_233: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_189_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_233", + "dataType": "sc:Float", + "source": { + "@id": "file_189_source_MLII", + "fileObject": { + "@id": "file_189" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_189_V1", + "name": "V1", + "description": "Signal 'V1' from x_233", + "dataType": "sc:Float", + "source": { + "@id": "file_189_source_V1", + "fileObject": { + "@id": "file_189" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_64", + "name": "x_231", + "description": "WFDB record x_231: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_192_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_231", + "dataType": "sc:Float", + "source": { + "@id": "file_192_source_MLII", + "fileObject": { + "@id": "file_192" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_192_V1", + "name": "V1", + "description": "Signal 'V1' from x_231", + "dataType": "sc:Float", + "source": { + "@id": "file_192_source_V1", + "fileObject": { + "@id": "file_192" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_65", + "name": "x_230", + "description": "WFDB record x_230: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_195_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_230", + "dataType": "sc:Float", + "source": { + "@id": "file_195_source_MLII", + "fileObject": { + "@id": "file_195" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_195_V1", + "name": "V1", + "description": "Signal 'V1' from x_230", + "dataType": "sc:Float", + "source": { + "@id": "file_195_source_V1", + "fileObject": { + "@id": "file_195" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_66", + "name": "x_234", + "description": "WFDB record x_234: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_198_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_234", + "dataType": "sc:Float", + "source": { + "@id": "file_198_source_MLII", + "fileObject": { + "@id": "file_198" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_198_V1", + "name": "V1", + "description": "Signal 'V1' from x_234", + "dataType": "sc:Float", + "source": { + "@id": "file_198_source_V1", + "fileObject": { + "@id": "file_198" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_67", + "name": "x_220", + "description": "WFDB record x_220: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_201_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_220", + "dataType": "sc:Float", + "source": { + "@id": "file_201_source_MLII", + "fileObject": { + "@id": "file_201" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_201_V1", + "name": "V1", + "description": "Signal 'V1' from x_220", + "dataType": "sc:Float", + "source": { + "@id": "file_201_source_V1", + "fileObject": { + "@id": "file_201" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_68", + "name": "x_221", + "description": "WFDB record x_221: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_204_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_221", + "dataType": "sc:Float", + "source": { + "@id": "file_204_source_MLII", + "fileObject": { + "@id": "file_204" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_204_V1", + "name": "V1", + "description": "Signal 'V1' from x_221", + "dataType": "sc:Float", + "source": { + "@id": "file_204_source_V1", + "fileObject": { + "@id": "file_204" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_69", + "name": "x_223", + "description": "WFDB record x_223: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_207_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_223", + "dataType": "sc:Float", + "source": { + "@id": "file_207_source_MLII", + "fileObject": { + "@id": "file_207" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_207_V1", + "name": "V1", + "description": "Signal 'V1' from x_223", + "dataType": "sc:Float", + "source": { + "@id": "file_207_source_V1", + "fileObject": { + "@id": "file_207" + } + } + } + ] + }, + { + "@type": "cr:RecordSet", + "@id": "recordset_70", + "name": "x_222", + "description": "WFDB record x_222: 2 signals at 360 Hz, 216000 samples (600.00 seconds)", + "field": [ + { + "@type": "cr:Field", + "@id": "file_210_MLII", + "name": "MLII", + "description": "Signal 'MLII' from x_222", + "dataType": "sc:Float", + "source": { + "@id": "file_210_source_MLII", + "fileObject": { + "@id": "file_210" + } + } + }, + { + "@type": "cr:Field", + "@id": "file_210_V1", + "name": "V1", + "description": "Signal 'V1' from x_222", + "dataType": "sc:Float", + "source": { + "@id": "file_210_source_V1", + "fileObject": { + "@id": "file_210" + } + } + } + ] + } + ] +} diff --git a/tests/test_end_to_end.py b/tests/test_end_to_end.py index a7c723f..ac9f0b3 100644 --- a/tests/test_end_to_end.py +++ b/tests/test_end_to_end.py @@ -158,3 +158,79 @@ def test_eicu_demo_generation(eicu_demo_path: Path, output_dir: Path) -> None: assert len(metadata["creator"]) >= 4 assert len(metadata["distribution"]) > 10 assert len(metadata["recordSet"]) > 5 + + +@pytest.fixture +def mitdb_wfdb_path() -> Path: + """Path to MIT-BIH Arrhythmia Database for testing.""" + dataset_path = ( + Path(__file__).parent + / "data" + / "input" + / "mitdb_wfdb" + / "physionet.org" + / "files" + / "mitdb" + / "1.0.0" + ) + if not dataset_path.exists() or not (dataset_path / "100.hea").exists(): + pytest.skip(f"MIT-BIH WFDB dataset not found at {dataset_path}") + return dataset_path + + +def test_mitdb_wfdb_generation(mitdb_wfdb_path: Path, output_dir: Path) -> None: + """Test end-to-end metadata generation with MIT-BIH Arrhythmia Database.""" + output_file = output_dir / "mitdb_wfdb_croissant.jsonld" + + result = runner.invoke( + app, + [ + "-i", + str(mitdb_wfdb_path), + "-o", + str(output_file), + "--name", + "MIT-BIH Arrhythmia Database", + "--description", + "MIT-BIH Arrhythmia Database containing 48 ECG recordings with annotations", + "--url", + "https://physionet.org/content/mitdb/1.0.0/", + "--license", + "https://physionet.org/content/mitdb/1.0.0/LICENSE.txt", + "--dataset-version", + "1.0.0", + "--date-published", + "1992-07-30", + "--creator", + "MIT-BIH", + "--citation", + "Moody GB, Mark RG. The impact of the MIT-BIH Arrhythmia Database. IEEE Eng in Med and Biol 20(3):45-50 (May-June 2001).", + ], + ) + + assert result.exit_code == 0, f"Command failed: {result.stdout}" + assert output_file.exists(), "Output file was not created" + + with open(output_file) as f: + metadata = json.load(f) + + assert metadata["name"] == "MIT-BIH Arrhythmia Database" + assert metadata["version"] == "1.0.0" + assert metadata["url"] == "https://physionet.org/content/mitdb/1.0.0/" + + # Should have 71 records * 3 files each = 213 files (71 .hea + 71 .dat + 71 .atr) + # This includes the main 48 records (100-234) plus additional x_ prefixed records + assert len(metadata["distribution"]) == 213 + assert len(metadata["recordSet"]) == 71 + + # Check a few specific records + record_names = [rs["name"] for rs in metadata["recordSet"]] + assert "100" in record_names + assert "200" in record_names + assert "234" in record_names + + # Check that we have the expected signals + record_100 = next(rs for rs in metadata["recordSet"] if rs["name"] == "100") + assert len(record_100["field"]) == 2 + assert "MLII" in [f["name"] for f in record_100["field"]] + assert "V5" in [f["name"] for f in record_100["field"]] diff --git a/tests/test_wfdb_handler.py b/tests/test_wfdb_handler.py new file mode 100644 index 0000000..8ec506f --- /dev/null +++ b/tests/test_wfdb_handler.py @@ -0,0 +1,51 @@ +"""Tests for WFDB handler.""" + +from pathlib import Path +import pytest + +from croissant_maker.handlers.wfdb_handler import WFDBHandler + + +@pytest.fixture +def wfdb_sample_path(): + path = Path(__file__).parent / "data" / "input" / "mitdb_sample" / "100.hea" + if not path.exists(): + pytest.skip(f"WFDB sample data not found at {path}") + return path + + +def test_can_handle_hea_file(wfdb_sample_path): + handler = WFDBHandler() + assert handler.can_handle(wfdb_sample_path) + + +def test_cannot_handle_non_hea_file(tmp_path): + handler = WFDBHandler() + csv_file = tmp_path / "test.csv" + csv_file.write_text("data") + assert not handler.can_handle(csv_file) + + +def test_extract_metadata(wfdb_sample_path): + handler = WFDBHandler() + metadata = handler.extract_metadata(wfdb_sample_path) + + assert metadata["record_name"] == "100" + assert metadata["encoding_format"] == "application/x-wfdb-header" + assert metadata["num_signals"] == 2 + assert metadata["sampling_frequency"] == 360 + assert metadata["num_samples"] == 650000 + assert "MLII" in metadata["signal_names"] + assert "V5" in metadata["signal_names"] + assert len(metadata["related_files"]) == 2 + assert metadata["signal_types"]["MLII"] == "sc:Float" + assert metadata["signal_types"]["V5"] == "sc:Float" + + +def test_missing_dat_file_raises_error(tmp_path): + handler = WFDBHandler() + hea_file = tmp_path / "test.hea" + hea_file.write_text("test 1 360 1000") + + with pytest.raises(ValueError, match="WFDB data file missing"): + handler.extract_metadata(hea_file)