fix non exhaustive case