functional styling, may return