extract base module class