Generic modules that can be reused