use smartmatch without warning
updated dependencies