revised with converter