function analogous