This line is confusing.   What is `type`?   

Given a value of `type` that is equivalent to `other_institute_type`, it looks like it comes in as `other_institute_type`, and then is mutated to whatever `find_institution_type` returns.  For all other values, `type` is just going to be what was passed in.

Do you just get back something equivalent to `other_institute_type` in the default case?  If so, is this just doing `type = type`?