Lesson 5 

Use your celsius_to_fahrenheit and its opposing function here instead of re-creating the function.

As to why it's failing, take  a look at the examples in the task documentation. Somehow, it knows the input format because it's reading the input *type* this is key.  You're parsing for the output format but what about the input format? There are really four conditions here:

    input_format == output_format  # no change
    input_format == 'c' and output_format == 'f'  # gets converted
    input_format == 'f' and output_format == 'c'  # gets converted
    else  # returns None