added UnexpectedValueException