split function to different folder.