We may want to throw an exception here instead of returning `null`