Updated with all modules and functions