Would that work. The problem is (as I see it) that Raw.__dict__ | .keys() gives not a comprehensive list of the attributes created during init. Just the class attrs and methods:

```Python


In [8]: mne.fiff.Raw.__dict__
Out[8]: 
<dictproxy {'__del__': <function mne.fiff.raw.__del__>,
 '__dict__': <attribute '__dict__' of 'Raw' objects>,
 '__doc__': "Raw data\n\n    Parameters\n    ----------\n    fnames : list, or string\n        A list of the raw files to treat as a Raw instance, or a single\n        raw file.\n    allow_maxshield : bool, (default False)\n        allow_maxshield if True, allow loading of data that has been\n        processed with Maxshield. Maxshield-processed data should generally\n        not be loaded directly, but should be processed using SSS first.\n    preload : bool or str (default False)\n        Preload data into memory for data manipulation and faster indexing.\n        If True, the data will be preloaded into memory (fast, requires\n        large amount of memory). If preload is a string, preload is the\n        file name of a memory-mapped file which is used to store the data\n        on the hard drive (slower, requires less memory).\n    verbose : bool, str, int, or None\n        If not None, override default verbose level (see mne.verbose).\n    proj_active : bool\n        Apply the signal space projection (SSP) operators present in\n        the file to the data. Note: Once the projectors have been\n        applied, they can no longer be removed. It is usually not\n        recommended to apply the projectors at this point as they are\n        applied automatically later on (e.g. when computing inverse\n        solutions).\n\n    Attributes\n    ----------\n    info : dict\n        Measurement info.\n    ch_names : list of string\n        List of channels' names.\n    n_times : int\n        Total number of time points in the raw file.\n    verbose : bool, str, int, or None\n        See above.\n    ",
 '__enter__': <function mne.fiff.raw.__enter__>,
 '__exit__': <function mne.fiff.raw.__exit__>,
 '__getitem__': <function mne.fiff.raw.__getitem__>,
 '__init__': <function mne.fiff.raw.__init__>,
 '__len__': <function mne.fiff.raw.__len__>,
 '__module__': 'mne.fiff.raw',
 '__repr__': <function mne.fiff.raw.__repr__>,
 '__setitem__': <function mne.fiff.raw.__setitem__>,
 '__weakref__': <attribute '__weakref__' of 'Raw' objects>,
 '_parse_get_set_params': <function mne.fiff.raw._parse_get_set_params>,
 '_preload_data': <function mne.fiff.raw._preload_data>,
 '_read_raw_file': <function mne.fiff.raw._read_raw_file>,
 'add_proj': <function mne.fiff.raw.add_proj>,
 'append': <function mne.fiff.raw.append>,
 'apply_function': <function mne.fiff.raw.apply_function>,
 'apply_hilbert': <function mne.fiff.raw.apply_hilbert>,
 'apply_projector': <function mne.fiff.raw.apply_projector>,
 'as_data_frame': <function mne.fiff.raw.as_data_frame>,
 'ch_names': <property at 0x65eab70>,
 'close': <function mne.fiff.raw.close>,
 'copy': <function mne.fiff.raw.copy>,
 'crop': <function mne.fiff.raw.crop>,
 'del_proj': <function mne.fiff.raw.del_proj>,
 'filter': <function mne.fiff.raw.filter>,
 'index_as_time': <function mne.fiff.raw.index_as_time>,
 'load_bad_channels': <function mne.fiff.raw.load_bad_channels>,
 'n_times': <property at 0x65eaba0>,
 'notch_filter': <function mne.fiff.raw.notch_filter>,
 'resample': <function mne.fiff.raw.resample>,
 'save': <function mne.fiff.raw.save>,
 'time_as_index': <function mne.fiff.raw.time_as_index>,
 'time_to_index': <function mne.utils.time_to_index>,
 'to_nitime': <function mne.fiff.raw.to_nitime>}>
```