from_dict always sets scalar values