functional main p

functional main p