separate functions are formed