"""Unit alias dictionary."""

# Alias: UOM
UNIT_ALIAS_DICT = {
    'W/A': 'V',
    'deg': 'dega',
    'degr': 'dega',
    'degrees': 'dega',
    'DEGREE': 'dega',
    'DEG': 'dega',
    'DEGA': 'dega',
    'DEGREES': 'dega',
    'DEGS': 'dega',
    'DG': 'dega',
    'DMS': 'dega',
    'Degree': 'dega',
    'degA': 'dega',
    '°': 'dega',
    'lbm/gal': 'lbm/gal[US]',
    'gal/min': 'gal[US]/min',
    'galUS/min': 'gal[US]/min',
    'GAL/MIN': 'gal[US]/min',
    'GPM': 'gal[US]/min',
    'USGAL/MIN': 'gal[US]/min',
    'gpm': 'gal[US]/min',
    'M3MN': 'm3/min',
    'c/s': 'rev/s',
    'cps': 'rev/s',
    'CPS': 'rev/s',
    'c/min': 'rpm',
    'spm': '1/min',
    'SPM': '1/min',
    '1/MIN': '1/min',
    'мин–1': '1/min',
    'kft.lbf': '1000 lbf.ft',
    'klbf.ft': '1000 lbf.ft',
    'KFT.LBF': '1000 lbf.ft',
    'Kft.lbs': '1000 lbf.ft',
    'Klbf': '1000 lbf.ft',
    'M': 'm',
    'M3M2': 'm',
    'METER': 'm',
    'METERS': 'm',
    'METRE': 'm',
    'METRES': 'm',
    'Meter': 'm',
    'm3/m2': 'm',
    'meter': 'm',
    'metres': 'm',
    'м': 'm',
    'deg/100ft': '0.01 dega/ft',
    'dega/100ft': '0.01 dega/ft',
    '0.01 deg/ft': '0.01 dega/ft',
    'feet': 'ft',
    'FT': 'ft',
    'foot': 'ft',
    'FT/S': 'ft/s',
    'ft/ht': 'ft/h',
    'F/HR': 'ft/h',
    'f/hr': 'ft/h',
    'FT/H': 'ft/h',
    'ft/hr': 'ft/h',
    'FT/HR': 'ft/h',
    'm/hr': 'm/h',
    'M/HR': 'm/h',
    '1/30 deg/m': '1/30 dega/m',
    'deg/30m': '1/30 dega/m',
    'deg/m': 'dega/m',
    '1000 ft.lbf': '1000 lbf.ft',
    '1000ft.lbf': '1000 lbf.ft',
    '1000 lbf': 'klbf',
    '1000lbf': 'klbf',
    '1000 lbm': 'klbm',
    'kkgf': 'Mgf',
    'ppg': 'lbm/gal[US]',
    'LB/G': 'lbm/gal[US]',
    'lb/gal': 'lbm/gal[US]',
    'LBM/GAL': 'lbm/gal[US]',
    'PPA': 'lbm/gal[US]',
    'PPG': 'lbm/gal[US]',
    'PPGE': 'lbm/gal[US]',
    'lb/U.S.gal': 'lbm/gal[US]',
    'lbm/galUS': 'lbm/gal[US]',
    '1000 kgf': 'Mgf',
    'KKGF': 'Mgf',
    'v': 'V',
    'VOLT': 'V',
    'Volts': 'V',
    'volts': 'V',
    'В': 'V',
    'Mv': 'MV',
    'DEGC': 'degC',
    'Cel': 'degC',
    'DEG C': 'degC',
    'DEG_C': 'degC',
    'DEGc': 'degC',
    'DegC': 'degC',
    'deg C': 'degC',
    'oC': 'degC',
    'lpm': 'L/min',
    'л/мин': 'L/min',
    '°C': 'degC',
    'DEGF': 'degF',
    'DegF': 'degF',
    'deg F': 'degF',
    'oF': 'degF',
    '°F': 'degF',
    'RPM': 'rpm',
    'KLBF': 'klbf',
    'KFLB': 'klbf',
    'G': 'gn',
    "G's": 'gn',
    'hr': 'h',
    'hour': 'h',
    'HR': 'h',
    'hrs': 'h',
    'MINUTES': 'min',
    'MIN': 'min',
    'MINUTE': 'min',
    'mins': 'min',
    'мин': 'min',
    'PSI': 'psi',
    'APSI': 'psi',
    'PSIA': 'psi',
    'psia': 'psi',
    'KPSI': 'kpsi',
    'ft.lbf': 'lbf.ft',
    'in.lbf': 'lbf.in',
    'FLBF': 'lbf.in',
    'ft-lbs': 'lbf.in',
    'pa': 'Pa',
    'PA': 'Pa',
    'IN': 'in',
    'db': 'dB',
    'дБ': 'dB',
    'kpa': 'kPa',
    'KPA': 'kPa',
    '1000 Pa': 'kPa',
    'KPAA': 'kPa',
    'kN/m2': 'kPa',
    'kPaa': 'kPa',
    'кПа': 'kPa',
    'GAPI': 'gAPI',
    'OHMM': 'ohm.m',
    'kdan': '10 kN',
    'kdaN': '10 kN',
    'KDAN': '10 kN',
    'HZ': 'Hz',
    'pu': '%',
    'PU': '%',
    'PERC': '%',
    'PCNT': '%',
    'PERCENTAGE': '%',
    'IN2': 'in2',
    'LB': 'lbf',
    'LBF': 'lbf',
    'LBS': 'lbf',
    'lbs': 'lbf',
    'kg/(m.s2)': 'Pa',
    'AHrs': 'A.h',
    'amp-hours': 'A.h',
    'degreesCelsius': 'degC',
    'KNM': 'kN.m',
    'KGM3': 'kg/m3',
    'KDN': 'kdyne',
    'RPG': 'rev/gal[US]',
    '0.01 m3/m3': '0.01 bbl/bbl',
    '0.001/(ohm.m)': 'mS'
}


def unit_alias(alias):
    """For a given unit alias return the appropriated unit."""
    if alias in UNIT_ALIAS_DICT:
        return UNIT_ALIAS_DICT[alias]

    return alias
