Resctruct of main functionality
Resctruct of main functionality