improve error message for exception..
de-optimize  keyword to pattern match keyword later
factorize keyword works
keyword succeeded
tweak