percep returns function