added numerous modules