don't return NULL, throw `UnsupportedOperatedException` instead