import yaml import struct import sys def main(): input_file = sys.argv[1] output_file = sys.argv[2] assert not output_file.endswith('.yml') and not output_file.endswith('.yaml'), 'Binary output file should not have yaml-extension' with open(input_file) as f: data = yaml.safe_load(f) data = list({v['name']: v for v in data['species']}.values()) species_names = ' '.join(s['name'] for s in data) header_len = 8 offset = 8 + len(species_names) + len(data) * header_len header_list = [] body_list = [] added_list = set() for dat in data: if dat['name'] not in added_list: composition_count = len(dat['composition']) model = {'NASA9': 9}[dat['thermo']['model']] temperatures = dat['thermo']['temperature-ranges'] ref_string = dat['thermo']['note'].encode('utf-8') header = struct.pack('