Rearranged function flow