works with modules