first (: functional